{"version":3,"sources":["pages/APIPage/tabs/APIDefaultView.js","pages/APIPage/queries.js","pages/APIPage/tabs/APIDocumentationView.js","pages/APIPage/tabs/APIGraphiQLView.js","pages/APIPage/tabs/APISandboxView.js","pages/APIPage/tabs/APIV2SandboxView.js","pages/APIPage/APIPage.js","pages/APIPage/index.js","hooks/useFormatMessage.ts","helpers/toast.ts","components/Layouts/Footer/index.tsx","components/Layouts/Header/index.tsx","components/Layouts/PublicBasePage/index.tsx","components/Layouts/PublicBasePage/PublicBasePage.module.scss","models/Publications/operations.ts","components/Layouts/Footer/Footer.module.scss","components/Layouts/Header/Header.module.scss","components/Layouts/Header/logo.png","pages/APIPage/APIPage.module.scss"],"names":["APIDefaultView","formatMessage","useFormatMessage","React","createElement","Grid","container","item","sm","className","styles","title","FormattedMessage","id","Typography","Alert","severity","href","concat","getEnvVar","justifyContent","alignItems","spacing","card_container","xs","xl","Card","CardContent","variant","component","card_pos","color","CardActions","card_actions","Tooltip","Button","startIcon","FileCopyIcon","onClick","copy","toast","bind","size","direction","md","ls","window","open","target","support","queryMutationSignIn","queryPublishedAlerts","queryPublishedAlert","queryAlertReport","queryAlertFromCAR","queryActionsByAlert","queryTerritories","queryMyMaps","queryMutationSignInGraphQL","variablesMutationSignInGraphQL","queryTerritoriesGraphQL","variablesTerritoriesGraphQL","queryAlertsFromCarGraphQL","variablesAlertsFromCarGraphQL","queryAlertReportGraphQL","variablesAlertReportGraphQL","queryActionsByAlertGraphQL","variablesActionsByAlertGraphQL","queryPublishedAlertsGraphQL","queryPublishedAlertGraphQL","variablesPublishedAlertsGraphQL","queryMyMapsGraphQL","variablesMyMapsGraphQL","variablesPublishedAlertGraphQL","TabPanel","props","children","value","index","other","_objectWithoutProperties","Object","assign","role","hidden","aria-labelledby","Box","p","a11yProps","aria-controls","useStyles","makeStyles","theme","root","flexGrow","width","APIDocumentationView","classes","_React$useState","useState","_React$useState2","_slicedToArray","setValue","param_url","block_graphql_code","code","showLineNumbers","CopyBlock","text","language","dracula","wrapLines","customStyle","fontSize","code_graphql","Code","useEffect","document","location","hash","indexOf","replace","Tabs","onChange","event","newValue","indicatorColor","textColor","scrollButtons","aria-label","Tab","label","ButtonGroup","PlayCircleOutlineIcon","appBar","position","toolbar","backgroundColor","graphiqlGrid","textAlign","marginLeft","flex","APISandboxView","fetcher","createGraphiQLFetcher","url","headers","Authorization","localStorage","tokenAPI","_useState","_useState2","queryGraphl","setQueryGraphl","_useState3","_useState4","variablesGraphl","setVariablesGraphl","queries_graphql","variables_graphql","_useState5","_useState6","containerAPI","GraphiQL","editorTheme","query","variables","Transition","forwardRef","ref","Slide","graphqiql_interface","setOpen","handleClose","content","buttonFullScreen","FullscreenIcon","Dialog","fullScreen","onClose","TransitionComponent","AppBar","Toolbar","IconButton","edge","CloseIcon","DialogContent","paddingTop","APIPage","PublicBasePage","simple","Switch","Route","exact","path","pathname","APIGraphiQLView","APIV2SandboxView","__webpack_require__","d","__webpack_exports__","react_intl__WEBPACK_IMPORTED_MODULE_0__","useIntl","_core_apollo_client_v2_apollo_client__WEBPACK_IMPORTED_MODULE_0__","arguments","length","undefined","client","writeData","data","__typename","visible","Footer","react__WEBPACK_IMPORTED_MODULE_0__","react__WEBPACK_IMPORTED_MODULE_0___default","n","react_intl__WEBPACK_IMPORTED_MODULE_1__","_material_ui_core_Link__WEBPACK_IMPORTED_MODULE_2__","_Footer_module_scss__WEBPACK_IMPORTED_MODULE_3__","_Footer_module_scss__WEBPACK_IMPORTED_MODULE_3___default","wrapper","copyText","alertText","process","Link","withRouter","_ref","_localStorage","_localStorage2","_localStorage6","_localStorage7","_localStorage8","_localStorage9","_localStorage10","_localStorage11","_localStorage12","_localStorage13","_localStorage14","_localStorage15","_ref$simple","useApolloClient","token","getItem","profile","_","get","search","isOnLandingPage","includes","isMobile","useMediaQuery","baseData","useQuery","GET_ACTIVE_ALERT_VISIBLE_AND_BATCH_EXPORT_REPORTS","menuIsVisible","filtersVisibility","queryString","queryObject","qs","parse","omit","stringify","encodeValuesOnly","pathSignIn","_useQuery2","LAST_ALERT_PUBLICATION","skip","_useMutation","loading","useMutation","SIGN_OUT","onCompleted","onError","signOut","updateClientAppState","params","app","_objectSpread","toggleFilters","handleCloseMobileMenu","mobileMenuIsVisible","handleOpenGuidedTour","openTourGuided","filtersAreVisible","handleExit","resetToken","sessionToken","handleLocaleChange","locale","_localStorage3","setItem","reload","anchorLocaleEl","setAnchorLocaleEl","_React$useState3","_React$useState4","anchorLaucherEl","setAnchorLaucherEl","_React$useState5","_React$useState6","anchorPerfilEl","setAnchorPerfilEl","noteOpen","setNoteOpen","_localStorage4","noticeRead","Number","Date","now","isDocumentRecentlyRead","handleNoteDialogClose","reason","_localStorage5","String","classnames","_defineProperty","wrapperSimple","topContent","logoImage","src","logo","alt","actions","navList","NavLink","navLinkActive","to","isModule","activeClassName","navListItemSpacing","navListItemNotification","PriorityHighIcon","LiveHelpIcon","navListItemTranslate","TranslateIcon","endIcon","Boolean","ExpandLessIcon","ExpandMoreIcon","currentTarget","Menu","anchorEl","getContentAnchorEl","anchorOrigin","vertical","horizontal","transformOrigin","keepMounted","aria-haspopup","MenuItem","selected","this","navListItemGrap","navListItemLogin","InputIcon","PersonIcon","split","menuItemSubMenu","Fragment","Divider","navListItemLaucher","AppsRoundedIcon","navMenuLaucherMenu","name","image","map","iniciative","key","navMenuLaucherItem","menuButton","menuButtonActive","MenuIcon","mobileMenuNav","mobileMenuNavIsVisible","style","height","innerHeight","navListMobile","navListMobileLink","navListMobileLinkActive","navListMobileIconItem","navListMobileItemLogin","navListMobileItemUserInfo","ExitToAppIcon","scroll","DialogTitle","dividers","DialogContentText","listStyle","marginBottom","DialogActions","HEADER_HEIGHT","HEADER_SIMPLE_HEIGHT","FOOTER_HEIGHT","_ref$match","match","_useLazyQuery","useLazyQuery","GET_CURRENT_USER_ID","_useLazyQuery2","checkUserTokenStatus","userIdData","DEFAULT_LANGUAGE","headerHeight","windowHeight","setWindowHeight","contentHeight","setContentHeight","routes_paths","find","x","alertId","carId","addEventListener","debouncedUpdateHeight","removeEventListener","currentUserId","debounce","pageWrapper","locale-en","Header","contentWrapper","minHeight","module","exports","kind","definitions","operation","variableDefinitions","directives","selectionSet","selections","loc","start","end","source","body","locationOffset","line","column","ecostageImage","primaryColor","secondaryColor","thirdColor","fourthColor","fifthColor","sixthColor","blackColor","blackColorSecondary","blackColorThird","blackDisabled","blackHint","grayColor","whiteColor","whiteTrueColor","errorColor","successColor","waitingColor","fontFamily","bottomContent","bottomRightContent","profileBox","link","activeLink","signInButton","signInButtonIcon","signInButtonText","locationIcon","autocompleteOptionTitle","autocompleteOptionSubtitle","infoList","infoItem","infoItemBadgeTotalTag","infoItemLabel","infoItemValue","actionControls","actionControlsWithPadding","actionButton","actionButtonIconBadge","actionButtonIconWrapper","spin","actionButtonLeft","actionButtonActive","actionButtonActiveLeft","actionsSeparator","MuiButton-endIcon","MuiButton-startIcon","loadingAggregationWrapper","navListItemUserInfo","navListItemUserInfoName","profileBoxLink","exitButton","betaInfo","actionButtonIconFile","navListItemApi","navListItemGenerateReports","section","titleSecondary","videoContainer","text_info","tab_root"],"mappings":"4TAiBe,SAASA,IAEtB,IACMC,EAAgBC,cAStB,OACEC,IAAAC,cAACC,IAAI,CAACC,WAAS,GACbH,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAAA,MAAIK,UAAYC,IAAOC,OAAQR,IAAAC,cAACQ,IAAgB,CAACC,GAAG,oBAEtDV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,KACTX,IAAAC,cAACW,IAAK,CAACC,SAAS,SAAQb,IAAAC,cAAA,SAAG,kBAAY,6MAA+KD,IAAAC,cAAA,WAAK,IAACD,IAAAC,cAAA,SAAGD,IAAAC,cAAA,KAAGa,KAAI,GAAAC,OAAKC,YAAU,WAAU,YAAW,8BAAwB,KAAK,OAG3ShB,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,KACTX,IAAAC,cAACQ,IAAgB,CAACC,GAAG,+BAIzBV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACC,IAAI,CAACC,WAAS,EAACc,eAAe,SAASC,WAAW,SAASC,QAAU,EAAIb,UAAYC,IAAOa,gBAC3FpB,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACiB,GAAK,GAAKhB,GAAK,GAAKiB,GAAK,IAClCtB,IAAAC,cAACsB,IAAI,KACHvB,IAAAC,cAACuB,IAAW,KACVxB,IAAAC,cAACU,IAAU,CAACc,QAAQ,KAAKC,UAAU,MACjC1B,IAAAC,cAACQ,IAAgB,CAACC,GAAG,yBAEvBV,IAAAC,cAACU,IAAU,CAACL,UAAYC,IAAOoB,SAAWC,MAAM,iBAAgB,2DAIlE5B,IAAAC,cAAC4B,IAAW,CAACvB,UAAYC,IAAOuB,cAC9B9B,IAAAC,cAAC8B,IAAO,CAACvB,MAAQR,IAAAC,cAACQ,IAAgB,CAACC,GAAG,iCACpCV,IAAAC,cAAC+B,IAAM,CACLC,UAAYjC,IAAAC,cAACiC,IAAY,MACzBC,QAvCC,WACbC,MACFA,IALgB,0DAMhBC,YAAMvC,EAAc,kDAoCewC,OACrBC,KAAK,SAELvC,IAAAC,cAACQ,IAAgB,CAACC,GAAG,mCAQnCV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,KACTX,IAAAC,cAACQ,IAAgB,CAACC,GAAG,+BAGzBV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,GAAKC,UAAYC,IAAOa,gBACtCpB,IAAAC,cAACC,IAAI,CAACC,WAAS,EAACgB,QAAU,EAAIqB,UAAU,MAAMvB,eAAe,SAASC,WAAW,UAC/ElB,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,GAAKoC,GAAK,EAAIC,GAAK,GACjC1C,IAAAC,cAACsB,IAAI,KACHvB,IAAAC,cAACuB,IAAW,KACVxB,IAAAC,cAACU,IAAU,CAACc,QAAQ,KAAKC,UAAU,KAAKpB,UAAYC,IAAOoB,UACzD3B,IAAAC,cAACQ,IAAgB,CAACC,GAAG,8BAEvBV,IAAAC,cAACU,IAAU,CAACc,QAAQ,QAAQC,UAAU,KACpC1B,IAAAC,cAACQ,IAAgB,CAACC,GAAG,2CAGzBV,IAAAC,cAAC4B,IAAW,CAACvB,UAAYC,IAAOuB,cAC9B9B,IAAAC,cAAC8B,IAAO,CAACvB,MAAQR,IAAAC,cAACQ,IAAgB,CAACC,GAAG,sCACpCV,IAAAC,cAAC+B,IAAM,CACLG,QAAU,WAAQQ,OAAOC,KAAK,wBAAwB,kBACtDL,KAAK,SAELvC,IAAAC,cAACQ,IAAgB,CAACC,GAAG,wBAM/BV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,GAAKoC,GAAK,EAAIC,GAAK,GACjC1C,IAAAC,cAACsB,IAAI,KACHvB,IAAAC,cAACuB,IAAW,KACVxB,IAAAC,cAACU,IAAU,CAACc,QAAQ,KAAKC,UAAU,KAAKpB,UAAYC,IAAOoB,UACzD3B,IAAAC,cAACQ,IAAgB,CAACC,GAAG,wBAEvBV,IAAAC,cAACU,IAAU,CAACc,QAAQ,QAAQC,UAAU,KACpC1B,IAAAC,cAACQ,IAAgB,CAACC,GAAG,qCAGzBV,IAAAC,cAAC4B,IAAW,CAACvB,UAAYC,IAAOuB,cAC9B9B,IAAAC,cAAC8B,IAAO,CAACvB,MAAQR,IAAAC,cAACQ,IAAgB,CAACC,GAAG,gCACpCV,IAAAC,cAAC+B,IAAM,CACLG,QAAU,WAAQQ,OAAOC,KAAK,kBAAkB,YAChDL,KAAK,SAELvC,IAAAC,cAACQ,IAAgB,CAACC,GAAG,yBAM/BV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,GAAKoC,GAAK,EAAIC,GAAK,GACjC1C,IAAAC,cAACsB,IAAI,KACHvB,IAAAC,cAACuB,IAAW,KACVxB,IAAAC,cAACU,IAAU,CAACc,QAAQ,KAAKC,UAAU,KAAKpB,UAAYC,IAAOoB,UACzD3B,IAAAC,cAACQ,IAAgB,CAACC,GAAG,wBAEvBV,IAAAC,cAACU,IAAU,CAACc,QAAQ,QAAQC,UAAU,KACpC1B,IAAAC,cAACQ,IAAgB,CAACC,GAAG,qCAGzBV,IAAAC,cAAC4B,IAAW,CAACvB,UAAYC,IAAOuB,cAC9B9B,IAAAC,cAAC8B,IAAO,CAACvB,MAAQR,IAAAC,cAACQ,IAAgB,CAACC,GAAG,gCACpCV,IAAAC,cAAC+B,IAAM,CACLG,QAAU,WAAQQ,OAAOC,KAAK,mBAAmB,aACjDL,KAAK,SACN,YASbvC,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,KACTX,IAAAC,cAACQ,IAAgB,CAACC,GAAG,6BAA6B,IAACV,IAAAC,cAAA,KAAGa,KAAK,2GAA2G+B,OAAO,UAAS7C,IAAAC,cAACQ,IAAgB,CAACC,GAAG,gCAAmC,IAACV,IAAAC,cAACQ,IAAgB,CAACC,GAAG,+BAA+B,IAACV,IAAAC,cAAA,KAAGa,KAAK,2GAA4G+B,OAAO,UAAS,WAAW,MAGvb7C,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,QAAQC,UAAU,IAAIpB,UAAYC,IAAOuC,SAC3D9C,IAAAC,cAACQ,IAAgB,CAACC,GAAG,6BAA6B,IAACV,IAAAC,cAAA,KAAGa,KAAK,uCAAsC,gCAAgC,yGC1J9HiC,EAAmB,kIAWnBC,EAAoB,+iBA8BpBC,EAAmB,qTAoBnBC,EAAgB,maA8BhBC,EAAiB,sFAQjBC,EAAmB,+LAcnBC,EAAgB,kKAahBC,EAAW,iPAqBXC,EACX,0HAMWC,EACX,uDAIWC,EACX,mJASWC,EACX,2BAIWC,EACX,kFAIWC,EACX,yDAGWC,EACX,mXA0BWC,EACX,yBAGWC,EACX,+KASWC,GACX,0BAGWC,GACX,kkBAoBWC,GACX,gQAcWC,GACX,uLASWC,GACX,sMAiBWC,GAAsB,YAItBC,GAAiC,6BC1Q9C,SAASC,GAASC,GAAO,IACfC,EAAqCD,EAArCC,SAAUC,EAA2BF,EAA3BE,MAAOC,EAAoBH,EAApBG,MAAUC,EAAKC,YAAKL,EAAK,8BAElD,OACExE,IAAAC,cAAA,MAAA6E,OAAAC,OAAA,CACEC,KAAK,WACLC,OAASP,IAAUC,EACnBjE,GAAE,4BAAAK,OAA+B4D,GACjCO,kBAAA,uBAAAnE,OAAyC4D,IACpCC,GAEHF,IAAUC,GACV3E,IAAAC,cAACkF,IAAG,CAACC,EAAI,GACPpF,IAAAC,cAACU,IAAU,KAAG8D,KAaxB,SAASY,GAAUV,GACjB,MAAO,CACLjE,GAAE,uBAAAK,OAAyB4D,GAC3BW,gBAAe,4BAAAvE,OAA8B4D,IAIjD,IAAMY,GAAYC,YAAW,SAACC,GAAK,MAAM,CACvCC,KAAM,CACJC,SAAU,EACVC,MAAO,WAKI,SAASC,KAEtB,IAAMC,EAAUP,KACyBQ,GAAnBhG,cACIC,IAAMgG,SAAS,IAAEC,EAAAC,YAAAH,EAAA,GAApCrB,EAAKuB,EAAA,GAAEE,EAAQF,EAAA,GAEhBG,EAAY,CAAC,UAAU,mBAAmB,kBAAkB,SAAS,kBAAkB,qBAAqB,cAAc,WAehI,SAASC,EAAmBC,EAAMC,GAChC,OACEvG,IAAAC,cAACuG,IAAS,CACRC,KAAOH,EACPI,SAAW,UACXH,gBAAkBA,EAClBd,MAAQkB,IACRC,WAAY,EACZC,YAAa,CACXC,SAAU,aAMlB,SAASC,EAAaT,GACpB,OACEtG,IAAAC,cAAC+G,IAAI,CACHP,KAAOH,EACPI,SAAW,UACXjB,MAAQkB,IACRE,YAAa,CACXC,SAAU,aAOlB,OArCAG,oBAAU,WACLC,SAASC,SAASC,MAChBhB,EAAUiB,QAAQH,SAASC,SAASC,KAAKE,QAAQ,IAAI,MAAQ,GAC9DnB,EAASC,EAAUiB,QAAQH,SAASC,SAASC,KAAKE,QAAQ,IAAI,OAGlE,IAgCAtH,IAAAC,cAACC,IAAI,CAACC,WAAS,GACbH,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACiB,GAAK,IACdrB,IAAAC,cAAA,MAAIK,UAAYC,IAAOC,OAAQR,IAAAC,cAACQ,IAAgB,CAACC,GAAG,8BAEtDV,IAAAC,cAAA,OAAKK,UAAYwF,EAAQJ,MACvB1F,IAAAC,cAACsH,IAAI,CACH7C,MAAQA,EACR8C,SAlDa,SAACC,EAAOC,GAC3BvB,EAASuB,GACTR,SAASC,SAASC,KAAK,IAAIhB,EAAUsB,IAiD/BC,eAAe,UACfC,UAAU,UACVnG,QAAQ,aACRoG,cAAc,OACdC,aAAW,gCAEX9H,IAAAC,cAAC8H,IAAGjD,OAAAC,OAAA,CAACiD,MAAQhI,IAAAC,cAACQ,IAAgB,CAACC,GAAG,qCAA4C2E,GAAU,KACxFrF,IAAAC,cAAC8H,IAAGjD,OAAAC,OAAA,CAACiD,MAAQhI,IAAAC,cAACQ,IAAgB,CAACC,GAAG,8CAAqD2E,GAAU,KACjGrF,IAAAC,cAAC8H,IAAGjD,OAAAC,OAAA,CAACiD,MAAQhI,IAAAC,cAACQ,IAAgB,CAACC,GAAG,6CAAoD2E,GAAU,KAChGrF,IAAAC,cAAC8H,IAAGjD,OAAAC,OAAA,CAACiD,MAAQhI,IAAAC,cAACQ,IAAgB,CAACC,GAAG,oCAA2C2E,GAAU,KACvFrF,IAAAC,cAAC8H,IAAGjD,OAAAC,OAAA,CAACiD,MAAQhI,IAAAC,cAACQ,IAAgB,CAACC,GAAG,6CAAoD2E,GAAU,KAChGrF,IAAAC,cAAC8H,IAAGjD,OAAAC,OAAA,CAACiD,MAAQhI,IAAAC,cAACQ,IAAgB,CAACC,GAAG,gDAAuD2E,GAAU,KACnGrF,IAAAC,cAAC8H,IAAGjD,OAAAC,OAAA,CAACiD,MAAQhI,IAAAC,cAACQ,IAAgB,CAACC,GAAG,yCAAgD2E,GAAU,KAC5FrF,IAAAC,cAAC8H,IAAGjD,OAAAC,OAAA,CAACiD,MAAQhI,IAAAC,cAACQ,IAAgB,CAACC,GAAG,qCAA4C2E,GAAU,MAE1FrF,IAAAC,cAACsE,GAAQ,CAACG,MAAQA,EAAQC,MAAQ,GAChC3E,IAAAC,cAACC,IAAI,CAACC,WAAS,EAACgB,QAAU,EAAIF,eAAe,WAAWC,WAAW,UACjElB,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,WAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,2CAA2C,IAAGqG,EAAa,mBAAoB,IAAC/G,IAAAC,cAACQ,IAAgB,CAACC,GAAG,+CAG9HV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,aAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,6CAGzBV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACZgG,EAAmBtD,GAAoB,IAE3C/C,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACC,IAAI,CAACC,WAAS,EAACc,eAAe,YAC7BjB,IAAAC,cAACgI,IAAW,CAACrG,MAAM,UAAUkG,aAAW,iCACtC9H,IAAAC,cAAC8B,IAAO,CAACvB,MAAQR,IAAAC,cAACQ,IAAgB,CAACC,GAAG,4BACpCV,IAAAC,cAAC+B,IAAM,CACLP,QAAQ,YACRG,MAAM,UACNO,QAAU,WAAOQ,OAAOC,KAAK,0BAA0B,YACvDX,UAAYjC,IAAAC,cAACiI,IAAqB,OAAM,cAE5ClI,IAAAC,cAAC8B,IAAO,CAACvB,MAAQR,IAAAC,cAACQ,IAAgB,CAACC,GAAG,4BACpCV,IAAAC,cAAC+B,IAAM,CACLP,QAAQ,YACRG,MAAM,UACNO,QAAU,WAAOQ,OAAOC,KAAK,wJAAwJ,YACrLX,UAAYjC,IAAAC,cAACiI,IAAqB,OAAM,iBAKlDlI,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,WAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,4DAGzBV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,MAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,qDAGzBV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAAEC,GAAK,IACfL,IAAAC,cAACU,IAAU,CAACc,QAAQ,aAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,4DAGzBV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,WAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,2CAA2C,IAACV,IAAAC,cAAA,KAAGa,KAAK,IAAIqB,QAAU,WAAMgE,EAAS,KAAO,oBAAoB,IAACnG,IAAAC,cAACQ,IAAgB,CAACC,GAAG,6CAA6C,IAACV,IAAAC,cAAA,KAAGa,KAAK,IAAIqB,QAAU,WAAMgE,EAAS,KAAO,kBAAe,IAACnG,IAAAC,cAACQ,IAAgB,CAACC,GAAG,iDAK9RV,IAAAC,cAACsE,GAAQ,CAACG,MAAQA,EAAQC,MAAQ,GAChC3E,IAAAC,cAACC,IAAI,CAACC,WAAS,EAACgB,QAAU,EAAIF,eAAe,WAAWC,WAAW,UACjElB,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,WAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,oDAAoD,KAAIqG,EAAa,yBAA0B,IAAC/G,IAAAC,cAACQ,IAAgB,CAACC,GAAG,wDAG9IV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACZgG,EAAmBrD,GAAqB,IAE5ChD,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACC,IAAI,CAACC,WAAS,EAACc,eAAe,YAC7BjB,IAAAC,cAACgI,IAAW,CAACrG,MAAM,UAAUkG,aAAW,iCACtC9H,IAAAC,cAAC8B,IAAO,CAACvB,MAAQR,IAAAC,cAACQ,IAAgB,CAACC,GAAG,4BACpCV,IAAAC,cAAC+B,IAAM,CACLP,QAAQ,YACRG,MAAM,UACNO,QAAU,WAAOQ,OAAOC,KAAK,mCAAmC,YAChEX,UAAYjC,IAAAC,cAACiI,IAAqB,OAAM,cAE5ClI,IAAAC,cAAC8B,IAAO,CAACvB,MAAQR,IAAAC,cAACQ,IAAgB,CAACC,GAAG,4BACpCV,IAAAC,cAAC+B,IAAM,CACLP,QAAQ,YACRG,MAAM,UACNO,QAAU,WAAOQ,OAAOC,KAAK,wJAAwJ,YACrLX,UAAYjC,IAAAC,cAACiI,IAAqB,OAAM,iBAKlDlI,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,WAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,sDAGzBV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,WAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,oDAAoD,IAACV,IAAAC,cAAA,KAAGa,KAAK,IAAIqB,QAAU,WAAMgE,EAAS,KAAOnG,IAAAC,cAACQ,IAAgB,CAACC,GAAG,6CAAgD,IAACV,IAAAC,cAACQ,IAAgB,CAACC,GAAG,sDAAsD,IAACV,IAAAC,cAAA,KAAGa,KAAK,IAAIqB,QAAU,WAAMgE,EAAS,KAAOnG,IAAAC,cAACQ,IAAgB,CAACC,GAAG,oCAAuC,QAKxXV,IAAAC,cAACsE,GAAQ,CAACG,MAAQA,EAAQC,MAAQ,GAChC3E,IAAAC,cAACC,IAAI,CAACC,WAAS,EAACgB,QAAU,EAAIF,eAAe,WAAWC,WAAW,UACjElB,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,WAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,mDAAmD,IAAGqG,EAAa,+CAAgD,KAAE/G,IAAAC,cAACQ,IAAgB,CAACC,GAAG,uDAGnKV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACZgG,EAAmBpD,GAAoB,IAE3CjD,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACC,IAAI,CAACC,WAAS,EAACc,eAAe,YAC7BjB,IAAAC,cAACgI,IAAW,CAACrG,MAAM,UAAUkG,aAAW,iCACtC9H,IAAAC,cAAC8B,IAAO,CAACvB,MAAQR,IAAAC,cAACQ,IAAgB,CAACC,GAAG,4BACpCV,IAAAC,cAAC+B,IAAM,CACLP,QAAQ,YACRG,MAAM,UACNO,QAAU,WAAOQ,OAAOC,KAAK,kCAAkC,YAC/DX,UAAYjC,IAAAC,cAACiI,IAAqB,OAAM,cAE5ClI,IAAAC,cAAC8B,IAAO,CAACvB,MAAQR,IAAAC,cAACQ,IAAgB,CAACC,GAAG,4BACpCV,IAAAC,cAAC+B,IAAM,CACLP,QAAQ,YACRG,MAAM,UACNO,QAAU,WAAOQ,OAAOC,KAAK,wJAAwJ,YACrLX,UAAYjC,IAAAC,cAACiI,IAAqB,OAAM,iBAKlDlI,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,WAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,qDAGzBV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,WAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,mDAAmD,IAACV,IAAAC,cAAA,KAAGa,KAAK,IAAIqB,QAAU,WAAMgE,EAAS,KAAOnG,IAAAC,cAACQ,IAAgB,CAACC,GAAG,8CAAiD,QAKnMV,IAAAC,cAACsE,GAAQ,CAACG,MAAQA,EAAQC,MAAQ,GAChC3E,IAAAC,cAACC,IAAI,CAACC,WAAS,EAACgB,QAAU,EAAIF,eAAe,WAAWC,WAAW,UACjElB,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,WAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,0CAA0C,IAAGqG,EAAa,4CAA6C,KAAE/G,IAAAC,cAACQ,IAAgB,CAACC,GAAG,8CAGvJV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACZgG,EAAmBnD,GAAiB,IAExClD,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACC,IAAI,CAACC,WAAS,EAACc,eAAe,YAC7BjB,IAAAC,cAACgI,IAAW,CAACrG,MAAM,UAAUkG,aAAW,iCACtC9H,IAAAC,cAAC8B,IAAO,CAACvB,MAAQR,IAAAC,cAACQ,IAAgB,CAACC,GAAG,4BACpCV,IAAAC,cAAC+B,IAAM,CACLP,QAAQ,YACRG,MAAM,UACNO,QAAU,WAAOQ,OAAOC,KAAK,yBAAyB,YACtDX,UAAYjC,IAAAC,cAACiI,IAAqB,OAAM,cAE5ClI,IAAAC,cAAC8B,IAAO,CAACvB,MAAQR,IAAAC,cAACQ,IAAgB,CAACC,GAAG,4BACpCV,IAAAC,cAAC+B,IAAM,CACLP,QAAQ,YACRG,MAAM,UACNO,QAAU,WAAOQ,OAAOC,KAAK,wJAAwJ,YACrLX,UAAYjC,IAAAC,cAACiI,IAAqB,OAAM,iBAKlDlI,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,WAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,4CAGzBV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,WAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,0CAA0C,KAAEV,IAAAC,cAAA,KAAGa,KAAK,IAAIqB,QAAU,WAAMgE,EAAS,KAAOnG,IAAAC,cAACQ,IAAgB,CAACC,GAAG,8CAAiD,QAK3LV,IAAAC,cAACsE,GAAQ,CAACG,MAAQA,EAAQC,MAAQ,GAChC3E,IAAAC,cAACC,IAAI,CAACC,WAAS,EAACgB,QAAU,EAAIF,eAAe,WAAWC,WAAW,UACjElB,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,WAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,mDAAmD,IAAGqG,EAAa,2CAA4C,KAAE/G,IAAAC,cAACQ,IAAgB,CAACC,GAAG,uDAG/JV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACZgG,EAAmBlD,GAAkB,IAEzCnD,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACC,IAAI,CAACC,WAAS,EAACc,eAAe,YAC7BjB,IAAAC,cAACgI,IAAW,CAACrG,MAAM,UAAUkG,aAAW,iCACtC9H,IAAAC,cAAC8B,IAAO,CAACvB,MAAQR,IAAAC,cAACQ,IAAgB,CAACC,GAAG,4BACpCV,IAAAC,cAAC+B,IAAM,CACLP,QAAQ,YACRG,MAAM,UACNO,QAAU,WAAOQ,OAAOC,KAAK,kCAAkC,YAC/DX,UAAYjC,IAAAC,cAACiI,IAAqB,OAAM,cAE5ClI,IAAAC,cAAC8B,IAAO,CAACvB,MAAQR,IAAAC,cAACQ,IAAgB,CAACC,GAAG,4BACpCV,IAAAC,cAAC+B,IAAM,CACLP,QAAQ,YACRG,MAAM,UACNO,QAAU,WAAOQ,OAAOC,KAAK,wJAAwJ,YACrLX,UAAYjC,IAAAC,cAACiI,IAAqB,OAAM,iBAKlDlI,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,WAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,mDAAmD,IAACV,IAAAC,cAAA,KAAGa,KAAK,IAAIqB,QAAU,WAAMgE,EAAS,KAAOnG,IAAAC,cAACQ,IAAgB,CAACC,GAAG,oCAAuC,QAKzLV,IAAAC,cAACsE,GAAQ,CAACG,MAAQA,EAAQC,MAAQ,GAChC3E,IAAAC,cAACC,IAAI,CAACC,WAAS,EAACgB,QAAU,EAAIF,eAAe,WAAWC,WAAW,UACjElB,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,aAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,sDAAsD,IAAGqG,EAAa,+CAAgD,IAAC/G,IAAAC,cAACQ,IAAgB,CAACC,GAAG,0DAGrKV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACZgG,EAAmBjD,GAAoB,IAE3CpD,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACC,IAAI,CAACC,WAAS,EAACc,eAAe,YAC7BjB,IAAAC,cAACgI,IAAW,CAACrG,MAAM,UAAUkG,aAAW,iCACtC9H,IAAAC,cAAC8B,IAAO,CAACvB,MAAQR,IAAAC,cAACQ,IAAgB,CAACC,GAAG,4BACpCV,IAAAC,cAAC+B,IAAM,CACLP,QAAQ,YACRG,MAAM,UACNO,QAAU,WAAOQ,OAAOC,KAAK,qCAAqC,YAClEX,UAAYjC,IAAAC,cAACiI,IAAqB,OAAM,cAE5ClI,IAAAC,cAAC8B,IAAO,CAACvB,MAAQR,IAAAC,cAACQ,IAAgB,CAACC,GAAG,4BACpCV,IAAAC,cAAC+B,IAAM,CACLP,QAAQ,YACRG,MAAM,UACNO,QAAU,WAAOQ,OAAOC,KAAK,wJAAwJ,YACrLX,UAAYjC,IAAAC,cAACiI,IAAqB,OAAM,iBAKlDlI,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,WAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,0DAK7BV,IAAAC,cAACsE,GAAQ,CAACG,MAAQA,EAAQC,MAAQ,GAChC3E,IAAAC,cAACC,IAAI,CAACC,WAAS,EAACgB,QAAU,EAAIF,eAAe,WAAWC,WAAW,UACjElB,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,WAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,+CAA+C,IAAGqG,EAAa,0CAA2C,KAAE/G,IAAAC,cAACQ,IAAgB,CAACC,GAAG,mDAG1JV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACZgG,EAAmBhD,GAAiB,IAExCrD,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACC,IAAI,CAACC,WAAS,EAACc,eAAe,YAC7BjB,IAAAC,cAACgI,IAAW,CAACrG,MAAM,UAAUkG,aAAW,iCACtC9H,IAAAC,cAAC8B,IAAO,CAACvB,MAAQR,IAAAC,cAACQ,IAAgB,CAACC,GAAG,4BACpCV,IAAAC,cAAC+B,IAAM,CACLP,QAAQ,YACRG,MAAM,UACNO,QAAU,WAAOQ,OAAOC,KAAK,8BAA8B,YAC3DX,UAAYjC,IAAAC,cAACiI,IAAqB,OAAM,cAE5ClI,IAAAC,cAAC8B,IAAO,CAACvB,MAAQR,IAAAC,cAACQ,IAAgB,CAACC,GAAG,4BACpCV,IAAAC,cAAC+B,IAAM,CACLP,QAAQ,YACRG,MAAM,UACNO,QAAU,WAAOQ,OAAOC,KAAK,wJAAwJ,YACrLX,UAAYjC,IAAAC,cAACiI,IAAqB,OAAM,iBAKlDlI,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,WAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,iDAGzBV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,WAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,+CAA+C,IAACV,IAAAC,cAAA,KAAGa,KAAK,IAAIqB,QAAU,WAAMgE,EAAS,KAAOnG,IAAAC,cAACQ,IAAgB,CAACC,GAAG,8CAAiD,QAK/LV,IAAAC,cAACsE,GAAQ,CAACG,MAAQA,EAAQC,MAAQ,GAChC3E,IAAAC,cAACC,IAAI,CAACC,WAAS,EAACgB,QAAU,EAAIF,eAAe,WAAWC,WAAW,UACjElB,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,WAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,2CAA2C,IAAGqG,EAAa,kBAAmB,IAAC/G,IAAAC,cAACQ,IAAgB,CAACC,GAAG,+CAG7HV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACZgG,EAAmB/C,GAAY,IAEnCtD,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACC,IAAI,CAACC,WAAS,EAACc,eAAe,YAC7BjB,IAAAC,cAACgI,IAAW,CAACrG,MAAM,UAAUkG,aAAW,iCACtC9H,IAAAC,cAAC8B,IAAO,CAACvB,MAAQR,IAAAC,cAACQ,IAAgB,CAACC,GAAG,4BACpCV,IAAAC,cAAC+B,IAAM,CACLP,QAAQ,YACRG,MAAM,UACNO,QAAU,WAAOQ,OAAOC,KAAK,0BAA0B,YACvDX,UAAYjC,IAAAC,cAACiI,IAAqB,OAAM,cAE5ClI,IAAAC,cAAC8B,IAAO,CAACvB,MAAQR,IAAAC,cAACQ,IAAgB,CAACC,GAAG,4BACpCV,IAAAC,cAAC+B,IAAM,CACLP,QAAQ,YACRG,MAAM,UACNO,QAAU,WAAOQ,OAAOC,KAAK,wJAAwJ,YACrLX,UAAYjC,IAAAC,cAACiI,IAAqB,OAAM,iBAKlDlI,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,WAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,6CAGzBV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,WAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,2CAA2C,IAACV,IAAAC,cAAA,KAAGa,KAAK,IAAIqB,QAAU,WAAMgE,EAAS,KAAOnG,IAAAC,cAACQ,IAAgB,CAACC,GAAG,8CAAiD,SAM7LV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACiB,GAAK,IACdrB,IAAAC,cAACU,IAAU,KACPX,IAAAC,cAACW,IAAK,CAACC,SAAS,SAAQb,IAAAC,cAAA,SAAG,kBAAY,6MAA+KD,IAAAC,cAAA,WAAK,IAACD,IAAAC,cAAA,SAAGD,IAAAC,cAAA,KAAGa,KAAI,GAAAC,OAAKC,YAAU,WAAU,YAAW,8BAAwB,KAAK,kCC3c7SuE,WAAYC,YAAW,SAACC,GAAK,MAAM,CACvC0C,OAAQ,CACNC,SAAU,YAEZC,QAAS,CACPC,gBAAiB,YAEnBC,aAAc,CACZC,UAAW,SAEbhI,MAAO,CACLiI,WAAYhD,EAAMtE,QAAQ,GAC1BuH,KAAM,EACN9G,MAAO,eAII,SAAS+G,KAEtB,IAAMC,EAAUC,aAAsB,CACpCC,IAAG,GAAA/H,OAAKC,YAAU,WAAU,mBAC5B+H,QAAS,CAAEC,cAAa,UAAAjI,OAAYkI,aAAaC,aAChDC,EAEmCnD,mBAAS/B,IAA4BmF,EAAAlD,YAAAiD,EAAA,GAApEE,EAAWD,EAAA,GAAEE,EAAcF,EAAA,GAAAG,EACYvD,mBAAS7B,IAAgCqF,EAAAtD,YAAAqD,EAAA,GAAhFE,EAAeD,EAAA,GAAEE,EAAkBF,EAAA,GAEpCpD,EAAY,CAAC,UAAU,mBAAmB,kBAAkB,SAAS,kBAAkB,qBAAqB,cAAc,WAC1HuD,EAAkB,CAACpG,EAA2BU,GAA4BC,GAA2BL,EAAwBF,EAA0BI,EAA2BN,EAAwBW,IAC1MwF,EAAoB,CAACpG,EAA+BW,GAAgCG,GAA+BR,EAA4BF,EAA8BI,GAA+BN,EAA4BW,IAE9O4C,oBAAU,WACR,GAAGC,SAASC,SAASC,MAChBhB,EAAUiB,QAAQH,SAASC,SAASC,KAAKE,QAAQ,IAAI,MAAQ,EAAE,CAEhE,IAAM3C,EAAQyB,EAAUiB,QAAQH,SAASC,SAASC,KAAKE,QAAQ,IAAI,KAEnEgC,EAAeK,EAAgBhF,IAC/B+E,EAAmBE,EAAkBjF,MAIzC,CAACuC,SAASC,SAASC,OAEL7B,KAAhB,IAA4BsE,EACJ7D,oBAAS,GAAM8D,EAAA5D,YAAA2D,EAAA,GAA5BC,EAAA,GAASA,EAAA,GAUpB,OACE9J,IAAAC,cAACC,IAAI,CAACC,WAAS,GACbH,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACiB,GAAK,IACdrB,IAAAC,cAAA,MAAIK,UAAYC,IAAOC,OAAQR,IAAAC,cAACQ,IAAgB,CAACC,GAAG,yBAEtDV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACiB,GAAK,GAAKf,UAAYC,IAAOwJ,cACtC/J,IAAAC,cAAC+J,KAAQ,CAACpB,QAAUA,EAAUqB,YAAa,UAAWC,MAAQb,EAAcc,UAAYV,sHCzD1FlE,GAAYC,YAAW,SAACC,GAAK,MAAM,CACvC0C,OAAQ,CACNC,SAAU,YAEZC,QAAS,CACPC,gBAAiB,YAEnBC,aAAc,CACZC,UAAW,SAEbhI,MAAO,CACLiI,WAAYhD,EAAMtE,QAAQ,GAC1BuH,KAAM,EACN9G,MAAO,cAILwI,GAAapK,IAAMqK,WAAW,SAAoB7F,EAAO8F,GAC7D,OAAOtK,IAAAC,cAACsK,KAAKzF,OAAAC,OAAA,CAACvC,UAAU,KAAK8H,IAAMA,GAAW9F,MAGjC,SAASmE,KAEtB,IAAMC,EAAUC,aAAsB,CACpCC,IAAG,GAAA/H,OAAKC,YAAU,WAAU,mBAC5B+H,QAAS,CAAEC,cAAa,UAAAjI,OAAYkI,aAAaC,aAChDC,EAEmCnD,mBAAS/B,IAA4BmF,EAAAlD,YAAAiD,EAAA,GAApEE,EAAWD,EAAA,GAAEE,EAAcF,EAAA,GAAAG,EACYvD,mBAAS7B,IAAgCqF,EAAAtD,YAAAqD,EAAA,GAAhFE,EAAeD,EAAA,GAAEE,EAAkBF,EAAA,GAEpCgB,EAAsB,WAC1B,OACExK,IAAAC,cAAC+J,KAAQ,CAACpB,QAAUA,EAAUqB,YAAa,UAAWC,MAAQb,EAAcc,UAAYV,KAItFrD,EAAY,CAAC,UAAU,mBAAmB,kBAAkB,SAAS,kBAAkB,qBAAqB,cAAc,WAC1HuD,EAAkB,CAACpG,EAA2BU,GAA4BC,GAA2BL,EAAwBF,EAA0BI,EAA2BN,EAAwBW,IAC1MwF,EAAoB,CAACpG,EAA+BW,GAAgCG,GAA+BR,EAA4BF,EAA8BI,GAA+BN,EAA4BW,IAE9O4C,oBAAU,WACR,GAAGC,SAASC,SAASC,MAChBhB,EAAUiB,QAAQH,SAASC,SAASC,KAAKE,QAAQ,IAAI,MAAQ,EAAE,CAEhE,IAAM3C,EAAQyB,EAAUiB,QAAQH,SAASC,SAASC,KAAKE,QAAQ,IAAI,KAEnEgC,EAAeK,EAAgBhF,IAC/B+E,EAAmBE,EAAkBjF,MAIzC,CAACuC,SAASC,SAASC,OAErB,IAAMtB,EAAUP,KAAYQ,EACJ/F,IAAMgG,UAAS,GAAMC,EAAAC,YAAAH,EAAA,GAAtCnD,EAAIqD,EAAA,GAAEwE,EAAOxE,EAAA,GAMdyE,EAAc,WAClBD,GAAQ,IAGV,OACEzK,IAAAC,cAAA,WACED,IAAAC,cAAA,OAAKK,UAAYC,IAAOoK,SACtB3K,IAAAC,cAACC,IAAI,CAACC,WAAS,EAACe,WAAW,SAASC,QAAU,GAC5CnB,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACiB,GAAK,IACdrB,IAAAC,cAAA,MAAIK,UAAYC,IAAOC,OAAQR,IAAAC,cAACQ,IAAgB,CAACC,GAAG,wBAEtDV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,SAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,6BAA6B,IAACV,IAAAC,cAACQ,IAAgB,CAACC,GAAG,+BAG5EV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAAA,OAAKK,UAAYC,IAAOwJ,eACnBnH,GAAQ4H,MAGfxK,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,GAAKC,UAAYC,IAAOqK,kBACtC5K,IAAAC,cAAC+B,IAAM,CACLP,QAAQ,YACRG,MAAM,YACNO,QAAU,WAAOsI,GAAQ,IACzB3C,aAAW,OACXvF,KAAK,QACLN,UAAYjC,IAAAC,cAAC4K,KAAc,OAE3B7K,IAAAC,cAACQ,IAAgB,CAACC,GAAG,8BAGzBV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,SAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,6BAA6B,IAACV,IAAAC,cAAA,KAAGa,KAAK,yBAAwBd,IAAAC,cAACQ,IAAgB,CAACC,GAAG,0CAA6C,IAACV,IAAAC,cAACQ,IAAgB,CAACC,GAAG,+BAA+B,IAACV,IAAAC,cAAA,KAAGa,KAAK,sBAAsB+B,OAAO,UAAS,eAAe,IAAC7C,IAAAC,cAACQ,IAAgB,CAACC,GAAG,kCAIpSV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,QAAQC,UAAU,IAAIpB,UAAYC,IAAOuC,SAC3D9C,IAAAC,cAACQ,IAAgB,CAACC,GAAG,6BAA6B,IAACV,IAAAC,cAAA,KAAGa,KAAK,uCAAsC,gCAAgC,OAIvId,IAAAC,cAAC6K,KAAM,CAACC,YAAU,EAACnI,KAAOA,EAAOoI,QAAUN,EAAcO,oBAAsBb,IAC7EpK,IAAAC,cAACiL,KAAM,CAAC5K,UAAYwF,EAAQqC,QAC1BnI,IAAAC,cAACkL,KAAO,CAAC7K,UAAYwF,EAAQuC,SAC3BrI,IAAAC,cAACmL,KAAU,CAACC,KAAK,QAAQlJ,QAAUuI,EAAc5C,aAAW,SAC1D9H,IAAAC,cAACqL,KAAS,OAEZtL,IAAAC,cAACU,IAAU,CAACc,QAAQ,KAAKnB,UAAYwF,EAAQtF,OAAQ,QAC9CR,IAAAC,cAAA,SAAG,KAAK,QAInBD,IAAAC,cAACsL,KAAa,CAACzF,QAAS,CAAC0F,WAAY,SACjC5I,GAAQ4H,OCzIpB,IAAMjF,GAAYC,YAAW,SAACC,GAAK,MAAM,CACvC0C,OAAQ,CACNC,SAAU,YAEZC,QAAS,CACPC,gBAAiB,YAEnBC,aAAc,CACZC,UAAW,SAEbhI,MAAO,CACLiI,WAAYhD,EAAMtE,QAAQ,GAC1BuH,KAAM,EACN9G,MAAO,cAILwI,GAAapK,IAAMqK,WAAW,SAAoB7F,EAAO8F,GAC7D,OAAOtK,IAAAC,cAACsK,KAAKzF,OAAAC,OAAA,CAACvC,UAAU,KAAK8H,IAAMA,GAAW9F,MAGjC,SAASmE,KAEtB,IAAMC,EAAUC,aAAsB,CACpCC,IAAG,GAAA/H,OAAKC,YAAU,WAAU,mBAC5B+H,QAAS,CAAEC,cAAa,UAAAjI,OAAYkI,aAAaC,aAG7CsB,EAAsB,WAC1B,OACExK,IAAAC,cAAC+J,KAAQ,CAACpB,QAAUA,EAAUqB,YAAa,aAI/ChD,oBAAU,WACR,GAAGC,SAASC,SAASC,MAChBhB,UAAUiB,QAAQH,SAASC,SAASC,KAAKE,QAAQ,IAAI,MAAQ,EAAE,CAEhE,IAAM3C,EAAQyB,UAAUiB,QAAQH,SAASC,SAASC,KAAKE,QAAQ,IAAI,KAEnEgC,eAAeK,gBAAgBhF,IAC/B+E,mBAAmBE,kBAAkBjF,MAIzC,CAACuC,SAASC,SAASC,OAErB,IAAMtB,EAAUP,KAAYQ,EACJ/F,IAAMgG,UAAS,GAAMC,EAAAC,YAAAH,EAAA,GAAtCnD,EAAIqD,EAAA,GAAEwE,EAAOxE,EAAA,GAMdyE,EAAc,WAClBD,GAAQ,IAGV,OACEzK,IAAAC,cAAA,WACED,IAAAC,cAAA,OAAKK,UAAYC,IAAOoK,SACtB3K,IAAAC,cAACC,IAAI,CAACC,WAAS,EAACe,WAAW,SAASC,QAAU,GAC5CnB,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACiB,GAAK,IACdrB,IAAAC,cAAA,MAAIK,UAAYC,IAAOC,OAAQR,IAAAC,cAACQ,IAAgB,CAACC,GAAG,2BAEtDV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,SAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,gCAAgC,IAACV,IAAAC,cAACQ,IAAgB,CAACC,GAAG,kCAG/EV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAAA,OAAKK,UAAYC,IAAOwJ,eACnBnH,GAAQ4H,MAGfxK,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,GAAKC,UAAYC,IAAOqK,kBACtC5K,IAAAC,cAAC+B,IAAM,CACLP,QAAQ,YACRG,MAAM,YACNO,QAAU,WAAOsI,GAAQ,IACzB3C,aAAW,OACXvF,KAAK,QACLN,UAAYjC,IAAAC,cAAC4K,KAAc,OAE3B7K,IAAAC,cAACQ,IAAgB,CAACC,GAAG,iCAGzBV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,SAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,gCAAgC,IAACV,IAAAC,cAAA,KAAGa,KAAK,WAAUd,IAAAC,cAACQ,IAAgB,CAACC,GAAG,6CAAgD,IAACV,IAAAC,cAACQ,IAAgB,CAACC,GAAG,kCAAkC,IAACV,IAAAC,cAAA,KAAGa,KAAK,sBAAsB+B,OAAO,UAAS,eAAe,IAAC7C,IAAAC,cAACQ,IAAgB,CAACC,GAAG,qCAI/RV,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACC,GAAK,IACdL,IAAAC,cAACU,IAAU,CAACc,QAAQ,QAAQC,UAAU,IAAIpB,UAAYC,IAAOuC,SAC3D9C,IAAAC,cAACQ,IAAgB,CAACC,GAAG,gCAAgC,IAACV,IAAAC,cAAA,KAAGa,KAAK,uCAAsC,gCAAgC,OAI1Id,IAAAC,cAAC6K,KAAM,CAACC,YAAU,EAACnI,KAAOA,EAAOoI,QAAUN,EAAcO,oBAAsBb,IAC7EpK,IAAAC,cAACiL,KAAM,CAAC5K,UAAYwF,EAAQqC,QAC1BnI,IAAAC,cAACkL,KAAO,CAAC7K,UAAYwF,EAAQuC,SAC3BrI,IAAAC,cAACmL,KAAU,CAACC,KAAK,QAAQlJ,QAAUuI,EAAc5C,aAAW,SAC1D9H,IAAAC,cAACqL,KAAS,OAEZtL,IAAAC,cAACU,IAAU,CAACc,QAAQ,KAAKnB,UAAYwF,EAAQtF,OAAQ,QAC9CR,IAAAC,cAAA,SAAG,KAAK,QAInBD,IAAAC,cAACsL,KAAa,CAACzF,QAAS,CAAC0F,WAAY,SACjC5I,GAAQ4H,OChHL,SAASiB,KACtB,IAAM3L,EAAgBC,cAEtBkH,oBAAU,WACsB,SAA1BgC,aAAaC,UAAgD,MAAzBD,aAAaC,UAA8C,KAA1BD,aAAaC,UAEpF7G,YAAMvC,EAAc,wBAAyB,YAE9C,IAQH,OACEE,IAAAC,cAACyL,IAAc,CAACC,QAAM,GACpB3L,IAAAC,cAAA,OAAKK,UAAWC,IAAOJ,WACrBH,IAAAC,cAAC2L,IAAM,KACL5L,IAAAC,cAAC4L,IAAK,CAACC,OAAK,EAACC,KAAK,WAChB/L,IAAAC,cAACJ,EAAc,OAEjBG,IAAAC,cAAC4L,IAAK,CAACC,OAAK,EAACC,KAAK,aAZS,SAA7BpJ,OAAOwE,SAAS6E,WAClB7E,SAASrG,KAAI,GAAAC,OAAMC,YAAU,WAAU,cAcnChB,IAAAC,cAAC4L,IAAK,CAACC,OAAK,EAACC,KAAK,yBAChB/L,IAAAC,cAAC4F,GAAoB,OAEvB7F,IAAAC,cAAC4L,IAAK,CAACC,OAAK,EAACC,KAAK,mBAChB/L,IAAAC,cAAC0I,GAAc,OAEjB3I,IAAAC,cAAC4L,IAAK,CAACC,OAAK,EAACC,KAAK,oBAChB/L,IAAAC,cAACgM,GAAe,OAElBjM,IAAAC,cAAC4L,IAAK,CAACC,OAAK,EAACC,KAAK,mBAChB/L,IAAAC,cAACiM,GAAgB,UClD7BC,EAAAC,EAAAC,EAAA,4BAAAZ,uCCAAU,EAAAC,EAAAC,EAAA,sBAAAtM,IAAA,IAAAuM,EAAAH,EAAA,MAEe,SAASpM,IAAmB,IACjCD,EAAkByM,cAAlBzM,cAGR,OAFe,SAACY,GAAU,OAAKZ,EAAc,CAAEY,2CCJjDyL,EAAAC,EAAAC,EAAA,sBAAAhK,IAAA,IAAAmK,EAAAL,EAAA,KAEe,SAAS9J,EAAMsI,GAAuC,IAAtB9J,EAAQ4L,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAG,UACxDG,IAAOC,UAAU,CACfC,KAAM,CACJzK,MAAO,CACL0K,WAAY,aACZpC,UACA9J,WACAmM,SAAS,yCCTjBb,EAAAC,EAAAC,EAAA,sBAAAY,IAAA,IAAAC,EAAAf,EAAA,GAAAgB,EAAAhB,EAAAiB,EAAAF,GAAAG,EAAAlB,EAAA,MAAAmB,EAAAnB,EAAA,MAAAoB,EAAApB,EAAA,KAAAqB,EAAArB,EAAAiB,EAAAG,GAOO,SAASN,IACd,OACEjN,IAAAC,cAAA,UAAQK,UAAWC,IAAOkN,SACxBzN,IAAAC,cAAA,SAAOK,UAAWC,IAAOmN,UAAU,6CACA1N,IAAAC,cAACQ,IAAgB,CAACC,GAAG,sBAExDV,IAAAC,cAAA,SAAOK,UAAWC,IAAOoN,WACvB3N,IAAAC,cAAA,YACED,IAAAC,cAACQ,IAAgB,CAACC,GAAG,mBAAmB,IAAEkN,QAA8B,uBACxE5N,IAAAC,cAAC4N,IAAI,CAAC/M,KAAK,UACTd,IAAAC,cAACQ,IAAgB,CAACC,GAAG,inBCs8BlBoN,gBAt6Bf,SAAeC,GAA6C,IAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAA1CxH,EAAQ4G,EAAR5G,SAAQyH,EAAAb,EAAEpC,cAAM,IAAAiD,GAAQA,EAClC9O,EAAgBC,eAChB6M,GAASiC,cACTC,IAAoB,QAAZd,EAAA/E,oBAAY,IAAA+E,OAAA,EAAZA,EAAce,QAAQ,WAAY,GAC1CC,IAAsB,QAAZf,EAAAhF,oBAAY,IAAAgF,OAAA,EAAZA,EAAcc,QAAQ,aAAc,GAC9C/C,GAAWiD,IAAEC,IAAI/H,EAAU,YAC3BgI,GAASF,IAAEC,IAAI/H,EAAU,UAEzBiI,GACJH,IAAEI,SAASrD,GAAU,UACrBiD,IAAEI,SAASrD,GAAU,WACrBiD,IAAEI,SAASrD,GAAU,kBACrBiD,IAAEI,SAASrD,GAAU,mBACjBsD,GAAWC,YAAc,sBAIjBC,GAAaC,YAASC,MAA5B5C,KACF6C,GAAgBV,IAAEC,IAAIM,GAAU,2BAChCI,GAAoBX,IAAEC,IAAIM,GAAU,yBAAyBrG,GAC7BnD,oBAAS,GAAKoD,GAAAlD,YAAAiD,GAAA,GAEpD,GAFkBC,GAAA,GAAgBA,GAAA,GAE9B+F,GAAQ,CACV,IAAMU,GAAcV,GAAO7H,QAAQ,IAAK,IACpCwI,GAAcC,IAAGC,MAAMH,IAC3BC,GAAcb,IAAEgB,KAAKH,GAAa,CAAC,eAAgB,iBAE1BC,IAAGG,UAAUJ,GAAa,CAAEK,kBAAkB,IAGzE,IAEE5G,GAEkCvD,mBAClCrD,OAAOwE,SAAS6E,UAAyC,aAA7BrJ,OAAOwE,SAAS6E,UAAwD,iBAA7BrJ,OAAOwE,SAAS6E,SAA2B,yBAAAjL,OACrF4B,OAAOwE,SAAS6E,UACzC,YACLxC,GAAAtD,YAAAqD,GAAA,GAJM6G,GAAU5G,GAAA,GA6Gf6G,IA7G8B7G,GAAA,GA+G2CiG,YAASa,KAAwB,CAC1GC,MAAOnB,MADiCoB,IAATH,GAAzBvD,KAA8DuD,GAAnCI,QAIjBC,YAAYC,KAAU,CACtCC,YAAa,WACXjO,OAAOwE,SAASrG,KAAO,KAEzB+P,QAAS,WACPlO,OAAOwE,SAASrG,KAAO,QALpBgQ,GAOL5K,YAAAsK,GAAA,GAPY,GASRO,GAAuB,SAACC,GAC5BpE,GAAOC,UAAU,CACfC,KAAM,CACJmE,IAAGC,YAAA,CACDnE,WAAY,YACTiE,OAMX/J,oBAAU,WACJ2I,IAAqBN,IACvB6B,MAED,CAAC7B,KAEJ,IAIM8B,GAAwB,WAC5BL,GAAqB,CAAEM,qBAAqB,KAGxCC,GAAuB,WAC3BP,GAAqB,CAAEQ,gBAAgB,KAGnCJ,GAAgB,WACpBJ,GAAqB,CAAES,mBAAoB5B,MAGvC6B,GAAa,WACjBC,cACAZ,GAAQ,CAAE3G,UAAW,CAAEwH,aAAc7C,OAGjC8C,GAAqB,SAACC,GAAmB,IAAAC,EACjC,QAAZA,EAAA7I,oBAAY,IAAA6I,GAAZA,EAAcC,QAAQ,SAAUF,GAChClP,OAAOwE,SAAS6K,UAqClBjM,GAE4C/F,IAAMgG,SAAmC,MAAKC,GAAAC,YAAAH,GAAA,GAAnFkM,GAAchM,GAAA,GAAEiM,GAAiBjM,GAAA,GAAAkM,GACMnS,IAAMgG,SAAmC,MAAKoM,GAAAlM,YAAAiM,GAAA,GAArFE,GAAeD,GAAA,GAAEE,GAAkBF,GAAA,GAcxCG,GAE0CvS,IAAMgG,SAAmC,MAAKwM,GAAAtM,YAAAqM,GAAA,GAAnFE,GAAcD,GAAA,GAAEE,GAAiBF,GAAA,GAMtC3I,GAE8B7D,oBAAS,GAAM8D,GAAA5D,YAAA2D,GAAA,GAAxC8I,GAAQ7I,GAAA,GAAE8I,GAAW9I,GAAA,GAQ5B7C,oBAAU,YANqB,WAAM,IAAA4L,EAC7BC,EAAaC,OAAmB,QAAbF,EAAC5J,oBAAY,IAAA4J,OAAA,EAAZA,EAAc9D,QAAQ,eAEhD,OAAO+D,GAAcE,KAAKC,MAAQH,EADf,OAKdI,IAA4B9D,IAC/BwD,IAAY,IAEb,IAEH,IAAMO,GAAwB,SAAC1L,EAA8B2L,GAAoB,IAAAC,EAC3ED,GAAoB,iBAAVA,IACF,QAAZC,EAAApK,oBAAY,IAAAoK,GAAZA,EAActB,QAAQ,aAAcuB,OAAON,KAAKC,QAChDL,IAAY,KAGd,OACE5S,IAAAC,cAAA,UACEK,UAAWiT,IAAWhT,KAAOkN,QAAO+F,YAAA,GACjCjT,KAAOkT,cAAgB9H,KAG1B3L,IAAAC,cAAA,OAAKK,UAAWC,KAAOmT,YACrB1T,IAAAC,cAAA,KAAGa,KAAK,gCACNd,IAAAC,cAAA,OAAKK,UAAWC,KAAOoT,UAAWC,IAAKC,KAAMnT,GAAG,wBAAwBoT,IAAI,2BAE9E9T,IAAAC,cAAA,OAAKK,UAAWC,KAAOwT,UACnBzE,IACAtP,IAAAC,cAAA,MAAIK,UAAWC,KAAOyT,SACpBhU,IAAAC,cAAA,UACED,IAAAC,cAACgU,IAAO,CACN3T,UAAWiT,IAAUC,YAAA,GAClBjT,KAAO2T,cAAgBjF,IAAEI,SAAS,CAAC,QAAS,SAAU,iBAAkBrD,MAE3EmI,GAAE,QAAApT,OAAUoO,IACZzO,GAAG,cAEHV,IAAAC,cAACQ,IAAgB,CAACC,GAAG,kBAGxB0T,YAAS,WACRpU,IAAAC,cAAA,UACED,IAAAC,cAACgU,IAAO,CAACI,gBAAiB9T,KAAO2T,cAAexT,GAAG,qBAAqByT,GAAG,4BACzEnU,IAAAC,cAACQ,IAAgB,CAACC,GAAG,8BAI3BV,IAAAC,cAAA,UACED,IAAAC,cAACgU,IAAO,CAACI,gBAAiB9T,KAAO2T,cAAeC,GAAG,aAAazT,GAAG,oBACjEV,IAAAC,cAACQ,IAAgB,CAACC,GAAG,qBAGxB0T,YAAS,WACRpU,IAAAC,cAAA,UACED,IAAAC,cAACgU,IAAO,CAACI,gBAAiB9T,KAAO2T,cAAeC,GAAG,WAAWzT,GAAG,kBAC/DV,IAAAC,cAACQ,IAAgB,CAACC,GAAG,mBAI3BV,IAAAC,cAAA,UACED,IAAAC,cAACgU,IAAO,CAACI,gBAAiB9T,KAAO2T,cAAeC,GAAG,OAAOzT,GAAG,cAC3DV,IAAAC,cAACQ,IAAgB,CAACC,GAAG,eAGzBV,IAAAC,cAAA,MAAIK,UAAWC,KAAO+T,qBACtBtU,IAAAC,cAAA,MAAIK,UAAWC,KAAOgU,yBACpBvU,IAAAC,cAACmL,IAAU,CACT7I,KAAK,QACLuF,aAAYhI,EAAc,gCAC1B8B,MAAM,UACNlB,GAAG,oBACHyB,QAAS,WACPyQ,IAAY,KAGd5S,IAAAC,cAAC8B,IAAO,CAACvB,MAAOV,EAAc,iCAC5BE,IAAAC,cAACuU,IAAgB,SAIvBxU,IAAAC,cAAA,MAAIK,UAAWC,KAAOgU,yBACpBvU,IAAAC,cAACmL,IAAU,CACT7I,KAAK,QACLuF,aAAYhI,EAAc,6BAC1B8B,MAAM,UACNlB,GAAG,qBACHyB,QAASmP,IAETtR,IAAAC,cAAC8B,IAAO,CAACvB,MAAOV,EAAc,8BAC5BE,IAAAC,cAACwU,IAAY,SAInBzU,IAAAC,cAAA,MAAIK,UAAWC,KAAOmU,sBACpB1U,IAAAC,cAAC8B,IAAO,CACNvB,MACsC,QAAxB,QAAZ0N,EAAAjF,oBAAY,IAAAiF,OAAA,EAAZA,EAAca,QAAQ,WACpB/O,IAAAC,cAACQ,IAAgB,CAACC,GAAG,iBAErBV,IAAAC,cAACQ,IAAgB,CAACC,GAAG,eAIzBV,IAAAC,cAAC+B,IAAM,CACLO,KAAK,QACL7B,GAAG,mBACHuB,UAAWjC,IAAAC,cAAC0U,IAAa,MACzBC,QAAUC,QAAQ5C,IAAuCjS,IAAAC,cAAC6U,IAAc,MAApC9U,IAAAC,cAAC8U,IAAc,MACnD5S,QA/HQ,SAACsF,GACzByK,GAAkBzK,EAAMuN,mBAqIZhV,IAAAC,cAACgV,IAAI,CACHvU,GAAG,cACHwU,SAAUjD,GACVkD,mBAAoB,KACpBC,aAAc,CAAEC,SAAU,SAAUC,WAAY,UAChDC,gBAAiB,CAAEF,SAAU,MAAOC,WAAY,UAChDE,aAAW,EACX5S,KAAMiS,QAAQ5C,IACdjH,QA3IU,WACxBkH,GAAkB,OA2IJ5M,gBAAc,cACdmQ,gBAAc,QAEdzV,IAAAC,cAACyV,IAAQ,CACPC,SAA8C,WAAxB,QAAZxH,EAAAlF,oBAAY,IAAAkF,OAAA,EAAZA,EAAcY,QAAQ,WAChC5M,QAASyP,GAAmBtP,KAAKsT,KAAM,UAEvC5V,IAAAC,cAACQ,IAAgB,CAACC,GAAG,kBAEvBV,IAAAC,cAACyV,IAAQ,CACPC,SAA8C,QAAxB,QAAZvH,EAAAnF,oBAAY,IAAAmF,OAAA,EAAZA,EAAcW,QAAQ,WAChC5M,QAASyP,GAAmBtP,KAAKsT,KAAM,OAEvC5V,IAAAC,cAACQ,IAAgB,CAACC,GAAG,gBAEI,IAA1B0T,YAAS,cAC2B,UAAtB,QAAZ/F,EAAApF,oBAAY,IAAAoF,OAAA,EAAZA,EAAcU,QAAQ,UACrB/O,IAAAC,cAACyV,IAAQ,CACPC,SAA8C,QAAxB,QAAZrH,EAAArF,oBAAY,IAAAqF,OAAA,EAAZA,EAAcS,QAAQ,WAChC5M,QAASyP,GAAmBtP,KAAKsT,KAAM,OAEvC5V,IAAAC,cAACQ,IAAgB,CAACC,GAAG,iBAK/BV,IAAAC,cAAA,MAAIK,UAAWC,KAAOsV,mBACpB/G,IACA9O,IAAAC,cAAA,MAAIK,UAAWC,KAAOuV,iBAAkBpV,GAAG,kBACzCV,IAAAC,cAACgU,IAAO,CAACE,GAAI/D,IACXpQ,IAAAC,cAAC8V,IAAS,MACV/V,IAAAC,cAAA,YACED,IAAAC,cAACQ,IAAgB,CAACC,GAAG,oBAM5BoO,IACC9O,IAAAC,cAAA,MAAIK,UAAWC,KAAOuV,kBACpB9V,IAAAC,cAAC8B,IAAO,CAACvB,MAAK,UAAAO,OAAwB,QAAxBwN,EAAYtF,oBAAY,IAAAsF,OAAA,EAAZA,EAAcQ,QAAQ,WAC9C/O,IAAAC,cAAC+B,IAAM,CACLG,QAjLM,SAACsF,GACzBiL,GAAkBjL,EAAMuN,gBAiLN/S,UAAWjC,IAAAC,cAAC+V,IAAU,MACtBpB,QAAUnC,GAAsCzS,IAAAC,cAAC6U,IAAc,MAApC9U,IAAAC,cAAC8U,IAAc,OAE7B,QAFsDvG,EAElEvF,oBAAY,IAAAuF,GAAiB,QAAjBA,EAAZA,EAAcO,QAAQ,eAAO,IAAAP,OAAA,EAA7BA,EAA+ByH,MAAM,KAAK,KAG/CjW,IAAAC,cAACgV,IAAI,CACHvU,GAAG,cACHwU,SAAUzC,GACV0C,mBAAoB,KACpBC,aAAc,CAAEC,SAAU,SAAUC,WAAY,UAChDC,gBAAiB,CAAEF,SAAU,MAAOC,WAAY,UAChDE,aAAW,EACX5S,KAAMiS,QAAQpC,IACdzH,QA7LQ,WACxB0H,GAAkB,QA8LF1S,IAAAC,cAACyV,IAAQ,CACPvT,QAAS,WACPQ,OAAOwE,SAASrG,KAAO,aAGzBd,IAAAC,cAACQ,IAAgB,CAACC,GAAG,yBAAyB,IAAc,QAAZ+N,EAAAxF,oBAAY,IAAAwF,GAAZA,EAAcM,QAAQ,QAAU,UAAY,GAAI,KAElG/O,IAAAC,cAACyV,IAAQ,CACPpV,UAAWC,KAAO2V,gBAClB/T,QAAS,WACPQ,OAAOwE,SAASrG,KAAO,aAGzBd,IAAAC,cAACQ,IAAgB,CAACC,GAAG,kCAEvBV,IAAAC,cAACyV,IAAQ,CACPpV,UAAWC,KAAO2V,gBAClB/T,QAAS,WACPQ,OAAOwE,SAASrG,KAAO,qBAGzBd,IAAAC,cAACQ,IAAgB,CAACC,GAAG,0BAEvBV,IAAAC,cAACyV,IAAQ,CACPpV,UAAWC,KAAO2V,gBAClB/T,QAAS,WACPQ,OAAOwE,SAASrG,KAAO,mCAGzBd,IAAAC,cAACQ,IAAgB,CAACC,GAAG,2CAEvBV,IAAAC,cAACyV,IAAQ,CACPpV,UAAWC,KAAO2V,gBAClB/T,QAAS,WACPQ,OAAOwE,SAASrG,KAAO,2BAGzBd,IAAAC,cAACQ,IAAgB,CAACC,GAAG,sCAEtB,CAAC,gBAAiB,cAAe,qBAAsB,uBAAuB2O,SAC7EL,KAEAhP,IAAAC,cAACyV,IAAQ,CACPvT,QAAS,WACPQ,OAAOwE,SAASrG,KAAO,iBAGzBd,IAAAC,cAACQ,IAAgB,CAACC,GAAG,8BAGxBsO,IAAW,CAAC,gBAAiB,cAAe,uBAAuBK,SAASL,KAC3EhP,IAAAC,cAACkW,WAAQ,KACPnW,IAAAC,cAACyV,IAAQ,CACPpV,UAAWC,KAAO2V,gBAClB/T,QAAS,WACPQ,OAAOwE,SAASrG,KAAO,qCAGzBd,IAAAC,cAACQ,IAAgB,CAACC,GAAG,iCAI1B,CAAC,gBAAiB,eAAe2O,SAASL,KACzChP,IAAAC,cAACyV,IAAQ,CACPpV,UAAWC,KAAO2V,gBAClB/T,QAAS,WACPQ,OAAOwE,SAASrG,KAAO,gCAGzBd,IAAAC,cAACQ,IAAgB,CAACC,GAAG,iCAGxB,CAAC,sBAAuB,qBAAsB,gBAAiB,eAAe2O,SAC7EL,KAEAhP,IAAAC,cAACkW,WAAQ,KACPnW,IAAAC,cAACyV,IAAQ,CACPpV,UAAWC,KAAO2V,gBAClB/T,QAAS,WACPQ,OAAOwE,SAASrG,KAAO,sCAGzBd,IAAAC,cAACQ,IAAgB,CAACC,GAAG,sCAEvBV,IAAAC,cAACyV,IAAQ,CACPpV,UAAWC,KAAO2V,gBAClB/T,QAAS,WACPQ,OAAOwE,SAASrG,KAAO,6CAGzBd,IAAAC,cAACQ,IAAgB,CAACC,GAAG,8CAI1BoO,IAAS,CAAC,gBAAiB,eAAeO,SAASL,KAClDhP,IAAAC,cAACkW,WAAQ,KACPnW,IAAAC,cAACyV,IAAQ,CACPvT,QAAS,WACPQ,OAAOwE,SAASrG,KAAO,mBAGzBd,IAAAC,cAACQ,IAAgB,CAACC,GAAG,gBAEvBV,IAAAC,cAACyV,IAAQ,CACPpV,UAAWC,KAAO2V,gBAClB/T,QAAS,WACPQ,OAAOwE,SAASrG,KAAO,yBAGzBd,IAAAC,cAACQ,IAAgB,CAACC,GAAG,8BAEvBV,IAAAC,cAACyV,IAAQ,CACPpV,UAAWC,KAAO2V,gBAClB/T,QAAS,WACPQ,OAAOwE,SAASrG,KAAO,gCAGzBd,IAAAC,cAACQ,IAAgB,CAACC,GAAG,qCAEvBV,IAAAC,cAACyV,IAAQ,CACPpV,UAAWC,KAAO2V,gBAClB/T,QAAS,WACPQ,OAAOwE,SAASrG,KAAO,iCAGzBd,IAAAC,cAACQ,IAAgB,CAACC,GAAG,sCAEvBV,IAAAC,cAACyV,IAAQ,CACPpV,UAAWC,KAAO2V,gBAClB/T,QAAS,WACPQ,OAAOwE,SAASrG,KAAO,kCAGzBd,IAAAC,cAACQ,IAAgB,CAACC,GAAG,yCAEvBV,IAAAC,cAACyV,IAAQ,CACPpV,UAAWC,KAAO2V,gBAClB/T,QAAS,WACPQ,OAAOwE,SAASrG,KAAO,wCAGzBd,IAAAC,cAACQ,IAAgB,CAACC,GAAG,8CAEvBV,IAAAC,cAACyV,IAAQ,CACPpV,UAAWC,KAAO2V,gBAClB/T,QAAS,WACPQ,OAAOwE,SAASrG,KAAO,+CAGzBd,IAAAC,cAACQ,IAAgB,CAACC,GAAG,sDAI3BV,IAAAC,cAACmW,IAAO,MACRpW,IAAAC,cAACyV,IAAQ,CAACvT,QAASsP,IACjBzR,IAAAC,cAACQ,IAAgB,CAACC,GAAG,sBAKhB,QAAZgO,EAAAzF,oBAAY,IAAAyF,OAAA,EAAZA,EAAcK,QAAQ,UACrB/O,IAAAC,cAAA,MAAIK,UAAWC,KAAO8V,oBACpBrW,IAAAC,cAAC8B,IAAO,CAACvB,MAAM,yBACbR,IAAAC,cAAC+B,IAAM,CACLO,KAAK,QACL7B,GAAG,iBACHuB,UAAWjC,IAAAC,cAACqW,IAAe,MAC3BnU,QAxXO,SAACsF,GAC1B6K,GAAmB7K,EAAMuN,mBA8XXhV,IAAAC,cAACgV,IAAI,CACHvU,GAAG,eACHwU,SAAU7C,GACV8C,mBAAoB,KACpBC,aAAc,CAAEC,SAAU,SAAUC,WAAY,UAChDC,gBAAiB,CAAEF,SAAU,MAAOC,WAAY,UAChDE,aAAW,EACX5S,KAAMiS,QAAQxC,IACdrH,QApYS,WACzBsH,GAAmB,OAoYHhN,gBAAc,eACdmQ,gBAAc,QAEdzV,IAAAC,cAACC,IAAI,CAACC,WAAS,EAACG,UAAWC,KAAOgW,oBAvkBP,CAC3C,CACEC,KAAM,mBACN1N,IAAK,gCACL2N,MAAO,qGAET,CACED,KAAM,mBACN1N,IAAK,gCACL2N,MAAO,qGAET,CACED,KAAM,yBACN1N,IAAK,qCACL2N,MAAO,wGAET,CACED,KAAM,wBACN1N,IAAK,kCACL2N,MAAO,uGAET,CACED,KAAM,iBACN1N,IAAK,8BACL2N,MAAO,mGAET,CACED,KAAM,kBACN1N,IAAK,+BACL2N,MAAO,oGAET,CACED,KAAM,oBACN1N,IAAK,iCACL2N,MAAO,sGAET,CACED,KAAM,4BACN1N,IAAK,yCACL2N,MACE,+GAEJ,CACED,KAAM,qBACN1N,IAAK,kCACL2N,MAAO,uGAET,CACED,KAAM,kBACN1N,IAAK,+BACL2N,MAAO,oGAET,CACED,KAAM,sBACN1N,IAAK,mCACL2N,MAAO,wGAET,CACED,KAAM,qBACN1N,IAAK,+BACL2N,MAAO,oGAET,CACED,KAAM,oBACN1N,IAAK,iCACL2N,MAAO,sGAET,CACED,KAAM,iBACN1N,IAAK,+CACL2N,MAAO,mGAET,CACED,KAAM,oBACN1N,IAAK,iCACL2N,MAAO,sGAET,CACED,KAAM,iBACN1N,IAAK,+CACL2N,MAAO,mGAET,CACED,KAAM,qBACN1N,IAAK,kCACL2N,MAAO,uGAET,CACED,KAAM,GACN1N,IAAK,KA+ekC4N,IAAI,SAACC,EAAYhS,GACtC,OACE3E,IAAAC,cAACC,IAAI,CAACE,MAAI,EAACiB,GAAI,EAAGuV,IAAKjS,GACrB3E,IAAAC,cAAC8B,IAAO,CAACvB,MAAOmW,EAAWH,MACzBxW,IAAAC,cAAA,KAAGa,KAAM6V,EAAW7N,KAClB9I,IAAAC,cAAA,OAAK6T,IAAI,GAAGxT,UAAWC,KAAOsW,mBAAoBjD,IAAK+C,EAAWF,iBAYvFnH,IACCtP,IAAAC,cAAA,UACES,GAAG,qBACHJ,UAAWiT,IAAWhT,KAAOuW,WAAUtD,YAAA,GACpCjT,KAAOwW,iBAAmBpH,KAE7BxN,QApemB,WAC7B4O,GAAqB,CAAEM,qBAAsB1B,OAqenC3P,IAAAC,cAAC+W,IAAQ,SAKhB1H,IACCtP,IAAAC,cAAA,OACEK,UAAWiT,IAAWhT,KAAO0W,cAAazD,YAAA,GACvCjT,KAAO2W,uBAAyBvH,KAEnCwH,MAAO,CAAEC,OAAQzU,OAAO0U,YAAW,KAEnCrX,IAAAC,cAAA,MAAIK,UAAWC,KAAO+W,eACpBtX,IAAAC,cAAA,UACED,IAAAC,cAACgU,IAAO,CACN3T,UAAWiT,IAAWhT,KAAOgX,kBAAiB/D,YAAA,GAC3CjT,KAAOiX,wBAA0BvI,IAAEI,SAAS,CAAC,QAAS,SAAU,iBAAkBrD,MAErFmI,GAAE,QAAApT,OAAUoO,IACZzO,GAAG,aACHyB,QAASiP,IAETpR,IAAAC,cAACQ,IAAgB,CAACC,GAAG,kBAGxB0T,YAAS,WACRpU,IAAAC,cAAA,UACED,IAAAC,cAACgU,IAAO,CACN3T,UAAWC,KAAOgX,kBAClBlD,gBAAiB9T,KAAOiX,wBACxBrD,GAAG,2BACHzT,GAAG,qBACHyB,QAASiP,IAETpR,IAAAC,cAACQ,IAAgB,CAACC,GAAG,8BAI3BV,IAAAC,cAAA,UACED,IAAAC,cAACgU,IAAO,CACN3T,UAAWC,KAAOgX,kBAClBlD,gBAAiB9T,KAAOiX,wBACxBrD,GAAG,aACHzT,GAAG,mBACHyB,QAASiP,IAETpR,IAAAC,cAACQ,IAAgB,CAACC,GAAG,qBAGxB0T,YAAS,WACRpU,IAAAC,cAAA,UACED,IAAAC,cAACgU,IAAO,CACN3T,UAAWC,KAAOgX,kBAClBlD,gBAAiB9T,KAAOiX,wBACxBrD,GAAG,WACHzT,GAAG,iBACHyB,QAASiP,IAETpR,IAAAC,cAACQ,IAAgB,CAACC,GAAG,mBAI3BV,IAAAC,cAAA,UACED,IAAAC,cAACgU,IAAO,CAACI,gBAAiB9T,KAAO2T,cAAeC,GAAG,OAAOzT,GAAG,cAC3DV,IAAAC,cAACQ,IAAgB,CAACC,GAAG,eAGzBV,IAAAC,cAAA,MACEK,UAAWC,KAAOkX,sBAClB/W,GAAG,oBACHyB,QAAS,WACPyQ,IAAY,KAGd5S,IAAAC,cAACuU,IAAgB,MACjBxU,IAAAC,cAAA,YACED,IAAAC,cAACQ,IAAgB,CAACC,GAAG,8BAGzBV,IAAAC,cAAA,MAAIS,GAAG,qBAAqBJ,UAAWC,KAAOkX,sBAAuBtV,QAASmP,IAC5EtR,IAAAC,cAACwU,IAAY,MACbzU,IAAAC,cAAA,YACED,IAAAC,cAACQ,IAAgB,CAACC,GAAG,wBAGzBV,IAAAC,cAAA,MAAIS,GAAG,mBAAmBJ,UAAWC,KAAOkX,uBAC1CzX,IAAAC,cAAC0U,IAAa,MACd3U,IAAAC,cAAA,KAAGa,KAAK,IAAIqB,QAASyP,GAAmBtP,KAAKsT,KAAM,UAAU,SAG7D5V,IAAAC,cAAA,YAAM,OACND,IAAAC,cAAA,KAAGa,KAAK,IAAIqB,QAASyP,GAAmBtP,KAAKsT,KAAM,OAAO,QAI1D9G,IACA9O,IAAAC,cAAA,MAAIS,GAAG,iBAAiBJ,UAAWC,KAAOmX,wBACxC1X,IAAAC,cAACgU,IAAO,CAAC9R,QAASiP,GAAuB+C,GAAI/D,IAC3CpQ,IAAAC,cAAC8V,IAAS,MACV/V,IAAAC,cAAA,YACED,IAAAC,cAACQ,IAAgB,CAACC,GAAG,oBAK5BoO,IACC9O,IAAAC,cAAA,MAAIK,UAAWC,KAAOmX,wBACpB1X,IAAAC,cAAA,QACEK,UAAWC,KAAOoX,0BAClBxV,QAAS,WACPQ,OAAOwE,SAASrG,KAAO,aAGzBd,IAAAC,cAAC+V,IAAU,MACXhW,IAAAC,cAAA,YAAmB,QAAnB0O,EAAO1F,oBAAY,IAAA0F,OAAA,EAAZA,EAAcI,QAAQ,UAE/B/O,IAAAC,cAAA,UAAQkC,QAASsP,IACfzR,IAAAC,cAAC2X,IAAa,MACd5X,IAAAC,cAAA,YACED,IAAAC,cAACQ,IAAgB,CAACC,GAAG,uBAkBnCV,IAAAC,cAAC6K,IAAM,CACLpK,GAAG,sBACHmX,OAAQ,QACRjV,KAAM+P,GACN3H,QAASmI,GACTjO,kBAAgB,6BAEhBlF,IAAAC,cAAC6X,IAAW,CAACpX,GAAG,sBACb,IACDV,IAAAC,cAACQ,IAAgB,CAACC,GAAG,4BAA6B,KAEpDV,IAAAC,cAACsL,IAAa,CAACwM,UAAU,EAAMZ,MAAO,CAAE3O,UAAW,YACjDxI,IAAAC,cAAC+X,IAAiB,KAChBhY,IAAAC,cAACU,IAAU,CAACc,QAAQ,SAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,mCAGzBV,IAAAC,cAAC+X,IAAiB,KAChBhY,IAAAC,cAACU,IAAU,CAACc,QAAQ,SAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,qCAGzBV,IAAAC,cAAC+X,IAAiB,KAChBhY,IAAAC,cAACU,IAAU,CAACc,QAAQ,SAClBzB,IAAAC,cAAA,SACED,IAAAC,cAACQ,IAAgB,CAACC,GAAG,wCAGzBV,IAAAC,cAACU,IAAU,CAACc,QAAQ,SAClBzB,IAAAC,cAAA,SACED,IAAAC,cAACQ,IAAgB,CAACC,GAAG,qDAI3BV,IAAAC,cAAC+X,IAAiB,KAChBhY,IAAAC,cAACQ,IAAgB,CAACC,GAAG,0CAEvBV,IAAAC,cAAC+X,IAAiB,KAChBhY,IAAAC,cAACU,IAAU,CAACc,QAAQ,SAClBzB,IAAAC,cAAA,MAAIkX,MAAO,CAAEc,UAAW,YACtBjY,IAAAC,cAAA,MAAIkX,MAAO,CAAEc,UAAW,UAAWC,aAAc,OAAQzP,WAAY,SACnEzI,IAAAC,cAACQ,IAAgB,CAACC,GAAG,4CAEvBV,IAAAC,cAAA,MAAIkX,MAAO,CAAEc,UAAW,UAAWC,aAAc,OAAQzP,WAAY,SACnEzI,IAAAC,cAACQ,IAAgB,CAACC,GAAG,4CAEvBV,IAAAC,cAAA,MAAIkX,MAAO,CAAEc,UAAW,UAAWC,aAAc,OAAQzP,WAAY,SACnEzI,IAAAC,cAACQ,IAAgB,CAACC,GAAG,4CAEvBV,IAAAC,cAAA,MAAIkX,MAAO,CAAEc,UAAW,UAAWC,aAAc,OAAQzP,WAAY,SACnEzI,IAAAC,cAACQ,IAAgB,CAACC,GAAG,4CAEvBV,IAAAC,cAAA,MAAIkX,MAAO,CAAEc,UAAW,UAAWC,aAAc,OAAQzP,WAAY,SACnEzI,IAAAC,cAACQ,IAAgB,CAACC,GAAG,4CAEvBV,IAAAC,cAAA,MAAIkX,MAAO,CAAEc,UAAW,UAAWC,aAAc,OAAQzP,WAAY,SACnEzI,IAAAC,cAACQ,IAAgB,CAACC,GAAG,4CAEvBV,IAAAC,cAAA,MAAIkX,MAAO,CAAEc,UAAW,UAAWC,aAAc,OAAQzP,WAAY,SACnEzI,IAAAC,cAACQ,IAAgB,CAACC,GAAG,4CAEvBV,IAAAC,cAAA,MAAIkX,MAAO,CAAEc,UAAW,UAAWC,aAAc,OAAQzP,WAAY,SACnEzI,IAAAC,cAACQ,IAAgB,CAACC,GAAG,4CAEvBV,IAAAC,cAAA,MAAIkX,MAAO,CAAEc,UAAW,UAAWC,aAAc,OAAQzP,WAAY,SACnEzI,IAAAC,cAACQ,IAAgB,CAACC,GAAG,4CAEvBV,IAAAC,cAAA,MAAIkX,MAAO,CAAEc,UAAW,UAAWC,aAAc,OAAQzP,WAAY,SACnEzI,IAAAC,cAACQ,IAAgB,CAACC,GAAG,6CAEvBV,IAAAC,cAAA,MAAIkX,MAAO,CAAEc,UAAW,UAAWC,aAAc,OAAQzP,WAAY,SACnEzI,IAAAC,cAACQ,IAAgB,CAACC,GAAG,gDAK7BV,IAAAC,cAAC+X,IAAiB,KAChBhY,IAAAC,cAACU,IAAU,CAACc,QAAQ,SAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,kDAGzBV,IAAAC,cAAC+X,IAAiB,CAACb,MAAO,CAAE3O,UAAW,UACrCxI,IAAAC,cAACU,IAAU,CAACc,QAAQ,WAClBzB,IAAAC,cAACQ,IAAgB,CAACC,GAAG,yCAI3BV,IAAAC,cAACkY,IAAa,KACZnY,IAAAC,cAAC+B,IAAM,CAACG,QAASgR,GAAuBvR,MAAM,WAC5C5B,IAAAC,cAACQ,IAAgB,CAACC,GAAG,wBAIH,WAAf,OAARyG,QAAQ,IAARA,OAAQ,EAARA,EAAU6E,WAAwBoI,YAAS,YAAa,4NC15BzDgE,EAAgB,IAChBC,EAAuB,GACvBC,EAAgB,GAQf,SAAS5M,EAAcqC,GAAmE,IAAhEtJ,EAAQsJ,EAARtJ,SAAQmK,EAAAb,EAAEpC,cAAM,IAAAiD,GAAQA,EAAA2J,EAAAxK,EAAEyK,aAAK,IAAAD,EAAG,KAAIA,EAAAE,EAChBC,YAAaC,KAAoBC,EAAA1S,YAAAuS,EAAA,GAA/EI,EAAoBD,EAAA,GAAUE,EAAUF,EAAA,GAAhB9L,KAEzB+E,EAAS5I,aAAa8F,QAAQ,WAAagK,IAC3CjZ,EAAgBC,cAEhBiZ,EAAerN,EAAS0M,EAAuBD,EAAcjP,EAC3BnD,mBAASrD,OAAO0U,aAAYjO,EAAAlD,YAAAiD,EAAA,GAA7D8P,EAAY7P,EAAA,GAAE8P,EAAe9P,EAAA,GAAAG,EACMvD,mBAASrD,OAAO0U,aAAe2B,EAAeV,IAAe9O,EAAAtD,YAAAqD,EAAA,GAAhG4P,EAAa3P,EAAA,GAAE4P,EAAgB5P,EAAA,GAEtCvC,oBAAU,WAGR,IAAM+E,EAAWqN,IAAaC,KAAK,SAACC,GAAC,OAAKA,EAAExN,OAASpJ,OAAOwE,SAAS6E,WACrE,GAAIA,EACF9E,SAAS1G,MAAQ,sBAAwBV,EAAckM,EAAWA,EAASxL,MAAQ,SAC9E,GAAImC,OAAOwE,SAAS6E,SAAS3E,QAAQ,aAAe,EACzD,GAAImR,EAAO,KACDxH,EAAWwH,EAAXxH,OACFwI,EAAUvK,IAAEC,IAAI8B,EAAQ,WACxByI,EAAQxK,IAAEC,IAAI8B,EAAQ,SAE1B9J,SAAS1G,MADPiZ,EACe,sBAAwB3Z,EAAc,gBAAe,IAAAiB,OAAOyY,EAAO,OAAAzY,OAAM0Y,GAEzE,sBAAwB3Z,EAAc,gBAAe,IAAAiB,OAAOyY,QAG/EtS,SAAS1G,MAAQ,sBAAwBV,EAAc,iBAIrB,OAAlCmJ,aAAa8F,QAAQ,UACvB8J,KAED,IAEH5R,oBAAU,WAGR,OAFAtE,OAAO+W,iBAAiB,SAAUC,GAE3B,WACLhX,OAAOiX,oBAAoB,SAAUD,KAEtC,IAEH1S,oBAAU,WACJ6R,IACwBA,EAAlBe,eAENxX,YAAMvC,EAAc,mCAIvB,CAACgZ,IAOJ,IAAMa,EAAwB1K,IAAE6K,SALhC,WACEZ,EAAgBvW,OAAO0U,aACvB+B,EAAiBzW,OAAO0U,aAAe2B,EAAeV,KAGD,KAEvD,OACEtY,IAAAC,cAAA,OACEK,UAAWiT,IAAWhT,IAAOwZ,YAAa,CACxCC,YAAwB,OAAXnI,IAEfsF,MAAO,CAAEC,OAAQ6B,IAEjBjZ,IAAAC,cAACga,IAAM,CAACtO,OAAQA,IAChB3L,IAAAC,cAAA,OAAKK,UAAWC,IAAO2Z,eAAgB/C,MAAO,CAAEgD,UAAWhB,IACxD1U,GAEHzE,IAAAC,cAACgN,IAAM,6BCnGbmN,EAAAC,QAAA,CAAkBN,YAAA,oCAAAG,eAAA,0ECClB/N,EAAAC,EAAAC,EAAA,sBAAAiE,IAAO,IAAMA,EAAsB,CAAAgK,KAAA,WAAAC,YAAA,EAAAD,KAAA,sBAAAE,UAAA,QAAAhE,KAAA,CAAA8D,KAAA,OAAA5V,MAAA,wBAAA+V,oBAAA,GAAAC,WAAA,GAAAC,aAAA,CAAAL,KAAA,eAAAM,WAAA,EAAAN,KAAA,QAAA9D,KAAA,CAAA8D,KAAA,OAAA5V,MAAA,wBAAA+H,UAAA,GAAAiO,WAAA,GAAAC,aAAA,CAAAL,KAAA,eAAAM,WAAA,EAAAN,KAAA,QAAA9D,KAAA,CAAA8D,KAAA,OAAA5V,MAAA,SAAA+H,UAAA,GAAAiO,WAAA,KAAAJ,KAAA,QAAA9D,KAAA,CAAA8D,KAAA,OAAA5V,MAAA,eAAA+H,UAAA,GAAAiO,WAAA,KAAAJ,KAAA,QAAA9D,KAAA,CAAA8D,KAAA,OAAA5V,MAAA,oBAAA+H,UAAA,GAAAiO,WAAA,WAAAG,IAAA,CAAAC,MAAA,EAAAC,IAAA,IAAAC,OAAA,CAAAC,KAAA,iKAAAzE,KAAA,kBAAA0E,eAAA,CAAAC,KAAA,EAAAC,OAAA,2BCDnChB,EAAAC,QAAA,CAAkB5M,QAAA,wBAAAC,SAAA,yBAAAC,UAAA,0BAAA0N,cAAA,oDCAlBjB,EAAAC,QAAA,CAAkBiB,aAAA,UAAAC,eAAA,UAAAC,WAAA,UAAAC,YAAA,UAAAC,WAAA,UAAAC,WAAA,UAAAC,WAAA,sBAAAC,oBAAA,sBAAAC,gBAAA,UAAAC,cAAA,sBAAAC,UAAA,sBAAAC,UAAA,UAAAC,WAAA,UAAAC,eAAA,OAAAC,WAAA,UAAAC,aAAA,UAAAC,aAAA,UAAAC,WAAA,oBAAA9O,QAAA,wBAAAgG,cAAA,8BAAAC,WAAA,2BAAA8I,cAAA,8BAAAC,mBAAA,mCAAAC,WAAA,2BAAA/I,UAAA,0BAAAI,QAAA,wBAAA4I,KAAA,qBAAAC,WAAA,2BAAAC,aAAA,6BAAAC,iBAAA,iCAAAC,iBAAA,iCAAAC,aAAA,6BAAAC,wBAAA,wCAAAC,2BAAA,2CAAAC,SAAA,yBAAAC,SAAA,yBAAAC,sBAAA,sCAAAC,cAAA,8BAAAC,cAAA,8BAAAC,eAAA,+BAAAC,0BAAA,0CAAAC,aAAA,6BAAAC,sBAAA,sCAAAC,wBAAA,wCAAAC,KAAA,qBAAAC,iBAAA,iCAAAC,mBAAA,mCAAAC,uBAAA,uCAAAC,iBAAA,iCAAAjK,QAAA,wBAAAM,mBAAA,mCAAAI,qBAAA,qCAAAwJ,oBAAA,kCAAA7H,mBAAA,mCAAA9B,wBAAA,wCAAAuB,iBAAA,iCAAAqI,sBAAA,oCAAAjK,cAAA,8BAAAgC,gBAAA,gCAAAkI,0BAAA,0CAAAC,oBAAA,oCAAA9H,mBAAA,mCAAAM,mBAAA,mCAAAyH,wBAAA,wCAAAxH,WAAA,2BAAAC,iBAAA,iCAAAE,cAAA,8BAAAC,uBAAA,uCAAAI,cAAA,8BAAAG,sBAAA,sCAAAC,uBAAA,uCAAAC,0BAAA,0CAAAJ,kBAAA,kCAAAC,wBAAA,wCAAA+G,eAAA,+BAAAC,WAAA,2BAAAC,SAAA,yBAAAC,qBAAA,qCAAAC,eAAA,+BAAAC,2BAAA,iECDlBxE,EAAAC,QAAiBlO,EAAA/G,EAAuB,0ECCxCgV,EAAAC,QAAA,CAAkBla,UAAA,2BAAA0e,QAAA,yBAAAre,MAAA,uBAAAse,eAAA,gCAAA1e,KAAA,sBAAAuK,QAAA,yBAAAZ,aAAA,8BAAAa,iBAAA,kCAAAmU,eAAA,gCAAAtY,KAAA,sBAAAuY,UAAA,2BAAAC,SAAA,0BAAA7d,eAAA,gCAAAU,aAAA,8BAAAgB,QAAA","file":"static/js/611.5a4671a0.chunk.js","sourcesContent":["import Grid from '@material-ui/core/Grid';\nimport Typography from '@material-ui/core/Typography';\nimport {FormattedMessage} from 'react-intl';\nimport Card from '@material-ui/core/Card';\nimport CardContent from '@material-ui/core/CardContent';\nimport CardActions from '@material-ui/core/CardActions';\nimport Tooltip from '@material-ui/core/Tooltip';\nimport Button from '@material-ui/core/Button';\nimport FileCopyIcon from '@material-ui/icons/FileCopy';\nimport React from 'react';\nimport copy from 'copy-to-clipboard';\nimport toast from '../../../helpers/toast';\nimport useFormatMessage from '../../../hooks/useFormatMessage';\nimport styles from './../APIPage.module.scss';\nimport Alert from '@material-ui/lab/Alert';\nimport { getEnvVar } from '../../../helpers/tenant';\n\nexport default function APIDefaultView(){\n\n const endPointURL = 'https://plataforma.alerta.mapbiomas.org/api/v1/graphql';\n const formatMessage = useFormatMessage();\n\n const handleCopy = () => {\n if (copy) {\n copy(endPointURL);\n toast(formatMessage('map_controls.share_box.actions.copy_success'));\n }\n };\n\n return (\n <Grid container>\n <Grid item sm={ 12 }>\n <h1 className={ styles.title }><FormattedMessage id=\"api.title.api\" /></h1>\n </Grid>\n <Grid item sm={ 12 }>\n <Typography>\n <Alert severity=\"error\"><b>Atenção!</b> Esta versão continuará ativa até 30/11/2023 e a partir desta data será removida do catálogo de serviços disponÃveis aos parceiros, por favor visite a documentação da API V2. <br/> <b><a href={`${getEnvVar('api_url')}/api/v2`}>Acessar documentação</a>.</b> </Alert>\n </Typography>\n </Grid>\n <Grid item sm={ 12 }>\n <Typography>\n <FormattedMessage id=\"api.default.definition_1\" />\n </Typography>\n \n </Grid>\n <Grid item sm={ 12 }>\n <Grid container justifyContent=\"center\" alignItems=\"center\" spacing={ 3 } className={ styles.card_container }>\n <Grid item xs={ 12 } sm={ 10 } xl={ 10 }>\n <Card>\n <CardContent>\n <Typography variant=\"h6\" component=\"h2\">\n <FormattedMessage id=\"api.fields.endpoint\" />\n </Typography>\n <Typography className={ styles.card_pos } color=\"textSecondary\">\n https://plataforma.alerta.mapbiomas.org/api/v1/graphql\n </Typography>\n </CardContent>\n <CardActions className={ styles.card_actions }>\n <Tooltip title={ <FormattedMessage id='api.fields.endpoint_tooltip' /> }>\n <Button\n startIcon={ <FileCopyIcon /> }\n onClick={ handleCopy.bind() }\n size='small'\n >\n <FormattedMessage id=\"api.fields.copy_address\" />\n </Button>\n </Tooltip>\n </CardActions>\n </Card>\n </Grid>\n </Grid>\n </Grid>\n <Grid item sm={ 12 }>\n <Typography>\n <FormattedMessage id=\"api.default.definition_2\" />\n </Typography>\n </Grid>\n <Grid item sm={ 12 } className={ styles.card_container }>\n <Grid container spacing={ 3 } direction=\"row\" justifyContent=\"center\" alignItems=\"center\">\n <Grid item sm={ 10 } md={ 4 } ls={ 3 }>\n <Card>\n <CardContent>\n <Typography variant=\"h5\" component=\"h2\" className={ styles.card_pos }>\n <FormattedMessage id=\"api.fields.documentation\" />\n </Typography>\n <Typography variant=\"body2\" component=\"p\">\n <FormattedMessage id=\"api.fields.documentation_description\" />\n </Typography>\n </CardContent>\n <CardActions className={ styles.card_actions }>\n <Tooltip title={ <FormattedMessage id='api.fields.documentation_tooltip' /> }>\n <Button\n onClick={ () => { window.open('/api/v1/documentation','documentation') } }\n size='small'\n >\n <FormattedMessage id=\"api.fields.see\" />\n </Button>\n </Tooltip>\n </CardActions>\n </Card>\n </Grid>\n <Grid item sm={ 10 } md={ 4 } ls={ 3 }>\n <Card>\n <CardContent>\n <Typography variant=\"h5\" component=\"h2\" className={ styles.card_pos }>\n <FormattedMessage id=\"api.fields.sandbox\" />\n </Typography>\n <Typography variant=\"body2\" component=\"p\">\n <FormattedMessage id=\"api.fields.sandbox_description\" />\n </Typography>\n </CardContent>\n <CardActions className={ styles.card_actions }>\n <Tooltip title={ <FormattedMessage id='api.fields.sandbox_tooltip' /> }>\n <Button\n onClick={ () => { window.open('/api/v1/sandbox','sandbox') } }\n size='small'\n >\n <FormattedMessage id=\"api.fields.open\" />\n </Button>\n </Tooltip>\n </CardActions>\n </Card>\n </Grid>\n <Grid item sm={ 10 } md={ 4 } ls={ 3 }>\n <Card>\n <CardContent>\n <Typography variant=\"h5\" component=\"h2\" className={ styles.card_pos }>\n <FormattedMessage id=\"api.fields.graphql\" />\n </Typography>\n <Typography variant=\"body2\" component=\"p\">\n <FormattedMessage id=\"api.fields.graphql_description\" />\n </Typography>\n </CardContent>\n <CardActions className={ styles.card_actions }>\n <Tooltip title={ <FormattedMessage id='api.fields.graphql_tooltip' /> }>\n <Button\n onClick={ () => { window.open('/api/v1/graphiql','graphiql') } }\n size='small'\n >\n Ir\n </Button>\n </Tooltip>\n </CardActions>\n </Card>\n </Grid>\n </Grid>\n </Grid>\n <Grid item sm={ 12 }>\n <Typography>\n <FormattedMessage id=\"api.default.definition_3\" /> <a href='https://www.postman.com/mabiomas-alerta-api/workspace/api-mapbiomas-alerta-client-compartilhado/overview' target='_blank'><FormattedMessage id=\"api.default.definition_3_1\" /></a> <FormattedMessage id=\"api.default.definition_3_2\" /> <a href='https://www.postman.com/mabiomas-alerta-api/workspace/api-mapbiomas-alerta-client-compartilhado/overview' target='_blank'>desktop</a>.\n </Typography>\n </Grid>\n <Grid item sm={ 12 }>\n <Typography variant=\"body2\" component=\"p\" className={ styles.support }>\n <FormattedMessage id=\"api.default.definition_4\" /> <a href=\"mailto:suporte.alerta@mapbiomas.org\">suporte.alerta@mapbiomas.org</a>.\n </Typography>\n </Grid>\n </Grid>\n )\n}\n","export const queryMutationSignIn =\n `mutation sign_in($email: String!, $password: String!) {\n signIn(email:$email, password:$password){\n token\n }\n }`\nexport const variablesMutationSignIn =\n `variables:{\n \"email\": \"EMAIL\",\n \"password\": \"PASSWORD\"\n }`\nexport const queryPublishedAlerts =\n `query published_alerts($startDetectedAt: String!, $endDetectedAt:String!, $startPublishedAt:String!, $endPublishedAt:String!) {\n publishedAlerts(startDetectedAt: $startDetectedAt, endDetectedAt: $endDetectedAt, startPublishedAt: $startPublishedAt, endPublishedAt: $endPublishedAt) {\n alertCode\n areaHa\n cars {\n carCode\n carType\n carModule\n geom\n }\n bbox\n sources\n alertInsertedAt\n detectedAt\n coordinates {\n latitude\n longitude\n }\n }\n }\\n`\nexport const variablesPublishedAlerts =\n `variables: {\n \"startDetectedAt\": \"2020-01-01\",\n \"endDetectedAt\": \"2021-12-30\",\n \"startPublishedAt\": \"2020-01-01\",\n \"endPublishedAt\": \"2021-12-30\",\n \"offset\": 0,\n \"limit\": 100\n }`\nexport const queryPublishedAlert =\n `query published_alert($alertCode: String!){\n publishedAlert(alertCode: $alertCode){\n alertGeometryId\n alertBiomes\n alertCities\n alertStates\n ruralProperties\n detectedAt\n areaHa\n sources\n bbox\n publishedAt\n deforestationClass\n }\n }`\nexport const variablesPublishedAlert =\n `variables: {\n \"alertCode\": 0\n }`\nexport const queryAlertReport =\n `query alert_report($alertCode:Int!) {\n alertReport(alertCode:$alertCode){\n alertCode\n carCode\n source \n images {\n after {\n satellite\n url\n }\n before {\n satellite\n url\n }\n }\n changes {\n labels\n overYears {\n year\n imageUrl\n }\n }\n warnings\n }\n }`\nexport const variablesAlertReport =\n `variables: {\n \"alertCode\": 0\n }`\nexport const queryAlertFromCAR =\n `query alert_from_car($carCode:String!) {\n alertsFromCar(carCode:$carCode) \n }`\nexport const variablesAlertFromCAR =\n `variables: {\n \"carCode\": \"XX-XXXX-XXXXXXXXXXXXXXXXXXXXXXXXXX\"\n }`\nexport const queryActionsByAlert =\n `query actions_by_alert($alertCode: Int!) {\n actionsByAlert(alertCode: $alertCode){\n actionDate\n actionType\n description\n ruralPropertyId\n link\n }\n }`\nexport const variablesActionsByAlert =\n `variables: {\n \"alertCode\": 0\n }`\nexport const queryTerritories =\n `query territories($category:TerritoryCategoryEnum) {\n territories(category:$category){\n id\n name\n areaHa\n categoryName \n }\n }`\nexport const variablesTerritories =\n `variables: {\n \"category\": 'BIOME'\n }`\nexport const queryMyMaps =\n `query my_maps{\n myMaps{\n alertNotifications {\n alert{\n alertCode\n alertInsertedAt\n bbox\n }\n }\n name\n territories {\n name\n version\n }\n }\n }`\nexport const variablesMyMap =\n `variables: {\n }`\n\nexport const queryMutationSignInGraphQL =\n 'mutation sign_in($email: String!, $password: String!) {\\n' +\n ' signIn(email:$email, password:$password){\\n' +\n ' token\\n' +\n ' }\\n' +\n '}'\n\nexport const variablesMutationSignInGraphQL =\n '{\\n' +\n ' \"email\": \"<EMAIL>\",\\n' +\n ' \"password\": \"<SENHA>\"\\n' +\n '}\\n'\nexport const queryTerritoriesGraphQL =\n 'query territories($category: TerritoryCategoryEnum){\\n' +\n ' territories(category:$category){\\n' +\n ' id\\n' +\n ' name\\n' +\n ' areaHa\\n' +\n ' categoryName\\n' +\n ' }\\n' +\n '}'\n\nexport const variablesTerritoriesGraphQL =\n '{\\n'+\n ' \"category\": \"BIOME\"'+\n '}'\n\nexport const queryAlertsFromCarGraphQL =\n 'query alert_from_car($carCode:String!) {\\n' +\n ' alertsFromCar(carCode:$carCode) \\n' +\n '}'\n\nexport const variablesAlertsFromCarGraphQL =\n '{\\n' +\n ' \"carCode\": \"XX-XXXX-XXXXXXXXXXXXXXXXXXXXXXXXXX\"\\n' +\n '}'\nexport const queryAlertReportGraphQL =\n 'query alert_report($alertCode:Int!) {\\n' +\n ' alertReport(alertCode:$alertCode){\\n' +\n ' alertCode\\n' +\n ' carCode\\n' +\n ' source \\n' +\n ' images {\\n' +\n ' after {\\n' +\n ' satellite\\n' +\n ' url\\n' +\n ' }\\n' +\n ' before {\\n' +\n ' satellite\\n' +\n ' url\\n' +\n ' }\\n' +\n ' }\\n' +\n ' changes {\\n' +\n ' labels\\n' +\n ' overYears {\\n' +\n ' year\\n' +\n ' imageUrl\\n' +\n ' }\\n' +\n ' }\\n' +\n ' warnings\\n' +\n ' }\\n' +\n '}'\n\nexport const variablesAlertReportGraphQL =\n '{\\n' +\n '\"alertCode\": 0\\n' +\n '}\\n'\nexport const queryActionsByAlertGraphQL =\n 'query actions_by_alert($alertCode: Int!) {\\n' +\n ' actionsByAlert(alertCode: $alertCode){\\n' +\n ' actionDate\\n' +\n ' actionType\\n' +\n ' description\\n' +\n ' ruralPropertyId\\n' +\n ' link\\n' +\n ' }\\n' +\n '}'\nexport const variablesActionsByAlertGraphQL =\n '{\\n' +\n ' \"alertCode\": 0\\n' +\n '}\\n'\nexport const queryPublishedAlertsGraphQL =\n 'query published_alerts($startDetectedAt: String!, $endDetectedAt:String!, $startPublishedAt:String!, $endPublishedAt:String!, $limit: Int, $offset: Int) {\\n' +\n ' publishedAlerts(startDetectedAt: $startDetectedAt, endDetectedAt: $endDetectedAt, startPublishedAt: $startPublishedAt, endPublishedAt: $endPublishedAt, limit: $limit, offset: $offset) {\\n' +\n ' alertCode\\n' +\n ' areaHa\\n' +\n ' sources\\n' +\n ' bbox\\n' +\n ' detectedAt\\n'+\n ' alertInsertedAt\\n'+\n ' cars {\\n' +\n ' carCode\\n' +\n ' carType\\n' +\n ' carModule\\n' +\n ' geom\\n' +\n ' }\\n' +\n ' coordinates {\\n' +\n ' latitude\\n' +\n ' longitude\\n' +\n ' }\\n' +\n ' }\\n' +\n '}'\nexport const queryPublishedAlertGraphQL =\n 'query published_alert($alertCode: String!) {\\n' +\n ' publishedAlert(alertCode: $alertCode) {\\n' +\n ' alertCode\\n' +\n ' areaHa\\n' +\n ' sources\\n' +\n ' bbox\\n' +\n ' alertBiomes\\n' +\n ' alertCities\\n' +\n ' alertStates\\n' +\n ' detectedAt\\n' +\n ' publishedAt\\n'+\n ' deforestationClass\\n'+\n ' }\\n' +\n '}'\nexport const variablesPublishedAlertsGraphQL =\n '{\\n' +\n ' \"startDetectedAt\": \"2020-01-01\",\\n' +\n ' \"endDetectedAt\": \"2021-12-30\",\\n' +\n ' \"startPublishedAt\": \"2020-01-01\",\\n' +\n ' \"endPublishedAt\": \"2021-12-30\",\\n' +\n ' \"offset\": 0,\\n' +\n ' \"limit\": 100\\n' +\n '}\\n'\n\nexport const queryMyMapsGraphQL =\n 'query my_maps{\\n'+\n ' myMaps{\\n'+\n ' alertNotifications {\\n'+\n ' alert{\\n'+\n ' alertCode\\n'+\n ' alertInsertedAt\\n'+\n ' bbox\\n'+\n ' }\\n'+\n ' }\\n'+\n ' name\\n'+\n ' territories {\\n'+\n ' name\\n'+\n ' version\\n'+\n ' }\\n'+\n ' }\\n'+\n '}'\n\nexport const variablesMyMapsGraphQL =\n `{\\n\n }`\n\nexport const variablesPublishedAlertGraphQL = '' +\n '{\\n' +\n ' \"alertCode\": \"0\"\\n' +\n '}\\n'\n","import React, {useEffect} from 'react';\nimport styles from '../APIPage.module.scss';\nimport {FormattedMessage} from 'react-intl';\nimport PropTypes from 'prop-types';\n\nimport Tooltip from '@material-ui/core/Tooltip';\nimport ButtonGroup from '@material-ui/core/ButtonGroup';\nimport PlayCircleOutlineIcon from '@material-ui/icons/PlayCircleOutline';\nimport Grid from '@material-ui/core/Grid';\nimport useFormatMessage from '../../../hooks/useFormatMessage';\nimport Tabs from '@material-ui/core/Tabs';\nimport Tab from '@material-ui/core/Tab';\nimport Typography from '@material-ui/core/Typography';\nimport Box from '@material-ui/core/Box';\nimport {makeStyles} from '@material-ui/core/styles';\nimport {Code, CopyBlock, dracula} from 'react-code-blocks';\nimport Button from '@material-ui/core/Button';\nimport Alert from '@material-ui/lab/Alert';\nimport {\n queryActionsByAlert,\n queryAlertFromCAR,\n queryAlertReport,\n queryMutationSignIn,\n queryMyMaps,\n queryPublishedAlert,\n queryPublishedAlerts,\n queryTerritories,\n} from '../queries'\nimport { getEnvVar } from '../../../helpers/tenant';\n\nfunction TabPanel(props) {\n const { children, value, index, ...other } = props;\n\n return (\n <div\n role=\"tabpanel\"\n hidden={ value !== index }\n id={ `scrollable-auto-tabpanel-${index}` }\n aria-labelledby={ `scrollable-auto-tab-${index}` }\n { ...other }\n >\n { value === index && (\n <Box p={ 3 }>\n <Typography>{ children }</Typography>\n </Box>\n ) }\n </div>\n );\n}\n\nTabPanel.propTypes = {\n children: PropTypes.node,\n index: PropTypes.any.isRequired,\n value: PropTypes.any.isRequired,\n};\n\nfunction a11yProps(index) {\n return {\n id: `scrollable-auto-tab-${index}`,\n 'aria-controls': `scrollable-auto-tabpanel-${index}`,\n };\n}\n\nconst useStyles = makeStyles((theme) => ({\n root: {\n flexGrow: 1,\n width: '100%',\n },\n}));\n\n\nexport default function APIDocumentationView() {\n\n const classes = useStyles();\n const formatMessage = useFormatMessage();\n const [value, setValue] = React.useState(1);\n\n const param_url = ['sign_in','published_alerts','published_alert','report','alerts_from_car','actions_from_alert','territories','my_maps']\n\n const handleChange = (event, newValue) => {\n setValue(newValue);\n document.location.hash='#'+param_url[newValue]\n };\n\n useEffect(()=>{\n if(document.location.hash){\n if(param_url.indexOf(document.location.hash.replace('#','')) >= 0){\n setValue(param_url.indexOf(document.location.hash.replace('#','')))\n }\n }\n },[])\n\n function block_graphql_code(code, showLineNumbers) {\n return (\n <CopyBlock\n text={ code }\n language={ 'graphql' }\n showLineNumbers={ showLineNumbers }\n theme={ dracula }\n wrapLines={ true }\n customStyle={{\n fontSize: '0.85rem',\n }}\n />\n );\n }\n\n function code_graphql(code) {\n return (\n <Code\n text={ code }\n language={ 'graphql' }\n theme={ dracula }\n customStyle={{\n fontSize: '0.80rem',\n }}\n />\n );\n }\n\n\n return (\n <Grid container>\n <Grid item xs={ 12 }>\n <h1 className={ styles.title }><FormattedMessage id=\"api.title.documentation\" /></h1>\n </Grid>\n <div className={ classes.root }>\n <Tabs\n value={ value }\n onChange={ handleChange }\n indicatorColor=\"primary\"\n textColor=\"primary\"\n variant=\"scrollable\"\n scrollButtons=\"auto\"\n aria-label=\"scrollable auto tabs example\"\n >\n <Tab label={ <FormattedMessage id=\"api.documentation.sign_in.title\" /> } { ...a11yProps(0) } />\n <Tab label={ <FormattedMessage id=\"api.documentation.published_alerts.title\" /> } { ...a11yProps(1) } />\n <Tab label={ <FormattedMessage id=\"api.documentation.published_alert.title\" /> } { ...a11yProps(2) } />\n <Tab label={ <FormattedMessage id=\"api.documentation.report.title\" /> } { ...a11yProps(3) } />\n <Tab label={ <FormattedMessage id=\"api.documentation.alerts_from_car.title\" /> } { ...a11yProps(4) } />\n <Tab label={ <FormattedMessage id=\"api.documentation.actions_from_alert.title\" /> } { ...a11yProps(5) } />\n <Tab label={ <FormattedMessage id=\"api.documentation.territories.title\" /> } { ...a11yProps(6) } />\n <Tab label={ <FormattedMessage id=\"api.documentation.my_maps.title\" /> } { ...a11yProps(7) } />\n </Tabs>\n <TabPanel value={ value } index={ 0 }>\n <Grid container spacing={ 3 } justifyContent=\"flex-end\" alignItems=\"center\">\n <Grid item sm={ 12 }>\n <Typography variant='primary'>\n <FormattedMessage id=\"api.documentation.sign_in.definition_1\" /> { code_graphql('mutation signIn') } <FormattedMessage id=\"api.documentation.sign_in.definition_1_1\" />\n </Typography>\n </Grid>\n <Grid item sm={ 12 }>\n <Typography variant='secondary'>\n <FormattedMessage id=\"api.documentation.sign_in.definition_2\" />\n </Typography>\n </Grid>\n <Grid item sm={ 12 }>\n { block_graphql_code(queryMutationSignIn,true) }\n </Grid>\n <Grid item sm={ 12 }>\n <Grid container justifyContent='flex-end'>\n <ButtonGroup color=\"primary\" aria-label=\"outlined primary button group\">\n <Tooltip title={ <FormattedMessage id=\"api.fields.run_sandbox\" /> }>\n <Button\n variant=\"contained\"\n color=\"primary\"\n onClick={ ()=> { window.open('/api/v1/sandbox#sign_in','sandbox') } }\n startIcon={ <PlayCircleOutlineIcon /> }> Sandbox </Button>\n </Tooltip>\n <Tooltip title={ <FormattedMessage id=\"api.fields.run_postman\" /> }>\n <Button\n variant=\"contained\"\n color=\"primary\"\n onClick={ ()=> { window.open('https://www.postman.com/mabiomas-alerta-api/workspace/api-mapbiomas-alerta-client-compartilhado/request/18466584-a43d70ea-29ef-4f69-94ce-3d237b0588d2','postman') } }\n startIcon={ <PlayCircleOutlineIcon /> }> Postman </Button>\n </Tooltip>\n </ButtonGroup>\n </Grid>\n </Grid>\n <Grid item sm={ 12 }>\n <Typography variant='primary'>\n <FormattedMessage id=\"api.documentation.sign_in.create_account.definition_2\" />\n </Typography>\n </Grid>\n <Grid item sm={ 12 }>\n <Typography variant='h5'>\n <FormattedMessage id=\"api.documentation.sign_in.create_account.title\" />\n </Typography>\n </Grid>\n <Grid item sm={ 12 }>\n <Typography variant='secondary'>\n <FormattedMessage id=\"api.documentation.sign_in.create_account.definition_1\" />\n </Typography>\n </Grid>\n <Grid item sm={ 12 }>\n <Typography variant='primary'>\n <FormattedMessage id=\"api.documentation.sign_in.definition_3\" /> <a href='#' onClick={ ()=>{ setValue(1) } }>Alerta Publicado</a> <FormattedMessage id=\"api.documentation.sign_in.definition_3_1\" /> <a href='#' onClick={ ()=>{ setValue(6) } }>Territórios</a> <FormattedMessage id=\"api.documentation.sign_in.definition_3_2\" />\n </Typography>\n </Grid>\n </Grid>\n </TabPanel>\n <TabPanel value={ value } index={ 1 }>\n <Grid container spacing={ 3 } justifyContent=\"flex-end\" alignItems=\"center\">\n <Grid item sm={ 12 }>\n <Typography variant='primary'>\n <FormattedMessage id=\"api.documentation.published_alerts.definition_1\" /> { code_graphql('query publishedAlerts') } <FormattedMessage id=\"api.documentation.published_alerts.definition_1_1\" />\n </Typography>\n </Grid>\n <Grid item sm={ 12 }>\n { block_graphql_code(queryPublishedAlerts,true) }\n </Grid>\n <Grid item sm={ 12 }>\n <Grid container justifyContent='flex-end'>\n <ButtonGroup color=\"primary\" aria-label=\"outlined primary button group\">\n <Tooltip title={ <FormattedMessage id=\"api.fields.run_sandbox\" /> }>\n <Button\n variant=\"contained\"\n color=\"primary\"\n onClick={ ()=> { window.open('/api/v1/sandbox#published_alerts','sandbox') } }\n startIcon={ <PlayCircleOutlineIcon /> }> Sandbox </Button>\n </Tooltip>\n <Tooltip title={ <FormattedMessage id=\"api.fields.run_postman\" /> }>\n <Button\n variant=\"contained\"\n color=\"primary\"\n onClick={ ()=> { window.open('https://www.postman.com/mabiomas-alerta-api/workspace/api-mapbiomas-alerta-client-compartilhado/request/18466584-e35f1083-6c2c-4a2c-a6ac-af160c971254','postman') } }\n startIcon={ <PlayCircleOutlineIcon /> }> Postman </Button>\n </Tooltip>\n </ButtonGroup>\n </Grid>\n </Grid>\n <Grid item sm={ 12 }>\n <Typography variant='primary'>\n <FormattedMessage id=\"api.documentation.published_alerts.definition_3\" />\n </Typography>\n </Grid>\n <Grid item sm={ 12 }>\n <Typography variant='primary'>\n <FormattedMessage id=\"api.documentation.published_alerts.definition_2\" /> <a href='#' onClick={ ()=>{ setValue(2) } }><FormattedMessage id=\"api.documentation.published_alert.title\" /></a> <FormattedMessage id=\"api.documentation.published_alerts.definition_2_1\" /> <a href='#' onClick={ ()=>{ setValue(3) } }><FormattedMessage id=\"api.documentation.report.title\" /></a>.\n </Typography>\n </Grid>\n </Grid>\n </TabPanel>\n <TabPanel value={ value } index={ 2 }>\n <Grid container spacing={ 3 } justifyContent=\"flex-end\" alignItems=\"center\">\n <Grid item sm={ 12 }>\n <Typography variant='primary'>\n <FormattedMessage id=\"api.documentation.published_alert.definition_1\" /> { code_graphql('query publishedAlert(alertCode: $alertCode)') }, <FormattedMessage id=\"api.documentation.published_alert.definition_1_1\" />\n </Typography>\n </Grid>\n <Grid item sm={ 12 }>\n { block_graphql_code(queryPublishedAlert,true) }\n </Grid>\n <Grid item sm={ 12 }>\n <Grid container justifyContent='flex-end'>\n <ButtonGroup color=\"primary\" aria-label=\"outlined primary button group\">\n <Tooltip title={ <FormattedMessage id=\"api.fields.run_sandbox\" /> }>\n <Button\n variant=\"contained\"\n color=\"primary\"\n onClick={ ()=> { window.open('/api/v1/sandbox#published_alert','sandbox') } }\n startIcon={ <PlayCircleOutlineIcon /> }> Sandbox </Button>\n </Tooltip>\n <Tooltip title={ <FormattedMessage id=\"api.fields.run_postman\" /> }>\n <Button\n variant=\"contained\"\n color=\"primary\"\n onClick={ ()=> { window.open('https://www.postman.com/mabiomas-alerta-api/workspace/api-mapbiomas-alerta-client-compartilhado/request/18466584-5427c7ee-4143-4c1e-96a2-3498bc0a3fa1','postman') } }\n startIcon={ <PlayCircleOutlineIcon /> }> Postman </Button>\n </Tooltip>\n </ButtonGroup>\n </Grid>\n </Grid>\n <Grid item sm={ 12 }>\n <Typography variant='primary'>\n <FormattedMessage id=\"api.documentation.published_alert.definition_2\" />\n </Typography>\n </Grid>\n <Grid item sm={ 12 }>\n <Typography variant='primary'>\n <FormattedMessage id=\"api.documentation.published_alert.definition_3\" /> <a href='#' onClick={ ()=>{ setValue(1) } }><FormattedMessage id=\"api.documentation.published_alerts.title\" /></a>.\n </Typography>\n </Grid>\n </Grid>\n </TabPanel>\n <TabPanel value={ value } index={ 3 }>\n <Grid container spacing={ 3 } justifyContent=\"flex-end\" alignItems=\"center\">\n <Grid item sm={ 12 }>\n <Typography variant='primary'>\n <FormattedMessage id=\"api.documentation.report.definition_1\" /> { code_graphql('query alertReport(alertCode: $alertCode)') }. <FormattedMessage id=\"api.documentation.report.definition_1_1\" />\n </Typography>\n </Grid>\n <Grid item sm={ 12 }>\n { block_graphql_code(queryAlertReport,true) }\n </Grid>\n <Grid item sm={ 12 }>\n <Grid container justifyContent='flex-end'>\n <ButtonGroup color=\"primary\" aria-label=\"outlined primary button group\">\n <Tooltip title={ <FormattedMessage id=\"api.fields.run_sandbox\" /> }>\n <Button\n variant=\"contained\"\n color=\"primary\"\n onClick={ ()=> { window.open('/api/v1/sandbox#report','sandbox') } }\n startIcon={ <PlayCircleOutlineIcon /> }> Sandbox </Button>\n </Tooltip>\n <Tooltip title={ <FormattedMessage id=\"api.fields.run_postman\" /> }>\n <Button\n variant=\"contained\"\n color=\"primary\"\n onClick={ ()=> { window.open('https://www.postman.com/mabiomas-alerta-api/workspace/api-mapbiomas-alerta-client-compartilhado/request/18466584-a68de023-fd43-4a15-a2b9-34d37828d8dc','postman') } }\n startIcon={ <PlayCircleOutlineIcon /> }> Postman </Button>\n </Tooltip>\n </ButtonGroup>\n </Grid>\n </Grid>\n <Grid item sm={ 12 }>\n <Typography variant='primary'>\n <FormattedMessage id=\"api.documentation.report.definition_2\" />\n </Typography>\n </Grid>\n <Grid item sm={ 12 }>\n <Typography variant='primary'>\n <FormattedMessage id=\"api.documentation.report.definition_3\" /> <a href='#' onClick={ ()=>{ setValue(1) } }><FormattedMessage id=\"api.documentation.published_alerts.title\" /></a>.\n </Typography>\n </Grid>\n </Grid>\n </TabPanel>\n <TabPanel value={ value } index={ 4 }>\n <Grid container spacing={ 3 } justifyContent=\"flex-end\" alignItems=\"center\">\n <Grid item sm={ 12 }>\n <Typography variant='primary'>\n <FormattedMessage id=\"api.documentation.alerts_from_car.definition_1\" /> { code_graphql('query alertsFromCar(carCode: $carCode) ') }. <FormattedMessage id=\"api.documentation.alerts_from_car.definition_1_1\" />\n </Typography>\n </Grid>\n <Grid item sm={ 12 }>\n { block_graphql_code(queryAlertFromCAR,true) }\n </Grid>\n <Grid item sm={ 12 }>\n <Grid container justifyContent='flex-end'>\n <ButtonGroup color=\"primary\" aria-label=\"outlined primary button group\">\n <Tooltip title={ <FormattedMessage id=\"api.fields.run_sandbox\" /> }>\n <Button\n variant=\"contained\"\n color=\"primary\"\n onClick={ ()=> { window.open('/api/v1/sandbox#alerts_from_car','sandbox') } }\n startIcon={ <PlayCircleOutlineIcon /> }> Sandbox </Button>\n </Tooltip>\n <Tooltip title={ <FormattedMessage id=\"api.fields.run_postman\" /> }>\n <Button\n variant=\"contained\"\n color=\"primary\"\n onClick={ ()=> { window.open('https://www.postman.com/mabiomas-alerta-api/workspace/api-mapbiomas-alerta-client-compartilhado/request/18466584-2f3948b8-a340-404c-a59b-6bc2d3581b49','postman') } }\n startIcon={ <PlayCircleOutlineIcon /> }> Postman </Button>\n </Tooltip>\n </ButtonGroup>\n </Grid>\n </Grid>\n <Grid item sm={ 12 }>\n <Typography variant='primary'>\n <FormattedMessage id=\"api.documentation.alerts_from_car.definition_2\" /> <a href='#' onClick={ ()=>{ setValue(3) } }><FormattedMessage id=\"api.documentation.report.title\" /></a>.\n </Typography>\n </Grid>\n </Grid>\n </TabPanel>\n <TabPanel value={ value } index={ 5 }>\n <Grid container spacing={ 3 } justifyContent=\"flex-end\" alignItems=\"center\">\n <Grid item sm={ 12 }>\n <Typography variant='secondary'>\n <FormattedMessage id=\"api.documentation.actions_from_alert.definition_1\" /> { code_graphql('query actionsByAlert(alertCode:$alertCode) ') } <FormattedMessage id=\"api.documentation.actions_from_alert.definition_1_1\" />\n </Typography>\n </Grid>\n <Grid item sm={ 12 }>\n { block_graphql_code(queryActionsByAlert,true) }\n </Grid>\n <Grid item sm={ 12 }>\n <Grid container justifyContent='flex-end'>\n <ButtonGroup color=\"primary\" aria-label=\"outlined primary button group\">\n <Tooltip title={ <FormattedMessage id=\"api.fields.run_sandbox\" /> }>\n <Button\n variant=\"contained\"\n color=\"primary\"\n onClick={ ()=> { window.open('/api/v1/sandbox#actions_from_alert','sandbox') } }\n startIcon={ <PlayCircleOutlineIcon /> }> Sandbox </Button>\n </Tooltip>\n <Tooltip title={ <FormattedMessage id=\"api.fields.run_postman\" /> }>\n <Button\n variant=\"contained\"\n color=\"primary\"\n onClick={ ()=> { window.open('https://www.postman.com/mabiomas-alerta-api/workspace/api-mapbiomas-alerta-client-compartilhado/request/18466584-66dae437-42c8-4dd1-93bd-9b7eaad77b70','postman') } }\n startIcon={ <PlayCircleOutlineIcon /> }> Postman </Button>\n </Tooltip>\n </ButtonGroup>\n </Grid>\n </Grid>\n <Grid item sm={ 12 }>\n <Typography variant='primary'>\n <FormattedMessage id=\"api.documentation.actions_from_alert.definition_2\" />\n </Typography>\n </Grid>\n </Grid>\n </TabPanel>\n <TabPanel value={ value } index={ 6 }>\n <Grid container spacing={ 3 } justifyContent=\"flex-end\" alignItems=\"center\">\n <Grid item sm={ 12 }>\n <Typography variant='primary'>\n <FormattedMessage id=\"api.documentation.territories.definition_1\" /> { code_graphql('query territories(category: $category)') }. <FormattedMessage id=\"api.documentation.territories.definition_1_1\" />\n </Typography>\n </Grid>\n <Grid item sm={ 12 }>\n { block_graphql_code(queryTerritories,true) }\n </Grid>\n <Grid item sm={ 12 }>\n <Grid container justifyContent='flex-end'>\n <ButtonGroup color=\"primary\" aria-label=\"outlined primary button group\">\n <Tooltip title={ <FormattedMessage id=\"api.fields.run_sandbox\" /> }>\n <Button\n variant=\"contained\"\n color=\"primary\"\n onClick={ ()=> { window.open('/api/v1/sandbox#territories','sandbox') } }\n startIcon={ <PlayCircleOutlineIcon /> }> Sandbox </Button>\n </Tooltip>\n <Tooltip title={ <FormattedMessage id=\"api.fields.run_postman\" /> }>\n <Button\n variant=\"contained\"\n color=\"primary\"\n onClick={ ()=> { window.open('https://www.postman.com/mabiomas-alerta-api/workspace/api-mapbiomas-alerta-client-compartilhado/request/18466584-cad0df57-23a0-40a8-b2ec-d0c0621d11a7','postman') } }\n startIcon={ <PlayCircleOutlineIcon /> }> Postman </Button>\n </Tooltip>\n </ButtonGroup>\n </Grid>\n </Grid>\n <Grid item sm={ 12 }>\n <Typography variant='primary'>\n <FormattedMessage id=\"api.documentation.territories.definition_2\" />\n </Typography>\n </Grid>\n <Grid item sm={ 12 }>\n <Typography variant='primary'>\n <FormattedMessage id=\"api.documentation.territories.definition_3\" /> <a href='#' onClick={ ()=>{ setValue(1) } }><FormattedMessage id=\"api.documentation.published_alerts.title\" /></a>.\n </Typography>\n </Grid>\n </Grid>\n </TabPanel>\n <TabPanel value={ value } index={ 7 }>\n <Grid container spacing={ 3 } justifyContent=\"flex-end\" alignItems=\"center\">\n <Grid item sm={ 12 }>\n <Typography variant='primary'>\n <FormattedMessage id=\"api.documentation.my_maps.definition_1\" /> { code_graphql('query myMaps()') } <FormattedMessage id=\"api.documentation.my_maps.definition_1_1\" />\n </Typography>\n </Grid>\n <Grid item sm={ 12 }>\n { block_graphql_code(queryMyMaps,true) }\n </Grid>\n <Grid item sm={ 12 }>\n <Grid container justifyContent='flex-end'>\n <ButtonGroup color=\"primary\" aria-label=\"outlined primary button group\">\n <Tooltip title={ <FormattedMessage id=\"api.fields.run_sandbox\" /> }>\n <Button\n variant=\"contained\"\n color=\"primary\"\n onClick={ ()=> { window.open('/api/v1/sandbox#my_maps','sandbox') } }\n startIcon={ <PlayCircleOutlineIcon /> }> Sandbox </Button>\n </Tooltip>\n <Tooltip title={ <FormattedMessage id=\"api.fields.run_postman\" /> }>\n <Button\n variant=\"contained\"\n color=\"primary\"\n onClick={ ()=> { window.open('https://www.postman.com/mabiomas-alerta-api/workspace/api-mapbiomas-alerta-client-compartilhado/request/18466584-abf549de-ac90-4eb8-ae3a-effe9efe3449','postman') } }\n startIcon={ <PlayCircleOutlineIcon /> }> Postman </Button>\n </Tooltip>\n </ButtonGroup>\n </Grid>\n </Grid>\n <Grid item sm={ 12 }>\n <Typography variant='primary'>\n <FormattedMessage id=\"api.documentation.my_maps.definition_3\" />\n </Typography>\n </Grid>\n <Grid item sm={ 12 }>\n <Typography variant='primary'>\n <FormattedMessage id=\"api.documentation.my_maps.definition_2\" /> <a href='#' onClick={ ()=>{ setValue(1) } }><FormattedMessage id=\"api.documentation.published_alerts.title\" /></a>.\n </Typography>\n </Grid>\n </Grid>\n </TabPanel>\n </div>\n <Grid item xs={ 12 }>\n <Typography>\n <Alert severity=\"error\"><b>Atenção!</b> Esta versão continuará ativa até 30/11/2023 e a partir desta data será removida do catálogo de serviços disponÃveis aos parceiros, por favor visite a documentação da API V2. <br/> <b><a href={`${getEnvVar('api_url')}/api/v2`}>Acessar documentação</a>.</b> </Alert>\n </Typography>\n </Grid>\n </Grid>\n )\n}\n","import React, {useEffect, useState} from 'react';\nimport Grid from '@material-ui/core/Grid';\nimport {\n queryActionsByAlertGraphQL,\n queryAlertReportGraphQL,\n queryAlertsFromCarGraphQL,\n queryMutationSignInGraphQL,\n queryMyMapsGraphQL,\n queryPublishedAlertGraphQL,\n queryPublishedAlertsGraphQL,\n queryTerritoriesGraphQL,\n variablesActionsByAlertGraphQL,\n variablesAlertReportGraphQL,\n variablesAlertsFromCarGraphQL,\n variablesMutationSignInGraphQL,\n variablesMyMapsGraphQL,\n variablesPublishedAlertGraphQL,\n variablesPublishedAlertsGraphQL,\n variablesTerritoriesGraphQL\n} from '../queries';\n\nimport { createGraphiQLFetcher } from '@graphiql/toolkit';\nimport { GraphiQL } from 'graphiql';\nimport {FormattedMessage} from 'react-intl';\nimport styles from './../APIPage.module.scss';\nimport {makeStyles} from '@material-ui/core/styles';\n\nimport 'graphiql/graphiql.css';\nimport { getEnvVar } from '../../../helpers/tenant';\n\nconst useStyles = makeStyles((theme) => ({\n appBar: {\n position: 'relative',\n },\n toolbar: {\n backgroundColor: '##f5f5f5'\n },\n graphiqlGrid: {\n textAlign: 'right'\n },\n title: {\n marginLeft: theme.spacing(2),\n flex: 1,\n color: '#7a7a7a'\n },\n}));\n\nexport default function APISandboxView(){\n\n const fetcher = createGraphiQLFetcher({\n url: `${getEnvVar('api_url')}/api/v1/graphql`,\n headers: { Authorization: `Bearer ${localStorage.tokenAPI}` },\n });\n\n const [queryGraphl, setQueryGraphl] = useState(queryPublishedAlertsGraphQL)\n const [variablesGraphl, setVariablesGraphl] = useState(variablesPublishedAlertsGraphQL);\n\n const param_url = ['sign_in','published_alerts','published_alert','report','alerts_from_car','actions_from_alert','territories','my_maps']\n const queries_graphql = [queryMutationSignInGraphQL,queryPublishedAlertsGraphQL,queryPublishedAlertGraphQL,queryAlertReportGraphQL,queryAlertsFromCarGraphQL,queryActionsByAlertGraphQL,queryTerritoriesGraphQL,queryMyMapsGraphQL]\n const variables_graphql = [variablesMutationSignInGraphQL,variablesPublishedAlertsGraphQL,variablesPublishedAlertGraphQL,variablesAlertReportGraphQL,variablesAlertsFromCarGraphQL,variablesActionsByAlertGraphQL,variablesTerritoriesGraphQL,variablesMyMapsGraphQL]\n\n useEffect(()=>{\n if(document.location.hash){\n if(param_url.indexOf(document.location.hash.replace('#','')) >= 0){\n\n const index = param_url.indexOf(document.location.hash.replace('#',''))\n\n setQueryGraphl(queries_graphql[index])\n setVariablesGraphl(variables_graphql[index])\n\n }\n }\n },[document.location.hash])\n\n const classes = useStyles();\n const [open, setOpen] = useState(false);\n\n const handleClickOpen = () => {\n setOpen(true);\n };\n\n const handleClose = () => {\n setOpen(false);\n };\n\n return (\n <Grid container>\n <Grid item xs={ 12 }>\n <h1 className={ styles.title }><FormattedMessage id=\"api.title.graphiql\" /></h1>\n </Grid>\n <Grid item xs={ 12 } className={ styles.containerAPI }>\n <GraphiQL fetcher={ fetcher } editorTheme={'dracula'} query={ queryGraphl } variables={ variablesGraphl } />\n </Grid>\n </Grid>\n );\n}","import React, {useEffect, useState} from 'react';\nimport Grid from '@material-ui/core/Grid';\nimport {\n queryActionsByAlertGraphQL,\n queryAlertReportGraphQL,\n queryAlertsFromCarGraphQL,\n queryMutationSignInGraphQL,\n queryMyMapsGraphQL,\n queryPublishedAlertGraphQL,\n queryPublishedAlertsGraphQL,\n queryTerritoriesGraphQL,\n variablesActionsByAlertGraphQL,\n variablesAlertReportGraphQL,\n variablesAlertsFromCarGraphQL,\n variablesMutationSignInGraphQL,\n variablesMyMapsGraphQL,\n variablesPublishedAlertGraphQL,\n variablesPublishedAlertsGraphQL,\n variablesTerritoriesGraphQL\n} from '../queries';\n\nimport styles from './../APIPage.module.scss';\nimport {AppBar, Button, Dialog, DialogContent, IconButton, Slide, Typography} from '@material-ui/core';\nimport Toolbar from '@material-ui/core/Toolbar';\nimport CloseIcon from '@material-ui/icons/Close';\nimport {makeStyles} from '@material-ui/core/styles';\nimport FullscreenIcon from '@material-ui/icons/Fullscreen';\nimport {FormattedMessage} from 'react-intl';\nimport { GraphiQL } from 'graphiql';\n\nimport 'graphiql/graphiql.css';\nimport { createGraphiQLFetcher } from '@graphiql/toolkit';\nimport { getEnvVar } from '../../../helpers/tenant';\n\nconst useStyles = makeStyles((theme) => ({\n appBar: {\n position: 'relative',\n },\n toolbar: {\n backgroundColor: '##f5f5f5'\n },\n graphiqlGrid: {\n textAlign: 'right'\n },\n title: {\n marginLeft: theme.spacing(2),\n flex: 1,\n color: '#7a7a7a'\n },\n}));\n\nconst Transition = React.forwardRef(function Transition(props, ref) {\n return <Slide direction=\"up\" ref={ ref } { ...props } />;\n});\n\nexport default function APISandboxView(){\n \n const fetcher = createGraphiQLFetcher({\n url: `${getEnvVar('api_url')}/api/v1/graphql`,\n headers: { Authorization: `Bearer ${localStorage.tokenAPI}` },\n });\n\n const [queryGraphl, setQueryGraphl] = useState(queryPublishedAlertsGraphQL)\n const [variablesGraphl, setVariablesGraphl] = useState(variablesPublishedAlertsGraphQL)\n\n const graphqiql_interface = () => {\n return (\n <GraphiQL fetcher={ fetcher } editorTheme={'dracula'} query={ queryGraphl } variables={ variablesGraphl } />\n )\n }\n\n const param_url = ['sign_in','published_alerts','published_alert','report','alerts_from_car','actions_from_alert','territories','my_maps']\n const queries_graphql = [queryMutationSignInGraphQL,queryPublishedAlertsGraphQL,queryPublishedAlertGraphQL,queryAlertReportGraphQL,queryAlertsFromCarGraphQL,queryActionsByAlertGraphQL,queryTerritoriesGraphQL,queryMyMapsGraphQL]\n const variables_graphql = [variablesMutationSignInGraphQL,variablesPublishedAlertsGraphQL,variablesPublishedAlertGraphQL,variablesAlertReportGraphQL,variablesAlertsFromCarGraphQL,variablesActionsByAlertGraphQL,variablesTerritoriesGraphQL,variablesMyMapsGraphQL]\n\n useEffect(()=>{\n if(document.location.hash){\n if(param_url.indexOf(document.location.hash.replace('#','')) >= 0){\n\n const index = param_url.indexOf(document.location.hash.replace('#',''))\n\n setQueryGraphl(queries_graphql[index])\n setVariablesGraphl(variables_graphql[index])\n\n }\n }\n },[document.location.hash])\n\n const classes = useStyles();\n const [open, setOpen] = React.useState(false);\n\n const handleClickOpen = () => {\n setOpen(true);\n };\n\n const handleClose = () => {\n setOpen(false);\n };\n\n return (\n <div>\n <div className={ styles.content }>\n <Grid container alignItems=\"center\" spacing={ 3 }>\n <Grid item xs={ 12 }>\n <h1 className={ styles.title }><FormattedMessage id=\"api.title.sandbox\" /></h1>\n </Grid>\n <Grid item sm={ 12 }>\n <Typography variant='body1'>\n <FormattedMessage id=\"api.sandbox.definition_1\" /> <FormattedMessage id=\"api.sandbox.definition_2\" />\n </Typography>\n </Grid>\n <Grid item sm={ 12 }>\n <div className={ styles.containerAPI }>\n { !open && graphqiql_interface() }\n </div>\n </Grid>\n <Grid item sm={ 12 } className={ styles.buttonFullScreen }>\n <Button\n variant=\"contained\"\n color='secondary'\n onClick={ ()=> { setOpen(true) } }\n aria-label=\"full\"\n size='small'\n startIcon={ <FullscreenIcon /> }\n >\n <FormattedMessage id=\"api.sandbox.full_screen\" />\n </Button>\n </Grid>\n <Grid item sm={ 12 }>\n <Typography variant='body1'>\n <FormattedMessage id=\"api.sandbox.definition_3\" /> <a href='/api/v1/documentation'><FormattedMessage id=\"api.sandbox.documentation_simplified\" /></a> <FormattedMessage id=\"api.sandbox.definition_3_1\" /> <a href='https://graphql.org' target='_blank'>GraphQL.org</a> <FormattedMessage id=\"api.sandbox.definition_3_2\" />\n </Typography>\n </Grid>\n </Grid>\n <Grid item sm={ 12 }>\n <Typography variant=\"body2\" component=\"p\" className={ styles.support }>\n <FormattedMessage id=\"api.default.definition_4\" /> <a href=\"mailto:suporte.alerta@mapbiomas.org\">suporte.alerta@mapbiomas.org</a>.\n </Typography>\n </Grid>\n </div>\n <Dialog fullScreen open={ open } onClose={ handleClose } TransitionComponent={ Transition }>\n <AppBar className={ classes.appBar }>\n <Toolbar className={ classes.toolbar }>\n <IconButton edge=\"start\" onClick={ handleClose } aria-label=\"close\">\n <CloseIcon />\n </IconButton>\n <Typography variant=\"h6\" className={ classes.title }>\n Graph<i>i</i>QL\n </Typography>\n </Toolbar>\n </AppBar>\n <DialogContent classes={{paddingTop: '30px'}}>\n { open && graphqiql_interface() }\n </DialogContent>\n </Dialog>\n </div>\n )\n}","import React, {useEffect, useState} from 'react';\nimport Grid from '@material-ui/core/Grid';\nimport styles from './../APIPage.module.scss';\nimport {AppBar, Button, Dialog, DialogContent, IconButton, Slide, Typography} from '@material-ui/core';\nimport Toolbar from '@material-ui/core/Toolbar';\nimport CloseIcon from '@material-ui/icons/Close';\nimport {makeStyles} from '@material-ui/core/styles';\nimport FullscreenIcon from '@material-ui/icons/Fullscreen';\nimport {FormattedMessage} from 'react-intl';\nimport { GraphiQL } from 'graphiql';\n\nimport 'graphiql/graphiql.css';\nimport { createGraphiQLFetcher } from '@graphiql/toolkit';\nimport { getEnvVar } from '../../../helpers/tenant';\n\nconst useStyles = makeStyles((theme) => ({\n appBar: {\n position: 'relative',\n },\n toolbar: {\n backgroundColor: '##f5f5f5'\n },\n graphiqlGrid: {\n textAlign: 'right'\n },\n title: {\n marginLeft: theme.spacing(2),\n flex: 1,\n color: '#7a7a7a'\n },\n}));\n\nconst Transition = React.forwardRef(function Transition(props, ref) {\n return <Slide direction=\"up\" ref={ ref } { ...props } />;\n});\n\nexport default function APISandboxView(){\n \n const fetcher = createGraphiQLFetcher({\n url: `${getEnvVar('api_url')}/api/v2/graphql`,\n headers: { Authorization: `Bearer ${localStorage.tokenAPI}` },\n });\n\n const graphqiql_interface = () => {\n return (\n <GraphiQL fetcher={ fetcher } editorTheme={'dracula'} />\n )\n }\n\n useEffect(()=>{\n if(document.location.hash){\n if(param_url.indexOf(document.location.hash.replace('#','')) >= 0){\n\n const index = param_url.indexOf(document.location.hash.replace('#',''))\n\n setQueryGraphl(queries_graphql[index])\n setVariablesGraphl(variables_graphql[index])\n\n }\n }\n },[document.location.hash])\n\n const classes = useStyles();\n const [open, setOpen] = React.useState(false);\n\n const handleClickOpen = () => {\n setOpen(true);\n };\n\n const handleClose = () => {\n setOpen(false);\n };\n\n return (\n <div>\n <div className={ styles.content }>\n <Grid container alignItems=\"center\" spacing={ 3 }>\n <Grid item xs={ 12 }>\n <h1 className={ styles.title }><FormattedMessage id=\"api.v2.title.sandbox\" /></h1>\n </Grid>\n <Grid item sm={ 12 }>\n <Typography variant='body1'>\n <FormattedMessage id=\"api.v2.sandbox.definition_1\" /> <FormattedMessage id=\"api.v2.sandbox.definition_2\" />\n </Typography>\n </Grid>\n <Grid item sm={ 12 }>\n <div className={ styles.containerAPI }>\n { !open && graphqiql_interface() }\n </div>\n </Grid>\n <Grid item sm={ 12 } className={ styles.buttonFullScreen }>\n <Button\n variant=\"contained\"\n color='secondary'\n onClick={ ()=> { setOpen(true) } }\n aria-label=\"full\"\n size='small'\n startIcon={ <FullscreenIcon /> }\n >\n <FormattedMessage id=\"api.v2.sandbox.full_screen\" />\n </Button>\n </Grid>\n <Grid item sm={ 12 }>\n <Typography variant='body1'>\n <FormattedMessage id=\"api.v2.sandbox.definition_3\" /> <a href='/api/v2'><FormattedMessage id=\"api.v2.sandbox.documentation_simplified\" /></a> <FormattedMessage id=\"api.v2.sandbox.definition_3_1\" /> <a href='https://graphql.org' target='_blank'>GraphQL.org</a> <FormattedMessage id=\"api.v2.sandbox.definition_3_2\" />\n </Typography>\n </Grid>\n </Grid>\n <Grid item sm={ 12 }>\n <Typography variant=\"body2\" component=\"p\" className={ styles.support }>\n <FormattedMessage id=\"api.v2.default.definition_4\" /> <a href=\"mailto:suporte.alerta@mapbiomas.org\">suporte.alerta@mapbiomas.org</a>.\n </Typography>\n </Grid>\n </div>\n <Dialog fullScreen open={ open } onClose={ handleClose } TransitionComponent={ Transition }>\n <AppBar className={ classes.appBar }>\n <Toolbar className={ classes.toolbar }>\n <IconButton edge=\"start\" onClick={ handleClose } aria-label=\"close\">\n <CloseIcon />\n </IconButton>\n <Typography variant=\"h6\" className={ classes.title }>\n Graph<i>i</i>QL\n </Typography>\n </Toolbar>\n </AppBar>\n <DialogContent classes={{paddingTop: '30px'}}>\n { open && graphqiql_interface() }\n </DialogContent>\n </Dialog>\n </div>\n )\n}","import React, { useEffect } from 'react';\nimport { Route, Switch } from 'react-router-dom';\n\nimport { PublicBasePage } from '../../components/Layouts/PublicBasePage';\nimport { getEnvVar } from '../../helpers/tenant';\nimport toast from '../../helpers/toast';\nimport useFormatMessage from '../../hooks/useFormatMessage';\nimport styles from './APIPage.module.scss';\nimport APIDefaultView from './tabs/APIDefaultView';\nimport APIDocumentationView from './tabs/APIDocumentationView';\nimport APIGraphiQLView from './tabs/APIGraphiQLView';\nimport APISandboxView from './tabs/APISandboxView';\nimport APIV2SandboxView from './tabs/APIV2SandboxView';\n\nexport default function APIPage() {\n const formatMessage = useFormatMessage();\n\n useEffect(() => {\n if (localStorage.tokenAPI !== 'null' && localStorage.tokenAPI != null && localStorage.tokenAPI !== '') {\n } else {\n toast(formatMessage('login_page.api_login'), 'warning');\n }\n }, []);\n\n const redirectToAPiV2 = () => {\n if (window.location.pathname === '/api') {\n location.href = `${getEnvVar('api_url')}/api/v2`;\n }\n };\n\n return (\n <PublicBasePage simple>\n <div className={styles.container}>\n <Switch>\n <Route exact path='/api/v1'>\n <APIDefaultView />\n </Route>\n <Route exact path='/api'>\n {redirectToAPiV2()}\n </Route>\n <Route exact path='/api/v1/documentation'>\n <APIDocumentationView />\n </Route>\n <Route exact path='/api/v1/sandbox'>\n <APISandboxView />\n </Route>\n <Route exact path='/api/v1/graphiql'>\n <APIGraphiQLView />\n </Route>\n <Route exact path='/api/v2/sandbox'>\n <APIV2SandboxView />\n </Route>\n </Switch>\n </div>\n </PublicBasePage>\n );\n}\n","export { default } from './APIPage';\n","import { useIntl } from 'react-intl';\n\nexport default function useFormatMessage() {\n const { formatMessage } = useIntl();\n const format = (id: string) => formatMessage({ id });\n\n return format;\n}\n","import client from '../core/apollo-client-v2/apollo-client';\n\nexport default function toast(content: string, severity = 'success') {\n client.writeData({\n data: {\n toast: {\n __typename: 'ToastState',\n content,\n severity,\n visible: true\n }\n }\n });\n}\n","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\n\nimport Link from '@material-ui/core/Link';\n\nimport styles from './Footer.module.scss';\n\nexport function Footer() {\n return (\n <footer className={styles.wrapper}>\n <small className={styles.copyText}>\n © Copyright · MapBiomas Alerta · <FormattedMessage id='footer.copyright' />\n </small>\n <small className={styles.alertText}>\n <span>\n <FormattedMessage id='footer.version' /> {process.env.REACT_APP_GIT_TAG} · \n <Link href='/terms'>\n <FormattedMessage id='pages.terms_and_privacity' />\n </Link>\n </span>\n </small>\n </footer>\n );\n}\n","import React, { Fragment, useEffect, useState } from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport { NavLink, withRouter } from 'react-router-dom';\n\nimport { useApolloClient, useMutation, useQuery } from '@apollo/react-hooks';\nimport classnames from 'classnames';\nimport _ from 'lodash';\nimport moment from 'moment';\nimport qs from 'qs';\n\nimport {\n Button,\n DialogActions,\n DialogContent,\n DialogContentText,\n DialogTitle,\n IconButton,\n Menu,\n MenuItem,\n Typography,\n} from '@material-ui/core';\nimport Dialog from '@material-ui/core/Dialog';\nimport Divider from '@material-ui/core/Divider';\nimport Grid from '@material-ui/core/Grid';\nimport Tooltip from '@material-ui/core/Tooltip';\nimport useMediaQuery from '@material-ui/core/useMediaQuery';\nimport AppsRoundedIcon from '@material-ui/icons/AppsRounded';\nimport ExitToAppIcon from '@material-ui/icons/ExitToApp';\nimport ExpandLessIcon from '@material-ui/icons/ExpandLess';\nimport ExpandMoreIcon from '@material-ui/icons/ExpandMore';\nimport InputIcon from '@material-ui/icons/Input';\nimport LiveHelpIcon from '@material-ui/icons/LiveHelp';\nimport MenuIcon from '@material-ui/icons/Menu';\nimport PersonIcon from '@material-ui/icons/Person';\nimport PriorityHighIcon from '@material-ui/icons/PriorityHigh';\nimport TranslateIcon from '@material-ui/icons/Translate';\n\nimport resetToken from '../../../core/apollo-client-v2/helpers/resetToken';\nimport { isModule } from '../../../helpers/locale';\nimport useFormatMessage from '../../../hooks/useFormatMessage';\nimport { GET_ACTIVE_ALERT_VISIBLE_AND_BATCH_EXPORT_REPORTS } from '../../../models/InMemoryCache/localFields';\nimport { LAST_ALERT_PUBLICATION } from '../../../models/Publications/operations';\nimport { SIGN_OUT } from '../../../models/User/operations';\nimport { IHeaderProps, IInitiative } from './Header.interfaces';\n// @ts-ignore\nimport styles from './Header.module.scss';\n// @ts-ignore\nimport logo from './logo.png';\n\nfunction Header({ location, simple = false }: IHeaderProps) {\n const formatMessage = useFormatMessage();\n const client = useApolloClient();\n const token = localStorage?.getItem('token') || '';\n const profile = localStorage?.getItem('profile') || '';\n const pathname = _.get(location, 'pathname');\n const search = _.get(location, 'search');\n let filteredLocationSearch = '';\n const isOnLandingPage =\n _.includes(pathname, '/mapa') ||\n _.includes(pathname, '/lista') ||\n _.includes(pathname, '/estatisticas') ||\n _.includes(pathname, '/laudos-e-acoes');\n const isMobile = useMediaQuery('(max-width: 640px)');\n\n // const [menuIsVisible, setMenuIsVisible] = useState(false);\n\n const { data: baseData } = useQuery(GET_ACTIVE_ALERT_VISIBLE_AND_BATCH_EXPORT_REPORTS);\n const menuIsVisible = _.get(baseData, 'app.mobileMenuIsVisible');\n const filtersVisibility = _.get(baseData, 'app.filtersAreVisible');\n const [noteRADOpen, setNoteRADOpen] = useState(true);\n\n if (search) {\n const queryString = search.replace('?', '');\n let queryObject = qs.parse(queryString);\n queryObject = _.omit(queryObject, ['locationType', 'locationText']);\n\n filteredLocationSearch = qs.stringify(queryObject, { encodeValuesOnly: true });\n }\n\n const handleRADNoteDialogClose = () => {\n setNoteRADOpen(false);\n };\n\n const [pathSignIn, setPathSignIn] = useState(\n window.location.pathname && window.location.pathname !== '/sign-in' && window.location.pathname !== '/confirmacao'\n ? `/sign-in?callback_url=${window.location.pathname}`\n : '/sign-in'\n );\n\n // const [checkExports, {\n // data: checkExportsData,\n // loading: loadingCheckExportsData,\n // }] = useLazyQuery(CHECK_EXPORTS_STATUS, {\n // fetchPolicy: 'cache-and-network',\n // variables: {\n // limit: 50,\n // offset: 0\n // },\n // skip: !isOnLandingPage\n // });\n\n const mapbiomas_iniciatives: IInitiative[] = [\n {\n name: 'MapBiomas Brasil',\n url: 'https://brasil.mapbiomas.org/',\n image: 'https://brasil.mapbiomas.org/wp-content/themes/mapbiomas/assets/images/sites/mapbiomas-brasil.png',\n },\n {\n name: 'MapBiomas Alerta',\n url: 'https://alerta.mapbiomas.org/',\n image: 'https://brasil.mapbiomas.org/wp-content/themes/mapbiomas/assets/images/sites/mapbiomas-alerta.png',\n },\n {\n name: 'MapBiomas Indonésia',\n url: 'https://mapbiomas.nusantara.earth/',\n image: 'https://brasil.mapbiomas.org/wp-content/themes/mapbiomas/assets/images/sites/mapbiomas-indonesia.png',\n },\n {\n name: 'MapBiomas Amazônia',\n url: 'https://amazonia.mapbiomas.org/',\n image: 'https://brasil.mapbiomas.org/wp-content/themes/mapbiomas/assets/images/sites/mapbiomas-amazonia.png',\n },\n {\n name: 'MapBiomas Peru',\n url: 'https://peru.mapbiomas.org/',\n image: 'https://brasil.mapbiomas.org/wp-content/themes/mapbiomas/assets/images/sites/mapbiomas-peru.png',\n },\n {\n name: 'MapBiomas Chaco',\n url: 'https://chaco.mapbiomas.org/',\n image: 'https://brasil.mapbiomas.org/wp-content/themes/mapbiomas/assets/images/sites/mapbiomas-chaco.png',\n },\n {\n name: 'MapBiomas Bolivia',\n url: 'https://bolivia.mapbiomas.org/',\n image: 'https://brasil.mapbiomas.org/wp-content/themes/mapbiomas/assets/images/sites/mapbiomas-bolivia.png',\n },\n {\n name: 'MapBiomas Bosqueatlantico',\n url: 'https://bosqueatlantico.mapbiomas.org/',\n image:\n 'https://brasil.mapbiomas.org/wp-content/themes/mapbiomas/assets/images/sites/mapbiomas-bosque-atlantico.png',\n },\n {\n name: 'MapBiomas Colombia',\n url: 'https://colombia.mapbiomas.org/',\n image: 'https://brasil.mapbiomas.org/wp-content/themes/mapbiomas/assets/images/sites/mapbiomas-colombia.png',\n },\n {\n name: 'MapBiomas Pampa',\n url: 'https://pampa.mapbiomas.org/',\n image: 'https://brasil.mapbiomas.org/wp-content/themes/mapbiomas/assets/images/sites/mapbiomas-pampa.png',\n },\n {\n name: 'MapBiomas Venezuela',\n url: 'https://venezuela.mapbiomas.org/',\n image: 'https://brasil.mapbiomas.org/wp-content/themes/mapbiomas/assets/images/sites/mapbiomas-venezuela.png',\n },\n {\n name: 'MapBiomas Ãrida',\n url: 'https://arido.mapbiomas.org/',\n image: 'https://brasil.mapbiomas.org/wp-content/themes/mapbiomas/assets/images/sites/mapbiomas-arida.png',\n },\n {\n name: 'MapBiomas Uruguay',\n url: 'https://uruguay.mapbiomas.org/',\n image: 'https://brasil.mapbiomas.org/wp-content/themes/mapbiomas/assets/images/sites/mapbiomas-uruguay.png',\n },\n {\n name: 'MapBiomas Fogo',\n url: 'https://plataforma.brasil.mapbiomas.org/fogo',\n image: 'https://brasil.mapbiomas.org/wp-content/themes/mapbiomas/assets/images/sites/mapbiomas-fogo.png',\n },\n {\n name: 'MapBiomas Ecuador',\n url: 'https://ecuador.mapbiomas.org/',\n image: 'https://brasil.mapbiomas.org/wp-content/themes/mapbiomas/assets/images/sites/mapbiomas-ecuador.png',\n },\n {\n name: 'MapBiomas Solo',\n url: 'https://plataforma.brasil.mapbiomas.org/solo',\n image: 'https://brasil.mapbiomas.org/wp-content/themes/mapbiomas/assets/images/sites/mapbiomas-solo.png',\n },\n {\n name: 'MapBiomas Paraguay',\n url: 'https://paraguay.mapbiomas.org/',\n image: 'https://brasil.mapbiomas.org/wp-content/themes/mapbiomas/assets/images/sites/mapbiomas-paraguay.png',\n },\n {\n name: '',\n url: '',\n },\n ];\n\n const { data: lastPublicationData, loading: loadingLastPublicationData } = useQuery(LAST_ALERT_PUBLICATION, {\n skip: !isOnLandingPage,\n });\n\n const [signOut] = useMutation(SIGN_OUT, {\n onCompleted: () => {\n window.location.href = '/';\n },\n onError: () => {\n window.location.href = '/';\n },\n });\n\n const updateClientAppState = (params: any) => {\n client.writeData({\n data: {\n app: {\n __typename: 'AppState',\n ...params,\n },\n },\n });\n };\n\n useEffect(() => {\n if (filtersVisibility && isMobile) {\n toggleFilters();\n }\n }, [isMobile]);\n\n const handleToggleMobileMenu = () => {\n updateClientAppState({ mobileMenuIsVisible: !menuIsVisible });\n };\n\n const handleCloseMobileMenu = () => {\n updateClientAppState({ mobileMenuIsVisible: false });\n };\n\n const handleOpenGuidedTour = () => {\n updateClientAppState({ openTourGuided: true });\n };\n\n const toggleFilters = () => {\n updateClientAppState({ filtersAreVisible: !filtersVisibility });\n };\n\n const handleExit = () => {\n resetToken();\n signOut({ variables: { sessionToken: token } });\n };\n\n const handleLocaleChange = (locale: string) => {\n localStorage?.setItem('locale', locale);\n window.location.reload();\n };\n\n const renderLastPublicationData = () => {\n if (loadingLastPublicationData && !lastPublicationData) {\n return null;\n }\n\n const lastPublication = _.get(lastPublicationData, 'lastAlertPublication');\n const { total, publishedAt } = lastPublication || {};\n\n if (total < 1) {\n return null;\n }\n\n return (\n <Tooltip title={formatMessage('alerts.published_at') + ' ' + moment(publishedAt).format('DD/MM/YYYY')}>\n <span>\n {total}{' '}\n {total > 1\n ? formatMessage('alerts_filters.panels.alerts.new_alerts')\n : formatMessage('alerts_filters.panels.alerts.new_alert')}\n </span>\n </Tooltip>\n );\n };\n\n // const renderHeaderLoading = () => {\n // // eslint-disable-next-line no-undef\n // if (loadingAggregationsData || !aggregationsData || isLoadingAlertData) {\n // //setTotalAlert(null)\n // return (\n // <div className={styles.loadingAggregationWrapper}>\n // <CircularProgress color=\"primary\" size={20} />\n // </div>\n // );\n // }\n // }\n\n const [anchorLocaleEl, setAnchorLocaleEl] = React.useState<HTMLButtonElement | null>(null);\n const [anchorLaucherEl, setAnchorLaucherEl] = React.useState<HTMLButtonElement | null>(null);\n\n const handleLaucherClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n setAnchorLaucherEl(event.currentTarget);\n };\n const handleLaucherClose = () => {\n setAnchorLaucherEl(null);\n };\n\n const handleLocaleClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n setAnchorLocaleEl(event.currentTarget);\n };\n const handleLocaleClose = () => {\n setAnchorLocaleEl(null);\n };\n\n const [anchorPerfilEl, setAnchorPerfilEl] = React.useState<HTMLButtonElement | null>(null);\n const handlePerfilClick = (event: React.MouseEvent<HTMLButtonElement>) => {\n setAnchorPerfilEl(event.currentTarget);\n };\n const handlePerfilClose = () => {\n setAnchorPerfilEl(null);\n };\n\n const [noteOpen, setNoteOpen] = useState(false);\n\n const isDocumentRecentlyRead = () => {\n const noticeRead = Number(localStorage?.getItem('noticeRead'));\n const thirtyDays = 2592000000;\n return noticeRead && Date.now() - noticeRead < thirtyDays;\n };\n\n useEffect(() => {\n if (!isDocumentRecentlyRead() && isOnLandingPage) {\n setNoteOpen(true);\n }\n }, []);\n\n const handleNoteDialogClose = (event: React.MouseEvent<any>, reason?: string) => {\n if (reason && reason == 'backdropClick') return;\n localStorage?.setItem('noticeRead', String(Date.now()));\n setNoteOpen(false);\n };\n\n return (\n <header\n className={classnames(styles.wrapper, {\n [styles.wrapperSimple]: simple,\n })}\n >\n <div className={styles.topContent}>\n <a href='http://alerta.mapbiomas.org/'>\n <img className={styles.logoImage} src={logo} id='logo-mapbiomas-alerta' alt='logo MapBiomas Alerta' />\n </a>\n <nav className={styles.actions}>\n {!isMobile && (\n <ul className={styles.navList}>\n <li>\n <NavLink\n className={classnames({\n [styles.navLinkActive]: _.includes(['/mapa', '/lista', '/estatisticas'], pathname),\n })}\n to={`/mapa${search}`}\n id='header-map'\n >\n <FormattedMessage id='menu.alerts' />\n </NavLink>\n </li>\n {isModule('brazil') && (\n <li>\n <NavLink activeClassName={styles.navLinkActive} id='inspection_monitor' to='/monitor-da-fiscalizacao'>\n <FormattedMessage id='menu.inspection_monitor' />\n </NavLink>\n </li>\n )}\n <li>\n <NavLink activeClassName={styles.navLinkActive} to='/downloads' id='header-downloads'>\n <FormattedMessage id='menu.downloads' />\n </NavLink>\n </li>\n {isModule('brazil') && (\n <li>\n <NavLink activeClassName={styles.navLinkActive} to='/plugins' id='header-plugins'>\n <FormattedMessage id='menu.plugins' />\n </NavLink>\n </li>\n )}\n <li>\n <NavLink activeClassName={styles.navLinkActive} to='/api' id='header-api'>\n <FormattedMessage id='menu.api' />\n </NavLink>\n </li>\n <li className={styles.navListItemSpacing}></li>\n <li className={styles.navListItemNotification}>\n <IconButton\n size='small'\n aria-label={formatMessage('alert_form.note_concern_read')}\n color='inherit'\n id='header-precaution'\n onClick={() => {\n setNoteOpen(true);\n }}\n >\n <Tooltip title={formatMessage('alert_form.note_concern_read')}>\n <PriorityHighIcon />\n </Tooltip>\n </IconButton>\n </li>\n <li className={styles.navListItemNotification}>\n <IconButton\n size='small'\n aria-label={formatMessage('tour_guided.title_tooltip')}\n color='inherit'\n id='header-tour_guided'\n onClick={handleOpenGuidedTour}\n >\n <Tooltip title={formatMessage('tour_guided.title_tooltip')}>\n <LiveHelpIcon />\n </Tooltip>\n </IconButton>\n </li>\n <li className={styles.navListItemTranslate}>\n <Tooltip\n title={\n localStorage?.getItem('locale') !== 'en' ? (\n <FormattedMessage id='locale.pt_br' />\n ) : (\n <FormattedMessage id='locale.en' />\n )\n }\n >\n <Button\n size='small'\n id='header-translate'\n startIcon={<TranslateIcon />}\n endIcon={!Boolean(anchorLocaleEl) ? <ExpandMoreIcon /> : <ExpandLessIcon />}\n onClick={handleLocaleClick}\n >\n {\n //localStorage?.getItem('locale') !== 'en' ? 'BR' : 'EN'\n }\n </Button>\n </Tooltip>\n <Menu\n id='simple-menu'\n anchorEl={anchorLocaleEl}\n getContentAnchorEl={null}\n anchorOrigin={{ vertical: 'bottom', horizontal: 'center' }}\n transformOrigin={{ vertical: 'top', horizontal: 'center' }}\n keepMounted\n open={Boolean(anchorLocaleEl)}\n onClose={handleLocaleClose}\n aria-controls='simple-menu'\n aria-haspopup='true'\n >\n <MenuItem\n selected={localStorage?.getItem('locale') === 'pt-BR'}\n onClick={handleLocaleChange.bind(this, 'pt-BR')}\n >\n <FormattedMessage id='locale.pt_br' />\n </MenuItem>\n <MenuItem\n selected={localStorage?.getItem('locale') === 'en'}\n onClick={handleLocaleChange.bind(this, 'en')}\n >\n <FormattedMessage id='locale.en' />\n </MenuItem>\n {isModule('indonesia') === true ||\n (localStorage?.getItem('beta') === 'true' && (\n <MenuItem\n selected={localStorage?.getItem('locale') === 'id'}\n onClick={handleLocaleChange.bind(this, 'id')}\n >\n <FormattedMessage id='locale.id' />\n </MenuItem>\n ))}\n </Menu>\n </li>\n <li className={styles.navListItemGrap}></li>\n {!token && (\n <li className={styles.navListItemLogin} id='header-sign-in'>\n <NavLink to={pathSignIn}>\n <InputIcon />\n <span>\n <FormattedMessage id='menu.sign_in' />\n </span>\n </NavLink>\n </li>\n )}\n\n {token && (\n <li className={styles.navListItemLogin}>\n <Tooltip title={`Email: ${localStorage?.getItem('email')}`}>\n <Button\n onClick={handlePerfilClick}\n startIcon={<PersonIcon />}\n endIcon={!anchorPerfilEl ? <ExpandMoreIcon /> : <ExpandLessIcon />}\n >\n {localStorage?.getItem('name')?.split(' ')[0]}\n </Button>\n </Tooltip>\n <Menu\n id='perfil-menu'\n anchorEl={anchorPerfilEl}\n getContentAnchorEl={null}\n anchorOrigin={{ vertical: 'bottom', horizontal: 'center' }}\n transformOrigin={{ vertical: 'top', horizontal: 'center' }}\n keepMounted\n open={Boolean(anchorPerfilEl)}\n onClose={handlePerfilClose}\n >\n <MenuItem\n onClick={() => {\n window.location.href = '/account';\n }}\n >\n <FormattedMessage id='profile_menu.profile' /> {localStorage?.getItem('beta') ? ' (Beta)' : ''}{' '}\n </MenuItem>\n <MenuItem\n className={styles.menuItemSubMenu}\n onClick={() => {\n window.location.href = '/account';\n }}\n >\n <FormattedMessage id='profile_menu.manager_account' />\n </MenuItem>\n <MenuItem\n className={styles.menuItemSubMenu}\n onClick={() => {\n window.location.href = '/account/my-maps';\n }}\n >\n <FormattedMessage id='profile_menu.my_maps' />\n </MenuItem>\n <MenuItem\n className={styles.menuItemSubMenu}\n onClick={() => {\n window.location.href = '/account/authenticated-reports';\n }}\n >\n <FormattedMessage id='profile_menu.my_authenticated_reports' />\n </MenuItem>\n <MenuItem\n className={styles.menuItemSubMenu}\n onClick={() => {\n window.location.href = '/account/support-cases';\n }}\n >\n <FormattedMessage id='administrator.tabs.support_cases' />\n </MenuItem>\n {['administrator', 'coordinator', 'institution_member', 'institution_manager'].includes(\n profile\n ) && (\n <MenuItem\n onClick={() => {\n window.location.href = '/institution';\n }}\n >\n <FormattedMessage id='profile_menu.institution' />\n </MenuItem>\n )}\n {profile && ['administrator', 'coordinator', 'institution_manager'].includes(profile) && (\n <Fragment>\n <MenuItem\n className={styles.menuItemSubMenu}\n onClick={() => {\n window.location.href = '/institution/customizable-report';\n }}\n >\n <FormattedMessage id='profile_menu.custom_report' />\n </MenuItem>\n </Fragment>\n )}\n {['administrator', 'coordinator'].includes(profile) && (\n <MenuItem\n className={styles.menuItemSubMenu}\n onClick={() => {\n window.location.href = '/institution/upload-actions';\n }}\n >\n <FormattedMessage id='profile_menu.upload_actions' />\n </MenuItem>\n )}\n {['institution_manager', 'institution_member', 'administrator', 'coordinator'].includes(\n profile\n ) && (\n <Fragment>\n <MenuItem\n className={styles.menuItemSubMenu}\n onClick={() => {\n window.location.href = '/institution/upload-batch/actions';\n }}\n >\n <FormattedMessage id='profile_menu.upload_actions_lote' />\n </MenuItem>\n <MenuItem\n className={styles.menuItemSubMenu}\n onClick={() => {\n window.location.href = '/institution/upload-batch/authorizations';\n }}\n >\n <FormattedMessage id='profile_menu.upload_authorizations_lote' />\n </MenuItem>\n </Fragment>\n )}\n {token && ['administrator', 'coordinator'].includes(profile) && (\n <Fragment>\n <MenuItem\n onClick={() => {\n window.location.href = '/administrator';\n }}\n >\n <FormattedMessage id='menu.admin' />\n </MenuItem>\n <MenuItem\n className={styles.menuItemSubMenu}\n onClick={() => {\n window.location.href = '/administrator/users';\n }}\n >\n <FormattedMessage id='administrator.tabs.users' />\n </MenuItem>\n <MenuItem\n className={styles.menuItemSubMenu}\n onClick={() => {\n window.location.href = '/administrator/institutions';\n }}\n >\n <FormattedMessage id='administrator.tabs.institutions' />\n </MenuItem>\n <MenuItem\n className={styles.menuItemSubMenu}\n onClick={() => {\n window.location.href = '/administrator/support-cases';\n }}\n >\n <FormattedMessage id='administrator.tabs.support_cases' />\n </MenuItem>\n <MenuItem\n className={styles.menuItemSubMenu}\n onClick={() => {\n window.location.href = '/administrator/upload-actions';\n }}\n >\n <FormattedMessage id='administrator.tabs.uploaded_actions' />\n </MenuItem>\n <MenuItem\n className={styles.menuItemSubMenu}\n onClick={() => {\n window.location.href = '/administrator/upload-batch/actions';\n }}\n >\n <FormattedMessage id='administrator.tabs.uploaded_actions_lote' />\n </MenuItem>\n <MenuItem\n className={styles.menuItemSubMenu}\n onClick={() => {\n window.location.href = '/administrator/upload-batch/authorizations';\n }}\n >\n <FormattedMessage id='administrator.tabs.uploaded_authorizations_lote' />\n </MenuItem>\n </Fragment>\n )}\n <Divider />\n <MenuItem onClick={handleExit}>\n <FormattedMessage id='menu.sign_out' />\n </MenuItem>\n </Menu>\n </li>\n )}\n {localStorage?.getItem('beta') && (\n <li className={styles.navListItemLaucher}>\n <Tooltip title='Iniciativas MapBiomas'>\n <Button\n size='small'\n id='header-laucher'\n startIcon={<AppsRoundedIcon />}\n onClick={handleLaucherClick}\n >\n {\n //localStorage?.getItem('locale') !== 'en' ? 'BR' : 'EN'\n }\n </Button>\n </Tooltip>\n <Menu\n id='laucher-menu'\n anchorEl={anchorLaucherEl}\n getContentAnchorEl={null}\n anchorOrigin={{ vertical: 'bottom', horizontal: 'center' }}\n transformOrigin={{ vertical: 'top', horizontal: 'center' }}\n keepMounted\n open={Boolean(anchorLaucherEl)}\n onClose={handleLaucherClose}\n aria-controls='laucher-menu'\n aria-haspopup='true'\n >\n <Grid container className={styles.navMenuLaucherMenu}>\n {mapbiomas_iniciatives.map((iniciative, index) => {\n return (\n <Grid item xs={6} key={index}>\n <Tooltip title={iniciative.name}>\n <a href={iniciative.url}>\n <img alt='' className={styles.navMenuLaucherItem} src={iniciative.image} />\n </a>\n </Tooltip>\n </Grid>\n );\n })}\n </Grid>\n </Menu>\n </li>\n )}\n </ul>\n )}\n {isMobile && (\n <button\n id='mobile-menu-button'\n className={classnames(styles.menuButton, {\n [styles.menuButtonActive]: menuIsVisible,\n })}\n onClick={handleToggleMobileMenu}\n >\n <MenuIcon />\n </button>\n )}\n </nav>\n </div>\n {isMobile && (\n <nav\n className={classnames(styles.mobileMenuNav, {\n [styles.mobileMenuNavIsVisible]: menuIsVisible,\n })}\n style={{ height: window.innerHeight - (50 + 30) }}\n >\n <ul className={styles.navListMobile}>\n <li>\n <NavLink\n className={classnames(styles.navListMobileLink, {\n [styles.navListMobileLinkActive]: _.includes(['/mapa', '/lista', '/estatisticas'], pathname),\n })}\n to={`/mapa${search}`}\n id='header-map'\n onClick={handleCloseMobileMenu}\n >\n <FormattedMessage id='menu.alerts' />\n </NavLink>\n </li>\n {isModule('brazil') && (\n <li>\n <NavLink\n className={styles.navListMobileLink}\n activeClassName={styles.navListMobileLinkActive}\n to='/monitor-da-fiscalizacao'\n id='inspection_monitor'\n onClick={handleCloseMobileMenu}\n >\n <FormattedMessage id='menu.inspection_monitor' />\n </NavLink>\n </li>\n )}\n <li>\n <NavLink\n className={styles.navListMobileLink}\n activeClassName={styles.navListMobileLinkActive}\n to='/downloads'\n id='header-downloads'\n onClick={handleCloseMobileMenu}\n >\n <FormattedMessage id='menu.downloads' />\n </NavLink>\n </li>\n {isModule('brazil') && (\n <li>\n <NavLink\n className={styles.navListMobileLink}\n activeClassName={styles.navListMobileLinkActive}\n to='/plugins'\n id='header-plugins'\n onClick={handleCloseMobileMenu}\n >\n <FormattedMessage id='menu.plugins' />\n </NavLink>\n </li>\n )}\n <li>\n <NavLink activeClassName={styles.navLinkActive} to='/api' id='header-api'>\n <FormattedMessage id='menu.api' />\n </NavLink>\n </li>\n <li\n className={styles.navListMobileIconItem}\n id='header-precaution'\n onClick={() => {\n setNoteOpen(true);\n }}\n >\n <PriorityHighIcon />\n <span>\n <FormattedMessage id='alert_form.note_concern' />\n </span>\n </li>\n <li id='header-tour_guided' className={styles.navListMobileIconItem} onClick={handleOpenGuidedTour}>\n <LiveHelpIcon />\n <span>\n <FormattedMessage id='tour_guided.title' />\n </span>\n </li>\n <li id='header-translate' className={styles.navListMobileIconItem}>\n <TranslateIcon />\n <a href='#' onClick={handleLocaleChange.bind(this, 'pt-BR')}>\n PT-BR\n </a>\n <span> | </span>\n <a href='#' onClick={handleLocaleChange.bind(this, 'en')}>\n EN\n </a>\n </li>\n {!token && (\n <li id='header-sign-in' className={styles.navListMobileItemLogin}>\n <NavLink onClick={handleCloseMobileMenu} to={pathSignIn}>\n <InputIcon />\n <span>\n <FormattedMessage id='menu.sign_in' />\n </span>\n </NavLink>\n </li>\n )}\n {token && (\n <li className={styles.navListMobileItemLogin}>\n <span\n className={styles.navListMobileItemUserInfo}\n onClick={() => {\n window.location.href = '/account';\n }}\n >\n <PersonIcon />\n <span>{localStorage?.getItem('name')}</span>\n </span>\n <button onClick={handleExit}>\n <ExitToAppIcon />\n <span>\n <FormattedMessage id='menu.sign_out' />\n </span>\n </button>\n </li>\n )}\n </ul>\n </nav>\n )}\n {/* {\n isOnLandingPage && <Filters\n history={ history }\n isMobile={ isMobile }\n isOnMapPage={ isOnLandingPage }\n isVisible={ filtersVisibility && !simple }\n location={ location }\n onToggle={ toggleFilters }\n />\n } */}\n <Dialog\n id='header-note-concern'\n scroll={'paper'}\n open={noteOpen}\n onClose={handleNoteDialogClose}\n aria-labelledby='confirmation-dialog-title'\n >\n <DialogTitle id='alert-dialog-title'>\n {' '}\n <FormattedMessage id='alert_form.note_concern' />{' '}\n </DialogTitle>\n <DialogContent dividers={true} style={{ textAlign: 'justify' }}>\n <DialogContentText>\n <Typography variant='body2'>\n <FormattedMessage id='alert_form.note_concern_body' />\n </Typography>\n </DialogContentText>\n <DialogContentText>\n <Typography variant='body2'>\n <FormattedMessage id='alert_form.note_concern_body_1' />\n </Typography>\n </DialogContentText>\n <DialogContentText>\n <Typography variant='body2'>\n <b>\n <FormattedMessage id='alert_form.note_concern_important' />\n </b>\n </Typography>\n <Typography variant='body2'>\n <b>\n <FormattedMessage id='alert_form.note_concern_important_explanation' />\n </b>\n </Typography>\n </DialogContentText>\n <DialogContentText>\n <FormattedMessage id='alert_form.note_concern_explanations' />\n </DialogContentText>\n <DialogContentText>\n <Typography variant='body2'>\n <ol style={{ listStyle: 'decimal' }}>\n <li style={{ listStyle: 'decimal', marginBottom: '10px', marginLeft: '12px' }}>\n <FormattedMessage id='alert_form.note_concern_explanations_1' />\n </li>\n <li style={{ listStyle: 'decimal', marginBottom: '10px', marginLeft: '12px' }}>\n <FormattedMessage id='alert_form.note_concern_explanations_2' />\n </li>\n <li style={{ listStyle: 'decimal', marginBottom: '10px', marginLeft: '12px' }}>\n <FormattedMessage id='alert_form.note_concern_explanations_3' />\n </li>\n <li style={{ listStyle: 'decimal', marginBottom: '10px', marginLeft: '12px' }}>\n <FormattedMessage id='alert_form.note_concern_explanations_4' />\n </li>\n <li style={{ listStyle: 'decimal', marginBottom: '10px', marginLeft: '12px' }}>\n <FormattedMessage id='alert_form.note_concern_explanations_5' />\n </li>\n <li style={{ listStyle: 'decimal', marginBottom: '10px', marginLeft: '12px' }}>\n <FormattedMessage id='alert_form.note_concern_explanations_6' />\n </li>\n <li style={{ listStyle: 'decimal', marginBottom: '10px', marginLeft: '12px' }}>\n <FormattedMessage id='alert_form.note_concern_explanations_7' />\n </li>\n <li style={{ listStyle: 'decimal', marginBottom: '10px', marginLeft: '12px' }}>\n <FormattedMessage id='alert_form.note_concern_explanations_8' />\n </li>\n <li style={{ listStyle: 'decimal', marginBottom: '10px', marginLeft: '12px' }}>\n <FormattedMessage id='alert_form.note_concern_explanations_9' />\n </li>\n <li style={{ listStyle: 'decimal', marginBottom: '10px', marginLeft: '12px' }}>\n <FormattedMessage id='alert_form.note_concern_explanations_10' />\n </li>\n <li style={{ listStyle: 'decimal', marginBottom: '10px', marginLeft: '12px' }}>\n <FormattedMessage id='alert_form.note_concern_explanations_11' />\n </li>\n </ol>\n </Typography>\n </DialogContentText>\n <DialogContentText>\n <Typography variant='body2'>\n <FormattedMessage id='alert_form.note_concern_explanations_footer' />\n </Typography>\n </DialogContentText>\n <DialogContentText style={{ textAlign: 'right' }}>\n <Typography variant='caption'>\n <FormattedMessage id='alert_form.note_concern_update_at' />\n </Typography>\n </DialogContentText>\n </DialogContent>\n <DialogActions>\n <Button onClick={handleNoteDialogClose} color='primary'>\n <FormattedMessage id='operations.agree' />\n </Button>\n </DialogActions>\n </Dialog>\n {location?.pathname === '/mapa' && isModule('brazil') && false && (\n <Dialog\n id='header-note-concern-rad'\n scroll={'paper'}\n open={noteRADOpen}\n onClose={handleRADNoteDialogClose}\n aria-labelledby='confirmation-dialog-title'\n >\n <DialogTitle id='alert-dialog-title'> Atenção! </DialogTitle>\n <DialogContent dividers={true}>\n <DialogContentText>\n <Typography variant='body2' style={{ textAlign: 'center' }}>\n Entre <b>27/05 e 16/06</b>, a plataforma do MapBiomas Alerta está passando por um processo de\n atualização que pode causar instabilidade. Pode haver diferenças em dados que contêm cruzamentos de\n territórios, particularmente naqueles cruzamentos referentes a imóveis rurais (CAR, SIGEF, RL, APP) e\n dados de autorizações e embargos.\n </Typography>\n </DialogContentText>\n <DialogContentText>\n <Typography></Typography>\n </DialogContentText>\n <DialogContentText>\n <Typography variant='body2' style={{ textAlign: 'center', marginTop: '24px', marginBottom: '12px' }}>\n <b>\n PARA ACESSAR A BASE DE DADOS COMPLETA DO RAD 2023, ACESSE{' '}\n <a style={{ color: '#c0392b' }} target='_blank' href='https://alerta.mapbiomas.org/relatorio/'>\n https://alerta.mapbiomas.org/relatorio\n </a>\n </b>\n </Typography>\n </DialogContentText>\n </DialogContent>\n <DialogActions>\n <Button onClick={handleRADNoteDialogClose} color='primary'>\n Entendi\n </Button>\n </DialogActions>\n </Dialog>\n )}\n </header>\n );\n}\n\nexport default withRouter(Header);\n","import React, { useEffect, useState } from 'react';\nimport { RouteComponentProps } from 'react-router-dom';\n\nimport { useLazyQuery } from '@apollo/react-hooks';\nimport classnames from 'classnames';\nimport _ from 'lodash';\n\nimport { routes_paths } from '@core/routes/Routes';\nimport useFormatMessage from '@hooks/useFormatMessage';\n\nimport { DEFAULT_LANGUAGE } from '@helpers/locale';\nimport toast from '@helpers/toast';\nimport { GET_CURRENT_USER_ID } from '@models/InMemoryCache/localFields';\n\nimport { Footer } from '../Footer';\nimport Header from '../Header';\nimport styles from './PublicBasePage.module.scss';\n\nconst HEADER_HEIGHT = 100;\nconst HEADER_SIMPLE_HEIGHT = 50;\nconst FOOTER_HEIGHT = 30;\n\nexport interface IPublicBasePageProps {\n children: React.ReactNode;\n simple?: boolean;\n match?: any;\n}\n\nexport function PublicBasePage({ children, simple = false, match = null }: IPublicBasePageProps) {\n const [checkUserTokenStatus, { data: userIdData }] = useLazyQuery(GET_CURRENT_USER_ID);\n\n const locale = localStorage.getItem('locale') || DEFAULT_LANGUAGE;\n const formatMessage = useFormatMessage();\n\n const headerHeight = simple ? HEADER_SIMPLE_HEIGHT : HEADER_HEIGHT;\n const [windowHeight, setWindowHeight] = useState(window.innerHeight);\n const [contentHeight, setContentHeight] = useState(window.innerHeight - (headerHeight + FOOTER_HEIGHT));\n\n useEffect(() => {\n // TODO\n // improve way to change title\n const pathname = routes_paths.find((x) => x.path === window.location.pathname);\n if (pathname) {\n document.title = 'Mapbiomas Alerta | ' + formatMessage(pathname ? pathname.title : '');\n } else if (window.location.pathname.indexOf('/alerta/') > -1) {\n if (match) {\n const { params } = match;\n const alertId = _.get(params, 'alertId');\n const carId = _.get(params, 'carId');\n if (carId) {\n document.title = 'Mapbiomas Alerta | ' + formatMessage('pages.report') + ` ${alertId} / ${carId}`;\n } else {\n document.title = 'Mapbiomas Alerta | ' + formatMessage('pages.report') + ` ${alertId}`;\n }\n } else {\n document.title = 'Mapbiomas Alerta | ' + formatMessage('pages.reports');\n }\n }\n\n if (localStorage.getItem('token') !== null) {\n checkUserTokenStatus();\n }\n }, []);\n\n useEffect(() => {\n window.addEventListener('resize', debouncedUpdateHeight);\n\n return () => {\n window.removeEventListener('resize', debouncedUpdateHeight);\n };\n }, []);\n\n useEffect(() => {\n if (userIdData) {\n const { currentUserId } = userIdData;\n if (!currentUserId) {\n toast(formatMessage('auth.session.expirated_token'));\n //window.location.href = '/sign-in?callback_url='+ window.location.pathname\n }\n }\n }, [userIdData]);\n\n function updateHeight() {\n setWindowHeight(window.innerHeight);\n setContentHeight(window.innerHeight - (headerHeight + FOOTER_HEIGHT));\n }\n\n const debouncedUpdateHeight = _.debounce(updateHeight, 500);\n\n return (\n <div\n className={classnames(styles.pageWrapper, {\n 'locale-en': locale === 'en',\n })}\n style={{ height: windowHeight }}\n >\n <Header simple={simple} />\n <div className={styles.contentWrapper} style={{ minHeight: contentHeight }}>\n {children}\n </div>\n <Footer />\n </div>\n );\n}\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"pageWrapper\":\"PublicBasePage_pageWrapper__OxzMp\",\"contentWrapper\":\"PublicBasePage_contentWrapper__14Xqk\"};","import {gql} from 'graphql.macro';\n\nexport const LAST_ALERT_PUBLICATION = gql`\n query lastAlertPublication{\n lastAlertPublication{\n total\n publishedAt\n publicationRange\n }\n }\n`;","// extracted by mini-css-extract-plugin\nmodule.exports = {\"wrapper\":\"Footer_wrapper__1HDMm\",\"copyText\":\"Footer_copyText__2CZho\",\"alertText\":\"Footer_alertText__2hOwn\",\"ecostageImage\":\"Footer_ecostageImage__3rUt5\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"primaryColor\":\"#595959\",\"secondaryColor\":\"#7a7a7a\",\"thirdColor\":\"#f39c12\",\"fourthColor\":\"#81A5BC\",\"fifthColor\":\"#c0392b\",\"sixthColor\":\"#92B692\",\"blackColor\":\"rgba(23,23,23,0.85)\",\"blackColorSecondary\":\"rgba(23,23,23,0.85)\",\"blackColorThird\":\"#b7b7b7\",\"blackDisabled\":\"rgba(54,54,54,0.73)\",\"blackHint\":\"rgba(54,54,54,0.38)\",\"grayColor\":\"#F8F9FB\",\"whiteColor\":\"#EAEAEA\",\"whiteTrueColor\":\"#fff\",\"errorColor\":\"#d32f2f\",\"successColor\":\"#598f36\",\"waitingColor\":\"#f39c12\",\"fontFamily\":\"\\\"Lato\\\",sans-serif\",\"wrapper\":\"Header_wrapper__2goSM\",\"wrapperSimple\":\"Header_wrapperSimple__30kn8\",\"topContent\":\"Header_topContent__2jlO5\",\"bottomContent\":\"Header_bottomContent__2KHlx\",\"bottomRightContent\":\"Header_bottomRightContent__CXxgm\",\"profileBox\":\"Header_profileBox__3_Iqr\",\"logoImage\":\"Header_logoImage__3QLKy\",\"actions\":\"Header_actions__3Tb92\",\"link\":\"Header_link__3nUY-\",\"activeLink\":\"Header_activeLink__E1u-L\",\"signInButton\":\"Header_signInButton__4HKIy\",\"signInButtonIcon\":\"Header_signInButtonIcon__1cz0Z\",\"signInButtonText\":\"Header_signInButtonText__3OLdn\",\"locationIcon\":\"Header_locationIcon__1mT_r\",\"autocompleteOptionTitle\":\"Header_autocompleteOptionTitle__E-W2N\",\"autocompleteOptionSubtitle\":\"Header_autocompleteOptionSubtitle__1014E\",\"infoList\":\"Header_infoList__1aA1S\",\"infoItem\":\"Header_infoItem__3hAkQ\",\"infoItemBadgeTotalTag\":\"Header_infoItemBadgeTotalTag__3feB3\",\"infoItemLabel\":\"Header_infoItemLabel__1f-rf\",\"infoItemValue\":\"Header_infoItemValue__ZtABx\",\"actionControls\":\"Header_actionControls__33hRf\",\"actionControlsWithPadding\":\"Header_actionControlsWithPadding__3if_Z\",\"actionButton\":\"Header_actionButton__1WbHg\",\"actionButtonIconBadge\":\"Header_actionButtonIconBadge__eJkrt\",\"actionButtonIconWrapper\":\"Header_actionButtonIconWrapper__Q_vHV\",\"spin\":\"Header_spin__1GBUE\",\"actionButtonLeft\":\"Header_actionButtonLeft__18lyu\",\"actionButtonActive\":\"Header_actionButtonActive__1RNG9\",\"actionButtonActiveLeft\":\"Header_actionButtonActiveLeft__2vj0-\",\"actionsSeparator\":\"Header_actionsSeparator__3a98M\",\"navList\":\"Header_navList__3qMH0\",\"navListItemSpacing\":\"Header_navListItemSpacing__32aP6\",\"navListItemTranslate\":\"Header_navListItemTranslate__2oG1I\",\"MuiButton-endIcon\":\"Header_MuiButton-endIcon__1VgNq\",\"navListItemLaucher\":\"Header_navListItemLaucher__1nRjv\",\"navListItemNotification\":\"Header_navListItemNotification__2YvlX\",\"navListItemLogin\":\"Header_navListItemLogin__19mwo\",\"MuiButton-startIcon\":\"Header_MuiButton-startIcon__7sfSc\",\"navLinkActive\":\"Header_navLinkActive__1aks0\",\"menuItemSubMenu\":\"Header_menuItemSubMenu__2Dwsy\",\"loadingAggregationWrapper\":\"Header_loadingAggregationWrapper__G9ejX\",\"navListItemUserInfo\":\"Header_navListItemUserInfo__23CbS\",\"navMenuLaucherMenu\":\"Header_navMenuLaucherMenu__1qOSf\",\"navMenuLaucherItem\":\"Header_navMenuLaucherItem__2cyW_\",\"navListItemUserInfoName\":\"Header_navListItemUserInfoName__alGWM\",\"menuButton\":\"Header_menuButton__1Pmq4\",\"menuButtonActive\":\"Header_menuButtonActive__2dJM1\",\"mobileMenuNav\":\"Header_mobileMenuNav__238JC\",\"mobileMenuNavIsVisible\":\"Header_mobileMenuNavIsVisible__1gIEn\",\"navListMobile\":\"Header_navListMobile__110p3\",\"navListMobileIconItem\":\"Header_navListMobileIconItem__2td_7\",\"navListMobileItemLogin\":\"Header_navListMobileItemLogin__DfEPH\",\"navListMobileItemUserInfo\":\"Header_navListMobileItemUserInfo__2AgGt\",\"navListMobileLink\":\"Header_navListMobileLink__ZzrK5\",\"navListMobileLinkActive\":\"Header_navListMobileLinkActive__k3jhf\",\"profileBoxLink\":\"Header_profileBoxLink__22a45\",\"exitButton\":\"Header_exitButton__2x7iy\",\"betaInfo\":\"Header_betaInfo__2taHJ\",\"actionButtonIconFile\":\"Header_actionButtonIconFile__1NJSY\",\"navListItemApi\":\"Header_navListItemApi__2wlTN\",\"navListItemGenerateReports\":\"Header_navListItemGenerateReports__3WZOz\"};","module.exports = __webpack_public_path__ + \"static/media/logo.a37c8166.png\";","// extracted by mini-css-extract-plugin\nmodule.exports = {\"container\":\"APIPage_container__1dQlf\",\"section\":\"APIPage_section__3z03k\",\"title\":\"APIPage_title__YQs4G\",\"titleSecondary\":\"APIPage_titleSecondary__2rZ0r\",\"item\":\"APIPage_item__2nped\",\"content\":\"APIPage_content__v3S0N\",\"containerAPI\":\"APIPage_containerAPI__2FD4y\",\"buttonFullScreen\":\"APIPage_buttonFullScreen__hzIj4\",\"videoContainer\":\"APIPage_videoContainer__2Cqg7\",\"text\":\"APIPage_text__ivTbr\",\"text_info\":\"APIPage_text_info__2gvEY\",\"tab_root\":\"APIPage_tab_root__2p8qb\",\"card_container\":\"APIPage_card_container__-ylZv\",\"card_actions\":\"APIPage_card_actions__1eQyQ\",\"support\":\"APIPage_support__lMhoQ\"};"],"sourceRoot":""}