{"version":3,"mappings":"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xB,CACJ,CACL,EACMgX,GAAQ,CACV,GAAI,CACA,UAAW,CACP,SAAU,KACV,WAAY,MACf,EACD,KAAM,CACF,KAAM,IACT,CACJ,EACD,GAAI,CACA,UAAW,CACP,SAAU,KACV,WAAY,MACf,EACD,KAAM,CACF,KAAM,IACT,CACJ,EACD,GAAI,CACA,UAAW,CACP,SAAU,KACV,WAAY,MACf,EACD,KAAM,CACF,KAAM,IACT,CACJ,EACD,GAAI,CACA,UAAW,CACP,SAAU,KACV,WAAY,MACf,EACD,KAAM,CACF,KAAM,IACT,CACJ,CACL,EACe0B,GAAA,CACf,UAAI5B,GACJ,aAAIC,GACJ,MAAII,GACJ,MAAIH,GACJ,SAAIhX,EACJ,EC5EM8W,GAAY,CACd,KAAM,CACF,MAAO,eACP,SAAU,aACV,QAAS,aACT,WAAY,aACZ,GAAI,CACP,EACD,QAAS,CACL,MAAO,cACV,CACL,EACMC,GAAe,CACjB,KAAM,KACN,QAAS,SACb,EACMI,GAAQ,CAAC,YAAa,UAAW,UAAW,OAAQ,OAAQ,MAAM,EAClEH,GAAQ,CACV,GAAI,CACA,KAAM,CACF,KAAM,IACT,EACD,KAAM,CACF,SAAU,GACV,EAAG,EACN,EACD,QAAS,CACL,SAAU,EACb,CACJ,EACD,GAAI,CACA,KAAM,CACF,KAAM,IACT,EACD,KAAM,CACF,SAAU,GACV,EAAG,EACN,EACD,QAAS,CACL,SAAU,EACb,CACJ,EACD,GAAI,CACA,KAAM,CACF,KAAM,IACT,EACD,KAAM,CACF,SAAU,GACV,EAAG,EACN,EACD,QAAS,CACL,SAAU,EACb,CACJ,EACD,GAAI,CACA,KAAM,CACF,KAAM,IACT,EACD,KAAM,CACF,SAAU,GACV,EAAG,EACN,EACD,QAAS,CACL,SAAU,EACb,CACJ,EACD,IAAK,CACD,KAAM,CACF,KAAM,IACT,EACD,KAAM,CACF,SAAU,GACV,EAAG,EACN,EACD,QAAS,CACL,SAAU,EACb,CACJ,CACL,EACMhX,GAAW,CACb,QAAS,CAAE,EACX,QAAS,CACL,UAAW,CACP,GAAI,KACJ,cAAe,UACf,GAAI,CACP,EACD,K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EF,EAEagqD,GAAe,IAE1B,SAAS,mBACR,SAAiB,sBACjB,SAAiB,yBACjB,SAAiB,qBAClB,GCjCIG,GAAe,IAAM,CACvB,MAAMC,EAAW,CACb,CACI,GAAI,gBACJ,KAAM,WACN,MAAO,CACH,CACI,GAAI,QACJ,KAAM,iBACN,IAAK,2CACT,EACA,CACI,GAAI,OACJ,KAAM,OACN,IAAK,0CACT,EACA,CACI,GAAI,cACJ,KAAM,cACN,IAAK,wCACT,EACA,CACI,GAAI,sBACJ,KAAM,wBACN,IAAK,2DACT,EACA,CACI,GAAI,SACJ,KAAM,SACN,IAAK,6CACT,CAER,EACA,CACI,GAAI,gBACJ,KAAM,WACN,MAAO,CACH,CACI,GAAI,2BACJ,KAAM,yBACN,IAAK,iGACT,EACA,CACI,GAAI,oBACJ,KAAM,uBACN,IAAK,gFACT,EACA,CACI,GAAI,sBACJ,KAAM,gBACN,IAAK,4DACT,EACA,CACI,GAAI,aACJ,KAAM,sCACN,IAAK,yEACT,EACA,CACI,GAAI,YACJ,KAAM,qBACN,IAAK,6CACT,CAER,EACA,CACI,GAAI,mBACJ,KAAM,cACN,MAAO,CACH,CACI,GAAI,2BACJ,KAAM,sBACN,IAAK,qFACT,EACA,CACI,GAAI,iBACJ,KAAM,2BACN,IAAK,0DACT,CAER,EACA,CACI,GAAI,iBACJ,KAAM,YACN,MAAO,CACH,CACI,GAAI,YACJ,KAAM,0BACN,IAAK,4CACT,EACA,CACI,GAAI,gBACJ,KAAM,gBACN,IAAK,gDACT,EACA,CACI,GAAI,qBACJ,KAAM,sBACN,IAAK,6CACT,CAER,EACA,CACI,GAAI,eACJ,KAAM,UACN,MAAO,CACH,CACI,GAAI,kBACJ,KAAM,cACN,IAAK,8CACT,EACA,CACI,GAAI,sBACJ,KAAM,kBACN,IAAK,yCACT,EACA,CACI,GAAI,uBACJ,KAAM,mBACN,IAAK,2CACT,CAER,EACA,CACI,GAAI,eACJ,KAAM,QACN,MAAO,CACH,CACI,GAAI,mBACJ,KAAM,oBACN,IAAK,2DACT,EACA,CACI,GAAI,aACJ,KAAM,eACN,IAAK,iDACT,EACA,CAC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","names":["l","n","p","q","r","t","u","v","w","x","y","z","A","a","B","C","D","E","b","e","F","G","H","I","J","K","L","M","d","c","k","h","g","f","m","N","O","escape","P","Q","R","S","T","U","V","W","X","react_production_min","reactModule","require$$0","reactJsxRuntime_production_min","jsxRuntimeModule","exports","schedulerModule","aa","ca","require$$1","da","ea","fa","ha","ia","ja","ka","la","ma","oa","pa","qa","ra","sa","ta","ua","va","wa","ya","za","Aa","Ba","Ca","Da","Ea","Fa","Ga","Ha","Ia","Ja","Ka","La","Ma","Na","Oa","Pa","Qa","Ra","Sa","Ta","Ua","Va","Wa","Xa","Ya","Za","ab","bb","cb","db","eb","fb","gb","hb","ib","jb","kb","lb","mb","nb","ob","pb","qb","rb","sb","tb","ub","vb","wb","xb","yb","zb","Ab","Bb","Cb","Db","Eb","Fb","Gb","Hb","Ib","Jb","Kb","Lb","Mb","Nb","Ob","Pb","Qb","Rb","Sb","Tb","Ub","Vb","Wb","Xb","Yb","Zb","$b","ac","bc","cc","dc","ec","fc","gc","hc","ic","jc","kc","lc","mc","oc","nc","pc","qc","rc","sc","tc","uc","vc","wc","xc","yc","zc","Ac","Bc","Cc","Dc","Ec","Fc","Gc","Hc","Ic","Jc","Kc","Lc","Mc","Nc","Oc","Pc","Qc","Rc","Sc","Tc","Uc","Vc","Wc","Xc","Yc","Zc","$c","ad","bd","cd","dd","ed","fd","gd","hd","id","jd","kd","ld","md","nd","od","pd","qd","rd","sd","td","ud","vd","wd","xd","yd","Ad","zd","Bd","Cd","Dd","Ed","Fd","Gd","Hd","Id","Jd","Kd","Ld","Md","Nd","Od","Pd","Qd","Rd","Sd","Td","Ud","Vd","Wd","Xd","Yd","Zd","$d","ae","be","ce","de","ee","fe","ge","he","ie","je","ke","le","me","ne","oe","pe","qe","re","se","te","ue","ve","we","xe","ye","ze","Ae","Be","Ce","De","Ee","Fe","Ge","He","Ie","Je","Ke","Le","Me","Ne","Oe","Pe","Qe","Re","Se","Te","Ue","Ve","We","Xe","Ye","Ze","$e","af","bf","cf","df","ef","ff","gf","hf","jf","kf","lf","mf","nf","of","pf","qf","rf","sf","tf","uf","vf","wf","na","xa","$a","ba","xf","yf","zf","Af","Bf","Cf","Df","Ef","Ff","Gf","Hf","Jf","If","Kf","Lf","Mf","Nf","Of","Pf","Qf","Rf","Sf","Tf","Uf","Vf","Wf","Xf","Yf","Zf","$f","ag","bg","cg","dg","eg","fg","gg","hg","ig","jg","kg","lg","mg","ng","og","pg","qg","rg","sg","tg","ug","vg","wg","xg","yg","zg","Ag","Bg","Cg","Dg","Eg","Fg","Gg","Hg","Ig","Jg","Kg","Lg","Mg","Ng","Og","Pg","Qg","Rg","Sg","Tg","Ug","Vg","Wg","Xg","Yg","Zg","$g","ah","bh","ch","dh","eh","fh","gh","hh","ih","jh","kh","lh","mh","nh","oh","ph","qh","rh","sh","th","uh","vh","wh","xh","yh","zh","Ah","Bh","Ch","Dh","Eh","Fh","Gh","Hh","Ih","Jh","Kh","Lh","Mh","Nh","Oh","Ph","Qh","Rh","Sh","Th","Uh","Vh","Wh","Xh","Yh","Zh","$h","ai","bi","ci","di","ei","fi","gi","hi","ii","ji","ki","li","mi","ni","oi","pi","qi","ri","si","ti","ui","vi","wi","xi","yi","zi","Ai","Bi","Ci","Di","Ei","Fi","Gi","Hi","Ii","Ji","Ki","Li","Mi","Ni","Oi","Pi","Qi","Ri","Si","Ti","Ui","Vi","Wi","Xi","Yi","Zi","$i","aj","bj","cj","dj","ej","fj","gj","hj","ij","jj","kj","lj","mj","nj","oj","pj","qj","rj","sj","tj","uj","vj","wj","xj","yj","zj","Aj","Bj","Cj","Dj","Ej","Fj","Gj","Hj","Ij","Jj","Kj","Lj","Mj","Nj","Oj","Pj","Qj","Rj","Sj","Tj","Uj","Vj","Wj","Xj","Yj","Zj","ak","bk","ck","dk","ek","fk","gk","hk","ik","jk","kk","lk","mk","nk","ok","Y","Z","pk","qk","rk","sk","tk","uk","vk","wk","xk","yk","zk","Ak","Bk","Ck","Dk","Ek","Fk","Gk","Hk","Ik","Jk","Kk","Lk","Mk","Nk","Ok","Pk","Qk","Rk","Sk","Tk","Uk","Vk","Wk","Xk","Yk","Zk","$k","al","bl","cl","dl","el","fl","gl","hl","il","kl","ll","ml","nl","ol","pl","ql","rl","sl","tl","ul","vl","reactDom_production_min","checkDCE","err","reactDomModule","createRoot","cdnUrl","cdnStagUrl","cdnTestUrl","cdnFontsPath","cdnUrls","isArray","value","isFunction","isJsx","React","isNumber","isObject","isReactText","isString","activeClassName","addBodyClass","className","removeBodyClass","callAll","fns","args","fn","noop","runIfFn","valueOrFn","filterUndefined","object","objectFilter","val","merge","sources","target","source","key","result","assignRef","ref","createContext","options","errorMessage","isOptional","name","Context","useContext","context","mergeRefs","refs","node","useCallbackRef","callback","deps","useRef","useCallback","_a","defaultEvents","useClickOutside","events","eventsString","listener","ev","useEffect","event","buttonTypePrimaryDefaultBorderColorDark","buttonTypePrimaryDefaultBorderColorLight","buttonTypePrimaryDefaultBackgroundColorDark","buttonTypePrimaryDefaultBackgroundColorLight","buttonTypePrimaryDefaultTextColorDark","buttonTypePrimaryDefaultTextColorLight","buttonTypePrimaryHoverBorderColorDark","buttonTypePrimaryHoverBorderColorLight","buttonTypePrimaryHoverBackgroundColorDark","buttonTypePrimaryHoverBackgroundColorLight","buttonTypePrimaryHoverTextColorDark","buttonTypePrimaryHoverTextColorLight","buttonTypePrimaryActiveBorderColorDark","buttonTypePrimaryActiveBorderColorLight","buttonTypePrimaryActiveBackgroundColorDark","buttonTypePrimaryActiveBackgroundColorLight","buttonTypePrimaryActiveTextColorDark","buttonTypePrimaryActiveTextColorLight","buttonTypePrimaryFocusOutline","buttonTypeSecondaryDefaultBorderColorDark","buttonTypeSecondaryDefaultBorderColorLight","buttonTypeSecondaryDefaultBackgroundColorDark","buttonTypeSecondaryDefaultBackgroundColorLight","buttonTypeSecondaryDefaultTextColorDark","buttonTypeSecondaryDefaultTextColorLight","buttonTypeSecondaryHoverBorderColorDark","buttonTypeSecondaryHoverBorderColorLight","buttonTypeSecondaryHoverBackgroundColorDark","buttonTypeSecondaryHoverBackgroundColorLight","buttonTypeSecondaryHoverTextColorDark","buttonTypeSecondaryHoverTextColorLight","buttonTypeSecondaryActiveBorderColorDark","buttonTypeSecondaryActiveBorderColorLight","buttonTypeSecondaryActiveBackgroundColorDark","buttonTypeSecondaryActiveBackgroundColorLight","buttonTypeSecondaryActiveTextColorDark","buttonTypeSecondaryActiveTextColorLight","buttonTypeSecondaryFocusOutline","buttonTypeTertiaryDefaultBorderColorDark","buttonTypeTertiaryDefaultBorderColorLight","buttonTypeTertiaryDefaultBackgroundColorDark","buttonTypeTertiaryDefaultBackgroundColorLight","buttonTypeTertiaryDefaultTextColorDark","buttonTypeTertiaryDefaultTextColorLight","buttonTypeTertiaryHoverBorderColorDark","buttonTypeTertiaryHoverBorderColorLight","buttonTypeTertiaryHoverBackgroundColorDark","buttonTypeTertiaryHoverBackgroundColorLight","buttonTypeTertiaryHoverTextColorDark","buttonTypeTertiaryHoverTextColorLight","buttonTypeTertiaryActiveBorderColorDark","buttonTypeTertiaryActiveBorderColorLight","buttonTypeTertiaryActiveBackgroundColorDark","buttonTypeTertiaryActiveBackgroundColorLight","buttonTypeTertiaryActiveTextColorDark","buttonTypeTertiaryActiveTextColorLight","buttonTypeTertiaryFocusOutline","buttonDisabledCursor","buttonDisabledOpacity","oneDesignButtonTokens.buttonTypePrimaryDefaultBorderColorDark","oneDesignButtonTokens.buttonTypePrimaryDefaultBorderColorLight","oneDesignButtonTokens.buttonTypePrimaryDefaultBackgroundColorDark","oneDesignButtonTokens.buttonTypePrimaryDefaultBackgroundColorLight","oneDesignButtonTokens.buttonTypePrimaryDefaultTextColorDark","oneDesignButtonTokens.buttonTypePrimaryDefaultTextColorLight","oneDesignButtonTokens.buttonTypePrimaryHoverBorderColorDark","oneDesignButtonTokens.buttonTypePrimaryHoverBorderColorLight","oneDesignButtonTokens.buttonTypePrimaryHoverBackgroundColorDark","oneDesignButtonTokens.buttonTypePrimaryHoverBackgroundColorLight","oneDesignButtonTokens.buttonTypePrimaryHoverTextColorDark","oneDesignButtonTokens.buttonTypePrimaryHoverTextColorLight","oneDesignButtonTokens.buttonTypePrimaryActiveBorderColorDark","oneDesignButtonTokens.buttonTypePrimaryActiveBorderColorLight","oneDesignButtonTokens.buttonTypePrimaryActiveBackgroundColorDark","oneDesignButtonTokens.buttonTypePrimaryActiveBackgroundColorLight","oneDesignButtonTokens.buttonTypePrimaryActiveTextColorDark","oneDesignButtonTokens.buttonTypePrimaryActiveTextColorLight","oneDesignButtonTokens.buttonTypePrimaryFocusOutline","oneDesignButtonTokens.buttonTypeSecondaryDefaultBorderColorDark","oneDesignButtonTokens.buttonTypeSecondaryDefaultBorderColorLight","oneDesignButtonTokens.buttonTypeSecondaryDefaultBackgroundColorDark","oneDesignButtonTokens.buttonTypeSecondaryDefaultBackgroundColorLight","oneDesignButtonTokens.buttonTypeSecondaryDefaultTextColorDark","oneDesignButtonTokens.buttonTypeSecondaryDefaultTextColorLight","oneDesignButtonTokens.buttonTypeSecondaryHoverBorderColorDark","oneDesignButtonTokens.buttonTypeSecondaryHoverBorderColorLight","oneDesignButtonTokens.buttonTypeSecondaryHoverBackgroundColorDark","oneDesignButtonTokens.buttonTypeSecondaryHoverBackgroundColorLight","oneDesignButtonTokens.buttonTypeSecondaryHoverTextColorDark","oneDesignButtonTokens.buttonTypeSecondaryHoverTextColorLight","oneDesignButtonTokens.buttonTypeSecondaryActiveBorderColorDark","oneDesignButtonTokens.buttonTypeSecondaryActiveBorderColorLight","oneDesignButtonTokens.buttonTypeSecondaryActiveBackgroundColorDark","oneDesignButtonTokens.buttonTypeSecondaryActiveBackgroundColorLight","oneDesignButtonTokens.buttonTypeSecondaryActiveTextColorDark","oneDesignButtonTokens.buttonTypeSecondaryActiveTextColorLight","oneDesignButtonTokens.buttonTypeSecondaryFocusOutline","oneDesignButtonTokens.buttonTypeTertiaryDefaultBorderColorDark","oneDesignButtonTokens.buttonTypeTertiaryDefaultBorderColorLight","oneDesignButtonTokens.buttonTypeTertiaryDefaultBackgroundColorDark","oneDesignButtonTokens.buttonTypeTertiaryDefaultBackgroundColorLight","oneDesignButtonTokens.buttonTypeTertiaryDefaultTextColorDark","oneDesignButtonTokens.buttonTypeTertiaryDefaultTextColorLight","oneDesignButtonTokens.buttonTypeTertiaryHoverBorderColorDark","oneDesignButtonTokens.buttonTypeTertiaryHoverBorderColorLight","oneDesignButtonTokens.buttonTypeTertiaryHoverBackgroundColorDark","oneDesignButtonTokens.buttonTypeTertiaryHoverBackgroundColorLight","oneDesignButtonTokens.buttonTypeTertiaryHoverTextColorDark","oneDesignButtonTokens.buttonTypeTertiaryHoverTextColorLight","oneDesignButtonTokens.buttonTypeTertiaryActiveBorderColorDark","oneDesignButtonTokens.buttonTypeTertiaryActiveBorderColorLight","oneDesignButtonTokens.buttonTypeTertiaryActiveBackgroundColorDark","oneDesignButtonTokens.buttonTypeTertiaryActiveBackgroundColorLight","oneDesignButtonTokens.buttonTypeTertiaryActiveTextColorDark","oneDesignButtonTokens.buttonTypeTertiaryActiveTextColorLight","oneDesignButtonTokens.buttonTypeTertiaryFocusOutline","oneDesignButtonTokens.buttonDisabledCursor","oneDesignButtonTokens.buttonDisabledOpacity","focusColor","darkBlue","digiGreen","earth","energyRed","landGreen","seaBlue","sandstone","skyBlue","sunflower","terracotta","warmGrey","blue","green","grey","pink","prussian","red","yellow","disabled","colors$2","cs","classNames","parseHSL","color","regexp","res","_c","_b","hexToRGBA","hex","alpha","hexStr","char","HSLToRGBA","s","ellipsisOverflow","uid","prefix","LinksContext","getLoggedInLink","link","isLoggedIn","url","LinksProvider","props","linksState","useState","useLinks","useLoadLinks","env","setLinks","loadLinks","response","data","updateLoggedInParam","links","loggedInLinks","reactIs_production_min","reactIsModule","stylis_min","unitlessKeys","memoize","cache","arg","reactPropsRegex","isPropValid","prop","reactIs","REACT_STATICS","KNOWN_STATICS","FORWARD_REF_STATICS","MEMO_STATICS","TYPE_STATICS","getStatics","component","defineProperty","getOwnPropertyNames","getOwnPropertySymbols","getOwnPropertyDescriptor","getPrototypeOf","objectPrototype","hoistNonReactStatics","targetComponent","sourceComponent","blacklist","inheritedComponent","keys","targetStatics","sourceStatics","i","descriptor","hoistNonReactStatics_cjs","o","_","define_process_env_default","j","$","_e","identity","is","num","string","obj","func","negative","get","from","path","paths","pathsLength","_path","assign","cascade","getThemeValue","initial","flattenStrings","array","flattenedArray","lastIndex","last","_extends","round","unit","_unit","ms","px","deg","pxToRem","_temp","_ref","_ref$rootFontSize","rootFontSize","rpx","percent","toNegative","transformNegative","_ref2","rawValue","variants","_neg","absoluteValue","variantValue","_value","abs","neg","getBreakpoints","themeBreakpoints","mediaMinWidth","getBreakpointMin","breakpoints","getBreakpointMax","breakPoint","defaultStates","defaultStateKeys","cacheSupported","caches","getThemeCache","theme","noopCache","getCacheNamespace","namespace","themeGetterId","SPACES","themeGetter","defaultTransform","defaultVariants","compose","shorthand","getter","defaultValue","cacheKey","getValue","localDefaultValue","transform","values","createStyleGenerator","getStyle","generators","generator","getMedias","medias","breakpoint","getCachedMedias","reduceBreakpoints","styles","_style","media","styleFromValue","mixin","themeGet","computedValue","style","getStyleFactory","breakpointValue","scopeStyleGetter","selector","_ref3","indexGeneratorsByProp","index","_style2","sortStyles","mediaValue","flatGenerators","_len","_key","gen","generatorsByProp","sort","_style3","allProps","getMixinFromCSSProperties","properties","_ref4","getMixinFromCSSProperty","cssProperty","_ref5","_ref5$states","states","_mixin","_generators","capitalizedProp","stateNames","stateName","stateProp","_getStyle","_generator","getAnimation","animation","animations","getColor","gradientBackgrounds","background","backgroundColor","backgroundImage","backgroundSize","backgroundPosition","backgroundRepeat","backgroundAttachment","backgroundClip","gradientFrom","gradientVia","gradientTo","backgrounds","getPx","_props$theme$settings","_props$theme","_props$theme$settings2","getDuration","getAngle","getPercent","getBorder","getBorderWidth","getBorderColor","getBorderStyle","border","borderTop","borderRight","borderBottom","borderLeft","borderColor","borderTopColor","borderRightColor","borderBottomColor","borderLeftColor","borderWidth","borderTopWidth","borderRightWidth","borderBottomWidth","borderLeftWidth","borderStyle","outline","outlineColor","outlineWidth","outlineStyle","getRadius","borderRadius","divideSelector","divideY","divideX","divideXReverse","divideYReverse","divideColor","divideStyle","_ref6","getRingWidth","ring","ringInset","ringColor","borders","getShadow","opacity","boxShadow","textShadow","effects","row","getColStyle","size","sizeWidth","col","common","breakpointsStyle","flexboxGrids","display","_float","boxSizing","container","overflow","overflowX","overflowY","getZIndex","zIndex","position","getInset","top","right","bottom","left","visibility","overscrollBehavior","objectFit","layout","alignItems","alignContent","justifyContent","justifyItems","flexWrap","flexGrow","flexShrink","flexBasis","flexDirection","flex","justifySelf","alignSelf","order","flexboxes","getSpace","margin","marginTop","marginRight","marginBottom","marginLeft","mx","my","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","px$1","py","spaceY","spaceX","spaceXReverse","spaceYReverse","space","gap","columnGap","rowGap","gridColumn","gridRow","gridAutoFlow","gridAutoColumns","gridAutoRows","gridTemplateColumns","gridTemplateRows","gridTemplateAreas","gridArea","grids","appearance","cursor","pointerEvents","resize","userSelect","interactivity","getSize","width","height","maxWidth","maxHeight","minWidth","minHeight","sizing","fill","stroke","svg","borderCollapse","tableLayout","tables","getTransform","transformOrigin","translateX","translateY","rotate","skewX","skewY","scale","scaleX","scaleY","transforms","getTransition","getTransitionProperty","getTimingFunction","transition","transitionProperty","transitionDuration","transitionTimingFunction","transitionDelay","transitions","getFont","getLineHeight","getFontWeight","getLetterSpacing","getFontSize","fontFamily","fontSize","lineHeight","fontWeight","fontStyle","letterSpacing","textTransform","textDecoration","textAlign","verticalAlign","whiteSpace","textOverflow","listStyleType","listStylePosition","typography","system","defaultAlphaVariants","generateAlphaVariants","colors","alphaColors","generateHexAlphaVariants","variant","space$1","timingFunctions","transitionProperties","transitions$1","property","useViewportWidth","_React$useState","setWidth","handleResize","getNumber","getMultiDimensions","COMMA","getMultiValues","getNumberInset","getNumberSpace","getMultiNumberSpace","getNumberBorder","getNumberBorderWidth","getMultiNumberBorderWidth","getNumberSize","getMultiBorderStyle","propGetters","getMediaWidth","getBreakpointBound","mediaGetters","PROP_CHAR","VALUE_CHAR","PROP_PATT","MEDIA_CHAR","MEDIA_PATT","MATCH_REGEXP","matches","_loop","_matches","colon","imp","semi","query","brace","mediaTransform","QUERY_REGEXP","_loop2","_matches2","open","close","css","scCssArgs","css$1","flattenedArgs","_taggedTemplateLiteralLoose","strings","raw","tags","styled$1","createX","tag","defaultValidatorFn","_templateObject","getCreateStyle","baseCreateStyle","createStyle","attrs","nextCreateStyle","config","styled","useTheme","ThemeContext","createUseGetter","useMemo","baseStyle","defaultProps","sizes","Accordion","Avatar$1","parts","theme$1","Box$1","Breadcrumbs","Button$1","Calendar","Card","checkboxColors","Checkbox","DatePicker","Definition","Dialog","Divider$1","DragAndDrop","Footer$1","Grid","Header$2","fonts","Heading$1","Icon$1","Image$3","inputColors","Input","Link$1","List$1","Menu$1","messageColors","Message$1","Modal$1","Notification$1","P$1","base","Pagination","Panel","Popover$3","Progress","ProgressCircular","radioColors","Radio","Select","Sidemenu","Skeleton","Spinner$1","switchColors","sizeLg","sizeMd","sizeSm","Switch","T$1","Table","Tag","Textarea","Tree","themePlaceholder","Markdown","MarkdownEditor","components","Avatar","Badge","Box","Button","Divider","Footer","Header","Heading","Icon","Image","Link","List","Menu","Message","Modal","Notification","Popover","Spinner","Tabs","durations","fontSizes","fontWeights","radii","ringWidths","screens","greyLight","greyDark","modal","shadows","spaces","transformers","colorValue","zIndices","foundations","defaultTheme","omitThemingProps","rest","xth","useStyleConfig","mergedProps","colorScheme","baseStyles","sizeStyles","variantStyles","part","useStyledTheme","RenderOnScreen","children","RenderBetween","RenderOver","RenderUnder","useBetween","useUp","useDown","useMedia","viewportWidth","valueString","isDown","isUp","isTruncated","maxLines","wordBreak","createBaseStyled","forwardPropConfig","baseStyled","scStyled","createCreateGlobalStyle","createCssFunction","scCreateGlobalStyle","scCss","createStyled","vstyled","createGlobalStyle","vui","memoCompare","isMemo","bounce","fadeDown","fadeIn","fadeLeft","fadeOut","fadeRight","fadeUp","pulse","spin","VuiContextProvider","useVuiContext","useOfflineMode","isOffline","setIsOffline","setOnline","setOffline","noScrollClass","useBodyScrollLock","isScrollLocked","setIsScrollLocked","toggleIsScrollLocked","baseUrl","fontFaces","GlobalStyle","generateCSSVariables","computeStyle","str","ResetCSS","PopoverStyle","Portal","containerRef","disablePortal","mountNode","setMountNode","createPortal","BoxBase","align","center","centerH","centerV","column","direction","elevation","hoverBoxShadow","justify","shadow","wrap","aliasedProps","toasterWidth","Toaster","toasts","toast","Toaster$1","NotificationProvider","useNotificationContext","notificationStatusMapping","ButtonGroupProvider","useButtonGroupContext","Cache","src","item","promise","getAttributes","element","attr","getSvgContent","html","initState","stringToHTML","SvgBase","pathFill","Svg","state","setState","isMountedRef","srcRef","content","svgAttributes","innerHTML","loadSvg","svgEl","error","conCreateDataset","conDatabase","conDatabasePlus","conDataset","conFolderPlus","conInsightSearchAlt","conLNGBunkering","conMachineLearning","conReport","conReport1","conSensorAlt","conSensorPlus","conUploadFile","conUploadFile1","cuiCheckboxIndeterminate","cuiCheckboxSelected","cuiCheckboxUnselected","cuiRadioSelected","cuiRadioUnselected","culEyeAssess","fadSpinnerThird","falCheck","falCheckCircle","falEllipsisH","falEllipsisV","falExclamationCircle","falExclamationTriangle","falInfoCircle","falPlus","falSpinner","falTimes","falTimesCircle","defaultIcons","IconsCache","icons","icon","getIconDetails","iconsCache","details","pathProps","svgProps","viewBox","customIcon","scaledSize","_d","ButtonProvider","useButtonContext","isConceptualIcon","ButtonIcon","verifiedName","TBase","casing","decoration","text","weight","ButtonText","loadingIconProps","buttonStateMapping","ContentWrapper","StateWrapper","ButtonBase","borderWidthProp","dropDownIcon","iconLeft","iconRight","isActive","isDropDown","isElevated","isFullWidth","isLoading","isRound","isSplit","stateMapping","title","variantProp","hasState","stateIconProps","stateProps","buttonStyles","Content","spaceXItem","spaceXText","iconLeftMr","iconRightMl","pr","ariaLabel","disabledProps","IconButton","TextButton","NotificationButton","status","NotificationIcon","iconProps","NotificationText","NotificationTitle","action","onClose","statusMapping","statuses","iconName","titleDisplay","defaultDuration","fastToastDuration","slowToastDuration","setup","getDurationTime","duration","useToast","addToast","removeToast","hideToast","showToast","NotifyOffline","showError","showInfo","isOfflineNotified","setIsOfflineNotified","NotifyOffline$1","toastsReducer","genericReducer","VuiProvider","globalStyle","resetCSS","notifyOffline","toastsDispatch","useReducer","portalSlot","setPortalSlot","ThemeProvider","ListProvider","useListContext","DividerBase","isVertical","ListDivider","ListHeading","ListIcon","LinkProvider","useLinkContext","LinkIcon","LinkText","LinkBase","hoverDecoration","isExternal","isUnderlined","ListText","ListItemLink","ListItemBase","ListItem","isInteractiveProp","isSelected","itemLeft","itemRight","linkProps","onClick","activeBg","hoverBg","selectedBg","itemStyles","isLinkItem","isInteractive","Fragment","interactiveProps","ListBase","heading","items","names","AccordionItemArrow","collapsed","orientation","AccordionItemArrow$1","AccordionProvider","useAccordionContext","AccordionItem","iconPosition","onToggle","collapsedInternal","setIsCollapsedInternal","toggle","isIconStart","isIconEnd","ImageBase","alt","defaultGetInitials","first","imageExists","image_url","http","AvatarBase","getInitials","isSquare","iconSize","initials","internalIcon","closeOnEscPlugin","hide","onKeyDown","matchWidthModifier","reference","PopoverProvider","usePopoverContext","PopoverContent","popoverProps","isLazy","isOpen","setPopper","shouldRenderChildren","PopoverTrigger","as","onClickProp","setReference","Element","auto","basePlacements","start","end","clippingParents","viewport","popper","variationPlacements","acc","placement","placements","beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite","modifierPhases","getNodeName","getWindow","ownerDocument","isElement","OwnElement","isHTMLElement","isShadowRoot","applyStyles","attributes","effect","initialStyles","styleProperties","attribute","applyStyles$1","getBasePlacement","max","min","getUAString","uaData","isLayoutViewport","getBoundingClientRect","includeScale","isFixedStrategy","clientRect","visualViewport","addVisualOffsets","getLayoutRect","contains","parent","child","rootNode","next","getComputedStyle","isTableElement","getDocumentElement","getParentNode","getTrueOffsetParent","getContainingBlock","isFirefox","isIE","elementCss","currentNode","getOffsetParent","window","offsetParent","getMainAxisFromPlacement","within","mathMax","mathMin","withinMaxClamp","getFreshSideObject","mergePaddingObject","paddingObject","expandToHashMap","hashMap","toPaddingObject","arrow","_state$modifiersData$","arrowElement","popperOffsets","basePlacement","axis","len","arrowRect","minProp","maxProp","endDiff","startDiff","arrowOffsetParent","clientSize","centerToReference","offset","axisProp","_options$element","arrow$1","getVariation","unsetSides","roundOffsetsByDPR","win","dpr","mapToStyles","_Object$assign2","popperRect","variation","offsets","gpuAcceleration","adaptive","roundOffsets","isFixed","_offsets$x","_offsets$y","hasX","hasY","sideX","sideY","heightProp","widthProp","offsetY","offsetX","commonStyles","_Object$assign","computeStyles","_options$gpuAccelerat","_options$adaptive","_options$roundOffsets","computeStyles$1","passive","instance","_options$scroll","scroll","_options$resize","scrollParents","scrollParent","eventListeners","hash","getOppositePlacement","matched","getOppositeVariationPlacement","getWindowScroll","scrollLeft","scrollTop","getWindowScrollBarX","getViewportRect","strategy","layoutViewport","getDocumentRect","_element$ownerDocumen","winScroll","body","isScrollParent","_getComputedStyle","getScrollParent","listScrollParents","list","isBody","updatedList","rectToClientRect","rect","getInnerBoundingClientRect","getClientRectFromMixedType","clippingParent","getClippingParents","canEscapeClipping","clipperElement","getClippingRect","boundary","rootBoundary","mainClippingParents","firstClippingParent","clippingRect","accRect","computeOffsets","commonX","commonY","mainAxis","detectOverflow","_options","_options$placement","_options$strategy","_options$boundary","_options$rootBoundary","_options$elementConte","elementContext","_options$altBoundary","altBoundary","_options$padding","altContext","clippingClientRect","referenceClientRect","popperClientRect","elementClientRect","overflowOffsets","offsetData","multiply","computeAutoPlacement","flipVariations","_options$allowedAutoP","allowedAutoPlacements","allPlacements","allowedPlacements","overflows","getExpandedFallbackPlacements","oppositePlacement","flip","_options$mainAxis","checkMainAxis","_options$altAxis","checkAltAxis","specifiedFallbackPlacements","_options$flipVariatio","preferredPlacement","isBasePlacement","fallbackPlacements","referenceRect","checksMap","makeFallbackChecks","firstFittingPlacement","_basePlacement","isStartVariation","mainVariationSide","altVariationSide","checks","check","numberOfChecks","_i","fittingPlacement","_ret","flip$1","getSideOffsets","preventedOffsets","isAnySideFullyClipped","side","referenceOverflow","popperAltOverflow","referenceClippingOffsets","popperEscapeOffsets","isReferenceHidden","hasPopperEscaped","hide$1","distanceAndSkiddingToXY","rects","invertDistance","skidding","distance","_options$offset","_data$state$placement","offset$1","popperOffsets$1","getAltAxis","preventOverflow","_options$tether","tether","_options$tetherOffset","tetherOffset","altAxis","tetherOffsetValue","normalizedTetherOffsetValue","offsetModifierState","_offsetModifierState$","mainSide","altSide","additive","minLen","maxLen","arrowPaddingObject","arrowPaddingMin","arrowPaddingMax","arrowLen","minOffset","maxOffset","clientOffset","offsetModifierValue","tetherMin","tetherMax","preventedOffset","_offsetModifierState$2","_mainSide","_altSide","_offset","_min","_max","isOriginSide","_offsetModifierValue","_tetherMin","_tetherMax","_preventedOffset","preventOverflow$1","getHTMLElementScroll","getNodeScroll","isElementScaled","getCompositeRect","elementOrVirtualElement","isOffsetParentAnElement","offsetParentIsScaled","documentElement","modifiers","map","visited","modifier","requires","dep","depModifier","orderModifiers","orderedModifiers","phase","debounce","pending","resolve","mergeByName","merged","current","existing","DEFAULT_OPTIONS","areValidElements","popperGenerator","generatorOptions","_generatorOptions","_generatorOptions$def","defaultModifiers","_generatorOptions$def2","defaultOptions","effectCleanupFns","isDestroyed","setOptionsAction","cleanupModifierEffects","runModifierEffects","_state$elements","_state$orderedModifie","_state$orderedModifie2","_ref$options","cleanupFn","noopFn","createPopper","BOX_CLASS","CONTENT_CLASS","BACKDROP_CLASS","ARROW_CLASS","SVG_ARROW_CLASS","TOUCH_OPTIONS","TIPPY_DEFAULT_APPEND_TO","getValueAtIndexOrReturn","isType","type","invokeWithArgsOrReturn","timeout","splitBySpaces","normalizeToArray","pushIfUnique","arr","unique","arrayFrom","removeUndefinedProps","div","isNodeList","isMouseEvent","isReferenceElement","getArrayOfElements","setTransitionDuration","els","setVisibilityState","getOwnerDocument","elementOrElements","_normalizeToArray","isCursorOutsideInteractiveBorder","popperTreeData","clientX","clientY","popperState","interactiveBorder","topDistance","bottomDistance","leftDistance","rightDistance","exceedsTop","exceedsBottom","exceedsLeft","exceedsRight","updateTransitionEndListener","box","method","actualContains","_target$getRootNode","currentInput","lastMouseMoveTime","onDocumentTouchStart","onDocumentMouseMove","now","onWindowBlur","activeElement","bindGlobalEventListeners","isBrowser","isIE11","pluginProps","renderProps","defaultKeys","setDefaultProps","partialProps","getExtendedPassedProps","passedProps","plugins","plugin","_name","getDataAttributeProps","propKeys","valueAsString","evaluateProps","out","dangerouslySetInnerHTML","createArrowElement","setContent","getChildren","boxChildren","render","onUpdate","prevProps","nextProps","_getChildren","idCounter","mouseMoveListeners","mountedInstances","createTippy","showTimeout","hideTimeout","scheduleHideAnimationFrame","isVisibleFromClick","didHideDueToDocumentMouseDown","didTouchMove","ignoreOnFirstUpdate","lastTriggerEvent","currentTransitionEndListener","onFirstUpdate","listeners","debouncedOnMouseMove","onMouseMove","currentTarget","popperInstance","clearDelayTimeouts","setProps","show","hideWithInteractivity","enable","disable","unmount","destroy","_props$render","pluginsHooks","hasAriaExpanded","addListeners","handleAriaExpandedAttribute","handleStyles","invokeHook","scheduleShow","getDocument","getNormalizedTouchSettings","touch","getIsCustomTouchBehavior","getIsDefaultRenderFn","_instance$props$rende","getCurrentTarget","getDefaultTemplateChildren","getDelay","isShow","fromHide","hook","shouldInvokePropsHook","pluginHooks","_instance$props","handleAriaContentAttribute","aria","nodes","currentValue","nextValue","cleanupInteractiveMouseListeners","onDocumentPress","actualTarget","removeDocumentPress","onTouchMove","onTouchStart","addDocumentPress","doc","onTransitionedOut","onTransitionEnd","onTransitionedIn","on","eventType","handler","onTrigger","onMouseLeave","onBlurOrFocusOut","removeListeners","_lastTriggerEvent","shouldScheduleClickHide","isEventListenerStopped","wasFocused","scheduleHide","isCursorOverReferenceOrPopper","getNestedPopperTree","_instance$popperInsta","shouldBail","createPopperInstance","destroyPopperInstance","_instance$props2","popperOptions","getReferenceClientRect","moveTransition","computedReference","tippyModifier","_getDefaultTemplateCh","mount","appendTo","parentNode","delay","_getNormalizedTouchSe","touchValue","touchDelay","nestedPopper","isAlreadyVisible","isDisabled","isTouchAndTouchDisabled","_getDefaultTemplateCh2","_instance$popperInsta2","_getDefaultTemplateCh3","_box","_content","isAlreadyHidden","_getDefaultTemplateCh4","tippy","targets","optionalProps","elements","instances","usePopover","closeOnBlur","closeOnEsc","defaultIsOpen","isOpenProp","matchWidth","onCloseProp","onOpenProp","trigger","setIsOpen","setInstance","onOpen","isControlled","tippyOptions","optionsOffset","onHidden","onHide","onShow","otherOptions","newInstance","PBase","ModalProvider","useModalContext","_objectWithoutPropertiesLoose","excluded","sourceKeys","FOCUS_GROUP","FOCUS_DISABLED","FOCUS_ALLOW","FOCUS_AUTO","FOCUS_NO_AUTOFOCUS","initialValue","useMergeRefs","newValue","hiddenGuard","__assign","ItoI","innerCreateMedium","defaults","middleware","buffer","assigned","medium","cbs","pendingQueue","executeQueue","cycle","filter","createMedium","createSidecarMedium","mediumFocus","mediumBlur","mediumEffect","mediumSidecar","emptyArray","FocusLock","React.forwardRef","parentRef","_extends2","React.useState","realObserved","setObserved","observed","React.useRef","originalFocusedElement","noFocusGuards","persistentFocus","crossFrame","autoFocus","group","whiteList","hasPositiveIndices","_props$shards","shards","_props$as","Container","_props$lockProps","containerProps","SideCar","shouldReturnFocus","focusOptions","onActivationCallback","onDeactivationCallback","_React$useState2","onActivation","React.useCallback","onDeactivation","returnFocus","allowDefer","returnFocusTo","howToReturnFocus","returnFocusOptions","onFocus","onBlur","setObserveNode","newObserved","lockProps","constants.FOCUS_DISABLED","constants.FOCUS_GROUP","hasLeadingGuards","hasTailingGuards","mergedRef","React.createElement","React.Fragment","_setPrototypeOf","_inheritsLoose","subClass","superClass","setPrototypeOf","_defineProperty","withSideEffect","reducePropsToState","handleStateChangeOnClient","getDisplayName","WrappedComponent","emitChange","SideEffect","_PureComponent","_proto","PureComponent","toArray","ret","asArray","getFirst","isElementHidden","computedStyle","isTopNode","isVisibleUncached","checkParent","isVisibleCached","visibilityCache","cached","isAutoFocusAllowedUncached","isAutoFocusAllowed","isAutoFocusAllowedCached","getDataset","isHTMLButtonElement","isHTMLInputElement","isRadioElement","notHiddenInput","isGuard","isNotAGuard","isDefined","tabSort","tabDiff","indexDiff","orderByTabIndex","filterNegative","keepGuards","tabbables","queryTabbables","queryGuardTabbables","getFocusablesWithShadowDom","withGuards","getFocusablesWithIFrame","getFocusables","parents","focusableWithShadowDom","focusableWithIframes","getParentAutofocusables","parentFocus","filterFocusable","filterAutoFocusable","getTabbableNodes","topNodes","getAllTabbableNodes","parentAutofocusables","topNode","scope","iframeBody","filterNested","contained","getTopParent","getAllAffectedNodes","safeProbe","getActiveElement","inDocument","focusInFrame","frame","focusInsideIframe","focusInside","focusIsHidden","findSelectedRadio","correctNode","correctNodes","resultSet","pickFirstFocus","pickFocusable","NEW_FOCUS","newFocus","innerNodes","outerNodes","lastNode","cnt","firstFocus","lastFocus","isOnGuard","activeIndex","lastNodeInside","firstNodeIndex","lastNodeIndex","correctedNodes","correctedIndex","correctedIndexDiff","returnFirstNode","returnLastNode","findAutoFocused","autoFocusables","autofocus","pickAutofocus","nodesIndexes","orderedNodes","groups","autoFocusable","getParents","getCommonParent","nodeA","nodeB","parentsA","parentsB","currentParent","getTopCommonParent","baseActiveElement","leftEntry","rightEntries","activeElements","leftEntries","topCommon","entry","subEntry","allParentAutofocusables","entries","reorderNodes","srcNodes","dstNodes","remap","entity","getFocusMerge","commonParent","anyFocusable","innerElements","orderedInnerElements","newId","focusNode","getFocusabledIn","focusOn","guardCount","lockDisabled","setFocus","focusable","deferAction","_window","setImmediate","focusOnBody","isFreeFocus","lastActiveTrap","lastActiveFocus","lastPortaledElement","focusWasOutsideWindow","defaultWhitelist","focusWhitelisted","recordPortal","observerNode","portaledElement","focusIsPortaledPair","autoGuard","startIndex","step","allNodes","lastGuard","extractRef","focusWasOutside","crossFrameOption","checkInHost","withinHost","workingArea","area","activateTrap","_lastActiveTrap","workingNode","moveFocusInside","newActiveElement","focusedIndex","guard","onTrap","FocusWatcher","attachHandler","detachHandler","propsList","traps","trap","lastTrap","sameTrap","FocusTrap","FocusLockCombination","FocusLockUI","finalFocusRef","initialFocusRef","returnFocusProp","ReactFocusLock","rgba","ModalBackdropBase","ModalBackdrop","ModalContentBase","ModalContent","onBackdropClick","ModalManager","manager","useModalManager","disableScrollLock","allowPinchZoom","contentProps","disableAutoFocus","disableBackdropClose","disableEscClose","disableReturnFocus","disableTrapFocus","hideBackdrop","onBackdropClickProp","onEsc","preserveScrollBar","modalRef","mouseDownTarget","onMouseDown","childProps","cloneElement","HeadingBase","restStyles","hClassName","isDesktop","fontSizeDesktop","fontSizeMobile","lineHeightDesktop","lineHeightMobile","MenuProvider","useMenuContext","MenuButton","MenuItem","closeOnSelect","menuProps","MenuList","contentRef","FooterProvider","useFooterContext","FooterHeading","FooterLink","FooterSection","FooterColumn","sections","section","FooterContent","FooterRow","FooterSlimColumn","defaultLinkedInUrl","FooterTrademark","linkedIn","FooterBase","applicationLinks","applicationSocialLinks","applicationStaticItems","columns","isApplication","isDNV","isSlim","slimLinks","downMd","downLg","HeaderProvider","useHeaderContext","HeaderAccountUserInfo","companyName","displayName","role","localColor","HeaderAccount","triggerProps","userInfo","isMobile","HeaderApplicationName","isTablet","additionalClassName","mobileProps","HeaderContent","HeaderCreateAccount","screenProps","linkVariant","HeaderDivider","HeaderLinkItem","setIsMobileOpen","linkActiveProps","linkMobileProps","itemScreenProps","veracityLogo","dnvLogo","Logo","brand","svgSrc","HeaderLogo","logoUrl","HeaderMainLinks","screenStyles","HeaderMobileContent","isMobileOpen","mobileContentRef","islargerThanTablet","HeaderMobileToggle","mobileToggleRef","HeaderNotifications","count","HeaderServicesMessage","ListContent","HeaderServices","buttonProps","showTopBorder","HeaderSignIn","buttonVariant","HeaderSupport","HeaderBase","isSticky","headerHeight","useHeaderLinks","templates","setTemplates","loadHeaderlinks","accountSections","mainLinks","LoggedOutHeader","createAccount","logo","signIn","spinnerPositionMapping","spinnerSpeedMapping","SpinnerCircle","emptyColor","speedProp","textPosition","thickness","isCustomSize","positionProps","speed","circleProps","preserveRef","ssrSafeCreateDiv","toDataAttributes","dataAttrs","deepEqual","uniqueByShape","output","outputItem","deepPreserveProps","instanceProps","componentProps","_instanceProps$popper","_componentProps$poppe","useIsomorphicLayoutEffect","useLayoutEffect","useMutableBox","updateClassName","classNamePlugin","isDefaultRenderFn","add","remove","TippyGenerator","Tippy","visible","singleton","_ref$disabled","_ref$ignoreAttributes","ignoreAttributes","restOfNativeProps","isControlledMode","isSingletonMode","_useState","mounted","setMounted","_useState2","setAttrs","_useState3","singletonContent","setSingletonContent","mutableBox","computedProps","_instance$props$poppe","_state$modifiersData","hideData","forwardRef","forwardRef$1","pointerSize","borderRaduis","pointerPlacement","TooltipContent","Tooltip","linkText","Subscribable","_this","isServer","functionalUpdate","updater","input","isValidTimeout","ensureQueryKeyArray","timeUntilStale","updatedAt","staleTime","parseQueryArgs","arg1","arg2","arg3","isQueryKey","parseMutationArgs","parseFilterArgs","mapQueryStatusFilter","active","inactive","matchQuery","filters","exact","fetching","predicate","queryKey","stale","hashQueryKeyByOptions","partialMatchKey","queryStatusFilter","matchMutation","mutation","mutationKey","hashQueryKey","hashFn","stableValueHash","isPlainObject","partialDeepEqual","replaceEqualDeep","aSize","bItems","bSize","copy","equalItems","shallowEqualObjects","hasObjectPrototype","ctor","prot","sleep","scheduleMicrotask","getAbortController","FocusManager","_Subscribable","_this$cleanup","_this$cleanup2","_this2","focused","focusManager","OnlineManager","onOnline","online","onlineManager","defaultRetryDelay","failureCount","isCancelable","CancelledError","isCancelledError","Retryer","cancelRetry","cancelFn","continueFn","promiseResolve","promiseReject","cancelOptions","outerResolve","outerReject","reject","pause","continueResolve","run","promiseOrValue","_config$retry","_config$retryDelay","retry","retryDelay","shouldRetry","NotifyManager","_this3","queue","notifyManager","logger","getLogger","setLogger","newLogger","Query","_this$options$cacheTi","_this$options$isDataE","_this$options","prevData","setStateOptions","_this$retryer","observer","_this$retryer2","_this$retryer3","fetchOptions","_this$options$behavio","_context$fetchOptions","_abortController$abor","_this$retryer4","abortController","queryFnContext","fetchFn","_this$options$behavio2","_context$fetchOptions2","hasInitialData","initialDataUpdatedAt","hasData","_action$meta","_action$dataUpdatedAt","QueryCache","client","_options$queryHash","queryHash","queryInMap","_parseFilterArgs","_parseFilterArgs2","_this4","_this5","Mutation","getDefaultState","restored","_this$options$retry","reducer","MutationCache","pausedMutations","infiniteQueryBehavior","_context$fetchOptions3","_context$fetchOptions4","_context$state$data","_context$state$data2","refetchPage","fetchMore","pageParam","isFetchingNextPage","isFetchingPreviousPage","oldPages","oldPageParams","abortSignal","newPageParams","cancelled","queryFn","buildNewPages","pages","param","page","previous","fetchPage","manual","queryFnResult","promiseAsAny","getNextPageParam","_manual","_param","getPreviousPageParam","shouldFetchFirstPage","shouldFetchNextPage","_param2","finalPromise","finalPromiseAsAny","QueryClient","_this$unsubscribeFocu","_this$unsubscribeOnli","_this$queryCache$find","queryKeyOrFilters","parsedOptions","defaultedOptions","_this$queryCache$find2","queryCache","_parseFilterArgs3","refetchFilters","_parseFilterArgs4","_parseFilterArgs4$","promises","_filters$refetchActiv","_filters$refetchInact","_parseFilterArgs5","_this6","_parseFilterArgs6","_this7","_this$queryDefaults$f","_this$mutationDefault","QueryObserver","shouldFetchOnMount","shouldFetchOn","notifyOptions","prevOptions","prevQuery","shouldFetchOptionally","nextRefetchInterval","trackedResult","trackProp","unsubscribe","time","_this$options$refetch","nextInterval","prevResult","prevResultState","prevResultOptions","queryChange","queryInitialState","prevQueryResult","dataUpdatedAt","errorUpdatedAt","isFetching","isPreviousData","isPlaceholderData","fetchOnMount","fetchOptionally","selectError","placeholderData","isStale","notifyOnChangeProps","notifyOnChangePropsExclusions","includedProps","typedKey","changed","isIncluded","isExcluded","defaultNotifyOptions","_this8","shouldLoadOnMount","field","MutationObserver","_this$currentMutation","variables","unstable_batchedUpdates","ReactDOM","defaultContext","QueryClientSharingContext","getQueryClientContext","contextSharing","useQueryClient","queryClient","QueryClientProvider","_ref$contextSharing","createValue","_isReset","QueryErrorResetBoundaryContext","useQueryErrorResetBoundary","shouldThrowError","suspense","_useErrorBoundary","params","useMutation","mountedRef","forceUpdate","obsRef","currentResult","mutate","mutateOptions","useBaseQuery","Observer","errorResetBoundary","useQuery","devtoolsModule","Action","readOnly","BeforeUnloadEventType","PopStateEventType","createBrowserHistory","_options$window","globalHistory","getIndexAndLocation","_window$location","pathname","search","blockedPopTx","handlePop","blockers","nextAction","_getIndexAndLocation","nextIndex","nextLocation","delta","go","applyTx","_getIndexAndLocation2","location","createEvents","createHref","to","createPath","getNextLocation","parsePath","createKey","getHistoryStateAndUrl","allowTx","_getIndexAndLocation3","push","_getHistoryStateAndUr","historyState","replace","_getHistoryStateAndUr2","history","blocker","unblock","promptBeforeUnload","handlers","_ref$pathname","_ref$search","_ref$hash","parsedPath","hashIndex","searchIndex","NavigationContext","LocationContext","RouteContext","invariant","cond","message","matchRoutes","routes","locationArg","basename","stripBasename","branches","flattenRoutes","rankRouteBranches","matchRouteBranch","parentsMeta","parentPath","route","meta","joinPaths","routesMeta","computeScore","compareIndexes","paramRe","dynamicSegmentValue","indexRouteValue","emptySegmentValue","staticSegmentValue","splatPenalty","isSplat","segments","initialScore","score","segment","branch","matchedParams","matchedPathname","remainingPathname","match","matchPath","normalizePathname","pattern","matcher","paramNames","compilePath","pathnameBase","captureGroups","memo","paramName","splatValue","safelyDecodeURIComponent","caseSensitive","regexpSource","resolvePath","fromPathname","toPathname","resolvePathname","normalizeSearch","normalizeHash","relativePath","resolveTo","toArg","routePathnames","locationPathname","routePathnameIndex","toSegments","nextChar","useInRouterContext","useLocation","useNavigate","navigator","routePathnamesJson","activeRef","OutletContext","useOutlet","outlet","createElement","useParams","routeMatch","useRoutes","parentMatches","parentParams","parentPathnameBase","locationFromContext","_parsedLocationArg$pa","parsedLocationArg","_renderMatches","Outlet","Route","_props","Router","basenameProp","locationProp","navigationType","staticProp","navigationContext","trailingPathname","Routes","createRoutesFromChildren","Children","isValidElement","BrowserRouter","historyRef","useSearchParams","defaultInit","defaultSearchParamsRef","createSearchParams","searchParams","navigate","setSearchParams","nextInit","navigateOptions","init","shallow","objA","objB","keysA","bind","thisArg","toString","kindOf","thing","kindOfTest","typeOfTest","isUndefined","isBuffer","isArrayBuffer","isArrayBufferView","isBoolean","prototype","isDate","isFile","isBlob","isFileList","isStream","isFormData","kind","isURLSearchParams","isReadableStream","isRequest","isResponse","isHeaders","trim","forEach","allOwnKeys","findKey","_global","isContextDefined","caseless","assignValue","targetKey","extend","stripBOM","inherits","constructor","superConstructor","descriptors","toFlatObject","sourceObj","destObj","propFilter","endsWith","searchString","isTypedArray","TypedArray","forEachEntry","iterator","pair","matchAll","regExp","isHTMLForm","toCamelCase","p1","p2","hasOwnProperty","isRegExp","reduceDescriptors","reducedDescriptors","freezeMethods","toObjectSet","arrayOrString","delimiter","define","toFiniteNumber","ALPHA","DIGIT","ALPHABET","generateString","alphabet","length","isSpecCompliantForm","toJSONObject","stack","visit","reducedValue","isAsyncFn","isThenable","_setImmediate","setImmediateSupported","postMessageSupported","token","callbacks","asap","utils$1","AxiosError","code","request","utils","customProps","axiosError","httpAdapter","isVisitable","removeBrackets","renderKey","dots","isFlatArray","predicates","toFormData","formData","option","metaTokens","visitor","defaultVisitor","indexes","useBlob","convertValue","exposedHelpers","build","encode","charMap","AxiosURLSearchParams","encoder","_encode","buildURL","serializeFn","serializedParams","hashmarkIndex","InterceptorManager","fulfilled","rejected","transitionalDefaults","URLSearchParams$1","FormData$1","Blob$1","platform$1","URLSearchParams","FormData","Blob","hasBrowserEnv","_navigator","hasStandardBrowserEnv","hasStandardBrowserWebWorkerEnv","origin","platform","toURLEncodedForm","helpers","parsePropPath","arrayToObject","formDataToJSON","buildPath","isNumericKey","isLast","stringifySafely","parser","headers","contentType","hasJSONContentType","isObjectPayload","_FormData","transitional","forcedJSONParsing","JSONRequested","strictJSONParsing","ignoreDuplicateOf","parseHeaders","rawHeaders","parsed","line","$internals","normalizeHeader","header","normalizeValue","parseTokens","tokens","tokensRE","isValidHeaderName","matchHeaderValue","isHeaderNameFilter","formatHeader","buildAccessors","accessorName","methodName","AxiosHeaders","valueOrRewrite","rewrite","self","setHeader","_header","_rewrite","lHeader","setHeaders","deleted","deleteHeader","format","normalized","asStrings","computed","accessors","defineAccessor","mapped","headerValue","transformData","isCancel","CanceledError","settle","validateStatus","parseProtocol","speedometer","samplesCount","bytes","timestamps","head","tail","firstSampleTS","chunkLength","startedAt","bytesCount","passed","throttle","freq","timestamp","threshold","lastArgs","timer","invoke","progressEventReducer","isDownloadStream","bytesNotified","_speedometer","loaded","total","progressBytes","rate","inRange","progressEventDecorator","throttled","lengthComputable","asyncDecorator","isURLSameOrigin","isMSIE","cookies","expires","domain","secure","cookie","isAbsoluteURL","combineURLs","baseURL","relativeURL","buildFullPath","requestedURL","headersToObject","mergeConfig","config1","config2","getMergedValue","mergeDeepProperties","valueFromConfig2","defaultToConfig2","mergeDirectKeys","mergeMap","configValue","resolveConfig","newConfig","withXSRFToken","xsrfHeaderName","xsrfCookieName","auth","xsrfValue","isXHRAdapterSupported","xhrAdapter","_config","requestData","requestHeaders","responseType","onUploadProgress","onDownloadProgress","onCanceled","uploadThrottled","downloadThrottled","flushUpload","flushDownload","done","onloadend","responseHeaders","timeoutErrorMessage","cancel","protocol","composeSignals","signals","controller","aborted","onabort","reason","signal","streamChunk","chunk","chunkSize","pos","readBytes","iterable","readStream","stream","reader","trackStream","onProgress","onFinish","_onFinish","loadedBytes","isFetchSupported","isReadableStreamSupported","encodeText","test","supportsRequestStream","duplexAccessed","hasContentType","DEFAULT_CHUNK_SIZE","supportsResponseStream","resolvers","getBodyLength","resolveBodyLength","fetchAdapter","cancelToken","withCredentials","composedSignal","requestContentLength","_request","contentTypeHeader","flush","isCredentialsSupported","isStreamResponse","responseContentLength","responseData","knownAdapters","renderReason","isResolvedHandle","adapter","adapters","nameOrAdapter","rejectedReasons","reasons","throwIfCancellationRequested","dispatchRequest","VERSION","validators","deprecatedWarnings","validator","version","formatMessage","opt","desc","opts","correctSpelling","assertOptions","schema","allowUnknown","Axios","instanceConfig","configOrUrl","dummy","paramsSerializer","contextHeaders","requestInterceptorChain","synchronousRequestInterceptors","interceptor","responseInterceptorChain","chain","onFulfilled","onRejected","fullPath","generateHTTPMethod","isForm","CancelToken","executor","resolvePromise","onfulfilled","_resolve","abort","spread","isAxiosError","payload","HttpStatusCode","createInstance","defaultConfig","axios","getReports","tenantDomain","getEmbeddedConfig","entityId","reportId","logUsage","entityTreeId","logPageView","usageId","pageName","getExportFile","bookmark","time30Minutes","queries","useReports","useEmbeddedConfig","useLogUsage","createStore","createState","partial","nextState","previousState","getState","subscribeWithSelector","equalityFn","currentSlice","listenerToAdd","nextSlice","previousSlice","api","isSSR","create","useStore","stateRef","selectorRef","equalityFnRef","erroredRef","currentSliceRef","newStateSlice","hasNewStateSlice","stateBeforeSubscriptionRef","nextStateSlice","sliceToReturn","useDebugValue","useGlobalStore","set","isSignIn","tenantName","selectedEntity","selectedReport","useMounted","isMounted","useUpdatedRef","valueRef","useWillUnmount","onUnmount","MAX_DELAY_MS","setChainedTimeout","handleRef","timeoutAtMs","delayMs","useTimeout","clear","warning","warning_1","useUncontrolledProp","propValue","wasPropRef","stateValue","isProp","wasProp","toFnRef","refA","refB","useMergedRefs","hasOwn","classes","argType","inner","module","has","find","iter","tar","dequal","foo","bar","tmp","useSafeState","_excluded","disabledApplyStylesModifier","ariaDescribedByModifier","ids","_popper$getAttribute","EMPTY_MODIFIERS","usePopper","referenceElement","popperElement","enabled","prevModifiers","popperInstanceRef","update","_popperInstanceRef$cu","_popperInstanceRef$cu2","updateModifier","nextModifiers","canUseDOM","optionsSupported","onceSupported","addEventListener","eventName","once","capture","wrappedHandler","onceHandler","removeEventListener","listen","useCommittedRef","useEventCallback","isLeftClickEvent","isModifiedEvent","getRefTarget","InitialTriggerEvents","onClickOutside","clickTrigger","preventMouseClickOutsideRef","waitingForTrigger","handleMouseCapture","handleInitialMouse","handleMouse","_ownerWindow$event","_ownerWindow$parent","ownerWindow","currentEvent","removeInitialTriggerListener","removeMouseCaptureListener","removeMouseListener","mobileSafariHackListeners","isEscKey","useRootClose","onRootClose","handleKeyUp","removeKeyupListener","useWindow","resolveContainerRef","document","useWaitForDOMRef","onResolved","resolvedRef","setRef","earlyRef","nextRef","toModifierMap","toModifierArray","mergeOptionsWithPopperConfig","enableEvents","fixed","containerPadding","popperConfig","_modifiers$eventListe","_modifiers$preventOve","_modifiers$preventOve2","_modifiers$offset","_modifiers$arrow","isReactNative","isDOM","useIsomorphicEffect","NoopTransition","inProp","onExited","mountOnEnter","unmountOnExit","hasEnteredRef","handleExited","combinedRef","useTransition","onTransition","isInitialRef","handleTransition","ImperativeTransition","onEntered","exited","setExited","renderTransition","Component","runTransition","_jsx","Overlay","outerRef","Transition","rootElement","attachRef","attachArrowRef","handleHidden","mountOverlay","onExit","onExiting","onEnter","onEntering","hasClass","DEFAULT_BREAKPOINTS","React.createContext","useBootstrapPrefix","defaultPrefix","prefixes","useIsRTL","dir","rHyphen","camelize","chr","pascalCase","createWithBsPrefix","BsComponent","bsPrefix","resolvedPrefix","PopoverHeader","PopoverBody","getOverlayDirection","isRTL","bsDirection","arrowProps","_1","decoratedBsPrefix","primaryPlacement","_jsxs","Popover$1","useOverlayOffset","customOffset","overlayRef","popoverClass","TransitionGroupContext","forceReflow","UNMOUNTED","EXITED","ENTERING","ENTERED","EXITING","_React$Component","parentGroup","appear","initialStatus","prevState","nextIn","nextStatus","exit","enter","mounting","appearing","maybeNode","maybeAppearing","timeouts","enterTimeout","doesNotHaveTimeoutOrListener","maybeNextCallback","_this$props","psuedoElement","rUpper","hyphenate","msPattern","hyphenateStyleName","supportedTransforms","isTransform","triggerEvent","bubbles","cancelable","parseDuration","mult","emulateTransitionEnd","called","handle","transitionEnd","removeEmulate","transitionEndListener","triggerBrowserReflow","safeFindDOMNode","componentOrElement","TransitionWrapper","addEndListener","childRef","nodeRef","normalize","handleEnter","handleEntering","handleEntered","handleExit","handleExiting","handleAddEndListener","innerProps","fadeStyles","Fade","transitionClasses","isAppearing","React.cloneElement","wrapRefs","aRef","overlay","outerProps","popperRef","actualTransition","BaseOverlay","overlayProps","popperObj","_popperObj$state","_popperObj$state$modi","updatedPlacement","normalizeDelay","handleMouseOverOut","relatedNative","related","OverlayTrigger","propsShow","defaultShow","propsDelay","triggerNodeRef","hoverStateRef","setShow","React.Children","handleShow","handleHide","handleFocus","handleBlur","handleClick","handleMouseOver","handleMouseOut","triggers","_Fragment","SelectedListItem","OverflowText","TooltipDiv","LeftPanel","entities","setSelectedEntity","setSelectedReport","onEntitySelected","report","targetUrl","onReportSelected","jsxs","jsx","FileDataPrefix","enterFullScreen","isFullScreen","ele","exitFullScreen","GlobalFooter","appLinks","getHeaderEnv","headerEnv","getLogoURL","rootUrl","gotoMyservice","logoLink","__webpack_require__","definition","__webpack_exports__","AbortException","AnnotationEditorLayer","AnnotationEditorParamsType","AnnotationEditorType","AnnotationEditorUIManager","AnnotationLayer","AnnotationMode","CMapCompressionType","ColorPicker","DOMSVGFactory","DrawLayer","util_FeatureTest","GlobalWorkerOptions","util_ImageKind","InvalidPDFException","MissingPDFException","OPS","Outliner","PDFDataRangeTransport","PDFDateString","PDFWorker","PasswordResponses","PermissionFlag","PixelsPerInch","RenderingCancelledException","TextLayer","UnexpectedResponseException","Util","VerbosityLevel","XfaLayer","createValidAbsoluteUrl","fetchData","getFilenameFromUrl","getPdfFilenameFromUrl","getXfaPageViewport","isDataScheme","isPdfFile","noContextMenu","normalizeUnicode","renderTextLayer","setLayerDimensions","updateTextLayer","isNodeJS","IDENTITY_MATRIX","FONT_IDENTITY_MATRIX","MAX_IMAGE_SIZE_TO_CACHE","LINE_FACTOR","RenderingIntentFlag","AnnotationEditorPrefix","TextRenderingMode","AnnotationType","AnnotationBorderStyleType","verbosity","setVerbosityLevel","level","getVerbosityLevel","info","msg","warn","unreachable","assert","_isValidProtocol","stringToUTF8String","absoluteUrl","nonSerializable","BaseException","PasswordException","UnknownErrorException","FormatError","bytesToString","MAX_ARGUMENT_COUNT","strBuf","chunkEnd","stringToBytes","string32","objectFromMap","isLittleEndian","buffer8","isEvalSupported","hexNumbers","minMax","temp","m1","m2","xt","yt","p3","p4","transpose","second","sx","sy","rect1","rect2","xLow","xHigh","yLow","yHigh","x0","y0","x1","y1","x2","y2","x3","y3","__privateMethod","_Util_static","getExtremum_fn","getExtremumOnCurve_fn","mt","tt","ttt","sqrtDelta","a2","__privateAdd","NormalizeRegex","NormalizationMap","getUuid","buf","AnnotationPrefix","FontRenderOps","BaseFilterFactory","maps","fgColor","bgColor","filterName","newFgColor","newBgColor","keepHCM","_BaseCanvasFactory","enableHWA","_enableHWA","__privateSet","canvas","__privateGet","canvasAndContext","BaseCanvasFactory","BaseCMapReaderFactory","isCompressed","compressionType","BaseStandardFontDataFactory","filename","BaseSVGFactory","skipDimensions","SVG_NS","_PixelsPerInch","__publicField","DOMFilterFactory","docId","_DOMFilterFactory_instances","__cache","__defs","_docId","_document","__hcmCache","_id","cache_get","tableR","tableG","tableB","createTables_fn","__privateWrapper","createFilter_fn","addTransferMapConversion_fn","hcmCache_get","fgRGB","getRGB_fn","bgRGB","defs_get","table","addGrayConversion_fn","getSteps","tableA","addTransferMapAlphaConversion_fn","addLuminosityConversion_fn","fgGray","bgGray","newFgRGB","newBgRGB","newStart","newStep","prev","mapR","mapG","mapB","bufferR","bufferG","bufferB","feColorMatrix","appendFeFunc_fn","feComponentTransfer","feFunc","rTable","gTable","bTable","aTable","getRGB","DOMCanvasFactory","isValidFetchUrl","DOMCMapReaderFactory","DOMStandardFontDataFactory","PageViewport","rotation","dontFlip","centerX","centerY","rotateA","rotateB","rotateC","rotateD","offsetCanvasX","offsetCanvasY","topLeft","bottomRight","extraDelay","defaultFilename","reURI","reFilename","splitURI","suggestedFilename","StatTimer","outBuf","longest","deprecated","pdfDateStringRegex","year","month","day","hour","minute","universalTimeRelation","offsetHour","offsetMinute","xfaPage","colorRGB","getColorValues","span","computedColor","getCurrentTransform","ctx","getCurrentTransformInverse","mustFlip","mustRotate","pageWidth","pageHeight","useRound","widthStr","heightStr","_EditorToolbar","editor","_EditorToolbar_instances","_toolbar","_colorPicker","_editor","_buttons","editToolbar","_EditorToolbar_static","pointerDown_fn","buttons","addDeleteButton_fn","button","addListenersToElement_fn","divider_get","colorPicker","focusIn_fn","focusOut_fn","divider","EditorToolbar","HighlightToolbar","uiManager","_HighlightToolbar_instances","_uiManager","boxes","isLTR","getLastPoint_fn","render_fn","addHighlightButton_fn","lastY","lastX","bindEvents","opacityToHex","IdManager","_ImageManager","_ImageManager_instances","_baseId","_cache","image","file","lastModified","get_fn","rawData","mustRemoveAspectRatioPromise","fileReader","imageElement","imagePromise","ImageManager","CommandManager","maxSize","_commands","_locked","_maxSize","_position","cmd","undo","post","mustExec","overwriteIfSameType","keepUndo","save","KeyboardManager","_KeyboardManager_instances","isMac","isMacKey","serialize_fn","checker","_ColorManager","rgb","RGB","ColorManager","_AnnotationEditorUIManager","viewer","altTextManager","eventBus","pdfDocument","pageColors","highlightColors","enableHighlightFloatingButton","mlManager","_AnnotationEditorUIManager_instances","_abortController","_activeEditor","_allEditors","_allLayers","_altTextManager","_annotationStorage","_changedExistingAnnotations","_commandManager","_currentPageIndex","_deletedAnnotationsElementIds","_draggingEditors","_editorTypes","_editorsToRescale","_enableHighlightFloatingButton","_filterFactory","_focusMainContainerTimeoutId","_highlightColors","_highlightWhenShiftUp","_highlightToolbar","_idManager","_isEnabled","_isWaiting","_lastActiveElement","_mainHighlightColorPicker","_mlManager","_mode","_selectedEditors","_selectedTextNode","_pageColors","_showAllStates","_boundBlur","_boundFocus","_boundCopy","_boundCut","_boundPaste","_boundKeydown","_boundKeyup","_boundOnEditingAction","_boundOnPageChanging","_boundOnScaleChanging","_boundOnRotationChanging","_previousStates","_translation","_translationTimeoutId","_container","_viewer","addSelectionListener_fn","addDragAndDropListeners_fn","addKeyboardManager_fn","proto","arrowChecker","textInputChecker","_self","small","big","layer","pageNumber","layerX","layerY","pagesRotation","methodOfCreation","selection","anchorNode","anchorOffset","focusOffset","textLayer","getAnchorElementForSelection_fn","onSelectEnd_fn","lastEditor","lastActiveElement","addCopyPasteListeners_fn","removeKeyboardManager_fn","removeCopyPasteListeners_fn","editorType","editors","serialized","clipboardData","ex","newEditors","deserializedEditor","addEditorToLayer_fn","selectEditors_fn","isEditing","addFocusManager_fn","dispatchUpdateStates_fn","isEmpty_fn","removeFocusManager_fn","types","dispatchUpdateUI_fn","pageIndex","mode","editId","isFromKeyboard","disableAll_fn","enableAll_fn","updateButton","mustWait","annotationElementId","lastSelectedEditor_get","noCommit","totalX","totalY","TIME_TO_WAIT","mustBeAddedInUndoStack","move","newX","newY","newPageIndex","savedX","savedY","savedPageIndex","tx","ty","parentWidth","parentHeight","rotator","range","annotation","editorId","displayHighlightToolbar_fn","selectionChange_fn","pointerup","_AltText","_AltText_instances","_altText","_altTextDecorative","_altTextButton","_altTextTooltip","_altTextTooltipTimeout","_altTextWasFromKeyBoard","l10nPromise","altText","setState_fn","decorative","tooltip","DELAY_TO_SHOW_TOOLTIP","AltText","_AnnotationEditor","parameters","_AnnotationEditor_instances","_accessibilityData","_allResizerDivs","_disabled","_keepAspectRatio","_resizersDiv","_savedDimensions","_boundFocusin","_boundFocusout","_editToolbar","_focusedResizerName","_hasBeenClicked","_initialPosition","_isEditing","_isInEditMode","_isResizerEnabledForKeyboard","_moveInDOMTimeout","_prevDragX","_prevDragY","_telemetryTimeouts","_isDraggable","_zIndex","pageX","pageY","fakeEditor","FakeEditor","l10n","_type","mime","stopResizing_fn","translate_fn","bx","by","_borderLineWidth","_AnnotationEditor_static","rotatePoint_fn","parentScale","scaledWidth","scaledHeight","widthPercent","heightPercent","setUpDragSession_fn","selectOnPointerEvent_fn","shiftX","shiftY","_angle","isForCopying","createResizers_fn","boundResizerKeydown","resizerKeydown_fn","boundResizerBlur","resizerBlur_fn","resizerFocus_fn","firstPosition","nextFirstPosition","setResizerTabIndex_fn","resizerPointermove_fn","aspectRatio","firstChild","angle","getRotationMatrix_fn","resizerPointerdown_fn","boundResizerPointermove","savedDraggable","pointerMoveOptions","savedWidth","savedHeight","savedParentCursor","savedCursor","pointerUpCallback","addResizeToUndoStack_fn","newWidth","newHeight","rotationMatrix","transf","invRotationMatrix","invTransf","getPoint","getOpposite","isDiagonal","isHorizontal","point","oppositePoint","transfOppositePoint","oppositeX","oppositeY","ratioX","ratioY","deltaX","deltaY","oldDiag","pointerMoveCallback","AnnotationEditor","SEED","MASK_HIGH","MASK_LOW","MurmurHash3_64","seed","blockCounts","tailLength","dataUint32","k1","k2","h1","h2","C1","C2","C1_LOW","C2_LOW","SerializableEmpty","AnnotationStorage","_AnnotationStorage_instances","_modified","_storage","modified","setModified_fn","PrintAnnotationStorage","transfer","hasBitmap","stats","typeToEditor","editorStats","counters","_serializable","clone","FontLoader","styleElement","_systemFonts","nativeFontFace","rule","styleSheet","_inspectFont","loadedName","fontFace","font","hasFonts","supported","completeRequest","loadingRequests","otherRequest","testFont","int32","spliceString","insert","chunk1","chunk2","isFontReady","loadTestFontId","CFF_CHECKSUM_OFFSET","XXXX_VALUE","checksum","FontFaceObject","translatedData","disableFontFace","inspectFont","objs","character","cmds","commands","packageCapability","packageMap","fs","__vitePreload","https","path2d","NodePackages","node_utils_fetchData","NodeFilterFactory","NodeCanvasFactory","NodeCMapReaderFactory","NodeStandardFontDataFactory","PathType","applyBoundingBox","bbox","region","BaseShadingPattern","RadialAxialShadingPattern","IR","grad","colorStop","owner","inverse","pathType","ownerBBox","tmpCanvas","tmpCtx","domMatrix","drawTriangle","c1","c2","c3","coords","rowSize","c1r","c1g","c1b","c2r","c2g","c2b","c3r","c3g","c3b","minY","maxY","car","cag","cab","cbr","cbg","cbb","x1_","x2_","drawFigure","figure","ps","verticesPerRow","rows","cols","MeshShadingPattern","combinedScale","cachedCanvases","boundsWidth","boundsHeight","paddedWidth","paddedHeight","matrixScale","temporaryPatternCanvas","DummyShadingPattern","getShadingPattern","PaintType","_TilingPattern","canvasGraphicsFactory","baseTransform","operatorList","xstep","ystep","paintType","tilingType","curMatrixScale","dimx","dimy","graphics","adjustedX0","adjustedY0","adjustedX1","adjustedY1","realOutputSize","bboxWidth","bboxHeight","cssColor","matrix","TilingPattern","convertBlackAndWhiteToRGBA","srcPos","dest","nonBlackColor","inverseDecode","black","zeroMapping","oneMapping","widthInSource","widthRemainder","srcLength","destPos","elem","MIN_FONT_SIZE","MAX_FONT_SIZE","EXECUTION_TIME","EXECUTION_STEPS","MAX_SIZE_TO_COMPILE","FULL_CHUNK_HEIGHT","mirrorContextOperations","destCtx","cp1x","cp1y","cp2x","cp2y","CachedCanvases","canvasFactory","canvasEntry","drawImageAtIntegerCoords","srcImg","srcX","srcY","srcW","srcH","destX","destY","destW","destH","tlX","rTlX","tlY","rTlY","brX","rWidth","brY","rHeight","compileType3Glyph","imgData","POINT_TO_PROCESS_LIMIT","POINT_TYPES","width1","points","j0","lineSize","mask","sum","steps","p0","pp","CanvasExtraState","xStrokePad","yStrokePad","intersect","putBinaryImageData","partialChunkHeight","fullChunks","totalChunks","chunkImgData","thisChunkHeight","elemsInThisChunk","dest32","dest32DataLength","fullSrcDiff","white","srcDiff","kEnd","kEndUnrolled","srcByte","putBinaryImageMask","copyCtxState","sourceCtx","resetCtxToDefault","getImageSmoothingEnabled","interpolate","actualScale","LINE_CAP_STYLES","LINE_JOIN_STYLES","NORMAL_CLIP","EO_CLIP","_CanvasGraphics","canvasCtx","commonObjs","filterFactory","optionalContentConfig","markedContentStack","annotationCanvasMap","_CanvasGraphics_instances","fallback","transparency","savedFillStyle","transparentCanvas","executionStartIdx","continueCallback","stepper","argsArray","fnArray","argsArrayLen","chunkOperations","endTime","fnId","depObjId","objsPool","restoreInitialState_fn","drawFilter_fn","img","inverseTransform","widthScale","heightScale","paintWidth","paintHeight","tmpCanvasId","fillColor","isPatternFill","currentTransform","scaled","maskCanvas","mainKey","cachedImage","maskToCanvas","minX","maxX","drawnWidth","drawnHeight","fillCanvas","fillCtx","limit","dashArray","dashPhase","intent","flatness","inSMaskMode","cacheId","scratchCanvas","dirtyBox","smask","suspendedCtx","layerCtx","layerBox","layerOffsetX","layerOffsetY","layerWidth","layerHeight","maskCtx","subtype","backdrop","transferMap","maskOffsetX","maskOffsetY","maskX","maskY","clip","old","ops","startX","startY","isScalingMatrix","minMaxForBezier","xw","consumePath","strokeColor","needRestore","spacing","leading","fontRefName","fontObj","typeface","bold","italic","browserFontSize","rise","patternTransform","textRenderingMode","fillStrokeMode","isAddToPathSet","patternFill","addToPath","glyphs","fontSizeScale","charSpacing","wordSpacing","fontDirection","textHScale","glyphsLength","vertical","spacingDir","defaultVMetrics","widthAdvanceScale","simpleFillText","lineWidth","chars","glyph","restoreNeeded","accent","scaledX","scaledY","vmetric","vx","vy","measuredWidth","characterScaleX","scaledAccentX","scaledAccentY","charWidth","fontMatrix","isTextInvisible","spacingLength","xWidth","yWidth","llx","lly","urx","ury","objId","inv","currentCtx","bounds","canvasBounds","groupCtx","currentMtx","hasOwnCanvas","viewportScale","canvasWidth","canvasHeight","positions","trans","images","bitmap","imgToPaint","clipBox","isEmpty","absDet","normX","normY","scaledLineWidth","scaledXLineWidth","scaledYLineWidth","baseArea","saveRestore","dashes","hcmFilterId","savedFilter","CanvasGraphics","op","_port","_src","CallbackKind","StreamKind","wrapReason","MessageHandler","sourceName","targetName","comObj","_MessageHandler_instances","processStreamMessage_fn","callbackId","capability","cbSourceName","cbTargetName","createStreamSink_fn","actionName","transfers","queueingStrategy","streamId","startCapability","pullCapability","cancelCapability","streamSink","lastDesiredSize","streamController","deleteStreamController_fn","Metadata","parsedData","_metadataMap","_data","INTERNAL","OptionalContentGroup","renderingIntent","usage","_isDisplay","_isPrint","_userSet","_visible","print","view","internal","userSet","OptionalContentConfig","_OptionalContentConfig_instances","_cachedGetHash","_groups","_initialHash","_order","off","evaluateVisibilityExpression_fn","preserveRB","operator","PDFDataTransportStream","pdfDataRangeTransport","disableRange","disableStream","initialData","progressiveDone","contentDispositionFilename","begin","found","rangeReader","evt","queuedChunks","PDFDataTransportStreamReader","PDFDataTransportStreamRangeReader","requestCapability","getFilenameFromContentDispositionHeader","contentDisposition","needsEncodingFixup","toParamRegExp","rfc2616unquote","rfc5987decode","rfc2047decode","fixupEncoding","rfc2231getparam","attributePattern","flags","textdecode","encoding","decoder","contentDispositionStr","quot","quotindex","extvalue","encodingend","charset","validateRangeRequestCapabilities","getResponseHeader","isHttp","rangeChunkSize","returnValues","extractFilenameFromHeader","createResponseStatusError","validateResponseStatus","createFetchOptions","createHeaders","httpHeaders","getArrayBuffer","PDFFetchStream","PDFFetchStreamReader","PDFFetchStreamRangeReader","allowRangeRequests","suggestedLength","OK_RESPONSE","PARTIAL_CONTENT_RESPONSE","network_getArrayBuffer","xhr","NetworkManager","xhrId","pendingRequest","xhrStatus","rangeHeader","PDFNetworkStream","PDFNetworkStreamFullRequestReader","PDFNetworkStreamRangeRequestReader","fullRequestXhrId","fullRequestXhr","fileUriRegex","parseUrl","sourceUrl","parsedUrl","PDFNodeStream","PDFNodeStreamFsFullReader","PDFNodeStreamFullReader","PDFNodeStreamFsRangeReader","PDFNodeStreamRangeReader","BaseFullReader","readableStream","BaseRangeReader","createRequestOptions","handleResponse","stat","MAX_TEXT_DIVS_TO_RENDER","DEFAULT_FONT_SIZE","DEFAULT_FONT_ASCENT","TextLayer$1","textContentSource","_TextLayer_instances","_capability","_disableProcessItems","_fontInspectorEnabled","_lang","_layoutTextParams","_pageHeight","_pageWidth","_reader","_rootContainer","_rotation","_scale","_styleCache","_textContentItemsStr","_textContentSource","_textDivs","_textDivProperties","_transform","_TextLayer_static","ensureMinFontSizeComputed_fn","_pendingTextLayers","pump","processItems_fn","onBefore","getCtx_fn","layout_fn","abortEx","_ascentCache","_canvasContexts","_minFontSize","textDivs","textContentItemsStr","appendText_fn","geom","textDiv","textDivProperties","fontHeight","fontAscent","getAscent_fn","scaleFactorStr","divStyle","shouldScaleText","absScaleX","absScaleY","br","prevFontSize","prevFontFamily","lang","canvasContext","cachedAscent","savedFont","metrics","ascent","descent","ratio","pixels","restKeys","XfaText","xfa","walk","DEFAULT_RANGE_CHUNK_SIZE","RENDERING_CANCELLED_TIMEOUT","DELAYED_CLEANUP_TIMEOUT","DefaultCanvasFactory","DefaultCMapReaderFactory","DefaultFilterFactory","DefaultStandardFontDataFactory","task","PDFDocumentLoadingTask","getUrlProp","getDataProp","password","rangeTransport","worker","docBaseUrl","cMapUrl","cMapPacked","CMapReaderFactory","standardFontDataUrl","StandardFontDataFactory","ignoreErrors","maxImageSize","isOffscreenCanvasSupported","canvasMaxAreaInBytes","fontExtraProperties","enableXfa","disableAutoFetch","pdfBug","useSystemFonts","useWorkerFetch","transportFactory","workerParams","docParams","transportParams","workerIdPromise","networkStream","workerId","messageHandler","transport","WorkerTransport","isRefProxy","_PDFDocumentLoadingTask","PDFDataRangeTransport$1","PDFDocumentProxy","pdfInfo","keepLoadedFonts","PDFPageProxy","pageInfo","_PDFPageProxy_instances","_delayedCleanupTimeout","_pendingCleanup","PDFObjects","annotationMode","optionalContentConfigPromise","printAnnotationStorage","intentArgs","abortDelayedCleanup_fn","intentState","intentPrint","complete","internalRenderTask","tryCleanup_fn","InternalRenderTask","renderTask","operatorListChanged","opListTask","includeMarkedContent","disableNormalization","textContent","waitOn","resetStats","success","operatorListChunk","annotationStorageSerializable","force","curCacheKey","curIntentState","delayed","renderTasks","LoopbackPort","_listeners","_deferred","PDFWorkerUtil","otherUrl","other","wrapper","_PDFWorker","port","_PDFWorker_instances","_workerPorts","resolve_fn","_PDFWorker_static","mainThreadWorkerMessageHandler_get","workerSrc","terminateEarly","sendTest","testObj","WorkerMessageHandler","workerHandler","cachedPort","loadingTask","factory","_WorkerTransport_instances","_methodPromises","_pageCache","_pagePromises","_pageRefCache","_passwordCapability","isOpList","terminated","sink","readyReason","headersCapability","fullReader","exception","updatePassword","exportedData","exportedError","imageRef","pageProxy","imageData","cachedPromise","cacheSimpleMethod_fn","results","refStr","INITIAL_DATA","_PDFObjects_instances","_objs","ensureObj_fn","RenderTask","_internalRenderTask","separateAnnots","_InternalRenderTask","useRequestAnimationFrame","_rAF","_canvasInUse","makeColorComp","scaleAndClamp","ColorConverters","storage","storedData","linkService","isHTMLAnchorElement","root","rootHtml","isNotForRichText","rootDiv","childHtml","DEFAULT_TAB_INDEX","annotation_layer_DEFAULT_FONT_SIZE","GetElementsByNameSet","getRectDims","AnnotationElementFactory","LinkAnnotationElement","TextAnnotationElement","TextWidgetAnnotationElement","RadioButtonWidgetAnnotationElement","CheckboxWidgetAnnotationElement","PushButtonWidgetAnnotationElement","ChoiceWidgetAnnotationElement","SignatureWidgetAnnotationElement","WidgetAnnotationElement","PopupAnnotationElement","FreeTextAnnotationElement","LineAnnotationElement","SquareAnnotationElement","CircleAnnotationElement","PolylineAnnotationElement","CaretAnnotationElement","InkAnnotationElement","PolygonAnnotationElement","HighlightAnnotationElement","UnderlineAnnotationElement","SquigglyAnnotationElement","StrikeOutAnnotationElement","StampAnnotationElement","FileAttachmentAnnotationElement","AnnotationElement","_AnnotationElement","isRenderable","ignoreBorder","createQuadrilaterals","_AnnotationElement_instances","_updates","_hasBorder","_popupElement","titleObj","contentsObj","richText","setRectEdited_fn","horizontalRadius","verticalRadius","radius","elementWidth","elementHeight","setColor","jsName","styleName","colorType","colorArray","hidden","actions","jsEvent","commonActions","detail","eventProxy","quadPoints","rectBlX","rectBlY","rectTrX","rectTrY","trX","trY","blX","blY","svgBuffer","svgFactory","defs","clipPath","rectWidth","rectHeight","popup","skipId","fields","fieldObj","exportValues","exportValue","domElement","currentRect","_LinkAnnotationElement_instances","isBound","bindAttachment_fn","bindSetOCGState_fn","destination","setInternalLink_fn","resetForm","otherClickAction","resetFormFields","resetFormRefs","include","allFields","fieldIds","fieldName","allIds","attachment","elementData","baseName","valueGetter","TEXT_ALIGNMENT","fontColor","computedFontSize","BORDER_SIZE","roundToOneDecimal","numberOfLines","isRequired","keyInStorage","fieldFormattedValues","blurListener","formattedValue","charLimit","commitKey","_blurListener","selectionStart","selectionEnd","selStart","selEnd","combWidth","checked","checkbox","curChecked","radio","pdfButtonValue","linkElement","selectElement","addAnEmptyEntry","optionElement","removeEmptyEntry","noneOptionElement","isExport","multiple","selectedValues","getItems","displayValue","selectChild","indices","change","PopupElement","elementIds","modificationDate","parentRect","_PopupElement_instances","_boundKeyDown","keyDown_fn","_boundHide","hide_fn","_boundShow","show_fn","_boundToggle","toggle_fn","_color","_contentsObj","_dateObj","_elements","_parent","_parentRect","_pinned","_popup","_rect","_richText","_titleObj","_wasVisible","baseColor","html_get","contents","lines","popupContent","makePopupContent_fn","fontSize_get","fontColor_get","popupLines","lineAttributes","setPosition_fn","useParentRect","normalizedRect","popupLeft","popupTop","lineSpan","_line","_square","square","_circle","circle","_polyline","vertices","popupRef","polyline","_polylines","inkLists","inkList","_FileAttachmentAnnotationElement_instances","_trigger","download_fn","AnnotationLayer$1","accessibilityManager","annotationEditorUIManager","_AnnotationLayer_instances","_accessibilityManager","_annotationCanvasMap","_editableAnnotations","annotations","popupToElements","elementParams","isPopupAnnotation","rendered","appendElement_fn","setAnnotationCanvasMap_fn","contentElement","EOL_PATTERN","_FreeTextEditor","_FreeTextEditor_instances","_boundEditorDivBlur","_boundEditorDivFocus","_boundEditorDivInput","_boundEditorDivKeydown","_boundEditorDivPaste","_editorDivId","_fontSize","_initialData","updateFontSize_fn","updateColor_fn","savedText","newText","extractText_fn","setText","setContent_fn","setEditorDimensions_fn","baseX","baseY","posX","posY","paste","_FreeTextEditor_static","deserializeContent_fn","startContainer","startOffset","bufferBefore","bufferAfter","getNodeContent_fn","newRange","beforeLength","serializeContent_fn","hasElementChanged_fn","setFontsize","savedFontsize","savedColor","currentLayer","savedDisplay","savedVisibility","FreeTextEditor","innerMargin","_Outliner_instances","_verticalEdges","_intervals","EPSILON","shiftedMinX","shiftedMinY","lastEdge","lastPoint","edge","outlineVerticalEdges","breakEdge_fn","insert_fn","remove_fn","getOutlines_fn","edges","allEdges","edge1","edge2","outlines","lastPointX","lastPointY","HighlightOutline","binarySearch_fn","middle","y4","Outline","_bbox","FreeHighlightOutline","_outlines","polygon","prevX","prevY","_FreeOutliner","scaleFactor","_FreeOutliner_instances","_bottom","_innerMargin","_isLTR","_top","_last","_lastX","_lastY","_min_dist","_scaleFactor","_thickness","_points","_MIN_DIST","_MIN","diffX","diffY","diffD","nX","nY","thX","thY","lastTop","lastBottom","lastTopX","lastTopY","lastBottomX","lastBottomY","getLastCoords_fn","_MIN_DIFF","FreeOutliner","_FreeHighlightOutline_instances","_outline","computeMinMax_fn","rescale_fn","rescaleAndSwap_fn","outliner","ltrCallback","_ColorPicker","_ColorPicker_instances","_boundPointerDown","_button","_buttonSwatch","_defaultColor","_dropdown","_dropdownWasFromKeyboard","_isMainColorPicker","_eventBus","openDropdown_fn","swatch","dropdown","getDropdownRoot_fn","colorSelect_fn","isDropdownVisible_get","_HighlightEditor","_HighlightEditor_instances","_anchorNode","_anchorOffset","_boxes","_clipPathId","_focusOutlines","_focusNode","_focusOffset","_highlightDiv","_highlightOutlines","_isFreeHighlight","keydown_fn","_lastPoint","_opacity","_outlineId","_text","_methodOfCreation","createFreeOutlines_fn","addToDrawLayer_fn","createOutlines_fn","updateThickness_fn","toolbar","getRotation_fn","cleanDrawLayer_fn","mustBeSelected","drawLayer","_HighlightEditor_static","rotateBbox_fn","highlightDiv","setCaret_fn","pointerMove","highlightMove_fn","pointerDownOptions","pointerDown","endHighlight_fn","serializeBoxes_fn","serializeOutlines_fn","outlinerForOutline","highlightOutlines","highlightId","clipPathId","savedThickness","setThickness","changeThickness_fn","HighlightEditor","_InkEditor","_InkEditor_instances","_baseHeight","_baseWidth","_boundCanvasPointermove","_boundCanvasPointerleave","_boundCanvasPointerup","_boundCanvasPointerdown","_canvasContextMenuTimeoutId","_currentPath2D","_disableEditing","_hasSomethingToDraw","_isCanvasInitialized","_observer","_realWidth","_realHeight","_requestFrameCallback","updateOpacity_fn","createCanvas_fn","createObserver_fn","setCanvasDims_fn","fitToContent_fn","startDrawing_fn","draw_fn","endDrawing_fn","getInitialBBox_fn","redraw_fn","roundedWidth","roundedHeight","setScaleFactor_fn","bezier","_InkEditor_static","fromPDFCoordinates_fn","p10","p11","p20","p21","p30","p31","path2D","buildPath2D_fn","getBbox_fn","serializePaths_fn","setOpacity","savedOpacity","parentRotation","setStroke_fn","drawPoints_fn","currentPath","makeBezierCurve_fn","endPath_fn","stopDrawing_fn","generateBezierPoints_fn","xy","lastPoints","bezierPoints","control1","control2","updateTransform_fn","getPadding_fn","scaleFactorW","scaleFactorH","toPDFCoordinates_fn","p40","p41","xMin","xMax","yMin","yMax","firstTime","prevTranslationX","prevTranslationY","unscaledPadding","InkEditor","_StampEditor","_StampEditor_instances","_bitmap","_bitmapId","_bitmapPromise","_bitmapUrl","_bitmapFile","_bitmapFileName","_canvas","_resizeTimeoutId","_isSvg","_hasBeenAddedInUndoStack","getBitmap_fn","bitmapUrl","bitmapId","isSvg","accessibilityData","serializeBitmap_fn","getBitmapFetched_fn","fromId","getBitmapDone_fn","MAX_RATIO","factor","drawBitmap_fn","setDimensions_fn","scaleBitmap_fn","bitmapWidth","bitmapHeight","prevWidth","prevHeight","offscreen","toUrl","StampEditor","_AnnotationEditorLayer","annotationLayer","_AnnotationEditorLayer_instances","_allowClick","_annotationLayer","_boundPointerup","_boundPointerdown","_boundTextLayerPointerDown","_editorFocusTimeoutId","_editors","_hadPointerDown","_isCleaningUp","_isDisabling","_textLayer","editorTypes","cleanup_fn","classList","isCommitting","annotationElementIds","editables","editable","changedAnnotations","resetAnnotations","textLayerPointerDown_fn","currentEditorType_get","getCenterPoint_fn","createNewEditor_fn","isCentered","oldRotation","_DrawLayer","_DrawLayer_instances","_mapping","_toUpdate","isPathUpdatable","createSVG_fn","pathId","createClipPath_fn","use","maskId","use1","use2","_DrawLayer_static","setBox_fn","clipPathUse","__webpack_exports__AbortException","__webpack_exports__AnnotationEditorLayer","__webpack_exports__AnnotationEditorParamsType","__webpack_exports__AnnotationEditorType","__webpack_exports__AnnotationEditorUIManager","__webpack_exports__AnnotationLayer","__webpack_exports__AnnotationMode","__webpack_exports__CMapCompressionType","__webpack_exports__ColorPicker","__webpack_exports__DOMSVGFactory","__webpack_exports__DrawLayer","__webpack_exports__FeatureTest","__webpack_exports__GlobalWorkerOptions","__webpack_exports__ImageKind","__webpack_exports__InvalidPDFException","__webpack_exports__MissingPDFException","__webpack_exports__OPS","__webpack_exports__Outliner","__webpack_exports__PDFDataRangeTransport","__webpack_exports__PDFDateString","__webpack_exports__PDFWorker","__webpack_exports__PasswordResponses","__webpack_exports__PermissionFlag","__webpack_exports__PixelsPerInch","__webpack_exports__RenderingCancelledException","__webpack_exports__TextLayer","__webpack_exports__UnexpectedResponseException","__webpack_exports__Util","__webpack_exports__VerbosityLevel","__webpack_exports__XfaLayer","__webpack_exports__build","__webpack_exports__createValidAbsoluteUrl","__webpack_exports__fetchData","__webpack_exports__getDocument","__webpack_exports__getFilenameFromUrl","__webpack_exports__getPdfFilenameFromUrl","__webpack_exports__getXfaPageViewport","__webpack_exports__isDataScheme","__webpack_exports__isPdfFile","__webpack_exports__noContextMenu","__webpack_exports__normalizeUnicode","__webpack_exports__renderTextLayer","__webpack_exports__setLayerDimensions","__webpack_exports__shadow","__webpack_exports__updateTextLayer","__webpack_exports__version","__spreadArray","pack","ar","clipboardEvents","compositionEvents","focusEvents","formEvents","imageEvents","keyboardEvents","mediaEvents","mouseEvents","dragEvents","selectionEvents","touchEvents","uiEvents","wheelEvents","animationEvents","transitionEvents","otherEvents","changeEvents","allEvents","makeEventProps","getArgs","eventProps","eventHandler","makeCancellablePromise","isCancelled","wrappedPromise","clsx","condition","documentContext","DEFAULT_LINK_REL","LinkService","pdfViewer","externalLinkRel","externalLinkTarget","explicitDest","destRef","newWindow","isLocalFileSystem","variable","isProvided","isDataURI","dataURItoByteString","dataURI","headersString","dataString","getDevicePixelRatio","allowFileAccessFromFilesTip","displayCORSWarning","displayWorkerWarning","cancelRunningTask","runningTask","makePageCallback","isCancelException","loadFromFile","useResolver","__awaiter","_arguments","adopt","__rest","pdfjs","defaultOnPassword","isParameterObject","Document","inputRef","imageResourcesPath","loading","noData","onItemClick","onLoadErrorProps","onLoadProgress","onLoadSuccessProps","onPassword","onSourceErrorProps","onSourceSuccessProps","renderMode","otherProps","sourceState","sourceDispatch","sourceError","pdfState","pdfDispatch","pdf","pdfError","prevFile","useImperativeHandle","onSourceSuccess","onSourceError","resetSource","findDocumentSource","otherParams","fileByteString","cancellable","makeCancellable","nextSource","onLoadSuccess","onLoadError","documentInitParams","destroyable","pdfjs.getDocument","loadingPromise","nextPdf","registerPage","unregisterPage","childContext","renderChildren","DocumentContext","renderContent","useDocumentContext","inputRefs","filteredInputRefs","firstRef","pageContext","PDF_ROLE_TO_HTML_ROLE","HEADING_PATTERN","isPdfRole","isStructTreeNode","isStructTreeNodeWithOnlyContentChild","getRoleAttributes","htmlRole","getBaseAttributes","childAttributes","StructTreeItem","usePageContext","PageContext","StructTree","onGetStructTreeErrorProps","onGetStructTreeSuccessProps","structTreeState","structTreeDispatch","structTree","structTreeError","customTextRenderer","nextStructTree","ANNOTATION_MODE","pdfjs.AnnotationMode","Canvas","_className","canvasBackground","devicePixelRatio","onRenderErrorProps","onRenderSuccessProps","renderForms","canvasRef","canvasElement","onRenderSuccess","onRenderError","renderViewport","renderContext","cleanup","isTextItem","onGetTextError","onGetTextSuccess","onRenderTextLayerError","onRenderTextLayerSuccess","textContentState","textContentDispatch","textContentError","layerElement","endElement","nextTextContent","onMouseUp","pdfjs.TextLayer","layerChildren","itemIndex","onGetAnnotationsErrorProps","onGetAnnotationsSuccessProps","onRenderAnnotationLayerErrorProps","onRenderAnnotationLayerSuccessProps","annotationsState","annotationsDispatch","annotationsError","nextAnnotations","clonedViewport","annotationLayerParameters","renderParameters","pdfjs.AnnotationLayer","defaultScale","Page","_enableRegisterUnregisterPage","CustomRenderer","onGetTextErrorProps","onGetTextSuccessProps","onRenderTextLayerErrorProps","onRenderTextLayerSuccessProps","pageIndexProps","pageNumberProps","renderAnnotationLayerProps","renderTextLayerProps","rotateProps","scaleProps","pageState","pageDispatch","pageError","pageElement","pageScale","scaleWithDefault","nextPage","pageKey","renderMainLayer","renderAnnotationLayer","pdfjs.GlobalWorkerOptions","pdfjs.version","ReactPDF","numPages","setNumPages","pdfData","setPdfData","onDocumentLoadSuccess","PublicLabel","BreadCrumbText","BreadCrumb","ImageWrap","reportData","showImage","setShowImage","this","modules","installedModules","moduleId","ns","global","objectAssign","compare","util","pSlice","functionsHaveNames","pToString","isView","arrbuf","regex","getName","getMessage","stackStartFunction","fail","fn_name","idx","next_line","truncate","inspect","something","rawname","actual","expected","_deepEqual","strict","memos","actualIndex","objEquiv","isArguments","actualVisitedObjects","aIsArgs","bIsArgs","objectKeys","notDeepStrictEqual","expectedException","_tryBlock","block","_throws","shouldThrow","userProvidedMessage","isUnwantedException","isUnexpectedException","HttpPostMessage","windowPostMessageProxy","defaultHeaders","defaultTargetWindow","trackingProperties","targetWindow","nextKey","propIsEnumerable","toObject","shouldUseNative","test1","test2","order2","test3","letter","symbols","__webpack_modules__","__unused_webpack_module","__extends","extendStatics","__","validator_1","TraceType","PageSizeType","DisplayOption","BackgroundType","VisualContainerDisplayMode","LayoutType","HyperlinkClickBehavior","ReportAlignment","SectionVisibility","Permissions","ViewMode","TokenType","ContrastMode","MenuLocation","FiltersOperations","FiltersLevel","FilterType","RelativeDateFilterTimeUnit","RelativeDateOperators","Filter","filterType","NotSupportedFilter","_super","notSupportedTypeName","IncludeExcludeFilter","isExclude","TopNFilter","itemCount","orderBy","RelativeDateFilter","timeUnitsCount","timeUnitType","includeToday","RelativeTimeFilter","BasicFilter","BasicFilterWithKeys","keyValues","numberOfKeys","keyValue","lengthOfArray","IdentityFilter","TupleFilter","AdvancedFilter","logicalOperator","conditions","extractedConditions","HierarchyFilter","hierarchyData","isFilterKeyColumnsTarget","isColumn","isBasicFilterWithKeys","getFilterType","basicFilter","advancedFilter","isMeasure","isHierarchyLevel","isHierarchyLevelAggr","isColumnAggr","isPercentOfGrandTotal","PageNavigationPosition","QnaMode","ExportDataType","BookmarksPlayMode","SortDirection","Selector","PageSelector","VisualSelector","visualName","VisualTypeSelector","visualType","SlicerTargetSelector","CommandDisplayOption","VisualDataRoleKind","VisualDataRoleKindPreference","isOnLoadFilters","isReportFiltersArray","isFlatMenuExtension","menuExtension","isGroupedMenuExtension","isIExtensions","extensions","isIExtensionArray","normalizeError","validateVisualSelector","errors","validateSlicer","validateSlicerState","validatePlayBookmarkRequest","validateAddBookmarkRequest","validateApplyBookmarkByNameRequest","validateApplyBookmarkStateRequest","validateCaptureBookmarkRequest","validateSettings","validatePanes","validateBookmarksPane","validateFiltersPane","validateFieldsPane","validatePageNavigationPane","validateSelectionPane","validateSyncSlicersPane","validateVisualizationsPane","validateCustomPageSize","validateExtension","validateMenuGroupExtension","validateReportLoad","validatePaginatedReportLoad","validateCreateReport","validateDashboardLoad","validateTileLoad","validatePage","validateFilter","validateUpdateFiltersRequest","validateSaveAsParameters","validateLoadQnaConfiguration","validateQnaInterpretInputData","validateExportDataRequest","validateVisualHeader","validateVisualSettings","validateCommandsSettings","validateCustomTheme","validateZoomLevel","barsValidator_1","bookmarkValidator_1","commandsSettingsValidator_1","customThemeValidator_1","dashboardLoadValidator_1","datasetBindingValidator_1","exportDataValidator_1","extensionsValidator_1","filtersValidator_1","layoutValidator_1","pageValidator_1","panesValidator_1","qnaValidator_1","reportCreateValidator_1","reportLoadValidator_1","paginatedReportLoadValidator_1","saveAsParametersValidator_1","selectorsValidator_1","settingsValidator_1","slicersValidator_1","tileLoadValidator_1","visualSettingsValidator_1","anyOfValidator_1","fieldForbiddenValidator_1","fieldRequiredValidator_1","mapValidator_1","typeValidator_1","parameterPanelValidator_1","multipleFieldsValidator_1","ReportBarsValidator","multipleFieldsValidator","ActionBarValidator","MultipleFieldsValidator","fieldValidatorsPairs","fieldsPath","fieldValidators","ObjectValidator","ArrayValidator","itemValidators","TypeValidator","expectedType","StringValidator","BooleanValidator","NumberValidator","ValueValidator","possibleValues","SchemaValidator","schemaValue","EnumValidator","valueValidator","StringArrayValidator","BooleanArrayValidator","NumberArrayValidator","RangeValidator","minValue","maxValue","PlayBookmarkRequestValidator","AddBookmarkRequestValidator","ApplyBookmarkByNameRequestValidator","ApplyBookmarkStateRequestValidator","CaptureBookmarkOptionsValidator","CaptureBookmarkRequestValidator","CommandsSettingsValidator","SingleCommandSettingsValidator","PaginatedReportCommandsValidator","CustomThemeValidator","DashboardLoadValidator","DatasetBindingValidator","ExportDataRequestValidator","MenuExtensionBaseValidator","FlatMenuExtensionValidator","GroupedMenuExtensionValidator","ExtensionPointsValidator","ExtensionItemValidator","CommandExtensionValidator","ExtensionValidator","MenuGroupExtensionValidator","ExtensionsValidator","FilterColumnTargetValidator","FilterKeyColumnsTargetValidator","FilterHierarchyTargetValidator","FilterKeyHierarchyTargetValidator","FilterMeasureTargetValidator","FilterDisplaySettingsValidator","FilterValidatorBase","BasicFilterValidator","AdvancedFilterValidator","RelativeDateTimeFilterValidator","RelativeDateFilterValidator","RelativeTimeFilterValidator","TopNFilterValidator","NotSupportedFilterValidator","IncludeExcludeFilterValidator","HierarchyFilterValidator","HierarchyFilterNodeValidator","FilterValidator","UpdateFiltersRequestValidator","RemoveFiltersRequestValidator","ConditionItemValidator","OnLoadFiltersBaseValidator","OnLoadFiltersBaseRemoveOperationValidator","OnLoadFiltersValidator","CustomLayoutValidator","VisualLayoutValidator","DisplayStateValidator","PageLayoutValidator","PageSizeValidator","CustomPageSizeValidator","PageValidator","PageViewFieldValidator","ReportPanesValidator","QnaPanesValidator","BookmarksPaneValidator","FieldsPaneValidator","FiltersPaneValidator","PageNavigationPaneValidator","SelectionPaneValidator","SyncSlicersPaneValidator","VisualizationsPaneValidator","LoadQnaValidator","QnaSettingsValidator","QnaInterpretInputDataValidator","ReportCreateValidator","ReportLoadValidator","PaginatedReportLoadValidator","ReportParameterFieldsValidator","SaveAsParametersValidator","typeValidator_2","VisualSelectorValidator","VisualTypeSelectorValidator","SlicerTargetSelectorValidator","SettingsValidator","PaginatedReportSettingsValidator","SlicerValidator","SlicerStateValidator","TileLoadValidator","VisualSettingsValidator","VisualHeaderSettingsValidator","VisualHeaderValidator","AnyOfValidator","valid","FieldForbiddenValidator","FieldRequiredValidator","MapValidator","keyValidators","valueValidators","keyValidator","ParametersPanelValidator","__webpack_module_cache__","cachedModule","RouteRecognizer","routeRecognizer","routeRecognizerHandler","Response","internalHandler","matchingRoutes","statusCode","__WEBPACK_AMD_DEFINE_RESULT__","$$route$recognizer$dsl$$Target","delegate","$$route$recognizer$dsl$$Matcher","$$route$recognizer$dsl$$generateMatch","startingPath","nestedCallback","$$route$recognizer$dsl$$addRoute","routeArray","$$route$recognizer$dsl$$eachRoute","baseRoute","binding","$$route$recognizer$dsl$$default","addRouteCallback","$$route$recognizer$$specials","$$route$recognizer$$escapeRegex","$$route$recognizer$$isArray","$$route$recognizer$$StaticSegment","currentState","$$route$recognizer$$DynamicSegment","$$route$recognizer$$StarSegment","$$route$recognizer$$EpsilonSegment","$$route$recognizer$$parse","specificity","$$route$recognizer$$State","charSpec","nextStates","isEqual","returned","$$route$recognizer$$sortSolutions","$$route$recognizer$$recognizeChar","$$route$recognizer$$oCreate","$$route$recognizer$$RecognizeResults","queryParams","$$route$recognizer$$findHandler","captures","currentCapture","$$route$recognizer$$decodeQueryParamPart","$$route$recognizer$$RouteRecognizer","allSegments","pairs","arrayPair","queryString","keyLength","pathLen","queryStart","isSlashDropped","solutions","$$route$recognizer$$default","process","cachedSetTimeout","cachedClearTimeout","defaultSetTimout","defaultClearTimeout","runTimeout","fun","runClearTimeout","marker","draining","currentQueue","queueIndex","cleanUpNextTick","drainQueue","Item","superCtor","TempCtor","getOwnPropertyDescriptors","formatRegExp","objects","isNull","warned","debugs","debugEnviron","pid","stylizeNoColor","stylizeWithColor","formatValue","styleType","arrayToHash","recurseTimes","primitive","formatPrimitive","visibleKeys","isError","formatError","braces","formatArray","formatProperty","reduceToSingleString","simple","cur","isNullOrUndefined","isSymbol","objectToString","isPrimitive","pad","months","kCustomPromisifiedSymbol","original","callbackifyOnRejected","newReason","callbackify","callbackified","maybeCb","rej","WindowPostMessageProxy","deferred","cryptoObj","randomValueArray","handlerIndex","sendingWindow","isErrorMessage","handled","canMessageBeHandled","responseMessagePromise","responseMessage","warningMessage","powerbi_models_1","filterBuilder_1","AdvancedFilterBuilder","BasicFilterBuilder","isRequireSingleSelection","FilterBuilder","tableName","columnName","measure","hierarchy","hierarchyLevel","aggregationFunction","basicFilterBuilder_1","advancedFilterBuilder_1","topNFilterBuilder_1","relativeDateFilterBuilder_1","relativeTimeFilterBuilder_1","RelativeDateFilterBuilder","relativeDateFilter","RelativeTimeFilterBuilder","relativeTimeFilter","TopNFilterBuilder","topNFilter","__generator","verb","util_1","errors_1","BookmarksManager","service","iframe","response_1","bookmarkName","response_2","playMode","playBookmarkRequest","response_3","response_4","response_5","embed_1","Create","phasedRender","isBootstrap","datasetId","datasetIdRegEx","datasetIdMatch","Dashboard","dashboardIdRegEx","dashboardIdMatch","dashboardId","baseConfig","pageView","models","sdkConfig","Embed","saveAsParameters","timeNow","fakeEvent","eventHandlersToRemove","eventHandlerToRemove","accessToken","embedType","response_6","globalAccessToken","_f","_g","_h","_j","extensionsArray","extension","eventHooks","applicationContextProvider","accessTokenProvider","localeSettings","embedUrl","hostname","endpoint","requestFullScreen","exitFullscreen","isLoad","iframeContent","tabIndex","_tabIndex","groupIdRegEx","groupIdMatch","groupId","response_7","window_post_message_proxy_1","http_post_message_1","powerbi_router_1","config_1","hpmFactory","wpmp","sdkVersion","sdkType","sdkWrapperVersion","wpmpFactory","logMessages","eventSourceOverrideWindow","routerFactory","visualDescriptor_1","isActivePage","defaultSize","defaultDisplayOption","mobileSize","wallpaper","operation","updateFiltersRequest","visual","response_8","displayState","pageSizeType","response_9","layoutType","layoutTypeEnum","response_10","factories","report_1","dashboard_1","tile_1","page_1","qna_1","visual_1","FilterBuilders_1","powerbi","Qna","question","qnaData","_isBootstrap","bookmarksManager_1","Report","req","_res","reportIdRegEx","reportIdMatch","activePage","response_11","response_12","settings","response_13","extensionElement","filterPaneEnabledAttribute","navContentPaneEnabledAttribute","elementAttrSettings","viewMode","newMode","response_14","response_15","response_16","response_17","response_18","response_19","commandName","contextMenuTitle","commandCopy","indexOfCommand","newSetting","commandTitle","menuLocation","groupName","newCommands","optionsMenuTitle","commandIcon","visualLayout","newSettings","pageSize","isInitialMobileSettings","isPassedMobileSettings","menuTitle","newCommandObj","groupExtend","activeMenuCommand","response_20","response_21","zoomLevel","create_1","Service","powerBiElement","componentType","scrubbedConfig","embedComponent","_event","uniqueId","embed","embedElement","error_1","Tile","tileId","embedConfig","tileIdRegEx","tileIdMatch","raiseCustomEvent","eventData","customEvent","findIndex","xs","createRandomString","getRandomValue","generateUUID","addParamToUrl","parameterPrefix","isSavedInternal","hpm","contentWindow","isRDLEmbed","autoAuthInEmbedUrl","getTimeDiffInMilliseconds","Visual","pagesLayout","_pageName","embeddedVisuals","visualNotFoundError","embeddedVisual","currentPage","pageVisual","filtersLevel","VisualDescriptor","exportDataType","exportDataRequestBody","ReportTab","TabVl","ReportTitle","ReportFrame","reportConfig","activePageTitle","setActivePageTitle","setPages","setReport","setUsageId","handleUsageResult","logPageUsage","pbi.models","enableExportData","validateConfig","getCustomTitleStyle","applyBookMark","bookMark","loadReport","bookMarks","tmpPages","handlePageChange","ListItemText","Toolbar","bm","bmc","ReportSelector","PowerBIReportSelector","bookmarkId","printNow","setPrintNow","bookmarks","setBookmarks","currentBookmark","setCurrentBookmark","embedReport","setEmbedReport","exportFileTitle","setExportFileTitle","exportFileContent","setExportFileContent","exportFileNote","setExportFileNote","exportModalOpen","setExportModalOpen","exportInProgress","setExportInProgress","modalErrors","setModalErrors","handlePrintReport","handleBookmarkSelect","downloadExportFile","fileType","reportName","dataType","handleExportFile","hideExportModal","handlePrintDone","setupBookmarks","activeBookmark","handleBookmarkLink","espacedName","reportUrl","handleDownloadFile","PDFViewer","RightPanel","rightPanel","toggleFullScreen","setFullScreen","tenant","eid","rid","setTenantName","isMatched","eId","rId","hasMatchedReport","hasAvailableReports","Layout","App","ReactQueryDevtools"],"ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,431,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,529],"sources":["../../../VAP.PublicView.Frontend/node_modules/react/cjs/react.production.min.js","../../../VAP.PublicView.Frontend/node_modules/react/index.js","../../../VAP.PublicView.Frontend/node_modules/react/cjs/react-jsx-runtime.production.min.js","../../../VAP.PublicView.Frontend/node_modules/react/jsx-runtime.js","../../../VAP.PublicView.Frontend/node_modules/scheduler/cjs/scheduler.production.min.js","../../../VAP.PublicView.Frontend/node_modules/scheduler/index.js","../../../VAP.PublicView.Frontend/node_modules/react-dom/cjs/react-dom.production.min.js","../../../VAP.PublicView.Frontend/node_modules/react-dom/index.js","../../../VAP.PublicView.Frontend/node_modules/react-dom/client.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/core/consts.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/utils/assertion.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/utils/consts.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/utils/dom.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/utils/function.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/utils/object.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/utils/react.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/onedesign-tokens/dist/js/rem/button.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/theme/foundations/colors.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/utils/styles.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/utils/uid.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/core/links.js","../../../VAP.PublicView.Frontend/node_modules/react-is/cjs/react-is.production.min.js","../../../VAP.PublicView.Frontend/node_modules/react-is/index.js","../../../VAP.PublicView.Frontend/node_modules/@emotion/stylis/dist/stylis.browser.esm.js","../../../VAP.PublicView.Frontend/node_modules/@emotion/unitless/dist/unitless.browser.esm.js","../../../VAP.PublicView.Frontend/node_modules/@emotion/memoize/dist/emotion-memoize.esm.js","../../../VAP.PublicView.Frontend/node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.esm.js","../../../VAP.PublicView.Frontend/node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js","../../../VAP.PublicView.Frontend/node_modules/styled-components/dist/styled-components.browser.esm.js","../../../VAP.PublicView.Frontend/node_modules/@xstyled/util/dist/util.esm.js","../../../VAP.PublicView.Frontend/node_modules/@xstyled/system/dist/system.esm.js","../../../VAP.PublicView.Frontend/node_modules/@xstyled/core/dist/core.esm.js","../../../VAP.PublicView.Frontend/node_modules/@xstyled/styled-components/dist/styled-components.esm.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/accordion/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/avatar/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/badge/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/box/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/breadcrumbs/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/button/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/calendar/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/card/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/checkbox/consts.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/checkbox/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/datePicker/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/definition/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/dialog/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/divider/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/dragAndDrop/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/footer/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/grid/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/header/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/theme/foundations/fonts.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/heading/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icon/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/image/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/input/consts.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/input/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/link/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/list/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/menu/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/message/consts.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/message/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/modal/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/notification/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/p/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/pagination/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/panel/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/popover/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/progress/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/progressCircular/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/radio/consts.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/radio/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/select/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/sidemenu/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/skeleton/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/spinner/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/switch/consts.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/switch/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/t/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/table/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/tabs/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/tag/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/textarea/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/tree/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/theme/themePlaceholder.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/theme/components.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/theme/foundations/animations.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/theme/foundations/borders.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/theme/foundations/durations.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/theme/foundations/fontSizes.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/theme/foundations/fontWeights.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/theme/foundations/gridTemplateColumns.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/theme/foundations/gridTemplateRows.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/theme/foundations/radii.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/theme/foundations/ringWidths.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/theme/foundations/screens.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/theme/foundations/shadows.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/theme/foundations/sizes.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/theme/foundations/spaces.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/theme/foundations/timingFunctions.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/theme/foundations/transformers.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/theme/foundations/transforms.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/theme/foundations/transitions.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/theme/foundations/zIndices.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/theme/foundations/index.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/theme/defaultTheme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/core/theme.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/core/media.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/system/custom.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/system/system.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/core/styled.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/core/vui.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/core/vuiProvider/animations.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/core/vuiProvider/context.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/core/vuiProvider/useOfflineMode.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/core/vuiProvider/consts.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/core/vuiProvider/useBodyScrollLock.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/core/vuiProvider/fontFaces.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/core/vuiProvider/globalStyle.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/core/vuiProvider/resetCSS.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/popover/popoverStyle.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/portal/portal.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/box/box.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/toast/toast.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/notification/context.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/notification/consts.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/buttonGroup/context.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/svg/cache.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/svg/helpers.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/svg/svg.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/conc/conCreateDataset.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/conc/conDatabase.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/conc/conDatabasePlus.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/conc/conDataset.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/conc/conFolderPlus.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/conc/conInsightSearchAlt.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/conc/conLNGBunkering.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/conc/conMachineLearning.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/conc/conReport.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/conc/conReport1.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/conc/conSensorAlt.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/conc/conSensorPlus.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/conc/conUploadFile.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/conc/conUploadFile1.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/cui/cuiCheckboxIndeterminate.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/cui/cuiCheckboxSelected.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/cui/cuiCheckboxUnselected.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/cui/cuiRadioSelected.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/cui/cuiRadioUnselected.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/cul/culEyeAssess.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/fad/fadSpinnerThird.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/fal/falCheck.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/fal/falCheckCircle.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/fal/falEllipsisH.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/fal/falEllipsisV.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/fal/falExclamationCircle.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/fal/falExclamationTriangle.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/fal/falInfoCircle.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/fal/falPlus.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/fal/falSpinner.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/fal/falTimes.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/baseIcons/fal/falTimesCircle.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/consts.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icons/cache.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icon/helpers.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/icon/icon.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/button/context.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/button/buttonIcon.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/t/t.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/button/buttonText.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/button/consts.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/button/button.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/button/buttons.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/notification/notificationButton.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/notification/notificationIcon.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/notification/notificationText.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/notification/notificationTitle.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/notification/notification.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/toast/useToast.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/core/vuiProvider/notifyOffline.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/core/vuiProvider/reducers.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/core/vuiProvider/vuiProvider.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/list/context.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/divider/divider.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/list/listDivider.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/list/listHeading.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/list/listIcon.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/link/context.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/link/linkIcon.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/link/linkText.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/link/link.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/list/listText.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/list/listItem.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/list/list.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/accordion/accordionItemArrow.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/accordion/context.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/accordion/accordionItem.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/image/image.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/avatar/helpers.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/avatar/avatar.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/popover/consts.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/popover/context.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/popover/popoverContent.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/popover/popoverTrigger.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/enums.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/dom-utils/getNodeName.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/dom-utils/getWindow.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/dom-utils/instanceOf.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/modifiers/applyStyles.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/utils/getBasePlacement.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/utils/math.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/utils/userAgent.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/dom-utils/isLayoutViewport.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/dom-utils/contains.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/dom-utils/isTableElement.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/dom-utils/getParentNode.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/utils/within.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/utils/getFreshSideObject.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/utils/mergePaddingObject.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/utils/expandToHashMap.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/modifiers/arrow.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/utils/getVariation.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/modifiers/computeStyles.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/modifiers/eventListeners.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/utils/getOppositePlacement.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/utils/rectToClientRect.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/utils/computeOffsets.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/utils/detectOverflow.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/modifiers/flip.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/modifiers/hide.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/modifiers/offset.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/modifiers/popperOffsets.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/utils/getAltAxis.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/modifiers/preventOverflow.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/utils/orderModifiers.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/utils/debounce.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/utils/mergeByName.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/createPopper.js","../../../VAP.PublicView.Frontend/node_modules/@popperjs/core/lib/popper.js","../../../VAP.PublicView.Frontend/node_modules/tippy.js/dist/tippy.esm.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/popover/usePopover.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/popover/popover.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/p/p.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/modal/context.js","../../../VAP.PublicView.Frontend/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../../../VAP.PublicView.Frontend/node_modules/@babel/runtime/helpers/esm/extends.js","../../../VAP.PublicView.Frontend/node_modules/focus-lock/dist/es2015/constants.js","../../../VAP.PublicView.Frontend/node_modules/use-callback-ref/dist/es2015/assignRef.js","../../../VAP.PublicView.Frontend/node_modules/use-callback-ref/dist/es2015/useRef.js","../../../VAP.PublicView.Frontend/node_modules/use-callback-ref/dist/es2015/useMergeRef.js","../../../VAP.PublicView.Frontend/node_modules/react-focus-lock/dist/es2015/FocusGuard.js","../../../VAP.PublicView.Frontend/node_modules/tslib/tslib.es6.js","../../../VAP.PublicView.Frontend/node_modules/use-sidecar/dist/es2015/medium.js","../../../VAP.PublicView.Frontend/node_modules/react-focus-lock/dist/es2015/medium.js","../../../VAP.PublicView.Frontend/node_modules/react-focus-lock/dist/es2015/Lock.js","../../../VAP.PublicView.Frontend/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../../../VAP.PublicView.Frontend/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","../../../VAP.PublicView.Frontend/node_modules/@babel/runtime/helpers/esm/defineProperty.js","../../../VAP.PublicView.Frontend/node_modules/react-clientside-effect/lib/index.es.js","../../../VAP.PublicView.Frontend/node_modules/focus-lock/dist/es2015/utils/array.js","../../../VAP.PublicView.Frontend/node_modules/focus-lock/dist/es2015/utils/is.js","../../../VAP.PublicView.Frontend/node_modules/focus-lock/dist/es2015/utils/tabOrder.js","../../../VAP.PublicView.Frontend/node_modules/focus-lock/dist/es2015/utils/tabbables.js","../../../VAP.PublicView.Frontend/node_modules/focus-lock/dist/es2015/utils/tabUtils.js","../../../VAP.PublicView.Frontend/node_modules/focus-lock/dist/es2015/utils/DOMutils.js","../../../VAP.PublicView.Frontend/node_modules/focus-lock/dist/es2015/utils/all-affected.js","../../../VAP.PublicView.Frontend/node_modules/focus-lock/dist/es2015/utils/safe.js","../../../VAP.PublicView.Frontend/node_modules/focus-lock/dist/es2015/utils/getActiveElement.js","../../../VAP.PublicView.Frontend/node_modules/focus-lock/dist/es2015/focusInside.js","../../../VAP.PublicView.Frontend/node_modules/focus-lock/dist/es2015/focusIsHidden.js","../../../VAP.PublicView.Frontend/node_modules/focus-lock/dist/es2015/utils/correctFocus.js","../../../VAP.PublicView.Frontend/node_modules/focus-lock/dist/es2015/utils/firstFocus.js","../../../VAP.PublicView.Frontend/node_modules/focus-lock/dist/es2015/solver.js","../../../VAP.PublicView.Frontend/node_modules/focus-lock/dist/es2015/utils/auto-focus.js","../../../VAP.PublicView.Frontend/node_modules/focus-lock/dist/es2015/utils/parenting.js","../../../VAP.PublicView.Frontend/node_modules/focus-lock/dist/es2015/focusMerge.js","../../../VAP.PublicView.Frontend/node_modules/focus-lock/dist/es2015/focusables.js","../../../VAP.PublicView.Frontend/node_modules/focus-lock/dist/es2015/setFocus.js","../../../VAP.PublicView.Frontend/node_modules/react-focus-lock/dist/es2015/util.js","../../../VAP.PublicView.Frontend/node_modules/react-focus-lock/dist/es2015/Trap.js","../../../VAP.PublicView.Frontend/node_modules/react-focus-lock/dist/es2015/Combination.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/focusLock/focusLock.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/modal/modalBackdrop.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/modal/modalContent.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/modal/modalManager.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/modal/modal.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/heading/heading.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/menu/context.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/menu/menuButton.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/menu/menuItem.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/menu/menuList.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/menu/menu.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/footer/context.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/footer/footerHeading.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/footer/footerLink.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/footer/footerSection.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/footer/footerColumn.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/footer/footerContent.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/footer/footerRow.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/footer/footerSlimColumn.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/footer/footerTrademark.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/footer/footer.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/header/context.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/header/headerAccountUserInfo.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/header/headerAccount.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/header/headerApplicationName.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/header/headerContent.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/header/headerCreateAccount.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/header/headerDivider.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/header/headerLinkItem.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/logo/Logo.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/header/headerLogo.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/header/headerMainLinks.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/header/headerMobileContent.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/header/headerMobileToggle.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/header/headerNotifications.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/header/headerServicesMessage.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/header/headerServices.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/header/headerSignIn.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/header/headerSupport.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/header/header.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/header/helpers.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/header/loggedOutHeader.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/spinner/consts.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/spinner/spinner.js","../../../VAP.PublicView.Frontend/node_modules/@tippyjs/react/dist/tippy-react.esm.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/tooltip/consts.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/tooltip/tooltipContent.js","../../../VAP.PublicView.Frontend/node_modules/@veracity/vui/dist/esm/tooltip/tooltip.js","../../../VAP.PublicView.Frontend/node_modules/react-query/es/core/subscribable.js","../../../VAP.PublicView.Frontend/node_modules/react-query/es/core/utils.js","../../../VAP.PublicView.Frontend/node_modules/react-query/es/core/focusManager.js","../../../VAP.PublicView.Frontend/node_modules/react-query/es/core/onlineManager.js","../../../VAP.PublicView.Frontend/node_modules/react-query/es/core/retryer.js","../../../VAP.PublicView.Frontend/node_modules/react-query/es/core/notifyManager.js","../../../VAP.PublicView.Frontend/node_modules/react-query/es/core/logger.js","../../../VAP.PublicView.Frontend/node_modules/react-query/es/core/query.js","../../../VAP.PublicView.Frontend/node_modules/react-query/es/core/queryCache.js","../../../VAP.PublicView.Frontend/node_modules/react-query/es/core/mutation.js","../../../VAP.PublicView.Frontend/node_modules/react-query/es/core/mutationCache.js","../../../VAP.PublicView.Frontend/node_modules/react-query/es/core/infiniteQueryBehavior.js","../../../VAP.PublicView.Frontend/node_modules/react-query/es/core/queryClient.js","../../../VAP.PublicView.Frontend/node_modules/react-query/es/core/queryObserver.js","../../../VAP.PublicView.Frontend/node_modules/react-query/es/core/mutationObserver.js","../../../VAP.PublicView.Frontend/node_modules/react-query/es/react/reactBatchedUpdates.js","../../../VAP.PublicView.Frontend/node_modules/react-query/es/react/setBatchUpdatesFn.js","../../../VAP.PublicView.Frontend/node_modules/react-query/es/react/logger.js","../../../VAP.PublicView.Frontend/node_modules/react-query/es/react/setLogger.js","../../../VAP.PublicView.Frontend/node_modules/react-query/es/react/QueryClientProvider.js","../../../VAP.PublicView.Frontend/node_modules/react-query/es/react/QueryErrorResetBoundary.js","../../../VAP.PublicView.Frontend/node_modules/react-query/es/react/utils.js","../../../VAP.PublicView.Frontend/node_modules/react-query/es/react/useMutation.js","../../../VAP.PublicView.Frontend/node_modules/react-query/es/react/useBaseQuery.js","../../../VAP.PublicView.Frontend/node_modules/react-query/es/react/useQuery.js","../../../VAP.PublicView.Frontend/node_modules/react-query/devtools/index.js","../../../VAP.PublicView.Frontend/node_modules/history/index.js","../../../VAP.PublicView.Frontend/node_modules/react-router/index.js","../../../VAP.PublicView.Frontend/node_modules/react-router-dom/index.js","../../../VAP.PublicView.Frontend/node_modules/zustand/esm/shallow.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/helpers/bind.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/utils.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/core/AxiosError.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/helpers/null.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/helpers/toFormData.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/helpers/AxiosURLSearchParams.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/helpers/buildURL.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/core/InterceptorManager.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/defaults/transitional.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/platform/browser/classes/URLSearchParams.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/platform/browser/classes/FormData.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/platform/browser/classes/Blob.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/platform/browser/index.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/platform/common/utils.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/platform/index.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/helpers/toURLEncodedForm.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/helpers/formDataToJSON.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/defaults/index.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/helpers/parseHeaders.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/core/AxiosHeaders.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/core/transformData.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/cancel/isCancel.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/cancel/CanceledError.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/core/settle.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/helpers/parseProtocol.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/helpers/speedometer.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/helpers/throttle.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/helpers/progressEventReducer.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/helpers/isURLSameOrigin.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/helpers/cookies.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/helpers/isAbsoluteURL.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/helpers/combineURLs.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/core/buildFullPath.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/core/mergeConfig.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/helpers/resolveConfig.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/adapters/xhr.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/helpers/composeSignals.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/helpers/trackStream.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/adapters/fetch.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/adapters/adapters.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/core/dispatchRequest.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/env/data.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/helpers/validator.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/core/Axios.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/cancel/CancelToken.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/helpers/spread.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/helpers/isAxiosError.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/helpers/HttpStatusCode.js","../../../VAP.PublicView.Frontend/node_modules/axios/lib/axios.js","../../../VAP.PublicView.Frontend/src/apis/client.ts","../../../VAP.PublicView.Frontend/src/apis/global/index.ts","../../../VAP.PublicView.Frontend/src/queries/consts.ts","../../../VAP.PublicView.Frontend/src/queries/global/index.tsx","../../../VAP.PublicView.Frontend/node_modules/zustand/esm/index.js","../../../VAP.PublicView.Frontend/src/stores/global/index.ts","../../../VAP.PublicView.Frontend/node_modules/dom-helpers/esm/contains.js","../../../VAP.PublicView.Frontend/node_modules/@restart/hooks/esm/useMounted.js","../../../VAP.PublicView.Frontend/node_modules/@restart/hooks/esm/useUpdatedRef.js","../../../VAP.PublicView.Frontend/node_modules/@restart/hooks/esm/useWillUnmount.js","../../../VAP.PublicView.Frontend/node_modules/@restart/hooks/esm/useTimeout.js","../../../VAP.PublicView.Frontend/node_modules/warning/warning.js","../../../VAP.PublicView.Frontend/node_modules/uncontrollable/lib/esm/hook.js","../../../VAP.PublicView.Frontend/node_modules/@restart/hooks/esm/useMergedRefs.js","../../../VAP.PublicView.Frontend/node_modules/classnames/index.js","../../../VAP.PublicView.Frontend/node_modules/@restart/hooks/esm/useCallbackRef.js","../../../VAP.PublicView.Frontend/node_modules/dequal/dist/index.mjs","../../../VAP.PublicView.Frontend/node_modules/@restart/hooks/esm/useSafeState.js","../../../VAP.PublicView.Frontend/node_modules/@restart/ui/esm/popper.js","../../../VAP.PublicView.Frontend/node_modules/@restart/ui/esm/usePopper.js","../../../VAP.PublicView.Frontend/node_modules/dom-helpers/esm/canUseDOM.js","../../../VAP.PublicView.Frontend/node_modules/dom-helpers/esm/addEventListener.js","../../../VAP.PublicView.Frontend/node_modules/dom-helpers/esm/removeEventListener.js","../../../VAP.PublicView.Frontend/node_modules/dom-helpers/esm/listen.js","../../../VAP.PublicView.Frontend/node_modules/dom-helpers/esm/ownerDocument.js","../../../VAP.PublicView.Frontend/node_modules/@restart/hooks/esm/useCommittedRef.js","../../../VAP.PublicView.Frontend/node_modules/@restart/hooks/esm/useEventCallback.js","../../../VAP.PublicView.Frontend/node_modules/@restart/ui/esm/useClickOutside.js","../../../VAP.PublicView.Frontend/node_modules/@restart/ui/esm/utils.js","../../../VAP.PublicView.Frontend/node_modules/@restart/ui/esm/useRootClose.js","../../../VAP.PublicView.Frontend/node_modules/@restart/ui/esm/useWindow.js","../../../VAP.PublicView.Frontend/node_modules/@restart/ui/esm/useWaitForDOMRef.js","../../../VAP.PublicView.Frontend/node_modules/@restart/ui/esm/mergeOptionsWithPopperConfig.js","../../../VAP.PublicView.Frontend/node_modules/@restart/hooks/esm/useIsomorphicEffect.js","../../../VAP.PublicView.Frontend/node_modules/@restart/ui/esm/NoopTransition.js","../../../VAP.PublicView.Frontend/node_modules/@restart/ui/esm/ImperativeTransition.js","../../../VAP.PublicView.Frontend/node_modules/@restart/ui/esm/Overlay.js","../../../VAP.PublicView.Frontend/node_modules/dom-helpers/esm/hasClass.js","../../../VAP.PublicView.Frontend/node_modules/react-bootstrap/esm/ThemeProvider.js","../../../VAP.PublicView.Frontend/node_modules/dom-helpers/esm/camelize.js","../../../VAP.PublicView.Frontend/node_modules/react-bootstrap/esm/createWithBsPrefix.js","../../../VAP.PublicView.Frontend/node_modules/react-bootstrap/esm/PopoverHeader.js","../../../VAP.PublicView.Frontend/node_modules/react-bootstrap/esm/PopoverBody.js","../../../VAP.PublicView.Frontend/node_modules/react-bootstrap/esm/helpers.js","../../../VAP.PublicView.Frontend/node_modules/react-bootstrap/esm/Popover.js","../../../VAP.PublicView.Frontend/node_modules/react-bootstrap/esm/useOverlayOffset.js","../../../VAP.PublicView.Frontend/node_modules/react-transition-group/esm/config.js","../../../VAP.PublicView.Frontend/node_modules/react-transition-group/esm/TransitionGroupContext.js","../../../VAP.PublicView.Frontend/node_modules/react-transition-group/esm/utils/reflow.js","../../../VAP.PublicView.Frontend/node_modules/react-transition-group/esm/Transition.js","../../../VAP.PublicView.Frontend/node_modules/dom-helpers/esm/ownerWindow.js","../../../VAP.PublicView.Frontend/node_modules/dom-helpers/esm/getComputedStyle.js","../../../VAP.PublicView.Frontend/node_modules/dom-helpers/esm/hyphenate.js","../../../VAP.PublicView.Frontend/node_modules/dom-helpers/esm/hyphenateStyle.js","../../../VAP.PublicView.Frontend/node_modules/dom-helpers/esm/isTransform.js","../../../VAP.PublicView.Frontend/node_modules/dom-helpers/esm/css.js","../../../VAP.PublicView.Frontend/node_modules/dom-helpers/esm/triggerEvent.js","../../../VAP.PublicView.Frontend/node_modules/dom-helpers/esm/transitionEnd.js","../../../VAP.PublicView.Frontend/node_modules/react-bootstrap/esm/transitionEndListener.js","../../../VAP.PublicView.Frontend/node_modules/react-bootstrap/esm/triggerBrowserReflow.js","../../../VAP.PublicView.Frontend/node_modules/react-bootstrap/esm/safeFindDOMNode.js","../../../VAP.PublicView.Frontend/node_modules/react-bootstrap/esm/TransitionWrapper.js","../../../VAP.PublicView.Frontend/node_modules/react-bootstrap/esm/Fade.js","../../../VAP.PublicView.Frontend/node_modules/react-bootstrap/esm/Overlay.js","../../../VAP.PublicView.Frontend/node_modules/react-bootstrap/esm/OverlayTrigger.js","../../../VAP.PublicView.Frontend/src/pages/dashboard/leftpanel/styles.ts","../../../VAP.PublicView.Frontend/src/pages/dashboard/leftpanel/leftpanel.tsx","../../../VAP.PublicView.Frontend/src/libs/common.ts","../../../VAP.PublicView.Frontend/src/libs/fullscreen.ts","../../../VAP.PublicView.Frontend/src/components/global/footer/footer.tsx","../../../VAP.PublicView.Frontend/src/components/global/header/header.tsx","../../../VAP.PublicView.Frontend/node_modules/pdfjs-dist/build/pdf.mjs","../../../VAP.PublicView.Frontend/node_modules/make-event-props/dist/esm/index.js","../../../VAP.PublicView.Frontend/node_modules/make-cancellable-promise/dist/esm/index.js","../../../VAP.PublicView.Frontend/node_modules/clsx/dist/clsx.mjs","../../../VAP.PublicView.Frontend/node_modules/tiny-invariant/dist/esm/tiny-invariant.js","../../../VAP.PublicView.Frontend/node_modules/react-pdf/dist/esm/DocumentContext.js","../../../VAP.PublicView.Frontend/node_modules/react-pdf/dist/esm/Message.js","../../../VAP.PublicView.Frontend/node_modules/react-pdf/dist/esm/LinkService.js","../../../VAP.PublicView.Frontend/node_modules/react-pdf/dist/esm/PasswordResponses.js","../../../VAP.PublicView.Frontend/node_modules/react-pdf/dist/esm/shared/utils.js","../../../VAP.PublicView.Frontend/node_modules/react-pdf/dist/esm/shared/hooks/useResolver.js","../../../VAP.PublicView.Frontend/node_modules/react-pdf/dist/esm/Document.js","../../../VAP.PublicView.Frontend/node_modules/react-pdf/dist/esm/shared/hooks/useDocumentContext.js","../../../VAP.PublicView.Frontend/node_modules/merge-refs/dist/esm/index.js","../../../VAP.PublicView.Frontend/node_modules/react-pdf/dist/esm/PageContext.js","../../../VAP.PublicView.Frontend/node_modules/react-pdf/dist/esm/shared/constants.js","../../../VAP.PublicView.Frontend/node_modules/react-pdf/dist/esm/shared/structTreeUtils.js","../../../VAP.PublicView.Frontend/node_modules/react-pdf/dist/esm/StructTreeItem.js","../../../VAP.PublicView.Frontend/node_modules/react-pdf/dist/esm/shared/hooks/usePageContext.js","../../../VAP.PublicView.Frontend/node_modules/react-pdf/dist/esm/StructTree.js","../../../VAP.PublicView.Frontend/node_modules/react-pdf/dist/esm/Page/Canvas.js","../../../VAP.PublicView.Frontend/node_modules/react-pdf/dist/esm/Page/TextLayer.js","../../../VAP.PublicView.Frontend/node_modules/react-pdf/dist/esm/Page/AnnotationLayer.js","../../../VAP.PublicView.Frontend/node_modules/react-pdf/dist/esm/Page.js","../../../VAP.PublicView.Frontend/node_modules/react-pdf/dist/esm/index.js","../../../VAP.PublicView.Frontend/src/components/global/pdf/pdfviewer.tsx","../../../VAP.PublicView.Frontend/src/labels/publicLabel.ts","../../../VAP.PublicView.Frontend/src/pages/dashboard/breadcrumb/styles.ts","../../../VAP.PublicView.Frontend/src/pages/dashboard/breadcrumb/breadcrumb.tsx","../../../VAP.PublicView.Frontend/src/pages/dashboard/image/styles.ts","../../../VAP.PublicView.Frontend/src/pages/dashboard/image/image.tsx","../../../VAP.PublicView.Frontend/node_modules/powerbi-client/dist/powerbi.js","../../../VAP.PublicView.Frontend/src/pages/dashboard/report/styles.ts","../../../VAP.PublicView.Frontend/src/pages/dashboard/report/report.tsx","../../../VAP.PublicView.Frontend/src/pages/dashboard/toolbar/styles.ts","../../../VAP.PublicView.Frontend/src/pages/dashboard/toolbar/toolbar.tsx","../../../VAP.PublicView.Frontend/src/pages/dashboard/reportselector/reportselector.tsx","../../../VAP.PublicView.Frontend/src/pages/dashboard/rightpanel/rightpanel.tsx","../../../VAP.PublicView.Frontend/src/pages/dashboard/dashboard.tsx","../../../VAP.PublicView.Frontend/src/pages/layout/layout.tsx","../../../VAP.PublicView.Frontend/src/app.tsx","../../../VAP.PublicView.Frontend/src/main.tsx"],"sourcesContent":["/**\n * @license React\n * react.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var l=Symbol.for(\"react.element\"),n=Symbol.for(\"react.portal\"),p=Symbol.for(\"react.fragment\"),q=Symbol.for(\"react.strict_mode\"),r=Symbol.for(\"react.profiler\"),t=Symbol.for(\"react.provider\"),u=Symbol.for(\"react.context\"),v=Symbol.for(\"react.forward_ref\"),w=Symbol.for(\"react.suspense\"),x=Symbol.for(\"react.memo\"),y=Symbol.for(\"react.lazy\"),z=Symbol.iterator;function A(a){if(null===a||\"object\"!==typeof a)return null;a=z&&a[z]||a[\"@@iterator\"];return\"function\"===typeof a?a:null}\nvar B={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},C=Object.assign,D={};function E(a,b,e){this.props=a;this.context=b;this.refs=D;this.updater=e||B}E.prototype.isReactComponent={};\nE.prototype.setState=function(a,b){if(\"object\"!==typeof a&&\"function\"!==typeof a&&null!=a)throw Error(\"setState(...): takes an object of state variables to update or a function which returns an object of state variables.\");this.updater.enqueueSetState(this,a,b,\"setState\")};E.prototype.forceUpdate=function(a){this.updater.enqueueForceUpdate(this,a,\"forceUpdate\")};function F(){}F.prototype=E.prototype;function G(a,b,e){this.props=a;this.context=b;this.refs=D;this.updater=e||B}var H=G.prototype=new F;\nH.constructor=G;C(H,E.prototype);H.isPureReactComponent=!0;var I=Array.isArray,J=Object.prototype.hasOwnProperty,K={current:null},L={key:!0,ref:!0,__self:!0,__source:!0};\nfunction M(a,b,e){var d,c={},k=null,h=null;if(null!=b)for(d in void 0!==b.ref&&(h=b.ref),void 0!==b.key&&(k=\"\"+b.key),b)J.call(b,d)&&!L.hasOwnProperty(d)&&(c[d]=b[d]);var g=arguments.length-2;if(1===g)c.children=e;else if(1<g){for(var f=Array(g),m=0;m<g;m++)f[m]=arguments[m+2];c.children=f}if(a&&a.defaultProps)for(d in g=a.defaultProps,g)void 0===c[d]&&(c[d]=g[d]);return{$$typeof:l,type:a,key:k,ref:h,props:c,_owner:K.current}}\nfunction N(a,b){return{$$typeof:l,type:a.type,key:b,ref:a.ref,props:a.props,_owner:a._owner}}function O(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===l}function escape(a){var b={\"=\":\"=0\",\":\":\"=2\"};return\"$\"+a.replace(/[=:]/g,function(a){return b[a]})}var P=/\\/+/g;function Q(a,b){return\"object\"===typeof a&&null!==a&&null!=a.key?escape(\"\"+a.key):b.toString(36)}\nfunction R(a,b,e,d,c){var k=typeof a;if(\"undefined\"===k||\"boolean\"===k)a=null;var h=!1;if(null===a)h=!0;else switch(k){case \"string\":case \"number\":h=!0;break;case \"object\":switch(a.$$typeof){case l:case n:h=!0}}if(h)return h=a,c=c(h),a=\"\"===d?\".\"+Q(h,0):d,I(c)?(e=\"\",null!=a&&(e=a.replace(P,\"$&/\")+\"/\"),R(c,b,e,\"\",function(a){return a})):null!=c&&(O(c)&&(c=N(c,e+(!c.key||h&&h.key===c.key?\"\":(\"\"+c.key).replace(P,\"$&/\")+\"/\")+a)),b.push(c)),1;h=0;d=\"\"===d?\".\":d+\":\";if(I(a))for(var g=0;g<a.length;g++){k=\na[g];var f=d+Q(k,g);h+=R(k,b,e,f,c)}else if(f=A(a),\"function\"===typeof f)for(a=f.call(a),g=0;!(k=a.next()).done;)k=k.value,f=d+Q(k,g++),h+=R(k,b,e,f,c);else if(\"object\"===k)throw b=String(a),Error(\"Objects are not valid as a React child (found: \"+(\"[object Object]\"===b?\"object with keys {\"+Object.keys(a).join(\", \")+\"}\":b)+\"). If you meant to render a collection of children, use an array instead.\");return h}\nfunction S(a,b,e){if(null==a)return a;var d=[],c=0;R(a,d,\"\",\"\",function(a){return b.call(e,a,c++)});return d}function T(a){if(-1===a._status){var b=a._result;b=b();b.then(function(b){if(0===a._status||-1===a._status)a._status=1,a._result=b},function(b){if(0===a._status||-1===a._status)a._status=2,a._result=b});-1===a._status&&(a._status=0,a._result=b)}if(1===a._status)return a._result.default;throw a._result;}\nvar U={current:null},V={transition:null},W={ReactCurrentDispatcher:U,ReactCurrentBatchConfig:V,ReactCurrentOwner:K};function X(){throw Error(\"act(...) is not supported in production builds of React.\");}\nexports.Children={map:S,forEach:function(a,b,e){S(a,function(){b.apply(this,arguments)},e)},count:function(a){var b=0;S(a,function(){b++});return b},toArray:function(a){return S(a,function(a){return a})||[]},only:function(a){if(!O(a))throw Error(\"React.Children.only expected to receive a single React element child.\");return a}};exports.Component=E;exports.Fragment=p;exports.Profiler=r;exports.PureComponent=G;exports.StrictMode=q;exports.Suspense=w;\nexports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=W;exports.act=X;\nexports.cloneElement=function(a,b,e){if(null===a||void 0===a)throw Error(\"React.cloneElement(...): The argument must be a React element, but you passed \"+a+\".\");var d=C({},a.props),c=a.key,k=a.ref,h=a._owner;if(null!=b){void 0!==b.ref&&(k=b.ref,h=K.current);void 0!==b.key&&(c=\"\"+b.key);if(a.type&&a.type.defaultProps)var g=a.type.defaultProps;for(f in b)J.call(b,f)&&!L.hasOwnProperty(f)&&(d[f]=void 0===b[f]&&void 0!==g?g[f]:b[f])}var f=arguments.length-2;if(1===f)d.children=e;else if(1<f){g=Array(f);\nfor(var m=0;m<f;m++)g[m]=arguments[m+2];d.children=g}return{$$typeof:l,type:a.type,key:c,ref:k,props:d,_owner:h}};exports.createContext=function(a){a={$$typeof:u,_currentValue:a,_currentValue2:a,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null};a.Provider={$$typeof:t,_context:a};return a.Consumer=a};exports.createElement=M;exports.createFactory=function(a){var b=M.bind(null,a);b.type=a;return b};exports.createRef=function(){return{current:null}};\nexports.forwardRef=function(a){return{$$typeof:v,render:a}};exports.isValidElement=O;exports.lazy=function(a){return{$$typeof:y,_payload:{_status:-1,_result:a},_init:T}};exports.memo=function(a,b){return{$$typeof:x,type:a,compare:void 0===b?null:b}};exports.startTransition=function(a){var b=V.transition;V.transition={};try{a()}finally{V.transition=b}};exports.unstable_act=X;exports.useCallback=function(a,b){return U.current.useCallback(a,b)};exports.useContext=function(a){return U.current.useContext(a)};\nexports.useDebugValue=function(){};exports.useDeferredValue=function(a){return U.current.useDeferredValue(a)};exports.useEffect=function(a,b){return U.current.useEffect(a,b)};exports.useId=function(){return U.current.useId()};exports.useImperativeHandle=function(a,b,e){return U.current.useImperativeHandle(a,b,e)};exports.useInsertionEffect=function(a,b){return U.current.useInsertionEffect(a,b)};exports.useLayoutEffect=function(a,b){return U.current.useLayoutEffect(a,b)};\nexports.useMemo=function(a,b){return U.current.useMemo(a,b)};exports.useReducer=function(a,b,e){return U.current.useReducer(a,b,e)};exports.useRef=function(a){return U.current.useRef(a)};exports.useState=function(a){return U.current.useState(a)};exports.useSyncExternalStore=function(a,b,e){return U.current.useSyncExternalStore(a,b,e)};exports.useTransition=function(){return U.current.useTransition()};exports.version=\"18.3.1\";\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react.production.min.js');\n} else {\n module.exports = require('./cjs/react.development.js');\n}\n","/**\n * @license React\n * react-jsx-runtime.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var f=require(\"react\"),k=Symbol.for(\"react.element\"),l=Symbol.for(\"react.fragment\"),m=Object.prototype.hasOwnProperty,n=f.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,p={key:!0,ref:!0,__self:!0,__source:!0};\nfunction q(c,a,g){var b,d={},e=null,h=null;void 0!==g&&(e=\"\"+g);void 0!==a.key&&(e=\"\"+a.key);void 0!==a.ref&&(h=a.ref);for(b in a)m.call(a,b)&&!p.hasOwnProperty(b)&&(d[b]=a[b]);if(c&&c.defaultProps)for(b in a=c.defaultProps,a)void 0===d[b]&&(d[b]=a[b]);return{$$typeof:k,type:c,key:e,ref:h,props:d,_owner:n.current}}exports.Fragment=l;exports.jsx=q;exports.jsxs=q;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.min.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n","/**\n * @license React\n * scheduler.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';function f(a,b){var c=a.length;a.push(b);a:for(;0<c;){var d=c-1>>>1,e=a[d];if(0<g(e,b))a[d]=b,a[c]=e,c=d;else break a}}function h(a){return 0===a.length?null:a[0]}function k(a){if(0===a.length)return null;var b=a[0],c=a.pop();if(c!==b){a[0]=c;a:for(var d=0,e=a.length,w=e>>>1;d<w;){var m=2*(d+1)-1,C=a[m],n=m+1,x=a[n];if(0>g(C,c))n<e&&0>g(x,C)?(a[d]=x,a[n]=c,d=n):(a[d]=C,a[m]=c,d=m);else if(n<e&&0>g(x,c))a[d]=x,a[n]=c,d=n;else break a}}return b}\nfunction g(a,b){var c=a.sortIndex-b.sortIndex;return 0!==c?c:a.id-b.id}if(\"object\"===typeof performance&&\"function\"===typeof performance.now){var l=performance;exports.unstable_now=function(){return l.now()}}else{var p=Date,q=p.now();exports.unstable_now=function(){return p.now()-q}}var r=[],t=[],u=1,v=null,y=3,z=!1,A=!1,B=!1,D=\"function\"===typeof setTimeout?setTimeout:null,E=\"function\"===typeof clearTimeout?clearTimeout:null,F=\"undefined\"!==typeof setImmediate?setImmediate:null;\n\"undefined\"!==typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function G(a){for(var b=h(t);null!==b;){if(null===b.callback)k(t);else if(b.startTime<=a)k(t),b.sortIndex=b.expirationTime,f(r,b);else break;b=h(t)}}function H(a){B=!1;G(a);if(!A)if(null!==h(r))A=!0,I(J);else{var b=h(t);null!==b&&K(H,b.startTime-a)}}\nfunction J(a,b){A=!1;B&&(B=!1,E(L),L=-1);z=!0;var c=y;try{G(b);for(v=h(r);null!==v&&(!(v.expirationTime>b)||a&&!M());){var d=v.callback;if(\"function\"===typeof d){v.callback=null;y=v.priorityLevel;var e=d(v.expirationTime<=b);b=exports.unstable_now();\"function\"===typeof e?v.callback=e:v===h(r)&&k(r);G(b)}else k(r);v=h(r)}if(null!==v)var w=!0;else{var m=h(t);null!==m&&K(H,m.startTime-b);w=!1}return w}finally{v=null,y=c,z=!1}}var N=!1,O=null,L=-1,P=5,Q=-1;\nfunction M(){return exports.unstable_now()-Q<P?!1:!0}function R(){if(null!==O){var a=exports.unstable_now();Q=a;var b=!0;try{b=O(!0,a)}finally{b?S():(N=!1,O=null)}}else N=!1}var S;if(\"function\"===typeof F)S=function(){F(R)};else if(\"undefined\"!==typeof MessageChannel){var T=new MessageChannel,U=T.port2;T.port1.onmessage=R;S=function(){U.postMessage(null)}}else S=function(){D(R,0)};function I(a){O=a;N||(N=!0,S())}function K(a,b){L=D(function(){a(exports.unstable_now())},b)}\nexports.unstable_IdlePriority=5;exports.unstable_ImmediatePriority=1;exports.unstable_LowPriority=4;exports.unstable_NormalPriority=3;exports.unstable_Profiling=null;exports.unstable_UserBlockingPriority=2;exports.unstable_cancelCallback=function(a){a.callback=null};exports.unstable_continueExecution=function(){A||z||(A=!0,I(J))};\nexports.unstable_forceFrameRate=function(a){0>a||125<a?console.error(\"forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported\"):P=0<a?Math.floor(1E3/a):5};exports.unstable_getCurrentPriorityLevel=function(){return y};exports.unstable_getFirstCallbackNode=function(){return h(r)};exports.unstable_next=function(a){switch(y){case 1:case 2:case 3:var b=3;break;default:b=y}var c=y;y=b;try{return a()}finally{y=c}};exports.unstable_pauseExecution=function(){};\nexports.unstable_requestPaint=function(){};exports.unstable_runWithPriority=function(a,b){switch(a){case 1:case 2:case 3:case 4:case 5:break;default:a=3}var c=y;y=a;try{return b()}finally{y=c}};\nexports.unstable_scheduleCallback=function(a,b,c){var d=exports.unstable_now();\"object\"===typeof c&&null!==c?(c=c.delay,c=\"number\"===typeof c&&0<c?d+c:d):c=d;switch(a){case 1:var e=-1;break;case 2:e=250;break;case 5:e=1073741823;break;case 4:e=1E4;break;default:e=5E3}e=c+e;a={id:u++,callback:b,priorityLevel:a,startTime:c,expirationTime:e,sortIndex:-1};c>d?(a.sortIndex=c,f(t,a),null===h(r)&&a===h(t)&&(B?(E(L),L=-1):B=!0,K(H,c-d))):(a.sortIndex=e,f(r,a),A||z||(A=!0,I(J)));return a};\nexports.unstable_shouldYield=M;exports.unstable_wrapCallback=function(a){var b=y;return function(){var c=y;y=b;try{return a.apply(this,arguments)}finally{y=c}}};\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/scheduler.production.min.js');\n} else {\n module.exports = require('./cjs/scheduler.development.js');\n}\n","/**\n * @license React\n * react-dom.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n/*\n Modernizr 3.0.0pre (Custom Build) | MIT\n*/\n'use strict';var aa=require(\"react\"),ca=require(\"scheduler\");function p(a){for(var b=\"https://reactjs.org/docs/error-decoder.html?invariant=\"+a,c=1;c<arguments.length;c++)b+=\"&args[]=\"+encodeURIComponent(arguments[c]);return\"Minified React error #\"+a+\"; visit \"+b+\" for the full message or use the non-minified dev environment for full errors and additional helpful warnings.\"}var da=new Set,ea={};function fa(a,b){ha(a,b);ha(a+\"Capture\",b)}\nfunction ha(a,b){ea[a]=b;for(a=0;a<b.length;a++)da.add(b[a])}\nvar ia=!(\"undefined\"===typeof window||\"undefined\"===typeof window.document||\"undefined\"===typeof window.document.createElement),ja=Object.prototype.hasOwnProperty,ka=/^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$/,la=\n{},ma={};function oa(a){if(ja.call(ma,a))return!0;if(ja.call(la,a))return!1;if(ka.test(a))return ma[a]=!0;la[a]=!0;return!1}function pa(a,b,c,d){if(null!==c&&0===c.type)return!1;switch(typeof b){case \"function\":case \"symbol\":return!0;case \"boolean\":if(d)return!1;if(null!==c)return!c.acceptsBooleans;a=a.toLowerCase().slice(0,5);return\"data-\"!==a&&\"aria-\"!==a;default:return!1}}\nfunction qa(a,b,c,d){if(null===b||\"undefined\"===typeof b||pa(a,b,c,d))return!0;if(d)return!1;if(null!==c)switch(c.type){case 3:return!b;case 4:return!1===b;case 5:return isNaN(b);case 6:return isNaN(b)||1>b}return!1}function v(a,b,c,d,e,f,g){this.acceptsBooleans=2===b||3===b||4===b;this.attributeName=d;this.attributeNamespace=e;this.mustUseProperty=c;this.propertyName=a;this.type=b;this.sanitizeURL=f;this.removeEmptyString=g}var z={};\n\"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style\".split(\" \").forEach(function(a){z[a]=new v(a,0,!1,a,null,!1,!1)});[[\"acceptCharset\",\"accept-charset\"],[\"className\",\"class\"],[\"htmlFor\",\"for\"],[\"httpEquiv\",\"http-equiv\"]].forEach(function(a){var b=a[0];z[b]=new v(b,1,!1,a[1],null,!1,!1)});[\"contentEditable\",\"draggable\",\"spellCheck\",\"value\"].forEach(function(a){z[a]=new v(a,2,!1,a.toLowerCase(),null,!1,!1)});\n[\"autoReverse\",\"externalResourcesRequired\",\"focusable\",\"preserveAlpha\"].forEach(function(a){z[a]=new v(a,2,!1,a,null,!1,!1)});\"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope\".split(\" \").forEach(function(a){z[a]=new v(a,3,!1,a.toLowerCase(),null,!1,!1)});\n[\"checked\",\"multiple\",\"muted\",\"selected\"].forEach(function(a){z[a]=new v(a,3,!0,a,null,!1,!1)});[\"capture\",\"download\"].forEach(function(a){z[a]=new v(a,4,!1,a,null,!1,!1)});[\"cols\",\"rows\",\"size\",\"span\"].forEach(function(a){z[a]=new v(a,6,!1,a,null,!1,!1)});[\"rowSpan\",\"start\"].forEach(function(a){z[a]=new v(a,5,!1,a.toLowerCase(),null,!1,!1)});var ra=/[\\-:]([a-z])/g;function sa(a){return a[1].toUpperCase()}\n\"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height\".split(\" \").forEach(function(a){var b=a.replace(ra,\nsa);z[b]=new v(b,1,!1,a,null,!1,!1)});\"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type\".split(\" \").forEach(function(a){var b=a.replace(ra,sa);z[b]=new v(b,1,!1,a,\"http://www.w3.org/1999/xlink\",!1,!1)});[\"xml:base\",\"xml:lang\",\"xml:space\"].forEach(function(a){var b=a.replace(ra,sa);z[b]=new v(b,1,!1,a,\"http://www.w3.org/XML/1998/namespace\",!1,!1)});[\"tabIndex\",\"crossOrigin\"].forEach(function(a){z[a]=new v(a,1,!1,a.toLowerCase(),null,!1,!1)});\nz.xlinkHref=new v(\"xlinkHref\",1,!1,\"xlink:href\",\"http://www.w3.org/1999/xlink\",!0,!1);[\"src\",\"href\",\"action\",\"formAction\"].forEach(function(a){z[a]=new v(a,1,!1,a.toLowerCase(),null,!0,!0)});\nfunction ta(a,b,c,d){var e=z.hasOwnProperty(b)?z[b]:null;if(null!==e?0!==e.type:d||!(2<b.length)||\"o\"!==b[0]&&\"O\"!==b[0]||\"n\"!==b[1]&&\"N\"!==b[1])qa(b,c,e,d)&&(c=null),d||null===e?oa(b)&&(null===c?a.removeAttribute(b):a.setAttribute(b,\"\"+c)):e.mustUseProperty?a[e.propertyName]=null===c?3===e.type?!1:\"\":c:(b=e.attributeName,d=e.attributeNamespace,null===c?a.removeAttribute(b):(e=e.type,c=3===e||4===e&&!0===c?\"\":\"\"+c,d?a.setAttributeNS(d,b,c):a.setAttribute(b,c)))}\nvar ua=aa.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,va=Symbol.for(\"react.element\"),wa=Symbol.for(\"react.portal\"),ya=Symbol.for(\"react.fragment\"),za=Symbol.for(\"react.strict_mode\"),Aa=Symbol.for(\"react.profiler\"),Ba=Symbol.for(\"react.provider\"),Ca=Symbol.for(\"react.context\"),Da=Symbol.for(\"react.forward_ref\"),Ea=Symbol.for(\"react.suspense\"),Fa=Symbol.for(\"react.suspense_list\"),Ga=Symbol.for(\"react.memo\"),Ha=Symbol.for(\"react.lazy\");Symbol.for(\"react.scope\");Symbol.for(\"react.debug_trace_mode\");\nvar Ia=Symbol.for(\"react.offscreen\");Symbol.for(\"react.legacy_hidden\");Symbol.for(\"react.cache\");Symbol.for(\"react.tracing_marker\");var Ja=Symbol.iterator;function Ka(a){if(null===a||\"object\"!==typeof a)return null;a=Ja&&a[Ja]||a[\"@@iterator\"];return\"function\"===typeof a?a:null}var A=Object.assign,La;function Ma(a){if(void 0===La)try{throw Error();}catch(c){var b=c.stack.trim().match(/\\n( *(at )?)/);La=b&&b[1]||\"\"}return\"\\n\"+La+a}var Na=!1;\nfunction Oa(a,b){if(!a||Na)return\"\";Na=!0;var c=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(b)if(b=function(){throw Error();},Object.defineProperty(b.prototype,\"props\",{set:function(){throw Error();}}),\"object\"===typeof Reflect&&Reflect.construct){try{Reflect.construct(b,[])}catch(l){var d=l}Reflect.construct(a,[],b)}else{try{b.call()}catch(l){d=l}a.call(b.prototype)}else{try{throw Error();}catch(l){d=l}a()}}catch(l){if(l&&d&&\"string\"===typeof l.stack){for(var e=l.stack.split(\"\\n\"),\nf=d.stack.split(\"\\n\"),g=e.length-1,h=f.length-1;1<=g&&0<=h&&e[g]!==f[h];)h--;for(;1<=g&&0<=h;g--,h--)if(e[g]!==f[h]){if(1!==g||1!==h){do if(g--,h--,0>h||e[g]!==f[h]){var k=\"\\n\"+e[g].replace(\" at new \",\" at \");a.displayName&&k.includes(\"<anonymous>\")&&(k=k.replace(\"<anonymous>\",a.displayName));return k}while(1<=g&&0<=h)}break}}}finally{Na=!1,Error.prepareStackTrace=c}return(a=a?a.displayName||a.name:\"\")?Ma(a):\"\"}\nfunction Pa(a){switch(a.tag){case 5:return Ma(a.type);case 16:return Ma(\"Lazy\");case 13:return Ma(\"Suspense\");case 19:return Ma(\"SuspenseList\");case 0:case 2:case 15:return a=Oa(a.type,!1),a;case 11:return a=Oa(a.type.render,!1),a;case 1:return a=Oa(a.type,!0),a;default:return\"\"}}\nfunction Qa(a){if(null==a)return null;if(\"function\"===typeof a)return a.displayName||a.name||null;if(\"string\"===typeof a)return a;switch(a){case ya:return\"Fragment\";case wa:return\"Portal\";case Aa:return\"Profiler\";case za:return\"StrictMode\";case Ea:return\"Suspense\";case Fa:return\"SuspenseList\"}if(\"object\"===typeof a)switch(a.$$typeof){case Ca:return(a.displayName||\"Context\")+\".Consumer\";case Ba:return(a._context.displayName||\"Context\")+\".Provider\";case Da:var b=a.render;a=a.displayName;a||(a=b.displayName||\nb.name||\"\",a=\"\"!==a?\"ForwardRef(\"+a+\")\":\"ForwardRef\");return a;case Ga:return b=a.displayName||null,null!==b?b:Qa(a.type)||\"Memo\";case Ha:b=a._payload;a=a._init;try{return Qa(a(b))}catch(c){}}return null}\nfunction Ra(a){var b=a.type;switch(a.tag){case 24:return\"Cache\";case 9:return(b.displayName||\"Context\")+\".Consumer\";case 10:return(b._context.displayName||\"Context\")+\".Provider\";case 18:return\"DehydratedFragment\";case 11:return a=b.render,a=a.displayName||a.name||\"\",b.displayName||(\"\"!==a?\"ForwardRef(\"+a+\")\":\"ForwardRef\");case 7:return\"Fragment\";case 5:return b;case 4:return\"Portal\";case 3:return\"Root\";case 6:return\"Text\";case 16:return Qa(b);case 8:return b===za?\"StrictMode\":\"Mode\";case 22:return\"Offscreen\";\ncase 12:return\"Profiler\";case 21:return\"Scope\";case 13:return\"Suspense\";case 19:return\"SuspenseList\";case 25:return\"TracingMarker\";case 1:case 0:case 17:case 2:case 14:case 15:if(\"function\"===typeof b)return b.displayName||b.name||null;if(\"string\"===typeof b)return b}return null}function Sa(a){switch(typeof a){case \"boolean\":case \"number\":case \"string\":case \"undefined\":return a;case \"object\":return a;default:return\"\"}}\nfunction Ta(a){var b=a.type;return(a=a.nodeName)&&\"input\"===a.toLowerCase()&&(\"checkbox\"===b||\"radio\"===b)}\nfunction Ua(a){var b=Ta(a)?\"checked\":\"value\",c=Object.getOwnPropertyDescriptor(a.constructor.prototype,b),d=\"\"+a[b];if(!a.hasOwnProperty(b)&&\"undefined\"!==typeof c&&\"function\"===typeof c.get&&\"function\"===typeof c.set){var e=c.get,f=c.set;Object.defineProperty(a,b,{configurable:!0,get:function(){return e.call(this)},set:function(a){d=\"\"+a;f.call(this,a)}});Object.defineProperty(a,b,{enumerable:c.enumerable});return{getValue:function(){return d},setValue:function(a){d=\"\"+a},stopTracking:function(){a._valueTracker=\nnull;delete a[b]}}}}function Va(a){a._valueTracker||(a._valueTracker=Ua(a))}function Wa(a){if(!a)return!1;var b=a._valueTracker;if(!b)return!0;var c=b.getValue();var d=\"\";a&&(d=Ta(a)?a.checked?\"true\":\"false\":a.value);a=d;return a!==c?(b.setValue(a),!0):!1}function Xa(a){a=a||(\"undefined\"!==typeof document?document:void 0);if(\"undefined\"===typeof a)return null;try{return a.activeElement||a.body}catch(b){return a.body}}\nfunction Ya(a,b){var c=b.checked;return A({},b,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=c?c:a._wrapperState.initialChecked})}function Za(a,b){var c=null==b.defaultValue?\"\":b.defaultValue,d=null!=b.checked?b.checked:b.defaultChecked;c=Sa(null!=b.value?b.value:c);a._wrapperState={initialChecked:d,initialValue:c,controlled:\"checkbox\"===b.type||\"radio\"===b.type?null!=b.checked:null!=b.value}}function ab(a,b){b=b.checked;null!=b&&ta(a,\"checked\",b,!1)}\nfunction bb(a,b){ab(a,b);var c=Sa(b.value),d=b.type;if(null!=c)if(\"number\"===d){if(0===c&&\"\"===a.value||a.value!=c)a.value=\"\"+c}else a.value!==\"\"+c&&(a.value=\"\"+c);else if(\"submit\"===d||\"reset\"===d){a.removeAttribute(\"value\");return}b.hasOwnProperty(\"value\")?cb(a,b.type,c):b.hasOwnProperty(\"defaultValue\")&&cb(a,b.type,Sa(b.defaultValue));null==b.checked&&null!=b.defaultChecked&&(a.defaultChecked=!!b.defaultChecked)}\nfunction db(a,b,c){if(b.hasOwnProperty(\"value\")||b.hasOwnProperty(\"defaultValue\")){var d=b.type;if(!(\"submit\"!==d&&\"reset\"!==d||void 0!==b.value&&null!==b.value))return;b=\"\"+a._wrapperState.initialValue;c||b===a.value||(a.value=b);a.defaultValue=b}c=a.name;\"\"!==c&&(a.name=\"\");a.defaultChecked=!!a._wrapperState.initialChecked;\"\"!==c&&(a.name=c)}\nfunction cb(a,b,c){if(\"number\"!==b||Xa(a.ownerDocument)!==a)null==c?a.defaultValue=\"\"+a._wrapperState.initialValue:a.defaultValue!==\"\"+c&&(a.defaultValue=\"\"+c)}var eb=Array.isArray;\nfunction fb(a,b,c,d){a=a.options;if(b){b={};for(var e=0;e<c.length;e++)b[\"$\"+c[e]]=!0;for(c=0;c<a.length;c++)e=b.hasOwnProperty(\"$\"+a[c].value),a[c].selected!==e&&(a[c].selected=e),e&&d&&(a[c].defaultSelected=!0)}else{c=\"\"+Sa(c);b=null;for(e=0;e<a.length;e++){if(a[e].value===c){a[e].selected=!0;d&&(a[e].defaultSelected=!0);return}null!==b||a[e].disabled||(b=a[e])}null!==b&&(b.selected=!0)}}\nfunction gb(a,b){if(null!=b.dangerouslySetInnerHTML)throw Error(p(91));return A({},b,{value:void 0,defaultValue:void 0,children:\"\"+a._wrapperState.initialValue})}function hb(a,b){var c=b.value;if(null==c){c=b.children;b=b.defaultValue;if(null!=c){if(null!=b)throw Error(p(92));if(eb(c)){if(1<c.length)throw Error(p(93));c=c[0]}b=c}null==b&&(b=\"\");c=b}a._wrapperState={initialValue:Sa(c)}}\nfunction ib(a,b){var c=Sa(b.value),d=Sa(b.defaultValue);null!=c&&(c=\"\"+c,c!==a.value&&(a.value=c),null==b.defaultValue&&a.defaultValue!==c&&(a.defaultValue=c));null!=d&&(a.defaultValue=\"\"+d)}function jb(a){var b=a.textContent;b===a._wrapperState.initialValue&&\"\"!==b&&null!==b&&(a.value=b)}function kb(a){switch(a){case \"svg\":return\"http://www.w3.org/2000/svg\";case \"math\":return\"http://www.w3.org/1998/Math/MathML\";default:return\"http://www.w3.org/1999/xhtml\"}}\nfunction lb(a,b){return null==a||\"http://www.w3.org/1999/xhtml\"===a?kb(b):\"http://www.w3.org/2000/svg\"===a&&\"foreignObject\"===b?\"http://www.w3.org/1999/xhtml\":a}\nvar mb,nb=function(a){return\"undefined\"!==typeof MSApp&&MSApp.execUnsafeLocalFunction?function(b,c,d,e){MSApp.execUnsafeLocalFunction(function(){return a(b,c,d,e)})}:a}(function(a,b){if(\"http://www.w3.org/2000/svg\"!==a.namespaceURI||\"innerHTML\"in a)a.innerHTML=b;else{mb=mb||document.createElement(\"div\");mb.innerHTML=\"<svg>\"+b.valueOf().toString()+\"</svg>\";for(b=mb.firstChild;a.firstChild;)a.removeChild(a.firstChild);for(;b.firstChild;)a.appendChild(b.firstChild)}});\nfunction ob(a,b){if(b){var c=a.firstChild;if(c&&c===a.lastChild&&3===c.nodeType){c.nodeValue=b;return}}a.textContent=b}\nvar pb={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,\nzoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},qb=[\"Webkit\",\"ms\",\"Moz\",\"O\"];Object.keys(pb).forEach(function(a){qb.forEach(function(b){b=b+a.charAt(0).toUpperCase()+a.substring(1);pb[b]=pb[a]})});function rb(a,b,c){return null==b||\"boolean\"===typeof b||\"\"===b?\"\":c||\"number\"!==typeof b||0===b||pb.hasOwnProperty(a)&&pb[a]?(\"\"+b).trim():b+\"px\"}\nfunction sb(a,b){a=a.style;for(var c in b)if(b.hasOwnProperty(c)){var d=0===c.indexOf(\"--\"),e=rb(c,b[c],d);\"float\"===c&&(c=\"cssFloat\");d?a.setProperty(c,e):a[c]=e}}var tb=A({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});\nfunction ub(a,b){if(b){if(tb[a]&&(null!=b.children||null!=b.dangerouslySetInnerHTML))throw Error(p(137,a));if(null!=b.dangerouslySetInnerHTML){if(null!=b.children)throw Error(p(60));if(\"object\"!==typeof b.dangerouslySetInnerHTML||!(\"__html\"in b.dangerouslySetInnerHTML))throw Error(p(61));}if(null!=b.style&&\"object\"!==typeof b.style)throw Error(p(62));}}\nfunction vb(a,b){if(-1===a.indexOf(\"-\"))return\"string\"===typeof b.is;switch(a){case \"annotation-xml\":case \"color-profile\":case \"font-face\":case \"font-face-src\":case \"font-face-uri\":case \"font-face-format\":case \"font-face-name\":case \"missing-glyph\":return!1;default:return!0}}var wb=null;function xb(a){a=a.target||a.srcElement||window;a.correspondingUseElement&&(a=a.correspondingUseElement);return 3===a.nodeType?a.parentNode:a}var yb=null,zb=null,Ab=null;\nfunction Bb(a){if(a=Cb(a)){if(\"function\"!==typeof yb)throw Error(p(280));var b=a.stateNode;b&&(b=Db(b),yb(a.stateNode,a.type,b))}}function Eb(a){zb?Ab?Ab.push(a):Ab=[a]:zb=a}function Fb(){if(zb){var a=zb,b=Ab;Ab=zb=null;Bb(a);if(b)for(a=0;a<b.length;a++)Bb(b[a])}}function Gb(a,b){return a(b)}function Hb(){}var Ib=!1;function Jb(a,b,c){if(Ib)return a(b,c);Ib=!0;try{return Gb(a,b,c)}finally{if(Ib=!1,null!==zb||null!==Ab)Hb(),Fb()}}\nfunction Kb(a,b){var c=a.stateNode;if(null===c)return null;var d=Db(c);if(null===d)return null;c=d[b];a:switch(b){case \"onClick\":case \"onClickCapture\":case \"onDoubleClick\":case \"onDoubleClickCapture\":case \"onMouseDown\":case \"onMouseDownCapture\":case \"onMouseMove\":case \"onMouseMoveCapture\":case \"onMouseUp\":case \"onMouseUpCapture\":case \"onMouseEnter\":(d=!d.disabled)||(a=a.type,d=!(\"button\"===a||\"input\"===a||\"select\"===a||\"textarea\"===a));a=!d;break a;default:a=!1}if(a)return null;if(c&&\"function\"!==\ntypeof c)throw Error(p(231,b,typeof c));return c}var Lb=!1;if(ia)try{var Mb={};Object.defineProperty(Mb,\"passive\",{get:function(){Lb=!0}});window.addEventListener(\"test\",Mb,Mb);window.removeEventListener(\"test\",Mb,Mb)}catch(a){Lb=!1}function Nb(a,b,c,d,e,f,g,h,k){var l=Array.prototype.slice.call(arguments,3);try{b.apply(c,l)}catch(m){this.onError(m)}}var Ob=!1,Pb=null,Qb=!1,Rb=null,Sb={onError:function(a){Ob=!0;Pb=a}};function Tb(a,b,c,d,e,f,g,h,k){Ob=!1;Pb=null;Nb.apply(Sb,arguments)}\nfunction Ub(a,b,c,d,e,f,g,h,k){Tb.apply(this,arguments);if(Ob){if(Ob){var l=Pb;Ob=!1;Pb=null}else throw Error(p(198));Qb||(Qb=!0,Rb=l)}}function Vb(a){var b=a,c=a;if(a.alternate)for(;b.return;)b=b.return;else{a=b;do b=a,0!==(b.flags&4098)&&(c=b.return),a=b.return;while(a)}return 3===b.tag?c:null}function Wb(a){if(13===a.tag){var b=a.memoizedState;null===b&&(a=a.alternate,null!==a&&(b=a.memoizedState));if(null!==b)return b.dehydrated}return null}function Xb(a){if(Vb(a)!==a)throw Error(p(188));}\nfunction Yb(a){var b=a.alternate;if(!b){b=Vb(a);if(null===b)throw Error(p(188));return b!==a?null:a}for(var c=a,d=b;;){var e=c.return;if(null===e)break;var f=e.alternate;if(null===f){d=e.return;if(null!==d){c=d;continue}break}if(e.child===f.child){for(f=e.child;f;){if(f===c)return Xb(e),a;if(f===d)return Xb(e),b;f=f.sibling}throw Error(p(188));}if(c.return!==d.return)c=e,d=f;else{for(var g=!1,h=e.child;h;){if(h===c){g=!0;c=e;d=f;break}if(h===d){g=!0;d=e;c=f;break}h=h.sibling}if(!g){for(h=f.child;h;){if(h===\nc){g=!0;c=f;d=e;break}if(h===d){g=!0;d=f;c=e;break}h=h.sibling}if(!g)throw Error(p(189));}}if(c.alternate!==d)throw Error(p(190));}if(3!==c.tag)throw Error(p(188));return c.stateNode.current===c?a:b}function Zb(a){a=Yb(a);return null!==a?$b(a):null}function $b(a){if(5===a.tag||6===a.tag)return a;for(a=a.child;null!==a;){var b=$b(a);if(null!==b)return b;a=a.sibling}return null}\nvar ac=ca.unstable_scheduleCallback,bc=ca.unstable_cancelCallback,cc=ca.unstable_shouldYield,dc=ca.unstable_requestPaint,B=ca.unstable_now,ec=ca.unstable_getCurrentPriorityLevel,fc=ca.unstable_ImmediatePriority,gc=ca.unstable_UserBlockingPriority,hc=ca.unstable_NormalPriority,ic=ca.unstable_LowPriority,jc=ca.unstable_IdlePriority,kc=null,lc=null;function mc(a){if(lc&&\"function\"===typeof lc.onCommitFiberRoot)try{lc.onCommitFiberRoot(kc,a,void 0,128===(a.current.flags&128))}catch(b){}}\nvar oc=Math.clz32?Math.clz32:nc,pc=Math.log,qc=Math.LN2;function nc(a){a>>>=0;return 0===a?32:31-(pc(a)/qc|0)|0}var rc=64,sc=4194304;\nfunction tc(a){switch(a&-a){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return a&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return a&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;\ndefault:return a}}function uc(a,b){var c=a.pendingLanes;if(0===c)return 0;var d=0,e=a.suspendedLanes,f=a.pingedLanes,g=c&268435455;if(0!==g){var h=g&~e;0!==h?d=tc(h):(f&=g,0!==f&&(d=tc(f)))}else g=c&~e,0!==g?d=tc(g):0!==f&&(d=tc(f));if(0===d)return 0;if(0!==b&&b!==d&&0===(b&e)&&(e=d&-d,f=b&-b,e>=f||16===e&&0!==(f&4194240)))return b;0!==(d&4)&&(d|=c&16);b=a.entangledLanes;if(0!==b)for(a=a.entanglements,b&=d;0<b;)c=31-oc(b),e=1<<c,d|=a[c],b&=~e;return d}\nfunction vc(a,b){switch(a){case 1:case 2:case 4:return b+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return b+5E3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}\nfunction wc(a,b){for(var c=a.suspendedLanes,d=a.pingedLanes,e=a.expirationTimes,f=a.pendingLanes;0<f;){var g=31-oc(f),h=1<<g,k=e[g];if(-1===k){if(0===(h&c)||0!==(h&d))e[g]=vc(h,b)}else k<=b&&(a.expiredLanes|=h);f&=~h}}function xc(a){a=a.pendingLanes&-1073741825;return 0!==a?a:a&1073741824?1073741824:0}function yc(){var a=rc;rc<<=1;0===(rc&4194240)&&(rc=64);return a}function zc(a){for(var b=[],c=0;31>c;c++)b.push(a);return b}\nfunction Ac(a,b,c){a.pendingLanes|=b;536870912!==b&&(a.suspendedLanes=0,a.pingedLanes=0);a=a.eventTimes;b=31-oc(b);a[b]=c}function Bc(a,b){var c=a.pendingLanes&~b;a.pendingLanes=b;a.suspendedLanes=0;a.pingedLanes=0;a.expiredLanes&=b;a.mutableReadLanes&=b;a.entangledLanes&=b;b=a.entanglements;var d=a.eventTimes;for(a=a.expirationTimes;0<c;){var e=31-oc(c),f=1<<e;b[e]=0;d[e]=-1;a[e]=-1;c&=~f}}\nfunction Cc(a,b){var c=a.entangledLanes|=b;for(a=a.entanglements;c;){var d=31-oc(c),e=1<<d;e&b|a[d]&b&&(a[d]|=b);c&=~e}}var C=0;function Dc(a){a&=-a;return 1<a?4<a?0!==(a&268435455)?16:536870912:4:1}var Ec,Fc,Gc,Hc,Ic,Jc=!1,Kc=[],Lc=null,Mc=null,Nc=null,Oc=new Map,Pc=new Map,Qc=[],Rc=\"mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit\".split(\" \");\nfunction Sc(a,b){switch(a){case \"focusin\":case \"focusout\":Lc=null;break;case \"dragenter\":case \"dragleave\":Mc=null;break;case \"mouseover\":case \"mouseout\":Nc=null;break;case \"pointerover\":case \"pointerout\":Oc.delete(b.pointerId);break;case \"gotpointercapture\":case \"lostpointercapture\":Pc.delete(b.pointerId)}}\nfunction Tc(a,b,c,d,e,f){if(null===a||a.nativeEvent!==f)return a={blockedOn:b,domEventName:c,eventSystemFlags:d,nativeEvent:f,targetContainers:[e]},null!==b&&(b=Cb(b),null!==b&&Fc(b)),a;a.eventSystemFlags|=d;b=a.targetContainers;null!==e&&-1===b.indexOf(e)&&b.push(e);return a}\nfunction Uc(a,b,c,d,e){switch(b){case \"focusin\":return Lc=Tc(Lc,a,b,c,d,e),!0;case \"dragenter\":return Mc=Tc(Mc,a,b,c,d,e),!0;case \"mouseover\":return Nc=Tc(Nc,a,b,c,d,e),!0;case \"pointerover\":var f=e.pointerId;Oc.set(f,Tc(Oc.get(f)||null,a,b,c,d,e));return!0;case \"gotpointercapture\":return f=e.pointerId,Pc.set(f,Tc(Pc.get(f)||null,a,b,c,d,e)),!0}return!1}\nfunction Vc(a){var b=Wc(a.target);if(null!==b){var c=Vb(b);if(null!==c)if(b=c.tag,13===b){if(b=Wb(c),null!==b){a.blockedOn=b;Ic(a.priority,function(){Gc(c)});return}}else if(3===b&&c.stateNode.current.memoizedState.isDehydrated){a.blockedOn=3===c.tag?c.stateNode.containerInfo:null;return}}a.blockedOn=null}\nfunction Xc(a){if(null!==a.blockedOn)return!1;for(var b=a.targetContainers;0<b.length;){var c=Yc(a.domEventName,a.eventSystemFlags,b[0],a.nativeEvent);if(null===c){c=a.nativeEvent;var d=new c.constructor(c.type,c);wb=d;c.target.dispatchEvent(d);wb=null}else return b=Cb(c),null!==b&&Fc(b),a.blockedOn=c,!1;b.shift()}return!0}function Zc(a,b,c){Xc(a)&&c.delete(b)}function $c(){Jc=!1;null!==Lc&&Xc(Lc)&&(Lc=null);null!==Mc&&Xc(Mc)&&(Mc=null);null!==Nc&&Xc(Nc)&&(Nc=null);Oc.forEach(Zc);Pc.forEach(Zc)}\nfunction ad(a,b){a.blockedOn===b&&(a.blockedOn=null,Jc||(Jc=!0,ca.unstable_scheduleCallback(ca.unstable_NormalPriority,$c)))}\nfunction bd(a){function b(b){return ad(b,a)}if(0<Kc.length){ad(Kc[0],a);for(var c=1;c<Kc.length;c++){var d=Kc[c];d.blockedOn===a&&(d.blockedOn=null)}}null!==Lc&&ad(Lc,a);null!==Mc&&ad(Mc,a);null!==Nc&&ad(Nc,a);Oc.forEach(b);Pc.forEach(b);for(c=0;c<Qc.length;c++)d=Qc[c],d.blockedOn===a&&(d.blockedOn=null);for(;0<Qc.length&&(c=Qc[0],null===c.blockedOn);)Vc(c),null===c.blockedOn&&Qc.shift()}var cd=ua.ReactCurrentBatchConfig,dd=!0;\nfunction ed(a,b,c,d){var e=C,f=cd.transition;cd.transition=null;try{C=1,fd(a,b,c,d)}finally{C=e,cd.transition=f}}function gd(a,b,c,d){var e=C,f=cd.transition;cd.transition=null;try{C=4,fd(a,b,c,d)}finally{C=e,cd.transition=f}}\nfunction fd(a,b,c,d){if(dd){var e=Yc(a,b,c,d);if(null===e)hd(a,b,d,id,c),Sc(a,d);else if(Uc(e,a,b,c,d))d.stopPropagation();else if(Sc(a,d),b&4&&-1<Rc.indexOf(a)){for(;null!==e;){var f=Cb(e);null!==f&&Ec(f);f=Yc(a,b,c,d);null===f&&hd(a,b,d,id,c);if(f===e)break;e=f}null!==e&&d.stopPropagation()}else hd(a,b,d,null,c)}}var id=null;\nfunction Yc(a,b,c,d){id=null;a=xb(d);a=Wc(a);if(null!==a)if(b=Vb(a),null===b)a=null;else if(c=b.tag,13===c){a=Wb(b);if(null!==a)return a;a=null}else if(3===c){if(b.stateNode.current.memoizedState.isDehydrated)return 3===b.tag?b.stateNode.containerInfo:null;a=null}else b!==a&&(a=null);id=a;return null}\nfunction jd(a){switch(a){case \"cancel\":case \"click\":case \"close\":case \"contextmenu\":case \"copy\":case \"cut\":case \"auxclick\":case \"dblclick\":case \"dragend\":case \"dragstart\":case \"drop\":case \"focusin\":case \"focusout\":case \"input\":case \"invalid\":case \"keydown\":case \"keypress\":case \"keyup\":case \"mousedown\":case \"mouseup\":case \"paste\":case \"pause\":case \"play\":case \"pointercancel\":case \"pointerdown\":case \"pointerup\":case \"ratechange\":case \"reset\":case \"resize\":case \"seeked\":case \"submit\":case \"touchcancel\":case \"touchend\":case \"touchstart\":case \"volumechange\":case \"change\":case \"selectionchange\":case \"textInput\":case \"compositionstart\":case \"compositionend\":case \"compositionupdate\":case \"beforeblur\":case \"afterblur\":case \"beforeinput\":case \"blur\":case \"fullscreenchange\":case \"focus\":case \"hashchange\":case \"popstate\":case \"select\":case \"selectstart\":return 1;case \"drag\":case \"dragenter\":case \"dragexit\":case \"dragleave\":case \"dragover\":case \"mousemove\":case \"mouseout\":case \"mouseover\":case \"pointermove\":case \"pointerout\":case \"pointerover\":case \"scroll\":case \"toggle\":case \"touchmove\":case \"wheel\":case \"mouseenter\":case \"mouseleave\":case \"pointerenter\":case \"pointerleave\":return 4;\ncase \"message\":switch(ec()){case fc:return 1;case gc:return 4;case hc:case ic:return 16;case jc:return 536870912;default:return 16}default:return 16}}var kd=null,ld=null,md=null;function nd(){if(md)return md;var a,b=ld,c=b.length,d,e=\"value\"in kd?kd.value:kd.textContent,f=e.length;for(a=0;a<c&&b[a]===e[a];a++);var g=c-a;for(d=1;d<=g&&b[c-d]===e[f-d];d++);return md=e.slice(a,1<d?1-d:void 0)}\nfunction od(a){var b=a.keyCode;\"charCode\"in a?(a=a.charCode,0===a&&13===b&&(a=13)):a=b;10===a&&(a=13);return 32<=a||13===a?a:0}function pd(){return!0}function qd(){return!1}\nfunction rd(a){function b(b,d,e,f,g){this._reactName=b;this._targetInst=e;this.type=d;this.nativeEvent=f;this.target=g;this.currentTarget=null;for(var c in a)a.hasOwnProperty(c)&&(b=a[c],this[c]=b?b(f):f[c]);this.isDefaultPrevented=(null!=f.defaultPrevented?f.defaultPrevented:!1===f.returnValue)?pd:qd;this.isPropagationStopped=qd;return this}A(b.prototype,{preventDefault:function(){this.defaultPrevented=!0;var a=this.nativeEvent;a&&(a.preventDefault?a.preventDefault():\"unknown\"!==typeof a.returnValue&&\n(a.returnValue=!1),this.isDefaultPrevented=pd)},stopPropagation:function(){var a=this.nativeEvent;a&&(a.stopPropagation?a.stopPropagation():\"unknown\"!==typeof a.cancelBubble&&(a.cancelBubble=!0),this.isPropagationStopped=pd)},persist:function(){},isPersistent:pd});return b}\nvar sd={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(a){return a.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},td=rd(sd),ud=A({},sd,{view:0,detail:0}),vd=rd(ud),wd,xd,yd,Ad=A({},ud,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:zd,button:0,buttons:0,relatedTarget:function(a){return void 0===a.relatedTarget?a.fromElement===a.srcElement?a.toElement:a.fromElement:a.relatedTarget},movementX:function(a){if(\"movementX\"in\na)return a.movementX;a!==yd&&(yd&&\"mousemove\"===a.type?(wd=a.screenX-yd.screenX,xd=a.screenY-yd.screenY):xd=wd=0,yd=a);return wd},movementY:function(a){return\"movementY\"in a?a.movementY:xd}}),Bd=rd(Ad),Cd=A({},Ad,{dataTransfer:0}),Dd=rd(Cd),Ed=A({},ud,{relatedTarget:0}),Fd=rd(Ed),Gd=A({},sd,{animationName:0,elapsedTime:0,pseudoElement:0}),Hd=rd(Gd),Id=A({},sd,{clipboardData:function(a){return\"clipboardData\"in a?a.clipboardData:window.clipboardData}}),Jd=rd(Id),Kd=A({},sd,{data:0}),Ld=rd(Kd),Md={Esc:\"Escape\",\nSpacebar:\" \",Left:\"ArrowLeft\",Up:\"ArrowUp\",Right:\"ArrowRight\",Down:\"ArrowDown\",Del:\"Delete\",Win:\"OS\",Menu:\"ContextMenu\",Apps:\"ContextMenu\",Scroll:\"ScrollLock\",MozPrintableKey:\"Unidentified\"},Nd={8:\"Backspace\",9:\"Tab\",12:\"Clear\",13:\"Enter\",16:\"Shift\",17:\"Control\",18:\"Alt\",19:\"Pause\",20:\"CapsLock\",27:\"Escape\",32:\" \",33:\"PageUp\",34:\"PageDown\",35:\"End\",36:\"Home\",37:\"ArrowLeft\",38:\"ArrowUp\",39:\"ArrowRight\",40:\"ArrowDown\",45:\"Insert\",46:\"Delete\",112:\"F1\",113:\"F2\",114:\"F3\",115:\"F4\",116:\"F5\",117:\"F6\",118:\"F7\",\n119:\"F8\",120:\"F9\",121:\"F10\",122:\"F11\",123:\"F12\",144:\"NumLock\",145:\"ScrollLock\",224:\"Meta\"},Od={Alt:\"altKey\",Control:\"ctrlKey\",Meta:\"metaKey\",Shift:\"shiftKey\"};function Pd(a){var b=this.nativeEvent;return b.getModifierState?b.getModifierState(a):(a=Od[a])?!!b[a]:!1}function zd(){return Pd}\nvar Qd=A({},ud,{key:function(a){if(a.key){var b=Md[a.key]||a.key;if(\"Unidentified\"!==b)return b}return\"keypress\"===a.type?(a=od(a),13===a?\"Enter\":String.fromCharCode(a)):\"keydown\"===a.type||\"keyup\"===a.type?Nd[a.keyCode]||\"Unidentified\":\"\"},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:zd,charCode:function(a){return\"keypress\"===a.type?od(a):0},keyCode:function(a){return\"keydown\"===a.type||\"keyup\"===a.type?a.keyCode:0},which:function(a){return\"keypress\"===\na.type?od(a):\"keydown\"===a.type||\"keyup\"===a.type?a.keyCode:0}}),Rd=rd(Qd),Sd=A({},Ad,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),Td=rd(Sd),Ud=A({},ud,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:zd}),Vd=rd(Ud),Wd=A({},sd,{propertyName:0,elapsedTime:0,pseudoElement:0}),Xd=rd(Wd),Yd=A({},Ad,{deltaX:function(a){return\"deltaX\"in a?a.deltaX:\"wheelDeltaX\"in a?-a.wheelDeltaX:0},\ndeltaY:function(a){return\"deltaY\"in a?a.deltaY:\"wheelDeltaY\"in a?-a.wheelDeltaY:\"wheelDelta\"in a?-a.wheelDelta:0},deltaZ:0,deltaMode:0}),Zd=rd(Yd),$d=[9,13,27,32],ae=ia&&\"CompositionEvent\"in window,be=null;ia&&\"documentMode\"in document&&(be=document.documentMode);var ce=ia&&\"TextEvent\"in window&&!be,de=ia&&(!ae||be&&8<be&&11>=be),ee=String.fromCharCode(32),fe=!1;\nfunction ge(a,b){switch(a){case \"keyup\":return-1!==$d.indexOf(b.keyCode);case \"keydown\":return 229!==b.keyCode;case \"keypress\":case \"mousedown\":case \"focusout\":return!0;default:return!1}}function he(a){a=a.detail;return\"object\"===typeof a&&\"data\"in a?a.data:null}var ie=!1;function je(a,b){switch(a){case \"compositionend\":return he(b);case \"keypress\":if(32!==b.which)return null;fe=!0;return ee;case \"textInput\":return a=b.data,a===ee&&fe?null:a;default:return null}}\nfunction ke(a,b){if(ie)return\"compositionend\"===a||!ae&&ge(a,b)?(a=nd(),md=ld=kd=null,ie=!1,a):null;switch(a){case \"paste\":return null;case \"keypress\":if(!(b.ctrlKey||b.altKey||b.metaKey)||b.ctrlKey&&b.altKey){if(b.char&&1<b.char.length)return b.char;if(b.which)return String.fromCharCode(b.which)}return null;case \"compositionend\":return de&&\"ko\"!==b.locale?null:b.data;default:return null}}\nvar le={color:!0,date:!0,datetime:!0,\"datetime-local\":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function me(a){var b=a&&a.nodeName&&a.nodeName.toLowerCase();return\"input\"===b?!!le[a.type]:\"textarea\"===b?!0:!1}function ne(a,b,c,d){Eb(d);b=oe(b,\"onChange\");0<b.length&&(c=new td(\"onChange\",\"change\",null,c,d),a.push({event:c,listeners:b}))}var pe=null,qe=null;function re(a){se(a,0)}function te(a){var b=ue(a);if(Wa(b))return a}\nfunction ve(a,b){if(\"change\"===a)return b}var we=!1;if(ia){var xe;if(ia){var ye=\"oninput\"in document;if(!ye){var ze=document.createElement(\"div\");ze.setAttribute(\"oninput\",\"return;\");ye=\"function\"===typeof ze.oninput}xe=ye}else xe=!1;we=xe&&(!document.documentMode||9<document.documentMode)}function Ae(){pe&&(pe.detachEvent(\"onpropertychange\",Be),qe=pe=null)}function Be(a){if(\"value\"===a.propertyName&&te(qe)){var b=[];ne(b,qe,a,xb(a));Jb(re,b)}}\nfunction Ce(a,b,c){\"focusin\"===a?(Ae(),pe=b,qe=c,pe.attachEvent(\"onpropertychange\",Be)):\"focusout\"===a&&Ae()}function De(a){if(\"selectionchange\"===a||\"keyup\"===a||\"keydown\"===a)return te(qe)}function Ee(a,b){if(\"click\"===a)return te(b)}function Fe(a,b){if(\"input\"===a||\"change\"===a)return te(b)}function Ge(a,b){return a===b&&(0!==a||1/a===1/b)||a!==a&&b!==b}var He=\"function\"===typeof Object.is?Object.is:Ge;\nfunction Ie(a,b){if(He(a,b))return!0;if(\"object\"!==typeof a||null===a||\"object\"!==typeof b||null===b)return!1;var c=Object.keys(a),d=Object.keys(b);if(c.length!==d.length)return!1;for(d=0;d<c.length;d++){var e=c[d];if(!ja.call(b,e)||!He(a[e],b[e]))return!1}return!0}function Je(a){for(;a&&a.firstChild;)a=a.firstChild;return a}\nfunction Ke(a,b){var c=Je(a);a=0;for(var d;c;){if(3===c.nodeType){d=a+c.textContent.length;if(a<=b&&d>=b)return{node:c,offset:b-a};a=d}a:{for(;c;){if(c.nextSibling){c=c.nextSibling;break a}c=c.parentNode}c=void 0}c=Je(c)}}function Le(a,b){return a&&b?a===b?!0:a&&3===a.nodeType?!1:b&&3===b.nodeType?Le(a,b.parentNode):\"contains\"in a?a.contains(b):a.compareDocumentPosition?!!(a.compareDocumentPosition(b)&16):!1:!1}\nfunction Me(){for(var a=window,b=Xa();b instanceof a.HTMLIFrameElement;){try{var c=\"string\"===typeof b.contentWindow.location.href}catch(d){c=!1}if(c)a=b.contentWindow;else break;b=Xa(a.document)}return b}function Ne(a){var b=a&&a.nodeName&&a.nodeName.toLowerCase();return b&&(\"input\"===b&&(\"text\"===a.type||\"search\"===a.type||\"tel\"===a.type||\"url\"===a.type||\"password\"===a.type)||\"textarea\"===b||\"true\"===a.contentEditable)}\nfunction Oe(a){var b=Me(),c=a.focusedElem,d=a.selectionRange;if(b!==c&&c&&c.ownerDocument&&Le(c.ownerDocument.documentElement,c)){if(null!==d&&Ne(c))if(b=d.start,a=d.end,void 0===a&&(a=b),\"selectionStart\"in c)c.selectionStart=b,c.selectionEnd=Math.min(a,c.value.length);else if(a=(b=c.ownerDocument||document)&&b.defaultView||window,a.getSelection){a=a.getSelection();var e=c.textContent.length,f=Math.min(d.start,e);d=void 0===d.end?f:Math.min(d.end,e);!a.extend&&f>d&&(e=d,d=f,f=e);e=Ke(c,f);var g=Ke(c,\nd);e&&g&&(1!==a.rangeCount||a.anchorNode!==e.node||a.anchorOffset!==e.offset||a.focusNode!==g.node||a.focusOffset!==g.offset)&&(b=b.createRange(),b.setStart(e.node,e.offset),a.removeAllRanges(),f>d?(a.addRange(b),a.extend(g.node,g.offset)):(b.setEnd(g.node,g.offset),a.addRange(b)))}b=[];for(a=c;a=a.parentNode;)1===a.nodeType&&b.push({element:a,left:a.scrollLeft,top:a.scrollTop});\"function\"===typeof c.focus&&c.focus();for(c=0;c<b.length;c++)a=b[c],a.element.scrollLeft=a.left,a.element.scrollTop=a.top}}\nvar Pe=ia&&\"documentMode\"in document&&11>=document.documentMode,Qe=null,Re=null,Se=null,Te=!1;\nfunction Ue(a,b,c){var d=c.window===c?c.document:9===c.nodeType?c:c.ownerDocument;Te||null==Qe||Qe!==Xa(d)||(d=Qe,\"selectionStart\"in d&&Ne(d)?d={start:d.selectionStart,end:d.selectionEnd}:(d=(d.ownerDocument&&d.ownerDocument.defaultView||window).getSelection(),d={anchorNode:d.anchorNode,anchorOffset:d.anchorOffset,focusNode:d.focusNode,focusOffset:d.focusOffset}),Se&&Ie(Se,d)||(Se=d,d=oe(Re,\"onSelect\"),0<d.length&&(b=new td(\"onSelect\",\"select\",null,b,c),a.push({event:b,listeners:d}),b.target=Qe)))}\nfunction Ve(a,b){var c={};c[a.toLowerCase()]=b.toLowerCase();c[\"Webkit\"+a]=\"webkit\"+b;c[\"Moz\"+a]=\"moz\"+b;return c}var We={animationend:Ve(\"Animation\",\"AnimationEnd\"),animationiteration:Ve(\"Animation\",\"AnimationIteration\"),animationstart:Ve(\"Animation\",\"AnimationStart\"),transitionend:Ve(\"Transition\",\"TransitionEnd\")},Xe={},Ye={};\nia&&(Ye=document.createElement(\"div\").style,\"AnimationEvent\"in window||(delete We.animationend.animation,delete We.animationiteration.animation,delete We.animationstart.animation),\"TransitionEvent\"in window||delete We.transitionend.transition);function Ze(a){if(Xe[a])return Xe[a];if(!We[a])return a;var b=We[a],c;for(c in b)if(b.hasOwnProperty(c)&&c in Ye)return Xe[a]=b[c];return a}var $e=Ze(\"animationend\"),af=Ze(\"animationiteration\"),bf=Ze(\"animationstart\"),cf=Ze(\"transitionend\"),df=new Map,ef=\"abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel\".split(\" \");\nfunction ff(a,b){df.set(a,b);fa(b,[a])}for(var gf=0;gf<ef.length;gf++){var hf=ef[gf],jf=hf.toLowerCase(),kf=hf[0].toUpperCase()+hf.slice(1);ff(jf,\"on\"+kf)}ff($e,\"onAnimationEnd\");ff(af,\"onAnimationIteration\");ff(bf,\"onAnimationStart\");ff(\"dblclick\",\"onDoubleClick\");ff(\"focusin\",\"onFocus\");ff(\"focusout\",\"onBlur\");ff(cf,\"onTransitionEnd\");ha(\"onMouseEnter\",[\"mouseout\",\"mouseover\"]);ha(\"onMouseLeave\",[\"mouseout\",\"mouseover\"]);ha(\"onPointerEnter\",[\"pointerout\",\"pointerover\"]);\nha(\"onPointerLeave\",[\"pointerout\",\"pointerover\"]);fa(\"onChange\",\"change click focusin focusout input keydown keyup selectionchange\".split(\" \"));fa(\"onSelect\",\"focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange\".split(\" \"));fa(\"onBeforeInput\",[\"compositionend\",\"keypress\",\"textInput\",\"paste\"]);fa(\"onCompositionEnd\",\"compositionend focusout keydown keypress keyup mousedown\".split(\" \"));fa(\"onCompositionStart\",\"compositionstart focusout keydown keypress keyup mousedown\".split(\" \"));\nfa(\"onCompositionUpdate\",\"compositionupdate focusout keydown keypress keyup mousedown\".split(\" \"));var lf=\"abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting\".split(\" \"),mf=new Set(\"cancel close invalid load scroll toggle\".split(\" \").concat(lf));\nfunction nf(a,b,c){var d=a.type||\"unknown-event\";a.currentTarget=c;Ub(d,b,void 0,a);a.currentTarget=null}\nfunction se(a,b){b=0!==(b&4);for(var c=0;c<a.length;c++){var d=a[c],e=d.event;d=d.listeners;a:{var f=void 0;if(b)for(var g=d.length-1;0<=g;g--){var h=d[g],k=h.instance,l=h.currentTarget;h=h.listener;if(k!==f&&e.isPropagationStopped())break a;nf(e,h,l);f=k}else for(g=0;g<d.length;g++){h=d[g];k=h.instance;l=h.currentTarget;h=h.listener;if(k!==f&&e.isPropagationStopped())break a;nf(e,h,l);f=k}}}if(Qb)throw a=Rb,Qb=!1,Rb=null,a;}\nfunction D(a,b){var c=b[of];void 0===c&&(c=b[of]=new Set);var d=a+\"__bubble\";c.has(d)||(pf(b,a,2,!1),c.add(d))}function qf(a,b,c){var d=0;b&&(d|=4);pf(c,a,d,b)}var rf=\"_reactListening\"+Math.random().toString(36).slice(2);function sf(a){if(!a[rf]){a[rf]=!0;da.forEach(function(b){\"selectionchange\"!==b&&(mf.has(b)||qf(b,!1,a),qf(b,!0,a))});var b=9===a.nodeType?a:a.ownerDocument;null===b||b[rf]||(b[rf]=!0,qf(\"selectionchange\",!1,b))}}\nfunction pf(a,b,c,d){switch(jd(b)){case 1:var e=ed;break;case 4:e=gd;break;default:e=fd}c=e.bind(null,b,c,a);e=void 0;!Lb||\"touchstart\"!==b&&\"touchmove\"!==b&&\"wheel\"!==b||(e=!0);d?void 0!==e?a.addEventListener(b,c,{capture:!0,passive:e}):a.addEventListener(b,c,!0):void 0!==e?a.addEventListener(b,c,{passive:e}):a.addEventListener(b,c,!1)}\nfunction hd(a,b,c,d,e){var f=d;if(0===(b&1)&&0===(b&2)&&null!==d)a:for(;;){if(null===d)return;var g=d.tag;if(3===g||4===g){var h=d.stateNode.containerInfo;if(h===e||8===h.nodeType&&h.parentNode===e)break;if(4===g)for(g=d.return;null!==g;){var k=g.tag;if(3===k||4===k)if(k=g.stateNode.containerInfo,k===e||8===k.nodeType&&k.parentNode===e)return;g=g.return}for(;null!==h;){g=Wc(h);if(null===g)return;k=g.tag;if(5===k||6===k){d=f=g;continue a}h=h.parentNode}}d=d.return}Jb(function(){var d=f,e=xb(c),g=[];\na:{var h=df.get(a);if(void 0!==h){var k=td,n=a;switch(a){case \"keypress\":if(0===od(c))break a;case \"keydown\":case \"keyup\":k=Rd;break;case \"focusin\":n=\"focus\";k=Fd;break;case \"focusout\":n=\"blur\";k=Fd;break;case \"beforeblur\":case \"afterblur\":k=Fd;break;case \"click\":if(2===c.button)break a;case \"auxclick\":case \"dblclick\":case \"mousedown\":case \"mousemove\":case \"mouseup\":case \"mouseout\":case \"mouseover\":case \"contextmenu\":k=Bd;break;case \"drag\":case \"dragend\":case \"dragenter\":case \"dragexit\":case \"dragleave\":case \"dragover\":case \"dragstart\":case \"drop\":k=\nDd;break;case \"touchcancel\":case \"touchend\":case \"touchmove\":case \"touchstart\":k=Vd;break;case $e:case af:case bf:k=Hd;break;case cf:k=Xd;break;case \"scroll\":k=vd;break;case \"wheel\":k=Zd;break;case \"copy\":case \"cut\":case \"paste\":k=Jd;break;case \"gotpointercapture\":case \"lostpointercapture\":case \"pointercancel\":case \"pointerdown\":case \"pointermove\":case \"pointerout\":case \"pointerover\":case \"pointerup\":k=Td}var t=0!==(b&4),J=!t&&\"scroll\"===a,x=t?null!==h?h+\"Capture\":null:h;t=[];for(var w=d,u;null!==\nw;){u=w;var F=u.stateNode;5===u.tag&&null!==F&&(u=F,null!==x&&(F=Kb(w,x),null!=F&&t.push(tf(w,F,u))));if(J)break;w=w.return}0<t.length&&(h=new k(h,n,null,c,e),g.push({event:h,listeners:t}))}}if(0===(b&7)){a:{h=\"mouseover\"===a||\"pointerover\"===a;k=\"mouseout\"===a||\"pointerout\"===a;if(h&&c!==wb&&(n=c.relatedTarget||c.fromElement)&&(Wc(n)||n[uf]))break a;if(k||h){h=e.window===e?e:(h=e.ownerDocument)?h.defaultView||h.parentWindow:window;if(k){if(n=c.relatedTarget||c.toElement,k=d,n=n?Wc(n):null,null!==\nn&&(J=Vb(n),n!==J||5!==n.tag&&6!==n.tag))n=null}else k=null,n=d;if(k!==n){t=Bd;F=\"onMouseLeave\";x=\"onMouseEnter\";w=\"mouse\";if(\"pointerout\"===a||\"pointerover\"===a)t=Td,F=\"onPointerLeave\",x=\"onPointerEnter\",w=\"pointer\";J=null==k?h:ue(k);u=null==n?h:ue(n);h=new t(F,w+\"leave\",k,c,e);h.target=J;h.relatedTarget=u;F=null;Wc(e)===d&&(t=new t(x,w+\"enter\",n,c,e),t.target=u,t.relatedTarget=J,F=t);J=F;if(k&&n)b:{t=k;x=n;w=0;for(u=t;u;u=vf(u))w++;u=0;for(F=x;F;F=vf(F))u++;for(;0<w-u;)t=vf(t),w--;for(;0<u-w;)x=\nvf(x),u--;for(;w--;){if(t===x||null!==x&&t===x.alternate)break b;t=vf(t);x=vf(x)}t=null}else t=null;null!==k&&wf(g,h,k,t,!1);null!==n&&null!==J&&wf(g,J,n,t,!0)}}}a:{h=d?ue(d):window;k=h.nodeName&&h.nodeName.toLowerCase();if(\"select\"===k||\"input\"===k&&\"file\"===h.type)var na=ve;else if(me(h))if(we)na=Fe;else{na=De;var xa=Ce}else(k=h.nodeName)&&\"input\"===k.toLowerCase()&&(\"checkbox\"===h.type||\"radio\"===h.type)&&(na=Ee);if(na&&(na=na(a,d))){ne(g,na,c,e);break a}xa&&xa(a,h,d);\"focusout\"===a&&(xa=h._wrapperState)&&\nxa.controlled&&\"number\"===h.type&&cb(h,\"number\",h.value)}xa=d?ue(d):window;switch(a){case \"focusin\":if(me(xa)||\"true\"===xa.contentEditable)Qe=xa,Re=d,Se=null;break;case \"focusout\":Se=Re=Qe=null;break;case \"mousedown\":Te=!0;break;case \"contextmenu\":case \"mouseup\":case \"dragend\":Te=!1;Ue(g,c,e);break;case \"selectionchange\":if(Pe)break;case \"keydown\":case \"keyup\":Ue(g,c,e)}var $a;if(ae)b:{switch(a){case \"compositionstart\":var ba=\"onCompositionStart\";break b;case \"compositionend\":ba=\"onCompositionEnd\";\nbreak b;case \"compositionupdate\":ba=\"onCompositionUpdate\";break b}ba=void 0}else ie?ge(a,c)&&(ba=\"onCompositionEnd\"):\"keydown\"===a&&229===c.keyCode&&(ba=\"onCompositionStart\");ba&&(de&&\"ko\"!==c.locale&&(ie||\"onCompositionStart\"!==ba?\"onCompositionEnd\"===ba&&ie&&($a=nd()):(kd=e,ld=\"value\"in kd?kd.value:kd.textContent,ie=!0)),xa=oe(d,ba),0<xa.length&&(ba=new Ld(ba,a,null,c,e),g.push({event:ba,listeners:xa}),$a?ba.data=$a:($a=he(c),null!==$a&&(ba.data=$a))));if($a=ce?je(a,c):ke(a,c))d=oe(d,\"onBeforeInput\"),\n0<d.length&&(e=new Ld(\"onBeforeInput\",\"beforeinput\",null,c,e),g.push({event:e,listeners:d}),e.data=$a)}se(g,b)})}function tf(a,b,c){return{instance:a,listener:b,currentTarget:c}}function oe(a,b){for(var c=b+\"Capture\",d=[];null!==a;){var e=a,f=e.stateNode;5===e.tag&&null!==f&&(e=f,f=Kb(a,c),null!=f&&d.unshift(tf(a,f,e)),f=Kb(a,b),null!=f&&d.push(tf(a,f,e)));a=a.return}return d}function vf(a){if(null===a)return null;do a=a.return;while(a&&5!==a.tag);return a?a:null}\nfunction wf(a,b,c,d,e){for(var f=b._reactName,g=[];null!==c&&c!==d;){var h=c,k=h.alternate,l=h.stateNode;if(null!==k&&k===d)break;5===h.tag&&null!==l&&(h=l,e?(k=Kb(c,f),null!=k&&g.unshift(tf(c,k,h))):e||(k=Kb(c,f),null!=k&&g.push(tf(c,k,h))));c=c.return}0!==g.length&&a.push({event:b,listeners:g})}var xf=/\\r\\n?/g,yf=/\\u0000|\\uFFFD/g;function zf(a){return(\"string\"===typeof a?a:\"\"+a).replace(xf,\"\\n\").replace(yf,\"\")}function Af(a,b,c){b=zf(b);if(zf(a)!==b&&c)throw Error(p(425));}function Bf(){}\nvar Cf=null,Df=null;function Ef(a,b){return\"textarea\"===a||\"noscript\"===a||\"string\"===typeof b.children||\"number\"===typeof b.children||\"object\"===typeof b.dangerouslySetInnerHTML&&null!==b.dangerouslySetInnerHTML&&null!=b.dangerouslySetInnerHTML.__html}\nvar Ff=\"function\"===typeof setTimeout?setTimeout:void 0,Gf=\"function\"===typeof clearTimeout?clearTimeout:void 0,Hf=\"function\"===typeof Promise?Promise:void 0,Jf=\"function\"===typeof queueMicrotask?queueMicrotask:\"undefined\"!==typeof Hf?function(a){return Hf.resolve(null).then(a).catch(If)}:Ff;function If(a){setTimeout(function(){throw a;})}\nfunction Kf(a,b){var c=b,d=0;do{var e=c.nextSibling;a.removeChild(c);if(e&&8===e.nodeType)if(c=e.data,\"/$\"===c){if(0===d){a.removeChild(e);bd(b);return}d--}else\"$\"!==c&&\"$?\"!==c&&\"$!\"!==c||d++;c=e}while(c);bd(b)}function Lf(a){for(;null!=a;a=a.nextSibling){var b=a.nodeType;if(1===b||3===b)break;if(8===b){b=a.data;if(\"$\"===b||\"$!\"===b||\"$?\"===b)break;if(\"/$\"===b)return null}}return a}\nfunction Mf(a){a=a.previousSibling;for(var b=0;a;){if(8===a.nodeType){var c=a.data;if(\"$\"===c||\"$!\"===c||\"$?\"===c){if(0===b)return a;b--}else\"/$\"===c&&b++}a=a.previousSibling}return null}var Nf=Math.random().toString(36).slice(2),Of=\"__reactFiber$\"+Nf,Pf=\"__reactProps$\"+Nf,uf=\"__reactContainer$\"+Nf,of=\"__reactEvents$\"+Nf,Qf=\"__reactListeners$\"+Nf,Rf=\"__reactHandles$\"+Nf;\nfunction Wc(a){var b=a[Of];if(b)return b;for(var c=a.parentNode;c;){if(b=c[uf]||c[Of]){c=b.alternate;if(null!==b.child||null!==c&&null!==c.child)for(a=Mf(a);null!==a;){if(c=a[Of])return c;a=Mf(a)}return b}a=c;c=a.parentNode}return null}function Cb(a){a=a[Of]||a[uf];return!a||5!==a.tag&&6!==a.tag&&13!==a.tag&&3!==a.tag?null:a}function ue(a){if(5===a.tag||6===a.tag)return a.stateNode;throw Error(p(33));}function Db(a){return a[Pf]||null}var Sf=[],Tf=-1;function Uf(a){return{current:a}}\nfunction E(a){0>Tf||(a.current=Sf[Tf],Sf[Tf]=null,Tf--)}function G(a,b){Tf++;Sf[Tf]=a.current;a.current=b}var Vf={},H=Uf(Vf),Wf=Uf(!1),Xf=Vf;function Yf(a,b){var c=a.type.contextTypes;if(!c)return Vf;var d=a.stateNode;if(d&&d.__reactInternalMemoizedUnmaskedChildContext===b)return d.__reactInternalMemoizedMaskedChildContext;var e={},f;for(f in c)e[f]=b[f];d&&(a=a.stateNode,a.__reactInternalMemoizedUnmaskedChildContext=b,a.__reactInternalMemoizedMaskedChildContext=e);return e}\nfunction Zf(a){a=a.childContextTypes;return null!==a&&void 0!==a}function $f(){E(Wf);E(H)}function ag(a,b,c){if(H.current!==Vf)throw Error(p(168));G(H,b);G(Wf,c)}function bg(a,b,c){var d=a.stateNode;b=b.childContextTypes;if(\"function\"!==typeof d.getChildContext)return c;d=d.getChildContext();for(var e in d)if(!(e in b))throw Error(p(108,Ra(a)||\"Unknown\",e));return A({},c,d)}\nfunction cg(a){a=(a=a.stateNode)&&a.__reactInternalMemoizedMergedChildContext||Vf;Xf=H.current;G(H,a);G(Wf,Wf.current);return!0}function dg(a,b,c){var d=a.stateNode;if(!d)throw Error(p(169));c?(a=bg(a,b,Xf),d.__reactInternalMemoizedMergedChildContext=a,E(Wf),E(H),G(H,a)):E(Wf);G(Wf,c)}var eg=null,fg=!1,gg=!1;function hg(a){null===eg?eg=[a]:eg.push(a)}function ig(a){fg=!0;hg(a)}\nfunction jg(){if(!gg&&null!==eg){gg=!0;var a=0,b=C;try{var c=eg;for(C=1;a<c.length;a++){var d=c[a];do d=d(!0);while(null!==d)}eg=null;fg=!1}catch(e){throw null!==eg&&(eg=eg.slice(a+1)),ac(fc,jg),e;}finally{C=b,gg=!1}}return null}var kg=[],lg=0,mg=null,ng=0,og=[],pg=0,qg=null,rg=1,sg=\"\";function tg(a,b){kg[lg++]=ng;kg[lg++]=mg;mg=a;ng=b}\nfunction ug(a,b,c){og[pg++]=rg;og[pg++]=sg;og[pg++]=qg;qg=a;var d=rg;a=sg;var e=32-oc(d)-1;d&=~(1<<e);c+=1;var f=32-oc(b)+e;if(30<f){var g=e-e%5;f=(d&(1<<g)-1).toString(32);d>>=g;e-=g;rg=1<<32-oc(b)+e|c<<e|d;sg=f+a}else rg=1<<f|c<<e|d,sg=a}function vg(a){null!==a.return&&(tg(a,1),ug(a,1,0))}function wg(a){for(;a===mg;)mg=kg[--lg],kg[lg]=null,ng=kg[--lg],kg[lg]=null;for(;a===qg;)qg=og[--pg],og[pg]=null,sg=og[--pg],og[pg]=null,rg=og[--pg],og[pg]=null}var xg=null,yg=null,I=!1,zg=null;\nfunction Ag(a,b){var c=Bg(5,null,null,0);c.elementType=\"DELETED\";c.stateNode=b;c.return=a;b=a.deletions;null===b?(a.deletions=[c],a.flags|=16):b.push(c)}\nfunction Cg(a,b){switch(a.tag){case 5:var c=a.type;b=1!==b.nodeType||c.toLowerCase()!==b.nodeName.toLowerCase()?null:b;return null!==b?(a.stateNode=b,xg=a,yg=Lf(b.firstChild),!0):!1;case 6:return b=\"\"===a.pendingProps||3!==b.nodeType?null:b,null!==b?(a.stateNode=b,xg=a,yg=null,!0):!1;case 13:return b=8!==b.nodeType?null:b,null!==b?(c=null!==qg?{id:rg,overflow:sg}:null,a.memoizedState={dehydrated:b,treeContext:c,retryLane:1073741824},c=Bg(18,null,null,0),c.stateNode=b,c.return=a,a.child=c,xg=a,yg=\nnull,!0):!1;default:return!1}}function Dg(a){return 0!==(a.mode&1)&&0===(a.flags&128)}function Eg(a){if(I){var b=yg;if(b){var c=b;if(!Cg(a,b)){if(Dg(a))throw Error(p(418));b=Lf(c.nextSibling);var d=xg;b&&Cg(a,b)?Ag(d,c):(a.flags=a.flags&-4097|2,I=!1,xg=a)}}else{if(Dg(a))throw Error(p(418));a.flags=a.flags&-4097|2;I=!1;xg=a}}}function Fg(a){for(a=a.return;null!==a&&5!==a.tag&&3!==a.tag&&13!==a.tag;)a=a.return;xg=a}\nfunction Gg(a){if(a!==xg)return!1;if(!I)return Fg(a),I=!0,!1;var b;(b=3!==a.tag)&&!(b=5!==a.tag)&&(b=a.type,b=\"head\"!==b&&\"body\"!==b&&!Ef(a.type,a.memoizedProps));if(b&&(b=yg)){if(Dg(a))throw Hg(),Error(p(418));for(;b;)Ag(a,b),b=Lf(b.nextSibling)}Fg(a);if(13===a.tag){a=a.memoizedState;a=null!==a?a.dehydrated:null;if(!a)throw Error(p(317));a:{a=a.nextSibling;for(b=0;a;){if(8===a.nodeType){var c=a.data;if(\"/$\"===c){if(0===b){yg=Lf(a.nextSibling);break a}b--}else\"$\"!==c&&\"$!\"!==c&&\"$?\"!==c||b++}a=a.nextSibling}yg=\nnull}}else yg=xg?Lf(a.stateNode.nextSibling):null;return!0}function Hg(){for(var a=yg;a;)a=Lf(a.nextSibling)}function Ig(){yg=xg=null;I=!1}function Jg(a){null===zg?zg=[a]:zg.push(a)}var Kg=ua.ReactCurrentBatchConfig;\nfunction Lg(a,b,c){a=c.ref;if(null!==a&&\"function\"!==typeof a&&\"object\"!==typeof a){if(c._owner){c=c._owner;if(c){if(1!==c.tag)throw Error(p(309));var d=c.stateNode}if(!d)throw Error(p(147,a));var e=d,f=\"\"+a;if(null!==b&&null!==b.ref&&\"function\"===typeof b.ref&&b.ref._stringRef===f)return b.ref;b=function(a){var b=e.refs;null===a?delete b[f]:b[f]=a};b._stringRef=f;return b}if(\"string\"!==typeof a)throw Error(p(284));if(!c._owner)throw Error(p(290,a));}return a}\nfunction Mg(a,b){a=Object.prototype.toString.call(b);throw Error(p(31,\"[object Object]\"===a?\"object with keys {\"+Object.keys(b).join(\", \")+\"}\":a));}function Ng(a){var b=a._init;return b(a._payload)}\nfunction Og(a){function b(b,c){if(a){var d=b.deletions;null===d?(b.deletions=[c],b.flags|=16):d.push(c)}}function c(c,d){if(!a)return null;for(;null!==d;)b(c,d),d=d.sibling;return null}function d(a,b){for(a=new Map;null!==b;)null!==b.key?a.set(b.key,b):a.set(b.index,b),b=b.sibling;return a}function e(a,b){a=Pg(a,b);a.index=0;a.sibling=null;return a}function f(b,c,d){b.index=d;if(!a)return b.flags|=1048576,c;d=b.alternate;if(null!==d)return d=d.index,d<c?(b.flags|=2,c):d;b.flags|=2;return c}function g(b){a&&\nnull===b.alternate&&(b.flags|=2);return b}function h(a,b,c,d){if(null===b||6!==b.tag)return b=Qg(c,a.mode,d),b.return=a,b;b=e(b,c);b.return=a;return b}function k(a,b,c,d){var f=c.type;if(f===ya)return m(a,b,c.props.children,d,c.key);if(null!==b&&(b.elementType===f||\"object\"===typeof f&&null!==f&&f.$$typeof===Ha&&Ng(f)===b.type))return d=e(b,c.props),d.ref=Lg(a,b,c),d.return=a,d;d=Rg(c.type,c.key,c.props,null,a.mode,d);d.ref=Lg(a,b,c);d.return=a;return d}function l(a,b,c,d){if(null===b||4!==b.tag||\nb.stateNode.containerInfo!==c.containerInfo||b.stateNode.implementation!==c.implementation)return b=Sg(c,a.mode,d),b.return=a,b;b=e(b,c.children||[]);b.return=a;return b}function m(a,b,c,d,f){if(null===b||7!==b.tag)return b=Tg(c,a.mode,d,f),b.return=a,b;b=e(b,c);b.return=a;return b}function q(a,b,c){if(\"string\"===typeof b&&\"\"!==b||\"number\"===typeof b)return b=Qg(\"\"+b,a.mode,c),b.return=a,b;if(\"object\"===typeof b&&null!==b){switch(b.$$typeof){case va:return c=Rg(b.type,b.key,b.props,null,a.mode,c),\nc.ref=Lg(a,null,b),c.return=a,c;case wa:return b=Sg(b,a.mode,c),b.return=a,b;case Ha:var d=b._init;return q(a,d(b._payload),c)}if(eb(b)||Ka(b))return b=Tg(b,a.mode,c,null),b.return=a,b;Mg(a,b)}return null}function r(a,b,c,d){var e=null!==b?b.key:null;if(\"string\"===typeof c&&\"\"!==c||\"number\"===typeof c)return null!==e?null:h(a,b,\"\"+c,d);if(\"object\"===typeof c&&null!==c){switch(c.$$typeof){case va:return c.key===e?k(a,b,c,d):null;case wa:return c.key===e?l(a,b,c,d):null;case Ha:return e=c._init,r(a,\nb,e(c._payload),d)}if(eb(c)||Ka(c))return null!==e?null:m(a,b,c,d,null);Mg(a,c)}return null}function y(a,b,c,d,e){if(\"string\"===typeof d&&\"\"!==d||\"number\"===typeof d)return a=a.get(c)||null,h(b,a,\"\"+d,e);if(\"object\"===typeof d&&null!==d){switch(d.$$typeof){case va:return a=a.get(null===d.key?c:d.key)||null,k(b,a,d,e);case wa:return a=a.get(null===d.key?c:d.key)||null,l(b,a,d,e);case Ha:var f=d._init;return y(a,b,c,f(d._payload),e)}if(eb(d)||Ka(d))return a=a.get(c)||null,m(b,a,d,e,null);Mg(b,d)}return null}\nfunction n(e,g,h,k){for(var l=null,m=null,u=g,w=g=0,x=null;null!==u&&w<h.length;w++){u.index>w?(x=u,u=null):x=u.sibling;var n=r(e,u,h[w],k);if(null===n){null===u&&(u=x);break}a&&u&&null===n.alternate&&b(e,u);g=f(n,g,w);null===m?l=n:m.sibling=n;m=n;u=x}if(w===h.length)return c(e,u),I&&tg(e,w),l;if(null===u){for(;w<h.length;w++)u=q(e,h[w],k),null!==u&&(g=f(u,g,w),null===m?l=u:m.sibling=u,m=u);I&&tg(e,w);return l}for(u=d(e,u);w<h.length;w++)x=y(u,e,w,h[w],k),null!==x&&(a&&null!==x.alternate&&u.delete(null===\nx.key?w:x.key),g=f(x,g,w),null===m?l=x:m.sibling=x,m=x);a&&u.forEach(function(a){return b(e,a)});I&&tg(e,w);return l}function t(e,g,h,k){var l=Ka(h);if(\"function\"!==typeof l)throw Error(p(150));h=l.call(h);if(null==h)throw Error(p(151));for(var u=l=null,m=g,w=g=0,x=null,n=h.next();null!==m&&!n.done;w++,n=h.next()){m.index>w?(x=m,m=null):x=m.sibling;var t=r(e,m,n.value,k);if(null===t){null===m&&(m=x);break}a&&m&&null===t.alternate&&b(e,m);g=f(t,g,w);null===u?l=t:u.sibling=t;u=t;m=x}if(n.done)return c(e,\nm),I&&tg(e,w),l;if(null===m){for(;!n.done;w++,n=h.next())n=q(e,n.value,k),null!==n&&(g=f(n,g,w),null===u?l=n:u.sibling=n,u=n);I&&tg(e,w);return l}for(m=d(e,m);!n.done;w++,n=h.next())n=y(m,e,w,n.value,k),null!==n&&(a&&null!==n.alternate&&m.delete(null===n.key?w:n.key),g=f(n,g,w),null===u?l=n:u.sibling=n,u=n);a&&m.forEach(function(a){return b(e,a)});I&&tg(e,w);return l}function J(a,d,f,h){\"object\"===typeof f&&null!==f&&f.type===ya&&null===f.key&&(f=f.props.children);if(\"object\"===typeof f&&null!==f){switch(f.$$typeof){case va:a:{for(var k=\nf.key,l=d;null!==l;){if(l.key===k){k=f.type;if(k===ya){if(7===l.tag){c(a,l.sibling);d=e(l,f.props.children);d.return=a;a=d;break a}}else if(l.elementType===k||\"object\"===typeof k&&null!==k&&k.$$typeof===Ha&&Ng(k)===l.type){c(a,l.sibling);d=e(l,f.props);d.ref=Lg(a,l,f);d.return=a;a=d;break a}c(a,l);break}else b(a,l);l=l.sibling}f.type===ya?(d=Tg(f.props.children,a.mode,h,f.key),d.return=a,a=d):(h=Rg(f.type,f.key,f.props,null,a.mode,h),h.ref=Lg(a,d,f),h.return=a,a=h)}return g(a);case wa:a:{for(l=f.key;null!==\nd;){if(d.key===l)if(4===d.tag&&d.stateNode.containerInfo===f.containerInfo&&d.stateNode.implementation===f.implementation){c(a,d.sibling);d=e(d,f.children||[]);d.return=a;a=d;break a}else{c(a,d);break}else b(a,d);d=d.sibling}d=Sg(f,a.mode,h);d.return=a;a=d}return g(a);case Ha:return l=f._init,J(a,d,l(f._payload),h)}if(eb(f))return n(a,d,f,h);if(Ka(f))return t(a,d,f,h);Mg(a,f)}return\"string\"===typeof f&&\"\"!==f||\"number\"===typeof f?(f=\"\"+f,null!==d&&6===d.tag?(c(a,d.sibling),d=e(d,f),d.return=a,a=d):\n(c(a,d),d=Qg(f,a.mode,h),d.return=a,a=d),g(a)):c(a,d)}return J}var Ug=Og(!0),Vg=Og(!1),Wg=Uf(null),Xg=null,Yg=null,Zg=null;function $g(){Zg=Yg=Xg=null}function ah(a){var b=Wg.current;E(Wg);a._currentValue=b}function bh(a,b,c){for(;null!==a;){var d=a.alternate;(a.childLanes&b)!==b?(a.childLanes|=b,null!==d&&(d.childLanes|=b)):null!==d&&(d.childLanes&b)!==b&&(d.childLanes|=b);if(a===c)break;a=a.return}}\nfunction ch(a,b){Xg=a;Zg=Yg=null;a=a.dependencies;null!==a&&null!==a.firstContext&&(0!==(a.lanes&b)&&(dh=!0),a.firstContext=null)}function eh(a){var b=a._currentValue;if(Zg!==a)if(a={context:a,memoizedValue:b,next:null},null===Yg){if(null===Xg)throw Error(p(308));Yg=a;Xg.dependencies={lanes:0,firstContext:a}}else Yg=Yg.next=a;return b}var fh=null;function gh(a){null===fh?fh=[a]:fh.push(a)}\nfunction hh(a,b,c,d){var e=b.interleaved;null===e?(c.next=c,gh(b)):(c.next=e.next,e.next=c);b.interleaved=c;return ih(a,d)}function ih(a,b){a.lanes|=b;var c=a.alternate;null!==c&&(c.lanes|=b);c=a;for(a=a.return;null!==a;)a.childLanes|=b,c=a.alternate,null!==c&&(c.childLanes|=b),c=a,a=a.return;return 3===c.tag?c.stateNode:null}var jh=!1;function kh(a){a.updateQueue={baseState:a.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}\nfunction lh(a,b){a=a.updateQueue;b.updateQueue===a&&(b.updateQueue={baseState:a.baseState,firstBaseUpdate:a.firstBaseUpdate,lastBaseUpdate:a.lastBaseUpdate,shared:a.shared,effects:a.effects})}function mh(a,b){return{eventTime:a,lane:b,tag:0,payload:null,callback:null,next:null}}\nfunction nh(a,b,c){var d=a.updateQueue;if(null===d)return null;d=d.shared;if(0!==(K&2)){var e=d.pending;null===e?b.next=b:(b.next=e.next,e.next=b);d.pending=b;return ih(a,c)}e=d.interleaved;null===e?(b.next=b,gh(d)):(b.next=e.next,e.next=b);d.interleaved=b;return ih(a,c)}function oh(a,b,c){b=b.updateQueue;if(null!==b&&(b=b.shared,0!==(c&4194240))){var d=b.lanes;d&=a.pendingLanes;c|=d;b.lanes=c;Cc(a,c)}}\nfunction ph(a,b){var c=a.updateQueue,d=a.alternate;if(null!==d&&(d=d.updateQueue,c===d)){var e=null,f=null;c=c.firstBaseUpdate;if(null!==c){do{var g={eventTime:c.eventTime,lane:c.lane,tag:c.tag,payload:c.payload,callback:c.callback,next:null};null===f?e=f=g:f=f.next=g;c=c.next}while(null!==c);null===f?e=f=b:f=f.next=b}else e=f=b;c={baseState:d.baseState,firstBaseUpdate:e,lastBaseUpdate:f,shared:d.shared,effects:d.effects};a.updateQueue=c;return}a=c.lastBaseUpdate;null===a?c.firstBaseUpdate=b:a.next=\nb;c.lastBaseUpdate=b}\nfunction qh(a,b,c,d){var e=a.updateQueue;jh=!1;var f=e.firstBaseUpdate,g=e.lastBaseUpdate,h=e.shared.pending;if(null!==h){e.shared.pending=null;var k=h,l=k.next;k.next=null;null===g?f=l:g.next=l;g=k;var m=a.alternate;null!==m&&(m=m.updateQueue,h=m.lastBaseUpdate,h!==g&&(null===h?m.firstBaseUpdate=l:h.next=l,m.lastBaseUpdate=k))}if(null!==f){var q=e.baseState;g=0;m=l=k=null;h=f;do{var r=h.lane,y=h.eventTime;if((d&r)===r){null!==m&&(m=m.next={eventTime:y,lane:0,tag:h.tag,payload:h.payload,callback:h.callback,\nnext:null});a:{var n=a,t=h;r=b;y=c;switch(t.tag){case 1:n=t.payload;if(\"function\"===typeof n){q=n.call(y,q,r);break a}q=n;break a;case 3:n.flags=n.flags&-65537|128;case 0:n=t.payload;r=\"function\"===typeof n?n.call(y,q,r):n;if(null===r||void 0===r)break a;q=A({},q,r);break a;case 2:jh=!0}}null!==h.callback&&0!==h.lane&&(a.flags|=64,r=e.effects,null===r?e.effects=[h]:r.push(h))}else y={eventTime:y,lane:r,tag:h.tag,payload:h.payload,callback:h.callback,next:null},null===m?(l=m=y,k=q):m=m.next=y,g|=r;\nh=h.next;if(null===h)if(h=e.shared.pending,null===h)break;else r=h,h=r.next,r.next=null,e.lastBaseUpdate=r,e.shared.pending=null}while(1);null===m&&(k=q);e.baseState=k;e.firstBaseUpdate=l;e.lastBaseUpdate=m;b=e.shared.interleaved;if(null!==b){e=b;do g|=e.lane,e=e.next;while(e!==b)}else null===f&&(e.shared.lanes=0);rh|=g;a.lanes=g;a.memoizedState=q}}\nfunction sh(a,b,c){a=b.effects;b.effects=null;if(null!==a)for(b=0;b<a.length;b++){var d=a[b],e=d.callback;if(null!==e){d.callback=null;d=c;if(\"function\"!==typeof e)throw Error(p(191,e));e.call(d)}}}var th={},uh=Uf(th),vh=Uf(th),wh=Uf(th);function xh(a){if(a===th)throw Error(p(174));return a}\nfunction yh(a,b){G(wh,b);G(vh,a);G(uh,th);a=b.nodeType;switch(a){case 9:case 11:b=(b=b.documentElement)?b.namespaceURI:lb(null,\"\");break;default:a=8===a?b.parentNode:b,b=a.namespaceURI||null,a=a.tagName,b=lb(b,a)}E(uh);G(uh,b)}function zh(){E(uh);E(vh);E(wh)}function Ah(a){xh(wh.current);var b=xh(uh.current);var c=lb(b,a.type);b!==c&&(G(vh,a),G(uh,c))}function Bh(a){vh.current===a&&(E(uh),E(vh))}var L=Uf(0);\nfunction Ch(a){for(var b=a;null!==b;){if(13===b.tag){var c=b.memoizedState;if(null!==c&&(c=c.dehydrated,null===c||\"$?\"===c.data||\"$!\"===c.data))return b}else if(19===b.tag&&void 0!==b.memoizedProps.revealOrder){if(0!==(b.flags&128))return b}else if(null!==b.child){b.child.return=b;b=b.child;continue}if(b===a)break;for(;null===b.sibling;){if(null===b.return||b.return===a)return null;b=b.return}b.sibling.return=b.return;b=b.sibling}return null}var Dh=[];\nfunction Eh(){for(var a=0;a<Dh.length;a++)Dh[a]._workInProgressVersionPrimary=null;Dh.length=0}var Fh=ua.ReactCurrentDispatcher,Gh=ua.ReactCurrentBatchConfig,Hh=0,M=null,N=null,O=null,Ih=!1,Jh=!1,Kh=0,Lh=0;function P(){throw Error(p(321));}function Mh(a,b){if(null===b)return!1;for(var c=0;c<b.length&&c<a.length;c++)if(!He(a[c],b[c]))return!1;return!0}\nfunction Nh(a,b,c,d,e,f){Hh=f;M=b;b.memoizedState=null;b.updateQueue=null;b.lanes=0;Fh.current=null===a||null===a.memoizedState?Oh:Ph;a=c(d,e);if(Jh){f=0;do{Jh=!1;Kh=0;if(25<=f)throw Error(p(301));f+=1;O=N=null;b.updateQueue=null;Fh.current=Qh;a=c(d,e)}while(Jh)}Fh.current=Rh;b=null!==N&&null!==N.next;Hh=0;O=N=M=null;Ih=!1;if(b)throw Error(p(300));return a}function Sh(){var a=0!==Kh;Kh=0;return a}\nfunction Th(){var a={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};null===O?M.memoizedState=O=a:O=O.next=a;return O}function Uh(){if(null===N){var a=M.alternate;a=null!==a?a.memoizedState:null}else a=N.next;var b=null===O?M.memoizedState:O.next;if(null!==b)O=b,N=a;else{if(null===a)throw Error(p(310));N=a;a={memoizedState:N.memoizedState,baseState:N.baseState,baseQueue:N.baseQueue,queue:N.queue,next:null};null===O?M.memoizedState=O=a:O=O.next=a}return O}\nfunction Vh(a,b){return\"function\"===typeof b?b(a):b}\nfunction Wh(a){var b=Uh(),c=b.queue;if(null===c)throw Error(p(311));c.lastRenderedReducer=a;var d=N,e=d.baseQueue,f=c.pending;if(null!==f){if(null!==e){var g=e.next;e.next=f.next;f.next=g}d.baseQueue=e=f;c.pending=null}if(null!==e){f=e.next;d=d.baseState;var h=g=null,k=null,l=f;do{var m=l.lane;if((Hh&m)===m)null!==k&&(k=k.next={lane:0,action:l.action,hasEagerState:l.hasEagerState,eagerState:l.eagerState,next:null}),d=l.hasEagerState?l.eagerState:a(d,l.action);else{var q={lane:m,action:l.action,hasEagerState:l.hasEagerState,\neagerState:l.eagerState,next:null};null===k?(h=k=q,g=d):k=k.next=q;M.lanes|=m;rh|=m}l=l.next}while(null!==l&&l!==f);null===k?g=d:k.next=h;He(d,b.memoizedState)||(dh=!0);b.memoizedState=d;b.baseState=g;b.baseQueue=k;c.lastRenderedState=d}a=c.interleaved;if(null!==a){e=a;do f=e.lane,M.lanes|=f,rh|=f,e=e.next;while(e!==a)}else null===e&&(c.lanes=0);return[b.memoizedState,c.dispatch]}\nfunction Xh(a){var b=Uh(),c=b.queue;if(null===c)throw Error(p(311));c.lastRenderedReducer=a;var d=c.dispatch,e=c.pending,f=b.memoizedState;if(null!==e){c.pending=null;var g=e=e.next;do f=a(f,g.action),g=g.next;while(g!==e);He(f,b.memoizedState)||(dh=!0);b.memoizedState=f;null===b.baseQueue&&(b.baseState=f);c.lastRenderedState=f}return[f,d]}function Yh(){}\nfunction Zh(a,b){var c=M,d=Uh(),e=b(),f=!He(d.memoizedState,e);f&&(d.memoizedState=e,dh=!0);d=d.queue;$h(ai.bind(null,c,d,a),[a]);if(d.getSnapshot!==b||f||null!==O&&O.memoizedState.tag&1){c.flags|=2048;bi(9,ci.bind(null,c,d,e,b),void 0,null);if(null===Q)throw Error(p(349));0!==(Hh&30)||di(c,b,e)}return e}function di(a,b,c){a.flags|=16384;a={getSnapshot:b,value:c};b=M.updateQueue;null===b?(b={lastEffect:null,stores:null},M.updateQueue=b,b.stores=[a]):(c=b.stores,null===c?b.stores=[a]:c.push(a))}\nfunction ci(a,b,c,d){b.value=c;b.getSnapshot=d;ei(b)&&fi(a)}function ai(a,b,c){return c(function(){ei(b)&&fi(a)})}function ei(a){var b=a.getSnapshot;a=a.value;try{var c=b();return!He(a,c)}catch(d){return!0}}function fi(a){var b=ih(a,1);null!==b&&gi(b,a,1,-1)}\nfunction hi(a){var b=Th();\"function\"===typeof a&&(a=a());b.memoizedState=b.baseState=a;a={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:Vh,lastRenderedState:a};b.queue=a;a=a.dispatch=ii.bind(null,M,a);return[b.memoizedState,a]}\nfunction bi(a,b,c,d){a={tag:a,create:b,destroy:c,deps:d,next:null};b=M.updateQueue;null===b?(b={lastEffect:null,stores:null},M.updateQueue=b,b.lastEffect=a.next=a):(c=b.lastEffect,null===c?b.lastEffect=a.next=a:(d=c.next,c.next=a,a.next=d,b.lastEffect=a));return a}function ji(){return Uh().memoizedState}function ki(a,b,c,d){var e=Th();M.flags|=a;e.memoizedState=bi(1|b,c,void 0,void 0===d?null:d)}\nfunction li(a,b,c,d){var e=Uh();d=void 0===d?null:d;var f=void 0;if(null!==N){var g=N.memoizedState;f=g.destroy;if(null!==d&&Mh(d,g.deps)){e.memoizedState=bi(b,c,f,d);return}}M.flags|=a;e.memoizedState=bi(1|b,c,f,d)}function mi(a,b){return ki(8390656,8,a,b)}function $h(a,b){return li(2048,8,a,b)}function ni(a,b){return li(4,2,a,b)}function oi(a,b){return li(4,4,a,b)}\nfunction pi(a,b){if(\"function\"===typeof b)return a=a(),b(a),function(){b(null)};if(null!==b&&void 0!==b)return a=a(),b.current=a,function(){b.current=null}}function qi(a,b,c){c=null!==c&&void 0!==c?c.concat([a]):null;return li(4,4,pi.bind(null,b,a),c)}function ri(){}function si(a,b){var c=Uh();b=void 0===b?null:b;var d=c.memoizedState;if(null!==d&&null!==b&&Mh(b,d[1]))return d[0];c.memoizedState=[a,b];return a}\nfunction ti(a,b){var c=Uh();b=void 0===b?null:b;var d=c.memoizedState;if(null!==d&&null!==b&&Mh(b,d[1]))return d[0];a=a();c.memoizedState=[a,b];return a}function ui(a,b,c){if(0===(Hh&21))return a.baseState&&(a.baseState=!1,dh=!0),a.memoizedState=c;He(c,b)||(c=yc(),M.lanes|=c,rh|=c,a.baseState=!0);return b}function vi(a,b){var c=C;C=0!==c&&4>c?c:4;a(!0);var d=Gh.transition;Gh.transition={};try{a(!1),b()}finally{C=c,Gh.transition=d}}function wi(){return Uh().memoizedState}\nfunction xi(a,b,c){var d=yi(a);c={lane:d,action:c,hasEagerState:!1,eagerState:null,next:null};if(zi(a))Ai(b,c);else if(c=hh(a,b,c,d),null!==c){var e=R();gi(c,a,d,e);Bi(c,b,d)}}\nfunction ii(a,b,c){var d=yi(a),e={lane:d,action:c,hasEagerState:!1,eagerState:null,next:null};if(zi(a))Ai(b,e);else{var f=a.alternate;if(0===a.lanes&&(null===f||0===f.lanes)&&(f=b.lastRenderedReducer,null!==f))try{var g=b.lastRenderedState,h=f(g,c);e.hasEagerState=!0;e.eagerState=h;if(He(h,g)){var k=b.interleaved;null===k?(e.next=e,gh(b)):(e.next=k.next,k.next=e);b.interleaved=e;return}}catch(l){}finally{}c=hh(a,b,e,d);null!==c&&(e=R(),gi(c,a,d,e),Bi(c,b,d))}}\nfunction zi(a){var b=a.alternate;return a===M||null!==b&&b===M}function Ai(a,b){Jh=Ih=!0;var c=a.pending;null===c?b.next=b:(b.next=c.next,c.next=b);a.pending=b}function Bi(a,b,c){if(0!==(c&4194240)){var d=b.lanes;d&=a.pendingLanes;c|=d;b.lanes=c;Cc(a,c)}}\nvar Rh={readContext:eh,useCallback:P,useContext:P,useEffect:P,useImperativeHandle:P,useInsertionEffect:P,useLayoutEffect:P,useMemo:P,useReducer:P,useRef:P,useState:P,useDebugValue:P,useDeferredValue:P,useTransition:P,useMutableSource:P,useSyncExternalStore:P,useId:P,unstable_isNewReconciler:!1},Oh={readContext:eh,useCallback:function(a,b){Th().memoizedState=[a,void 0===b?null:b];return a},useContext:eh,useEffect:mi,useImperativeHandle:function(a,b,c){c=null!==c&&void 0!==c?c.concat([a]):null;return ki(4194308,\n4,pi.bind(null,b,a),c)},useLayoutEffect:function(a,b){return ki(4194308,4,a,b)},useInsertionEffect:function(a,b){return ki(4,2,a,b)},useMemo:function(a,b){var c=Th();b=void 0===b?null:b;a=a();c.memoizedState=[a,b];return a},useReducer:function(a,b,c){var d=Th();b=void 0!==c?c(b):b;d.memoizedState=d.baseState=b;a={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:a,lastRenderedState:b};d.queue=a;a=a.dispatch=xi.bind(null,M,a);return[d.memoizedState,a]},useRef:function(a){var b=\nTh();a={current:a};return b.memoizedState=a},useState:hi,useDebugValue:ri,useDeferredValue:function(a){return Th().memoizedState=a},useTransition:function(){var a=hi(!1),b=a[0];a=vi.bind(null,a[1]);Th().memoizedState=a;return[b,a]},useMutableSource:function(){},useSyncExternalStore:function(a,b,c){var d=M,e=Th();if(I){if(void 0===c)throw Error(p(407));c=c()}else{c=b();if(null===Q)throw Error(p(349));0!==(Hh&30)||di(d,b,c)}e.memoizedState=c;var f={value:c,getSnapshot:b};e.queue=f;mi(ai.bind(null,d,\nf,a),[a]);d.flags|=2048;bi(9,ci.bind(null,d,f,c,b),void 0,null);return c},useId:function(){var a=Th(),b=Q.identifierPrefix;if(I){var c=sg;var d=rg;c=(d&~(1<<32-oc(d)-1)).toString(32)+c;b=\":\"+b+\"R\"+c;c=Kh++;0<c&&(b+=\"H\"+c.toString(32));b+=\":\"}else c=Lh++,b=\":\"+b+\"r\"+c.toString(32)+\":\";return a.memoizedState=b},unstable_isNewReconciler:!1},Ph={readContext:eh,useCallback:si,useContext:eh,useEffect:$h,useImperativeHandle:qi,useInsertionEffect:ni,useLayoutEffect:oi,useMemo:ti,useReducer:Wh,useRef:ji,useState:function(){return Wh(Vh)},\nuseDebugValue:ri,useDeferredValue:function(a){var b=Uh();return ui(b,N.memoizedState,a)},useTransition:function(){var a=Wh(Vh)[0],b=Uh().memoizedState;return[a,b]},useMutableSource:Yh,useSyncExternalStore:Zh,useId:wi,unstable_isNewReconciler:!1},Qh={readContext:eh,useCallback:si,useContext:eh,useEffect:$h,useImperativeHandle:qi,useInsertionEffect:ni,useLayoutEffect:oi,useMemo:ti,useReducer:Xh,useRef:ji,useState:function(){return Xh(Vh)},useDebugValue:ri,useDeferredValue:function(a){var b=Uh();return null===\nN?b.memoizedState=a:ui(b,N.memoizedState,a)},useTransition:function(){var a=Xh(Vh)[0],b=Uh().memoizedState;return[a,b]},useMutableSource:Yh,useSyncExternalStore:Zh,useId:wi,unstable_isNewReconciler:!1};function Ci(a,b){if(a&&a.defaultProps){b=A({},b);a=a.defaultProps;for(var c in a)void 0===b[c]&&(b[c]=a[c]);return b}return b}function Di(a,b,c,d){b=a.memoizedState;c=c(d,b);c=null===c||void 0===c?b:A({},b,c);a.memoizedState=c;0===a.lanes&&(a.updateQueue.baseState=c)}\nvar Ei={isMounted:function(a){return(a=a._reactInternals)?Vb(a)===a:!1},enqueueSetState:function(a,b,c){a=a._reactInternals;var d=R(),e=yi(a),f=mh(d,e);f.payload=b;void 0!==c&&null!==c&&(f.callback=c);b=nh(a,f,e);null!==b&&(gi(b,a,e,d),oh(b,a,e))},enqueueReplaceState:function(a,b,c){a=a._reactInternals;var d=R(),e=yi(a),f=mh(d,e);f.tag=1;f.payload=b;void 0!==c&&null!==c&&(f.callback=c);b=nh(a,f,e);null!==b&&(gi(b,a,e,d),oh(b,a,e))},enqueueForceUpdate:function(a,b){a=a._reactInternals;var c=R(),d=\nyi(a),e=mh(c,d);e.tag=2;void 0!==b&&null!==b&&(e.callback=b);b=nh(a,e,d);null!==b&&(gi(b,a,d,c),oh(b,a,d))}};function Fi(a,b,c,d,e,f,g){a=a.stateNode;return\"function\"===typeof a.shouldComponentUpdate?a.shouldComponentUpdate(d,f,g):b.prototype&&b.prototype.isPureReactComponent?!Ie(c,d)||!Ie(e,f):!0}\nfunction Gi(a,b,c){var d=!1,e=Vf;var f=b.contextType;\"object\"===typeof f&&null!==f?f=eh(f):(e=Zf(b)?Xf:H.current,d=b.contextTypes,f=(d=null!==d&&void 0!==d)?Yf(a,e):Vf);b=new b(c,f);a.memoizedState=null!==b.state&&void 0!==b.state?b.state:null;b.updater=Ei;a.stateNode=b;b._reactInternals=a;d&&(a=a.stateNode,a.__reactInternalMemoizedUnmaskedChildContext=e,a.__reactInternalMemoizedMaskedChildContext=f);return b}\nfunction Hi(a,b,c,d){a=b.state;\"function\"===typeof b.componentWillReceiveProps&&b.componentWillReceiveProps(c,d);\"function\"===typeof b.UNSAFE_componentWillReceiveProps&&b.UNSAFE_componentWillReceiveProps(c,d);b.state!==a&&Ei.enqueueReplaceState(b,b.state,null)}\nfunction Ii(a,b,c,d){var e=a.stateNode;e.props=c;e.state=a.memoizedState;e.refs={};kh(a);var f=b.contextType;\"object\"===typeof f&&null!==f?e.context=eh(f):(f=Zf(b)?Xf:H.current,e.context=Yf(a,f));e.state=a.memoizedState;f=b.getDerivedStateFromProps;\"function\"===typeof f&&(Di(a,b,f,c),e.state=a.memoizedState);\"function\"===typeof b.getDerivedStateFromProps||\"function\"===typeof e.getSnapshotBeforeUpdate||\"function\"!==typeof e.UNSAFE_componentWillMount&&\"function\"!==typeof e.componentWillMount||(b=e.state,\n\"function\"===typeof e.componentWillMount&&e.componentWillMount(),\"function\"===typeof e.UNSAFE_componentWillMount&&e.UNSAFE_componentWillMount(),b!==e.state&&Ei.enqueueReplaceState(e,e.state,null),qh(a,c,e,d),e.state=a.memoizedState);\"function\"===typeof e.componentDidMount&&(a.flags|=4194308)}function Ji(a,b){try{var c=\"\",d=b;do c+=Pa(d),d=d.return;while(d);var e=c}catch(f){e=\"\\nError generating stack: \"+f.message+\"\\n\"+f.stack}return{value:a,source:b,stack:e,digest:null}}\nfunction Ki(a,b,c){return{value:a,source:null,stack:null!=c?c:null,digest:null!=b?b:null}}function Li(a,b){try{console.error(b.value)}catch(c){setTimeout(function(){throw c;})}}var Mi=\"function\"===typeof WeakMap?WeakMap:Map;function Ni(a,b,c){c=mh(-1,c);c.tag=3;c.payload={element:null};var d=b.value;c.callback=function(){Oi||(Oi=!0,Pi=d);Li(a,b)};return c}\nfunction Qi(a,b,c){c=mh(-1,c);c.tag=3;var d=a.type.getDerivedStateFromError;if(\"function\"===typeof d){var e=b.value;c.payload=function(){return d(e)};c.callback=function(){Li(a,b)}}var f=a.stateNode;null!==f&&\"function\"===typeof f.componentDidCatch&&(c.callback=function(){Li(a,b);\"function\"!==typeof d&&(null===Ri?Ri=new Set([this]):Ri.add(this));var c=b.stack;this.componentDidCatch(b.value,{componentStack:null!==c?c:\"\"})});return c}\nfunction Si(a,b,c){var d=a.pingCache;if(null===d){d=a.pingCache=new Mi;var e=new Set;d.set(b,e)}else e=d.get(b),void 0===e&&(e=new Set,d.set(b,e));e.has(c)||(e.add(c),a=Ti.bind(null,a,b,c),b.then(a,a))}function Ui(a){do{var b;if(b=13===a.tag)b=a.memoizedState,b=null!==b?null!==b.dehydrated?!0:!1:!0;if(b)return a;a=a.return}while(null!==a);return null}\nfunction Vi(a,b,c,d,e){if(0===(a.mode&1))return a===b?a.flags|=65536:(a.flags|=128,c.flags|=131072,c.flags&=-52805,1===c.tag&&(null===c.alternate?c.tag=17:(b=mh(-1,1),b.tag=2,nh(c,b,1))),c.lanes|=1),a;a.flags|=65536;a.lanes=e;return a}var Wi=ua.ReactCurrentOwner,dh=!1;function Xi(a,b,c,d){b.child=null===a?Vg(b,null,c,d):Ug(b,a.child,c,d)}\nfunction Yi(a,b,c,d,e){c=c.render;var f=b.ref;ch(b,e);d=Nh(a,b,c,d,f,e);c=Sh();if(null!==a&&!dh)return b.updateQueue=a.updateQueue,b.flags&=-2053,a.lanes&=~e,Zi(a,b,e);I&&c&&vg(b);b.flags|=1;Xi(a,b,d,e);return b.child}\nfunction $i(a,b,c,d,e){if(null===a){var f=c.type;if(\"function\"===typeof f&&!aj(f)&&void 0===f.defaultProps&&null===c.compare&&void 0===c.defaultProps)return b.tag=15,b.type=f,bj(a,b,f,d,e);a=Rg(c.type,null,d,b,b.mode,e);a.ref=b.ref;a.return=b;return b.child=a}f=a.child;if(0===(a.lanes&e)){var g=f.memoizedProps;c=c.compare;c=null!==c?c:Ie;if(c(g,d)&&a.ref===b.ref)return Zi(a,b,e)}b.flags|=1;a=Pg(f,d);a.ref=b.ref;a.return=b;return b.child=a}\nfunction bj(a,b,c,d,e){if(null!==a){var f=a.memoizedProps;if(Ie(f,d)&&a.ref===b.ref)if(dh=!1,b.pendingProps=d=f,0!==(a.lanes&e))0!==(a.flags&131072)&&(dh=!0);else return b.lanes=a.lanes,Zi(a,b,e)}return cj(a,b,c,d,e)}\nfunction dj(a,b,c){var d=b.pendingProps,e=d.children,f=null!==a?a.memoizedState:null;if(\"hidden\"===d.mode)if(0===(b.mode&1))b.memoizedState={baseLanes:0,cachePool:null,transitions:null},G(ej,fj),fj|=c;else{if(0===(c&1073741824))return a=null!==f?f.baseLanes|c:c,b.lanes=b.childLanes=1073741824,b.memoizedState={baseLanes:a,cachePool:null,transitions:null},b.updateQueue=null,G(ej,fj),fj|=a,null;b.memoizedState={baseLanes:0,cachePool:null,transitions:null};d=null!==f?f.baseLanes:c;G(ej,fj);fj|=d}else null!==\nf?(d=f.baseLanes|c,b.memoizedState=null):d=c,G(ej,fj),fj|=d;Xi(a,b,e,c);return b.child}function gj(a,b){var c=b.ref;if(null===a&&null!==c||null!==a&&a.ref!==c)b.flags|=512,b.flags|=2097152}function cj(a,b,c,d,e){var f=Zf(c)?Xf:H.current;f=Yf(b,f);ch(b,e);c=Nh(a,b,c,d,f,e);d=Sh();if(null!==a&&!dh)return b.updateQueue=a.updateQueue,b.flags&=-2053,a.lanes&=~e,Zi(a,b,e);I&&d&&vg(b);b.flags|=1;Xi(a,b,c,e);return b.child}\nfunction hj(a,b,c,d,e){if(Zf(c)){var f=!0;cg(b)}else f=!1;ch(b,e);if(null===b.stateNode)ij(a,b),Gi(b,c,d),Ii(b,c,d,e),d=!0;else if(null===a){var g=b.stateNode,h=b.memoizedProps;g.props=h;var k=g.context,l=c.contextType;\"object\"===typeof l&&null!==l?l=eh(l):(l=Zf(c)?Xf:H.current,l=Yf(b,l));var m=c.getDerivedStateFromProps,q=\"function\"===typeof m||\"function\"===typeof g.getSnapshotBeforeUpdate;q||\"function\"!==typeof g.UNSAFE_componentWillReceiveProps&&\"function\"!==typeof g.componentWillReceiveProps||\n(h!==d||k!==l)&&Hi(b,g,d,l);jh=!1;var r=b.memoizedState;g.state=r;qh(b,d,g,e);k=b.memoizedState;h!==d||r!==k||Wf.current||jh?(\"function\"===typeof m&&(Di(b,c,m,d),k=b.memoizedState),(h=jh||Fi(b,c,h,d,r,k,l))?(q||\"function\"!==typeof g.UNSAFE_componentWillMount&&\"function\"!==typeof g.componentWillMount||(\"function\"===typeof g.componentWillMount&&g.componentWillMount(),\"function\"===typeof g.UNSAFE_componentWillMount&&g.UNSAFE_componentWillMount()),\"function\"===typeof g.componentDidMount&&(b.flags|=4194308)):\n(\"function\"===typeof g.componentDidMount&&(b.flags|=4194308),b.memoizedProps=d,b.memoizedState=k),g.props=d,g.state=k,g.context=l,d=h):(\"function\"===typeof g.componentDidMount&&(b.flags|=4194308),d=!1)}else{g=b.stateNode;lh(a,b);h=b.memoizedProps;l=b.type===b.elementType?h:Ci(b.type,h);g.props=l;q=b.pendingProps;r=g.context;k=c.contextType;\"object\"===typeof k&&null!==k?k=eh(k):(k=Zf(c)?Xf:H.current,k=Yf(b,k));var y=c.getDerivedStateFromProps;(m=\"function\"===typeof y||\"function\"===typeof g.getSnapshotBeforeUpdate)||\n\"function\"!==typeof g.UNSAFE_componentWillReceiveProps&&\"function\"!==typeof g.componentWillReceiveProps||(h!==q||r!==k)&&Hi(b,g,d,k);jh=!1;r=b.memoizedState;g.state=r;qh(b,d,g,e);var n=b.memoizedState;h!==q||r!==n||Wf.current||jh?(\"function\"===typeof y&&(Di(b,c,y,d),n=b.memoizedState),(l=jh||Fi(b,c,l,d,r,n,k)||!1)?(m||\"function\"!==typeof g.UNSAFE_componentWillUpdate&&\"function\"!==typeof g.componentWillUpdate||(\"function\"===typeof g.componentWillUpdate&&g.componentWillUpdate(d,n,k),\"function\"===typeof g.UNSAFE_componentWillUpdate&&\ng.UNSAFE_componentWillUpdate(d,n,k)),\"function\"===typeof g.componentDidUpdate&&(b.flags|=4),\"function\"===typeof g.getSnapshotBeforeUpdate&&(b.flags|=1024)):(\"function\"!==typeof g.componentDidUpdate||h===a.memoizedProps&&r===a.memoizedState||(b.flags|=4),\"function\"!==typeof g.getSnapshotBeforeUpdate||h===a.memoizedProps&&r===a.memoizedState||(b.flags|=1024),b.memoizedProps=d,b.memoizedState=n),g.props=d,g.state=n,g.context=k,d=l):(\"function\"!==typeof g.componentDidUpdate||h===a.memoizedProps&&r===\na.memoizedState||(b.flags|=4),\"function\"!==typeof g.getSnapshotBeforeUpdate||h===a.memoizedProps&&r===a.memoizedState||(b.flags|=1024),d=!1)}return jj(a,b,c,d,f,e)}\nfunction jj(a,b,c,d,e,f){gj(a,b);var g=0!==(b.flags&128);if(!d&&!g)return e&&dg(b,c,!1),Zi(a,b,f);d=b.stateNode;Wi.current=b;var h=g&&\"function\"!==typeof c.getDerivedStateFromError?null:d.render();b.flags|=1;null!==a&&g?(b.child=Ug(b,a.child,null,f),b.child=Ug(b,null,h,f)):Xi(a,b,h,f);b.memoizedState=d.state;e&&dg(b,c,!0);return b.child}function kj(a){var b=a.stateNode;b.pendingContext?ag(a,b.pendingContext,b.pendingContext!==b.context):b.context&&ag(a,b.context,!1);yh(a,b.containerInfo)}\nfunction lj(a,b,c,d,e){Ig();Jg(e);b.flags|=256;Xi(a,b,c,d);return b.child}var mj={dehydrated:null,treeContext:null,retryLane:0};function nj(a){return{baseLanes:a,cachePool:null,transitions:null}}\nfunction oj(a,b,c){var d=b.pendingProps,e=L.current,f=!1,g=0!==(b.flags&128),h;(h=g)||(h=null!==a&&null===a.memoizedState?!1:0!==(e&2));if(h)f=!0,b.flags&=-129;else if(null===a||null!==a.memoizedState)e|=1;G(L,e&1);if(null===a){Eg(b);a=b.memoizedState;if(null!==a&&(a=a.dehydrated,null!==a))return 0===(b.mode&1)?b.lanes=1:\"$!\"===a.data?b.lanes=8:b.lanes=1073741824,null;g=d.children;a=d.fallback;return f?(d=b.mode,f=b.child,g={mode:\"hidden\",children:g},0===(d&1)&&null!==f?(f.childLanes=0,f.pendingProps=\ng):f=pj(g,d,0,null),a=Tg(a,d,c,null),f.return=b,a.return=b,f.sibling=a,b.child=f,b.child.memoizedState=nj(c),b.memoizedState=mj,a):qj(b,g)}e=a.memoizedState;if(null!==e&&(h=e.dehydrated,null!==h))return rj(a,b,g,d,h,e,c);if(f){f=d.fallback;g=b.mode;e=a.child;h=e.sibling;var k={mode:\"hidden\",children:d.children};0===(g&1)&&b.child!==e?(d=b.child,d.childLanes=0,d.pendingProps=k,b.deletions=null):(d=Pg(e,k),d.subtreeFlags=e.subtreeFlags&14680064);null!==h?f=Pg(h,f):(f=Tg(f,g,c,null),f.flags|=2);f.return=\nb;d.return=b;d.sibling=f;b.child=d;d=f;f=b.child;g=a.child.memoizedState;g=null===g?nj(c):{baseLanes:g.baseLanes|c,cachePool:null,transitions:g.transitions};f.memoizedState=g;f.childLanes=a.childLanes&~c;b.memoizedState=mj;return d}f=a.child;a=f.sibling;d=Pg(f,{mode:\"visible\",children:d.children});0===(b.mode&1)&&(d.lanes=c);d.return=b;d.sibling=null;null!==a&&(c=b.deletions,null===c?(b.deletions=[a],b.flags|=16):c.push(a));b.child=d;b.memoizedState=null;return d}\nfunction qj(a,b){b=pj({mode:\"visible\",children:b},a.mode,0,null);b.return=a;return a.child=b}function sj(a,b,c,d){null!==d&&Jg(d);Ug(b,a.child,null,c);a=qj(b,b.pendingProps.children);a.flags|=2;b.memoizedState=null;return a}\nfunction rj(a,b,c,d,e,f,g){if(c){if(b.flags&256)return b.flags&=-257,d=Ki(Error(p(422))),sj(a,b,g,d);if(null!==b.memoizedState)return b.child=a.child,b.flags|=128,null;f=d.fallback;e=b.mode;d=pj({mode:\"visible\",children:d.children},e,0,null);f=Tg(f,e,g,null);f.flags|=2;d.return=b;f.return=b;d.sibling=f;b.child=d;0!==(b.mode&1)&&Ug(b,a.child,null,g);b.child.memoizedState=nj(g);b.memoizedState=mj;return f}if(0===(b.mode&1))return sj(a,b,g,null);if(\"$!\"===e.data){d=e.nextSibling&&e.nextSibling.dataset;\nif(d)var h=d.dgst;d=h;f=Error(p(419));d=Ki(f,d,void 0);return sj(a,b,g,d)}h=0!==(g&a.childLanes);if(dh||h){d=Q;if(null!==d){switch(g&-g){case 4:e=2;break;case 16:e=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:e=32;break;case 536870912:e=268435456;break;default:e=0}e=0!==(e&(d.suspendedLanes|g))?0:e;\n0!==e&&e!==f.retryLane&&(f.retryLane=e,ih(a,e),gi(d,a,e,-1))}tj();d=Ki(Error(p(421)));return sj(a,b,g,d)}if(\"$?\"===e.data)return b.flags|=128,b.child=a.child,b=uj.bind(null,a),e._reactRetry=b,null;a=f.treeContext;yg=Lf(e.nextSibling);xg=b;I=!0;zg=null;null!==a&&(og[pg++]=rg,og[pg++]=sg,og[pg++]=qg,rg=a.id,sg=a.overflow,qg=b);b=qj(b,d.children);b.flags|=4096;return b}function vj(a,b,c){a.lanes|=b;var d=a.alternate;null!==d&&(d.lanes|=b);bh(a.return,b,c)}\nfunction wj(a,b,c,d,e){var f=a.memoizedState;null===f?a.memoizedState={isBackwards:b,rendering:null,renderingStartTime:0,last:d,tail:c,tailMode:e}:(f.isBackwards=b,f.rendering=null,f.renderingStartTime=0,f.last=d,f.tail=c,f.tailMode=e)}\nfunction xj(a,b,c){var d=b.pendingProps,e=d.revealOrder,f=d.tail;Xi(a,b,d.children,c);d=L.current;if(0!==(d&2))d=d&1|2,b.flags|=128;else{if(null!==a&&0!==(a.flags&128))a:for(a=b.child;null!==a;){if(13===a.tag)null!==a.memoizedState&&vj(a,c,b);else if(19===a.tag)vj(a,c,b);else if(null!==a.child){a.child.return=a;a=a.child;continue}if(a===b)break a;for(;null===a.sibling;){if(null===a.return||a.return===b)break a;a=a.return}a.sibling.return=a.return;a=a.sibling}d&=1}G(L,d);if(0===(b.mode&1))b.memoizedState=\nnull;else switch(e){case \"forwards\":c=b.child;for(e=null;null!==c;)a=c.alternate,null!==a&&null===Ch(a)&&(e=c),c=c.sibling;c=e;null===c?(e=b.child,b.child=null):(e=c.sibling,c.sibling=null);wj(b,!1,e,c,f);break;case \"backwards\":c=null;e=b.child;for(b.child=null;null!==e;){a=e.alternate;if(null!==a&&null===Ch(a)){b.child=e;break}a=e.sibling;e.sibling=c;c=e;e=a}wj(b,!0,c,null,f);break;case \"together\":wj(b,!1,null,null,void 0);break;default:b.memoizedState=null}return b.child}\nfunction ij(a,b){0===(b.mode&1)&&null!==a&&(a.alternate=null,b.alternate=null,b.flags|=2)}function Zi(a,b,c){null!==a&&(b.dependencies=a.dependencies);rh|=b.lanes;if(0===(c&b.childLanes))return null;if(null!==a&&b.child!==a.child)throw Error(p(153));if(null!==b.child){a=b.child;c=Pg(a,a.pendingProps);b.child=c;for(c.return=b;null!==a.sibling;)a=a.sibling,c=c.sibling=Pg(a,a.pendingProps),c.return=b;c.sibling=null}return b.child}\nfunction yj(a,b,c){switch(b.tag){case 3:kj(b);Ig();break;case 5:Ah(b);break;case 1:Zf(b.type)&&cg(b);break;case 4:yh(b,b.stateNode.containerInfo);break;case 10:var d=b.type._context,e=b.memoizedProps.value;G(Wg,d._currentValue);d._currentValue=e;break;case 13:d=b.memoizedState;if(null!==d){if(null!==d.dehydrated)return G(L,L.current&1),b.flags|=128,null;if(0!==(c&b.child.childLanes))return oj(a,b,c);G(L,L.current&1);a=Zi(a,b,c);return null!==a?a.sibling:null}G(L,L.current&1);break;case 19:d=0!==(c&\nb.childLanes);if(0!==(a.flags&128)){if(d)return xj(a,b,c);b.flags|=128}e=b.memoizedState;null!==e&&(e.rendering=null,e.tail=null,e.lastEffect=null);G(L,L.current);if(d)break;else return null;case 22:case 23:return b.lanes=0,dj(a,b,c)}return Zi(a,b,c)}var zj,Aj,Bj,Cj;\nzj=function(a,b){for(var c=b.child;null!==c;){if(5===c.tag||6===c.tag)a.appendChild(c.stateNode);else if(4!==c.tag&&null!==c.child){c.child.return=c;c=c.child;continue}if(c===b)break;for(;null===c.sibling;){if(null===c.return||c.return===b)return;c=c.return}c.sibling.return=c.return;c=c.sibling}};Aj=function(){};\nBj=function(a,b,c,d){var e=a.memoizedProps;if(e!==d){a=b.stateNode;xh(uh.current);var f=null;switch(c){case \"input\":e=Ya(a,e);d=Ya(a,d);f=[];break;case \"select\":e=A({},e,{value:void 0});d=A({},d,{value:void 0});f=[];break;case \"textarea\":e=gb(a,e);d=gb(a,d);f=[];break;default:\"function\"!==typeof e.onClick&&\"function\"===typeof d.onClick&&(a.onclick=Bf)}ub(c,d);var g;c=null;for(l in e)if(!d.hasOwnProperty(l)&&e.hasOwnProperty(l)&&null!=e[l])if(\"style\"===l){var h=e[l];for(g in h)h.hasOwnProperty(g)&&\n(c||(c={}),c[g]=\"\")}else\"dangerouslySetInnerHTML\"!==l&&\"children\"!==l&&\"suppressContentEditableWarning\"!==l&&\"suppressHydrationWarning\"!==l&&\"autoFocus\"!==l&&(ea.hasOwnProperty(l)?f||(f=[]):(f=f||[]).push(l,null));for(l in d){var k=d[l];h=null!=e?e[l]:void 0;if(d.hasOwnProperty(l)&&k!==h&&(null!=k||null!=h))if(\"style\"===l)if(h){for(g in h)!h.hasOwnProperty(g)||k&&k.hasOwnProperty(g)||(c||(c={}),c[g]=\"\");for(g in k)k.hasOwnProperty(g)&&h[g]!==k[g]&&(c||(c={}),c[g]=k[g])}else c||(f||(f=[]),f.push(l,\nc)),c=k;else\"dangerouslySetInnerHTML\"===l?(k=k?k.__html:void 0,h=h?h.__html:void 0,null!=k&&h!==k&&(f=f||[]).push(l,k)):\"children\"===l?\"string\"!==typeof k&&\"number\"!==typeof k||(f=f||[]).push(l,\"\"+k):\"suppressContentEditableWarning\"!==l&&\"suppressHydrationWarning\"!==l&&(ea.hasOwnProperty(l)?(null!=k&&\"onScroll\"===l&&D(\"scroll\",a),f||h===k||(f=[])):(f=f||[]).push(l,k))}c&&(f=f||[]).push(\"style\",c);var l=f;if(b.updateQueue=l)b.flags|=4}};Cj=function(a,b,c,d){c!==d&&(b.flags|=4)};\nfunction Dj(a,b){if(!I)switch(a.tailMode){case \"hidden\":b=a.tail;for(var c=null;null!==b;)null!==b.alternate&&(c=b),b=b.sibling;null===c?a.tail=null:c.sibling=null;break;case \"collapsed\":c=a.tail;for(var d=null;null!==c;)null!==c.alternate&&(d=c),c=c.sibling;null===d?b||null===a.tail?a.tail=null:a.tail.sibling=null:d.sibling=null}}\nfunction S(a){var b=null!==a.alternate&&a.alternate.child===a.child,c=0,d=0;if(b)for(var e=a.child;null!==e;)c|=e.lanes|e.childLanes,d|=e.subtreeFlags&14680064,d|=e.flags&14680064,e.return=a,e=e.sibling;else for(e=a.child;null!==e;)c|=e.lanes|e.childLanes,d|=e.subtreeFlags,d|=e.flags,e.return=a,e=e.sibling;a.subtreeFlags|=d;a.childLanes=c;return b}\nfunction Ej(a,b,c){var d=b.pendingProps;wg(b);switch(b.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return S(b),null;case 1:return Zf(b.type)&&$f(),S(b),null;case 3:d=b.stateNode;zh();E(Wf);E(H);Eh();d.pendingContext&&(d.context=d.pendingContext,d.pendingContext=null);if(null===a||null===a.child)Gg(b)?b.flags|=4:null===a||a.memoizedState.isDehydrated&&0===(b.flags&256)||(b.flags|=1024,null!==zg&&(Fj(zg),zg=null));Aj(a,b);S(b);return null;case 5:Bh(b);var e=xh(wh.current);\nc=b.type;if(null!==a&&null!=b.stateNode)Bj(a,b,c,d,e),a.ref!==b.ref&&(b.flags|=512,b.flags|=2097152);else{if(!d){if(null===b.stateNode)throw Error(p(166));S(b);return null}a=xh(uh.current);if(Gg(b)){d=b.stateNode;c=b.type;var f=b.memoizedProps;d[Of]=b;d[Pf]=f;a=0!==(b.mode&1);switch(c){case \"dialog\":D(\"cancel\",d);D(\"close\",d);break;case \"iframe\":case \"object\":case \"embed\":D(\"load\",d);break;case \"video\":case \"audio\":for(e=0;e<lf.length;e++)D(lf[e],d);break;case \"source\":D(\"error\",d);break;case \"img\":case \"image\":case \"link\":D(\"error\",\nd);D(\"load\",d);break;case \"details\":D(\"toggle\",d);break;case \"input\":Za(d,f);D(\"invalid\",d);break;case \"select\":d._wrapperState={wasMultiple:!!f.multiple};D(\"invalid\",d);break;case \"textarea\":hb(d,f),D(\"invalid\",d)}ub(c,f);e=null;for(var g in f)if(f.hasOwnProperty(g)){var h=f[g];\"children\"===g?\"string\"===typeof h?d.textContent!==h&&(!0!==f.suppressHydrationWarning&&Af(d.textContent,h,a),e=[\"children\",h]):\"number\"===typeof h&&d.textContent!==\"\"+h&&(!0!==f.suppressHydrationWarning&&Af(d.textContent,\nh,a),e=[\"children\",\"\"+h]):ea.hasOwnProperty(g)&&null!=h&&\"onScroll\"===g&&D(\"scroll\",d)}switch(c){case \"input\":Va(d);db(d,f,!0);break;case \"textarea\":Va(d);jb(d);break;case \"select\":case \"option\":break;default:\"function\"===typeof f.onClick&&(d.onclick=Bf)}d=e;b.updateQueue=d;null!==d&&(b.flags|=4)}else{g=9===e.nodeType?e:e.ownerDocument;\"http://www.w3.org/1999/xhtml\"===a&&(a=kb(c));\"http://www.w3.org/1999/xhtml\"===a?\"script\"===c?(a=g.createElement(\"div\"),a.innerHTML=\"<script>\\x3c/script>\",a=a.removeChild(a.firstChild)):\n\"string\"===typeof d.is?a=g.createElement(c,{is:d.is}):(a=g.createElement(c),\"select\"===c&&(g=a,d.multiple?g.multiple=!0:d.size&&(g.size=d.size))):a=g.createElementNS(a,c);a[Of]=b;a[Pf]=d;zj(a,b,!1,!1);b.stateNode=a;a:{g=vb(c,d);switch(c){case \"dialog\":D(\"cancel\",a);D(\"close\",a);e=d;break;case \"iframe\":case \"object\":case \"embed\":D(\"load\",a);e=d;break;case \"video\":case \"audio\":for(e=0;e<lf.length;e++)D(lf[e],a);e=d;break;case \"source\":D(\"error\",a);e=d;break;case \"img\":case \"image\":case \"link\":D(\"error\",\na);D(\"load\",a);e=d;break;case \"details\":D(\"toggle\",a);e=d;break;case \"input\":Za(a,d);e=Ya(a,d);D(\"invalid\",a);break;case \"option\":e=d;break;case \"select\":a._wrapperState={wasMultiple:!!d.multiple};e=A({},d,{value:void 0});D(\"invalid\",a);break;case \"textarea\":hb(a,d);e=gb(a,d);D(\"invalid\",a);break;default:e=d}ub(c,e);h=e;for(f in h)if(h.hasOwnProperty(f)){var k=h[f];\"style\"===f?sb(a,k):\"dangerouslySetInnerHTML\"===f?(k=k?k.__html:void 0,null!=k&&nb(a,k)):\"children\"===f?\"string\"===typeof k?(\"textarea\"!==\nc||\"\"!==k)&&ob(a,k):\"number\"===typeof k&&ob(a,\"\"+k):\"suppressContentEditableWarning\"!==f&&\"suppressHydrationWarning\"!==f&&\"autoFocus\"!==f&&(ea.hasOwnProperty(f)?null!=k&&\"onScroll\"===f&&D(\"scroll\",a):null!=k&&ta(a,f,k,g))}switch(c){case \"input\":Va(a);db(a,d,!1);break;case \"textarea\":Va(a);jb(a);break;case \"option\":null!=d.value&&a.setAttribute(\"value\",\"\"+Sa(d.value));break;case \"select\":a.multiple=!!d.multiple;f=d.value;null!=f?fb(a,!!d.multiple,f,!1):null!=d.defaultValue&&fb(a,!!d.multiple,d.defaultValue,\n!0);break;default:\"function\"===typeof e.onClick&&(a.onclick=Bf)}switch(c){case \"button\":case \"input\":case \"select\":case \"textarea\":d=!!d.autoFocus;break a;case \"img\":d=!0;break a;default:d=!1}}d&&(b.flags|=4)}null!==b.ref&&(b.flags|=512,b.flags|=2097152)}S(b);return null;case 6:if(a&&null!=b.stateNode)Cj(a,b,a.memoizedProps,d);else{if(\"string\"!==typeof d&&null===b.stateNode)throw Error(p(166));c=xh(wh.current);xh(uh.current);if(Gg(b)){d=b.stateNode;c=b.memoizedProps;d[Of]=b;if(f=d.nodeValue!==c)if(a=\nxg,null!==a)switch(a.tag){case 3:Af(d.nodeValue,c,0!==(a.mode&1));break;case 5:!0!==a.memoizedProps.suppressHydrationWarning&&Af(d.nodeValue,c,0!==(a.mode&1))}f&&(b.flags|=4)}else d=(9===c.nodeType?c:c.ownerDocument).createTextNode(d),d[Of]=b,b.stateNode=d}S(b);return null;case 13:E(L);d=b.memoizedState;if(null===a||null!==a.memoizedState&&null!==a.memoizedState.dehydrated){if(I&&null!==yg&&0!==(b.mode&1)&&0===(b.flags&128))Hg(),Ig(),b.flags|=98560,f=!1;else if(f=Gg(b),null!==d&&null!==d.dehydrated){if(null===\na){if(!f)throw Error(p(318));f=b.memoizedState;f=null!==f?f.dehydrated:null;if(!f)throw Error(p(317));f[Of]=b}else Ig(),0===(b.flags&128)&&(b.memoizedState=null),b.flags|=4;S(b);f=!1}else null!==zg&&(Fj(zg),zg=null),f=!0;if(!f)return b.flags&65536?b:null}if(0!==(b.flags&128))return b.lanes=c,b;d=null!==d;d!==(null!==a&&null!==a.memoizedState)&&d&&(b.child.flags|=8192,0!==(b.mode&1)&&(null===a||0!==(L.current&1)?0===T&&(T=3):tj()));null!==b.updateQueue&&(b.flags|=4);S(b);return null;case 4:return zh(),\nAj(a,b),null===a&&sf(b.stateNode.containerInfo),S(b),null;case 10:return ah(b.type._context),S(b),null;case 17:return Zf(b.type)&&$f(),S(b),null;case 19:E(L);f=b.memoizedState;if(null===f)return S(b),null;d=0!==(b.flags&128);g=f.rendering;if(null===g)if(d)Dj(f,!1);else{if(0!==T||null!==a&&0!==(a.flags&128))for(a=b.child;null!==a;){g=Ch(a);if(null!==g){b.flags|=128;Dj(f,!1);d=g.updateQueue;null!==d&&(b.updateQueue=d,b.flags|=4);b.subtreeFlags=0;d=c;for(c=b.child;null!==c;)f=c,a=d,f.flags&=14680066,\ng=f.alternate,null===g?(f.childLanes=0,f.lanes=a,f.child=null,f.subtreeFlags=0,f.memoizedProps=null,f.memoizedState=null,f.updateQueue=null,f.dependencies=null,f.stateNode=null):(f.childLanes=g.childLanes,f.lanes=g.lanes,f.child=g.child,f.subtreeFlags=0,f.deletions=null,f.memoizedProps=g.memoizedProps,f.memoizedState=g.memoizedState,f.updateQueue=g.updateQueue,f.type=g.type,a=g.dependencies,f.dependencies=null===a?null:{lanes:a.lanes,firstContext:a.firstContext}),c=c.sibling;G(L,L.current&1|2);return b.child}a=\na.sibling}null!==f.tail&&B()>Gj&&(b.flags|=128,d=!0,Dj(f,!1),b.lanes=4194304)}else{if(!d)if(a=Ch(g),null!==a){if(b.flags|=128,d=!0,c=a.updateQueue,null!==c&&(b.updateQueue=c,b.flags|=4),Dj(f,!0),null===f.tail&&\"hidden\"===f.tailMode&&!g.alternate&&!I)return S(b),null}else 2*B()-f.renderingStartTime>Gj&&1073741824!==c&&(b.flags|=128,d=!0,Dj(f,!1),b.lanes=4194304);f.isBackwards?(g.sibling=b.child,b.child=g):(c=f.last,null!==c?c.sibling=g:b.child=g,f.last=g)}if(null!==f.tail)return b=f.tail,f.rendering=\nb,f.tail=b.sibling,f.renderingStartTime=B(),b.sibling=null,c=L.current,G(L,d?c&1|2:c&1),b;S(b);return null;case 22:case 23:return Hj(),d=null!==b.memoizedState,null!==a&&null!==a.memoizedState!==d&&(b.flags|=8192),d&&0!==(b.mode&1)?0!==(fj&1073741824)&&(S(b),b.subtreeFlags&6&&(b.flags|=8192)):S(b),null;case 24:return null;case 25:return null}throw Error(p(156,b.tag));}\nfunction Ij(a,b){wg(b);switch(b.tag){case 1:return Zf(b.type)&&$f(),a=b.flags,a&65536?(b.flags=a&-65537|128,b):null;case 3:return zh(),E(Wf),E(H),Eh(),a=b.flags,0!==(a&65536)&&0===(a&128)?(b.flags=a&-65537|128,b):null;case 5:return Bh(b),null;case 13:E(L);a=b.memoizedState;if(null!==a&&null!==a.dehydrated){if(null===b.alternate)throw Error(p(340));Ig()}a=b.flags;return a&65536?(b.flags=a&-65537|128,b):null;case 19:return E(L),null;case 4:return zh(),null;case 10:return ah(b.type._context),null;case 22:case 23:return Hj(),\nnull;case 24:return null;default:return null}}var Jj=!1,U=!1,Kj=\"function\"===typeof WeakSet?WeakSet:Set,V=null;function Lj(a,b){var c=a.ref;if(null!==c)if(\"function\"===typeof c)try{c(null)}catch(d){W(a,b,d)}else c.current=null}function Mj(a,b,c){try{c()}catch(d){W(a,b,d)}}var Nj=!1;\nfunction Oj(a,b){Cf=dd;a=Me();if(Ne(a)){if(\"selectionStart\"in a)var c={start:a.selectionStart,end:a.selectionEnd};else a:{c=(c=a.ownerDocument)&&c.defaultView||window;var d=c.getSelection&&c.getSelection();if(d&&0!==d.rangeCount){c=d.anchorNode;var e=d.anchorOffset,f=d.focusNode;d=d.focusOffset;try{c.nodeType,f.nodeType}catch(F){c=null;break a}var g=0,h=-1,k=-1,l=0,m=0,q=a,r=null;b:for(;;){for(var y;;){q!==c||0!==e&&3!==q.nodeType||(h=g+e);q!==f||0!==d&&3!==q.nodeType||(k=g+d);3===q.nodeType&&(g+=\nq.nodeValue.length);if(null===(y=q.firstChild))break;r=q;q=y}for(;;){if(q===a)break b;r===c&&++l===e&&(h=g);r===f&&++m===d&&(k=g);if(null!==(y=q.nextSibling))break;q=r;r=q.parentNode}q=y}c=-1===h||-1===k?null:{start:h,end:k}}else c=null}c=c||{start:0,end:0}}else c=null;Df={focusedElem:a,selectionRange:c};dd=!1;for(V=b;null!==V;)if(b=V,a=b.child,0!==(b.subtreeFlags&1028)&&null!==a)a.return=b,V=a;else for(;null!==V;){b=V;try{var n=b.alternate;if(0!==(b.flags&1024))switch(b.tag){case 0:case 11:case 15:break;\ncase 1:if(null!==n){var t=n.memoizedProps,J=n.memoizedState,x=b.stateNode,w=x.getSnapshotBeforeUpdate(b.elementType===b.type?t:Ci(b.type,t),J);x.__reactInternalSnapshotBeforeUpdate=w}break;case 3:var u=b.stateNode.containerInfo;1===u.nodeType?u.textContent=\"\":9===u.nodeType&&u.documentElement&&u.removeChild(u.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(p(163));}}catch(F){W(b,b.return,F)}a=b.sibling;if(null!==a){a.return=b.return;V=a;break}V=b.return}n=Nj;Nj=!1;return n}\nfunction Pj(a,b,c){var d=b.updateQueue;d=null!==d?d.lastEffect:null;if(null!==d){var e=d=d.next;do{if((e.tag&a)===a){var f=e.destroy;e.destroy=void 0;void 0!==f&&Mj(b,c,f)}e=e.next}while(e!==d)}}function Qj(a,b){b=b.updateQueue;b=null!==b?b.lastEffect:null;if(null!==b){var c=b=b.next;do{if((c.tag&a)===a){var d=c.create;c.destroy=d()}c=c.next}while(c!==b)}}function Rj(a){var b=a.ref;if(null!==b){var c=a.stateNode;switch(a.tag){case 5:a=c;break;default:a=c}\"function\"===typeof b?b(a):b.current=a}}\nfunction Sj(a){var b=a.alternate;null!==b&&(a.alternate=null,Sj(b));a.child=null;a.deletions=null;a.sibling=null;5===a.tag&&(b=a.stateNode,null!==b&&(delete b[Of],delete b[Pf],delete b[of],delete b[Qf],delete b[Rf]));a.stateNode=null;a.return=null;a.dependencies=null;a.memoizedProps=null;a.memoizedState=null;a.pendingProps=null;a.stateNode=null;a.updateQueue=null}function Tj(a){return 5===a.tag||3===a.tag||4===a.tag}\nfunction Uj(a){a:for(;;){for(;null===a.sibling;){if(null===a.return||Tj(a.return))return null;a=a.return}a.sibling.return=a.return;for(a=a.sibling;5!==a.tag&&6!==a.tag&&18!==a.tag;){if(a.flags&2)continue a;if(null===a.child||4===a.tag)continue a;else a.child.return=a,a=a.child}if(!(a.flags&2))return a.stateNode}}\nfunction Vj(a,b,c){var d=a.tag;if(5===d||6===d)a=a.stateNode,b?8===c.nodeType?c.parentNode.insertBefore(a,b):c.insertBefore(a,b):(8===c.nodeType?(b=c.parentNode,b.insertBefore(a,c)):(b=c,b.appendChild(a)),c=c._reactRootContainer,null!==c&&void 0!==c||null!==b.onclick||(b.onclick=Bf));else if(4!==d&&(a=a.child,null!==a))for(Vj(a,b,c),a=a.sibling;null!==a;)Vj(a,b,c),a=a.sibling}\nfunction Wj(a,b,c){var d=a.tag;if(5===d||6===d)a=a.stateNode,b?c.insertBefore(a,b):c.appendChild(a);else if(4!==d&&(a=a.child,null!==a))for(Wj(a,b,c),a=a.sibling;null!==a;)Wj(a,b,c),a=a.sibling}var X=null,Xj=!1;function Yj(a,b,c){for(c=c.child;null!==c;)Zj(a,b,c),c=c.sibling}\nfunction Zj(a,b,c){if(lc&&\"function\"===typeof lc.onCommitFiberUnmount)try{lc.onCommitFiberUnmount(kc,c)}catch(h){}switch(c.tag){case 5:U||Lj(c,b);case 6:var d=X,e=Xj;X=null;Yj(a,b,c);X=d;Xj=e;null!==X&&(Xj?(a=X,c=c.stateNode,8===a.nodeType?a.parentNode.removeChild(c):a.removeChild(c)):X.removeChild(c.stateNode));break;case 18:null!==X&&(Xj?(a=X,c=c.stateNode,8===a.nodeType?Kf(a.parentNode,c):1===a.nodeType&&Kf(a,c),bd(a)):Kf(X,c.stateNode));break;case 4:d=X;e=Xj;X=c.stateNode.containerInfo;Xj=!0;\nYj(a,b,c);X=d;Xj=e;break;case 0:case 11:case 14:case 15:if(!U&&(d=c.updateQueue,null!==d&&(d=d.lastEffect,null!==d))){e=d=d.next;do{var f=e,g=f.destroy;f=f.tag;void 0!==g&&(0!==(f&2)?Mj(c,b,g):0!==(f&4)&&Mj(c,b,g));e=e.next}while(e!==d)}Yj(a,b,c);break;case 1:if(!U&&(Lj(c,b),d=c.stateNode,\"function\"===typeof d.componentWillUnmount))try{d.props=c.memoizedProps,d.state=c.memoizedState,d.componentWillUnmount()}catch(h){W(c,b,h)}Yj(a,b,c);break;case 21:Yj(a,b,c);break;case 22:c.mode&1?(U=(d=U)||null!==\nc.memoizedState,Yj(a,b,c),U=d):Yj(a,b,c);break;default:Yj(a,b,c)}}function ak(a){var b=a.updateQueue;if(null!==b){a.updateQueue=null;var c=a.stateNode;null===c&&(c=a.stateNode=new Kj);b.forEach(function(b){var d=bk.bind(null,a,b);c.has(b)||(c.add(b),b.then(d,d))})}}\nfunction ck(a,b){var c=b.deletions;if(null!==c)for(var d=0;d<c.length;d++){var e=c[d];try{var f=a,g=b,h=g;a:for(;null!==h;){switch(h.tag){case 5:X=h.stateNode;Xj=!1;break a;case 3:X=h.stateNode.containerInfo;Xj=!0;break a;case 4:X=h.stateNode.containerInfo;Xj=!0;break a}h=h.return}if(null===X)throw Error(p(160));Zj(f,g,e);X=null;Xj=!1;var k=e.alternate;null!==k&&(k.return=null);e.return=null}catch(l){W(e,b,l)}}if(b.subtreeFlags&12854)for(b=b.child;null!==b;)dk(b,a),b=b.sibling}\nfunction dk(a,b){var c=a.alternate,d=a.flags;switch(a.tag){case 0:case 11:case 14:case 15:ck(b,a);ek(a);if(d&4){try{Pj(3,a,a.return),Qj(3,a)}catch(t){W(a,a.return,t)}try{Pj(5,a,a.return)}catch(t){W(a,a.return,t)}}break;case 1:ck(b,a);ek(a);d&512&&null!==c&&Lj(c,c.return);break;case 5:ck(b,a);ek(a);d&512&&null!==c&&Lj(c,c.return);if(a.flags&32){var e=a.stateNode;try{ob(e,\"\")}catch(t){W(a,a.return,t)}}if(d&4&&(e=a.stateNode,null!=e)){var f=a.memoizedProps,g=null!==c?c.memoizedProps:f,h=a.type,k=a.updateQueue;\na.updateQueue=null;if(null!==k)try{\"input\"===h&&\"radio\"===f.type&&null!=f.name&&ab(e,f);vb(h,g);var l=vb(h,f);for(g=0;g<k.length;g+=2){var m=k[g],q=k[g+1];\"style\"===m?sb(e,q):\"dangerouslySetInnerHTML\"===m?nb(e,q):\"children\"===m?ob(e,q):ta(e,m,q,l)}switch(h){case \"input\":bb(e,f);break;case \"textarea\":ib(e,f);break;case \"select\":var r=e._wrapperState.wasMultiple;e._wrapperState.wasMultiple=!!f.multiple;var y=f.value;null!=y?fb(e,!!f.multiple,y,!1):r!==!!f.multiple&&(null!=f.defaultValue?fb(e,!!f.multiple,\nf.defaultValue,!0):fb(e,!!f.multiple,f.multiple?[]:\"\",!1))}e[Pf]=f}catch(t){W(a,a.return,t)}}break;case 6:ck(b,a);ek(a);if(d&4){if(null===a.stateNode)throw Error(p(162));e=a.stateNode;f=a.memoizedProps;try{e.nodeValue=f}catch(t){W(a,a.return,t)}}break;case 3:ck(b,a);ek(a);if(d&4&&null!==c&&c.memoizedState.isDehydrated)try{bd(b.containerInfo)}catch(t){W(a,a.return,t)}break;case 4:ck(b,a);ek(a);break;case 13:ck(b,a);ek(a);e=a.child;e.flags&8192&&(f=null!==e.memoizedState,e.stateNode.isHidden=f,!f||\nnull!==e.alternate&&null!==e.alternate.memoizedState||(fk=B()));d&4&&ak(a);break;case 22:m=null!==c&&null!==c.memoizedState;a.mode&1?(U=(l=U)||m,ck(b,a),U=l):ck(b,a);ek(a);if(d&8192){l=null!==a.memoizedState;if((a.stateNode.isHidden=l)&&!m&&0!==(a.mode&1))for(V=a,m=a.child;null!==m;){for(q=V=m;null!==V;){r=V;y=r.child;switch(r.tag){case 0:case 11:case 14:case 15:Pj(4,r,r.return);break;case 1:Lj(r,r.return);var n=r.stateNode;if(\"function\"===typeof n.componentWillUnmount){d=r;c=r.return;try{b=d,n.props=\nb.memoizedProps,n.state=b.memoizedState,n.componentWillUnmount()}catch(t){W(d,c,t)}}break;case 5:Lj(r,r.return);break;case 22:if(null!==r.memoizedState){gk(q);continue}}null!==y?(y.return=r,V=y):gk(q)}m=m.sibling}a:for(m=null,q=a;;){if(5===q.tag){if(null===m){m=q;try{e=q.stateNode,l?(f=e.style,\"function\"===typeof f.setProperty?f.setProperty(\"display\",\"none\",\"important\"):f.display=\"none\"):(h=q.stateNode,k=q.memoizedProps.style,g=void 0!==k&&null!==k&&k.hasOwnProperty(\"display\")?k.display:null,h.style.display=\nrb(\"display\",g))}catch(t){W(a,a.return,t)}}}else if(6===q.tag){if(null===m)try{q.stateNode.nodeValue=l?\"\":q.memoizedProps}catch(t){W(a,a.return,t)}}else if((22!==q.tag&&23!==q.tag||null===q.memoizedState||q===a)&&null!==q.child){q.child.return=q;q=q.child;continue}if(q===a)break a;for(;null===q.sibling;){if(null===q.return||q.return===a)break a;m===q&&(m=null);q=q.return}m===q&&(m=null);q.sibling.return=q.return;q=q.sibling}}break;case 19:ck(b,a);ek(a);d&4&&ak(a);break;case 21:break;default:ck(b,\na),ek(a)}}function ek(a){var b=a.flags;if(b&2){try{a:{for(var c=a.return;null!==c;){if(Tj(c)){var d=c;break a}c=c.return}throw Error(p(160));}switch(d.tag){case 5:var e=d.stateNode;d.flags&32&&(ob(e,\"\"),d.flags&=-33);var f=Uj(a);Wj(a,f,e);break;case 3:case 4:var g=d.stateNode.containerInfo,h=Uj(a);Vj(a,h,g);break;default:throw Error(p(161));}}catch(k){W(a,a.return,k)}a.flags&=-3}b&4096&&(a.flags&=-4097)}function hk(a,b,c){V=a;ik(a,b,c)}\nfunction ik(a,b,c){for(var d=0!==(a.mode&1);null!==V;){var e=V,f=e.child;if(22===e.tag&&d){var g=null!==e.memoizedState||Jj;if(!g){var h=e.alternate,k=null!==h&&null!==h.memoizedState||U;h=Jj;var l=U;Jj=g;if((U=k)&&!l)for(V=e;null!==V;)g=V,k=g.child,22===g.tag&&null!==g.memoizedState?jk(e):null!==k?(k.return=g,V=k):jk(e);for(;null!==f;)V=f,ik(f,b,c),f=f.sibling;V=e;Jj=h;U=l}kk(a,b,c)}else 0!==(e.subtreeFlags&8772)&&null!==f?(f.return=e,V=f):kk(a,b,c)}}\nfunction kk(a){for(;null!==V;){var b=V;if(0!==(b.flags&8772)){var c=b.alternate;try{if(0!==(b.flags&8772))switch(b.tag){case 0:case 11:case 15:U||Qj(5,b);break;case 1:var d=b.stateNode;if(b.flags&4&&!U)if(null===c)d.componentDidMount();else{var e=b.elementType===b.type?c.memoizedProps:Ci(b.type,c.memoizedProps);d.componentDidUpdate(e,c.memoizedState,d.__reactInternalSnapshotBeforeUpdate)}var f=b.updateQueue;null!==f&&sh(b,f,d);break;case 3:var g=b.updateQueue;if(null!==g){c=null;if(null!==b.child)switch(b.child.tag){case 5:c=\nb.child.stateNode;break;case 1:c=b.child.stateNode}sh(b,g,c)}break;case 5:var h=b.stateNode;if(null===c&&b.flags&4){c=h;var k=b.memoizedProps;switch(b.type){case \"button\":case \"input\":case \"select\":case \"textarea\":k.autoFocus&&c.focus();break;case \"img\":k.src&&(c.src=k.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(null===b.memoizedState){var l=b.alternate;if(null!==l){var m=l.memoizedState;if(null!==m){var q=m.dehydrated;null!==q&&bd(q)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;\ndefault:throw Error(p(163));}U||b.flags&512&&Rj(b)}catch(r){W(b,b.return,r)}}if(b===a){V=null;break}c=b.sibling;if(null!==c){c.return=b.return;V=c;break}V=b.return}}function gk(a){for(;null!==V;){var b=V;if(b===a){V=null;break}var c=b.sibling;if(null!==c){c.return=b.return;V=c;break}V=b.return}}\nfunction jk(a){for(;null!==V;){var b=V;try{switch(b.tag){case 0:case 11:case 15:var c=b.return;try{Qj(4,b)}catch(k){W(b,c,k)}break;case 1:var d=b.stateNode;if(\"function\"===typeof d.componentDidMount){var e=b.return;try{d.componentDidMount()}catch(k){W(b,e,k)}}var f=b.return;try{Rj(b)}catch(k){W(b,f,k)}break;case 5:var g=b.return;try{Rj(b)}catch(k){W(b,g,k)}}}catch(k){W(b,b.return,k)}if(b===a){V=null;break}var h=b.sibling;if(null!==h){h.return=b.return;V=h;break}V=b.return}}\nvar lk=Math.ceil,mk=ua.ReactCurrentDispatcher,nk=ua.ReactCurrentOwner,ok=ua.ReactCurrentBatchConfig,K=0,Q=null,Y=null,Z=0,fj=0,ej=Uf(0),T=0,pk=null,rh=0,qk=0,rk=0,sk=null,tk=null,fk=0,Gj=Infinity,uk=null,Oi=!1,Pi=null,Ri=null,vk=!1,wk=null,xk=0,yk=0,zk=null,Ak=-1,Bk=0;function R(){return 0!==(K&6)?B():-1!==Ak?Ak:Ak=B()}\nfunction yi(a){if(0===(a.mode&1))return 1;if(0!==(K&2)&&0!==Z)return Z&-Z;if(null!==Kg.transition)return 0===Bk&&(Bk=yc()),Bk;a=C;if(0!==a)return a;a=window.event;a=void 0===a?16:jd(a.type);return a}function gi(a,b,c,d){if(50<yk)throw yk=0,zk=null,Error(p(185));Ac(a,c,d);if(0===(K&2)||a!==Q)a===Q&&(0===(K&2)&&(qk|=c),4===T&&Ck(a,Z)),Dk(a,d),1===c&&0===K&&0===(b.mode&1)&&(Gj=B()+500,fg&&jg())}\nfunction Dk(a,b){var c=a.callbackNode;wc(a,b);var d=uc(a,a===Q?Z:0);if(0===d)null!==c&&bc(c),a.callbackNode=null,a.callbackPriority=0;else if(b=d&-d,a.callbackPriority!==b){null!=c&&bc(c);if(1===b)0===a.tag?ig(Ek.bind(null,a)):hg(Ek.bind(null,a)),Jf(function(){0===(K&6)&&jg()}),c=null;else{switch(Dc(d)){case 1:c=fc;break;case 4:c=gc;break;case 16:c=hc;break;case 536870912:c=jc;break;default:c=hc}c=Fk(c,Gk.bind(null,a))}a.callbackPriority=b;a.callbackNode=c}}\nfunction Gk(a,b){Ak=-1;Bk=0;if(0!==(K&6))throw Error(p(327));var c=a.callbackNode;if(Hk()&&a.callbackNode!==c)return null;var d=uc(a,a===Q?Z:0);if(0===d)return null;if(0!==(d&30)||0!==(d&a.expiredLanes)||b)b=Ik(a,d);else{b=d;var e=K;K|=2;var f=Jk();if(Q!==a||Z!==b)uk=null,Gj=B()+500,Kk(a,b);do try{Lk();break}catch(h){Mk(a,h)}while(1);$g();mk.current=f;K=e;null!==Y?b=0:(Q=null,Z=0,b=T)}if(0!==b){2===b&&(e=xc(a),0!==e&&(d=e,b=Nk(a,e)));if(1===b)throw c=pk,Kk(a,0),Ck(a,d),Dk(a,B()),c;if(6===b)Ck(a,d);\nelse{e=a.current.alternate;if(0===(d&30)&&!Ok(e)&&(b=Ik(a,d),2===b&&(f=xc(a),0!==f&&(d=f,b=Nk(a,f))),1===b))throw c=pk,Kk(a,0),Ck(a,d),Dk(a,B()),c;a.finishedWork=e;a.finishedLanes=d;switch(b){case 0:case 1:throw Error(p(345));case 2:Pk(a,tk,uk);break;case 3:Ck(a,d);if((d&130023424)===d&&(b=fk+500-B(),10<b)){if(0!==uc(a,0))break;e=a.suspendedLanes;if((e&d)!==d){R();a.pingedLanes|=a.suspendedLanes&e;break}a.timeoutHandle=Ff(Pk.bind(null,a,tk,uk),b);break}Pk(a,tk,uk);break;case 4:Ck(a,d);if((d&4194240)===\nd)break;b=a.eventTimes;for(e=-1;0<d;){var g=31-oc(d);f=1<<g;g=b[g];g>e&&(e=g);d&=~f}d=e;d=B()-d;d=(120>d?120:480>d?480:1080>d?1080:1920>d?1920:3E3>d?3E3:4320>d?4320:1960*lk(d/1960))-d;if(10<d){a.timeoutHandle=Ff(Pk.bind(null,a,tk,uk),d);break}Pk(a,tk,uk);break;case 5:Pk(a,tk,uk);break;default:throw Error(p(329));}}}Dk(a,B());return a.callbackNode===c?Gk.bind(null,a):null}\nfunction Nk(a,b){var c=sk;a.current.memoizedState.isDehydrated&&(Kk(a,b).flags|=256);a=Ik(a,b);2!==a&&(b=tk,tk=c,null!==b&&Fj(b));return a}function Fj(a){null===tk?tk=a:tk.push.apply(tk,a)}\nfunction Ok(a){for(var b=a;;){if(b.flags&16384){var c=b.updateQueue;if(null!==c&&(c=c.stores,null!==c))for(var d=0;d<c.length;d++){var e=c[d],f=e.getSnapshot;e=e.value;try{if(!He(f(),e))return!1}catch(g){return!1}}}c=b.child;if(b.subtreeFlags&16384&&null!==c)c.return=b,b=c;else{if(b===a)break;for(;null===b.sibling;){if(null===b.return||b.return===a)return!0;b=b.return}b.sibling.return=b.return;b=b.sibling}}return!0}\nfunction Ck(a,b){b&=~rk;b&=~qk;a.suspendedLanes|=b;a.pingedLanes&=~b;for(a=a.expirationTimes;0<b;){var c=31-oc(b),d=1<<c;a[c]=-1;b&=~d}}function Ek(a){if(0!==(K&6))throw Error(p(327));Hk();var b=uc(a,0);if(0===(b&1))return Dk(a,B()),null;var c=Ik(a,b);if(0!==a.tag&&2===c){var d=xc(a);0!==d&&(b=d,c=Nk(a,d))}if(1===c)throw c=pk,Kk(a,0),Ck(a,b),Dk(a,B()),c;if(6===c)throw Error(p(345));a.finishedWork=a.current.alternate;a.finishedLanes=b;Pk(a,tk,uk);Dk(a,B());return null}\nfunction Qk(a,b){var c=K;K|=1;try{return a(b)}finally{K=c,0===K&&(Gj=B()+500,fg&&jg())}}function Rk(a){null!==wk&&0===wk.tag&&0===(K&6)&&Hk();var b=K;K|=1;var c=ok.transition,d=C;try{if(ok.transition=null,C=1,a)return a()}finally{C=d,ok.transition=c,K=b,0===(K&6)&&jg()}}function Hj(){fj=ej.current;E(ej)}\nfunction Kk(a,b){a.finishedWork=null;a.finishedLanes=0;var c=a.timeoutHandle;-1!==c&&(a.timeoutHandle=-1,Gf(c));if(null!==Y)for(c=Y.return;null!==c;){var d=c;wg(d);switch(d.tag){case 1:d=d.type.childContextTypes;null!==d&&void 0!==d&&$f();break;case 3:zh();E(Wf);E(H);Eh();break;case 5:Bh(d);break;case 4:zh();break;case 13:E(L);break;case 19:E(L);break;case 10:ah(d.type._context);break;case 22:case 23:Hj()}c=c.return}Q=a;Y=a=Pg(a.current,null);Z=fj=b;T=0;pk=null;rk=qk=rh=0;tk=sk=null;if(null!==fh){for(b=\n0;b<fh.length;b++)if(c=fh[b],d=c.interleaved,null!==d){c.interleaved=null;var e=d.next,f=c.pending;if(null!==f){var g=f.next;f.next=e;d.next=g}c.pending=d}fh=null}return a}\nfunction Mk(a,b){do{var c=Y;try{$g();Fh.current=Rh;if(Ih){for(var d=M.memoizedState;null!==d;){var e=d.queue;null!==e&&(e.pending=null);d=d.next}Ih=!1}Hh=0;O=N=M=null;Jh=!1;Kh=0;nk.current=null;if(null===c||null===c.return){T=1;pk=b;Y=null;break}a:{var f=a,g=c.return,h=c,k=b;b=Z;h.flags|=32768;if(null!==k&&\"object\"===typeof k&&\"function\"===typeof k.then){var l=k,m=h,q=m.tag;if(0===(m.mode&1)&&(0===q||11===q||15===q)){var r=m.alternate;r?(m.updateQueue=r.updateQueue,m.memoizedState=r.memoizedState,\nm.lanes=r.lanes):(m.updateQueue=null,m.memoizedState=null)}var y=Ui(g);if(null!==y){y.flags&=-257;Vi(y,g,h,f,b);y.mode&1&&Si(f,l,b);b=y;k=l;var n=b.updateQueue;if(null===n){var t=new Set;t.add(k);b.updateQueue=t}else n.add(k);break a}else{if(0===(b&1)){Si(f,l,b);tj();break a}k=Error(p(426))}}else if(I&&h.mode&1){var J=Ui(g);if(null!==J){0===(J.flags&65536)&&(J.flags|=256);Vi(J,g,h,f,b);Jg(Ji(k,h));break a}}f=k=Ji(k,h);4!==T&&(T=2);null===sk?sk=[f]:sk.push(f);f=g;do{switch(f.tag){case 3:f.flags|=65536;\nb&=-b;f.lanes|=b;var x=Ni(f,k,b);ph(f,x);break a;case 1:h=k;var w=f.type,u=f.stateNode;if(0===(f.flags&128)&&(\"function\"===typeof w.getDerivedStateFromError||null!==u&&\"function\"===typeof u.componentDidCatch&&(null===Ri||!Ri.has(u)))){f.flags|=65536;b&=-b;f.lanes|=b;var F=Qi(f,h,b);ph(f,F);break a}}f=f.return}while(null!==f)}Sk(c)}catch(na){b=na;Y===c&&null!==c&&(Y=c=c.return);continue}break}while(1)}function Jk(){var a=mk.current;mk.current=Rh;return null===a?Rh:a}\nfunction tj(){if(0===T||3===T||2===T)T=4;null===Q||0===(rh&268435455)&&0===(qk&268435455)||Ck(Q,Z)}function Ik(a,b){var c=K;K|=2;var d=Jk();if(Q!==a||Z!==b)uk=null,Kk(a,b);do try{Tk();break}catch(e){Mk(a,e)}while(1);$g();K=c;mk.current=d;if(null!==Y)throw Error(p(261));Q=null;Z=0;return T}function Tk(){for(;null!==Y;)Uk(Y)}function Lk(){for(;null!==Y&&!cc();)Uk(Y)}function Uk(a){var b=Vk(a.alternate,a,fj);a.memoizedProps=a.pendingProps;null===b?Sk(a):Y=b;nk.current=null}\nfunction Sk(a){var b=a;do{var c=b.alternate;a=b.return;if(0===(b.flags&32768)){if(c=Ej(c,b,fj),null!==c){Y=c;return}}else{c=Ij(c,b);if(null!==c){c.flags&=32767;Y=c;return}if(null!==a)a.flags|=32768,a.subtreeFlags=0,a.deletions=null;else{T=6;Y=null;return}}b=b.sibling;if(null!==b){Y=b;return}Y=b=a}while(null!==b);0===T&&(T=5)}function Pk(a,b,c){var d=C,e=ok.transition;try{ok.transition=null,C=1,Wk(a,b,c,d)}finally{ok.transition=e,C=d}return null}\nfunction Wk(a,b,c,d){do Hk();while(null!==wk);if(0!==(K&6))throw Error(p(327));c=a.finishedWork;var e=a.finishedLanes;if(null===c)return null;a.finishedWork=null;a.finishedLanes=0;if(c===a.current)throw Error(p(177));a.callbackNode=null;a.callbackPriority=0;var f=c.lanes|c.childLanes;Bc(a,f);a===Q&&(Y=Q=null,Z=0);0===(c.subtreeFlags&2064)&&0===(c.flags&2064)||vk||(vk=!0,Fk(hc,function(){Hk();return null}));f=0!==(c.flags&15990);if(0!==(c.subtreeFlags&15990)||f){f=ok.transition;ok.transition=null;\nvar g=C;C=1;var h=K;K|=4;nk.current=null;Oj(a,c);dk(c,a);Oe(Df);dd=!!Cf;Df=Cf=null;a.current=c;hk(c,a,e);dc();K=h;C=g;ok.transition=f}else a.current=c;vk&&(vk=!1,wk=a,xk=e);f=a.pendingLanes;0===f&&(Ri=null);mc(c.stateNode,d);Dk(a,B());if(null!==b)for(d=a.onRecoverableError,c=0;c<b.length;c++)e=b[c],d(e.value,{componentStack:e.stack,digest:e.digest});if(Oi)throw Oi=!1,a=Pi,Pi=null,a;0!==(xk&1)&&0!==a.tag&&Hk();f=a.pendingLanes;0!==(f&1)?a===zk?yk++:(yk=0,zk=a):yk=0;jg();return null}\nfunction Hk(){if(null!==wk){var a=Dc(xk),b=ok.transition,c=C;try{ok.transition=null;C=16>a?16:a;if(null===wk)var d=!1;else{a=wk;wk=null;xk=0;if(0!==(K&6))throw Error(p(331));var e=K;K|=4;for(V=a.current;null!==V;){var f=V,g=f.child;if(0!==(V.flags&16)){var h=f.deletions;if(null!==h){for(var k=0;k<h.length;k++){var l=h[k];for(V=l;null!==V;){var m=V;switch(m.tag){case 0:case 11:case 15:Pj(8,m,f)}var q=m.child;if(null!==q)q.return=m,V=q;else for(;null!==V;){m=V;var r=m.sibling,y=m.return;Sj(m);if(m===\nl){V=null;break}if(null!==r){r.return=y;V=r;break}V=y}}}var n=f.alternate;if(null!==n){var t=n.child;if(null!==t){n.child=null;do{var J=t.sibling;t.sibling=null;t=J}while(null!==t)}}V=f}}if(0!==(f.subtreeFlags&2064)&&null!==g)g.return=f,V=g;else b:for(;null!==V;){f=V;if(0!==(f.flags&2048))switch(f.tag){case 0:case 11:case 15:Pj(9,f,f.return)}var x=f.sibling;if(null!==x){x.return=f.return;V=x;break b}V=f.return}}var w=a.current;for(V=w;null!==V;){g=V;var u=g.child;if(0!==(g.subtreeFlags&2064)&&null!==\nu)u.return=g,V=u;else b:for(g=w;null!==V;){h=V;if(0!==(h.flags&2048))try{switch(h.tag){case 0:case 11:case 15:Qj(9,h)}}catch(na){W(h,h.return,na)}if(h===g){V=null;break b}var F=h.sibling;if(null!==F){F.return=h.return;V=F;break b}V=h.return}}K=e;jg();if(lc&&\"function\"===typeof lc.onPostCommitFiberRoot)try{lc.onPostCommitFiberRoot(kc,a)}catch(na){}d=!0}return d}finally{C=c,ok.transition=b}}return!1}function Xk(a,b,c){b=Ji(c,b);b=Ni(a,b,1);a=nh(a,b,1);b=R();null!==a&&(Ac(a,1,b),Dk(a,b))}\nfunction W(a,b,c){if(3===a.tag)Xk(a,a,c);else for(;null!==b;){if(3===b.tag){Xk(b,a,c);break}else if(1===b.tag){var d=b.stateNode;if(\"function\"===typeof b.type.getDerivedStateFromError||\"function\"===typeof d.componentDidCatch&&(null===Ri||!Ri.has(d))){a=Ji(c,a);a=Qi(b,a,1);b=nh(b,a,1);a=R();null!==b&&(Ac(b,1,a),Dk(b,a));break}}b=b.return}}\nfunction Ti(a,b,c){var d=a.pingCache;null!==d&&d.delete(b);b=R();a.pingedLanes|=a.suspendedLanes&c;Q===a&&(Z&c)===c&&(4===T||3===T&&(Z&130023424)===Z&&500>B()-fk?Kk(a,0):rk|=c);Dk(a,b)}function Yk(a,b){0===b&&(0===(a.mode&1)?b=1:(b=sc,sc<<=1,0===(sc&130023424)&&(sc=4194304)));var c=R();a=ih(a,b);null!==a&&(Ac(a,b,c),Dk(a,c))}function uj(a){var b=a.memoizedState,c=0;null!==b&&(c=b.retryLane);Yk(a,c)}\nfunction bk(a,b){var c=0;switch(a.tag){case 13:var d=a.stateNode;var e=a.memoizedState;null!==e&&(c=e.retryLane);break;case 19:d=a.stateNode;break;default:throw Error(p(314));}null!==d&&d.delete(b);Yk(a,c)}var Vk;\nVk=function(a,b,c){if(null!==a)if(a.memoizedProps!==b.pendingProps||Wf.current)dh=!0;else{if(0===(a.lanes&c)&&0===(b.flags&128))return dh=!1,yj(a,b,c);dh=0!==(a.flags&131072)?!0:!1}else dh=!1,I&&0!==(b.flags&1048576)&&ug(b,ng,b.index);b.lanes=0;switch(b.tag){case 2:var d=b.type;ij(a,b);a=b.pendingProps;var e=Yf(b,H.current);ch(b,c);e=Nh(null,b,d,a,e,c);var f=Sh();b.flags|=1;\"object\"===typeof e&&null!==e&&\"function\"===typeof e.render&&void 0===e.$$typeof?(b.tag=1,b.memoizedState=null,b.updateQueue=\nnull,Zf(d)?(f=!0,cg(b)):f=!1,b.memoizedState=null!==e.state&&void 0!==e.state?e.state:null,kh(b),e.updater=Ei,b.stateNode=e,e._reactInternals=b,Ii(b,d,a,c),b=jj(null,b,d,!0,f,c)):(b.tag=0,I&&f&&vg(b),Xi(null,b,e,c),b=b.child);return b;case 16:d=b.elementType;a:{ij(a,b);a=b.pendingProps;e=d._init;d=e(d._payload);b.type=d;e=b.tag=Zk(d);a=Ci(d,a);switch(e){case 0:b=cj(null,b,d,a,c);break a;case 1:b=hj(null,b,d,a,c);break a;case 11:b=Yi(null,b,d,a,c);break a;case 14:b=$i(null,b,d,Ci(d.type,a),c);break a}throw Error(p(306,\nd,\"\"));}return b;case 0:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Ci(d,e),cj(a,b,d,e,c);case 1:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Ci(d,e),hj(a,b,d,e,c);case 3:a:{kj(b);if(null===a)throw Error(p(387));d=b.pendingProps;f=b.memoizedState;e=f.element;lh(a,b);qh(b,d,null,c);var g=b.memoizedState;d=g.element;if(f.isDehydrated)if(f={element:d,isDehydrated:!1,cache:g.cache,pendingSuspenseBoundaries:g.pendingSuspenseBoundaries,transitions:g.transitions},b.updateQueue.baseState=\nf,b.memoizedState=f,b.flags&256){e=Ji(Error(p(423)),b);b=lj(a,b,d,c,e);break a}else if(d!==e){e=Ji(Error(p(424)),b);b=lj(a,b,d,c,e);break a}else for(yg=Lf(b.stateNode.containerInfo.firstChild),xg=b,I=!0,zg=null,c=Vg(b,null,d,c),b.child=c;c;)c.flags=c.flags&-3|4096,c=c.sibling;else{Ig();if(d===e){b=Zi(a,b,c);break a}Xi(a,b,d,c)}b=b.child}return b;case 5:return Ah(b),null===a&&Eg(b),d=b.type,e=b.pendingProps,f=null!==a?a.memoizedProps:null,g=e.children,Ef(d,e)?g=null:null!==f&&Ef(d,f)&&(b.flags|=32),\ngj(a,b),Xi(a,b,g,c),b.child;case 6:return null===a&&Eg(b),null;case 13:return oj(a,b,c);case 4:return yh(b,b.stateNode.containerInfo),d=b.pendingProps,null===a?b.child=Ug(b,null,d,c):Xi(a,b,d,c),b.child;case 11:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Ci(d,e),Yi(a,b,d,e,c);case 7:return Xi(a,b,b.pendingProps,c),b.child;case 8:return Xi(a,b,b.pendingProps.children,c),b.child;case 12:return Xi(a,b,b.pendingProps.children,c),b.child;case 10:a:{d=b.type._context;e=b.pendingProps;f=b.memoizedProps;\ng=e.value;G(Wg,d._currentValue);d._currentValue=g;if(null!==f)if(He(f.value,g)){if(f.children===e.children&&!Wf.current){b=Zi(a,b,c);break a}}else for(f=b.child,null!==f&&(f.return=b);null!==f;){var h=f.dependencies;if(null!==h){g=f.child;for(var k=h.firstContext;null!==k;){if(k.context===d){if(1===f.tag){k=mh(-1,c&-c);k.tag=2;var l=f.updateQueue;if(null!==l){l=l.shared;var m=l.pending;null===m?k.next=k:(k.next=m.next,m.next=k);l.pending=k}}f.lanes|=c;k=f.alternate;null!==k&&(k.lanes|=c);bh(f.return,\nc,b);h.lanes|=c;break}k=k.next}}else if(10===f.tag)g=f.type===b.type?null:f.child;else if(18===f.tag){g=f.return;if(null===g)throw Error(p(341));g.lanes|=c;h=g.alternate;null!==h&&(h.lanes|=c);bh(g,c,b);g=f.sibling}else g=f.child;if(null!==g)g.return=f;else for(g=f;null!==g;){if(g===b){g=null;break}f=g.sibling;if(null!==f){f.return=g.return;g=f;break}g=g.return}f=g}Xi(a,b,e.children,c);b=b.child}return b;case 9:return e=b.type,d=b.pendingProps.children,ch(b,c),e=eh(e),d=d(e),b.flags|=1,Xi(a,b,d,c),\nb.child;case 14:return d=b.type,e=Ci(d,b.pendingProps),e=Ci(d.type,e),$i(a,b,d,e,c);case 15:return bj(a,b,b.type,b.pendingProps,c);case 17:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:Ci(d,e),ij(a,b),b.tag=1,Zf(d)?(a=!0,cg(b)):a=!1,ch(b,c),Gi(b,d,e),Ii(b,d,e,c),jj(null,b,d,!0,a,c);case 19:return xj(a,b,c);case 22:return dj(a,b,c)}throw Error(p(156,b.tag));};function Fk(a,b){return ac(a,b)}\nfunction $k(a,b,c,d){this.tag=a;this.key=c;this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null;this.index=0;this.ref=null;this.pendingProps=b;this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null;this.mode=d;this.subtreeFlags=this.flags=0;this.deletions=null;this.childLanes=this.lanes=0;this.alternate=null}function Bg(a,b,c,d){return new $k(a,b,c,d)}function aj(a){a=a.prototype;return!(!a||!a.isReactComponent)}\nfunction Zk(a){if(\"function\"===typeof a)return aj(a)?1:0;if(void 0!==a&&null!==a){a=a.$$typeof;if(a===Da)return 11;if(a===Ga)return 14}return 2}\nfunction Pg(a,b){var c=a.alternate;null===c?(c=Bg(a.tag,b,a.key,a.mode),c.elementType=a.elementType,c.type=a.type,c.stateNode=a.stateNode,c.alternate=a,a.alternate=c):(c.pendingProps=b,c.type=a.type,c.flags=0,c.subtreeFlags=0,c.deletions=null);c.flags=a.flags&14680064;c.childLanes=a.childLanes;c.lanes=a.lanes;c.child=a.child;c.memoizedProps=a.memoizedProps;c.memoizedState=a.memoizedState;c.updateQueue=a.updateQueue;b=a.dependencies;c.dependencies=null===b?null:{lanes:b.lanes,firstContext:b.firstContext};\nc.sibling=a.sibling;c.index=a.index;c.ref=a.ref;return c}\nfunction Rg(a,b,c,d,e,f){var g=2;d=a;if(\"function\"===typeof a)aj(a)&&(g=1);else if(\"string\"===typeof a)g=5;else a:switch(a){case ya:return Tg(c.children,e,f,b);case za:g=8;e|=8;break;case Aa:return a=Bg(12,c,b,e|2),a.elementType=Aa,a.lanes=f,a;case Ea:return a=Bg(13,c,b,e),a.elementType=Ea,a.lanes=f,a;case Fa:return a=Bg(19,c,b,e),a.elementType=Fa,a.lanes=f,a;case Ia:return pj(c,e,f,b);default:if(\"object\"===typeof a&&null!==a)switch(a.$$typeof){case Ba:g=10;break a;case Ca:g=9;break a;case Da:g=11;\nbreak a;case Ga:g=14;break a;case Ha:g=16;d=null;break a}throw Error(p(130,null==a?a:typeof a,\"\"));}b=Bg(g,c,b,e);b.elementType=a;b.type=d;b.lanes=f;return b}function Tg(a,b,c,d){a=Bg(7,a,d,b);a.lanes=c;return a}function pj(a,b,c,d){a=Bg(22,a,d,b);a.elementType=Ia;a.lanes=c;a.stateNode={isHidden:!1};return a}function Qg(a,b,c){a=Bg(6,a,null,b);a.lanes=c;return a}\nfunction Sg(a,b,c){b=Bg(4,null!==a.children?a.children:[],a.key,b);b.lanes=c;b.stateNode={containerInfo:a.containerInfo,pendingChildren:null,implementation:a.implementation};return b}\nfunction al(a,b,c,d,e){this.tag=b;this.containerInfo=a;this.finishedWork=this.pingCache=this.current=this.pendingChildren=null;this.timeoutHandle=-1;this.callbackNode=this.pendingContext=this.context=null;this.callbackPriority=0;this.eventTimes=zc(0);this.expirationTimes=zc(-1);this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0;this.entanglements=zc(0);this.identifierPrefix=d;this.onRecoverableError=e;this.mutableSourceEagerHydrationData=\nnull}function bl(a,b,c,d,e,f,g,h,k){a=new al(a,b,c,h,k);1===b?(b=1,!0===f&&(b|=8)):b=0;f=Bg(3,null,null,b);a.current=f;f.stateNode=a;f.memoizedState={element:d,isDehydrated:c,cache:null,transitions:null,pendingSuspenseBoundaries:null};kh(f);return a}function cl(a,b,c){var d=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null;return{$$typeof:wa,key:null==d?null:\"\"+d,children:a,containerInfo:b,implementation:c}}\nfunction dl(a){if(!a)return Vf;a=a._reactInternals;a:{if(Vb(a)!==a||1!==a.tag)throw Error(p(170));var b=a;do{switch(b.tag){case 3:b=b.stateNode.context;break a;case 1:if(Zf(b.type)){b=b.stateNode.__reactInternalMemoizedMergedChildContext;break a}}b=b.return}while(null!==b);throw Error(p(171));}if(1===a.tag){var c=a.type;if(Zf(c))return bg(a,c,b)}return b}\nfunction el(a,b,c,d,e,f,g,h,k){a=bl(c,d,!0,a,e,f,g,h,k);a.context=dl(null);c=a.current;d=R();e=yi(c);f=mh(d,e);f.callback=void 0!==b&&null!==b?b:null;nh(c,f,e);a.current.lanes=e;Ac(a,e,d);Dk(a,d);return a}function fl(a,b,c,d){var e=b.current,f=R(),g=yi(e);c=dl(c);null===b.context?b.context=c:b.pendingContext=c;b=mh(f,g);b.payload={element:a};d=void 0===d?null:d;null!==d&&(b.callback=d);a=nh(e,b,g);null!==a&&(gi(a,e,g,f),oh(a,e,g));return g}\nfunction gl(a){a=a.current;if(!a.child)return null;switch(a.child.tag){case 5:return a.child.stateNode;default:return a.child.stateNode}}function hl(a,b){a=a.memoizedState;if(null!==a&&null!==a.dehydrated){var c=a.retryLane;a.retryLane=0!==c&&c<b?c:b}}function il(a,b){hl(a,b);(a=a.alternate)&&hl(a,b)}function jl(){return null}var kl=\"function\"===typeof reportError?reportError:function(a){console.error(a)};function ll(a){this._internalRoot=a}\nml.prototype.render=ll.prototype.render=function(a){var b=this._internalRoot;if(null===b)throw Error(p(409));fl(a,b,null,null)};ml.prototype.unmount=ll.prototype.unmount=function(){var a=this._internalRoot;if(null!==a){this._internalRoot=null;var b=a.containerInfo;Rk(function(){fl(null,a,null,null)});b[uf]=null}};function ml(a){this._internalRoot=a}\nml.prototype.unstable_scheduleHydration=function(a){if(a){var b=Hc();a={blockedOn:null,target:a,priority:b};for(var c=0;c<Qc.length&&0!==b&&b<Qc[c].priority;c++);Qc.splice(c,0,a);0===c&&Vc(a)}};function nl(a){return!(!a||1!==a.nodeType&&9!==a.nodeType&&11!==a.nodeType)}function ol(a){return!(!a||1!==a.nodeType&&9!==a.nodeType&&11!==a.nodeType&&(8!==a.nodeType||\" react-mount-point-unstable \"!==a.nodeValue))}function pl(){}\nfunction ql(a,b,c,d,e){if(e){if(\"function\"===typeof d){var f=d;d=function(){var a=gl(g);f.call(a)}}var g=el(b,d,a,0,null,!1,!1,\"\",pl);a._reactRootContainer=g;a[uf]=g.current;sf(8===a.nodeType?a.parentNode:a);Rk();return g}for(;e=a.lastChild;)a.removeChild(e);if(\"function\"===typeof d){var h=d;d=function(){var a=gl(k);h.call(a)}}var k=bl(a,0,!1,null,null,!1,!1,\"\",pl);a._reactRootContainer=k;a[uf]=k.current;sf(8===a.nodeType?a.parentNode:a);Rk(function(){fl(b,k,c,d)});return k}\nfunction rl(a,b,c,d,e){var f=c._reactRootContainer;if(f){var g=f;if(\"function\"===typeof e){var h=e;e=function(){var a=gl(g);h.call(a)}}fl(b,g,a,e)}else g=ql(c,b,a,e,d);return gl(g)}Ec=function(a){switch(a.tag){case 3:var b=a.stateNode;if(b.current.memoizedState.isDehydrated){var c=tc(b.pendingLanes);0!==c&&(Cc(b,c|1),Dk(b,B()),0===(K&6)&&(Gj=B()+500,jg()))}break;case 13:Rk(function(){var b=ih(a,1);if(null!==b){var c=R();gi(b,a,1,c)}}),il(a,1)}};\nFc=function(a){if(13===a.tag){var b=ih(a,134217728);if(null!==b){var c=R();gi(b,a,134217728,c)}il(a,134217728)}};Gc=function(a){if(13===a.tag){var b=yi(a),c=ih(a,b);if(null!==c){var d=R();gi(c,a,b,d)}il(a,b)}};Hc=function(){return C};Ic=function(a,b){var c=C;try{return C=a,b()}finally{C=c}};\nyb=function(a,b,c){switch(b){case \"input\":bb(a,c);b=c.name;if(\"radio\"===c.type&&null!=b){for(c=a;c.parentNode;)c=c.parentNode;c=c.querySelectorAll(\"input[name=\"+JSON.stringify(\"\"+b)+'][type=\"radio\"]');for(b=0;b<c.length;b++){var d=c[b];if(d!==a&&d.form===a.form){var e=Db(d);if(!e)throw Error(p(90));Wa(d);bb(d,e)}}}break;case \"textarea\":ib(a,c);break;case \"select\":b=c.value,null!=b&&fb(a,!!c.multiple,b,!1)}};Gb=Qk;Hb=Rk;\nvar sl={usingClientEntryPoint:!1,Events:[Cb,ue,Db,Eb,Fb,Qk]},tl={findFiberByHostInstance:Wc,bundleType:0,version:\"18.3.1\",rendererPackageName:\"react-dom\"};\nvar ul={bundleType:tl.bundleType,version:tl.version,rendererPackageName:tl.rendererPackageName,rendererConfig:tl.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:ua.ReactCurrentDispatcher,findHostInstanceByFiber:function(a){a=Zb(a);return null===a?null:a.stateNode},findFiberByHostInstance:tl.findFiberByHostInstance||\njl,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:\"18.3.1-next-f1338f8080-20240426\"};if(\"undefined\"!==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__){var vl=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!vl.isDisabled&&vl.supportsFiber)try{kc=vl.inject(ul),lc=vl}catch(a){}}exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=sl;\nexports.createPortal=function(a,b){var c=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;if(!nl(b))throw Error(p(200));return cl(a,b,null,c)};exports.createRoot=function(a,b){if(!nl(a))throw Error(p(299));var c=!1,d=\"\",e=kl;null!==b&&void 0!==b&&(!0===b.unstable_strictMode&&(c=!0),void 0!==b.identifierPrefix&&(d=b.identifierPrefix),void 0!==b.onRecoverableError&&(e=b.onRecoverableError));b=bl(a,1,!1,null,null,c,!1,d,e);a[uf]=b.current;sf(8===a.nodeType?a.parentNode:a);return new ll(b)};\nexports.findDOMNode=function(a){if(null==a)return null;if(1===a.nodeType)return a;var b=a._reactInternals;if(void 0===b){if(\"function\"===typeof a.render)throw Error(p(188));a=Object.keys(a).join(\",\");throw Error(p(268,a));}a=Zb(b);a=null===a?null:a.stateNode;return a};exports.flushSync=function(a){return Rk(a)};exports.hydrate=function(a,b,c){if(!ol(b))throw Error(p(200));return rl(null,a,b,!0,c)};\nexports.hydrateRoot=function(a,b,c){if(!nl(a))throw Error(p(405));var d=null!=c&&c.hydratedSources||null,e=!1,f=\"\",g=kl;null!==c&&void 0!==c&&(!0===c.unstable_strictMode&&(e=!0),void 0!==c.identifierPrefix&&(f=c.identifierPrefix),void 0!==c.onRecoverableError&&(g=c.onRecoverableError));b=el(b,null,a,1,null!=c?c:null,e,!1,f,g);a[uf]=b.current;sf(a);if(d)for(a=0;a<d.length;a++)c=d[a],e=c._getVersion,e=e(c._source),null==b.mutableSourceEagerHydrationData?b.mutableSourceEagerHydrationData=[c,e]:b.mutableSourceEagerHydrationData.push(c,\ne);return new ml(b)};exports.render=function(a,b,c){if(!ol(b))throw Error(p(200));return rl(null,a,b,!1,c)};exports.unmountComponentAtNode=function(a){if(!ol(a))throw Error(p(40));return a._reactRootContainer?(Rk(function(){rl(null,null,a,!1,function(){a._reactRootContainer=null;a[uf]=null})}),!0):!1};exports.unstable_batchedUpdates=Qk;\nexports.unstable_renderSubtreeIntoContainer=function(a,b,c,d){if(!ol(c))throw Error(p(200));if(null==a||void 0===a._reactInternals)throw Error(p(38));return rl(a,b,c,!1,d)};exports.version=\"18.3.1-next-f1338f8080-20240426\";\n","'use strict';\n\nfunction checkDCE() {\n /* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */\n if (\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ === 'undefined' ||\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE !== 'function'\n ) {\n return;\n }\n if (process.env.NODE_ENV !== 'production') {\n // This branch is unreachable because this function is only called\n // in production, but the condition is true only in development.\n // Therefore if the branch is still here, dead code elimination wasn't\n // properly applied.\n // Don't change the message. React DevTools relies on it. Also make sure\n // this message doesn't occur elsewhere in this function, or it will cause\n // a false positive.\n throw new Error('^_^');\n }\n try {\n // Verify that the code above has been dead code eliminated (DCE'd).\n __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(checkDCE);\n } catch (err) {\n // DevTools shouldn't crash React, no matter what.\n // We should still report in case we break this code.\n console.error(err);\n }\n}\n\nif (process.env.NODE_ENV === 'production') {\n // DCE check should happen before ReactDOM bundle executes so that\n // DevTools can report bad minification during injection.\n checkDCE();\n module.exports = require('./cjs/react-dom.production.min.js');\n} else {\n module.exports = require('./cjs/react-dom.development.js');\n}\n","'use strict';\n\nvar m = require('react-dom');\nif (process.env.NODE_ENV === 'production') {\n exports.createRoot = m.createRoot;\n exports.hydrateRoot = m.hydrateRoot;\n} else {\n var i = m.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;\n exports.createRoot = function(c, o) {\n i.usingClientEntryPoint = true;\n try {\n return m.createRoot(c, o);\n } finally {\n i.usingClientEntryPoint = false;\n }\n };\n exports.hydrateRoot = function(c, h, o) {\n i.usingClientEntryPoint = true;\n try {\n return m.hydrateRoot(c, h, o);\n } finally {\n i.usingClientEntryPoint = false;\n }\n };\n}\n","export const cdnUrl = 'https://cdn.veracity.com';\r\nexport const cdnStagUrl = 'https://cdnstag.veracity.com';\r\nexport const cdnTestUrl = 'https://cdntest.veracity.com';\r\nexport const cdnFontsPath = '/common/fonts';\r\nexport const cdnUrls = {\r\n Prod: cdnUrl,\r\n Stag: cdnStagUrl,\r\n Test: cdnTestUrl\r\n};\r\n","import React from 'react';\r\n/** Is value an array. */\r\nexport function isArray(value) {\r\n return Array.isArray(value);\r\n}\r\n/** Is value a function. */\r\nexport function isFunction(value) {\r\n return typeof value === 'function';\r\n}\r\n/** Is value JSX / React Element */\r\nexport function isJsx(value) {\r\n return React.isValidElement(value);\r\n}\r\n/** Is value a number. */\r\nexport function isNumber(value) {\r\n return typeof value === 'number';\r\n}\r\n/** Is value a regular object (functions, arrays and React elements excluded). */\r\nexport function isObject(value) {\r\n return !!value && typeof value === 'object' && !isFunction(value) && !isArray(value) && !React.isValidElement(value);\r\n}\r\n/** Is value a valid ReactText - string or number. */\r\nexport function isReactText(value) {\r\n return isNumber(value) || isString(value);\r\n}\r\n/** Is value a string. */\r\nexport function isString(value) {\r\n return Object.prototype.toString.call(value) === '[object String]';\r\n}\r\n","export const __DEV__ = process.env.NODE_ENV !== 'production';\r\nexport const activeClassName = 'vui-active';\r\nexport const activeItemShade = 30;\r\nexport const dimmedBorderColor = 'grey.40';\r\n","export const addElement = (id) => {\r\n const element = document.createElement('div');\r\n element.setAttribute('id', id);\r\n return element;\r\n};\r\nexport const removeElement = (id) => {\r\n const element = document.getElementById(id);\r\n element?.remove?.();\r\n};\r\nexport const addBodyClass = (className) => document.body.classList.add(className);\r\nexport const removeBodyClass = (className) => document.body.classList.remove(className);\r\n","import { isFunction } from './assertion';\r\n/** Calls each provided function with the same set of arguments. Useful for merging multiple callbacks. */\r\nexport function callAll(...fns) {\r\n return (...args) => fns.forEach(fn => typeof fn === 'function' && fn(...args));\r\n}\r\n// Used as a safe default to be called when no function is provided.\r\nexport function noop() { }\r\n/**\r\n * If given value is a function, it's called with any additional arguments provided.\r\n * Otherwise, the provided value is returned directly.\r\n */\r\nexport function runIfFn(valueOrFn, ...args) {\r\n return isFunction(valueOrFn) ? valueOrFn(...args) : valueOrFn;\r\n}\r\n","import { isArray, isObject } from './assertion';\r\n/** Removes keys from an object if their value is undefined. */\r\nexport function filterUndefined(object) {\r\n return objectFilter(object, val => val !== null && val !== undefined);\r\n}\r\nexport function merge(...sources) {\r\n const target = {};\r\n sources.forEach(source => {\r\n if (!isObject(source))\r\n return;\r\n Object.keys(source).forEach(key => {\r\n if (key === '__proto__')\r\n return;\r\n if (isObject(target[key]) && isObject(source[key])) {\r\n // Merge objects\r\n target[key] = merge(target[key], source[key]);\r\n }\r\n else if (isArray(target[key]) && isArray(source[key])) {\r\n // Concat arrays\r\n target[key] = target[key].concat(source[key]);\r\n }\r\n else if (source[key] !== undefined) {\r\n // Pick source if it exists\r\n target[key] = source[key];\r\n }\r\n });\r\n });\r\n return target;\r\n}\r\n/**\r\n * Returns the items of an object that meet the condition specified in a callback function.\r\n */\r\nexport function objectFilter(object, fn) {\r\n const result = {};\r\n Object.keys(object).forEach(key => {\r\n const value = object[key];\r\n const shouldPass = fn(value, key, object);\r\n if (shouldPass) {\r\n result[key] = value;\r\n }\r\n });\r\n return result;\r\n}\r\n","/* eslint-disable @typescript-eslint/ban-ts-comment */\r\nimport React, { useCallback, useEffect, useRef, useState } from 'react';\r\nimport { isArray, isFunction } from './assertion';\r\nimport { runIfFn } from './function';\r\n/**\r\n * Assigns given value to the provided ref.\r\n * Supports ref as function (e.g. useState) and classic ref (e.g. useRef).\r\n */\r\nexport function assignRef(ref, value) {\r\n if (ref === null || ref === undefined)\r\n return;\r\n if (isFunction(ref)) {\r\n ref(value);\r\n return;\r\n }\r\n try {\r\n // @ts-ignore - TS complains about 'current' being read-only\r\n ref.current = value;\r\n }\r\n catch (error) {\r\n throw new Error(`Cannot assign value '${value}' to ref '${ref}'`);\r\n }\r\n}\r\n/** Generic function to create new Context and context access hook. */\r\nexport function createContext(options = {}) {\r\n const { errorMessage = 'Context can only be accessed by components wrapped with the Provider.', isOptional, name } = options;\r\n const Context = React.createContext(undefined);\r\n Context.displayName = name;\r\n function useContext() {\r\n const context = React.useContext(Context);\r\n if (!isOptional && context === undefined)\r\n throw new Error(errorMessage);\r\n return context;\r\n }\r\n return [Context.Provider, useContext];\r\n}\r\n/** Assigns a node to all provided refs. */\r\nexport function mergeRefs(...refs) {\r\n return (node) => {\r\n refs.forEach(ref => assignRef(ref, node));\r\n };\r\n}\r\n// TODO: Bring it from UI-Utils\r\n/** Returns given callback with a stable reference, but keeps it updated internally. */\r\nexport function useCallbackRef(callback, deps = []) {\r\n const ref = useRef(callback);\r\n ref.current = callback;\r\n return useCallback(((...args) => ref.current?.(...args)), deps);\r\n}\r\nconst defaultEvents = ['mousedown', 'touchstart'];\r\n// TODO: Bring it from UI-Utils\r\n/**\r\n * Triggers given callback when an event happens outside of a given element.\r\n * Event listeners are attached to the window object.\r\n * @param ref - element to check click position for\r\n * @param callback - function triggered on outside click\r\n * @param events - array of events listened for (default: ['mousedown', 'touchstart'])\r\n */\r\nexport function useClickOutside(ref, callback, events = defaultEvents) {\r\n const eventsString = JSON.stringify(events);\r\n const listener = useCallbackRef((ev) => {\r\n const refs = isArray(ref) ? ref : [ref];\r\n const target = ev.target;\r\n const isClickOutside = refs.every(ref => ref.current && !ref.current.contains(target));\r\n isClickOutside && callback?.(ev);\r\n });\r\n useEffect(() => {\r\n const events = JSON.parse(eventsString);\r\n events.forEach(event => window.addEventListener(event, listener));\r\n return () => {\r\n events.forEach(event => window.removeEventListener(event, listener));\r\n };\r\n }, [eventsString, ref]);\r\n}\r\n// TODO: Move to ui-utils\r\n/** Supports state management in components that can be controlled or uncontrolled. */\r\nexport function useControlled(props) {\r\n const { defaultValue, onChange: onChangeProp, value: valueProp } = props;\r\n const [valueState, setValue] = useState(defaultValue);\r\n const isControlled = valueProp !== undefined;\r\n const value = isControlled ? valueProp : valueState;\r\n /** Triggers the external callback with the new value. In uncontrolled mode, updates state. */\r\n const onChange = useCallbackRef((next) => {\r\n const newValue = runIfFn(next);\r\n if (!isControlled)\r\n setValue(newValue);\r\n onChangeProp?.(newValue);\r\n });\r\n /** In uncontrolled mode, sets the state to the default value. */\r\n const reset = useCallbackRef(() => {\r\n !isControlled && defaultValue && onChange(defaultValue);\r\n });\r\n return [value, onChange, { isControlled, reset }];\r\n}\r\n/** Returns an array with each prefix added to the id. Useful for aria attributes in compound components. */\r\nexport function useIds(id, prefixes) {\r\n return prefixes.map(prefix => `${prefix}-${id}`);\r\n}\r\n// TODO: Bring it from ui-utils\r\n/**\r\n * Provides a function, which can be called to check if component using the hook is mounted or unmounted.\r\n */\r\nexport function useIsMounted() {\r\n const isMounted = useRef(false);\r\n useEffect(() => {\r\n isMounted.current = true;\r\n return () => {\r\n isMounted.current = false;\r\n };\r\n }, []);\r\n return useCallback(() => isMounted.current, []);\r\n}\r\n","/**\r\n * Do not edit directly\r\n * Generated on Wed, 22 Mar 2023 12:31:05 GMT\r\n */\r\nexport const buttonSizeLargeFontSize = \"1.125rem\";\r\nexport const buttonSizeLargeLineHeight = \"1.75rem\";\r\nexport const buttonSizeLargePadding = \"0.5rem 1rem\";\r\nexport const buttonSizeMediumFontSize = \"1rem\";\r\nexport const buttonSizeMediumLineHeight = \"1.5rem\";\r\nexport const buttonSizeMediumPadding = \"0.25rem calc(0.25rem * 3)\";\r\nexport const buttonSizeSmallFontSize = \"0.875rem\";\r\nexport const buttonSizeSmallLineHeight = \"1.25rem\";\r\nexport const buttonSizeSmallPadding = \"calc(0.25rem / 2) 0.5rem\";\r\nexport const buttonSizeDefaultFontSize = \"1rem\";\r\nexport const buttonSizeDefaultLineHeight = \"1.5rem\";\r\nexport const buttonSizeDefaultPadding = \"0.25rem calc(0.25rem * 3)\";\r\nexport const buttonTypePrimaryDefaultBorderColorDark = \"hsla(0, 0%, 0%, 0)\";\r\nexport const buttonTypePrimaryDefaultBorderColorLight = \"hsla(0, 0%, 0%, 0)\";\r\nexport const buttonTypePrimaryDefaultBackgroundColorDark = \"hsla(218, 100%, 28%, 1)\";\r\nexport const buttonTypePrimaryDefaultBackgroundColorLight = \"hsla(139, 100%, 78%, 1)\";\r\nexport const buttonTypePrimaryDefaultTextColorDark = \"hsla(40, 3%, 100%, 1)\";\r\nexport const buttonTypePrimaryDefaultTextColorLight = \"hsla(223, 67%, 18%, 1)\";\r\nexport const buttonTypePrimaryHoverBorderColorDark = \"hsla(0, 0%, 0%, 0)\";\r\nexport const buttonTypePrimaryHoverBorderColorLight = \"hsla(0, 0%, 0%, 0)\";\r\nexport const buttonTypePrimaryHoverBackgroundColorDark = \"hsla(218, 100%, 20%, 1)\";\r\nexport const buttonTypePrimaryHoverBackgroundColorLight = \"hsla(139, 100%, 70%, 1)\";\r\nexport const buttonTypePrimaryHoverTextColorDark = \"hsla(40, 3%, 100%, 1)\";\r\nexport const buttonTypePrimaryHoverTextColorLight = \"hsla(223, 67%, 18%, 1)\";\r\nexport const buttonTypePrimaryActiveBorderColorDark = \"hsla(0, 0%, 0%, 0)\";\r\nexport const buttonTypePrimaryActiveBorderColorLight = \"hsla(0, 0%, 0%, 0)\";\r\nexport const buttonTypePrimaryActiveBackgroundColorDark = \"hsla(218, 100%, 35%, 1)\";\r\nexport const buttonTypePrimaryActiveBackgroundColorLight = \"hsla(139, 100%, 85%, 1)\";\r\nexport const buttonTypePrimaryActiveTextColorDark = \"hsla(40, 3%, 100%, 1)\";\r\nexport const buttonTypePrimaryActiveTextColorLight = \"hsla(223, 67%, 18%, 1)\";\r\nexport const buttonTypePrimaryFocusOutline = \"0.25rem solid hsla(196, 100%, 43%, 1)\";\r\nexport const buttonTypeSecondaryDefaultBorderColorDark = \"hsla(218, 100%, 28%, 1)\";\r\nexport const buttonTypeSecondaryDefaultBorderColorLight = \"hsla(139, 100%, 78%, 1)\";\r\nexport const buttonTypeSecondaryDefaultBackgroundColorDark = \"hsla(0, 0%, 0%, 0)\";\r\nexport const buttonTypeSecondaryDefaultBackgroundColorLight = \"hsla(0, 0%, 0%, 0)\";\r\nexport const buttonTypeSecondaryDefaultTextColorDark = \"hsla(218, 100%, 28%, 1)\";\r\nexport const buttonTypeSecondaryDefaultTextColorLight = \"hsla(139, 100%, 78%, 1)\";\r\nexport const buttonTypeSecondaryHoverBorderColorDark = \"hsla(218, 100%, 28%, 1)\";\r\nexport const buttonTypeSecondaryHoverBorderColorLight = \"hsla(139, 100%, 78%, 1)\";\r\nexport const buttonTypeSecondaryHoverBackgroundColorDark = \"hsla(196, 74%, 80%, 1)\";\r\nexport const buttonTypeSecondaryHoverBackgroundColorLight = \"hsla(218, 100%, 25%, 1)\";\r\nexport const buttonTypeSecondaryHoverTextColorDark = \"hsla(218, 100%, 28%, 1)\";\r\nexport const buttonTypeSecondaryHoverTextColorLight = \"hsla(139, 100%, 78%, 1)\";\r\nexport const buttonTypeSecondaryActiveBorderColorDark = \"hsla(218, 100%, 28%, 1)\";\r\nexport const buttonTypeSecondaryActiveBorderColorLight = \"hsla(139, 100%, 78%, 1)\";\r\nexport const buttonTypeSecondaryActiveBackgroundColorDark = \"hsla(196, 74%, 85%, 1)\";\r\nexport const buttonTypeSecondaryActiveBackgroundColorLight = \"hsla(218, 100%, 35%, 1)\";\r\nexport const buttonTypeSecondaryActiveTextColorDark = \"hsla(218, 100%, 28%, 1)\";\r\nexport const buttonTypeSecondaryActiveTextColorLight = \"hsla(139, 100%, 78%, 1)\";\r\nexport const buttonTypeSecondaryFocusOutline = \"0.25rem solid hsla(196, 100%, 43%, 1)\";\r\nexport const buttonTypeTertiaryDefaultBorderColorDark = \"hsla(0, 0%, 0%, 0)\";\r\nexport const buttonTypeTertiaryDefaultBorderColorLight = \"hsla(0, 0%, 0%, 0)\";\r\nexport const buttonTypeTertiaryDefaultBackgroundColorDark = \"hsla(0, 0%, 0%, 0)\";\r\nexport const buttonTypeTertiaryDefaultBackgroundColorLight = \"hsla(0, 0%, 0%, 0)\";\r\nexport const buttonTypeTertiaryDefaultTextColorDark = \"hsla(218, 100%, 28%, 1)\";\r\nexport const buttonTypeTertiaryDefaultTextColorLight = \"hsla(139, 100%, 78%, 1)\";\r\nexport const buttonTypeTertiaryHoverBorderColorDark = \"hsla(0, 0%, 0%, 0)\";\r\nexport const buttonTypeTertiaryHoverBorderColorLight = \"hsla(0, 0%, 0%, 0)\";\r\nexport const buttonTypeTertiaryHoverBackgroundColorDark = \"hsla(196, 74%, 80%, 1)\";\r\nexport const buttonTypeTertiaryHoverBackgroundColorLight = \"hsla(218, 100%, 25%, 1)\";\r\nexport const buttonTypeTertiaryHoverTextColorDark = \"hsla(218, 100%, 28%, 1)\";\r\nexport const buttonTypeTertiaryHoverTextColorLight = \"hsla(139, 100%, 78%, 1)\";\r\nexport const buttonTypeTertiaryActiveBorderColorDark = \"hsla(0, 0%, 0%, 0)\";\r\nexport const buttonTypeTertiaryActiveBorderColorLight = \"hsla(0, 0%, 0%, 0)\";\r\nexport const buttonTypeTertiaryActiveBackgroundColorDark = \"hsla(196, 74%, 85%, 1)\";\r\nexport const buttonTypeTertiaryActiveBackgroundColorLight = \"hsla(218, 100%, 35%, 1)\";\r\nexport const buttonTypeTertiaryActiveTextColorDark = \"hsla(218, 100%, 28%, 1)\";\r\nexport const buttonTypeTertiaryActiveTextColorLight = \"hsla(139, 100%, 78%, 1)\";\r\nexport const buttonTypeTertiaryFocusOutline = \"0.25rem solid hsla(196, 100%, 43%, 1)\";\r\nexport const buttonDisabledCursor = \"default\";\r\nexport const buttonDisabledOpacity = \"0.5\";\r\nexport const buttonBorderStyle = \"solid\";\r\nexport const buttonBorderWidth = \"calc(0.125rem / 2)\";\r\nexport const buttonFontFamily = \"'Avenir Next', Arial, sans-serif\";\r\nexport const buttonFontSize = \"1rem\";\r\nexport const buttonLineHeight = \"1.5rem\";\r\nexport const buttonFontWeight = \"500\";\r\nexport const buttonPadding = \"calc(0.25rem * 1.5) calc(0.25rem * 3)\";\r\nexport const buttonTransition = \"all 0.15s ease-in-out\";\r\nexport const buttonCursor = \"pointer\";\r\n","// eslint-disable-next-line @typescript-eslint/ban-ts-comment\r\n// @ts-ignore - the missing types have to be added into the onedesign-tokens package\r\nimport * as oneDesignButtonTokens from '../../onedesign-tokens/dist/js/rem/button';\r\nconst buttonTypePrimaryDefaultBorderColorDark = oneDesignButtonTokens.buttonTypePrimaryDefaultBorderColorDark;\r\nconst buttonTypePrimaryDefaultBorderColorLight = oneDesignButtonTokens.buttonTypePrimaryDefaultBorderColorLight;\r\nconst buttonTypePrimaryDefaultBackgroundColorDark = oneDesignButtonTokens.buttonTypePrimaryDefaultBackgroundColorDark;\r\nconst buttonTypePrimaryDefaultBackgroundColorLight = oneDesignButtonTokens.buttonTypePrimaryDefaultBackgroundColorLight;\r\nconst buttonTypePrimaryDefaultTextColorDark = oneDesignButtonTokens.buttonTypePrimaryDefaultTextColorDark;\r\nconst buttonTypePrimaryDefaultTextColorLight = oneDesignButtonTokens.buttonTypePrimaryDefaultTextColorLight;\r\nconst buttonTypePrimaryHoverBorderColorDark = oneDesignButtonTokens.buttonTypePrimaryHoverBorderColorDark;\r\nconst buttonTypePrimaryHoverBorderColorLight = oneDesignButtonTokens.buttonTypePrimaryHoverBorderColorLight;\r\nconst buttonTypePrimaryHoverBackgroundColorDark = oneDesignButtonTokens.buttonTypePrimaryHoverBackgroundColorDark;\r\nconst buttonTypePrimaryHoverBackgroundColorLight = oneDesignButtonTokens.buttonTypePrimaryHoverBackgroundColorLight;\r\nconst buttonTypePrimaryHoverTextColorDark = oneDesignButtonTokens.buttonTypePrimaryHoverTextColorDark;\r\nconst buttonTypePrimaryHoverTextColorLight = oneDesignButtonTokens.buttonTypePrimaryHoverTextColorLight;\r\nconst buttonTypePrimaryActiveBorderColorDark = oneDesignButtonTokens.buttonTypePrimaryActiveBorderColorDark;\r\nconst buttonTypePrimaryActiveBorderColorLight = oneDesignButtonTokens.buttonTypePrimaryActiveBorderColorLight;\r\nconst buttonTypePrimaryActiveBackgroundColorDark = oneDesignButtonTokens.buttonTypePrimaryActiveBackgroundColorDark;\r\nconst buttonTypePrimaryActiveBackgroundColorLight = oneDesignButtonTokens.buttonTypePrimaryActiveBackgroundColorLight;\r\nconst buttonTypePrimaryActiveTextColorDark = oneDesignButtonTokens.buttonTypePrimaryActiveTextColorDark;\r\nconst buttonTypePrimaryActiveTextColorLight = oneDesignButtonTokens.buttonTypePrimaryActiveTextColorLight;\r\nconst buttonTypePrimaryFocusOutline = oneDesignButtonTokens.buttonTypePrimaryFocusOutline;\r\nconst buttonTypeSecondaryDefaultBorderColorDark = oneDesignButtonTokens.buttonTypeSecondaryDefaultBorderColorDark;\r\nconst buttonTypeSecondaryDefaultBorderColorLight = oneDesignButtonTokens.buttonTypeSecondaryDefaultBorderColorLight;\r\nconst buttonTypeSecondaryDefaultBackgroundColorDark = oneDesignButtonTokens.buttonTypeSecondaryDefaultBackgroundColorDark;\r\nconst buttonTypeSecondaryDefaultBackgroundColorLight = oneDesignButtonTokens.buttonTypeSecondaryDefaultBackgroundColorLight;\r\nconst buttonTypeSecondaryDefaultTextColorDark = oneDesignButtonTokens.buttonTypeSecondaryDefaultTextColorDark;\r\nconst buttonTypeSecondaryDefaultTextColorLight = oneDesignButtonTokens.buttonTypeSecondaryDefaultTextColorLight;\r\nconst buttonTypeSecondaryHoverBorderColorDark = oneDesignButtonTokens.buttonTypeSecondaryHoverBorderColorDark;\r\nconst buttonTypeSecondaryHoverBorderColorLight = oneDesignButtonTokens.buttonTypeSecondaryHoverBorderColorLight;\r\nconst buttonTypeSecondaryHoverBackgroundColorDark = oneDesignButtonTokens.buttonTypeSecondaryHoverBackgroundColorDark;\r\nconst buttonTypeSecondaryHoverBackgroundColorLight = oneDesignButtonTokens.buttonTypeSecondaryHoverBackgroundColorLight;\r\nconst buttonTypeSecondaryHoverTextColorDark = oneDesignButtonTokens.buttonTypeSecondaryHoverTextColorDark;\r\nconst buttonTypeSecondaryHoverTextColorLight = oneDesignButtonTokens.buttonTypeSecondaryHoverTextColorLight;\r\nconst buttonTypeSecondaryActiveBorderColorDark = oneDesignButtonTokens.buttonTypeSecondaryActiveBorderColorDark;\r\nconst buttonTypeSecondaryActiveBorderColorLight = oneDesignButtonTokens.buttonTypeSecondaryActiveBorderColorLight;\r\nconst buttonTypeSecondaryActiveBackgroundColorDark = oneDesignButtonTokens.buttonTypeSecondaryActiveBackgroundColorDark;\r\nconst buttonTypeSecondaryActiveBackgroundColorLight = oneDesignButtonTokens.buttonTypeSecondaryActiveBackgroundColorLight;\r\nconst buttonTypeSecondaryActiveTextColorDark = oneDesignButtonTokens.buttonTypeSecondaryActiveTextColorDark;\r\nconst buttonTypeSecondaryActiveTextColorLight = oneDesignButtonTokens.buttonTypeSecondaryActiveTextColorLight;\r\nconst buttonTypeSecondaryFocusOutline = oneDesignButtonTokens.buttonTypeSecondaryFocusOutline;\r\nconst buttonTypeTertiaryDefaultBorderColorDark = oneDesignButtonTokens.buttonTypeTertiaryDefaultBorderColorDark;\r\nconst buttonTypeTertiaryDefaultBorderColorLight = oneDesignButtonTokens.buttonTypeTertiaryDefaultBorderColorLight;\r\nconst buttonTypeTertiaryDefaultBackgroundColorDark = oneDesignButtonTokens.buttonTypeTertiaryDefaultBackgroundColorDark;\r\nconst buttonTypeTertiaryDefaultBackgroundColorLight = oneDesignButtonTokens.buttonTypeTertiaryDefaultBackgroundColorLight;\r\nconst buttonTypeTertiaryDefaultTextColorDark = oneDesignButtonTokens.buttonTypeTertiaryDefaultTextColorDark;\r\nconst buttonTypeTertiaryDefaultTextColorLight = oneDesignButtonTokens.buttonTypeTertiaryDefaultTextColorLight;\r\nconst buttonTypeTertiaryHoverBorderColorDark = oneDesignButtonTokens.buttonTypeTertiaryHoverBorderColorDark;\r\nconst buttonTypeTertiaryHoverBorderColorLight = oneDesignButtonTokens.buttonTypeTertiaryHoverBorderColorLight;\r\nconst buttonTypeTertiaryHoverBackgroundColorDark = oneDesignButtonTokens.buttonTypeTertiaryHoverBackgroundColorDark;\r\nconst buttonTypeTertiaryHoverBackgroundColorLight = oneDesignButtonTokens.buttonTypeTertiaryHoverBackgroundColorLight;\r\nconst buttonTypeTertiaryHoverTextColorDark = oneDesignButtonTokens.buttonTypeTertiaryHoverTextColorDark;\r\nconst buttonTypeTertiaryHoverTextColorLight = oneDesignButtonTokens.buttonTypeTertiaryHoverTextColorLight;\r\nconst buttonTypeTertiaryActiveBorderColorDark = oneDesignButtonTokens.buttonTypeTertiaryActiveBorderColorDark;\r\nconst buttonTypeTertiaryActiveBorderColorLight = oneDesignButtonTokens.buttonTypeTertiaryActiveBorderColorLight;\r\nconst buttonTypeTertiaryActiveBackgroundColorDark = oneDesignButtonTokens.buttonTypeTertiaryActiveBackgroundColorDark;\r\nconst buttonTypeTertiaryActiveBackgroundColorLight = oneDesignButtonTokens.buttonTypeTertiaryActiveBackgroundColorLight;\r\nconst buttonTypeTertiaryActiveTextColorDark = oneDesignButtonTokens.buttonTypeTertiaryActiveTextColorDark;\r\nconst buttonTypeTertiaryActiveTextColorLight = oneDesignButtonTokens.buttonTypeTertiaryActiveTextColorLight;\r\nconst buttonTypeTertiaryFocusOutline = oneDesignButtonTokens.buttonTypeTertiaryFocusOutline;\r\nconst buttonDisabledCursor = oneDesignButtonTokens.buttonDisabledCursor;\r\nconst buttonDisabledOpacity = oneDesignButtonTokens.buttonDisabledOpacity;\r\nexport const focusColor = 'hsla(196, 100%, 43%, 1)';\r\nexport const darkBlue = {\r\n 95: 'hsl(223, 67%, 95%)',\r\n 90: 'hsl(223, 67%, 90%)',\r\n 85: 'hsl(223, 67%, 85%)',\r\n 80: 'hsl(223, 67%, 80%)',\r\n 75: 'hsl(223, 67%, 75%)',\r\n 70: 'hsl(223, 67%, 70%)',\r\n 65: 'hsl(223, 67%, 65%)',\r\n 60: 'hsl(223, 67%, 60%)',\r\n 55: 'hsl(223, 67%, 55%)',\r\n 50: 'hsl(223, 67%, 50%)',\r\n 45: 'hsl(223, 67%, 45%)',\r\n 40: 'hsl(223, 67%, 40%)',\r\n 35: 'hsl(223, 67%, 35%)',\r\n 30: 'hsl(223, 67%, 30%)',\r\n 25: 'hsl(223, 67%, 25%)',\r\n 18: 'hsl(223, 67%, 18%)',\r\n 15: 'hsl(223, 67%, 15%)',\r\n 10: 'hsl(223, 67%, 10%)',\r\n 5: 'hsl(223, 67%, 5%)',\r\n main: 'hsl(223, 67%, 18%)'\r\n};\r\nexport const digiGreen = {\r\n 95: 'hsl(139, 100%, 95%)',\r\n 90: 'hsl(139, 100%, 90%)',\r\n 85: 'hsl(139, 100%, 85%)',\r\n 80: 'hsl(139, 100%, 80%)',\r\n 78: 'hsl(139, 100%, 78%)',\r\n 70: 'hsl(139, 100%, 70%)',\r\n 65: 'hsl(139, 100%, 65%)',\r\n 60: 'hsl(139, 100%, 60%)',\r\n 55: 'hsl(139, 100%, 55%)',\r\n 50: 'hsl(139, 100%, 50%)',\r\n 45: 'hsl(139, 100%, 45%)',\r\n 40: 'hsl(139, 100%, 40%)',\r\n 35: 'hsl(139, 100%, 35%)',\r\n 30: 'hsl(139, 100%, 30%)',\r\n 25: 'hsl(139, 100%, 25%)',\r\n 20: 'hsl(139, 100%, 20%)',\r\n 15: 'hsl(139, 100%, 15%)',\r\n 10: 'hsl(139, 100%, 10%)',\r\n 5: 'hsl(139, 100%, 5%)',\r\n main: 'hsl(139, 100%, 78%)'\r\n};\r\nexport const earth = {\r\n 95: 'hsl(35, 53%, 95%)',\r\n 89: 'hsl(35, 53%, 89%)',\r\n 85: 'hsl(35, 53%, 85%)',\r\n 80: 'hsl(35, 53%, 80%)',\r\n 75: 'hsl(35, 53%, 75%)',\r\n 70: 'hsl(35, 53%, 70%)',\r\n 65: 'hsl(35, 53%, 65%)',\r\n 60: 'hsl(35, 53%, 60%)',\r\n 55: 'hsl(35, 53%, 55%)',\r\n 50: 'hsl(35, 53%, 50%)',\r\n 45: 'hsl(35, 53%, 45%)',\r\n 40: 'hsl(35, 53%, 40%)',\r\n 35: 'hsl(35, 53%, 35%)',\r\n 30: 'hsl(35, 53%, 30%)',\r\n 25: 'hsl(35, 53%, 25%)',\r\n 20: 'hsl(35, 53%, 20%)',\r\n 15: 'hsl(35, 53%, 15%)',\r\n 10: 'hsl(35, 53%, 10%)',\r\n 5: 'hsl(35, 53%, 5%)',\r\n main: 'hsl(35, 53%, 89%)'\r\n};\r\nexport const energyRed = {\r\n 95: 'hsl(357, 83%, 95%)',\r\n 90: 'hsl(357, 83%, 90%)',\r\n 85: 'hsl(357, 83%, 85%)',\r\n 80: 'hsl(357, 83%, 80%)',\r\n 75: 'hsl(357, 83%, 75%)',\r\n 70: 'hsl(357, 83%, 70%)',\r\n 65: 'hsl(357, 83%, 65%)',\r\n 60: 'hsl(357, 83%, 60%)',\r\n 54: 'hsl(357, 83%, 54%)',\r\n 50: 'hsl(357, 83%, 50%)',\r\n 45: 'hsl(357, 83%, 45%)',\r\n 40: 'hsl(357, 83%, 40%)',\r\n 35: 'hsl(357, 83%, 35%)',\r\n 30: 'hsl(357, 83%, 30%)',\r\n 25: 'hsl(357, 83%, 25%)',\r\n 20: 'hsl(357, 83%, 20%)',\r\n 15: 'hsl(357, 83%, 15%)',\r\n 10: 'hsl(357, 83%, 10%)',\r\n 5: 'hsl(357, 83%, 5%)',\r\n main: 'hsl(357, 83%, 54%)'\r\n};\r\nexport const landGreen = {\r\n 95: 'hsl(114, 49%, 95%)',\r\n 90: 'hsl(114, 49%, 90%)',\r\n 85: 'hsl(114, 49%, 85%)',\r\n 80: 'hsl(114, 49%, 80%)',\r\n 75: 'hsl(114, 49%, 75%)',\r\n 70: 'hsl(114, 49%, 70%)',\r\n 65: 'hsl(114, 49%, 65%)',\r\n 60: 'hsl(114, 49%, 60%)',\r\n 55: 'hsl(114, 49%, 55%)',\r\n 50: 'hsl(114, 49%, 50%)',\r\n 45: 'hsl(114, 49%, 45%)',\r\n 41: 'hsl(114, 49%, 41%)',\r\n 35: 'hsl(114, 49%, 35%)',\r\n 30: 'hsl(114, 49%, 30%)',\r\n 25: 'hsl(114, 49%, 25%)',\r\n 20: 'hsl(114, 49%, 20%)',\r\n 15: 'hsl(114, 49%, 15%)',\r\n 10: 'hsl(114, 49%, 10%)',\r\n 5: 'hsl(114, 49%, 5%)',\r\n main: 'hsl(114, 49%, 41%)'\r\n};\r\nexport const seaBlue = {\r\n 95: 'hsl(218, 100%, 95%)',\r\n 90: 'hsl(218, 100%, 90%)',\r\n 85: 'hsl(218, 100%, 85%)',\r\n 80: 'hsl(218, 100%, 80%)',\r\n 75: 'hsl(218, 100%, 75%)',\r\n 70: 'hsl(218, 100%, 70%)',\r\n 65: 'hsl(218, 100%, 65%)',\r\n 60: 'hsl(218, 100%, 60%)',\r\n 55: 'hsl(218, 100%, 55%)',\r\n 50: 'hsl(218, 100%, 55%)',\r\n 45: 'hsl(218, 100%, 45%)',\r\n 40: 'hsl(218, 100%, 40%)',\r\n 35: 'hsl(218, 100%, 35%)',\r\n 28: 'hsl(218, 100%, 28%)',\r\n 25: 'hsl(218, 100%, 25%)',\r\n 20: 'hsl(218, 100%, 20%)',\r\n 15: 'hsl(218, 100%, 15%)',\r\n 10: 'hsl(218, 100%, 10%)',\r\n 5: 'hsl(218, 100%, 5%)',\r\n main: 'hsl(218, 100%, 28%)'\r\n};\r\nexport const sandstone = {\r\n 97: 'hsl(40, 3%, 97%)',\r\n 95: 'hsl(40, 3%, 95%)',\r\n 90: 'hsl(40, 3%, 90%)',\r\n 85: 'hsl(40, 3%, 85%)',\r\n 79: 'hsl(40, 3%, 79%)',\r\n 75: 'hsl(40, 3%, 75%)',\r\n 70: 'hsl(40, 3%, 70%)',\r\n 65: 'hsl(40, 3%, 65%)',\r\n 60: 'hsl(40, 3%, 60%)',\r\n 55: 'hsl(40, 3%, 55%)',\r\n 50: 'hsl(40, 3%, 50%)',\r\n 45: 'hsl(40, 3%, 45%)',\r\n 40: 'hsl(40, 3%, 40%)',\r\n 35: 'hsl(40, 3%, 35%)',\r\n 30: 'hsl(40, 3%, 30%)',\r\n 25: 'hsl(40, 3%, 25%)',\r\n 20: 'hsl(40, 3%, 20%)',\r\n 15: 'hsl(40, 3%, 15%)',\r\n 10: 'hsl(40, 3%, 10%)',\r\n 5: 'hsl(40, 3%, 5%)',\r\n main: 'hsl(40, 3%, 79%)'\r\n};\r\nexport const skyBlue = {\r\n 97: 'hsl(196, 74%, 97%)',\r\n 95: 'hsl(196, 74%, 95%)',\r\n 90: 'hsl(196, 74%, 90%)',\r\n 85: 'hsl(196, 74%, 85%)',\r\n 80: 'hsl(196, 74%, 80%)',\r\n 77: 'hsl(196, 74%, 77%)',\r\n 65: 'hsl(196, 74%, 65%)',\r\n 60: 'hsl(196, 74%, 60%)',\r\n 55: 'hsl(196, 74%, 55%)',\r\n 50: 'hsl(196, 74%, 50%)',\r\n 45: 'hsl(196, 74%, 45%)',\r\n 40: 'hsl(196, 74%, 40%)',\r\n 35: 'hsl(196, 74%, 35%)',\r\n 30: 'hsl(196, 74%, 30%)',\r\n 25: 'hsl(196, 74%, 25%)',\r\n 20: 'hsl(196, 74%, 20%)',\r\n 15: 'hsl(196, 74%, 15%)',\r\n 10: 'hsl(196, 74%, 10%)',\r\n 5: 'hsl(196, 74%, 5%)',\r\n main: 'hsl(196, 74%, 77%)',\r\n active: 'hsl(196, 74%, 95%)',\r\n hover: 'hsl(196, 74%, 90%)',\r\n selected: 'hsl(196, 74%, 95%)' // skyBlue.95\r\n};\r\nexport const sunflower = {\r\n 95: 'hsl(55, 100%, 95%)',\r\n 90: 'hsl(55, 100%, 90%)',\r\n 85: 'hsl(55, 100%, 85%)',\r\n 80: 'hsl(55, 100%, 80%)',\r\n 73: 'hsl(55, 100%, 73%)',\r\n 70: 'hsl(55, 100%, 70%)',\r\n 65: 'hsl(55, 100%, 65%)',\r\n 60: 'hsl(55, 100%, 60%)',\r\n 55: 'hsl(55, 100%, 55%)',\r\n 50: 'hsl(55, 100%, 50%)',\r\n 45: 'hsl(55, 100%, 45%)',\r\n 40: 'hsl(55, 100%, 40%)',\r\n 35: 'hsl(55, 100%, 35%)',\r\n 30: 'hsl(55, 100%, 30%)',\r\n 25: 'hsl(55, 100%, 25%)',\r\n 20: 'hsl(55, 100%, 20%)',\r\n 15: 'hsl(55, 100%, 15%)',\r\n 10: 'hsl(55, 100%, 10%)',\r\n 5: 'hsl(55, 100%, 5%)',\r\n main: 'hsl(55, 100%, 73%)'\r\n};\r\nexport const terracotta = {\r\n 95: 'hsl(34, 100%, 95%)',\r\n 90: 'hsl(34, 100%, 90%)',\r\n 85: 'hsl(34, 100%, 85%)',\r\n 80: 'hsl(34, 100%, 80%)',\r\n 75: 'hsl(34, 100%, 75%)',\r\n 70: 'hsl(34, 100%, 70%)',\r\n 65: 'hsl(34, 100%, 65%)',\r\n 60: 'hsl(34, 100%, 60%)',\r\n 55: 'hsl(34, 100%, 55%)',\r\n 50: 'hsl(34, 100%, 50%)',\r\n 45: 'hsl(34, 100%, 45%)',\r\n 40: 'hsl(34, 100%, 40%)',\r\n 35: 'hsl(34, 100%, 35%)',\r\n 30: 'hsl(34, 100%, 30%)',\r\n 25: 'hsl(34, 100%, 25%)',\r\n 20: 'hsl(34, 100%, 20%)',\r\n 15: 'hsl(34, 100%, 15%)',\r\n 10: 'hsl(34, 100%, 10%)',\r\n 5: 'hsl(34, 100%, 5%)',\r\n main: 'hsl(34, 100%, 35%)'\r\n};\r\nexport const warmGrey = {\r\n 95: 'hsl(30, 8%, 95%)',\r\n 90: 'hsl(30, 8%, 90%)',\r\n 85: 'hsl(30, 8%, 85%)',\r\n 80: 'hsl(30, 8%, 80%)',\r\n 75: 'hsl(30, 8%, 75%)',\r\n 70: 'hsl(30, 8%, 70%)',\r\n 65: 'hsl(30, 8%, 65%)',\r\n 60: 'hsl(30, 8%, 60%)',\r\n 56: 'hsl(30, 8%, 56%)',\r\n 50: 'hsl(30, 8%, 50%)',\r\n 45: 'hsl(30, 8%, 45%)',\r\n 40: 'hsl(30, 8%, 40%)',\r\n 35: 'hsl(30, 8%, 35%)',\r\n 30: 'hsl(30, 8%, 30%)',\r\n 25: 'hsl(30, 8%, 25%)',\r\n 20: 'hsl(30, 8%, 20%)',\r\n 15: 'hsl(30, 8%, 15%)',\r\n 10: 'hsl(30, 8%, 10%)',\r\n 5: 'hsl(30, 8%, 5%)',\r\n main: 'hsl(30, 8%, 56%)'\r\n};\r\nexport const blue = {\r\n 10: '#f6fbff',\r\n 20: '#e2f1ff',\r\n 30: '#c2e1fe',\r\n 40: '#a1cef9',\r\n 50: '#77baf9',\r\n 60: '#48a1f3',\r\n 70: '#1e86e5',\r\n 80: '#0067c5',\r\n 90: '#075094',\r\n 100: '#003f79'\r\n};\r\nexport const green = {\r\n 10: '#efffed',\r\n 20: '#d8ffd3',\r\n 30: '#bdfbb6',\r\n 40: '#9df291',\r\n 50: '#82db77',\r\n 60: '#68c35e',\r\n 70: '#4ea344',\r\n 80: '#36842d',\r\n 90: '#276121',\r\n 100: '#024019'\r\n};\r\nexport const grey = {\r\n 10: '#f7f8f9',\r\n 20: '#f1f3f5',\r\n 30: '#e1e6e9',\r\n 40: '#c3ccd3',\r\n 50: '#a5b3bd',\r\n 60: '#8799a7',\r\n 70: '#768b9c',\r\n 80: '#698091',\r\n 90: '#586c7a',\r\n 100: '#465663'\r\n};\r\nexport const pink = {\r\n 10: '#fff3fd',\r\n 20: '#ffddf9',\r\n 30: '#ffbdf3',\r\n 40: '#ff8eea',\r\n 50: '#ff55df',\r\n 60: '#ff0ed2',\r\n 70: '#ee00c1',\r\n 80: '#da00b1',\r\n 90: '#a00082',\r\n 100: '#72005c'\r\n};\r\nexport const prussian = {\r\n 10: '#eff3f5',\r\n 20: '#c5dce8',\r\n 30: '#91bbcf',\r\n 40: '#5690ac',\r\n 50: '#32718e',\r\n 60: '#0d5071',\r\n 70: '#003b57',\r\n 80: '#002a3e',\r\n 90: '#001620',\r\n 100: '#000b11'\r\n};\r\nexport const red = {\r\n 10: '#fff1f1',\r\n 20: '#ffe4e4',\r\n 30: '#ffc8c8',\r\n 40: '#faa7ab',\r\n 50: '#fb7b81',\r\n 60: '#f64d55',\r\n 70: '#e84148',\r\n 80: '#d6383f',\r\n 90: '#b62f3a',\r\n 100: '#962730'\r\n};\r\nexport const yellow = {\r\n 10: '#fffde7',\r\n 20: '#fff8bd',\r\n 30: '#ffed7a',\r\n 40: '#ffe43a',\r\n 50: '#ffd600',\r\n 60: '#fec600',\r\n 70: '#f4b40d',\r\n 80: '#e29c13',\r\n 90: '#b67b08',\r\n 100: '#83591a'\r\n};\r\nexport const disabled = {\r\n bg: sandstone[95],\r\n border: sandstone[10],\r\n color: sandstone[10]\r\n};\r\nexport default {\r\n buttonTypePrimaryDefaultBorderColorDark,\r\n buttonTypePrimaryDefaultBackgroundColorDark,\r\n buttonTypePrimaryDefaultTextColorDark,\r\n buttonTypePrimaryHoverBackgroundColorDark,\r\n buttonTypePrimaryHoverBorderColorDark,\r\n buttonTypePrimaryHoverTextColorDark,\r\n buttonTypePrimaryActiveBackgroundColorDark,\r\n buttonTypePrimaryActiveBorderColorDark,\r\n buttonTypePrimaryActiveTextColorDark,\r\n buttonTypePrimaryDefaultBorderColorLight,\r\n buttonTypePrimaryDefaultBackgroundColorLight,\r\n buttonTypePrimaryDefaultTextColorLight,\r\n buttonTypePrimaryFocusOutline,\r\n buttonTypePrimaryHoverBackgroundColorLight,\r\n buttonTypePrimaryHoverBorderColorLight,\r\n buttonTypePrimaryHoverTextColorLight,\r\n buttonTypePrimaryActiveBackgroundColorLight,\r\n buttonTypePrimaryActiveBorderColorLight,\r\n buttonTypePrimaryActiveTextColorLight,\r\n buttonTypeSecondaryDefaultBorderColorDark,\r\n buttonTypeSecondaryDefaultBackgroundColorDark,\r\n buttonTypeSecondaryDefaultTextColorDark,\r\n buttonTypeSecondaryFocusOutline,\r\n buttonTypeSecondaryHoverBackgroundColorDark,\r\n buttonTypeSecondaryHoverBorderColorDark,\r\n buttonTypeSecondaryHoverTextColorDark,\r\n buttonTypeSecondaryActiveBackgroundColorDark,\r\n buttonTypeSecondaryActiveBorderColorDark,\r\n buttonTypeSecondaryActiveTextColorDark,\r\n buttonTypeSecondaryDefaultBorderColorLight,\r\n buttonTypeSecondaryDefaultBackgroundColorLight,\r\n buttonTypeSecondaryDefaultTextColorLight,\r\n buttonTypeSecondaryHoverBackgroundColorLight,\r\n buttonTypeSecondaryHoverBorderColorLight,\r\n buttonTypeSecondaryHoverTextColorLight,\r\n buttonTypeSecondaryActiveBackgroundColorLight,\r\n buttonTypeSecondaryActiveBorderColorLight,\r\n buttonTypeSecondaryActiveTextColorLight,\r\n buttonTypeTertiaryDefaultBorderColorDark,\r\n buttonTypeTertiaryDefaultBackgroundColorDark,\r\n buttonTypeTertiaryDefaultTextColorDark,\r\n buttonTypeTertiaryHoverBackgroundColorDark,\r\n buttonTypeTertiaryHoverBorderColorDark,\r\n buttonTypeTertiaryHoverTextColorDark,\r\n buttonTypeTertiaryFocusOutline,\r\n buttonTypeTertiaryActiveBackgroundColorDark,\r\n buttonTypeTertiaryActiveBorderColorDark,\r\n buttonTypeTertiaryActiveTextColorDark,\r\n buttonTypeTertiaryDefaultBorderColorLight,\r\n buttonTypeTertiaryDefaultBackgroundColorLight,\r\n buttonTypeTertiaryDefaultTextColorLight,\r\n buttonTypeTertiaryHoverBackgroundColorLight,\r\n buttonTypeTertiaryHoverBorderColorLight,\r\n buttonTypeTertiaryHoverTextColorLight,\r\n buttonTypeTertiaryActiveBackgroundColorLight,\r\n buttonTypeTertiaryActiveBorderColorLight,\r\n buttonTypeTertiaryActiveTextColorLight,\r\n buttonDisabledCursor,\r\n buttonDisabledOpacity,\r\n darkBlue,\r\n digiGreen,\r\n earth,\r\n energyRed,\r\n focusColor,\r\n landGreen,\r\n sandstone,\r\n seaBlue,\r\n skyBlue,\r\n sunflower,\r\n terracotta,\r\n warmGrey,\r\n blue,\r\n green,\r\n grey,\r\n pink,\r\n prussian,\r\n red,\r\n yellow,\r\n disabled\r\n};\r\n","import colors from '../theme/foundations/colors';\r\n/** Concatenates individual className arguments and returns a single string. */\r\nexport function cs(...classNames) {\r\n return classNames.filter(Boolean).join(' ');\r\n}\r\n/** Parses HSL color code. */\r\nexport function parseHSL(color) {\r\n const regexp = /hsl\\((\\d+),\\s*([\\d.]+)%,\\s*([\\d.]+)%\\)/g;\r\n const res = regexp?.exec?.(color)?.slice?.(1);\r\n return { h: Number(res?.[0]) || 0, s: Number(res?.[1]) || 0, l: Number(res?.[2]) || 0 };\r\n}\r\n/** Converts hex color value to rgb with optional alpha property. */\r\nexport function hexToRGBA(hex, alpha) {\r\n let hexStr = hex;\r\n if (hexStr.charAt(0) === '#')\r\n hexStr = hexStr.slice(1);\r\n if (hexStr.length < 4)\r\n hexStr = hexStr\r\n .split('')\r\n .map(char => char + char)\r\n .join('');\r\n const r = parseInt(hexStr.slice(0, 2), 16);\r\n const g = parseInt(hexStr.slice(2, 4), 16);\r\n const b = parseInt(hexStr.slice(4, 6), 16);\r\n return alpha !== undefined ? `rgba(${r}, ${g}, ${b}, ${alpha})` : `rgb(${r}, ${g}, ${b})`;\r\n}\r\nexport function vuiColorToRGBA(color, alpha) {\r\n if (!color.includes('.'))\r\n return 'transparent';\r\n const [colorName, shade] = color.split('.');\r\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\r\n // @ts-ignore\r\n const x = parseHSL(colors[colorName][shade]);\r\n return HSLToRGBA(x.h, x.s, x.l, alpha || shade === 'main' ? 1 : parseInt(shade));\r\n}\r\n/** Converts hsl color value to rgb with optional alpha property. */\r\nexport function HSLToRGBA(h, s, l, alpha) {\r\n s /= 100;\r\n l /= 100;\r\n const c = (1 - Math.abs(2 * l - 1)) * s, x = c * (1 - Math.abs(((h / 60) % 2) - 1)), m = l - c / 2;\r\n let r = 0, g = 0, b = 0;\r\n if (0 <= h && h < 60) {\r\n r = c;\r\n g = x;\r\n b = 0;\r\n }\r\n else if (60 <= h && h < 120) {\r\n r = x;\r\n g = c;\r\n b = 0;\r\n }\r\n else if (120 <= h && h < 180) {\r\n r = 0;\r\n g = c;\r\n b = x;\r\n }\r\n else if (180 <= h && h < 240) {\r\n r = 0;\r\n g = x;\r\n b = c;\r\n }\r\n else if (240 <= h && h < 300) {\r\n r = x;\r\n g = 0;\r\n b = c;\r\n }\r\n else if (300 <= h && h < 360) {\r\n r = c;\r\n g = 0;\r\n b = x;\r\n }\r\n r = Math.round((r + m) * 255);\r\n g = Math.round((g + m) * 255);\r\n b = Math.round((b + m) * 255);\r\n return alpha !== undefined ? `rgba(${r}, ${g}, ${b}, ${alpha})` : `rgb(${r}, ${g}, ${b})`;\r\n}\r\n/** Styling to add ellipsis for long texts. */\r\nexport const ellipsisOverflow = {\r\n overflow: 'hidden',\r\n textOverflow: 'ellipsis',\r\n whiteSpace: 'nowrap'\r\n};\r\n","export const uid = (prefix) => `${prefix ? `${prefix}_` : ''}${Date.now().toString(36) + Math.random().toString(36).substr(2)}`;\r\n","import React, { createContext, useContext, useEffect, useState } from 'react';\r\nimport { isObject, noop, useCallbackRef } from '../utils';\r\nimport { cdnUrls } from './consts';\r\nconst LinksContext = createContext(undefined);\r\n/**\r\n * Adds loggedIn=1 parameter to the URL if 'isLoggedIn' flag is true, which means the user is logged in.\r\n * If 'isLoggedIn' is falsy, loggedin param will be removed.\r\n * This is supposed to aid login flow when navigating between Veracity applications.\r\n */\r\nexport function getLoggedInLink(link, isLoggedIn) {\r\n try {\r\n const url = new URL(link);\r\n if (isLoggedIn)\r\n url.searchParams.append('loggedin', '1');\r\n else\r\n url.searchParams.delete('loggedin');\r\n return url.toString();\r\n }\r\n catch {\r\n return link;\r\n }\r\n}\r\nexport function LinksProvider(props) {\r\n const linksState = useState({});\r\n return React.createElement(LinksContext.Provider, { value: linksState, ...props });\r\n}\r\n/** Returns links and setLinks from LinksContext. */\r\nexport function useLinks() {\r\n const context = useContext(LinksContext);\r\n if (context === undefined) {\r\n console.error('useLinks must be used within a LinksContext.');\r\n return [{}, noop];\r\n }\r\n return context;\r\n}\r\n/**\r\n * Retrieves the links from CDN for the given environment and appends them with loggedin=1 parameter\r\n * if user is logged in. Links will be reloaded when 'env' changes or updated when 'isLoggedIn' changes.\r\n */\r\nexport function useLoadLinks(env, isLoggedIn) {\r\n const [, setLinks] = useLinks();\r\n // Load links from the CDN for the given environment.\r\n const loadLinks = async (env) => {\r\n try {\r\n const response = await fetch(`${cdnUrls[env]}/common/data/links/base.json`);\r\n if (!response.ok)\r\n return;\r\n const data = await response.json();\r\n if (isObject(data))\r\n setLinks(updateLoggedInParam(data));\r\n }\r\n catch {\r\n console.error('Failed to retrieve links');\r\n }\r\n };\r\n /**\r\n * Adds/removes loggedin=1 URL param for each link based on isLoggedIn arg.\r\n * useCallbackRef is used here to prevent a stale closure in async loadLinks.\r\n */\r\n const updateLoggedInParam = useCallbackRef((links) => {\r\n return Object.keys(links).reduce((loggedInLinks, key) => {\r\n loggedInLinks[key] = getLoggedInLink(links[key], isLoggedIn);\r\n return loggedInLinks;\r\n }, {});\r\n });\r\n useEffect(() => {\r\n if (!env)\r\n return;\r\n loadLinks(env);\r\n }, [env]);\r\n useEffect(() => {\r\n setLinks(updateLoggedInParam);\r\n }, [isLoggedIn]);\r\n}\r\n","/** @license React v16.13.1\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';var b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?\nSymbol.for(\"react.suspense_list\"):60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.block\"):60121,w=b?Symbol.for(\"react.fundamental\"):60117,x=b?Symbol.for(\"react.responder\"):60118,y=b?Symbol.for(\"react.scope\"):60119;\nfunction z(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;\nexports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};\nexports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","function stylis_min (W) {\n function M(d, c, e, h, a) {\n for (var m = 0, b = 0, v = 0, n = 0, q, g, x = 0, K = 0, k, u = k = q = 0, l = 0, r = 0, I = 0, t = 0, B = e.length, J = B - 1, y, f = '', p = '', F = '', G = '', C; l < B;) {\n g = e.charCodeAt(l);\n l === J && 0 !== b + n + v + m && (0 !== b && (g = 47 === b ? 10 : 47), n = v = m = 0, B++, J++);\n\n if (0 === b + n + v + m) {\n if (l === J && (0 < r && (f = f.replace(N, '')), 0 < f.trim().length)) {\n switch (g) {\n case 32:\n case 9:\n case 59:\n case 13:\n case 10:\n break;\n\n default:\n f += e.charAt(l);\n }\n\n g = 59;\n }\n\n switch (g) {\n case 123:\n f = f.trim();\n q = f.charCodeAt(0);\n k = 1;\n\n for (t = ++l; l < B;) {\n switch (g = e.charCodeAt(l)) {\n case 123:\n k++;\n break;\n\n case 125:\n k--;\n break;\n\n case 47:\n switch (g = e.charCodeAt(l + 1)) {\n case 42:\n case 47:\n a: {\n for (u = l + 1; u < J; ++u) {\n switch (e.charCodeAt(u)) {\n case 47:\n if (42 === g && 42 === e.charCodeAt(u - 1) && l + 2 !== u) {\n l = u + 1;\n break a;\n }\n\n break;\n\n case 10:\n if (47 === g) {\n l = u + 1;\n break a;\n }\n\n }\n }\n\n l = u;\n }\n\n }\n\n break;\n\n case 91:\n g++;\n\n case 40:\n g++;\n\n case 34:\n case 39:\n for (; l++ < J && e.charCodeAt(l) !== g;) {\n }\n\n }\n\n if (0 === k) break;\n l++;\n }\n\n k = e.substring(t, l);\n 0 === q && (q = (f = f.replace(ca, '').trim()).charCodeAt(0));\n\n switch (q) {\n case 64:\n 0 < r && (f = f.replace(N, ''));\n g = f.charCodeAt(1);\n\n switch (g) {\n case 100:\n case 109:\n case 115:\n case 45:\n r = c;\n break;\n\n default:\n r = O;\n }\n\n k = M(c, r, k, g, a + 1);\n t = k.length;\n 0 < A && (r = X(O, f, I), C = H(3, k, r, c, D, z, t, g, a, h), f = r.join(''), void 0 !== C && 0 === (t = (k = C.trim()).length) && (g = 0, k = ''));\n if (0 < t) switch (g) {\n case 115:\n f = f.replace(da, ea);\n\n case 100:\n case 109:\n case 45:\n k = f + '{' + k + '}';\n break;\n\n case 107:\n f = f.replace(fa, '$1 $2');\n k = f + '{' + k + '}';\n k = 1 === w || 2 === w && L('@' + k, 3) ? '@-webkit-' + k + '@' + k : '@' + k;\n break;\n\n default:\n k = f + k, 112 === h && (k = (p += k, ''));\n } else k = '';\n break;\n\n default:\n k = M(c, X(c, f, I), k, h, a + 1);\n }\n\n F += k;\n k = I = r = u = q = 0;\n f = '';\n g = e.charCodeAt(++l);\n break;\n\n case 125:\n case 59:\n f = (0 < r ? f.replace(N, '') : f).trim();\n if (1 < (t = f.length)) switch (0 === u && (q = f.charCodeAt(0), 45 === q || 96 < q && 123 > q) && (t = (f = f.replace(' ', ':')).length), 0 < A && void 0 !== (C = H(1, f, c, d, D, z, p.length, h, a, h)) && 0 === (t = (f = C.trim()).length) && (f = '\\x00\\x00'), q = f.charCodeAt(0), g = f.charCodeAt(1), q) {\n case 0:\n break;\n\n case 64:\n if (105 === g || 99 === g) {\n G += f + e.charAt(l);\n break;\n }\n\n default:\n 58 !== f.charCodeAt(t - 1) && (p += P(f, q, g, f.charCodeAt(2)));\n }\n I = r = u = q = 0;\n f = '';\n g = e.charCodeAt(++l);\n }\n }\n\n switch (g) {\n case 13:\n case 10:\n 47 === b ? b = 0 : 0 === 1 + q && 107 !== h && 0 < f.length && (r = 1, f += '\\x00');\n 0 < A * Y && H(0, f, c, d, D, z, p.length, h, a, h);\n z = 1;\n D++;\n break;\n\n case 59:\n case 125:\n if (0 === b + n + v + m) {\n z++;\n break;\n }\n\n default:\n z++;\n y = e.charAt(l);\n\n switch (g) {\n case 9:\n case 32:\n if (0 === n + m + b) switch (x) {\n case 44:\n case 58:\n case 9:\n case 32:\n y = '';\n break;\n\n default:\n 32 !== g && (y = ' ');\n }\n break;\n\n case 0:\n y = '\\\\0';\n break;\n\n case 12:\n y = '\\\\f';\n break;\n\n case 11:\n y = '\\\\v';\n break;\n\n case 38:\n 0 === n + b + m && (r = I = 1, y = '\\f' + y);\n break;\n\n case 108:\n if (0 === n + b + m + E && 0 < u) switch (l - u) {\n case 2:\n 112 === x && 58 === e.charCodeAt(l - 3) && (E = x);\n\n case 8:\n 111 === K && (E = K);\n }\n break;\n\n case 58:\n 0 === n + b + m && (u = l);\n break;\n\n case 44:\n 0 === b + v + n + m && (r = 1, y += '\\r');\n break;\n\n case 34:\n case 39:\n 0 === b && (n = n === g ? 0 : 0 === n ? g : n);\n break;\n\n case 91:\n 0 === n + b + v && m++;\n break;\n\n case 93:\n 0 === n + b + v && m--;\n break;\n\n case 41:\n 0 === n + b + m && v--;\n break;\n\n case 40:\n if (0 === n + b + m) {\n if (0 === q) switch (2 * x + 3 * K) {\n case 533:\n break;\n\n default:\n q = 1;\n }\n v++;\n }\n\n break;\n\n case 64:\n 0 === b + v + n + m + u + k && (k = 1);\n break;\n\n case 42:\n case 47:\n if (!(0 < n + m + v)) switch (b) {\n case 0:\n switch (2 * g + 3 * e.charCodeAt(l + 1)) {\n case 235:\n b = 47;\n break;\n\n case 220:\n t = l, b = 42;\n }\n\n break;\n\n case 42:\n 47 === g && 42 === x && t + 2 !== l && (33 === e.charCodeAt(t + 2) && (p += e.substring(t, l + 1)), y = '', b = 0);\n }\n }\n\n 0 === b && (f += y);\n }\n\n K = x;\n x = g;\n l++;\n }\n\n t = p.length;\n\n if (0 < t) {\n r = c;\n if (0 < A && (C = H(2, p, r, d, D, z, t, h, a, h), void 0 !== C && 0 === (p = C).length)) return G + p + F;\n p = r.join(',') + '{' + p + '}';\n\n if (0 !== w * E) {\n 2 !== w || L(p, 2) || (E = 0);\n\n switch (E) {\n case 111:\n p = p.replace(ha, ':-moz-$1') + p;\n break;\n\n case 112:\n p = p.replace(Q, '::-webkit-input-$1') + p.replace(Q, '::-moz-$1') + p.replace(Q, ':-ms-input-$1') + p;\n }\n\n E = 0;\n }\n }\n\n return G + p + F;\n }\n\n function X(d, c, e) {\n var h = c.trim().split(ia);\n c = h;\n var a = h.length,\n m = d.length;\n\n switch (m) {\n case 0:\n case 1:\n var b = 0;\n\n for (d = 0 === m ? '' : d[0] + ' '; b < a; ++b) {\n c[b] = Z(d, c[b], e).trim();\n }\n\n break;\n\n default:\n var v = b = 0;\n\n for (c = []; b < a; ++b) {\n for (var n = 0; n < m; ++n) {\n c[v++] = Z(d[n] + ' ', h[b], e).trim();\n }\n }\n\n }\n\n return c;\n }\n\n function Z(d, c, e) {\n var h = c.charCodeAt(0);\n 33 > h && (h = (c = c.trim()).charCodeAt(0));\n\n switch (h) {\n case 38:\n return c.replace(F, '$1' + d.trim());\n\n case 58:\n return d.trim() + c.replace(F, '$1' + d.trim());\n\n default:\n if (0 < 1 * e && 0 < c.indexOf('\\f')) return c.replace(F, (58 === d.charCodeAt(0) ? '' : '$1') + d.trim());\n }\n\n return d + c;\n }\n\n function P(d, c, e, h) {\n var a = d + ';',\n m = 2 * c + 3 * e + 4 * h;\n\n if (944 === m) {\n d = a.indexOf(':', 9) + 1;\n var b = a.substring(d, a.length - 1).trim();\n b = a.substring(0, d).trim() + b + ';';\n return 1 === w || 2 === w && L(b, 1) ? '-webkit-' + b + b : b;\n }\n\n if (0 === w || 2 === w && !L(a, 1)) return a;\n\n switch (m) {\n case 1015:\n return 97 === a.charCodeAt(10) ? '-webkit-' + a + a : a;\n\n case 951:\n return 116 === a.charCodeAt(3) ? '-webkit-' + a + a : a;\n\n case 963:\n return 110 === a.charCodeAt(5) ? '-webkit-' + a + a : a;\n\n case 1009:\n if (100 !== a.charCodeAt(4)) break;\n\n case 969:\n case 942:\n return '-webkit-' + a + a;\n\n case 978:\n return '-webkit-' + a + '-moz-' + a + a;\n\n case 1019:\n case 983:\n return '-webkit-' + a + '-moz-' + a + '-ms-' + a + a;\n\n case 883:\n if (45 === a.charCodeAt(8)) return '-webkit-' + a + a;\n if (0 < a.indexOf('image-set(', 11)) return a.replace(ja, '$1-webkit-$2') + a;\n break;\n\n case 932:\n if (45 === a.charCodeAt(4)) switch (a.charCodeAt(5)) {\n case 103:\n return '-webkit-box-' + a.replace('-grow', '') + '-webkit-' + a + '-ms-' + a.replace('grow', 'positive') + a;\n\n case 115:\n return '-webkit-' + a + '-ms-' + a.replace('shrink', 'negative') + a;\n\n case 98:\n return '-webkit-' + a + '-ms-' + a.replace('basis', 'preferred-size') + a;\n }\n return '-webkit-' + a + '-ms-' + a + a;\n\n case 964:\n return '-webkit-' + a + '-ms-flex-' + a + a;\n\n case 1023:\n if (99 !== a.charCodeAt(8)) break;\n b = a.substring(a.indexOf(':', 15)).replace('flex-', '').replace('space-between', 'justify');\n return '-webkit-box-pack' + b + '-webkit-' + a + '-ms-flex-pack' + b + a;\n\n case 1005:\n return ka.test(a) ? a.replace(aa, ':-webkit-') + a.replace(aa, ':-moz-') + a : a;\n\n case 1e3:\n b = a.substring(13).trim();\n c = b.indexOf('-') + 1;\n\n switch (b.charCodeAt(0) + b.charCodeAt(c)) {\n case 226:\n b = a.replace(G, 'tb');\n break;\n\n case 232:\n b = a.replace(G, 'tb-rl');\n break;\n\n case 220:\n b = a.replace(G, 'lr');\n break;\n\n default:\n return a;\n }\n\n return '-webkit-' + a + '-ms-' + b + a;\n\n case 1017:\n if (-1 === a.indexOf('sticky', 9)) break;\n\n case 975:\n c = (a = d).length - 10;\n b = (33 === a.charCodeAt(c) ? a.substring(0, c) : a).substring(d.indexOf(':', 7) + 1).trim();\n\n switch (m = b.charCodeAt(0) + (b.charCodeAt(7) | 0)) {\n case 203:\n if (111 > b.charCodeAt(8)) break;\n\n case 115:\n a = a.replace(b, '-webkit-' + b) + ';' + a;\n break;\n\n case 207:\n case 102:\n a = a.replace(b, '-webkit-' + (102 < m ? 'inline-' : '') + 'box') + ';' + a.replace(b, '-webkit-' + b) + ';' + a.replace(b, '-ms-' + b + 'box') + ';' + a;\n }\n\n return a + ';';\n\n case 938:\n if (45 === a.charCodeAt(5)) switch (a.charCodeAt(6)) {\n case 105:\n return b = a.replace('-items', ''), '-webkit-' + a + '-webkit-box-' + b + '-ms-flex-' + b + a;\n\n case 115:\n return '-webkit-' + a + '-ms-flex-item-' + a.replace(ba, '') + a;\n\n default:\n return '-webkit-' + a + '-ms-flex-line-pack' + a.replace('align-content', '').replace(ba, '') + a;\n }\n break;\n\n case 973:\n case 989:\n if (45 !== a.charCodeAt(3) || 122 === a.charCodeAt(4)) break;\n\n case 931:\n case 953:\n if (!0 === la.test(d)) return 115 === (b = d.substring(d.indexOf(':') + 1)).charCodeAt(0) ? P(d.replace('stretch', 'fill-available'), c, e, h).replace(':fill-available', ':stretch') : a.replace(b, '-webkit-' + b) + a.replace(b, '-moz-' + b.replace('fill-', '')) + a;\n break;\n\n case 962:\n if (a = '-webkit-' + a + (102 === a.charCodeAt(5) ? '-ms-' + a : '') + a, 211 === e + h && 105 === a.charCodeAt(13) && 0 < a.indexOf('transform', 10)) return a.substring(0, a.indexOf(';', 27) + 1).replace(ma, '$1-webkit-$2') + a;\n }\n\n return a;\n }\n\n function L(d, c) {\n var e = d.indexOf(1 === c ? ':' : '{'),\n h = d.substring(0, 3 !== c ? e : 10);\n e = d.substring(e + 1, d.length - 1);\n return R(2 !== c ? h : h.replace(na, '$1'), e, c);\n }\n\n function ea(d, c) {\n var e = P(c, c.charCodeAt(0), c.charCodeAt(1), c.charCodeAt(2));\n return e !== c + ';' ? e.replace(oa, ' or ($1)').substring(4) : '(' + c + ')';\n }\n\n function H(d, c, e, h, a, m, b, v, n, q) {\n for (var g = 0, x = c, w; g < A; ++g) {\n switch (w = S[g].call(B, d, x, e, h, a, m, b, v, n, q)) {\n case void 0:\n case !1:\n case !0:\n case null:\n break;\n\n default:\n x = w;\n }\n }\n\n if (x !== c) return x;\n }\n\n function T(d) {\n switch (d) {\n case void 0:\n case null:\n A = S.length = 0;\n break;\n\n default:\n if ('function' === typeof d) S[A++] = d;else if ('object' === typeof d) for (var c = 0, e = d.length; c < e; ++c) {\n T(d[c]);\n } else Y = !!d | 0;\n }\n\n return T;\n }\n\n function U(d) {\n d = d.prefix;\n void 0 !== d && (R = null, d ? 'function' !== typeof d ? w = 1 : (w = 2, R = d) : w = 0);\n return U;\n }\n\n function B(d, c) {\n var e = d;\n 33 > e.charCodeAt(0) && (e = e.trim());\n V = e;\n e = [V];\n\n if (0 < A) {\n var h = H(-1, c, e, e, D, z, 0, 0, 0, 0);\n void 0 !== h && 'string' === typeof h && (c = h);\n }\n\n var a = M(O, e, c, 0, 0);\n 0 < A && (h = H(-2, a, e, e, D, z, a.length, 0, 0, 0), void 0 !== h && (a = h));\n V = '';\n E = 0;\n z = D = 1;\n return a;\n }\n\n var ca = /^\\0+/g,\n N = /[\\0\\r\\f]/g,\n aa = /: */g,\n ka = /zoo|gra/,\n ma = /([,: ])(transform)/g,\n ia = /,\\r+?/g,\n F = /([\\t\\r\\n ])*\\f?&/g,\n fa = /@(k\\w+)\\s*(\\S*)\\s*/,\n Q = /::(place)/g,\n ha = /:(read-only)/g,\n G = /[svh]\\w+-[tblr]{2}/,\n da = /\\(\\s*(.*)\\s*\\)/g,\n oa = /([\\s\\S]*?);/g,\n ba = /-self|flex-/g,\n na = /[^]*?(:[rp][el]a[\\w-]+)[^]*/,\n la = /stretch|:\\s*\\w+\\-(?:conte|avail)/,\n ja = /([^-])(image-set\\()/,\n z = 1,\n D = 1,\n E = 0,\n w = 1,\n O = [],\n S = [],\n A = 0,\n R = null,\n Y = 0,\n V = '';\n B.use = T;\n B.set = U;\n void 0 !== W && U(W);\n return B;\n}\n\nexport default stylis_min;\n","var unitlessKeys = {\n animationIterationCount: 1,\n borderImageOutset: 1,\n borderImageSlice: 1,\n borderImageWidth: 1,\n boxFlex: 1,\n boxFlexGroup: 1,\n boxOrdinalGroup: 1,\n columnCount: 1,\n columns: 1,\n flex: 1,\n flexGrow: 1,\n flexPositive: 1,\n flexShrink: 1,\n flexNegative: 1,\n flexOrder: 1,\n gridRow: 1,\n gridRowEnd: 1,\n gridRowSpan: 1,\n gridRowStart: 1,\n gridColumn: 1,\n gridColumnEnd: 1,\n gridColumnSpan: 1,\n gridColumnStart: 1,\n msGridRow: 1,\n msGridRowSpan: 1,\n msGridColumn: 1,\n msGridColumnSpan: 1,\n fontWeight: 1,\n lineHeight: 1,\n opacity: 1,\n order: 1,\n orphans: 1,\n tabSize: 1,\n widows: 1,\n zIndex: 1,\n zoom: 1,\n WebkitLineClamp: 1,\n // SVG-related properties\n fillOpacity: 1,\n floodOpacity: 1,\n stopOpacity: 1,\n strokeDasharray: 1,\n strokeDashoffset: 1,\n strokeMiterlimit: 1,\n strokeOpacity: 1,\n strokeWidth: 1\n};\n\nexport default unitlessKeys;\n","function memoize(fn) {\n var cache = Object.create(null);\n return function (arg) {\n if (cache[arg] === undefined) cache[arg] = fn(arg);\n return cache[arg];\n };\n}\n\nexport { memoize as default };\n","import memoize from '@emotion/memoize';\n\nvar reactPropsRegex = /^((children|dangerouslySetInnerHTML|key|ref|autoFocus|defaultValue|defaultChecked|innerHTML|suppressContentEditableWarning|suppressHydrationWarning|valueLink|abbr|accept|acceptCharset|accessKey|action|allow|allowUserMedia|allowPaymentRequest|allowFullScreen|allowTransparency|alt|async|autoComplete|autoPlay|capture|cellPadding|cellSpacing|challenge|charSet|checked|cite|classID|className|cols|colSpan|content|contentEditable|contextMenu|controls|controlsList|coords|crossOrigin|data|dateTime|decoding|default|defer|dir|disabled|disablePictureInPicture|download|draggable|encType|enterKeyHint|form|formAction|formEncType|formMethod|formNoValidate|formTarget|frameBorder|headers|height|hidden|high|href|hrefLang|htmlFor|httpEquiv|id|inputMode|integrity|is|keyParams|keyType|kind|label|lang|list|loading|loop|low|marginHeight|marginWidth|max|maxLength|media|mediaGroup|method|min|minLength|multiple|muted|name|nonce|noValidate|open|optimum|pattern|placeholder|playsInline|poster|preload|profile|radioGroup|readOnly|referrerPolicy|rel|required|reversed|role|rows|rowSpan|sandbox|scope|scoped|scrolling|seamless|selected|shape|size|sizes|slot|span|spellCheck|src|srcDoc|srcLang|srcSet|start|step|style|summary|tabIndex|target|title|translate|type|useMap|value|width|wmode|wrap|about|datatype|inlist|prefix|property|resource|typeof|vocab|autoCapitalize|autoCorrect|autoSave|color|incremental|fallback|inert|itemProp|itemScope|itemType|itemID|itemRef|on|option|results|security|unselectable|accentHeight|accumulate|additive|alignmentBaseline|allowReorder|alphabetic|amplitude|arabicForm|ascent|attributeName|attributeType|autoReverse|azimuth|baseFrequency|baselineShift|baseProfile|bbox|begin|bias|by|calcMode|capHeight|clip|clipPathUnits|clipPath|clipRule|colorInterpolation|colorInterpolationFilters|colorProfile|colorRendering|contentScriptType|contentStyleType|cursor|cx|cy|d|decelerate|descent|diffuseConstant|direction|display|divisor|dominantBaseline|dur|dx|dy|edgeMode|elevation|enableBackground|end|exponent|externalResourcesRequired|fill|fillOpacity|fillRule|filter|filterRes|filterUnits|floodColor|floodOpacity|focusable|fontFamily|fontSize|fontSizeAdjust|fontStretch|fontStyle|fontVariant|fontWeight|format|from|fr|fx|fy|g1|g2|glyphName|glyphOrientationHorizontal|glyphOrientationVertical|glyphRef|gradientTransform|gradientUnits|hanging|horizAdvX|horizOriginX|ideographic|imageRendering|in|in2|intercept|k|k1|k2|k3|k4|kernelMatrix|kernelUnitLength|kerning|keyPoints|keySplines|keyTimes|lengthAdjust|letterSpacing|lightingColor|limitingConeAngle|local|markerEnd|markerMid|markerStart|markerHeight|markerUnits|markerWidth|mask|maskContentUnits|maskUnits|mathematical|mode|numOctaves|offset|opacity|operator|order|orient|orientation|origin|overflow|overlinePosition|overlineThickness|panose1|paintOrder|pathLength|patternContentUnits|patternTransform|patternUnits|pointerEvents|points|pointsAtX|pointsAtY|pointsAtZ|preserveAlpha|preserveAspectRatio|primitiveUnits|r|radius|refX|refY|renderingIntent|repeatCount|repeatDur|requiredExtensions|requiredFeatures|restart|result|rotate|rx|ry|scale|seed|shapeRendering|slope|spacing|specularConstant|specularExponent|speed|spreadMethod|startOffset|stdDeviation|stemh|stemv|stitchTiles|stopColor|stopOpacity|strikethroughPosition|strikethroughThickness|string|stroke|strokeDasharray|strokeDashoffset|strokeLinecap|strokeLinejoin|strokeMiterlimit|strokeOpacity|strokeWidth|surfaceScale|systemLanguage|tableValues|targetX|targetY|textAnchor|textDecoration|textRendering|textLength|to|transform|u1|u2|underlinePosition|underlineThickness|unicode|unicodeBidi|unicodeRange|unitsPerEm|vAlphabetic|vHanging|vIdeographic|vMathematical|values|vectorEffect|version|vertAdvY|vertOriginX|vertOriginY|viewBox|viewTarget|visibility|widths|wordSpacing|writingMode|x|xHeight|x1|x2|xChannelSelector|xlinkActuate|xlinkArcrole|xlinkHref|xlinkRole|xlinkShow|xlinkTitle|xlinkType|xmlBase|xmlns|xmlnsXlink|xmlLang|xmlSpace|y|y1|y2|yChannelSelector|z|zoomAndPan|for|class|autofocus)|(([Dd][Aa][Tt][Aa]|[Aa][Rr][Ii][Aa]|x)-.*))$/; // https://esbench.com/bench/5bfee68a4cd7e6009ef61d23\n\nvar isPropValid = /* #__PURE__ */memoize(function (prop) {\n return reactPropsRegex.test(prop) || prop.charCodeAt(0) === 111\n /* o */\n && prop.charCodeAt(1) === 110\n /* n */\n && prop.charCodeAt(2) < 91;\n}\n/* Z+1 */\n);\n\nexport { isPropValid as default };\n","'use strict';\n\nvar reactIs = require('react-is');\n\n/**\n * Copyright 2015, Yahoo! Inc.\n * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.\n */\nvar REACT_STATICS = {\n childContextTypes: true,\n contextType: true,\n contextTypes: true,\n defaultProps: true,\n displayName: true,\n getDefaultProps: true,\n getDerivedStateFromError: true,\n getDerivedStateFromProps: true,\n mixins: true,\n propTypes: true,\n type: true\n};\nvar KNOWN_STATICS = {\n name: true,\n length: true,\n prototype: true,\n caller: true,\n callee: true,\n arguments: true,\n arity: true\n};\nvar FORWARD_REF_STATICS = {\n '$$typeof': true,\n render: true,\n defaultProps: true,\n displayName: true,\n propTypes: true\n};\nvar MEMO_STATICS = {\n '$$typeof': true,\n compare: true,\n defaultProps: true,\n displayName: true,\n propTypes: true,\n type: true\n};\nvar TYPE_STATICS = {};\nTYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;\nTYPE_STATICS[reactIs.Memo] = MEMO_STATICS;\n\nfunction getStatics(component) {\n // React v16.11 and below\n if (reactIs.isMemo(component)) {\n return MEMO_STATICS;\n } // React v16.12 and above\n\n\n return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;\n}\n\nvar defineProperty = Object.defineProperty;\nvar getOwnPropertyNames = Object.getOwnPropertyNames;\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar getPrototypeOf = Object.getPrototypeOf;\nvar objectPrototype = Object.prototype;\nfunction hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {\n if (typeof sourceComponent !== 'string') {\n // don't hoist over string (html) components\n if (objectPrototype) {\n var inheritedComponent = getPrototypeOf(sourceComponent);\n\n if (inheritedComponent && inheritedComponent !== objectPrototype) {\n hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);\n }\n }\n\n var keys = getOwnPropertyNames(sourceComponent);\n\n if (getOwnPropertySymbols) {\n keys = keys.concat(getOwnPropertySymbols(sourceComponent));\n }\n\n var targetStatics = getStatics(targetComponent);\n var sourceStatics = getStatics(sourceComponent);\n\n for (var i = 0; i < keys.length; ++i) {\n var key = keys[i];\n\n if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {\n var descriptor = getOwnPropertyDescriptor(sourceComponent, key);\n\n try {\n // Avoid failures from read-only properties\n defineProperty(targetComponent, key, descriptor);\n } catch (e) {}\n }\n }\n }\n\n return targetComponent;\n}\n\nmodule.exports = hoistNonReactStatics;\n","import{typeOf as e,isElement as t,isValidElementType as n}from\"react-is\";import r,{useState as o,useContext as s,useMemo as i,useEffect as a,useRef as c,createElement as u,useDebugValue as l,useLayoutEffect as d}from\"react\";import h from\"shallowequal\";import p from\"@emotion/stylis\";import f from\"@emotion/unitless\";import m from\"@emotion/is-prop-valid\";import y from\"hoist-non-react-statics\";function v(){return(v=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(this,arguments)}var g=function(e,t){for(var n=[e[0]],r=0,o=t.length;r<o;r+=1)n.push(t[r],e[r+1]);return n},S=function(t){return null!==t&&\"object\"==typeof t&&\"[object Object]\"===(t.toString?t.toString():Object.prototype.toString.call(t))&&!e(t)},w=Object.freeze([]),E=Object.freeze({});function b(e){return\"function\"==typeof e}function _(e){return\"production\"!==process.env.NODE_ENV&&\"string\"==typeof e&&e||e.displayName||e.name||\"Component\"}function N(e){return e&&\"string\"==typeof e.styledComponentId}var A=\"undefined\"!=typeof process&&void 0!==process.env&&(process.env.REACT_APP_SC_ATTR||process.env.SC_ATTR)||\"data-styled\",C=\"5.3.10\",I=\"undefined\"!=typeof window&&\"HTMLElement\"in window,P=Boolean(\"boolean\"==typeof SC_DISABLE_SPEEDY?SC_DISABLE_SPEEDY:\"undefined\"!=typeof process&&void 0!==process.env&&(void 0!==process.env.REACT_APP_SC_DISABLE_SPEEDY&&\"\"!==process.env.REACT_APP_SC_DISABLE_SPEEDY?\"false\"!==process.env.REACT_APP_SC_DISABLE_SPEEDY&&process.env.REACT_APP_SC_DISABLE_SPEEDY:void 0!==process.env.SC_DISABLE_SPEEDY&&\"\"!==process.env.SC_DISABLE_SPEEDY?\"false\"!==process.env.SC_DISABLE_SPEEDY&&process.env.SC_DISABLE_SPEEDY:\"production\"!==process.env.NODE_ENV)),O={},R=\"production\"!==process.env.NODE_ENV?{1:\"Cannot create styled-component for component: %s.\\n\\n\",2:\"Can't collect styles once you've consumed a `ServerStyleSheet`'s styles! `ServerStyleSheet` is a one off instance for each server-side render cycle.\\n\\n- Are you trying to reuse it across renders?\\n- Are you accidentally calling collectStyles twice?\\n\\n\",3:\"Streaming SSR is only supported in a Node.js environment; Please do not try to call this method in the browser.\\n\\n\",4:\"The `StyleSheetManager` expects a valid target or sheet prop!\\n\\n- Does this error occur on the client and is your target falsy?\\n- Does this error occur on the server and is the sheet falsy?\\n\\n\",5:\"The clone method cannot be used on the client!\\n\\n- Are you running in a client-like environment on the server?\\n- Are you trying to run SSR on the client?\\n\\n\",6:\"Trying to insert a new style tag, but the given Node is unmounted!\\n\\n- Are you using a custom target that isn't mounted?\\n- Does your document not have a valid head element?\\n- Have you accidentally removed a style tag manually?\\n\\n\",7:'ThemeProvider: Please return an object from your \"theme\" prop function, e.g.\\n\\n```js\\ntheme={() => ({})}\\n```\\n\\n',8:'ThemeProvider: Please make your \"theme\" prop an object.\\n\\n',9:\"Missing document `<head>`\\n\\n\",10:\"Cannot find a StyleSheet instance. Usually this happens if there are multiple copies of styled-components loaded at once. Check out this issue for how to troubleshoot and fix the common cases where this situation can happen: https://github.com/styled-components/styled-components/issues/1941#issuecomment-417862021\\n\\n\",11:\"_This error was replaced with a dev-time warning, it will be deleted for v4 final._ [createGlobalStyle] received children which will not be rendered. Please use the component without passing children elements.\\n\\n\",12:\"It seems you are interpolating a keyframe declaration (%s) into an untagged string. This was supported in styled-components v3, but is not longer supported in v4 as keyframes are now injected on-demand. Please wrap your string in the css\\\\`\\\\` helper which ensures the styles are injected correctly. See https://www.styled-components.com/docs/api#css\\n\\n\",13:\"%s is not a styled component and cannot be referred to via component selector. See https://www.styled-components.com/docs/advanced#referring-to-other-components for more details.\\n\\n\",14:'ThemeProvider: \"theme\" prop is required.\\n\\n',15:\"A stylis plugin has been supplied that is not named. We need a name for each plugin to be able to prevent styling collisions between different stylis configurations within the same app. Before you pass your plugin to `<StyleSheetManager stylisPlugins={[]}>`, please make sure each plugin is uniquely-named, e.g.\\n\\n```js\\nObject.defineProperty(importedPlugin, 'name', { value: 'some-unique-name' });\\n```\\n\\n\",16:\"Reached the limit of how many styled components may be created at group %s.\\nYou may only create up to 1,073,741,824 components. If you're creating components dynamically,\\nas for instance in your render method then you may be running into this limitation.\\n\\n\",17:\"CSSStyleSheet could not be found on HTMLStyleElement.\\nHas styled-components' style tag been unmounted or altered by another script?\\n\"}:{};function D(){for(var e=arguments.length<=0?void 0:arguments[0],t=[],n=1,r=arguments.length;n<r;n+=1)t.push(n<0||arguments.length<=n?void 0:arguments[n]);return t.forEach((function(t){e=e.replace(/%[a-z]/,t)})),e}function j(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];throw\"production\"===process.env.NODE_ENV?new Error(\"An error occurred. See https://git.io/JUIaE#\"+e+\" for more information.\"+(n.length>0?\" Args: \"+n.join(\", \"):\"\")):new Error(D.apply(void 0,[R[e]].concat(n)).trim())}var T=function(){function e(e){this.groupSizes=new Uint32Array(512),this.length=512,this.tag=e}var t=e.prototype;return t.indexOfGroup=function(e){for(var t=0,n=0;n<e;n++)t+=this.groupSizes[n];return t},t.insertRules=function(e,t){if(e>=this.groupSizes.length){for(var n=this.groupSizes,r=n.length,o=r;e>=o;)(o<<=1)<0&&j(16,\"\"+e);this.groupSizes=new Uint32Array(o),this.groupSizes.set(n),this.length=o;for(var s=r;s<o;s++)this.groupSizes[s]=0}for(var i=this.indexOfGroup(e+1),a=0,c=t.length;a<c;a++)this.tag.insertRule(i,t[a])&&(this.groupSizes[e]++,i++)},t.clearGroup=function(e){if(e<this.length){var t=this.groupSizes[e],n=this.indexOfGroup(e),r=n+t;this.groupSizes[e]=0;for(var o=n;o<r;o++)this.tag.deleteRule(n)}},t.getGroup=function(e){var t=\"\";if(e>=this.length||0===this.groupSizes[e])return t;for(var n=this.groupSizes[e],r=this.indexOfGroup(e),o=r+n,s=r;s<o;s++)t+=this.tag.getRule(s)+\"/*!sc*/\\n\";return t},e}(),x=new Map,k=new Map,V=1,B=function(e){if(x.has(e))return x.get(e);for(;k.has(V);)V++;var t=V++;return\"production\"!==process.env.NODE_ENV&&((0|t)<0||t>1<<30)&&j(16,\"\"+t),x.set(e,t),k.set(t,e),t},z=function(e){return k.get(e)},M=function(e,t){t>=V&&(V=t+1),x.set(e,t),k.set(t,e)},G=\"style[\"+A+'][data-styled-version=\"5.3.10\"]',L=new RegExp(\"^\"+A+'\\\\.g(\\\\d+)\\\\[id=\"([\\\\w\\\\d-]+)\"\\\\].*?\"([^\"]*)'),F=function(e,t,n){for(var r,o=n.split(\",\"),s=0,i=o.length;s<i;s++)(r=o[s])&&e.registerName(t,r)},Y=function(e,t){for(var n=(t.textContent||\"\").split(\"/*!sc*/\\n\"),r=[],o=0,s=n.length;o<s;o++){var i=n[o].trim();if(i){var a=i.match(L);if(a){var c=0|parseInt(a[1],10),u=a[2];0!==c&&(M(u,c),F(e,u,a[3]),e.getTag().insertRules(c,r)),r.length=0}else r.push(i)}}},q=function(){return\"undefined\"!=typeof __webpack_nonce__?__webpack_nonce__:null},H=function(e){var t=document.head,n=e||t,r=document.createElement(\"style\"),o=function(e){for(var t=e.childNodes,n=t.length;n>=0;n--){var r=t[n];if(r&&1===r.nodeType&&r.hasAttribute(A))return r}}(n),s=void 0!==o?o.nextSibling:null;r.setAttribute(A,\"active\"),r.setAttribute(\"data-styled-version\",\"5.3.10\");var i=q();return i&&r.setAttribute(\"nonce\",i),n.insertBefore(r,s),r},$=function(){function e(e){var t=this.element=H(e);t.appendChild(document.createTextNode(\"\")),this.sheet=function(e){if(e.sheet)return e.sheet;for(var t=document.styleSheets,n=0,r=t.length;n<r;n++){var o=t[n];if(o.ownerNode===e)return o}j(17)}(t),this.length=0}var t=e.prototype;return t.insertRule=function(e,t){try{return this.sheet.insertRule(t,e),this.length++,!0}catch(e){return!1}},t.deleteRule=function(e){this.sheet.deleteRule(e),this.length--},t.getRule=function(e){var t=this.sheet.cssRules[e];return void 0!==t&&\"string\"==typeof t.cssText?t.cssText:\"\"},e}(),W=function(){function e(e){var t=this.element=H(e);this.nodes=t.childNodes,this.length=0}var t=e.prototype;return t.insertRule=function(e,t){if(e<=this.length&&e>=0){var n=document.createTextNode(t),r=this.nodes[e];return this.element.insertBefore(n,r||null),this.length++,!0}return!1},t.deleteRule=function(e){this.element.removeChild(this.nodes[e]),this.length--},t.getRule=function(e){return e<this.length?this.nodes[e].textContent:\"\"},e}(),U=function(){function e(e){this.rules=[],this.length=0}var t=e.prototype;return t.insertRule=function(e,t){return e<=this.length&&(this.rules.splice(e,0,t),this.length++,!0)},t.deleteRule=function(e){this.rules.splice(e,1),this.length--},t.getRule=function(e){return e<this.length?this.rules[e]:\"\"},e}(),J=I,X={isServer:!I,useCSSOMInjection:!P},Z=function(){function e(e,t,n){void 0===e&&(e=E),void 0===t&&(t={}),this.options=v({},X,{},e),this.gs=t,this.names=new Map(n),this.server=!!e.isServer,!this.server&&I&&J&&(J=!1,function(e){for(var t=document.querySelectorAll(G),n=0,r=t.length;n<r;n++){var o=t[n];o&&\"active\"!==o.getAttribute(A)&&(Y(e,o),o.parentNode&&o.parentNode.removeChild(o))}}(this))}e.registerId=function(e){return B(e)};var t=e.prototype;return t.reconstructWithOptions=function(t,n){return void 0===n&&(n=!0),new e(v({},this.options,{},t),this.gs,n&&this.names||void 0)},t.allocateGSInstance=function(e){return this.gs[e]=(this.gs[e]||0)+1},t.getTag=function(){return this.tag||(this.tag=(n=(t=this.options).isServer,r=t.useCSSOMInjection,o=t.target,e=n?new U(o):r?new $(o):new W(o),new T(e)));var e,t,n,r,o},t.hasNameForId=function(e,t){return this.names.has(e)&&this.names.get(e).has(t)},t.registerName=function(e,t){if(B(e),this.names.has(e))this.names.get(e).add(t);else{var n=new Set;n.add(t),this.names.set(e,n)}},t.insertRules=function(e,t,n){this.registerName(e,t),this.getTag().insertRules(B(e),n)},t.clearNames=function(e){this.names.has(e)&&this.names.get(e).clear()},t.clearRules=function(e){this.getTag().clearGroup(B(e)),this.clearNames(e)},t.clearTag=function(){this.tag=void 0},t.toString=function(){return function(e){for(var t=e.getTag(),n=t.length,r=\"\",o=0;o<n;o++){var s=z(o);if(void 0!==s){var i=e.names.get(s),a=t.getGroup(o);if(i&&a&&i.size){var c=A+\".g\"+o+'[id=\"'+s+'\"]',u=\"\";void 0!==i&&i.forEach((function(e){e.length>0&&(u+=e+\",\")})),r+=\"\"+a+c+'{content:\"'+u+'\"}/*!sc*/\\n'}}}return r}(this)},e}(),K=/(a)(d)/gi,Q=function(e){return String.fromCharCode(e+(e>25?39:97))};function ee(e){var t,n=\"\";for(t=Math.abs(e);t>52;t=t/52|0)n=Q(t%52)+n;return(Q(t%52)+n).replace(K,\"$1-$2\")}var te=function(e,t){for(var n=t.length;n;)e=33*e^t.charCodeAt(--n);return e},ne=function(e){return te(5381,e)};function re(e){for(var t=0;t<e.length;t+=1){var n=e[t];if(b(n)&&!N(n))return!1}return!0}var oe=ne(\"5.3.10\"),se=function(){function e(e,t,n){this.rules=e,this.staticRulesId=\"\",this.isStatic=\"production\"===process.env.NODE_ENV&&(void 0===n||n.isStatic)&&re(e),this.componentId=t,this.baseHash=te(oe,t),this.baseStyle=n,Z.registerId(t)}return e.prototype.generateAndInjectStyles=function(e,t,n){var r=this.componentId,o=[];if(this.baseStyle&&o.push(this.baseStyle.generateAndInjectStyles(e,t,n)),this.isStatic&&!n.hash)if(this.staticRulesId&&t.hasNameForId(r,this.staticRulesId))o.push(this.staticRulesId);else{var s=Ne(this.rules,e,t,n).join(\"\"),i=ee(te(this.baseHash,s)>>>0);if(!t.hasNameForId(r,i)){var a=n(s,\".\"+i,void 0,r);t.insertRules(r,i,a)}o.push(i),this.staticRulesId=i}else{for(var c=this.rules.length,u=te(this.baseHash,n.hash),l=\"\",d=0;d<c;d++){var h=this.rules[d];if(\"string\"==typeof h)l+=h,\"production\"!==process.env.NODE_ENV&&(u=te(u,h+d));else if(h){var p=Ne(h,e,t,n),f=Array.isArray(p)?p.join(\"\"):p;u=te(u,f+d),l+=f}}if(l){var m=ee(u>>>0);if(!t.hasNameForId(r,m)){var y=n(l,\".\"+m,void 0,r);t.insertRules(r,m,y)}o.push(m)}}return o.join(\" \")},e}(),ie=/^\\s*\\/\\/.*$/gm,ae=[\":\",\"[\",\".\",\"#\"];function ce(e){var t,n,r,o,s=void 0===e?E:e,i=s.options,a=void 0===i?E:i,c=s.plugins,u=void 0===c?w:c,l=new p(a),d=[],h=function(e){function t(t){if(t)try{e(t+\"}\")}catch(e){}}return function(n,r,o,s,i,a,c,u,l,d){switch(n){case 1:if(0===l&&64===r.charCodeAt(0))return e(r+\";\"),\"\";break;case 2:if(0===u)return r+\"/*|*/\";break;case 3:switch(u){case 102:case 112:return e(o[0]+r),\"\";default:return r+(0===d?\"/*|*/\":\"\")}case-2:r.split(\"/*|*/}\").forEach(t)}}}((function(e){d.push(e)})),f=function(e,r,s){return 0===r&&-1!==ae.indexOf(s[n.length])||s.match(o)?e:\".\"+t};function m(e,s,i,a){void 0===a&&(a=\"&\");var c=e.replace(ie,\"\"),u=s&&i?i+\" \"+s+\" { \"+c+\" }\":c;return t=a,n=s,r=new RegExp(\"\\\\\"+n+\"\\\\b\",\"g\"),o=new RegExp(\"(\\\\\"+n+\"\\\\b){2,}\"),l(i||!s?\"\":s,u)}return l.use([].concat(u,[function(e,t,o){2===e&&o.length&&o[0].lastIndexOf(n)>0&&(o[0]=o[0].replace(r,f))},h,function(e){if(-2===e){var t=d;return d=[],t}}])),m.hash=u.length?u.reduce((function(e,t){return t.name||j(15),te(e,t.name)}),5381).toString():\"\",m}var ue=r.createContext(),le=ue.Consumer,de=r.createContext(),he=(de.Consumer,new Z),pe=ce();function fe(){return s(ue)||he}function me(){return s(de)||pe}function ye(e){var t=o(e.stylisPlugins),n=t[0],s=t[1],c=fe(),u=i((function(){var t=c;return e.sheet?t=e.sheet:e.target&&(t=t.reconstructWithOptions({target:e.target},!1)),e.disableCSSOMInjection&&(t=t.reconstructWithOptions({useCSSOMInjection:!1})),t}),[e.disableCSSOMInjection,e.sheet,e.target]),l=i((function(){return ce({options:{prefix:!e.disableVendorPrefixes},plugins:n})}),[e.disableVendorPrefixes,n]);return a((function(){h(n,e.stylisPlugins)||s(e.stylisPlugins)}),[e.stylisPlugins]),r.createElement(ue.Provider,{value:u},r.createElement(de.Provider,{value:l},\"production\"!==process.env.NODE_ENV?r.Children.only(e.children):e.children))}var ve=function(){function e(e,t){var n=this;this.inject=function(e,t){void 0===t&&(t=pe);var r=n.name+t.hash;e.hasNameForId(n.id,r)||e.insertRules(n.id,r,t(n.rules,r,\"@keyframes\"))},this.toString=function(){return j(12,String(n.name))},this.name=e,this.id=\"sc-keyframes-\"+e,this.rules=t}return e.prototype.getName=function(e){return void 0===e&&(e=pe),this.name+e.hash},e}(),ge=/([A-Z])/,Se=/([A-Z])/g,we=/^ms-/,Ee=function(e){return\"-\"+e.toLowerCase()};function be(e){return ge.test(e)?e.replace(Se,Ee).replace(we,\"-ms-\"):e}var _e=function(e){return null==e||!1===e||\"\"===e};function Ne(e,n,r,o){if(Array.isArray(e)){for(var s,i=[],a=0,c=e.length;a<c;a+=1)\"\"!==(s=Ne(e[a],n,r,o))&&(Array.isArray(s)?i.push.apply(i,s):i.push(s));return i}if(_e(e))return\"\";if(N(e))return\".\"+e.styledComponentId;if(b(e)){if(\"function\"!=typeof(l=e)||l.prototype&&l.prototype.isReactComponent||!n)return e;var u=e(n);return\"production\"!==process.env.NODE_ENV&&t(u)&&console.warn(_(e)+\" is not a styled component and cannot be referred to via component selector. See https://www.styled-components.com/docs/advanced#referring-to-other-components for more details.\"),Ne(u,n,r,o)}var l;return e instanceof ve?r?(e.inject(r,o),e.getName(o)):e:S(e)?function e(t,n){var r,o,s=[];for(var i in t)t.hasOwnProperty(i)&&!_e(t[i])&&(Array.isArray(t[i])&&t[i].isCss||b(t[i])?s.push(be(i)+\":\",t[i],\";\"):S(t[i])?s.push.apply(s,e(t[i],i)):s.push(be(i)+\": \"+(r=i,null==(o=t[i])||\"boolean\"==typeof o||\"\"===o?\"\":\"number\"!=typeof o||0===o||r in f||r.startsWith(\"--\")?String(o).trim():o+\"px\")+\";\"));return n?[n+\" {\"].concat(s,[\"}\"]):s}(e):e.toString()}var Ae=function(e){return Array.isArray(e)&&(e.isCss=!0),e};function Ce(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];return b(e)||S(e)?Ae(Ne(g(w,[e].concat(n)))):0===n.length&&1===e.length&&\"string\"==typeof e[0]?e:Ae(Ne(g(e,n)))}var Ie=/invalid hook call/i,Pe=new Set,Oe=function(e,t){if(\"production\"!==process.env.NODE_ENV){var n=\"The component \"+e+(t?' with the id of \"'+t+'\"':\"\")+\" has been created dynamically.\\nYou may see this warning because you've called styled inside another component.\\nTo resolve this only create new StyledComponents outside of any render method and function component.\",r=console.error;try{var o=!0;console.error=function(e){if(Ie.test(e))o=!1,Pe.delete(n);else{for(var t=arguments.length,s=new Array(t>1?t-1:0),i=1;i<t;i++)s[i-1]=arguments[i];r.apply(void 0,[e].concat(s))}},c(),o&&!Pe.has(n)&&(console.warn(n),Pe.add(n))}catch(e){Ie.test(e.message)&&Pe.delete(n)}finally{console.error=r}}},Re=function(e,t,n){return void 0===n&&(n=E),e.theme!==n.theme&&e.theme||t||n.theme},De=/[!\"#$%&'()*+,./:;<=>?@[\\\\\\]^`{|}~-]+/g,je=/(^-|-$)/g;function Te(e){return e.replace(De,\"-\").replace(je,\"\")}var xe=function(e){return ee(ne(e)>>>0)};function ke(e){return\"string\"==typeof e&&(\"production\"===process.env.NODE_ENV||e.charAt(0)===e.charAt(0).toLowerCase())}var Ve=function(e){return\"function\"==typeof e||\"object\"==typeof e&&null!==e&&!Array.isArray(e)},Be=function(e){return\"__proto__\"!==e&&\"constructor\"!==e&&\"prototype\"!==e};function ze(e,t,n){var r=e[n];Ve(t)&&Ve(r)?Me(r,t):e[n]=t}function Me(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];for(var o=0,s=n;o<s.length;o++){var i=s[o];if(Ve(i))for(var a in i)Be(a)&&ze(e,i[a],a)}return e}var Ge=r.createContext(),Le=Ge.Consumer;function Fe(e){var t=s(Ge),n=i((function(){return function(e,t){if(!e)return j(14);if(b(e)){var n=e(t);return\"production\"===process.env.NODE_ENV||null!==n&&!Array.isArray(n)&&\"object\"==typeof n?n:j(7)}return Array.isArray(e)||\"object\"!=typeof e?j(8):t?v({},t,{},e):e}(e.theme,t)}),[e.theme,t]);return e.children?r.createElement(Ge.Provider,{value:n},e.children):null}var Ye={};function qe(e,t,n){var o=N(e),i=!ke(e),a=t.attrs,c=void 0===a?w:a,d=t.componentId,h=void 0===d?function(e,t){var n=\"string\"!=typeof e?\"sc\":Te(e);Ye[n]=(Ye[n]||0)+1;var r=n+\"-\"+xe(\"5.3.10\"+n+Ye[n]);return t?t+\"-\"+r:r}(t.displayName,t.parentComponentId):d,p=t.displayName,f=void 0===p?function(e){return ke(e)?\"styled.\"+e:\"Styled(\"+_(e)+\")\"}(e):p,g=t.displayName&&t.componentId?Te(t.displayName)+\"-\"+t.componentId:t.componentId||h,S=o&&e.attrs?Array.prototype.concat(e.attrs,c).filter(Boolean):c,A=t.shouldForwardProp;o&&e.shouldForwardProp&&(A=t.shouldForwardProp?function(n,r,o){return e.shouldForwardProp(n,r,o)&&t.shouldForwardProp(n,r,o)}:e.shouldForwardProp);var C,I=new se(n,g,o?e.componentStyle:void 0),P=I.isStatic&&0===c.length,O=function(e,t){return function(e,t,n,r){var o=e.attrs,i=e.componentStyle,a=e.defaultProps,c=e.foldedComponentIds,d=e.shouldForwardProp,h=e.styledComponentId,p=e.target;\"production\"!==process.env.NODE_ENV&&l(h);var f=function(e,t,n){void 0===e&&(e=E);var r=v({},t,{theme:e}),o={};return n.forEach((function(e){var t,n,s,i=e;for(t in b(i)&&(i=i(r)),i)r[t]=o[t]=\"className\"===t?(n=o[t],s=i[t],n&&s?n+\" \"+s:n||s):i[t]})),[r,o]}(Re(t,s(Ge),a)||E,t,o),y=f[0],g=f[1],S=function(e,t,n,r){var o=fe(),s=me(),i=t?e.generateAndInjectStyles(E,o,s):e.generateAndInjectStyles(n,o,s);return\"production\"!==process.env.NODE_ENV&&l(i),\"production\"!==process.env.NODE_ENV&&!t&&r&&r(i),i}(i,r,y,\"production\"!==process.env.NODE_ENV?e.warnTooManyClasses:void 0),w=n,_=g.$as||t.$as||g.as||t.as||p,N=ke(_),A=g!==t?v({},t,{},g):t,C={};for(var I in A)\"$\"!==I[0]&&\"as\"!==I&&(\"forwardedAs\"===I?C.as=A[I]:(d?d(I,m,_):!N||m(I))&&(C[I]=A[I]));return t.style&&g.style!==t.style&&(C.style=v({},t.style,{},g.style)),C.className=Array.prototype.concat(c,h,S!==h?S:null,t.className,g.className).filter(Boolean).join(\" \"),C.ref=w,u(_,C)}(C,e,t,P)};return O.displayName=f,(C=r.forwardRef(O)).attrs=S,C.componentStyle=I,C.displayName=f,C.shouldForwardProp=A,C.foldedComponentIds=o?Array.prototype.concat(e.foldedComponentIds,e.styledComponentId):w,C.styledComponentId=g,C.target=o?e.target:e,C.withComponent=function(e){var r=t.componentId,o=function(e,t){if(null==e)return{};var n,r,o={},s=Object.keys(e);for(r=0;r<s.length;r++)n=s[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(t,[\"componentId\"]),s=r&&r+\"-\"+(ke(e)?e:Te(_(e)));return qe(e,v({},o,{attrs:S,componentId:s}),n)},Object.defineProperty(C,\"defaultProps\",{get:function(){return this._foldedDefaultProps},set:function(t){this._foldedDefaultProps=o?Me({},e.defaultProps,t):t}}),\"production\"!==process.env.NODE_ENV&&(Oe(f,g),C.warnTooManyClasses=function(e,t){var n={},r=!1;return function(o){if(!r&&(n[o]=!0,Object.keys(n).length>=200)){var s=t?' with the id of \"'+t+'\"':\"\";console.warn(\"Over 200 classes were generated for component \"+e+s+\".\\nConsider using the attrs method, together with a style object for frequently changed styles.\\nExample:\\n const Component = styled.div.attrs(props => ({\\n style: {\\n background: props.background,\\n },\\n }))`width: 100%;`\\n\\n <Component />\"),r=!0,n={}}}}(f,g)),Object.defineProperty(C,\"toString\",{value:function(){return\".\"+C.styledComponentId}}),i&&y(C,e,{attrs:!0,componentStyle:!0,displayName:!0,foldedComponentIds:!0,shouldForwardProp:!0,styledComponentId:!0,target:!0,withComponent:!0}),C}var He=function(e){return function e(t,r,o){if(void 0===o&&(o=E),!n(r))return j(1,String(r));var s=function(){return t(r,o,Ce.apply(void 0,arguments))};return s.withConfig=function(n){return e(t,r,v({},o,{},n))},s.attrs=function(n){return e(t,r,v({},o,{attrs:Array.prototype.concat(o.attrs,n).filter(Boolean)}))},s}(qe,e)};[\"a\",\"abbr\",\"address\",\"area\",\"article\",\"aside\",\"audio\",\"b\",\"base\",\"bdi\",\"bdo\",\"big\",\"blockquote\",\"body\",\"br\",\"button\",\"canvas\",\"caption\",\"cite\",\"code\",\"col\",\"colgroup\",\"data\",\"datalist\",\"dd\",\"del\",\"details\",\"dfn\",\"dialog\",\"div\",\"dl\",\"dt\",\"em\",\"embed\",\"fieldset\",\"figcaption\",\"figure\",\"footer\",\"form\",\"h1\",\"h2\",\"h3\",\"h4\",\"h5\",\"h6\",\"head\",\"header\",\"hgroup\",\"hr\",\"html\",\"i\",\"iframe\",\"img\",\"input\",\"ins\",\"kbd\",\"keygen\",\"label\",\"legend\",\"li\",\"link\",\"main\",\"map\",\"mark\",\"marquee\",\"menu\",\"menuitem\",\"meta\",\"meter\",\"nav\",\"noscript\",\"object\",\"ol\",\"optgroup\",\"option\",\"output\",\"p\",\"param\",\"picture\",\"pre\",\"progress\",\"q\",\"rp\",\"rt\",\"ruby\",\"s\",\"samp\",\"script\",\"section\",\"select\",\"small\",\"source\",\"span\",\"strong\",\"style\",\"sub\",\"summary\",\"sup\",\"table\",\"tbody\",\"td\",\"textarea\",\"tfoot\",\"th\",\"thead\",\"time\",\"title\",\"tr\",\"track\",\"u\",\"ul\",\"var\",\"video\",\"wbr\",\"circle\",\"clipPath\",\"defs\",\"ellipse\",\"foreignObject\",\"g\",\"image\",\"line\",\"linearGradient\",\"marker\",\"mask\",\"path\",\"pattern\",\"polygon\",\"polyline\",\"radialGradient\",\"rect\",\"stop\",\"svg\",\"text\",\"textPath\",\"tspan\"].forEach((function(e){He[e]=He(e)}));var $e=function(){function e(e,t){this.rules=e,this.componentId=t,this.isStatic=re(e),Z.registerId(this.componentId+1)}var t=e.prototype;return t.createStyles=function(e,t,n,r){var o=r(Ne(this.rules,t,n,r).join(\"\"),\"\"),s=this.componentId+e;n.insertRules(s,s,o)},t.removeStyles=function(e,t){t.clearRules(this.componentId+e)},t.renderStyles=function(e,t,n,r){e>2&&Z.registerId(this.componentId+e),this.removeStyles(e,n),this.createStyles(e,t,n,r)},e}();function We(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),o=1;o<t;o++)n[o-1]=arguments[o];var i=Ce.apply(void 0,[e].concat(n)),a=\"sc-global-\"+xe(JSON.stringify(i)),u=new $e(i,a);function l(e){var t=fe(),n=me(),o=s(Ge),l=c(t.allocateGSInstance(a)).current;return\"production\"!==process.env.NODE_ENV&&r.Children.count(e.children)&&console.warn(\"The global style component \"+a+\" was given child JSX. createGlobalStyle does not render children.\"),\"production\"!==process.env.NODE_ENV&&i.some((function(e){return\"string\"==typeof e&&-1!==e.indexOf(\"@import\")}))&&console.warn(\"Please do not use @import CSS syntax in createGlobalStyle at this time, as the CSSOM APIs we use in production do not handle it well. Instead, we recommend using a library such as react-helmet to inject a typical <link> meta tag to the stylesheet, or simply embedding it manually in your index.html <head> section for a simpler app.\"),t.server&&h(l,e,t,o,n),d((function(){if(!t.server)return h(l,e,t,o,n),function(){return u.removeStyles(l,t)}}),[l,e,t,o,n]),null}function h(e,t,n,r,o){if(u.isStatic)u.renderStyles(e,O,n,o);else{var s=v({},t,{theme:Re(t,r,l.defaultProps)});u.renderStyles(e,s,n,o)}}return\"production\"!==process.env.NODE_ENV&&Oe(a),r.memo(l)}function Ue(e){\"production\"!==process.env.NODE_ENV&&\"undefined\"!=typeof navigator&&\"ReactNative\"===navigator.product&&console.warn(\"`keyframes` cannot be used on ReactNative, only on the web. To do animation in ReactNative please use Animated.\");for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];var o=Ce.apply(void 0,[e].concat(n)).join(\"\"),s=xe(o);return new ve(s,o)}var Je=function(){function e(){var e=this;this._emitSheetCSS=function(){var t=e.instance.toString();if(!t)return\"\";var n=q();return\"<style \"+[n&&'nonce=\"'+n+'\"',A+'=\"true\"','data-styled-version=\"5.3.10\"'].filter(Boolean).join(\" \")+\">\"+t+\"</style>\"},this.getStyleTags=function(){return e.sealed?j(2):e._emitSheetCSS()},this.getStyleElement=function(){var t;if(e.sealed)return j(2);var n=((t={})[A]=\"\",t[\"data-styled-version\"]=\"5.3.10\",t.dangerouslySetInnerHTML={__html:e.instance.toString()},t),o=q();return o&&(n.nonce=o),[r.createElement(\"style\",v({},n,{key:\"sc-0-0\"}))]},this.seal=function(){e.sealed=!0},this.instance=new Z({isServer:!0}),this.sealed=!1}var t=e.prototype;return t.collectStyles=function(e){return this.sealed?j(2):r.createElement(ye,{sheet:this.instance},e)},t.interleaveWithNodeStream=function(e){return j(3)},e}(),Xe=function(e){var t=r.forwardRef((function(t,n){var o=s(Ge),i=e.defaultProps,a=Re(t,o,i);return\"production\"!==process.env.NODE_ENV&&void 0===a&&console.warn('[withTheme] You are not using a ThemeProvider nor passing a theme prop or a theme in defaultProps in component class \"'+_(e)+'\"'),r.createElement(e,v({},t,{theme:a,ref:n}))}));return y(t,e),t.displayName=\"WithTheme(\"+_(e)+\")\",t},Ze=function(){return s(Ge)},Ke={StyleSheet:Z,masterSheet:he};\"production\"!==process.env.NODE_ENV&&\"undefined\"!=typeof navigator&&\"ReactNative\"===navigator.product&&console.warn(\"It looks like you've imported 'styled-components' on React Native.\\nPerhaps you're looking to import 'styled-components/native'?\\nRead more about this at https://www.styled-components.com/docs/basics#react-native\"),\"production\"!==process.env.NODE_ENV&&\"test\"!==process.env.NODE_ENV&&\"undefined\"!=typeof window&&(window[\"__styled-components-init__\"]=window[\"__styled-components-init__\"]||0,1===window[\"__styled-components-init__\"]&&console.warn(\"It looks like there are several instances of 'styled-components' initialized in this application. This may cause dynamic styles to not render properly, errors during the rehydration process, a missing theme prop, and makes your application bigger without good reason.\\n\\nSee https://s-c.sh/2BAXzed for more info.\"),window[\"__styled-components-init__\"]+=1);export default He;export{Je as ServerStyleSheet,le as StyleSheetConsumer,ue as StyleSheetContext,ye as StyleSheetManager,Le as ThemeConsumer,Ge as ThemeContext,Fe as ThemeProvider,Ke as __PRIVATE__,We as createGlobalStyle,Ce as css,N as isStyledComponent,Ue as keyframes,Ze as useTheme,C as version,Xe as withTheme};\n//# sourceMappingURL=styled-components.browser.esm.js.map\n","/* eslint-disable no-console */\nvar DEV = process.env.NODE_ENV !== 'production';\n/**\r\n * Identity function.\r\n * @param x\r\n */\n\nvar identity = function identity(x) {\n return x;\n};\n/**\r\n * Check if a value is not null and not undefined.\r\n * @param n\r\n */\n\nvar is = function is(n) {\n return n !== undefined && n !== null;\n};\n/**\r\n * Check if a value is a number.\r\n * @param n\r\n */\n\nvar num = function num(n) {\n return typeof n === 'number' && !Number.isNaN(n);\n};\n/**\r\n * Check if a value is a string.\r\n * @param n\r\n */\n\nvar string = function string(n) {\n return typeof n === 'string' && n !== '';\n};\n/**\r\n * Check if a value is an object.\r\n * @param n\r\n */\n\nvar obj = function obj(n) {\n return typeof n === 'object' && n !== null;\n};\n/**\r\n * Check if a value is a function.\r\n * @param n\r\n */\n\nvar func = function func(n) {\n return typeof n === 'function';\n};\n/**\r\n * Check if a value is a negative number.\r\n * @param n\r\n */\n\nvar negative = function negative(n) {\n return num(n) && n < 0;\n};\n/**\r\n * Get a value from an object or an array.\r\n * @param from\r\n * @param path\r\n */\n\nvar get = function get(from, path) {\n var paths = String(path).split('.');\n var pathsLength = paths.length;\n var result = from;\n\n for (var i = 0; i < pathsLength; i += 1) {\n if (result === undefined) return result;\n var _path = paths[i];\n result = is(result[_path]) ? result[_path] : undefined;\n }\n\n return result;\n};\n/**\r\n * Assign object into another\r\n * @param a\r\n * @param b\r\n */\n\nvar assign = function assign(a, b) {\n // @ts-ignore\n if (!is(b)) return a; // eslint-disable-next-line no-restricted-syntax, guard-for-in\n\n for (var key in b) {\n // @ts-ignore\n a[key] = b[key];\n } // @ts-ignore\n\n\n return a;\n};\n/**\r\n * Merge deeply one object into another.\r\n * @param a\r\n * @param b\r\n */\n\nvar merge = function merge(a, b) {\n // @ts-ignore\n if (!is(b)) return a; // eslint-disable-next-line no-restricted-syntax\n\n for (var key in b) {\n // eslint-disable-next-line no-continue\n // @ts-ignore\n if (obj(a[key])) {\n // @ts-ignore\n a[key] = merge(assign({}, a[key]), b[key]);\n } else {\n // @ts-ignore\n a[key] = b[key];\n }\n } // @ts-ignore\n\n\n return a;\n};\n/**\r\n * Warn if a condition is not met.\r\n * @param condition\r\n * @param message\r\n */\n\nvar warn = function warn(condition, message) {\n if (DEV) {\n if (!condition && console.error) {\n console.error(message);\n }\n }\n};\n/**\r\n * Recursively call a function until getting something that is not a function.\r\n * @param value\r\n * @param arg\r\n */\n\nfunction cascade(value, arg) {\n if (typeof value === 'function') {\n return cascade(value(arg), arg);\n }\n\n return value;\n}\n/**\r\n * Get value from theme.\r\n * @param props\r\n * @param path\r\n * @param initial\r\n */\n\nvar getThemeValue = function getThemeValue(props, path, initial) {\n if (initial === void 0) {\n initial = props.theme;\n }\n\n return cascade(get(initial, path), props);\n};\n/**\r\n * Omit values from an object.\r\n * @param object\r\n * @param values\r\n */\n\nfunction omit(object, values) {\n var result = {}; // eslint-disable-next-line no-restricted-syntax\n\n for (var key in object) {\n if (values.indexOf(key) === -1) {\n result[key] = object[key];\n }\n }\n\n return result;\n}\n/* eslint-disable no-continue, no-loop-func, no-cond-assign */\n\n/**\r\n * Flatten every string together in an array.\r\n * @param array\r\n */\n\nfunction flattenStrings(array) {\n return array.reduce(function (flattenedArray, value) {\n var lastIndex = flattenedArray.length - 1;\n var last = flattenedArray[lastIndex];\n\n if (typeof last === 'string' && typeof value === 'string') {\n flattenedArray[lastIndex] = last + value;\n } else {\n flattenedArray.push(value);\n }\n\n return flattenedArray;\n }, []);\n}\n\nfunction flattenDown(array, result) {\n for (var i = 0; i < array.length; i++) {\n var value = array[i];\n\n if (Array.isArray(value)) {\n flattenDown(value, result);\n } else {\n result.push(value);\n }\n }\n\n return result;\n}\n/**\r\n * Flatten an array.\r\n * @param array\r\n */\n\n\nfunction flatten(array) {\n return flattenDown(array, []);\n}\n\nexport { assign, cascade, flatten, flattenStrings, func, get, getThemeValue, identity, is, merge, negative, num, obj, omit, string, warn };\n//# sourceMappingURL=util.esm.js.map\n","import { num, string, getThemeValue, is, negative, warn, merge, assign, func, obj, identity, cascade } from '@xstyled/util';\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction _taggedTemplateLiteralLoose(strings, raw) {\n if (!raw) {\n raw = strings.slice(0);\n }\n\n strings.raw = raw;\n return strings;\n}\n\nvar round = function round(value) {\n return Math.round(value * Math.pow(10, 4)) / Math.pow(10, 4);\n};\n\nvar unit = function unit(_unit) {\n return function (value) {\n return num(value) && value !== 0 ? \"\" + value + _unit : value;\n };\n};\nvar ms = /*#__PURE__*/unit('ms');\nvar px = /*#__PURE__*/unit('px');\nvar deg = /*#__PURE__*/unit('deg');\n\nvar pxToRem = function pxToRem(value, _temp) {\n var _ref = _temp === void 0 ? {} : _temp,\n _ref$rootFontSize = _ref.rootFontSize,\n rootFontSize = _ref$rootFontSize === void 0 ? 16 : _ref$rootFontSize;\n\n return round(value / rootFontSize);\n};\n\nvar remPx = function remPx(value, options) {\n return num(value) && value !== 0 ? pxToRem(value, options) + \"rem\" : value;\n};\nvar rpx = function rpx(value, options) {\n if (!string(value) || value.length < 4) return value;\n var unit = value.slice(-3);\n if (unit !== 'rpx') return value;\n var n = Number(value.slice(0, value.length - 3));\n if (n === 0) return 0;\n return pxToRem(n, options) + \"rem\";\n};\nvar percent = function percent(n) {\n return num(n) && n !== 0 && n >= -1 && n <= 1 ? round(n * 100) + \"%\" : n;\n};\n\nfunction toNegative(value) {\n if (string(value)) return \"-\" + value;\n return value * -1;\n}\n\nvar transformNegative = function transformNegative(_, _ref2) {\n var rawValue = _ref2.rawValue,\n variants = _ref2.variants,\n props = _ref2.props;\n\n if (string(rawValue)) {\n var _neg = rawValue.startsWith('-');\n\n var absoluteValue = _neg ? rawValue.substr(1) : rawValue;\n var variantValue = getThemeValue(props, absoluteValue, variants);\n\n var _value = is(variantValue) ? variantValue : absoluteValue;\n\n return _neg ? toNegative(_value) : _value;\n }\n\n var abs = Math.abs(rawValue);\n var neg = negative(rawValue);\n var value = is(variants && variants[abs]) ? variants[abs] : abs;\n return neg ? toNegative(value) : value;\n};\n\nfunction getBreakpoints(props) {\n var themeBreakpoints = getThemeValue(props, 'screens');\n if (is(themeBreakpoints)) return themeBreakpoints;\n return {};\n}\nvar mediaMinWidth = function mediaMinWidth(value) {\n return value ? \"@media (min-width: \" + value + \")\" : null;\n};\nvar mediaMaxWidth = function mediaMaxWidth(value) {\n return value ? \"@media (max-width: \" + value + \")\" : null;\n};\nvar mediaBetweenWidth = function mediaBetweenWidth(min, max) {\n return min && max ? \"@media (min-width: \" + min + \") and (max-width: \" + max + \")\" : null;\n};\n/**\r\n * Minimum breakpoint width.\r\n * Null for the smallest breakpoint.\r\n */\n\nvar getBreakpointMin = function getBreakpointMin(breakpoints, key) {\n var value = breakpoints[key];\n return value === 0 ? null : px(value);\n};\n/**\r\n * Maximum breakpoint width. Null for the largest (last) breakpoint.\r\n * The maximum value is calculated as the minimum of the next one less 0.02px\r\n * to work around the limitations of `min-` and `max-` prefixes and viewports with fractional widths.\r\n * See https://www.w3.org/TR/mediaqueries-4/#mq-min-max\r\n * Uses 0.02px rather than 0.01px to work around a current rounding bug in Safari.\r\n * See https://bugs.webkit.org/show_bug.cgi?id=178261\r\n */\n\nvar getBreakpointMax = function getBreakpointMax(breakpoints, key) {\n var breakPoint = breakpoints[key];\n return breakPoint === 0 ? null : px(breakPoint - 0.02);\n};\n\nvar defaultStates = {\n motionSafe: '@media (prefers-reduced-motion: no-preference)',\n motionReduce: '@media (prefers-reduced-motion: reduce)',\n first: '&:first-child',\n last: '&:last-child',\n odd: '&:odd',\n even: '&:even',\n visited: '&:visited',\n checked: '&:checked',\n focusWithin: '&:focus-within',\n hover: '&:hover',\n focus: '&:focus',\n focusVisible: '&:focus-visible',\n active: '&:active',\n disabled: '&:disabled',\n placeholder: '&::placeholder'\n};\n\nvar defaultStateKeys = /*#__PURE__*/Object.keys(defaultStates);\nvar cacheSupported = typeof Map !== 'undefined' && typeof WeakMap !== 'undefined';\nvar caches = cacheSupported ? /*#__PURE__*/new WeakMap() : null;\n\nfunction getThemeCache(theme) {\n if (caches === null) return null;\n if (caches.has(theme)) return caches.get(theme);\n var cache = {};\n caches.set(theme, cache);\n return cache;\n}\n\nvar noopCache = {\n has: function has() {\n return false;\n },\n set: function set() {},\n get: function get() {}\n};\n\nfunction getCacheNamespace(theme, namespace) {\n if (!theme) return noopCache;\n var cache = getThemeCache(theme);\n if (!cache || !theme) return noopCache;\n cache[namespace] = cache[namespace] || new Map();\n return cache[namespace];\n}\n\nvar themeGetterId = 0;\nvar SPACES = /\\s+/;\nvar themeGetter = function themeGetter(_ref) {\n var name = _ref.name,\n defaultTransform = _ref.transform,\n key = _ref.key,\n defaultVariants = _ref.defaultVariants,\n compose = _ref.compose,\n shorthand = _ref.shorthand;\n var id = themeGetterId++;\n\n var getter = function getter(value, defaultValue) {\n return function (props) {\n var res = value;\n if (!string(value) && !num(value) && value !== true) return res;\n var cacheKey = value + \"-\" + defaultValue;\n var cache = getCacheNamespace(props.theme, \"__themeGetter\" + id);\n if (cache.has(cacheKey)) return cache.get(cacheKey);\n\n var getValue = function getValue(value) {\n var localDefaultValue = is(defaultValue) ? defaultValue : value;\n var res = value;\n var variants = is(key) ? getThemeValue(props, key) : null;\n variants = is(variants) ? variants : defaultVariants;\n\n if (is(variants)) {\n // @ts-ignore\n res = getThemeValue(props, value === true ? 'default' : value, variants);\n res = Array.isArray(res) ? res.join(',') : res;\n }\n\n var rawValue = value;\n\n if (!is(res)) {\n rawValue = localDefaultValue;\n res = localDefaultValue;\n }\n\n var transform = (name && props.theme && props.theme.transformers ? props.theme.transformers[name] : null) || defaultTransform;\n\n if (transform) {\n res = transform(res, {\n rawValue: rawValue,\n variants: variants,\n props: props\n });\n }\n\n return compose ? compose(res)(props) : res;\n };\n\n if (shorthand && string(value)) {\n var values = value.split(SPACES); // @ts-ignore\n\n res = values.map(function (value) {\n return getValue(value);\n }).join(' ');\n } else {\n res = getValue(value);\n }\n\n cache.set(cacheKey, res);\n return res;\n };\n };\n\n getter.meta = {\n name: name,\n transform: defaultTransform\n };\n return getter;\n};\nfunction createStyleGenerator(getStyle, props, generators) {\n var generator = getStyle;\n generator.meta = {\n props: props,\n getStyle: generator,\n generators: generators\n };\n\n generator.apply = function (values) {\n return function (_ref2) {\n var theme = _ref2.theme;\n return generator(_extends({\n theme: theme\n }, values));\n };\n };\n\n return generator;\n}\n\nfunction getMedias(props) {\n var breakpoints = getBreakpoints(props);\n var medias = {};\n\n for (var breakpoint in breakpoints) {\n medias[breakpoint] = mediaMinWidth(getBreakpointMin(breakpoints, breakpoint));\n }\n\n return medias;\n}\n\nfunction getCachedMedias(props, cache) {\n if (cache.has('_medias')) {\n return cache.get('_medias');\n }\n\n var medias = getMedias(props);\n cache.set('_medias', medias);\n return medias;\n}\n\nfunction reduceBreakpoints(props, values, getStyle, cache) {\n if (getStyle === void 0) {\n getStyle = identity;\n }\n\n var medias = cache ? getCachedMedias(props, cache) : getMedias(props);\n var styles = {};\n\n for (var breakpoint in values) {\n var _style = getStyle(values[breakpoint]);\n\n if (_style === null) continue;\n var media = medias[breakpoint];\n\n if (media === null) {\n styles = merge(styles, _style);\n } else {\n styles[media] = styles[media] ? assign(styles[media], _style) : _style;\n }\n }\n\n return styles;\n}\n\nfunction styleFromValue(mixin, value, props, themeGet, cache) {\n if (obj(value)) return null;\n if (cache.has(value)) return cache.get(value);\n var computedValue = themeGet(value)(props);\n var style = cascade(mixin(computedValue), props);\n cache.set(value, style);\n return style;\n}\n\nfunction getStyleFactory(prop, mixin, themeGet) {\n return function getStyle(props) {\n var value = props[prop];\n if (!is(value)) return null;\n var cache = getCacheNamespace(props.theme, prop);\n\n if (obj(value)) {\n return reduceBreakpoints(props, value, function (breakpointValue) {\n return styleFromValue(mixin, breakpointValue, props, themeGet, cache);\n }, cache);\n }\n\n return styleFromValue(mixin, value, props, themeGet, cache);\n };\n}\n\nfunction scopeStyleGetter(selector, getStyle) {\n return function (props) {\n var _ref3;\n\n var result = getStyle(props);\n if (result === null) return result;\n return _ref3 = {}, _ref3[selector] = result, _ref3;\n };\n}\n\nfunction indexGeneratorsByProp(styles) {\n var index = {};\n\n for (var i = 0; i < styles.length; i++) {\n var _style2 = styles[i];\n\n if (_style2 && _style2.meta) {\n for (var j = 0; j < _style2.meta.props.length; j++) {\n var prop = _style2.meta.props[j];\n index[prop] = _style2;\n }\n }\n }\n\n return index;\n}\n\nfunction sortStyles(styles, medias) {\n for (var key in medias) {\n var mediaValue = medias[key];\n var s = styles[mediaValue];\n if (!s) continue;\n delete styles[mediaValue];\n styles[mediaValue] = s;\n }\n\n return styles;\n}\n\nfunction compose() {\n var flatGenerators = [];\n\n for (var _len = arguments.length, generators = new Array(_len), _key = 0; _key < _len; _key++) {\n generators[_key] = arguments[_key];\n }\n\n generators.forEach(function (gen) {\n warn(Boolean(gen), \"Undefined generator in \\\"compose\\\" method\");\n if (!gen) return;\n\n if (gen.meta.generators) {\n flatGenerators = [].concat(flatGenerators, gen.meta.generators);\n } else {\n flatGenerators.push(gen);\n }\n });\n var generatorsByProp = indexGeneratorsByProp(flatGenerators);\n\n function getStyle(props, sort) {\n if (sort === void 0) {\n sort = true;\n }\n\n var styles = {};\n\n for (var key in props) {\n var generator = generatorsByProp[key];\n\n if (generator) {\n var _style3 = generator.meta.getStyle(props, false);\n\n merge(styles, _style3);\n }\n }\n\n if (!sort) return styles;\n var medias = getCachedMedias(props, getCacheNamespace(props.theme, '__medias'));\n return sortStyles(styles, medias);\n }\n\n var props = flatGenerators.reduce(function (allProps, generator) {\n return [].concat(allProps, generator.meta.props);\n }, []);\n return createStyleGenerator(getStyle, props, generators);\n}\n\nvar getMixinFromCSSProperties = function getMixinFromCSSProperties(properties) {\n return function (value) {\n var _ref4;\n\n if (!string(value) && !num(value)) return null;\n if (string(properties)) return _ref4 = {}, _ref4[properties] = value, _ref4;\n var style = {};\n\n for (var key in properties) {\n style[properties[key]] = value;\n }\n\n return style;\n };\n};\n\nvar getMixinFromCSSProperty = function getMixinFromCSSProperty(cssProperty) {\n if (func(cssProperty)) return cssProperty;\n return getMixinFromCSSProperties(cssProperty);\n};\n\nfunction style(_ref5) {\n var prop = _ref5.prop,\n cssProperty = _ref5.cssProperty,\n key = _ref5.key,\n transform = _ref5.transform,\n themeGet = _ref5.themeGet,\n _ref5$states = _ref5.states,\n states = _ref5$states === void 0 ? defaultStates : _ref5$states;\n\n if (Array.isArray(prop)) {\n var _mixin = cssProperty ? getMixinFromCSSProperty(cssProperty) : cssProperty;\n\n var _generators = prop.map(function (prop) {\n return style({\n prop: prop,\n cssProperty: _mixin,\n key: key,\n transform: transform,\n themeGet: themeGet\n });\n }); // @ts-ignore\n\n\n return compose.apply(void 0, _generators);\n }\n\n var mixin = getMixinFromCSSProperty(cssProperty || [prop]);\n themeGet = themeGet || themeGetter({\n key: key,\n transform: transform\n });\n var capitalizedProp = prop.charAt(0).toUpperCase() + prop.slice(1);\n var generators = [];\n var stateNames = states === defaultStates ? defaultStateKeys : Object.keys(states);\n\n for (var i = 0; i < stateNames.length; i++) {\n var stateName = stateNames[i];\n var stateProp = \"\" + stateName + capitalizedProp;\n\n var _getStyle = scopeStyleGetter(states[stateName], getStyleFactory(stateProp, mixin, themeGet));\n\n var _generator = createStyleGenerator(_getStyle, [stateProp]);\n\n generators.push(_generator);\n }\n\n var getStyle = getStyleFactory(prop, mixin, themeGet);\n var generator = createStyleGenerator(getStyle, [prop]);\n generators.push(generator); // @ts-ignore\n\n return compose.apply(void 0, generators);\n}\n\nvar getAnimation = /*#__PURE__*/themeGetter({\n name: 'animation',\n key: 'animations'\n});\nvar animation = /*#__PURE__*/style({\n prop: 'animation',\n themeGet: getAnimation\n});\nvar animations = /*#__PURE__*/compose(animation);\n\nvar getColor = /*#__PURE__*/themeGetter({\n name: 'color',\n key: 'colors'\n});\n\nvar gradientBackgrounds = {\n 'gradient-to-t': 'linear-gradient(to top, var(--x-gradient-stops))',\n 'gradient-to-tr': 'linear-gradient(to top right, var(--x-gradient-stops))',\n 'gradient-to-r': 'linear-gradient(to right, var(--x-gradient-stops))',\n 'gradient-to-br': 'linear-gradient(to bottom right, var(--x-gradient-stops))',\n 'gradient-to-b': 'linear-gradient(to bottom, var(--x-gradient-stops))',\n 'gradient-to-bl': 'linear-gradient(to bottom left, var(--x-gradient-stops))',\n 'gradient-to-l': 'linear-gradient(to left, var(--x-gradient-stops))',\n 'gradient-to-tl': 'linear-gradient(to top left, var(--x-gradient-stops))'\n};\nvar background = /*#__PURE__*/style({\n prop: 'background',\n cssProperty: function cssProperty(value) {\n return {\n background: gradientBackgrounds[value] || value\n };\n }\n});\nvar backgroundColor = /*#__PURE__*/style({\n prop: ['backgroundColor', 'bg'],\n cssProperty: 'backgroundColor',\n themeGet: getColor\n});\nvar backgroundImage = /*#__PURE__*/style({\n prop: 'backgroundImage',\n cssProperty: function cssProperty(value) {\n return {\n backgroundImage: gradientBackgrounds[value] || value\n };\n }\n});\nvar backgroundSize = /*#__PURE__*/style({\n prop: 'backgroundSize'\n});\nvar backgroundPosition = /*#__PURE__*/style({\n prop: 'backgroundPosition'\n});\nvar backgroundRepeat = /*#__PURE__*/style({\n prop: 'backgroundRepeat'\n});\nvar backgroundAttachment = /*#__PURE__*/style({\n prop: 'backgroundAttachment'\n});\nvar backgroundClip = /*#__PURE__*/style({\n prop: 'backgroundClip',\n cssProperty: ['backgroundClip', '-webkitBackgroundClip']\n});\nvar gradientFrom = /*#__PURE__*/style({\n prop: 'gradientFrom',\n themeGet: getColor,\n cssProperty: function cssProperty(value) {\n return {\n '--x-gradient-from': value,\n '--x-gradient-stops': 'var(--x-gradient-from), var(--x-gradient-to, transparent)'\n };\n }\n});\nvar gradientVia = /*#__PURE__*/style({\n prop: 'gradientVia',\n themeGet: getColor,\n cssProperty: function cssProperty(value) {\n return {\n '--x-gradient-stops': \"var(--x-gradient-from), \" + value + \", var(--x-gradient-to, transparent)\"\n };\n }\n});\nvar gradientTo = /*#__PURE__*/style({\n prop: 'gradientTo',\n themeGet: getColor,\n cssProperty: '--x-gradient-to'\n});\nvar backgrounds = /*#__PURE__*/compose(background, backgroundColor, backgroundImage, backgroundSize, backgroundPosition, backgroundRepeat, backgroundAttachment, backgroundClip, gradientFrom, gradientVia, gradientTo);\n\nvar getPx = /*#__PURE__*/themeGetter({\n name: 'px',\n transform: function transform(value, _ref) {\n var _props$theme$settings, _props$theme, _props$theme$settings2;\n\n var props = _ref.props;\n var rootFontSize = (_props$theme$settings = props == null ? void 0 : (_props$theme = props.theme) == null ? void 0 : (_props$theme$settings2 = _props$theme.settings) == null ? void 0 : _props$theme$settings2.rootFontSize) != null ? _props$theme$settings : undefined;\n var num = Number(value);\n return px(rpx(Number.isNaN(num) ? value : num, {\n rootFontSize: rootFontSize\n }));\n }\n});\nvar getDuration = /*#__PURE__*/themeGetter({\n name: 'duration',\n key: 'durations',\n transform: function transform(value) {\n var num = Number(value);\n return ms(Number.isNaN(num) ? value : num);\n }\n});\nvar getAngle = /*#__PURE__*/themeGetter({\n name: 'angle',\n transform: function transform(value) {\n var num = Number(value);\n return deg(Number.isNaN(num) ? value : num);\n }\n});\nvar getPercent = /*#__PURE__*/themeGetter({\n name: 'percent',\n transform: percent,\n compose: getPx\n});\n\nvar getBorder = /*#__PURE__*/themeGetter({\n name: 'border',\n key: 'borders',\n transform: function transform(n) {\n return num(n) && n > 0 ? px(n) + \" solid\" : n;\n }\n});\nvar getBorderWidth = /*#__PURE__*/themeGetter({\n name: 'borderWidth',\n key: 'borderWidths',\n compose: getPx,\n shorthand: true\n});\nvar getBorderColor = /*#__PURE__*/themeGetter({\n name: 'borderColor',\n compose: getColor,\n shorthand: true\n});\nvar getBorderStyle = /*#__PURE__*/themeGetter({\n name: 'borderStyle',\n key: 'borderStyles'\n});\nvar border = /*#__PURE__*/style({\n prop: 'border',\n themeGet: getBorder\n});\nvar borderTop = /*#__PURE__*/style({\n prop: 'borderTop',\n themeGet: getBorder\n});\nvar borderRight = /*#__PURE__*/style({\n prop: 'borderRight',\n themeGet: getBorder\n});\nvar borderBottom = /*#__PURE__*/style({\n prop: 'borderBottom',\n themeGet: getBorder\n});\nvar borderLeft = /*#__PURE__*/style({\n prop: 'borderLeft',\n themeGet: getBorder\n});\nvar borderColor = /*#__PURE__*/style({\n prop: 'borderColor',\n themeGet: getBorderColor\n});\nvar borderTopColor = /*#__PURE__*/style({\n prop: 'borderTopColor',\n themeGet: getBorderColor\n});\nvar borderRightColor = /*#__PURE__*/style({\n prop: 'borderRightColor',\n themeGet: getBorderColor\n});\nvar borderBottomColor = /*#__PURE__*/style({\n prop: 'borderBottomColor',\n themeGet: getBorderColor\n});\nvar borderLeftColor = /*#__PURE__*/style({\n prop: 'borderLeftColor',\n themeGet: getBorderColor\n});\nvar borderWidth = /*#__PURE__*/style({\n prop: 'borderWidth',\n themeGet: getBorderWidth\n});\nvar borderTopWidth = /*#__PURE__*/style({\n prop: 'borderTopWidth',\n themeGet: getBorderWidth\n});\nvar borderRightWidth = /*#__PURE__*/style({\n prop: 'borderRightWidth',\n themeGet: getBorderWidth\n});\nvar borderBottomWidth = /*#__PURE__*/style({\n prop: 'borderBottomWidth',\n themeGet: getBorderWidth\n});\nvar borderLeftWidth = /*#__PURE__*/style({\n prop: 'borderLeftWidth',\n themeGet: getBorderWidth\n});\nvar borderStyle = /*#__PURE__*/style({\n prop: 'borderStyle',\n themeGet: getBorderStyle\n});\nvar outline = /*#__PURE__*/style({\n prop: 'outline',\n themeGet: getBorder\n});\nvar outlineColor = /*#__PURE__*/style({\n prop: 'outlineColor',\n themeGet: getColor\n});\nvar outlineWidth = /*#__PURE__*/style({\n prop: 'outlineWidth',\n themeGet: getBorderWidth\n});\nvar outlineStyle = /*#__PURE__*/style({\n prop: 'outlineStyle',\n themeGet: getBorderStyle\n});\nvar getRadius = /*#__PURE__*/themeGetter({\n name: 'radius',\n key: 'radii',\n compose: getPx,\n shorthand: true\n});\nvar borderRadius = /*#__PURE__*/style({\n prop: 'borderRadius',\n themeGet: getRadius\n}); // Divide\n\nvar divideSelector = \"& > :not([hidden]) ~ :not([hidden])\";\nvar divideY = /*#__PURE__*/style({\n prop: 'divideY',\n themeGet: getBorderWidth,\n cssProperty: function cssProperty(value) {\n var _ref;\n\n var v = value === true ? 1 : value;\n return _ref = {}, _ref[divideSelector] = {\n '--x-divide-y-reverse': 0,\n borderTopWidth: \"calc(\" + v + \" * calc(1 - var(--x-divide-y-reverse)))\",\n borderBottomWidth: \"calc(\" + v + \" * var(--x-divide-y-reverse))\"\n }, _ref;\n }\n});\nvar divideX = /*#__PURE__*/style({\n prop: 'divideX',\n themeGet: getBorderWidth,\n cssProperty: function cssProperty(value) {\n var _ref2;\n\n var v = value === true ? 1 : value;\n return _ref2 = {}, _ref2[divideSelector] = {\n '--x-divide-x-reverse': 0,\n borderRightWidth: \"calc(\" + v + \" * var(--x-divide-x-reverse))\",\n borderLeftWidth: \"calc(\" + v + \" * calc(1 - var(--x-divide-x-reverse)))\"\n }, _ref2;\n }\n});\nvar divideXReverse = /*#__PURE__*/style({\n prop: 'divideXReverse',\n cssProperty: function cssProperty() {\n var _ref3;\n\n return _ref3 = {}, _ref3[divideSelector] = {\n '--x-divide-x-reverse': '1'\n }, _ref3;\n }\n});\nvar divideYReverse = /*#__PURE__*/style({\n prop: 'divideYReverse',\n cssProperty: function cssProperty() {\n var _ref4;\n\n return _ref4 = {}, _ref4[divideSelector] = {\n '--x-divide-y-reverse': '1'\n }, _ref4;\n }\n});\nvar divideColor = /*#__PURE__*/style({\n prop: 'divideColor',\n themeGet: getBorderColor,\n cssProperty: function cssProperty(value) {\n var _ref5;\n\n return _ref5 = {}, _ref5[divideSelector] = {\n borderColor: value\n }, _ref5;\n }\n});\nvar divideStyle = /*#__PURE__*/style({\n prop: 'divideStyle',\n themeGet: getBorderStyle,\n cssProperty: function cssProperty(value) {\n var _ref6;\n\n return _ref6 = {}, _ref6[divideSelector] = {\n borderStyle: value\n }, _ref6;\n }\n});\nvar getRingWidth = /*#__PURE__*/themeGetter({\n name: 'ringWidth',\n key: 'ringWidths',\n compose: getPx\n});\nvar ring = /*#__PURE__*/style({\n prop: 'ring',\n themeGet: getRingWidth,\n cssProperty: function cssProperty(value) {\n return {\n '--x-ring-shadow': \"var(--x-ring-inset, /*!*/ /*!*/) 0 0 0 \" + value + \" var(--x-ring-color)\",\n boxShadow: 'var(--x-ring-shadow, 0 0 #0000), var(--x-shadow, 0 0 #0000)'\n };\n }\n});\nvar ringInset = /*#__PURE__*/style({\n prop: 'ringInset',\n cssProperty: function cssProperty() {\n return {\n '--x-ring-inset': 'inset'\n };\n }\n});\nvar ringColor = /*#__PURE__*/style({\n prop: 'ringColor',\n themeGet: getColor,\n cssProperty: function cssProperty(value) {\n return {\n '--x-ring-color': value\n };\n }\n});\nvar borders = /*#__PURE__*/compose(border, borderTop, borderRight, borderBottom, borderLeft, borderColor, borderTopColor, borderRightColor, borderBottomColor, borderLeftColor, borderWidth, borderTopWidth, borderRightWidth, borderBottomWidth, borderLeftWidth, borderStyle, borderRadius, outline, outlineColor, outlineWidth, outlineStyle, divideX, divideY, divideXReverse, divideYReverse, divideColor, divideStyle, ring, ringInset, ringColor);\n\nvar getShadow = /*#__PURE__*/themeGetter({\n name: 'shadow',\n key: 'shadows'\n});\nvar opacity = /*#__PURE__*/style({\n prop: 'opacity'\n});\nvar boxShadow = /*#__PURE__*/style({\n prop: 'boxShadow',\n themeGet: getShadow,\n cssProperty: function cssProperty(value) {\n return {\n '--x-shadow': value,\n boxShadow: 'var(--x-ring-shadow, 0 0 #0000), var(--x-shadow)'\n };\n }\n});\nvar textShadow = /*#__PURE__*/style({\n prop: 'textShadow',\n themeGet: getShadow\n});\nvar effects = /*#__PURE__*/compose(opacity, boxShadow, textShadow);\n\nvar row = /*#__PURE__*/style({\n prop: 'row',\n cssProperty: function cssProperty() {\n return {\n boxSizing: 'border-box',\n flexGrow: 1,\n flexWrap: 'wrap',\n display: 'flex'\n };\n }\n});\n\nfunction getColStyle(props, size) {\n if (size === true) {\n return {\n flexBasis: 0,\n flexGrow: 1,\n maxWidth: '100%'\n };\n }\n\n if (size === 'auto') {\n return {\n flex: \"0 0 auto\",\n maxWidth: 'none',\n width: 'auto'\n };\n }\n\n var sizeWidth = getPercent(size)(props);\n return {\n flex: \"0 0 \" + sizeWidth,\n maxWidth: sizeWidth\n };\n}\n\nvar col = /*#__PURE__*/createStyleGenerator(function (props) {\n var value = props.col;\n var common = {\n boxSizing: 'border-box',\n flexBasis: 0,\n flexGrow: 1,\n maxWidth: '100%'\n };\n\n if (obj(value)) {\n var breakpointsStyle = reduceBreakpoints(props, value, function (breakpointValue) {\n return getColStyle(props, breakpointValue);\n });\n return _extends({}, common, breakpointsStyle);\n }\n\n return _extends({}, common, getColStyle(props, value));\n}, ['col']);\nvar flexboxGrids = /*#__PURE__*/compose(row, col);\n\nvar display = /*#__PURE__*/style({\n prop: 'display'\n});\n\nvar _float = /*#__PURE__*/style({\n prop: 'float'\n});\nvar boxSizing = /*#__PURE__*/style({\n prop: 'boxSizing'\n});\nvar container = /*#__PURE__*/createStyleGenerator(function (props) {\n if (!props.container) return null;\n var breakpoints = getBreakpoints(props);\n var styles = reduceBreakpoints(props, breakpoints, function (breakpointValue) {\n return breakpointValue !== 0 ? {\n maxWidth: breakpointValue\n } : {};\n });\n\n if (obj(props.container)) {\n styles = reduceBreakpoints(props, props.container, function () {\n return styles;\n });\n }\n\n return _extends({\n width: '100%'\n }, styles);\n}, ['container']);\nvar overflow = /*#__PURE__*/style({\n prop: 'overflow'\n});\nvar overflowX = /*#__PURE__*/style({\n prop: 'overflowX'\n});\nvar overflowY = /*#__PURE__*/style({\n prop: 'overflowY'\n});\nvar getZIndex = /*#__PURE__*/themeGetter({\n name: 'zIndex',\n key: 'zIndices'\n});\nvar zIndex = /*#__PURE__*/style({\n prop: 'zIndex',\n themeGet: getZIndex\n});\nvar position = /*#__PURE__*/style({\n prop: 'position'\n});\nvar getInset = /*#__PURE__*/themeGetter({\n name: 'inset',\n key: 'inset',\n compose: getPx,\n transform: transformNegative\n});\nvar top = /*#__PURE__*/style({\n prop: 'top',\n themeGet: getInset\n});\nvar right = /*#__PURE__*/style({\n prop: 'right',\n themeGet: getInset\n});\nvar bottom = /*#__PURE__*/style({\n prop: 'bottom',\n themeGet: getInset\n});\nvar left = /*#__PURE__*/style({\n prop: 'left',\n themeGet: getInset\n});\nvar visibility = /*#__PURE__*/style({\n prop: 'visibility'\n});\nvar overscrollBehavior = /*#__PURE__*/style({\n prop: 'overscrollBehavior'\n});\nvar objectFit = /*#__PURE__*/style({\n prop: 'objectFit'\n});\nvar layout = /*#__PURE__*/compose(boxSizing, display, _float, container, overflow, overflowX, overflowY, position, zIndex, top, right, bottom, left, visibility, overscrollBehavior, objectFit);\n\nvar alignItems = /*#__PURE__*/style({\n prop: 'alignItems'\n});\nvar alignContent = /*#__PURE__*/style({\n prop: 'alignContent'\n});\nvar justifyContent = /*#__PURE__*/style({\n prop: 'justifyContent'\n});\nvar justifyItems = /*#__PURE__*/style({\n prop: 'justifyItems'\n});\nvar flexWrap = /*#__PURE__*/style({\n prop: 'flexWrap'\n});\nvar flexGrow = /*#__PURE__*/style({\n prop: 'flexGrow'\n});\nvar flexShrink = /*#__PURE__*/style({\n prop: 'flexShrink'\n});\nvar flexBasis = /*#__PURE__*/style({\n prop: 'flexBasis',\n themeGet: getPercent\n});\nvar flexDirection = /*#__PURE__*/style({\n prop: 'flexDirection'\n});\nvar flex = /*#__PURE__*/style({\n prop: 'flex'\n});\nvar justifySelf = /*#__PURE__*/style({\n prop: 'justifySelf'\n});\nvar alignSelf = /*#__PURE__*/style({\n prop: 'alignSelf'\n});\nvar order = /*#__PURE__*/style({\n prop: 'order'\n});\nvar flexboxes = /*#__PURE__*/compose(display, alignItems, alignContent, justifyContent, justifyItems, flexWrap, flexBasis, flexShrink, flexGrow, flexDirection, flex, justifySelf, alignSelf, order);\n\nvar getSpace = /*#__PURE__*/themeGetter({\n name: 'space',\n key: 'space',\n compose: getPx,\n transform: transformNegative\n});\nvar margin = /*#__PURE__*/style({\n prop: ['margin', 'm'],\n cssProperty: 'margin',\n themeGet: getSpace\n});\nvar marginTop = /*#__PURE__*/style({\n prop: ['marginTop', 'mt'],\n cssProperty: 'marginTop',\n themeGet: getSpace\n});\nvar marginRight = /*#__PURE__*/style({\n prop: ['marginRight', 'mr'],\n cssProperty: 'marginRight',\n themeGet: getSpace\n});\nvar marginBottom = /*#__PURE__*/style({\n prop: ['marginBottom', 'mb'],\n cssProperty: 'marginBottom',\n themeGet: getSpace\n});\nvar marginLeft = /*#__PURE__*/style({\n prop: ['marginLeft', 'ml'],\n cssProperty: 'marginLeft',\n themeGet: getSpace\n});\nvar mx = /*#__PURE__*/style({\n prop: 'mx',\n cssProperty: ['marginRight', 'marginLeft'],\n themeGet: getSpace\n});\nvar my = /*#__PURE__*/style({\n prop: 'my',\n cssProperty: ['marginTop', 'marginBottom'],\n themeGet: getSpace\n});\nvar padding = /*#__PURE__*/style({\n prop: ['padding', 'p'],\n cssProperty: 'padding',\n themeGet: getSpace\n});\nvar paddingTop = /*#__PURE__*/style({\n prop: ['paddingTop', 'pt'],\n cssProperty: 'paddingTop',\n themeGet: getSpace\n});\nvar paddingRight = /*#__PURE__*/style({\n prop: ['paddingRight', 'pr'],\n cssProperty: 'paddingRight',\n themeGet: getSpace\n});\nvar paddingBottom = /*#__PURE__*/style({\n prop: ['paddingBottom', 'pb'],\n cssProperty: 'paddingBottom',\n themeGet: getSpace\n});\nvar paddingLeft = /*#__PURE__*/style({\n prop: ['paddingLeft', 'pl'],\n cssProperty: 'paddingLeft',\n themeGet: getSpace\n});\nvar px$1 = /*#__PURE__*/style({\n prop: 'px',\n cssProperty: ['paddingRight', 'paddingLeft'],\n themeGet: getSpace\n});\nvar py = /*#__PURE__*/style({\n prop: 'py',\n cssProperty: ['paddingTop', 'paddingBottom'],\n themeGet: getSpace\n});\nvar spaceY = /*#__PURE__*/style({\n prop: 'spaceY',\n themeGet: getSpace,\n cssProperty: function cssProperty(value) {\n return {\n '& > :not([hidden]) ~ :not([hidden])': {\n '--x-space-y-reverse': 0,\n marginTop: \"calc(\" + value + \" * calc(1 - var(--x-space-y-reverse)))\",\n marginBottom: \"calc(\" + value + \" * var(--x-space-y-reverse))\"\n }\n };\n }\n});\nvar spaceX = /*#__PURE__*/style({\n prop: 'spaceX',\n themeGet: getSpace,\n cssProperty: function cssProperty(value) {\n return {\n '& > :not([hidden]) ~ :not([hidden])': {\n '--x-space-x-reverse': 0,\n marginRight: \"calc(\" + value + \" * var(--x-space-x-reverse))\",\n marginLeft: \"calc(\" + value + \" * calc(1 - var(--x-space-x-reverse)))\"\n }\n };\n }\n});\nvar spaceXReverse = /*#__PURE__*/style({\n prop: 'spaceXReverse',\n cssProperty: function cssProperty() {\n return {\n '& > :not([hidden]) ~ :not([hidden])': {\n '--x-space-x-reverse': '1'\n }\n };\n }\n});\nvar spaceYReverse = /*#__PURE__*/style({\n prop: 'spaceYReverse',\n cssProperty: function cssProperty() {\n return {\n '& > :not([hidden]) ~ :not([hidden])': {\n '--x-space-y-reverse': '1'\n }\n };\n }\n});\nvar space = /*#__PURE__*/compose(margin, marginTop, marginRight, marginBottom, marginLeft, mx, my, padding, paddingTop, paddingRight, paddingBottom, paddingLeft, px$1, py, spaceX, spaceY, spaceXReverse, spaceYReverse);\n\nvar gap = /*#__PURE__*/style({\n prop: 'gap',\n themeGet: getSpace\n});\nvar columnGap = /*#__PURE__*/style({\n prop: 'columnGap',\n themeGet: getSpace\n});\nvar rowGap = /*#__PURE__*/style({\n prop: 'rowGap',\n themeGet: getSpace\n});\nvar gridColumn = /*#__PURE__*/style({\n prop: 'gridColumn'\n});\nvar gridRow = /*#__PURE__*/style({\n prop: 'gridRow'\n});\nvar gridAutoFlow = /*#__PURE__*/style({\n prop: 'gridAutoFlow'\n});\nvar gridAutoColumns = /*#__PURE__*/style({\n prop: 'gridAutoColumns'\n});\nvar gridAutoRows = /*#__PURE__*/style({\n prop: 'gridAutoRows'\n});\nvar gridTemplateColumns = /*#__PURE__*/style({\n prop: 'gridTemplateColumns',\n key: 'gridTemplateColumns'\n});\nvar gridTemplateRows = /*#__PURE__*/style({\n prop: 'gridTemplateRows',\n key: 'gridTemplateRows'\n});\nvar gridTemplateAreas = /*#__PURE__*/style({\n prop: 'gridTemplateAreas'\n});\nvar gridArea = /*#__PURE__*/style({\n prop: 'gridArea'\n});\nvar grids = /*#__PURE__*/compose(gap, columnGap, rowGap, gridColumn, gridRow, gridAutoFlow, gridAutoColumns, gridAutoRows, gridTemplateColumns, gridTemplateRows, gridTemplateAreas, gridArea);\n\nvar appearance = /*#__PURE__*/style({\n prop: 'appearance'\n});\nvar cursor = /*#__PURE__*/style({\n prop: 'cursor'\n});\nvar pointerEvents = /*#__PURE__*/style({\n prop: 'pointerEvents'\n});\nvar resize = /*#__PURE__*/style({\n prop: 'resize'\n});\nvar userSelect = /*#__PURE__*/style({\n prop: 'userSelect'\n});\nvar interactivity = /*#__PURE__*/compose(appearance, cursor, pointerEvents, resize, userSelect);\n\nvar getSize = /*#__PURE__*/themeGetter({\n name: 'size',\n key: 'sizes',\n compose: getPercent\n});\nvar width = /*#__PURE__*/style({\n prop: 'w',\n cssProperty: 'width',\n themeGet: getSize\n});\nvar height = /*#__PURE__*/style({\n prop: 'h',\n cssProperty: 'height',\n themeGet: getSize\n});\nvar maxWidth = /*#__PURE__*/style({\n cssProperty: 'maxWidth',\n prop: ['maxWidth', 'maxW'],\n themeGet: getSize\n});\nvar maxHeight = /*#__PURE__*/style({\n cssProperty: 'maxHeight',\n prop: ['maxHeight', 'maxH'],\n themeGet: getSize\n});\nvar minWidth = /*#__PURE__*/style({\n cssProperty: 'minWidth',\n prop: ['minWidth', 'minW'],\n themeGet: getSize\n});\nvar minHeight = /*#__PURE__*/style({\n cssProperty: 'minHeight',\n prop: ['minHeight', 'minH'],\n themeGet: getSize\n});\nvar sizing = /*#__PURE__*/compose(width, height, maxWidth, maxHeight, minWidth, minHeight);\n\nvar fill = /*#__PURE__*/style({\n prop: 'fill',\n themeGet: getColor\n});\nvar stroke = /*#__PURE__*/style({\n prop: 'stroke',\n themeGet: getColor\n});\nvar svg = /*#__PURE__*/compose(fill, stroke);\n\nvar borderCollapse = /*#__PURE__*/style({\n prop: 'borderCollapse'\n});\nvar tableLayout = /*#__PURE__*/style({\n prop: 'tableLayout'\n});\nvar tables = /*#__PURE__*/compose(borderCollapse, tableLayout);\n\nvar getTransform = /*#__PURE__*/themeGetter({\n name: 'transform',\n key: 'transforms'\n});\nvar transform = /*#__PURE__*/style({\n prop: 'transform',\n themeGet: getTransform,\n cssProperty: function cssProperty(value) {\n if (value === true) {\n return {\n '--x-translate-x': 0,\n '--x-translate-y': 0,\n '--x-rotate': 0,\n '--x-skew-x': 0,\n '--x-skew-y': 0,\n '--x-scale-x': '1',\n '--x-scale-y': '1',\n transform: 'translate3d(var(--x-translate-x), var(--x-translate-y), 0) rotate(var(--x-rotate)) skewX(var(--x-skew-x)) skewY(var(--x-skew-y)) scaleX(var(--x-scale-x)) scaleY(var(--x-scale-y))'\n };\n }\n\n return {\n transform: value\n };\n }\n});\nvar transformOrigin = /*#__PURE__*/style({\n prop: 'transformOrigin'\n});\nvar translateX = /*#__PURE__*/style({\n prop: 'translateX',\n cssProperty: '--x-translate-x',\n themeGet: getSpace\n});\nvar translateY = /*#__PURE__*/style({\n prop: 'translateY',\n cssProperty: '--x-translate-y',\n themeGet: getSpace\n});\nvar rotate = /*#__PURE__*/style({\n prop: 'rotate',\n cssProperty: '--x-rotate',\n themeGet: getAngle\n});\nvar skewX = /*#__PURE__*/style({\n prop: 'skewX',\n cssProperty: '--x-skew-x',\n themeGet: getAngle\n});\nvar skewY = /*#__PURE__*/style({\n prop: 'skewY',\n cssProperty: '--x-skew-y',\n themeGet: getAngle\n});\nvar scale = /*#__PURE__*/style({\n prop: 'scale',\n cssProperty: ['--x-scale-x', '--x-scale-y'],\n transform: function transform(v) {\n return String(v);\n }\n});\nvar scaleX = /*#__PURE__*/style({\n prop: 'scaleX',\n cssProperty: '--x-scale-x',\n transform: function transform(v) {\n return String(v);\n }\n});\nvar scaleY = /*#__PURE__*/style({\n prop: 'scaleY',\n cssProperty: '--x-scale-y',\n transform: function transform(v) {\n return String(v);\n }\n});\nvar transforms = /*#__PURE__*/compose(transform, transformOrigin, translateX, translateY, rotate, skewX, skewY, scale, scaleX, scaleY);\n\nvar getTransition = /*#__PURE__*/themeGetter({\n name: 'transition',\n key: 'transitions'\n});\nvar getTransitionProperty = /*#__PURE__*/themeGetter({\n name: 'transitionProperty',\n key: 'transitionProperties'\n});\nvar getTimingFunction = /*#__PURE__*/themeGetter({\n name: 'timingFunctions',\n key: 'timingFunctions'\n});\nvar transition = /*#__PURE__*/style({\n prop: 'transition',\n themeGet: getTransition\n});\nvar transitionProperty = /*#__PURE__*/style({\n prop: 'transitionProperty',\n themeGet: getTransitionProperty\n});\nvar transitionDuration = /*#__PURE__*/style({\n prop: 'transitionDuration',\n themeGet: getDuration\n});\nvar transitionTimingFunction = /*#__PURE__*/style({\n prop: 'transitionTimingFunction',\n themeGet: getTimingFunction\n});\nvar transitionDelay = /*#__PURE__*/style({\n prop: 'transitionDelay',\n themeGet: getDuration\n});\nvar transitions = /*#__PURE__*/compose(transition, transitionProperty, transitionDuration, transitionTimingFunction, transitionDelay);\n\nvar getFont = /*#__PURE__*/themeGetter({\n name: 'font',\n key: 'fonts'\n});\nvar getLineHeight = /*#__PURE__*/themeGetter({\n name: 'lineHeight',\n key: 'lineHeights',\n transform: function transform(value, _ref) {\n var _props$theme$settings, _props$theme, _props$theme$settings2;\n\n var props = _ref.props;\n var rootFontSize = (_props$theme$settings = props == null ? void 0 : (_props$theme = props.theme) == null ? void 0 : (_props$theme$settings2 = _props$theme.settings) == null ? void 0 : _props$theme$settings2.rootFontSize) != null ? _props$theme$settings : undefined;\n return rpx(value, {\n rootFontSize: rootFontSize\n });\n }\n});\nvar getFontWeight = /*#__PURE__*/themeGetter({\n name: 'fontWeight',\n key: 'fontWeights'\n});\nvar getLetterSpacing = /*#__PURE__*/themeGetter({\n name: 'letterSpacing',\n key: 'letterSpacings',\n compose: getPx\n});\nvar getFontSize = /*#__PURE__*/themeGetter({\n name: 'fontSize',\n key: 'fontSizes',\n compose: getPx\n});\nvar fontFamily = /*#__PURE__*/style({\n prop: 'fontFamily',\n themeGet: getFont\n});\nvar fontSize = /*#__PURE__*/style({\n prop: 'fontSize',\n themeGet: getFontSize\n});\nvar lineHeight = /*#__PURE__*/style({\n prop: 'lineHeight',\n themeGet: getLineHeight\n});\nvar fontWeight = /*#__PURE__*/style({\n prop: 'fontWeight',\n themeGet: getFontWeight\n});\nvar fontStyle = /*#__PURE__*/style({\n prop: 'fontStyle'\n});\nvar letterSpacing = /*#__PURE__*/style({\n prop: 'letterSpacing',\n themeGet: getLetterSpacing\n});\nvar color = /*#__PURE__*/style({\n prop: 'color',\n themeGet: getColor\n});\nvar textTransform = /*#__PURE__*/style({\n prop: 'textTransform'\n});\nvar textDecoration = /*#__PURE__*/style({\n prop: 'textDecoration'\n});\nvar textAlign = /*#__PURE__*/style({\n prop: 'textAlign'\n});\nvar verticalAlign = /*#__PURE__*/style({\n prop: 'verticalAlign'\n});\nvar whiteSpace = /*#__PURE__*/style({\n prop: 'whiteSpace'\n});\nvar textOverflow = /*#__PURE__*/style({\n prop: 'textOverflow'\n});\nvar listStyleType = /*#__PURE__*/style({\n prop: 'listStyleType'\n});\nvar listStylePosition = /*#__PURE__*/style({\n prop: 'listStylePosition'\n});\nvar typography = /*#__PURE__*/compose(fontFamily, fontSize, fontStyle, lineHeight, fontWeight, textAlign, letterSpacing, color, textTransform, textDecoration, verticalAlign, whiteSpace, textOverflow, listStyleType, listStylePosition);\n\nvar system = /*#__PURE__*/compose(animations, backgrounds, borders, effects, flexboxGrids, flexboxes, grids, interactivity, layout, sizing, space, svg, tables, transforms, transitions, typography);\n\nvar th = function th(path, defaultValue) {\n return function (props) {\n var value = getThemeValue(props, path);\n if (is(value)) return value;\n if (is(defaultValue)) return defaultValue;\n return path;\n };\n};\n[getAngle, getAnimation, getBorder, getBorderColor, getBorderStyle, getBorderWidth, getColor, getDuration, getFont, getFontSize, getFontWeight, getInset, getLetterSpacing, getLineHeight, getPercent, getPx, getRadius, getRingWidth, getShadow, getSize, getSpace, getTimingFunction, getTransform, getTransition, getTransitionProperty, getZIndex].forEach(function (themeGetter) {\n if (themeGetter.meta.name) {\n th[themeGetter.meta.name] = themeGetter;\n }\n});\n\nvar up = function up(key, rules) {\n return function (props) {\n var breakpoints = getBreakpoints(props);\n var value = getBreakpointMin(breakpoints, key);\n if (value === null) return rules;\n return [mediaMinWidth(value) + \" {\", rules, '}'];\n };\n};\nvar down = function down(key, rules) {\n return function (props) {\n var breakpoints = getBreakpoints(props);\n var value = getBreakpointMax(breakpoints, key);\n if (value === null) return null;\n return [mediaMaxWidth(value) + \" {\", rules, '}'];\n };\n};\nvar between = function between(lower, upper, rules) {\n return function (props) {\n var breakpoints = getBreakpoints(props);\n var min = getBreakpointMin(breakpoints, lower);\n var max = getBreakpointMax(breakpoints, upper);\n if (max === null) return up(lower, rules)(props);\n if (min === null) return down(upper, rules)(props);\n return [mediaBetweenWidth(min, max) + \" {\", rules, '}'];\n };\n};\nvar breakpoints = function breakpoints(values) {\n return function (props) {\n var allRules = [];\n var keys = Object.keys(values);\n var keysLength = keys.length;\n\n for (var i = 0; i < keysLength; i++) {\n var key = keys[i];\n var rules = values[key];\n var result = up(key, rules)(props);\n\n if (Array.isArray(result)) {\n result.forEach(function (v) {\n return allRules.push(v);\n });\n } else {\n allRules.push(result);\n }\n }\n\n return allRules;\n };\n};\n\nvar rpxTransformers = {\n px: function px(value) {\n return remPx(rpx(value));\n },\n border: function border(n) {\n return num(n) && n > 0 ? remPx(n) + \" solid\" : n;\n }\n};\n\nvar defaultAlphaVariants = [0, 5, 10, 20, 25, 30, 40, 50, 60, 70, 75, 80, 90, 95, 100];\n\nfunction generateAlphaVariants(colors, transform, variants) {\n if (transform === void 0) {\n transform = function transform(x) {\n return x;\n };\n }\n\n if (variants === void 0) {\n variants = defaultAlphaVariants;\n }\n\n var alphaColors = Object.keys(colors).reduce(function (obj, key) {\n variants.forEach(function (i) {\n obj[key + \"-a\" + i] = transform(colors[key], key, i);\n });\n return obj;\n }, _extends({}, colors));\n return alphaColors;\n}\n\nfunction generateHexAlphaVariants(colors, variants) {\n if (variants === void 0) {\n variants = defaultAlphaVariants;\n }\n\n return generateAlphaVariants(colors, function (value, _, variant) {\n return \"\" + value + Math.round(variant / 100 * 255).toString(16);\n }, variants);\n}\nvar defaultTones = [50, 100, 200, 300, 400, 500, 600, 700, 800, 900];\nfunction aliasColor(alias, color, tones, variants) {\n if (tones === void 0) {\n tones = defaultTones;\n }\n\n if (variants === void 0) {\n variants = defaultAlphaVariants;\n }\n\n return tones.reduce(function (obj, tone) {\n obj[alias + \"-\" + tone] = th.color(color + \"-\" + tone);\n variants.forEach(function (i) {\n obj[alias + \"-\" + tone + \"-a\" + i] = th.color(color + \"-\" + tone + \"-a\" + i);\n });\n return obj;\n }, {});\n}\n\nvar space$1 = {\n 0.5: '0.125rem',\n 1: '0.25rem',\n 1.5: '0.375rem',\n 2: '0.5rem',\n 2.5: '0.625rem',\n 3: '0.75rem',\n 3.5: '0.875rem',\n 4: '1rem',\n 5: '1.25rem',\n 6: '1.5rem',\n 7: '1.75rem',\n 8: '2rem',\n 9: '2.25rem',\n 10: '2.5rem',\n 11: '2.75rem',\n 12: '3rem',\n 14: '3.5rem',\n 16: '4rem',\n 20: '5rem',\n 24: '6rem',\n 28: '7rem',\n 32: '8rem',\n 36: '9rem',\n 40: '10rem',\n 44: '11rem',\n 48: '12rem',\n 52: '13rem',\n 56: '14rem',\n 60: '15rem',\n 64: '16rem',\n 72: '18rem',\n 80: '20rem',\n 96: '24rem'\n};\nvar timingFunctions = {\n 'ease-in': 'cubic-bezier(0.4, 0, 1, 1)',\n 'ease-out': 'cubic-bezier(0, 0, 0.2, 1)',\n 'ease-in-out': 'cubic-bezier(0.4, 0, 0.2, 1)'\n};\nvar transitionProperties = {\n \"default\": ['background-color', 'border-color', 'color', 'fill', 'stroke', 'opacity', 'box-shadow', 'transform'],\n colors: ['background-color', 'border-color', 'color', 'fill', 'stroke'],\n opacity: ['opacity'],\n shadow: ['box-shadow'],\n transform: ['transform']\n};\nvar transitions$1 = /*#__PURE__*/Object.keys(transitionProperties).reduce(function (obj, key) {\n obj[key] = transitionProperties[key].map(function (property) {\n return property + \" \" + timingFunctions['ease-in-out'] + \" 150ms\";\n }).join(',');\n return obj;\n}, {});\nvar colors = {\n black: '#000000',\n white: '#ffffff',\n 'blue-gray-50': '#f8fafc',\n 'blue-gray-100': '#f1f5f9',\n 'blue-gray-200': '#e2e8f0',\n 'blue-gray-300': '#cbd5e1',\n 'blue-gray-400': '#94a3b8',\n 'blue-gray-500': '#64748b',\n 'blue-gray-600': '#475569',\n 'blue-gray-700': '#334155',\n 'blue-gray-800': '#1e293b',\n 'blue-gray-900': '#0f172a',\n 'cool-gray-50': '#f9fafb',\n 'cool-gray-100': '#f3f4f6',\n 'cool-gray-200': '#e5e7eb',\n 'cool-gray-300': '#d1d5db',\n 'cool-gray-400': '#9ca3af',\n 'cool-gray-500': '#6b7280',\n 'cool-gray-600': '#4b5563',\n 'cool-gray-700': '#374151',\n 'cool-gray-800': '#1f2937',\n 'cool-gray-900': '#111827',\n 'gray-50': '#fafafa',\n 'gray-100': '#f4f4f5',\n 'gray-200': '#e4e4e7',\n 'gray-300': '#d4d4d8',\n 'gray-400': '#a1a1aa',\n 'gray-500': '#71717a',\n 'gray-600': '#52525b',\n 'gray-700': '#3f3f46',\n 'gray-800': '#27272a',\n 'gray-900': '#18181b',\n 'true-gray-50': '#fafafa',\n 'true-gray-100': '#f5f5f5',\n 'true-gray-200': '#e5e5e5',\n 'true-gray-300': '#d4d4d4',\n 'true-gray-400': '#a3a3a3',\n 'true-gray-500': '#737373',\n 'true-gray-600': '#525252',\n 'true-gray-700': '#404040',\n 'true-gray-800': '#262626',\n 'true-gray-900': '#171717',\n 'warm-gray-50': '#fafaf9',\n 'warm-gray-100': '#f5f5f4',\n 'warm-gray-200': '#e7e5e4',\n 'warm-gray-300': '#d6d3d1',\n 'warm-gray-400': '#a8a29e',\n 'warm-gray-500': '#78716c',\n 'warm-gray-600': '#57534e',\n 'warm-gray-700': '#44403c',\n 'warm-gray-800': '#292524',\n 'warm-gray-900': '#1c1917',\n 'red-50': '#fef2f2',\n 'red-100': '#fee2e2',\n 'red-200': '#fecaca',\n 'red-300': '#fca5a5',\n 'red-400': '#f87171',\n 'red-500': '#ef4444',\n 'red-600': '#dc2626',\n 'red-700': '#b91c1c',\n 'red-800': '#991b1b',\n 'red-900': '#7f1d1d',\n 'orange-50': '#fff7ed',\n 'orange-100': '#ffedd5',\n 'orange-200': '#fed7aa',\n 'orange-300': '#fdba74',\n 'orange-400': '#fb923c',\n 'orange-500': '#f97316',\n 'orange-600': '#ea580c',\n 'orange-700': '#c2410c',\n 'orange-800': '#9a3412',\n 'orange-900': '#7c2d12',\n 'amber-50': '#fffbeb',\n 'amber-100': '#fef3c7',\n 'amber-200': '#fde68a',\n 'amber-300': '#fcd34d',\n 'amber-400': '#fbbf24',\n 'amber-500': '#f59e0b',\n 'amber-600': '#d97706',\n 'amber-700': '#b45309',\n 'amber-800': '#92400e',\n 'amber-900': '#78350f',\n 'yellow-50': '#fefce8',\n 'yellow-100': '#fef9c3',\n 'yellow-200': '#fef08a',\n 'yellow-300': '#fde047',\n 'yellow-400': '#facc15',\n 'yellow-500': '#eab308',\n 'yellow-600': '#ca8a04',\n 'yellow-700': '#a16207',\n 'yellow-800': '#854d0e',\n 'yellow-900': '#713f12',\n 'lime-50': '#f7fee7',\n 'lime-100': '#ecfccb',\n 'lime-200': '#d9f99d',\n 'lime-300': '#bef264',\n 'lime-400': '#a3e635',\n 'lime-500': '#84cc16',\n 'lime-600': '#65a30d',\n 'lime-700': '#4d7c0f',\n 'lime-800': '#3f6212',\n 'lime-900': '#365314',\n 'green-50': '#f0fdf4',\n 'green-100': '#dcfce7',\n 'green-200': '#bbf7d0',\n 'green-300': '#86efac',\n 'green-400': '#4ade80',\n 'green-500': '#22c55e',\n 'green-600': '#16a34a',\n 'green-700': '#15803d',\n 'green-800': '#166534',\n 'green-900': '#14532d',\n 'emerald-50': '#ecfdf5',\n 'emerald-100': '#d1fae5',\n 'emerald-200': '#a7f3d0',\n 'emerald-300': '#6ee7b7',\n 'emerald-400': '#34d399',\n 'emerald-500': '#10b981',\n 'emerald-600': '#059669',\n 'emerald-700': '#047857',\n 'emerald-800': '#065f46',\n 'emerald-900': '#064e3b',\n 'teal-50': '#f0fdfa',\n 'teal-100': '#ccfbf1',\n 'teal-200': '#99f6e4',\n 'teal-300': '#5eead4',\n 'teal-400': '#2dd4bf',\n 'teal-500': '#14b8a6',\n 'teal-600': '#0d9488',\n 'teal-700': '#0f766e',\n 'teal-800': '#115e59',\n 'teal-900': '#134e4a',\n 'cyan-50': '#ecfeff',\n 'cyan-100': '#cffafe',\n 'cyan-200': '#a5f3fc',\n 'cyan-300': '#67e8f9',\n 'cyan-400': '#22d3ee',\n 'cyan-500': '#06b6d4',\n 'cyan-600': '#0891b2',\n 'cyan-700': '#0e7490',\n 'cyan-800': '#155e75',\n 'cyan-900': '#164e63',\n 'light-blue-50': '#f0f9ff',\n 'light-blue-100': '#e0f2fe',\n 'light-blue-200': '#bae6fd',\n 'light-blue-300': '#7dd3fc',\n 'light-blue-400': '#38bdf8',\n 'light-blue-500': '#0ea5e9',\n 'light-blue-600': '#0284c7',\n 'light-blue-700': '#0369a1',\n 'light-blue-800': '#075985',\n 'light-blue-900': '#0c4a6e',\n 'blue-50': '#eff6ff',\n 'blue-100': '#dbeafe',\n 'blue-200': '#bfdbfe',\n 'blue-300': '#93c5fd',\n 'blue-400': '#60a5fa',\n 'blue-500': '#3b82f6',\n 'blue-600': '#2563eb',\n 'blue-700': '#1d4ed8',\n 'blue-800': '#1e40af',\n 'blue-900': '#1e3a8a',\n 'indigo-50': '#eef2ff',\n 'indigo-100': '#e0e7ff',\n 'indigo-200': '#c7d2fe',\n 'indigo-300': '#a5b4fc',\n 'indigo-400': '#818cf8',\n 'indigo-500': '#6366f1',\n 'indigo-600': '#4f46e5',\n 'indigo-700': '#4338ca',\n 'indigo-800': '#3730a3',\n 'indigo-900': '#312e81',\n 'violet-50': '#f5f3ff',\n 'violet-100': '#ede9fe',\n 'violet-200': '#ddd6fe',\n 'violet-300': '#c4b5fd',\n 'violet-400': '#a78bfa',\n 'violet-500': '#8b5cf6',\n 'violet-600': '#7c3aed',\n 'violet-700': '#6d28d9',\n 'violet-800': '#5b21b6',\n 'violet-900': '#4c1d95',\n 'purple-50': '#faf5ff',\n 'purple-100': '#f3e8ff',\n 'purple-200': '#e9d5ff',\n 'purple-300': '#d8b4fe',\n 'purple-400': '#c084fc',\n 'purple-500': '#a855f7',\n 'purple-600': '#9333ea',\n 'purple-700': '#7e22ce',\n 'purple-800': '#6b21a8',\n 'purple-900': '#581c87',\n 'fuchsia-50': '#fdf4ff',\n 'fuchsia-100': '#fae8ff',\n 'fuchsia-200': '#f5d0fe',\n 'fuchsia-300': '#f0abfc',\n 'fuchsia-400': '#e879f9',\n 'fuchsia-500': '#d946ef',\n 'fuchsia-600': '#c026d3',\n 'fuchsia-700': '#a21caf',\n 'fuchsia-800': '#86198f',\n 'fuchsia-900': '#701a75',\n 'pink-50': '#fdf2f8',\n 'pink-100': '#fce7f3',\n 'pink-200': '#fbcfe8',\n 'pink-300': '#f9a8d4',\n 'pink-400': '#f472b6',\n 'pink-500': '#ec4899',\n 'pink-600': '#db2777',\n 'pink-700': '#be185d',\n 'pink-800': '#9d174d',\n 'pink-900': '#831843',\n 'rose-50': '#fff1f2',\n 'rose-100': '#ffe4e6',\n 'rose-200': '#fecdd3',\n 'rose-300': '#fda4af',\n 'rose-400': '#fb7185',\n 'rose-500': '#f43f5e',\n 'rose-600': '#e11d48',\n 'rose-700': '#be123c',\n 'rose-800': '#9f1239',\n 'rose-900': '#881337'\n};\nvar defaultTheme = {\n colors: /*#__PURE__*/generateHexAlphaVariants(colors),\n space: space$1,\n screens: {\n _: 0,\n xs: 0,\n sm: 640,\n md: 768,\n lg: 1024,\n xl: 1280,\n '2xl': 1536\n },\n durations: {\n instant: '100ms',\n 'fast-in': '250ms',\n 'fast-out': '200ms',\n 'slow-in': '300ms',\n 'slow-out': '250ms'\n },\n sizes: /*#__PURE__*/_extends({}, space$1, {\n 0.5: undefined,\n 1: undefined,\n '0.5s': space$1[0.5],\n '1s': space$1[1],\n full: '100%',\n xs: '20rem',\n sm: '24rem',\n md: '28rem',\n lg: '32rem',\n xl: '36rem',\n '2xl': '42rem',\n '3xl': '48rem',\n '4xl': '56rem',\n '5xl': '64rem',\n '6xl': '72rem',\n '7xl': '80rem'\n }),\n radii: {\n none: '0',\n sm: '0.125rem',\n \"default\": '0.25rem',\n md: '0.375rem',\n lg: '0.5rem',\n xl: '0.75rem',\n '2xl': '1rem',\n '3xl': '1.5rem',\n full: '9999px'\n },\n shadows: {\n xs: '0 0 0 1px rgba(0, 0, 0, 0.05)',\n sm: '0 1px 2px 0 rgba(0, 0, 0, 0.05)',\n \"default\": '0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06)',\n md: '0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)',\n lg: '0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05)',\n xl: '0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04)',\n '2xl': '0 25px 50px -12px rgba(0, 0, 0, 0.25)',\n inner: 'inset 0 2px 4px 0 rgba(0, 0, 0, 0.06)',\n outline: '0 0 0 3px rgba(66, 153, 225, 0.5)'\n },\n fontSizes: {\n xs: '0.75rem',\n sm: '0.875rem',\n \"default\": '1rem',\n lg: '1.125rem',\n xl: '1.25rem',\n '2xl': '1.5rem',\n '3xl': '1.875rem',\n '4xl': '2.25rem',\n '5xl': '3rem',\n '6xl': '3.75rem',\n '7xl': '4.5rem',\n '8xl': '6rem',\n '9xl': '8rem'\n },\n fontWeights: {\n hairline: '100',\n thin: '200',\n light: '300',\n normal: '400',\n medium: '500',\n semibold: '600',\n bold: '700',\n extrabold: '800',\n black: '900'\n },\n fonts: {\n mono: \"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, \\\"Liberation Mono\\\", \\\"Courier New\\\", monospace\",\n serif: \"ui-serif, Georgia, Cambria, \\\"Times New Roman\\\", Times, serif\",\n sans: \"ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \\\"Segoe UI\\\", Roboto, \\\"Helvetica Neue\\\", Arial, \\\"Noto Sans\\\", sans-serif, \\\"Apple Color Emoji\\\", \\\"Segoe UI Emoji\\\", \\\"Segoe UI Symbol\\\", \\\"Noto Color Emoji\\\"\"\n },\n letterSpacings: {\n tighter: '-0.05em',\n tight: '-0.025em',\n normal: '0em',\n wide: '0.025em',\n wider: '0.05em',\n widest: '0.1em'\n },\n lineHeights: {\n none: 1,\n tight: 1.25,\n snug: 1.375,\n normal: 1.5,\n relaxed: 1.625,\n loose: 2,\n 3: '.75rem',\n 4: '1rem',\n 5: '1.25rem',\n 6: '1.5rem',\n 7: '1.75rem',\n 8: '2rem',\n 9: '2.25rem',\n 10: '2.5rem'\n },\n gridTemplateColumns: {\n 1: 'repeat(1, minmax(0, 1fr))',\n 2: 'repeat(2, minmax(0, 1fr))',\n 3: 'repeat(3, minmax(0, 1fr))',\n 4: 'repeat(4, minmax(0, 1fr))',\n 5: 'repeat(5, minmax(0, 1fr))',\n 6: 'repeat(6, minmax(0, 1fr))',\n 7: 'repeat(7, minmax(0, 1fr))',\n 8: 'repeat(8, minmax(0, 1fr))',\n 9: 'repeat(9, minmax(0, 1fr))',\n 10: 'repeat(10, minmax(0, 1fr))',\n 11: 'repeat(11, minmax(0, 1fr))',\n 12: 'repeat(12, minmax(0, 1fr))'\n },\n gridTemplateRows: {\n 1: 'repeat(1, minmax(0, 1fr))',\n 2: 'repeat(2, minmax(0, 1fr))',\n 3: 'repeat(3, minmax(0, 1fr))',\n 4: 'repeat(4, minmax(0, 1fr))',\n 5: 'repeat(5, minmax(0, 1fr))',\n 6: 'repeat(6, minmax(0, 1fr))'\n },\n borderWidths: {\n \"default\": 1\n },\n ringWidths: {\n \"default\": 3\n },\n borders: {\n \"default\": '1px solid transparent'\n },\n transitions: transitions$1,\n transitionProperties: transitionProperties,\n timingFunctions: timingFunctions,\n animations: {\n spin: 'x-spin 1s linear infinite',\n ping: 'x-ping 1s cubic-bezier(0, 0, 0.2, 1) infinite',\n pulse: 'x-pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite',\n bounce: 'x-bounce 1s infinite'\n }\n};\n\nvar _templateObject;\nvar createPreflight = function createPreflight(_ref) {\n var createGlobalStyle = _ref.createGlobalStyle;\n return createGlobalStyle(_templateObject || (_templateObject = _taggedTemplateLiteralLoose([\"\\n /*! modern-normalize v1.0.0 | MIT License | https://github.com/sindresorhus/modern-normalize */\\n *,::after,::before{box-sizing:border-box}:root{-moz-tab-size:4;tab-size:4}html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}body{font-family:system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif,'Apple Color Emoji','Segoe UI Emoji'}hr{height:0;color:inherit}abbr[title]{text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Consolas,'Liberation Mono',Menlo,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}::-moz-focus-inner{border-style:none;padding:0}:-moz-focusring{outline:1px dotted ButtonText}:-moz-ui-invalid{box-shadow:none}legend{padding:0}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}\\n\\n /* Role button pointer */\\n [role=button], button {\\n cursor: pointer;\\n }\\n\\n /* Remove default margins */\\n blockquote,\\n dl,\\n dd,\\n h1,\\n h2,\\n h3,\\n h4,\\n h5,\\n h6,\\n hr,\\n figure,\\n p,\\n pre {\\n margin: 0;\\n }\\n\\n /* Remove headings styles */\\n h1,\\n h2,\\n h3,\\n h4,\\n h5,\\n h6 {\\n font-size: inherit;\\n font-weight: inherit;\\n }\\n\\n /* Unstyle lists */\\n ol,\\n ul {\\n list-style: none;\\n margin: 0;\\n padding: 0;\\n }\\n\\n /* Image are block-level */\\n img,\\n svg,\\n video,\\n canvas,\\n audio,\\n iframe,\\n embed,\\n object {\\n display: block;\\n vertical-align: middle;\\n }\\n\\n /* Reset border styles */\\n *,\\n ::before,\\n ::after {\\n border-width: 0;\\n border-style: solid;\\n border-color: \", \";\\n }\\n\\n * {\\n --x-ring-color: \", \";\\n }\\n\\n /* Default outline on buttons */\\n button:focus {\\n outline: 1px dotted;\\n outline: 5px auto -webkit-focus-ring-color;\\n }\\n\\n // Animations\\n @keyframes x-spin {\\n from {\\n transform: rotate(0deg);\\n }\\n to {\\n transform: rotate(360deg);\\n }\\n }\\n\\n @keyframes x-ping {\\n 0% {\\n transform: scale(1);\\n opacity: 1;\\n }\\n 75%, 100% {\\n transform: scale(2);\\n opacity: 0;\\n }\\n }\\n\\n @keyframes x-pulse {\\n 0%, 100% {\\n opacity: 1;\\n }\\n 50% {\\n opacity: .5;\\n }\\n }\\n\\n @keyframes x-bounce {\\n 0%, 100% {\\n transform: translateY(-25%);\\n animationTimingFunction: cubic-bezier(0.8, 0, 1, 1);\\n }\\n 50% {\\n transform: translateY(0);\\n animationTimingFunction: cubic-bezier(0, 0, 0.2, 1);\\n }\\n }\\n \"])), th.color('default-border-color', 'currentColor'), th.color('default-ring-color', 'rgba(59,130,246,0.5)'));\n};\n\nexport { aliasColor, alignContent, alignItems, alignSelf, animation, animations, appearance, background, backgroundAttachment, backgroundClip, backgroundColor, backgroundImage, backgroundPosition, backgroundRepeat, backgroundSize, backgrounds, between, border, borderBottom, borderBottomColor, borderBottomWidth, borderCollapse, borderColor, borderLeft, borderLeftColor, borderLeftWidth, borderRadius, borderRight, borderRightColor, borderRightWidth, borderStyle, borderTop, borderTopColor, borderTopWidth, borderWidth, borders, bottom, boxShadow, boxSizing, breakpoints, col, color, columnGap, compose, container, createPreflight, createStyleGenerator, cursor, defaultTheme, display, divideColor, divideStyle, divideX, divideXReverse, divideY, divideYReverse, down, effects, fill, flex, flexBasis, flexDirection, flexGrow, flexShrink, flexWrap, flexboxGrids, flexboxes, _float as float, fontFamily, fontSize, fontStyle, fontWeight, gap, generateHexAlphaVariants, getAngle, getAnimation, getBorder, getBorderColor, getBorderStyle, getBorderWidth, getBreakpointMax, getBreakpointMin, getBreakpoints, getColor, getDuration, getFont, getFontSize, getFontWeight, getInset, getLetterSpacing, getLineHeight, getPercent, getPx, getRadius, getRingWidth, getShadow, getSize, getSpace, getTimingFunction, getTransform, getTransition, getTransitionProperty, getZIndex, gradientFrom, gradientTo, gradientVia, gridArea, gridAutoColumns, gridAutoFlow, gridAutoRows, gridColumn, gridRow, gridTemplateAreas, gridTemplateColumns, gridTemplateRows, grids, height, interactivity, justifyContent, justifyItems, justifySelf, layout, left, letterSpacing, lineHeight, listStylePosition, listStyleType, margin, marginBottom, marginLeft, marginRight, marginTop, maxHeight, maxWidth, minHeight, minWidth, mx, my, objectFit, opacity, order, outline, outlineColor, outlineStyle, outlineWidth, overflow, overflowX, overflowY, overscrollBehavior, padding, paddingBottom, paddingLeft, paddingRight, paddingTop, pointerEvents, position, px$1 as px, py, resize, right, ring, ringColor, ringInset, rotate, row, rowGap, rpxTransformers, scale, scaleX, scaleY, sizing, skewX, skewY, space, spaceX, spaceXReverse, spaceY, spaceYReverse, stroke, style, svg, system, tableLayout, tables, textAlign, textDecoration, textOverflow, textShadow, textTransform, th, themeGetter, top, transform, transformOrigin, transforms, transition, transitionDelay, transitionDuration, transitionProperty, transitionTimingFunction, transitions, translateX, translateY, typography, up, userSelect, verticalAlign, visibility, whiteSpace, width, zIndex };\n//# sourceMappingURL=system.esm.js.map\n","import { useState, useEffect, useMemo, useRef, useCallback, createContext, useContext, createElement, useLayoutEffect, Fragment } from 'react';\nimport { getBreakpoints, system, getColor, getRadius, getBorderStyle, getShadow, getZIndex, getFont, getFontSize, getLineHeight, getFontWeight, getLetterSpacing, getTransition, getDuration, getAnimation, getTimingFunction, getTransform, getTransitionProperty, getInset, getSpace, getBorder, getBorderWidth, getSize, getBreakpointMax, getBreakpointMin } from '@xstyled/system';\nimport { obj, string, func, cascade } from '@xstyled/util';\n\n/* eslint-disable no-undef */\nfunction useThemeBreakpoints(theme) {\n return getBreakpoints({\n theme: theme\n });\n}\n/**\r\n * Minimum breakpoint width.\r\n * Null for the smallest breakpoint.\r\n */\n\nfunction useThemeMinValue(theme, key) {\n var breakpoints = useThemeBreakpoints(theme);\n var value = breakpoints[key];\n return value === 0 ? null : value;\n}\n/**\r\n * Maximum breakpoint width. Null for the largest (last) breakpoint.\r\n * The maximum value is calculated as the minimum of the next one less 0.02px\r\n * to work around the limitations of `min-` and `max-` prefixes and viewports with fractional widths.\r\n * See https://www.w3.org/TR/mediaqueries-4/#mq-min-max\r\n * Uses 0.02px rather than 0.01px to work around a current rounding bug in Safari.\r\n * See https://bugs.webkit.org/show_bug.cgi?id=178261\r\n */\n\n\nfunction useThemeMaxValue(theme, key) {\n var breakpoints = useThemeBreakpoints(theme);\n var breakPoint = breakpoints[key];\n return breakPoint === 0 ? null : breakPoint - 0.02;\n}\n\nfunction useViewportWidth() {\n var _React$useState = useState(typeof window === 'undefined' ? null : window.innerWidth),\n width = _React$useState[0],\n setWidth = _React$useState[1];\n\n useEffect(function () {\n function handleResize() {\n setWidth(window.innerWidth);\n } // Add the listener, then setWidth to avoid race.\n\n\n window.addEventListener('resize', handleResize);\n setWidth(window.innerWidth);\n return function () {\n return window.removeEventListener('resize', handleResize);\n };\n }, []);\n return width;\n}\nfunction useThemeBreakpoint(theme) {\n var breakpoints = useThemeBreakpoints(theme);\n var width = useViewportWidth();\n return useMemo(function () {\n return Object.keys(breakpoints).reverse().find(function (breakpoint) {\n return width !== null && width > breakpoints[breakpoint];\n }) || null;\n }, [breakpoints, width]);\n}\nfunction useThemeUp(theme, key) {\n var value = useThemeMinValue(theme, key);\n var width = useViewportWidth();\n return width !== null && value !== null && width >= value;\n}\nfunction useThemeDown(theme, key) {\n var value = useThemeMaxValue(theme, key);\n var width = useViewportWidth();\n return width !== null && value !== null && width < value;\n}\n\nfunction createBox() {\n return [\"&&{\", system, \"}\"];\n}\ncreateBox.meta = system.meta;\n\nvar getNumber = function getNumber(transform) {\n return function (value) {\n var num = Number(value);\n return transform(Number.isNaN(num) ? value : num);\n };\n};\n\nvar SPACES = /\\s+/;\n\nvar getMultiDimensions = function getMultiDimensions(transform) {\n return function (value) {\n var values = value.split(SPACES);\n return function (p) {\n return values.map(function (value) {\n return transform(value)(p);\n }).join(' ');\n };\n };\n};\n\nvar COMMA = /\\s*,\\s*/;\n\nvar getMultiValues = function getMultiValues(transform) {\n return function (value) {\n var values = value.split(COMMA);\n return function (p) {\n return values.map(function (value) {\n return transform(value)(p);\n }).join(',');\n };\n };\n};\n\nvar getNumberInset = /*#__PURE__*/getNumber(getInset);\nvar getNumberSpace = /*#__PURE__*/getNumber(getSpace);\nvar getMultiNumberSpace = /*#__PURE__*/getMultiDimensions(getNumberSpace);\nvar getNumberBorder = /*#__PURE__*/getNumber(getBorder);\nvar getNumberBorderWidth = /*#__PURE__*/getNumber(getBorderWidth);\nvar getMultiNumberBorderWidth = /*#__PURE__*/getMultiDimensions(getNumberBorderWidth);\nvar getNumberSize = /*#__PURE__*/getNumber(getSize);\nvar getMultiBorderStyle = /*#__PURE__*/getMultiDimensions(getBorderStyle);\nvar propGetters = {\n // getSpace\n margin: getMultiNumberSpace,\n 'margin-top': getNumberSpace,\n 'margin-bottom': getNumberSpace,\n 'margin-left': getNumberSpace,\n 'margin-right': getNumberSpace,\n padding: getMultiNumberSpace,\n 'padding-top': getNumberSpace,\n 'padding-bottom': getNumberSpace,\n 'padding-left': getNumberSpace,\n 'padding-right': getNumberSpace,\n gap: getMultiNumberSpace,\n 'grid-gap': getMultiNumberSpace,\n 'row-gap': getNumberSpace,\n 'grid-row-gap': getNumberSpace,\n 'column-gap': getNumberSpace,\n 'grid-column-gap': getNumberSpace,\n // getColor\n color: getColor,\n 'background-color': getColor,\n 'border-color': getColor,\n 'border-top-color': getColor,\n 'border-right-color': getColor,\n 'border-bottom-color': getColor,\n 'border-left-color': getColor,\n 'outline-color': getColor,\n fill: getColor,\n stroke: getColor,\n // getRadius\n 'border-radius': /*#__PURE__*/getMultiDimensions( /*#__PURE__*/getNumber(getRadius)),\n 'border-top-left-radius': /*#__PURE__*/getMultiDimensions( /*#__PURE__*/getNumber(getRadius)),\n 'border-top-right-radius': /*#__PURE__*/getMultiDimensions( /*#__PURE__*/getNumber(getRadius)),\n 'border-bottom-right-radius': /*#__PURE__*/getMultiDimensions( /*#__PURE__*/getNumber(getRadius)),\n 'border-bottom-left-radius': /*#__PURE__*/getMultiDimensions( /*#__PURE__*/getNumber(getRadius)),\n // getBorder\n border: getNumberBorder,\n 'border-top': getNumberBorder,\n 'border-right': getNumberBorder,\n 'border-bottom': getNumberBorder,\n 'border-left': getNumberBorder,\n // getBorderWidth\n 'border-width': getMultiNumberBorderWidth,\n 'border-top-width': getNumberBorderWidth,\n 'border-right-width': getNumberBorderWidth,\n 'border-bottom-width': getNumberBorderWidth,\n 'border-left-width': getNumberBorderWidth,\n 'outline-width': getNumberBorderWidth,\n // getBorderStyle\n 'border-style': getMultiBorderStyle,\n 'border-top-style': getBorderStyle,\n 'border-right-style': getBorderStyle,\n 'border-bottom-style': getBorderStyle,\n 'border-left-style': getBorderStyle,\n 'outline-style': getBorderStyle,\n // getShadow\n 'box-shadow': /*#__PURE__*/getMultiValues(getShadow),\n 'text-shadow': /*#__PURE__*/getMultiValues(getShadow),\n // getSize\n width: getNumberSize,\n height: getNumberSize,\n 'max-width': getNumberSize,\n 'max-height': getNumberSize,\n 'min-width': getNumberSize,\n 'min-height': getNumberSize,\n 'mask-size': /*#__PURE__*/getMultiValues(getNumberSize),\n // getZIndex\n 'z-index': /*#__PURE__*/getNumber(getZIndex),\n // getFont\n 'font-family': getFont,\n // getFontSize\n 'font-size': /*#__PURE__*/getNumber(getFontSize),\n // getLineHeight\n 'line-height': /*#__PURE__*/getNumber(getLineHeight),\n // getFontWeight\n 'font-weight': getFontWeight,\n // getLetterSpacing\n 'letter-spacing': /*#__PURE__*/getNumber(getLetterSpacing),\n // getTransition\n transition: getTransition,\n // getDuration\n 'transition-duration': getDuration,\n 'animation-duration': getDuration,\n // getAnimation\n animation: getAnimation,\n // getInset\n top: getNumberInset,\n right: getNumberInset,\n bottom: getNumberInset,\n left: getNumberInset,\n // getTimingFunction\n 'animation-timing-function': getTimingFunction,\n 'transition-timing-function': getTimingFunction,\n // getTransform\n transform: getTransform,\n // getTransitionProperty\n 'transition-property': getTransitionProperty\n};\n\nvar getMediaWidth = function getMediaWidth(getBreakpointBound) {\n return function (value) {\n return function (props) {\n var v = getBreakpointBound(getBreakpoints(props), value); // getters return null for smallest, undefined for not found, and otherwise\n // a px string. Since we MUST emit a matcher at this point, use 0px for the\n // smallest case (always true for min, never true for max).\n\n return v === null ? '0' : v || value;\n };\n };\n};\n\nvar mediaGetters = {\n 'min-width': /*#__PURE__*/getMediaWidth(getBreakpointMin),\n 'max-width': /*#__PURE__*/getMediaWidth(getBreakpointMax)\n};\n\n/* eslint-disable no-continue, no-loop-func, no-cond-assign */\n\nvar PROP_CHAR = \"[-\\\\w]\"; // prop value consists of non-semis and no curly braces unless backslash-escaped.\n// This uses [\\s\\S] instead of . because IE11 doesn't support the s flag.\n\nvar VALUE_CHAR = \"(?:\\\\\\\\[\\\\s\\\\S]|[^\\\\\\\\;{}])\"; // prettier-ignore\n\nvar PROP_PATT = \"(\" + PROP_CHAR + \"+)\" + // capture prop name\n\"(\\\\s*:\\\\s*)\" + // colon & whitespace\n\"(?=\\\\S)\" + ( // prop value starts with non-whitespace\n\"(\" + VALUE_CHAR + \"*?)\") + // capture prop value (non-greedy)\n\"(\\\\s*!important)?\" + // capture !important\n\"(\\\\s*;)\" // semi & whitespace\n; // simplistic but workable media query value.\n\nvar MEDIA_CHAR = \"[^{]\"; // prettier-ignore\n\nvar MEDIA_PATT = \"(@media\\\\b\\\\s*)\" + // start of media query\n\"(?=\\\\S)\" + ( // value starts with non-whitespace\n\"(\" + MEDIA_CHAR + \"+?)\") + // capture queries (non-greedy)\n\"(\\\\s*\\\\{)\" // brace & whitespace\n;\nvar MATCH_REGEXP = /*#__PURE__*/new RegExp(\"(?:\" + PROP_PATT + \"|\" + MEDIA_PATT + \")\", \"g\");\nfunction transform(rawValue) {\n if (typeof rawValue !== 'string') return rawValue;\n var matches;\n var lastIndex = 0;\n var values = [];\n\n var _loop = function _loop() {\n var _matches = matches,\n prop = _matches[1],\n colon = _matches[2],\n value = _matches[3],\n imp = _matches[4],\n semi = _matches[5],\n media = _matches[6],\n query = _matches[7],\n brace = _matches[8];\n\n if (media) {\n values.push(rawValue.slice(lastIndex, matches.index));\n values.push(media);\n mediaTransform(query).forEach(function (v) {\n return values.push(v);\n });\n values.push(brace);\n lastIndex = matches.index + matches[0].length;\n } else {\n var getter = propGetters[prop];\n\n if (getter) {\n values.push(rawValue.slice(lastIndex, matches.index));\n values.push(function (p) {\n return \"\" + prop + colon + getter(value)(p) + (imp || '') + semi;\n });\n lastIndex = matches.index + matches[0].length;\n }\n }\n };\n\n while (matches = MATCH_REGEXP.exec(rawValue)) {\n _loop();\n }\n\n values.push(rawValue.slice(lastIndex, rawValue.length));\n return values;\n} // media query prop/value pairs such as (min-width: 1024px)\n// prettier-ignore\n\nvar QUERY_REGEXP = /*#__PURE__*/new RegExp(\"(\\\\(\\\\s*)\" + ( // open paren, whitespace\n\"(\" + PROP_CHAR + \"+)\") + // capture prop name\n\"(\\\\s*:\\\\s*)\" + // colon & whitespace\n\"([^\\\\)]*?)\" + // capture prop value (non-greedy)\n\"(\\\\s*\\\\))\", // close paren, whitespace\n\"g\");\n\nfunction mediaTransform(rawValue) {\n var matches;\n var lastIndex = 0;\n var values = [];\n\n var _loop2 = function _loop2() {\n var _matches2 = matches,\n open = _matches2[1],\n prop = _matches2[2],\n colon = _matches2[3],\n value = _matches2[4],\n close = _matches2[5];\n var getter = mediaGetters[prop];\n\n if (getter) {\n values.push(rawValue.slice(lastIndex, matches.index));\n values.push(function (p) {\n return \"\" + open + prop + colon + getter(value)(p) + close;\n });\n lastIndex = matches.index + matches[0].length;\n }\n };\n\n while (matches = QUERY_REGEXP.exec(rawValue)) {\n _loop2();\n }\n\n values.push(rawValue.slice(lastIndex, rawValue.length));\n return values;\n}\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nvar join = function join() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return args.filter(Boolean).join('.');\n};\n\nvar toVarName = function toVarName(key) {\n return \"--\" + key.replace(/\\./g, '-');\n};\n\nvar toVarValue = function toVarValue(key, value) {\n return \"var(\" + toVarName(key) + \", \" + value + \")\";\n};\n\nvar toProp = function toProp(key, value) {\n return key + \": \" + value + \";\";\n};\n\nfunction toCustomPropertiesReferences(values, theme, keys, parent) {\n if (keys === void 0) {\n keys = Object.keys(values);\n }\n\n var next = Array.isArray(values) ? [] : {};\n\n for (var i in keys) {\n var key = keys[i];\n var value = values[key];\n var name = join(parent, key);\n\n if (obj(value)) {\n next[key] = toCustomPropertiesReferences(value, theme, Object.keys(value), name);\n continue;\n }\n\n if (string(value)) {\n next[key] = toVarValue(name, value);\n continue;\n }\n\n if (func(value)) {\n next[key] = toVarValue(name, cascade(value, {\n theme: theme\n }));\n continue;\n }\n }\n\n return next;\n}\nfunction toCustomPropertiesDeclarations(values, theme, keys, parent, state) {\n if (keys === void 0) {\n keys = Object.keys(values);\n }\n\n if (state === void 0) {\n state = {\n value: ''\n };\n }\n\n for (var i in keys) {\n var key = keys[i];\n var value = values[key];\n var name = join(parent, key);\n\n if (obj(value)) {\n toCustomPropertiesDeclarations(value, theme, Object.keys(value), name, state);\n continue;\n }\n\n if (string(value)) {\n state.value += toProp(toVarName(name), value);\n continue;\n }\n\n if (func(value)) {\n state.value += toProp(toVarName(name), cascade(value, {\n theme: theme\n }));\n continue;\n }\n }\n\n return state.value;\n}\n\nvar STORAGE_KEY = 'xstyled-color-mode';\n\nvar isLocalStorageAvailable = typeof window !== 'undefined' && /*#__PURE__*/function () {\n try {\n var key = 'xstyled-test-key';\n window.localStorage.setItem(key, key);\n window.localStorage.removeItem(key);\n return true;\n } catch (err) {\n return false;\n }\n}();\n\nvar storage = isLocalStorageAvailable ? {\n get: function get() {\n return window.localStorage.getItem(STORAGE_KEY);\n },\n set: function set(value) {\n window.localStorage.setItem(STORAGE_KEY, value);\n },\n clear: function clear() {\n return window.localStorage.removeItem(STORAGE_KEY);\n }\n} : {\n get: function get() {\n return null;\n },\n set: function set() {},\n clear: function clear() {}\n};\nvar COLOR_MODE_CLASS_PREFIX = 'xstyled-color-mode-';\n\nvar getColorModeClassName = function getColorModeClassName(mode) {\n return \"\" + COLOR_MODE_CLASS_PREFIX + mode;\n};\n\nvar XSTYLED_COLORS_PREFIX = 'xstyled-colors';\nvar SYSTEM_MODES = ['light', 'dark'];\n\nfunction getModeTheme(theme, mode) {\n return _extends({}, theme, {\n colors: _extends({}, theme.colors, theme.colors.modes[mode])\n });\n}\n\nvar getMediaQuery = function getMediaQuery(query) {\n return \"@media \" + query;\n};\n\nvar getColorModeQuery = function getColorModeQuery(mode) {\n return \"(prefers-color-scheme: \" + mode + \")\";\n};\n\nfunction checkHasColorModes(theme) {\n return Boolean(theme && theme.colors && theme.colors.modes);\n}\n\nfunction checkHasCustomPropertiesEnabled(theme) {\n return Boolean(theme && (theme.useCustomProperties === undefined || theme.useCustomProperties));\n}\n\nfunction checkHasMediaQueryEnabled(theme) {\n return Boolean(theme && (theme.useColorSchemeMediaQuery === undefined || theme.useColorSchemeMediaQuery));\n}\n\nfunction getInitialColorModeName(theme) {\n return theme.initialColorModeName || 'default';\n}\n\nfunction getDefaultColorModeName(theme) {\n return theme.defaultColorModeName || getInitialColorModeName(theme);\n}\n\nfunction getUsedColorKeys(modes) {\n var keys = [];\n\n for (var key in modes) {\n keys = [].concat(keys, Object.keys(modes[key]));\n }\n\n return keys;\n}\n\nfunction createColorStyles(theme, _temp) {\n var _ref = _temp === void 0 ? {} : _temp,\n _ref$targetSelector = _ref.targetSelector,\n targetSelector = _ref$targetSelector === void 0 ? 'body' : _ref$targetSelector;\n\n if (!checkHasColorModes(theme)) return null;\n\n var _theme$colors = theme.colors,\n modes = _theme$colors.modes,\n colors = _objectWithoutPropertiesLoose(_theme$colors, [\"modes\"]);\n\n var colorKeys = getUsedColorKeys(modes);\n var styles = toCustomPropertiesDeclarations(colors, theme, colorKeys, XSTYLED_COLORS_PREFIX);\n\n function getModePropertiesDeclarations(mode) {\n var modeTheme = getModeTheme(theme, mode);\n\n var _modeTheme$colors = modeTheme.colors,\n modes = _modeTheme$colors.modes,\n colors = _objectWithoutPropertiesLoose(_modeTheme$colors, [\"modes\"]);\n\n return toCustomPropertiesDeclarations(_extends({}, colors, modes[mode]), modeTheme, colorKeys, XSTYLED_COLORS_PREFIX);\n }\n\n if (theme.useColorSchemeMediaQuery !== false) {\n SYSTEM_MODES.forEach(function (mode) {\n if (modes[mode]) {\n var mediaQuery = getMediaQuery(getColorModeQuery(mode));\n styles += mediaQuery + \"{\" + getModePropertiesDeclarations(mode) + \"}\";\n }\n });\n }\n\n var initialModeName = getInitialColorModeName(theme);\n [initialModeName].concat(Object.keys(modes)).forEach(function (mode) {\n var key = \"&.\" + getColorModeClassName(mode);\n styles += key + \"{\" + getModePropertiesDeclarations(mode) + \"}\";\n });\n return targetSelector + \"{\" + styles + \"}\";\n}\n\nfunction getSystemModeMql(mode) {\n if (typeof window === 'undefined' || window.matchMedia === undefined) {\n return null;\n }\n\n var query = getColorModeQuery(mode);\n return window.matchMedia(query);\n}\n\nfunction useSystemMode(theme) {\n var configs = useMemo(function () {\n if (!checkHasMediaQueryEnabled(theme)) return [];\n return SYSTEM_MODES.map(function (mode) {\n if (!checkHasColorModes(theme)) return null;\n if (!theme.colors.modes[mode]) return null;\n var mql = getSystemModeMql(mode);\n return mql ? {\n mode: mode,\n mql: mql\n } : null;\n }).filter(Boolean);\n }, [theme]);\n\n var _React$useState = useState(function () {\n var config = configs.find(function (config) {\n return config.mql.matches;\n });\n return config ? config.mode : null;\n }),\n systemMode = _React$useState[0],\n setSystemMode = _React$useState[1];\n\n useEffect(function () {\n var cleans = configs.map(function (_ref2) {\n var mode = _ref2.mode,\n mql = _ref2.mql;\n\n var handler = function handler(_ref3) {\n var matches = _ref3.matches;\n\n if (matches) {\n setSystemMode(mode);\n } else {\n setSystemMode(function (previousMode) {\n return previousMode === mode ? null : mode;\n });\n }\n };\n\n mql.addEventListener('change', handler);\n return function () {\n return mql.removeEventListener('change', handler);\n };\n });\n return function () {\n return cleans.forEach(function (clean) {\n return clean();\n });\n };\n });\n return systemMode;\n}\n\nvar useIsomorphicLayoutEffect = typeof window !== 'undefined' ? useLayoutEffect : useEffect;\nfunction useColorModeState(theme, _temp2) {\n var _ref4 = _temp2 === void 0 ? {} : _temp2,\n target = _ref4.target;\n\n var systemMode = useSystemMode(theme);\n var defaultColorMode = getDefaultColorModeName(theme);\n var initialColorMode = getInitialColorModeName(theme);\n\n var _React$useState2 = useState(function () {\n if (!checkHasColorModes(theme)) return null;\n return defaultColorMode;\n }),\n mode = _React$useState2[0],\n setMode = _React$useState2[1]; // Add mode className\n\n\n var customPropertiesEnabled = checkHasCustomPropertiesEnabled(theme);\n var manualSetRef = useRef(false);\n var manuallySetMode = useCallback(function (value) {\n manualSetRef.current = true;\n setMode(value);\n }, []); // Set initial color mode in lazy\n\n useIsomorphicLayoutEffect(function () {\n if (!checkHasColorModes(theme)) return;\n var storedMode = storage.get();\n var initialMode = storedMode || systemMode || defaultColorMode;\n\n if (mode !== initialMode) {\n setMode(storedMode || systemMode || defaultColorMode);\n }\n }, []); // Store mode preference\n\n useIsomorphicLayoutEffect(function () {\n if (manualSetRef.current) {\n if (mode) {\n storage.set(mode);\n } else {\n storage.clear();\n }\n }\n }, [mode]); // Sync system mode\n\n useIsomorphicLayoutEffect(function () {\n var storedMode = storage.get();\n if (storedMode) return;\n var targetMode = systemMode || defaultColorMode;\n if (targetMode === mode) return;\n setMode(targetMode);\n }, [mode, systemMode, defaultColorMode]); // Add and remove class names\n\n useIsomorphicLayoutEffect(function () {\n if (!mode) return undefined;\n if (!customPropertiesEnabled) return undefined;\n var stored = storage.get();\n var initial = initialColorMode !== mode;\n if (!stored && !initial) return undefined;\n var className = getColorModeClassName(mode);\n var usedTarget = target || document.body;\n usedTarget.classList.add(className);\n return function () {\n usedTarget.classList.remove(className);\n };\n }, [customPropertiesEnabled, target, mode, initialColorMode]);\n return [mode, manuallySetMode];\n}\nfunction useColorModeTheme(theme, mode) {\n var _React$useState3 = useState(mode),\n initialMode = _React$useState3[0];\n\n var customPropertiesTheme = useMemo(function () {\n if (!initialMode) return null;\n if (!checkHasCustomPropertiesEnabled(theme)) return null;\n if (!checkHasColorModes(theme)) return theme;\n\n var _theme$colors2 = theme.colors,\n modes = _theme$colors2.modes,\n colors = _objectWithoutPropertiesLoose(_theme$colors2, [\"modes\"]);\n\n var colorKeys = getUsedColorKeys(modes);\n return _extends({}, theme, {\n colors: _extends({}, colors, toCustomPropertiesReferences(colors, theme, colorKeys, XSTYLED_COLORS_PREFIX), {\n modes: modes\n }),\n __rawColors: theme.colors\n });\n }, [initialMode, theme]);\n var swapModeTheme = useMemo(function () {\n if (!mode) return null;\n if (checkHasCustomPropertiesEnabled(theme)) return null;\n if (!checkHasColorModes(theme)) return theme;\n\n if (mode === getInitialColorModeName(theme)) {\n return _extends({}, theme, {\n __colorMode: mode\n });\n }\n\n return _extends({}, theme, {\n colors: _extends({}, theme.colors, theme.colors.modes[mode]),\n __colorMode: mode,\n __rawColors: theme.colors\n });\n }, [theme, mode]);\n return customPropertiesTheme || swapModeTheme;\n}\nvar ColorModeContext = /*#__PURE__*/createContext(null);\nfunction useColorMode() {\n var colorModeState = useContext(ColorModeContext);\n\n if (!colorModeState) {\n throw new Error(\"[useColorMode] requires the ColorModeProvider component\");\n }\n\n return colorModeState;\n}\nfunction createColorModeProvider(_ref5) {\n var ThemeContext = _ref5.ThemeContext,\n ThemeProvider = _ref5.ThemeProvider,\n ColorModeStyle = _ref5.ColorModeStyle;\n\n function ColorModeProvider(_ref6) {\n var children = _ref6.children,\n target = _ref6.target,\n targetSelector = _ref6.targetSelector;\n var theme = useContext(ThemeContext);\n\n if (!theme) {\n throw new Error('[ColorModeProvider] requires ThemeProvider upper in the tree');\n }\n\n var colorState = useColorModeState(theme, {\n target: target\n });\n var colorModeTheme = useColorModeTheme(theme, colorState[0]);\n return createElement(Fragment, null, createElement(ColorModeStyle, {\n targetSelector: targetSelector\n }), createElement(ThemeProvider, {\n theme: colorModeTheme\n }, createElement(ColorModeContext.Provider, {\n value: colorState\n }, children)));\n }\n\n return ColorModeProvider;\n}\n\nfunction getInitScript(_temp3) {\n var _ref7 = _temp3 === void 0 ? {} : _temp3,\n _ref7$target = _ref7.target,\n target = _ref7$target === void 0 ? 'document.body' : _ref7$target;\n\n return \"(function() { try {\\n var mode = localStorage.getItem('\" + STORAGE_KEY + \"');\\n if (mode) \" + target + \".classList.add('\" + COLOR_MODE_CLASS_PREFIX + \"' + mode);\\n } catch (e) {} })();\";\n}\n\nfunction getColorModeInitScriptElement(options) {\n return createElement(\"script\", {\n key: \"xstyled-color-mode-init\",\n dangerouslySetInnerHTML: {\n __html: getInitScript(options)\n }\n });\n}\nfunction getColorModeInitScriptTag(options) {\n return \"<script>\" + getInitScript(options) + \"</script>\";\n}\n\nexport { ColorModeContext, createBox, createColorModeProvider, createColorStyles, getColorModeInitScriptElement, getColorModeInitScriptTag, propGetters, transform, useColorMode, useColorModeState, useColorModeTheme, useThemeBreakpoint, useThemeBreakpoints, useThemeDown, useThemeUp, useViewportWidth };\n//# sourceMappingURL=core.esm.js.map\n","import styled$1, { css as css$1, createGlobalStyle as createGlobalStyle$1, ThemeContext, ThemeProvider } from 'styled-components';\nexport { ServerStyleSheet, StyleSheetManager, ThemeConsumer, ThemeContext, ThemeProvider, isStyledComponent, keyframes, withTheme } from 'styled-components';\nimport { flattenStrings } from '@xstyled/util';\nimport { transform, createColorModeProvider, createColorStyles, useThemeBreakpoints, useThemeBreakpoint, useThemeUp, useThemeDown } from '@xstyled/core';\nexport { getColorModeInitScriptElement, getColorModeInitScriptTag, useColorMode, useViewportWidth } from '@xstyled/core';\nimport { compose, system, th, createPreflight } from '@xstyled/system';\nexport * from '@xstyled/system';\nimport { useContext, useMemo } from 'react';\n\n/* eslint-disable no-continue, no-loop-func, no-cond-assign */\nfunction css() {\n var scCssArgs = css$1.apply(void 0, arguments);\n var flattenedArgs = flattenStrings(scCssArgs);\n return flattenedArgs.map(transform);\n}\n\nvar createGlobalStyle = function createGlobalStyle() {\n // @ts-ignore\n return createGlobalStyle$1([css.apply(void 0, arguments)]);\n};\n\nfunction _taggedTemplateLiteralLoose(strings, raw) {\n if (!raw) {\n raw = strings.slice(0);\n }\n\n strings.raw = raw;\n return strings;\n}\n\n/* eslint-disable no-continue, no-loop-func, no-cond-assign */\nvar tags = /*#__PURE__*/Object.keys(styled$1);\nvar createX = function createX(generator) {\n // @ts-ignore\n var x = {\n extend: function extend() {\n for (var _len = arguments.length, generators = new Array(_len), _key = 0; _key < _len; _key++) {\n generators[_key] = arguments[_key];\n }\n\n return createX(compose.apply(void 0, [generator].concat(generators)));\n }\n };\n tags.forEach(function (tag) {\n // @ts-ignore\n x[tag] = styled$1(tag).withConfig({\n shouldForwardProp: function shouldForwardProp(prop, defaultValidatorFn) {\n if (typeof prop === 'string' && generator.meta.props.includes(prop)) return false;\n return defaultValidatorFn(prop);\n }\n })(function () {\n return [\"&&{\", generator, \"}\"];\n });\n });\n return x;\n};\n\nvar x = /*#__PURE__*/createX(system); // Retro-compatibility\n\nvar Box = x.div;\n\nvar _templateObject;\n\nfunction getCreateStyle(baseCreateStyle) {\n // @ts-ignore\n var createStyle = function createStyle() {\n return baseCreateStyle(_templateObject || (_templateObject = _taggedTemplateLiteralLoose([\"\", \"\"])), css.apply(void 0, arguments));\n };\n\n createStyle.attrs = function (attrs) {\n var nextCreateStyle = baseCreateStyle.attrs(attrs);\n return getCreateStyle(nextCreateStyle);\n };\n\n createStyle.withConfig = function (config) {\n var nextCreateStyle = baseCreateStyle.withConfig(config);\n return getCreateStyle(nextCreateStyle);\n };\n\n return createStyle;\n}\n\nvar styled = function styled(component) {\n return getCreateStyle(styled$1(component));\n}; // @ts-ignore\n\nstyled.box = /*#__PURE__*/styled(x.div);\nObject.keys(styled$1).forEach(function (key) {\n // @ts-ignore\n styled[key] = styled(key); // @ts-ignore\n\n styled[key + \"Box\"] = styled(x[key]);\n});\n\nvar _templateObject$1;\nvar ColorModeStyle = /*#__PURE__*/createGlobalStyle$1(_templateObject$1 || (_templateObject$1 = /*#__PURE__*/_taggedTemplateLiteralLoose([\"\", \"\"])), function (p) {\n return createColorStyles(p.theme, {\n targetSelector: p.targetSelector\n });\n});\nvar ColorModeProvider = /*#__PURE__*/createColorModeProvider({\n ThemeContext: ThemeContext,\n ThemeProvider: ThemeProvider,\n ColorModeStyle: ColorModeStyle\n});\n\nvar useTheme = function useTheme() {\n return useContext(ThemeContext);\n};\n\nvar createUseGetter = function createUseGetter(getter) {\n return function (value, defaultValue) {\n var theme = useTheme();\n return useMemo(function () {\n return getter(value, defaultValue)({\n theme: theme\n });\n }, [value, defaultValue, theme]);\n };\n};\n\nvar useTh = /*#__PURE__*/createUseGetter(th);\nvar useAngle = /*#__PURE__*/createUseGetter(th.angle);\nvar useAnimation = /*#__PURE__*/createUseGetter(th.animation);\nvar useBorder = /*#__PURE__*/createUseGetter(th.border);\nvar useBorderColor = /*#__PURE__*/createUseGetter(th.borderColor);\nvar useBorderStyle = /*#__PURE__*/createUseGetter(th.borderStyle);\nvar useBorderWidth = /*#__PURE__*/createUseGetter(th.borderWidth);\nvar useColor = /*#__PURE__*/createUseGetter(th.color);\nvar useDuration = /*#__PURE__*/createUseGetter(th.duration);\nvar useFont = /*#__PURE__*/createUseGetter(th.font);\nvar useFontSize = /*#__PURE__*/createUseGetter(th.fontSize);\nvar useFontWeight = /*#__PURE__*/createUseGetter(th.fontWeight);\nvar useInset = /*#__PURE__*/createUseGetter(th.inset);\nvar useLetterSpacing = /*#__PURE__*/createUseGetter(th.letterSpacing);\nvar useLineHeight = /*#__PURE__*/createUseGetter(th.lineHeight);\nvar usePercent = /*#__PURE__*/createUseGetter(th.percent);\nvar usePx = /*#__PURE__*/createUseGetter(th.px);\nvar useRadius = /*#__PURE__*/createUseGetter(th.radius);\nvar useRingWidth = /*#__PURE__*/createUseGetter(th.ringWidth);\nvar useShadow = /*#__PURE__*/createUseGetter(th.shadow);\nvar useSize = /*#__PURE__*/createUseGetter(th.size);\nvar useSpace = /*#__PURE__*/createUseGetter(th.space);\nvar useTimingFunctions = /*#__PURE__*/createUseGetter(th.timingFunctions);\nvar useTransform = /*#__PURE__*/createUseGetter(th.transform);\nvar useTransition = /*#__PURE__*/createUseGetter(th.transition);\nvar useTransitionProperty = /*#__PURE__*/createUseGetter(th.transitionProperty);\nvar useZIndex = /*#__PURE__*/createUseGetter(th.zIndex);\n\nfunction useBreakpoints() {\n return useThemeBreakpoints(useTheme());\n}\nfunction useBreakpoint() {\n return useThemeBreakpoint(useTheme());\n}\nfunction useUp(key) {\n return useThemeUp(useTheme(), key);\n}\nfunction useDown(key) {\n return useThemeDown(useTheme(), key);\n}\n\nvar Preflight = /*#__PURE__*/createPreflight({\n createGlobalStyle: createGlobalStyle$1\n});\n\nexport default styled;\nexport { Box, ColorModeProvider, Preflight, createGlobalStyle, createX, css, useAngle, useAnimation, useBorder, useBorderColor, useBorderStyle, useBorderWidth, useBreakpoint, useBreakpoints, useColor, useDown, useDuration, useFont, useFontSize, useFontWeight, useInset, useLetterSpacing, useLineHeight, usePercent, usePx, useRadius, useRingWidth, useShadow, useSize, useSpace, useTh, useTheme, useTimingFunctions, useTransform, useTransition, useTransitionProperty, useUp, useZIndex, x };\n//# sourceMappingURL=styled-components.esm.js.map\n","const baseStyle = {};\r\nconst defaultProps = {\r\n size: 'md',\r\n variant: 'light'\r\n};\r\nconst sizes = {\r\n sm: {\r\n item: {\r\n minH: '32px',\r\n pt: '8px'\r\n }\r\n },\r\n md: {\r\n item: {\r\n minH: '40px',\r\n pt: '12px'\r\n }\r\n },\r\n lg: {\r\n item: {\r\n minH: '48px',\r\n pt: '14px'\r\n }\r\n }\r\n};\r\nconst variants = {\r\n light: {\r\n container: {\r\n bg: 'white',\r\n borderColor: 'sandstone.main'\r\n },\r\n item: {\r\n borderColor: 'sandstone.main',\r\n itemTitleHoverBg: 'skyBlue.95',\r\n expandedItemTitleHoverBg: 'skyBlue.90'\r\n },\r\n icon: {\r\n color: 'sandstone.10'\r\n }\r\n },\r\n dark: {\r\n container: {\r\n bg: 'darkBlue.main',\r\n borderColor: 'white',\r\n color: 'white'\r\n },\r\n item: {\r\n borderColor: 'white',\r\n disabledBg: 'transparent',\r\n itemTitleHoverBg: 'seaBlue.35',\r\n expandedItemTitleHoverBg: 'seaBlue.25'\r\n },\r\n icon: {\r\n color: 'digiGreen.main'\r\n }\r\n }\r\n};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {};\r\nconst defaultProps = {\r\n size: 'md',\r\n variant: 'subtleGrey',\r\n fontWeight: 'medium'\r\n};\r\nconst sizes = {\r\n sm: {\r\n fontSize: 'xs',\r\n h: 24,\r\n iconSize: 'xs'\r\n },\r\n md: {\r\n fontSize: 'sm',\r\n h: 32,\r\n iconSize: 'sm'\r\n },\r\n lg: {\r\n fontSize: 'md',\r\n h: 40,\r\n iconSize: 'md'\r\n },\r\n xl: {\r\n fontSize: 'lg',\r\n h: 48,\r\n iconSize: 'xl'\r\n },\r\n xxl: {\r\n fontSize: 'lg',\r\n h: 56,\r\n iconSize: 'xxl'\r\n }\r\n};\r\nconst variants = {\r\n subtleGrey: {\r\n bg: 'sandstone.90',\r\n hoverBg: 'sandstone.85',\r\n borderColor: 'sandstone.90',\r\n color: 'sandstone.20',\r\n activeBg: 'sandstone.79'\r\n },\r\n subtleBlue: {\r\n bg: 'skyBlue.95',\r\n hoverBg: 'skyBlue.hover',\r\n activeBg: 'skyBlue.85',\r\n borderColor: 'skyBlue.95',\r\n color: 'seaBlue.main'\r\n },\r\n subtleRed: {\r\n bg: 'energyRed.95',\r\n borderColor: 'energyRed.95',\r\n hoverBg: 'energyRed.90',\r\n activeBg: 'energyRed.85',\r\n color: 'energyRed.45'\r\n },\r\n subtleYellow: {\r\n bg: 'sunflower.85',\r\n hoverBg: 'sunflower.70',\r\n activeBg: 'sunflower.65',\r\n borderColor: 'sunflower.85',\r\n color: 'sunflower.20'\r\n },\r\n subtleGreen: {\r\n bg: 'landGreen.95',\r\n hoverBg: 'landGreen.90',\r\n borderColor: 'landGreen.95',\r\n color: 'landGreen.30',\r\n activeBg: 'landGreen.85'\r\n },\r\n subtleLavender: {\r\n bg: 'hsl(232, 58%, 90%)',\r\n hoverBg: 'hsl(232, 58%, 85%)',\r\n borderColor: 'hsl(232, 58%, 90%)',\r\n color: 'hsl(232, 58%, 50%)',\r\n activeBg: 'hsl(232, 58%, 80%)'\r\n },\r\n subtleEucalyptus: {\r\n bg: 'hsl(178, 80%, 85%)',\r\n hoverBg: 'hsl(178, 80%, 80%)',\r\n borderColor: 'hsl(178, 80%, 85%)',\r\n color: 'hsl(178, 80%, 20%)',\r\n activeBg: 'hsl(178, 80%, 75%)'\r\n },\r\n subtleTerracotta: {\r\n bg: 'hsl(34, 100%, 85%)',\r\n hoverBg: 'hsl(34, 100%, 80%)',\r\n borderColor: 'hsl(34, 100%, 85%)',\r\n color: 'hsl(34, 100%, 20%)',\r\n activeBg: 'hsl(34, 100%, 75%)'\r\n },\r\n /** solids next */\r\n solidBlue: {\r\n bg: 'seaBlue.main',\r\n hoverBg: 'seaBlue.35',\r\n activeBg: 'seaBlue.40',\r\n borderColor: 'seaBlue.main',\r\n color: 'white'\r\n },\r\n solidDarkBlue: {\r\n bg: 'darkBlue.18',\r\n hoverBg: 'darkBlue.25',\r\n activeBg: 'darkBlue.35',\r\n borderColor: 'darkBlue.18',\r\n color: 'white'\r\n },\r\n solidRed: {\r\n bg: 'energyRed.45',\r\n hoverBg: 'energyRed.54',\r\n activeBg: 'energyRed.60',\r\n borderColor: 'energyRed.45',\r\n color: 'white'\r\n },\r\n solidYellow: {\r\n bg: 'sunflower.50',\r\n hoverBg: 'sunflower.80',\r\n activeBg: 'sunflower.85',\r\n borderColor: 'sunflower.50',\r\n color: 'sunflower.15'\r\n },\r\n solidGreen: {\r\n bg: 'landGreen.35',\r\n hoverBg: 'landGreen.41',\r\n activeBg: 'landGreen.45',\r\n borderColor: 'landGreen.35',\r\n color: 'white'\r\n },\r\n solidLavender: {\r\n bg: 'hsl(232, 58%, 60%)',\r\n hoverBg: 'hsl(232, 58%, 65%)',\r\n borderColor: 'hsl(232, 58%, 60%)',\r\n color: 'white',\r\n activeBg: 'hsl(232, 58%, 70%)'\r\n },\r\n solidEucalyptus: {\r\n bg: 'hsl(178, 80%, 25%)',\r\n hoverBg: 'hsl(178, 80%, 35%)',\r\n borderColor: 'hsl(178, 80%, 25%)',\r\n color: 'white',\r\n activeBg: 'hsl(178, 80%, 42%)'\r\n },\r\n solidTerracotta: {\r\n bg: 'hsl(34, 100%, 30%)',\r\n hoverBg: 'hsl(34, 100%, 40%)',\r\n borderColor: 'hsl(34, 100%, 35%)',\r\n color: 'white',\r\n activeBg: 'hsl(34, 100%, 45%)'\r\n },\r\n /** internal, used in *header* next */\r\n primaryLight: {\r\n bg: 'buttonTypePrimaryDefaultBackgroundColorLight',\r\n borderColor: 'buttonTypePrimaryDefaultBorderColorLight',\r\n color: 'buttonTypePrimaryDefaultTextColorLight',\r\n hoverBg: 'buttonTypePrimaryHoverBackgroundColorLight',\r\n hoverBorderColor: 'buttonTypePrimaryHoverBorderColorLight',\r\n hoverColor: 'buttonTypePrimaryHoverTextColorLight',\r\n activeBg: 'buttonTypePrimaryActiveBackgroundColorLight',\r\n activeBorderColor: 'buttonTypePrimaryActiveBorderColorLight',\r\n activeColor: 'buttonTypePrimaryActiveTextColorLight'\r\n }\r\n};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {};\r\nconst defaultProps = {\r\n size: 'md',\r\n variant: 'subtleSandstone',\r\n fontWeight: 'medium'\r\n};\r\nconst parts = ['container', 'icon', 'text'];\r\nconst sizes = {\r\n xs: {\r\n container: {\r\n borderRadius: 'lg',\r\n fontSize: 'sm',\r\n h: 20,\r\n spaceX: 4\r\n },\r\n icon: {\r\n size: 'xs'\r\n }\r\n },\r\n sm: {\r\n container: {\r\n fontSize: 'sm',\r\n h: 24,\r\n spaceX: 4\r\n },\r\n icon: {\r\n size: 'xs'\r\n }\r\n },\r\n md: {\r\n container: {\r\n fontSize: 'sm',\r\n h: 32,\r\n spaceX: 6\r\n },\r\n icon: {\r\n size: 'sm'\r\n }\r\n },\r\n lg: {\r\n container: {\r\n fontSize: 'md',\r\n h: 40,\r\n spaceX: 8\r\n },\r\n icon: {\r\n size: 'md'\r\n }\r\n }\r\n};\r\nconst variants = {\r\n subtleSandstone: {\r\n container: {\r\n bg: 'sandstone.90',\r\n color: 'sandstone.20',\r\n borderColor: 'transparent'\r\n }\r\n },\r\n subtleEarth: {\r\n container: {\r\n bg: 'earth.95',\r\n color: 'earth.20'\r\n }\r\n },\r\n subtleBlue: {\r\n container: {\r\n bg: 'skyBlue.95',\r\n color: 'seaBlue.main'\r\n }\r\n },\r\n subtleBlue2: {\r\n container: {\r\n bg: 'skyBlue.95',\r\n color: 'skyBlue.20'\r\n }\r\n },\r\n subtleRed: {\r\n container: {\r\n bg: 'energyRed.95',\r\n color: 'energyRed.45'\r\n }\r\n },\r\n subtleYellow: {\r\n container: {\r\n bg: 'sunflower.85',\r\n color: 'sunflower.20'\r\n }\r\n },\r\n subtleGreen: {\r\n container: {\r\n bg: 'landGreen.95',\r\n color: 'landGreen.30'\r\n }\r\n },\r\n /** solids next */\r\n solidBlue: {\r\n container: {\r\n bg: 'skyBlue.65',\r\n color: 'skyBlue.20'\r\n }\r\n },\r\n solidDarkBlue: {\r\n container: {\r\n bg: 'darkBlue.18',\r\n borderColor: 'darkBlue.18',\r\n color: 'white'\r\n }\r\n },\r\n solidRed: {\r\n container: {\r\n bg: 'energyRed.45',\r\n color: 'white'\r\n }\r\n },\r\n solidYellow: {\r\n container: {\r\n bg: 'sunflower.50',\r\n color: 'sunflower.15'\r\n }\r\n },\r\n solidGreen: {\r\n container: {\r\n bg: 'landGreen.35',\r\n color: 'white'\r\n }\r\n }\r\n};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n parts,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {};\r\nconst defaultProps = {};\r\nconst sizes = {};\r\nconst variants = {};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {};\r\nconst defaultProps = {\r\n size: 'md',\r\n variant: 'dark'\r\n};\r\nconst sizes = {\r\n xs: {\r\n item: {\r\n fontSize: 12,\r\n lineHeight: '18px'\r\n },\r\n separator: {\r\n size: 'xs'\r\n }\r\n },\r\n sm: {\r\n item: {\r\n fontSize: 14,\r\n lineHeight: '22px'\r\n },\r\n separator: {\r\n size: 'sm'\r\n }\r\n },\r\n md: {\r\n item: { fontSize: 16, lineHeight: '26px' },\r\n separator: {\r\n size: 'md'\r\n }\r\n },\r\n lg: {\r\n item: { fontSize: 18, lineHeight: '32px' },\r\n separator: {\r\n size: 'lg'\r\n }\r\n }\r\n};\r\nconst variants = {\r\n dark: {\r\n item: {\r\n color: 'seaBlue.main'\r\n },\r\n main: {\r\n bg: 'transparent'\r\n },\r\n separator: {\r\n pathFill: 'sandstone.10'\r\n }\r\n },\r\n white: {\r\n item: {\r\n color: 'white'\r\n },\r\n main: {\r\n bg: 'darkBlue.main'\r\n },\r\n separator: {\r\n pathFill: 'white'\r\n }\r\n },\r\n light: {\r\n item: {\r\n color: 'digiGreen.main'\r\n },\r\n main: {\r\n bg: 'darkBlue.main'\r\n },\r\n separator: {\r\n pathFill: 'white'\r\n }\r\n }\r\n};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {};\r\nconst defaultProps = {\r\n size: 'md',\r\n variant: 'primaryDark',\r\n fontWeight: 'medium'\r\n};\r\nconst parts = ['container', 'icon', 'text'];\r\nconst sizes = {\r\n sm: {\r\n container: {\r\n fontSize: 'sm',\r\n h: 24,\r\n minW: 48,\r\n spaceX: 4\r\n },\r\n icon: {\r\n size: 'xs'\r\n },\r\n text: {}\r\n },\r\n md: {\r\n container: {\r\n fontSize: 'sm',\r\n h: 32,\r\n minW: 64,\r\n spaceX: 6\r\n },\r\n icon: {\r\n size: 'sm'\r\n },\r\n text: {}\r\n },\r\n lg: {\r\n container: {\r\n fontSize: 'md',\r\n h: 40,\r\n minW: 80,\r\n spaceX: 8\r\n },\r\n icon: {\r\n size: 'md'\r\n },\r\n text: {}\r\n },\r\n xl: {\r\n container: {\r\n fontSize: 'lg',\r\n h: 48,\r\n minW: 96,\r\n spaceX: 10\r\n },\r\n icon: {\r\n size: 'lg'\r\n },\r\n text: {}\r\n }\r\n};\r\nconst variants = {\r\n primaryDark: {\r\n container: {\r\n bg: 'buttonTypePrimaryDefaultBackgroundColorDark',\r\n borderColor: 'buttonTypePrimaryDefaultBorderColorDark',\r\n color: 'buttonTypePrimaryDefaultTextColorDark',\r\n hoverBg: 'buttonTypePrimaryHoverBackgroundColorDark',\r\n hoverBorderColor: 'buttonTypePrimaryHoverBorderColorDark',\r\n hoverColor: 'buttonTypePrimaryHoverTextColorDark',\r\n activeBg: 'buttonTypePrimaryActiveBackgroundColorDark',\r\n activeBorderColor: 'buttonTypePrimaryActiveBorderColorDark',\r\n activeColor: 'buttonTypePrimaryActiveTextColorDark'\r\n }\r\n },\r\n primaryLight: {\r\n container: {\r\n bg: 'buttonTypePrimaryDefaultBackgroundColorLight',\r\n borderColor: 'buttonTypePrimaryDefaultBorderColorLight',\r\n color: 'buttonTypePrimaryDefaultTextColorLight',\r\n hoverBg: 'buttonTypePrimaryHoverBackgroundColorLight',\r\n hoverBorderColor: 'buttonTypePrimaryHoverBorderColorLight',\r\n hoverColor: 'buttonTypePrimaryHoverTextColorLight',\r\n activeBg: 'buttonTypePrimaryActiveBackgroundColorLight',\r\n activeBorderColor: 'buttonTypePrimaryActiveBorderColorLight',\r\n activeColor: 'buttonTypePrimaryActiveTextColorLight'\r\n }\r\n },\r\n secondaryDark: {\r\n container: {\r\n bg: 'buttonTypeSecondaryDefaultBackgroundColorDark',\r\n borderColor: 'buttonTypeSecondaryDefaultBorderColorDark',\r\n color: 'buttonTypeSecondaryDefaultTextColorDark',\r\n // discussed with Jesus, the decision was made on 2-may-2022 that OneDesign designers will update to VUI shade\r\n // hover will change from 90 to 85\r\n hoverBg: 'buttonTypeSecondaryHoverBackgroundColorDark',\r\n hoverBorderColor: 'buttonTypeSecondaryHoverBorderColorDark',\r\n hoverColor: 'buttonTypeSecondaryHoverTextColorDark',\r\n // discussed with Jesus, the decision was made on 2-may-2022 that OneDesign designers will update to VUI shade\r\n // active will change from 95% to 90%\r\n activeBg: 'buttonTypeSecondaryActiveBackgroundColorDark',\r\n activeBorderColor: 'buttonTypeSecondaryActiveBorderColorDark',\r\n activeColor: 'buttonTypeSecondaryActiveTextColorDark'\r\n }\r\n },\r\n secondaryLight: {\r\n container: {\r\n bg: 'buttonTypeSecondaryDefaultBackgroundColorLight',\r\n borderColor: 'buttonTypeSecondaryDefaultBorderColorLight',\r\n color: 'buttonTypeSecondaryDefaultTextColorLight',\r\n hoverBg: 'buttonTypeSecondaryHoverBackgroundColorLight',\r\n hoverBorderColor: 'buttonTypeSecondaryHoverBorderColorLight',\r\n hoverColor: 'buttonTypeSecondaryHoverTextColorLight',\r\n activeBg: 'buttonTypeSecondaryActiveBackgroundColorLight',\r\n activeBorderColor: 'buttonTypeSecondaryActiveBorderColorLight',\r\n activeColor: 'buttonTypeSecondaryActiveTextColorLight'\r\n }\r\n },\r\n tertiaryDark: {\r\n container: {\r\n bg: 'buttonTypeTertiaryDefaultBackgroundColorDark',\r\n borderColor: 'buttonTypeTertiaryDefaultBorderColorDark',\r\n color: 'buttonTypeTertiaryDefaultTextColorDark',\r\n hoverBg: 'buttonTypeTertiaryHoverBackgroundColorDark',\r\n hoverBorderColor: 'buttonTypeTertiaryHoverBorderColorDark',\r\n hoverColor: 'buttonTypeTertiaryHoverTextColorDark',\r\n activeBg: 'buttonTypeTertiaryActiveBackgroundColorDark',\r\n activeBorderColor: 'buttonTypeTertiaryActiveBorderColorDark',\r\n activeColor: 'buttonTypeTertiaryActiveTextColorDark'\r\n }\r\n },\r\n tertiaryLight: {\r\n container: {\r\n bg: 'buttonTypeTertiaryDefaultBackgroundColorLight',\r\n borderColor: 'buttonTypeTertiaryDefaultBorderColorLight',\r\n color: 'buttonTypeTertiaryDefaultTextColorLight',\r\n hoverBg: 'buttonTypeTertiaryHoverBackgroundColorLight',\r\n hoverBorderColor: 'buttonTypeTertiaryHoverBorderColorLight',\r\n hoverColor: 'buttonTypeTertiaryHoverTextColorLight',\r\n activeBg: 'buttonTypeTertiaryActiveBackgroundColorLight',\r\n activeBorderColor: 'buttonTypeTertiaryActiveBorderColorLight',\r\n activeColor: 'buttonTypeTertiaryActiveTextColorLight'\r\n }\r\n },\r\n solidBlue: {\r\n container: {\r\n bg: 'seaBlue.main',\r\n borderColor: 'seaBlue.main',\r\n color: 'white',\r\n disabledBg: 'darkBlue.75',\r\n disabledBorderColor: 'darkBlue.75',\r\n disabledColor: 'white',\r\n // proper order next: hover, focus, active\r\n hoverBg: 'seaBlue.20',\r\n hoverBorderColor: 'seaBlue.20',\r\n focusBg: 'seaBlue.main',\r\n activeBg: 'seaBlue.35',\r\n activeBorderColor: 'seaBlue.35'\r\n }\r\n },\r\n blueOutlined: {\r\n container: {\r\n bg: 'white',\r\n borderColor: 'seaBlue.main',\r\n color: 'seaBlue.main',\r\n disabledBg: 'white',\r\n disabledBorderColor: 'darkBlue.75',\r\n disabledColor: 'darkBlue.75',\r\n hoverBg: 'skyBlue.85',\r\n hoverBorderColor: 'seaBlue.35',\r\n activeBg: 'skyBlue.90',\r\n activeBorderColor: 'seaBlue.35'\r\n }\r\n },\r\n blueText: {\r\n container: {\r\n bg: 'transparent',\r\n borderColor: 'transparent',\r\n color: 'seaBlue.main',\r\n disabledBg: 'white',\r\n disabledBorderColor: 'white',\r\n disabledColor: 'darkBlue.75',\r\n hoverBg: 'skyBlue.85',\r\n hoverBorderColor: 'skyBlue.85',\r\n focusBg: 'transparent',\r\n activeBg: 'skyBlue.90',\r\n activeBorderColor: 'skyBlue.90'\r\n }\r\n },\r\n solidGreen: {\r\n container: {\r\n bg: 'landGreen.35',\r\n borderColor: 'landGreen.35',\r\n color: 'white',\r\n disabledBg: 'landGreen.70',\r\n disabledBorderColor: 'landGreen.70',\r\n disabledColor: 'white',\r\n hoverBg: 'landGreen.25',\r\n hoverBorderColor: 'landGreen.25',\r\n focusBg: 'landGreen.35',\r\n activeBg: 'landGreen.41',\r\n activeBorderColor: 'landGreen.41'\r\n }\r\n },\r\n solidRed: {\r\n container: {\r\n bg: 'energyRed.45',\r\n borderColor: 'energyRed.45',\r\n color: 'white',\r\n disabledBg: 'energyRed.80',\r\n disabledBorderColor: 'energyRed.80',\r\n disabledColor: 'white',\r\n // proper order is important next: hover > focus > active\r\n hoverBg: 'energyRed.35',\r\n hoverBorderColor: 'energyRed.35',\r\n focusBg: 'energyRed.45',\r\n activeBg: 'energyRed.50',\r\n activeBorderColor: 'energyRed.50'\r\n }\r\n },\r\n // subtleBlue is an internal variant, used in notification; based on primaryDark\r\n subtleBlue: {\r\n container: {\r\n bg: 'transparent',\r\n borderColor: 'transparent',\r\n color: 'seaBlue.main',\r\n disabledBg: 'white',\r\n disabledBorderColor: 'darkBlue.75',\r\n disabledColor: 'darkBlue.75',\r\n // proper order is important next: hover > focus > active\r\n hoverBg: 'skyBlue.90',\r\n hoverBorderColor: 'skyBlue.90',\r\n focusBg: 'transparent',\r\n activeBg: 'skyBlue.85',\r\n activeBorderColor: 'skyBlue.85'\r\n }\r\n },\r\n // subtleRed is an internal variant, used in notification; based on primaryDark\r\n subtleRed: {\r\n container: {\r\n bg: 'transparent',\r\n borderColor: 'transparent',\r\n // proper order is important next: hover > focus > active\r\n hoverBg: 'energyRed.90',\r\n hoverBorderColor: 'energyRed.90',\r\n focusBg: 'transparent',\r\n activeBg: 'energyRed.85',\r\n color: 'energyRed.45'\r\n }\r\n },\r\n // subtleYellow is an internal variant, used in notification; based on primaryDark\r\n subtleYellow: {\r\n container: {\r\n bg: 'transparent',\r\n borderColor: 'transparent',\r\n // proper order is important next: hover > focus > active\r\n hoverBg: 'sunflower.70',\r\n hoverBorderColor: 'sunflower.70',\r\n focusBg: 'transparent',\r\n activeBg: 'sunflower.65',\r\n color: 'sunflower.15'\r\n }\r\n },\r\n // subtleGreen is an internal variant, used in notification; based on primaryDark\r\n subtleGreen: {\r\n container: {\r\n bg: 'transparent',\r\n borderColor: 'transparent',\r\n // proper order is important next: hover > focus > active\r\n hoverBg: 'landGreen.90',\r\n hoverBorderColor: 'landGreen.90',\r\n focusBg: 'transparent',\r\n activeBg: 'landGreen.85',\r\n color: 'landGreen.30'\r\n }\r\n },\r\n // buttonGroupRounded is an internal variant, used in buttonGroup;\r\n buttonGroupRounded: {\r\n container: {\r\n bg: 'white',\r\n borderColor: 'sandstone.79',\r\n color: 'sandstone.10',\r\n hoverBg: 'seaBlue.20',\r\n hoverBorderColor: 'buttonTypePrimaryHoverBorderColorDark',\r\n hoverColor: 'white',\r\n activeBg: 'seaBlue.35',\r\n activeBorderColor: 'buttonTypePrimaryActiveBorderColorDark',\r\n activeColor: 'white',\r\n borderRadius: 'round',\r\n marginRight: '22px'\r\n }\r\n }\r\n};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n parts,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {};\r\nconst defaultProps = {};\r\nconst sizes = {};\r\nconst variants = {};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {\r\n bg: 'white',\r\n borderRadius: 0,\r\n ring: 1,\r\n ringColor: 'transparent',\r\n shadow: '2'\r\n};\r\nconst defaultProps = {};\r\nconst sizes = {};\r\nconst variants = {};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n sizes,\r\n variants\r\n};\r\n","export const checkboxColors = {\r\n main: 'seaBlue.main',\r\n hover: 'seaBlue.40',\r\n disabled: 'sandstone.main'\r\n};\r\n","import { checkboxColors } from './consts';\r\nconst baseStyle = {\r\n control: {\r\n color: checkboxColors.main,\r\n hoverColor: checkboxColors.hover\r\n }\r\n};\r\nconst defaultProps = {\r\n size: 'md'\r\n};\r\nconst parts = ['container', 'control', 'label'];\r\nconst sizes = {\r\n sm: {\r\n control: {\r\n h: 16,\r\n w: 16\r\n },\r\n label: {\r\n size: 'sm'\r\n }\r\n },\r\n md: {\r\n control: {\r\n h: 20,\r\n w: 20\r\n },\r\n label: {\r\n size: 'md'\r\n }\r\n },\r\n lg: {\r\n control: {\r\n h: 24,\r\n w: 24\r\n },\r\n label: {\r\n size: 'lg'\r\n }\r\n }\r\n};\r\nconst variants = {};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n parts,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {};\r\nconst defaultProps = {};\r\nconst sizes = {};\r\nconst variants = {};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {};\r\nconst defaultProps = {\r\n size: 'md',\r\n variant: 'light'\r\n};\r\nconst parts = ['container', 'icon', 'dt', 'dd'];\r\nconst sizes = {\r\n sm: {\r\n container: {\r\n fontSize: 'sm',\r\n lineHeight: '22px'\r\n },\r\n dt: {\r\n fontSize: 'sm',\r\n spaceX: 4\r\n },\r\n dd: {\r\n fontSize: 'sm',\r\n spaceX: 4\r\n },\r\n icon: {\r\n size: 'sm',\r\n mx: 0.5,\r\n my: 'auto'\r\n }\r\n },\r\n md: {\r\n container: {\r\n fontSize: 'md',\r\n lineHeight: '30px'\r\n },\r\n dt: {\r\n fontSize: 'md',\r\n spaceX: 6\r\n },\r\n dd: {\r\n fontSize: 'md',\r\n spaceX: 6\r\n },\r\n icon: {\r\n size: 'md',\r\n mx: 0.5,\r\n my: 'auto'\r\n }\r\n }\r\n};\r\nconst variants = {\r\n light: {\r\n container: {\r\n bg: 'white',\r\n color: 'sandstone.20',\r\n borderColor: 'transparent'\r\n }\r\n },\r\n dark: {\r\n container: {\r\n bg: 'darkBlue.main',\r\n color: 'white'\r\n }\r\n }\r\n};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n parts,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {};\r\nconst defaultProps = {\r\n size: 'md'\r\n};\r\nconst parts = ['container', 'body', 'cancelButton', 'closeButton', 'footer', 'header', 'icon', 'submitButton', 'title'];\r\nconst sizes = {\r\n md: {\r\n container: {\r\n maxW: 520\r\n }\r\n },\r\n lg: {\r\n container: {\r\n maxW: 640\r\n }\r\n },\r\n fullWidth: {}\r\n};\r\nconst variants = {};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n parts,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {};\r\nconst defaultProps = {};\r\nconst sizes = {};\r\nconst variants = {};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n sizes,\r\n variants\r\n};\r\n","const colors = {\r\n bg: 'skyBlue.95',\r\n main: 'seaBlue.main',\r\n hover: 'skyBlue.90'\r\n};\r\nconst baseStyle = {\r\n borderWidth: 2,\r\n borderStyle: 'solid',\r\n borderColor: 'transparent',\r\n bg: colors.bg,\r\n color: colors.main,\r\n hoverBg: colors.hover\r\n};\r\nconst defaultProps = {\r\n variant: 'default'\r\n};\r\nconst sizes = {};\r\nconst variants = {\r\n default: {},\r\n outlined: {\r\n borderColor: colors.main,\r\n borderStyle: 'dashed'\r\n }\r\n};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {};\r\nconst defaultProps = {\r\n variant: 'default'\r\n};\r\nconst parts = ['container', 'column', 'content', 'heading', 'link', 'row', 'section', 'trademark'];\r\nconst sizes = {};\r\nconst variants = {\r\n default: {\r\n container: {\r\n bg: 'darkBlue.main',\r\n color: 'white'\r\n },\r\n link: {\r\n color: 'white'\r\n }\r\n },\r\n developer: {\r\n container: {\r\n bg: 'darkBlue.main',\r\n color: 'white'\r\n },\r\n link: {\r\n color: 'digiGreen.main'\r\n }\r\n },\r\n light: {\r\n container: {\r\n bg: 'white',\r\n color: 'darkBlue.main'\r\n },\r\n row: {\r\n color: 'black'\r\n },\r\n link: {\r\n color: 'seaBlue.main'\r\n },\r\n heading: {\r\n color: 'darkBlue.main'\r\n }\r\n }\r\n};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n parts,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {};\r\nconst defaultProps = {};\r\nconst sizes = {};\r\nconst variants = {};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {};\r\nconst defaultProps = {\r\n variant: 'default'\r\n};\r\nconst parts = [\r\n 'container',\r\n 'account',\r\n 'accountUserInfo',\r\n 'content',\r\n 'createAccount',\r\n 'divider',\r\n 'linkItem',\r\n 'logo',\r\n 'mainLinks',\r\n 'mobileContent',\r\n 'mobileToggle',\r\n 'notifications',\r\n 'services',\r\n 'servicesMessage',\r\n 'signIn'\r\n];\r\nconst sizes = {};\r\nconst variants = {\r\n default: {\r\n container: {\r\n borderColor: 'darkBlue.main'\r\n },\r\n createAccount: {\r\n link: {\r\n variant: 'dark'\r\n }\r\n },\r\n linkItem: {\r\n container: {\r\n hoverBg: 'skyBlue.90',\r\n activeBg: 'transparent',\r\n activeBorderColor: 'darkBlue.main'\r\n },\r\n link: {\r\n size: 'lg',\r\n color: 'darkBlue.main',\r\n borderColor: 'darkBlue.main',\r\n hoverColor: 'darkBlue.main',\r\n activeColor: 'darkBlue.main'\r\n }\r\n },\r\n logo: {\r\n svg: {\r\n pathFill: '#0F204B' // darkBlue.main\r\n }\r\n },\r\n divider: {\r\n color: 'darkBlue.main'\r\n },\r\n mobileToggle: {\r\n color: 'darkBlue.main',\r\n hoverColor: 'darkBlue.main',\r\n activeColor: 'darkBlue.main'\r\n },\r\n notifications: {\r\n container: {\r\n color: 'darkBlue.main',\r\n hoverColor: 'darkBlue.main'\r\n }\r\n },\r\n services: {\r\n button: {\r\n color: 'darkBlue.main',\r\n hoverColor: 'darkBlue.main',\r\n activeColor: 'darkBlue.main'\r\n },\r\n list: {\r\n variant: 'blue'\r\n }\r\n },\r\n signIn: {\r\n background: 'darkBlue.main'\r\n }\r\n },\r\n dark: {\r\n container: {\r\n bg: 'darkBlue.main',\r\n borderBottom: 0\r\n },\r\n createAccount: {\r\n link: {\r\n variant: 'light'\r\n },\r\n text: {\r\n color: 'white'\r\n }\r\n },\r\n account: {\r\n trigger: {\r\n variant: 'primaryLight'\r\n }\r\n },\r\n divider: {\r\n borderColor: 'white'\r\n },\r\n linkItem: {\r\n container: {\r\n hoverBg: 'seaBlue.25',\r\n activeBg: 'transparent',\r\n activeBorderColor: 'digiGreen.main'\r\n },\r\n link: {\r\n size: 'lg',\r\n color: 'white',\r\n borderColor: 'digiGreen.main',\r\n hoverBg: 'seaBlue.25',\r\n hoverColor: 'white',\r\n activeBg: 'seaBlue.35',\r\n activeColor: 'white'\r\n }\r\n },\r\n logo: {\r\n svg: {\r\n pathFill: '#FFFFFF'\r\n }\r\n },\r\n mainLinks: {\r\n color: { md: 'white' }\r\n },\r\n mobileContent: {\r\n top: '100%'\r\n },\r\n mobileToggle: {\r\n color: 'white',\r\n hoverBg: 'seaBlue.25',\r\n hoverColor: 'white',\r\n activeBg: 'seaBlue.35',\r\n activeColor: 'white'\r\n },\r\n notifications: {\r\n container: {\r\n variant: 'solid',\r\n color: 'white',\r\n hoverBg: 'seaBlue.25',\r\n hoverColor: 'white',\r\n activeBg: 'seaBlue.35',\r\n borderColor: 'transparent'\r\n },\r\n icon: {\r\n color: 'white'\r\n }\r\n },\r\n services: {\r\n button: {\r\n color: 'white',\r\n hoverBg: 'seaBlue.25',\r\n hoverColor: 'white',\r\n activeBg: 'seaBlue.35',\r\n activeColor: 'white'\r\n },\r\n list: {\r\n variant: 'blue'\r\n }\r\n },\r\n signIn: {\r\n button: {\r\n variant: 'primaryLight'\r\n },\r\n colorScheme: 'pink'\r\n }\r\n }\r\n};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n parts,\r\n sizes,\r\n variants\r\n};\r\n","export default {\r\n avenir: `'Avenir Next', Verdana, Geneva, Tahoma, sans-serif`,\r\n dnvDisplay: `'DNV Display'`\r\n};\r\n","import fonts from '../theme/foundations/fonts';\r\nconst baseStyle = {\r\n color: 'darkBlue.main'\r\n};\r\nconst defaultProps = {\r\n size: 'h2'\r\n};\r\nconst sizes = {\r\n title: {\r\n as: 'h1',\r\n fontFamily: [fonts.dnvDisplay, fonts.avenir].join(', '),\r\n fontSize: {\r\n desktop: '64px',\r\n mobile: '42px'\r\n },\r\n fontWeight: 'medium',\r\n lineHeight: {\r\n desktop: '74px',\r\n mobile: '52px'\r\n }\r\n },\r\n h1: {\r\n as: 'h1',\r\n fontSize: {\r\n desktop: '50px',\r\n mobile: '36px'\r\n },\r\n fontWeight: 'regular',\r\n lineHeight: {\r\n desktop: '62px',\r\n mobile: '48px'\r\n }\r\n },\r\n lead: {\r\n as: 'h2',\r\n color: 'seaBlue.main',\r\n fontSize: {\r\n desktop: '28px',\r\n mobile: '20px'\r\n },\r\n fontWeight: 'regular',\r\n lineHeight: {\r\n desktop: '38px',\r\n mobile: '28px'\r\n }\r\n },\r\n h2: {\r\n as: 'h2',\r\n fontSize: {\r\n desktop: '32px',\r\n mobile: '28px'\r\n },\r\n fontWeight: 'regular',\r\n lineHeight: {\r\n desktop: '42px',\r\n mobile: '38px'\r\n }\r\n },\r\n h3: {\r\n as: 'h3',\r\n fontSize: {\r\n desktop: '24px',\r\n mobile: '22px'\r\n },\r\n fontWeight: 'regular',\r\n lineHeight: '32px'\r\n },\r\n h4: {\r\n as: 'h4',\r\n fontSize: {\r\n desktop: '20px',\r\n mobile: '18px'\r\n },\r\n fontWeight: 'demi',\r\n lineHeight: '24px'\r\n },\r\n h5: {\r\n as: 'h5',\r\n fontSize: {\r\n desktop: '18px',\r\n mobile: '16px'\r\n },\r\n fontWeight: 'demi',\r\n lineHeight: {\r\n desktop: '26px',\r\n mobile: '22px'\r\n }\r\n },\r\n h6: {\r\n as: 'h6',\r\n fontSize: '16px',\r\n fontWeight: 'demi',\r\n lineHeight: '22px'\r\n }\r\n};\r\nconst variants = {};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {};\r\nconst defaultProps = {\r\n size: 'md'\r\n};\r\nconst sizes = {\r\n xs: {\r\n height: 16,\r\n width: 16\r\n },\r\n sm: {\r\n height: 20,\r\n width: 20\r\n },\r\n md: {\r\n height: 24,\r\n width: 24\r\n },\r\n lg: {\r\n height: 28,\r\n width: 28\r\n },\r\n /** the xl size is introduced for the xxl-tabs and xl-avatars; should not be listed. */\r\n xl: {\r\n height: 32,\r\n width: 32\r\n },\r\n /** the xxl size is introduced for the xxl-avatars; should not be listed. */\r\n xxl: {\r\n height: 40,\r\n width: 40\r\n }\r\n};\r\nconst variants = {};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {};\r\nconst defaultProps = {};\r\nconst sizes = {};\r\nconst variants = {};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n sizes,\r\n variants\r\n};\r\n","export const inputColors = {\r\n border: 'sandstone.60',\r\n placeholder: 'sandstone.55',\r\n inputText: 'sandstone.10',\r\n helpText: 'sandstone.30',\r\n icons: 'seaBlue.main',\r\n disabled: 'sandstone.95',\r\n focus: 'seaBlue.main',\r\n error: 'energyRed.45',\r\n loading: 'seaBlue.80',\r\n success: 'landGreen.35'\r\n};\r\nexport const stateIcons = {\r\n error: 'falExclamationTriangle',\r\n loading: 'fadSpinnerThird',\r\n success: 'falCheck'\r\n};\r\nexport const inputStateMapping = {\r\n error: {\r\n variant: 'red',\r\n iconProps: {\r\n color: inputColors.error,\r\n icon: stateIcons.error\r\n }\r\n },\r\n loading: {\r\n variant: 'grey',\r\n iconProps: {\r\n animation: 'vui-spin 0.6s linear infinite',\r\n name: stateIcons.loading,\r\n pathFill: [inputColors.loading, inputColors.icons]\r\n }\r\n },\r\n success: {\r\n variant: 'green',\r\n iconProps: {\r\n color: inputColors.success,\r\n icon: stateIcons.success\r\n }\r\n }\r\n};\r\nexport const displayValueOnlyTextSize = {\r\n sm: 'xs',\r\n md: 'sm',\r\n lg: 'md',\r\n xl: 'lg'\r\n};\r\n","import { inputColors } from './consts';\r\nconst baseStyle = {\r\n container: {\r\n focusWithinRing: 2,\r\n color: inputColors.inputText\r\n },\r\n input: {\r\n placeholderTextColor: inputColors.placeholder\r\n }\r\n};\r\nconst defaultProps = {\r\n size: 'lg',\r\n variant: 'grey'\r\n};\r\nconst parts = ['container', 'icon', 'input'];\r\nconst sizes = {\r\n sm: {\r\n container: {\r\n fontSize: 'sm',\r\n h: 24\r\n },\r\n icon: {\r\n size: 'xs'\r\n },\r\n input: {}\r\n },\r\n md: {\r\n container: {\r\n fontSize: 'sm',\r\n h: 32\r\n },\r\n icon: {\r\n size: 'sm'\r\n },\r\n input: {}\r\n },\r\n lg: {\r\n container: {\r\n fontSize: 'md',\r\n h: 40\r\n },\r\n icon: {\r\n size: 'md'\r\n },\r\n input: {}\r\n },\r\n xl: {\r\n container: {\r\n fontSize: 'lg',\r\n h: 48\r\n },\r\n icon: {\r\n size: 'md'\r\n },\r\n input: {}\r\n }\r\n};\r\nconst variants = {\r\n grey: {\r\n container: {\r\n borderColor: inputColors.border,\r\n focusWithinRingColor: inputColors.focus\r\n }\r\n },\r\n green: {\r\n container: {\r\n borderColor: inputColors.success,\r\n focusWithinRingColor: inputColors.success\r\n }\r\n },\r\n red: {\r\n container: {\r\n borderColor: inputColors.error,\r\n focusWithinRingColor: inputColors.error\r\n }\r\n }\r\n};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n parts,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {\r\n container: {\r\n dislplay: 'inline'\r\n }\r\n};\r\nconst defaultProps = {\r\n size: 'md',\r\n variant: 'dark'\r\n};\r\nconst parts = ['container', 'icon', 'text'];\r\nconst variants = {\r\n dark: {\r\n container: {\r\n color: `seaBlue.main`\r\n }\r\n },\r\n light: {\r\n container: {\r\n color: `digiGreen.main`\r\n }\r\n },\r\n white: {\r\n container: {\r\n color: `white`\r\n }\r\n },\r\n plain: {\r\n container: {\r\n hoverTextDecoration: 'none'\r\n }\r\n }\r\n};\r\nconst sizes = {\r\n sm: {\r\n container: {\r\n fontSize: 'xs',\r\n lineHeight: '16px'\r\n },\r\n icon: {\r\n size: 'xs'\r\n }\r\n },\r\n md: {\r\n container: {\r\n fontSize: 'sm',\r\n lineHeight: '20px'\r\n },\r\n icon: {\r\n size: 'xs'\r\n }\r\n },\r\n lg: {\r\n container: {\r\n fontSize: 'md',\r\n lineHeight: '24px'\r\n },\r\n icon: {\r\n size: 'sm'\r\n }\r\n },\r\n xl: {\r\n container: {\r\n fontSize: 'lg',\r\n lineHeight: '28px'\r\n },\r\n icon: {\r\n size: 'sm'\r\n }\r\n }\r\n};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n parts,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {\r\n item: {\r\n color: 'sandstone.10',\r\n activeBg: 'skyBlue.95',\r\n hoverBg: 'skyBlue.90',\r\n selectedBg: 'skyBlue.95',\r\n px: 2\r\n },\r\n heading: {\r\n color: 'sandstone.45'\r\n }\r\n};\r\nconst defaultProps = {\r\n size: 'lg',\r\n variant: 'default'\r\n};\r\nconst parts = ['container', 'divider', 'heading', 'icon', 'item', 'text'];\r\nconst sizes = {\r\n sm: {\r\n icon: {\r\n size: 'xs'\r\n },\r\n item: {\r\n fontSize: 12,\r\n h: 24\r\n },\r\n heading: {\r\n fontSize: 12\r\n }\r\n },\r\n md: {\r\n icon: {\r\n size: 'sm'\r\n },\r\n item: {\r\n fontSize: 14,\r\n h: 32\r\n },\r\n heading: {\r\n fontSize: 14\r\n }\r\n },\r\n lg: {\r\n icon: {\r\n size: 'md'\r\n },\r\n item: {\r\n fontSize: 16,\r\n h: 40\r\n },\r\n heading: {\r\n fontSize: 16\r\n }\r\n },\r\n xl: {\r\n icon: {\r\n size: 'lg'\r\n },\r\n item: {\r\n fontSize: 18,\r\n h: 48\r\n },\r\n heading: {\r\n fontSize: 18\r\n }\r\n },\r\n xxl: {\r\n icon: {\r\n size: 'xl'\r\n },\r\n item: {\r\n fontSize: 18,\r\n h: 56\r\n },\r\n heading: {\r\n fontSize: 18\r\n }\r\n }\r\n};\r\nconst variants = {\r\n default: {},\r\n ordered: {\r\n container: {\r\n as: 'ol',\r\n listStyleType: 'decimal',\r\n pl: 3\r\n },\r\n item: {\r\n display: 'list-item'\r\n }\r\n },\r\n unordered: {\r\n container: {\r\n as: 'ul',\r\n listStyleType: 'disc',\r\n pl: 3\r\n },\r\n item: {\r\n display: 'list-item'\r\n }\r\n },\r\n // internal; variant *blue* was introduced for the *header* component\r\n blue: {\r\n heading: {\r\n color: 'darkBlue.main'\r\n }\r\n }\r\n};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n parts,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {};\r\nconst defaultProps = {\r\n size: 'md'\r\n};\r\nconst parts = ['button', 'item', 'list'];\r\nconst sizes = {\r\n md: {\r\n list: {\r\n size: 'sm'\r\n }\r\n },\r\n lg: {\r\n list: {\r\n size: 'md'\r\n }\r\n }\r\n};\r\nconst variants = {};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n parts,\r\n sizes,\r\n variants\r\n};\r\n","export const iconDictionary = {\r\n info: 'falInfoCircle',\r\n warning: 'falExclamationTriangle',\r\n error: 'falExclamationTriangle',\r\n success: 'falCheckCircle'\r\n};\r\nexport const spacingDictionary = {\r\n sm: 4,\r\n md: 6,\r\n lg: 8,\r\n xl: 10\r\n};\r\nexport const messageColors = {\r\n info: 'seaBlue.main',\r\n warning: 'terracotta.30',\r\n error: 'energyRed.45',\r\n success: 'landGreen.35'\r\n};\r\n","import { messageColors } from './consts';\r\nconst baseStyle = {};\r\nconst defaultProps = {\r\n variant: 'info',\r\n size: 'lg'\r\n};\r\nconst sizes = {\r\n sm: {\r\n fontSize: 'xs'\r\n },\r\n md: {\r\n fontSize: 'sm'\r\n },\r\n lg: {\r\n fontSize: 'md'\r\n },\r\n xl: {\r\n fontSize: 'lg'\r\n }\r\n};\r\nconst variants = {\r\n info: {\r\n color: messageColors.info\r\n },\r\n warning: {\r\n color: messageColors.warning\r\n },\r\n error: {\r\n color: messageColors.error\r\n },\r\n success: {\r\n color: messageColors.success\r\n }\r\n};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {};\r\nconst defaultProps = {};\r\nconst parts = ['container', 'backdrop', 'content'];\r\nconst sizes = {};\r\nconst variants = {};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n parts,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {};\r\nconst defaultProps = {\r\n variant: 'subtleBlue'\r\n};\r\nconst parts = ['container', 'button', 'icon', 'text', 'title'];\r\nconst sizes = {};\r\nconst variants = {\r\n subtleBlue: {\r\n container: {\r\n bg: 'skyBlue.95',\r\n borderColor: 'seaBlue.main',\r\n color: 'seaBlue.main'\r\n },\r\n button: {\r\n borderColor: 'transparent'\r\n }\r\n },\r\n subtleRed: {\r\n container: {\r\n bg: 'energyRed.95',\r\n borderColor: 'energyRed.45',\r\n color: 'energyRed.45'\r\n }\r\n },\r\n subtleYellow: {\r\n container: {\r\n bg: 'sunflower.85',\r\n borderColor: 'sunflower.15',\r\n color: 'sunflower.15'\r\n }\r\n },\r\n subtleGreen: {\r\n container: {\r\n bg: 'landGreen.95',\r\n borderColor: 'landGreen.30',\r\n color: 'landGreen.30'\r\n }\r\n }\r\n};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n parts,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {};\r\nconst defaultProps = {\r\n size: 'md'\r\n};\r\nconst sizes = {\r\n xs: {\r\n fontSize: 'xs',\r\n lineHeight: '18px'\r\n },\r\n sm: {\r\n fontSize: 'sm',\r\n lineHeight: '22px'\r\n },\r\n md: {\r\n fontSize: 'md',\r\n lineHeight: '26px'\r\n },\r\n lg: {\r\n fontSize: 'lg',\r\n lineHeight: '32px'\r\n }\r\n};\r\nconst variants = {};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n sizes,\r\n variants\r\n};\r\n","const base = {\r\n bg: 'transparent',\r\n border: 'none',\r\n color: 'darkBlue.main'\r\n};\r\nconst baseStyle = {\r\n button: {\r\n ...base,\r\n color: 'seaBlue.main',\r\n hoverBg: 'skyBlue.main',\r\n minW: 24\r\n },\r\n ellipsis: { ...base },\r\n goToPage: { ...base },\r\n prevNext: {\r\n ...base\r\n },\r\n results: {\r\n color: 'sandstone.30'\r\n }\r\n};\r\nconst defaultProps = {};\r\nconst parts = ['container', 'button', 'ellipsis', 'goToPage', 'navigation', 'prevNext', 'results'];\r\nconst sizes = {};\r\nconst variants = {};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n parts,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {\r\n borderRadius: 0\r\n};\r\nconst defaultProps = {\r\n variant: 'elevated'\r\n};\r\nconst sizes = {};\r\nconst variants = {\r\n elevated: {\r\n shadow: '1'\r\n },\r\n outlined: {\r\n border: 1,\r\n borderColor: 'sandstone.main'\r\n }\r\n};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {};\r\nconst defaultProps = {};\r\nconst parts = ['content', 'trigger'];\r\nconst sizes = {};\r\nconst variants = {};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n parts,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {};\r\nconst defaultProps = {\r\n size: 'md',\r\n variant: 'primary'\r\n};\r\nconst sizes = {\r\n sm: {\r\n container: {\r\n minH: '4px'\r\n },\r\n percentage: {\r\n fontSize: '80%',\r\n top: '-16px'\r\n }\r\n },\r\n md: {\r\n container: {\r\n minH: '8px'\r\n },\r\n percentage: {\r\n fontSize: '100%',\r\n top: '-20px'\r\n }\r\n },\r\n lg: {\r\n container: {\r\n minH: '12px'\r\n },\r\n percentage: {\r\n fontSize: '110%',\r\n top: '-22px'\r\n }\r\n },\r\n xl: {\r\n container: {\r\n minH: '16px'\r\n },\r\n percentage: {\r\n fontSize: '120%',\r\n top: '-24px'\r\n }\r\n }\r\n};\r\nconst variants = {\r\n primary: {\r\n bg: 'darkBlue.95',\r\n color: 'darkBlue.main'\r\n },\r\n green: {\r\n bg: 'landGreen.95',\r\n color: 'landGreen.main'\r\n },\r\n red: {\r\n bg: 'energyRed.95',\r\n color: 'energyRed.main'\r\n }\r\n};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n sizes,\r\n variants\r\n};\r\n","import { darkBlue, energyRed, landGreen } from '../theme/foundations/colors';\r\nconst baseStyle = {\r\n color: 'darkBlue.main'\r\n};\r\nconst defaultProps = {\r\n size: 'md',\r\n variant: 'primary'\r\n};\r\nconst sizes = {\r\n sm: {\r\n strokeWidth: 4,\r\n width: 46,\r\n top: 15,\r\n fontSize: 12\r\n },\r\n md: { strokeWidth: 5, width: 80, top: 30, fontSize: 16 },\r\n lg: { strokeWidth: 6, width: 120, top: 48, fontSize: 18 },\r\n xl: { strokeWidth: 7, width: 160, top: 64, fontSize: 22 }\r\n};\r\nconst variants = {\r\n primary: {\r\n stroke: {\r\n main: darkBlue[95],\r\n progress: darkBlue.main\r\n }\r\n },\r\n green: {\r\n stroke: {\r\n main: landGreen[95],\r\n progress: landGreen.main\r\n }\r\n },\r\n red: {\r\n stroke: {\r\n main: energyRed[95],\r\n progress: energyRed.main\r\n }\r\n }\r\n};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n sizes,\r\n variants\r\n};\r\n","export const radioColors = {\r\n main: 'seaBlue.main',\r\n hover: 'seaBlue.40',\r\n disabled: 'sandstone.main'\r\n};\r\n","import { radioColors } from './consts';\r\nconst baseStyle = {\r\n control: {\r\n color: radioColors.main,\r\n hoverColor: radioColors.hover\r\n }\r\n};\r\nconst defaultProps = {\r\n size: 'md'\r\n};\r\nconst parts = ['container', 'control', 'label'];\r\nconst sizes = {\r\n sm: {\r\n control: {\r\n h: 16,\r\n w: 16\r\n },\r\n label: {\r\n size: 'sm'\r\n }\r\n },\r\n md: {\r\n control: {\r\n h: 20,\r\n w: 20\r\n },\r\n label: {\r\n size: 'md'\r\n }\r\n },\r\n lg: {\r\n control: {\r\n h: 24,\r\n w: 24\r\n },\r\n label: {\r\n size: 'lg'\r\n }\r\n }\r\n};\r\nconst variants = {};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n parts,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {};\r\nconst defaultProps = {\r\n size: 'md',\r\n variant: 'outlined'\r\n};\r\nconst parts = ['container', 'button', 'content', 'group', 'option'];\r\nconst sizes = {\r\n sm: {\r\n button: {\r\n size: 'sm'\r\n }\r\n },\r\n md: {\r\n button: {\r\n size: 'md'\r\n }\r\n }\r\n};\r\nconst variants = {\r\n outlined: {\r\n button: {\r\n hoverBg: 'white',\r\n activeBg: 'white',\r\n borderColor: 'grey.60',\r\n hoverBorderColor: 'grey.60'\r\n }\r\n },\r\n text: {\r\n button: {\r\n hoverBg: 'white',\r\n activeBg: 'white',\r\n borderColor: 'transparent',\r\n hoverBorderColor: 'transparent'\r\n }\r\n }\r\n};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n parts,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {};\r\nconst defaultProps = {\r\n size: 'md',\r\n variant: 'light'\r\n};\r\nconst parts = ['container', 'item', 'sidemenuTop', 'bottom'];\r\nconst sizes = {\r\n md: {\r\n item: {\r\n minH: '40px'\r\n }\r\n },\r\n lg: {\r\n item: {\r\n minH: '56px'\r\n }\r\n }\r\n};\r\nconst variants = {\r\n light: {\r\n container: {\r\n bg: 'white'\r\n },\r\n bottom: {\r\n borderTop: '1px solid lightgray'\r\n },\r\n sidemenuTop: {\r\n borderBottom: '1px solid lightgray'\r\n },\r\n item: {}\r\n },\r\n dark: {\r\n container: {\r\n bg: 'darkBlue.main',\r\n color: 'white'\r\n },\r\n bottom: {\r\n borderTop: '1px solid black'\r\n },\r\n sidemenuTop: {\r\n borderBottom: '1px solid black'\r\n },\r\n item: {}\r\n }\r\n};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n parts,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {\r\n bg: 'skyBlue.95'\r\n};\r\nconst defaultProps = {\r\n size: 'md',\r\n variant: 'rect'\r\n};\r\nconst sizes = {\r\n xs: {\r\n h: 24\r\n },\r\n sm: {\r\n h: 32\r\n },\r\n md: {\r\n h: 40\r\n },\r\n lg: {\r\n h: 48\r\n }\r\n};\r\nconst variants = {\r\n circle: {\r\n borderRadius: '50%'\r\n },\r\n rect: {\r\n borderRadius: 'md',\r\n w: '100%'\r\n }\r\n};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {\r\n container: {\r\n padding: 1\r\n }\r\n};\r\nconst defaultProps = {\r\n size: 'xxxl',\r\n variant: 'light'\r\n};\r\nconst parts = ['container', 'circle', 'text'];\r\nconst sizes = {\r\n xs: {\r\n circle: {\r\n borderWidth: 2,\r\n h: 20,\r\n w: 20\r\n }\r\n },\r\n sm: {\r\n circle: {\r\n borderWidth: 2,\r\n h: 24,\r\n w: 24\r\n }\r\n },\r\n md: {\r\n circle: {\r\n borderWidth: 3,\r\n h: 32,\r\n w: 32\r\n }\r\n },\r\n lg: {\r\n circle: {\r\n borderWidth: 3,\r\n h: 40,\r\n w: 40\r\n }\r\n },\r\n xl: {\r\n circle: {\r\n borderWidth: 3,\r\n h: 48,\r\n w: 48\r\n }\r\n },\r\n xxl: {\r\n circle: {\r\n borderWidth: 4,\r\n h: 60,\r\n w: 60\r\n }\r\n },\r\n xxxl: {\r\n circle: {\r\n borderWidth: 5,\r\n h: 80,\r\n w: 80\r\n }\r\n },\r\n xxxxl: {\r\n circle: {\r\n borderWidth: 5,\r\n h: 120,\r\n w: 120\r\n }\r\n }\r\n};\r\nconst variants = {\r\n light: {\r\n circle: {\r\n borderColor: 'seaBlue.80',\r\n borderTopColor: 'seaBlue.main'\r\n },\r\n text: {\r\n color: 'seaBlue.main'\r\n }\r\n },\r\n dark: {\r\n container: {\r\n bg: 'darkBlue.main'\r\n },\r\n circle: {\r\n borderColor: 'hsl(139, 100%, 78%, 0.4)',\r\n borderTopColor: 'digiGreen.main'\r\n },\r\n text: {\r\n color: 'digiGreen.main'\r\n }\r\n }\r\n};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n parts,\r\n sizes,\r\n variants\r\n};\r\n","export const switchColors = {\r\n main: 'seaBlue.main',\r\n hover: 'seaBlue.40',\r\n offBg: 'sandstone.55',\r\n offBgContrast: 'sandstone.45',\r\n disabled: 'sandstone.main',\r\n disabledBg: 'sandstone.95',\r\n green: 'landGreen.main',\r\n red: 'energyRed.main'\r\n};\r\n","import { switchColors } from './consts';\r\nconst baseStyle = {\r\n button: {\r\n thumb: {\r\n bg: 'white'\r\n },\r\n track: {\r\n ring: 3\r\n }\r\n }\r\n};\r\nfunction sizeLg() {\r\n const button = {\r\n fontSize: 'md',\r\n minW: 50,\r\n thumb: {\r\n h: 24,\r\n w: 24\r\n },\r\n track: {\r\n h: 28\r\n }\r\n };\r\n const label = {\r\n size: 'lg'\r\n };\r\n return { button, label };\r\n}\r\nfunction sizeMd() {\r\n const button = {\r\n fontSize: 'sm',\r\n minW: 42,\r\n thumb: {\r\n h: 20,\r\n w: 20\r\n },\r\n track: {\r\n h: 24\r\n }\r\n };\r\n const label = {\r\n size: 'md'\r\n };\r\n return { button, label };\r\n}\r\nfunction sizeSm() {\r\n const button = {\r\n fontSize: 'xs',\r\n minW: 34,\r\n thumb: {\r\n h: 16,\r\n w: 16\r\n },\r\n track: {\r\n h: 20\r\n }\r\n };\r\n const label = {\r\n size: 'sm'\r\n };\r\n return { button, label };\r\n}\r\nconst defaultProps = {\r\n size: 'md',\r\n variant: 'primary'\r\n};\r\nconst parts = ['container', 'button', 'label'];\r\nconst sizes = {\r\n sm: sizeSm,\r\n md: sizeMd,\r\n lg: sizeLg\r\n};\r\nconst variants = {\r\n primary: {\r\n button: {\r\n track: {\r\n bg: switchColors.main\r\n }\r\n }\r\n },\r\n green: {\r\n button: {\r\n track: {\r\n bg: switchColors.green\r\n }\r\n }\r\n },\r\n red: {\r\n button: {\r\n track: {\r\n bg: switchColors.red\r\n }\r\n }\r\n }\r\n};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n parts,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {};\r\nconst defaultProps = {\r\n size: 'md'\r\n};\r\nconst sizes = {\r\n xs: {\r\n fontSize: 'xs'\r\n },\r\n sm: {\r\n fontSize: 'sm'\r\n },\r\n md: {\r\n fontSize: 'md'\r\n },\r\n lg: {\r\n fontSize: 'lg'\r\n }\r\n};\r\nconst variants = {\r\n label: {\r\n fontSize: 'md',\r\n fontWeight: 'demi'\r\n },\r\n caption: {\r\n fontSize: 'sm',\r\n fontWeight: 'medium'\r\n }\r\n};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {\r\n th: {\r\n fontSize: 14,\r\n fontWeight: 500,\r\n color: 'darkBlue.main'\r\n }\r\n};\r\nconst defaultProps = {\r\n size: 'lg',\r\n variant: 'bordered'\r\n};\r\nconst parts = ['container', 'sortIcon', 'tbody', 'td', 'tfoot', 'th', 'thead', 'tr'];\r\nconst sizes = {\r\n lg: {\r\n tr: {\r\n h: 48\r\n }\r\n },\r\n md: {\r\n tr: {\r\n h: 40\r\n }\r\n },\r\n sm: {\r\n tr: {\r\n h: 32\r\n }\r\n }\r\n};\r\nconst variants = {\r\n bordered: {\r\n td: {\r\n borderBottom: '1px solid sandstone.90'\r\n }\r\n },\r\n striped: {},\r\n basic: {\r\n td: {\r\n borderBottom: '1px solid sandstone.90'\r\n }\r\n }\r\n};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n parts,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {};\r\nconst defaultProps = {};\r\nconst parts = ['container', 'tabsNavBar', 'tab'];\r\nconst sizes = {\r\n sm: {\r\n tabsNavBar: {\r\n borderWidth: '2px',\r\n fontSize: 'xs',\r\n h: '20px',\r\n py: '4px'\r\n }\r\n },\r\n md: {\r\n tabsNavBar: {\r\n borderWidth: '2px',\r\n fontSize: 'sm',\r\n h: '32px',\r\n py: '6px'\r\n }\r\n },\r\n lg: {\r\n tabsNavBar: {\r\n borderWidth: '3px',\r\n fontSize: 'md',\r\n h: 40,\r\n py: '8px'\r\n }\r\n },\r\n xl: {\r\n tabsNavBar: {\r\n borderWidth: '4px',\r\n fontSize: 'lg',\r\n h: 48,\r\n py: '10px'\r\n }\r\n },\r\n xxl: {\r\n tabsNavBar: {\r\n borderWidth: '4px',\r\n fontSize: 'lg',\r\n h: 56,\r\n py: '12px'\r\n }\r\n }\r\n};\r\nconst variants = {};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n parts,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {};\r\nconst defaultProps = {\r\n size: 'md',\r\n variant: 'subtleBlue',\r\n fontWeight: 'medium'\r\n};\r\nconst parts = ['container', 'button', 'icon', 'text'];\r\nconst sizes = {\r\n xs: {\r\n container: {\r\n borderRadius: 'lg',\r\n fontSize: 'sm',\r\n h: 20,\r\n spaceX: 4\r\n },\r\n button: {\r\n size: 'sm'\r\n },\r\n icon: {\r\n size: 'xs'\r\n }\r\n },\r\n sm: {\r\n container: {\r\n fontSize: 'sm',\r\n h: 24,\r\n spaceX: 4\r\n },\r\n button: {\r\n size: 'sm'\r\n },\r\n icon: {\r\n size: 'xs'\r\n }\r\n },\r\n md: {\r\n container: {\r\n fontSize: 'sm',\r\n h: 32,\r\n spaceX: 6\r\n },\r\n button: {\r\n size: 'sm'\r\n },\r\n icon: {\r\n size: 'sm'\r\n }\r\n },\r\n lg: {\r\n container: {\r\n fontSize: 'md',\r\n h: 40,\r\n spaceX: 8\r\n },\r\n button: {\r\n size: 'md'\r\n },\r\n icon: {\r\n size: 'md'\r\n }\r\n }\r\n};\r\nconst variants = {\r\n subtleGrey: {\r\n container: {\r\n bg: 'sandstone.90',\r\n hoverBg: 'sandstone.85',\r\n borderColor: 'sandstone.85',\r\n color: 'sandstone.20',\r\n activeBg: 'sandstone.79'\r\n },\r\n button: {\r\n bg: 'transparent',\r\n hoverBg: 'sandstone.85',\r\n hoverBorderColor: 'transparent',\r\n color: 'sandstone.20',\r\n activeBg: 'sandstone.79'\r\n }\r\n },\r\n subtleBlue: {\r\n container: {\r\n bg: 'skyBlue.95',\r\n hoverBg: 'skyBlue.90',\r\n activeBg: 'skyBlue.85',\r\n borderColor: 'skyBlue.95',\r\n color: 'seaBlue.main'\r\n },\r\n button: {\r\n bg: 'transparent',\r\n hoverBg: 'skyBlue.90',\r\n activeBg: 'skyBlue.85',\r\n hoverBorderColor: 'transparent',\r\n color: 'seaBlue.main'\r\n }\r\n },\r\n subtleRed: {\r\n container: {\r\n bg: 'energyRed.95',\r\n borderColor: 'energyRed.95',\r\n hoverBg: 'energyRed.90',\r\n activeBg: 'energyRed.85',\r\n color: 'energyRed.45'\r\n },\r\n button: {\r\n bg: 'transparent',\r\n hoverBg: 'energyRed.90',\r\n activeBg: 'energyRed.85',\r\n hoverBorderColor: 'transparent',\r\n color: 'energyRed.45'\r\n }\r\n },\r\n subtleYellow: {\r\n container: {\r\n bg: 'sunflower.85',\r\n hoverBg: 'sunflower.70',\r\n activeBg: 'sunflower.65',\r\n borderColor: 'terracotta.30',\r\n color: 'sunflower.20'\r\n },\r\n button: {\r\n bg: 'transparent',\r\n hoverBg: 'sunflower.70',\r\n activeBg: 'sunflower.65',\r\n hoverBorderColor: 'transparent',\r\n color: 'sunflower.20'\r\n }\r\n },\r\n subtleGreen: {\r\n container: {\r\n bg: 'landGreen.95',\r\n hoverBg: 'landGreen.90',\r\n borderColor: 'landGreen.30',\r\n color: 'landGreen.30',\r\n activeBg: 'landGreen.85'\r\n },\r\n button: {\r\n bg: 'transparent',\r\n hoverBg: 'landGreen.90',\r\n activeBg: 'landGreen.85',\r\n hoverBorderColor: 'transparent',\r\n color: 'landGreen.30'\r\n }\r\n },\r\n /** solids next */\r\n solidBlue: {\r\n container: {\r\n bg: 'seaBlue.main',\r\n hoverBg: 'seaBlue.35',\r\n activeBg: 'seaBlue.40',\r\n borderColor: 'seaBlue.main',\r\n color: 'white'\r\n },\r\n button: {\r\n bg: 'transparent',\r\n hoverBg: 'seaBlue.35',\r\n activeBg: 'seaBlue.40',\r\n hoverBorderColor: 'transparent',\r\n activeBorderColor: 'transparent',\r\n color: 'white'\r\n }\r\n },\r\n solidDarkBlue: {\r\n container: {\r\n bg: 'darkBlue.18',\r\n hoverBg: 'darkBlue.25',\r\n activeBg: 'darkBlue.35',\r\n borderColor: 'darkBlue.18',\r\n color: 'white'\r\n },\r\n button: {\r\n bg: 'transparent',\r\n hoverBg: 'darkBlue.25',\r\n activeBg: 'darkBlue.35',\r\n hoverBorderColor: 'transparent',\r\n color: 'white'\r\n }\r\n },\r\n solidRed: {\r\n container: {\r\n bg: 'energyRed.45',\r\n hoverBg: 'energyRed.54',\r\n activeBg: 'energyRed.60',\r\n borderColor: 'energyRed.45',\r\n color: 'white'\r\n },\r\n button: {\r\n bg: 'transparent',\r\n hoverBg: 'energyRed.54',\r\n activeBg: 'energyRed.60',\r\n hoverBorderColor: 'transparent',\r\n activeBorderColor: 'transparent',\r\n color: 'white'\r\n }\r\n },\r\n solidYellow: {\r\n container: {\r\n bg: 'sunflower.50',\r\n hoverBg: 'sunflower.80',\r\n activeBg: 'sunflower.85',\r\n borderColor: 'sunflower.50',\r\n color: 'sunflower.15'\r\n },\r\n button: {\r\n bg: 'transparent',\r\n hoverBg: 'sunflower.80',\r\n activeBg: 'sunflower.85',\r\n hoverBorderColor: 'transparent',\r\n color: 'sunflower.15'\r\n }\r\n },\r\n solidGreen: {\r\n container: {\r\n bg: 'landGreen.35',\r\n hoverBg: 'landGreen.41',\r\n activeBg: 'landGreen.45',\r\n borderColor: 'landGreen.35',\r\n color: 'white'\r\n },\r\n button: {\r\n bg: 'transparent',\r\n hoverBg: 'landGreen.41',\r\n activeBg: 'landGreen.45',\r\n hoverBorderColor: 'transparent',\r\n activeBorderColor: 'transparent',\r\n color: 'white'\r\n }\r\n }\r\n};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n parts,\r\n sizes,\r\n variants\r\n};\r\n","import { inputColors } from '../input/consts';\r\nconst baseStyle = {\r\n textarea: {\r\n focusWithinRing: 2,\r\n color: inputColors.inputText\r\n },\r\n input: {\r\n color: { placeholder: inputColors.placeholder }\r\n }\r\n};\r\nconst defaultProps = {\r\n variant: 'grey'\r\n};\r\nconst parts = ['container', 'textarea'];\r\nconst sizes = {};\r\nconst variants = {\r\n grey: {\r\n textarea: {\r\n borderColor: inputColors.border,\r\n focusWithinRingColor: inputColors.focus\r\n }\r\n },\r\n green: {\r\n textarea: {\r\n borderColor: inputColors.success,\r\n focusWithinRingColor: inputColors.success\r\n }\r\n },\r\n red: {\r\n textarea: {\r\n borderColor: inputColors.error,\r\n focusWithinRingColor: inputColors.error\r\n }\r\n }\r\n};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n parts,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {};\r\nconst defaultProps = {\r\n size: 'xl',\r\n variant: 'default'\r\n};\r\nconst parts = ['container', 'icon', 'firstLevelItem', 'item', 'text'];\r\nconst sizes = {\r\n xl: {\r\n item: {\r\n fontSize: 'md',\r\n height: 48,\r\n lineHeight: '24px',\r\n py: '12px'\r\n },\r\n icon: {\r\n height: 18,\r\n width: 18\r\n }\r\n }\r\n};\r\nconst variants = {\r\n default: {\r\n container: {\r\n bg: 'white'\r\n },\r\n firstLevelItem: {\r\n bg: 'white',\r\n color: 'seaBlue.main',\r\n activeColor: 'seaBlue.main',\r\n activeBg: 'skyBlue.85',\r\n hoverBg: 'skyBlue.80' // '#A6DEF2'\r\n },\r\n item: {\r\n bg: 'white',\r\n color: 'seaBlue.main',\r\n activeColor: 'seaBlue.main',\r\n activeBg: 'skyBlue.85',\r\n hoverBg: 'skyBlue.80',\r\n selectedBg: 'skyBlue.10',\r\n px: 2\r\n }\r\n },\r\n dark: {\r\n container: {\r\n bg: 'darkBlue.main',\r\n color: 'white'\r\n },\r\n firstLevelItem: {\r\n bg: 'darkBlue.main',\r\n color: 'white',\r\n activeBg: 'darkBlue.25',\r\n activeColor: 'seaBlue.main',\r\n hoverBg: 'darkBlue.25',\r\n hoverColor: 'white'\r\n },\r\n item: {\r\n bg: 'skyBlue.97',\r\n color: 'seaBlue.main',\r\n activeBg: 'skyBlue.85',\r\n activeColor: 'seaBlue.main',\r\n hoverBg: 'skyBlue.80',\r\n hoverColor: 'seaBlue.main'\r\n }\r\n }\r\n};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n parts,\r\n sizes,\r\n variants\r\n};\r\n","const baseStyle = {};\r\nconst defaultProps = {};\r\nconst parts = [];\r\nconst sizes = {};\r\nconst variants = {};\r\nexport default {\r\n baseStyle,\r\n defaultProps,\r\n parts,\r\n sizes,\r\n variants\r\n};\r\n","// Basic components\r\nimport Accordion from '../accordion/theme';\r\nimport Avatar from '../avatar/theme';\r\nimport Badge from '../badge/theme';\r\nimport Box from '../box/theme';\r\nimport Breadcrumbs from '../breadcrumbs/theme';\r\nimport Button from '../button/theme';\r\nimport Calendar from '../calendar/theme';\r\nimport Card from '../card/theme';\r\nimport Checkbox from '../checkbox/theme';\r\nimport DatePicker from '../datePicker/theme';\r\nimport Definition from '../definition/theme';\r\nimport Dialog from '../dialog/theme';\r\nimport Divider from '../divider/theme';\r\nimport DragAndDrop from '../dragAndDrop/theme';\r\nimport Footer from '../footer/theme';\r\nimport Grid from '../grid/theme';\r\nimport Header from '../header/theme';\r\nimport Heading from '../heading/theme';\r\nimport Icon from '../icon/theme';\r\nimport Image from '../image/theme';\r\nimport Input from '../input/theme';\r\nimport Link from '../link/theme';\r\nimport List from '../list/theme';\r\nimport Menu from '../menu/theme';\r\nimport Message from '../message/theme';\r\nimport Modal from '../modal/theme';\r\nimport Notification from '../notification/theme';\r\nimport P from '../p/theme';\r\nimport Pagination from '../pagination/theme';\r\nimport Panel from '../panel/theme';\r\nimport Popover from '../popover/theme';\r\nimport Progress from '../progress/theme';\r\nimport ProgressCircular from '../progressCircular/theme';\r\nimport Radio from '../radio/theme';\r\nimport Select from '../select/theme';\r\nimport Sidemenu from '../sidemenu/theme';\r\nimport Skeleton from '../skeleton/theme';\r\nimport Spinner from '../spinner/theme';\r\nimport Switch from '../switch/theme';\r\nimport T from '../t/theme';\r\nimport Table from '../table/theme';\r\nimport Tabs from '../tabs/theme';\r\nimport Tag from '../tag/theme';\r\nimport Textarea from '../textarea/theme';\r\nimport Tree from '../tree/theme';\r\nimport themePlaceholder from './themePlaceholder';\r\n// Official external components\r\nconst Markdown = themePlaceholder;\r\nconst MarkdownEditor = themePlaceholder;\r\nexport default {\r\n Accordion,\r\n Avatar,\r\n Badge,\r\n Box,\r\n Breadcrumbs,\r\n Button,\r\n Calendar,\r\n Card,\r\n Checkbox,\r\n DatePicker,\r\n Dialog,\r\n Divider,\r\n DragAndDrop,\r\n Footer,\r\n Grid,\r\n Header,\r\n Heading,\r\n Icon,\r\n Image,\r\n Input,\r\n Link,\r\n List,\r\n Markdown,\r\n MarkdownEditor,\r\n Menu,\r\n Message,\r\n Modal,\r\n Notification,\r\n P,\r\n Pagination,\r\n Panel,\r\n Progress,\r\n ProgressCircular,\r\n Definition,\r\n Popover,\r\n Radio,\r\n Select,\r\n Sidemenu,\r\n Skeleton,\r\n Spinner,\r\n Switch,\r\n T,\r\n Table,\r\n Tabs,\r\n Tag,\r\n Textarea,\r\n Tree\r\n};\r\n","export default {\r\n bounce: 'vui-bounce 1s infinite',\r\n fadeDown: 'vui-fadeDown 0.2s ease-in-out',\r\n fadeIn: 'vui-fadeIn 0.2s ease-in-out',\r\n fadeLeft: 'vui-fadeLeft 0.2s ease-in-out',\r\n fadeOut: 'vui-fadeOut 0.2s ease-in-out',\r\n fadeRight: 'vui-fadeRight 0.2s ease-in-out',\r\n fadeUp: 'vui-fadeUp 0.2s ease-in-out',\r\n pulse: 'vui-pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite',\r\n spin: 'vui-spin 1s linear infinite'\r\n};\r\n","export default {};\r\n","export default {\r\n instant: '100ms',\r\n fast: '200ms',\r\n normal: '300ms',\r\n slow: '400ms'\r\n};\r\n","export default {\r\n xs: 12,\r\n sm: 14,\r\n md: 16,\r\n lg: 18\r\n};\r\n","export default {\r\n regular: '400',\r\n medium: '500',\r\n demi: '600'\r\n};\r\n","export default {\r\n 1: 'repeat(1, minmax(0, 1fr))',\r\n 2: 'repeat(2, minmax(0, 1fr))',\r\n 3: 'repeat(3, minmax(0, 1fr))',\r\n 4: 'repeat(4, minmax(0, 1fr))',\r\n 5: 'repeat(5, minmax(0, 1fr))',\r\n 6: 'repeat(6, minmax(0, 1fr))',\r\n 7: 'repeat(7, minmax(0, 1fr))',\r\n 8: 'repeat(8, minmax(0, 1fr))',\r\n 9: 'repeat(9, minmax(0, 1fr))',\r\n 10: 'repeat(10, minmax(0, 1fr))',\r\n 11: 'repeat(11, minmax(0, 1fr))',\r\n 12: 'repeat(12, minmax(0, 1fr))'\r\n};\r\n","export default {\r\n 1: 'repeat(1, minmax(0, 1fr))',\r\n 2: 'repeat(2, minmax(0, 1fr))',\r\n 3: 'repeat(3, minmax(0, 1fr))',\r\n 4: 'repeat(4, minmax(0, 1fr))',\r\n 5: 'repeat(5, minmax(0, 1fr))',\r\n 6: 'repeat(6, minmax(0, 1fr))'\r\n};\r\n","export default {\r\n none: 0,\r\n /** sm radius. @deprecated */\r\n sm: 0,\r\n /** md radius. @deprecated */\r\n md: 2,\r\n /** lg radius. @deprecated */\r\n lg: 4,\r\n /** xl radius. @deprecated */\r\n xl: 6,\r\n round: 9999\r\n};\r\n","export default {};\r\n","// Pixel values inspired by https://tailwindcss.com/docs/screens\r\nexport default {\r\n xs: 0,\r\n sm: 640,\r\n md: 768,\r\n lg: 1024,\r\n xl: 1280,\r\n xxl: 1536,\r\n '2xl': 1536 // Obsolete, please use 'xxl' instead\r\n};\r\n","import { hexToRGBA } from '../../utils';\r\nimport { grey } from './colors';\r\nconst greyLight = hexToRGBA(grey[80], 0.4);\r\nconst greyDark = hexToRGBA(grey[80], 0.6);\r\nconst modal = hexToRGBA('#000000', 0.15);\r\nexport default {\r\n '0': `0 0 0 0 #fff`,\r\n '1': `0 2px 5px 0 ${greyLight}`,\r\n '2': `0 4px 12px 0 ${greyLight}`,\r\n '3': `0 7px 20px 0 ${greyDark}`,\r\n '4': `0 12px 30px 0 ${greyDark}`,\r\n t1: `0 -2px 5px 0 ${greyLight}`,\r\n t2: `0 -4px 12px 0 ${greyLight}`,\r\n t3: `0 -7px 20px 0 ${greyDark}`,\r\n t4: `0 -12px 30px 0 ${greyDark}`,\r\n r1: `2px 0 5px 0 ${greyLight}`,\r\n r2: `4px 0 12px 0 ${greyLight}`,\r\n r3: `7px 0 20px 0 ${greyDark}`,\r\n r4: `12px 0 30px 0 ${greyDark}`,\r\n l1: `-2px 0 5px 0 ${greyLight}`,\r\n l2: `-4px 0 12px 0 ${greyLight}`,\r\n l3: `-7px 0 20px 0 ${greyDark}`,\r\n l4: `-12px 0 30px 0 ${greyDark}`,\r\n modal: `0 12px 30px 0 ${modal}`\r\n};\r\n","export default {};\r\n","export default {};\r\n","export default {};\r\n","import { getColor } from '@xstyled/system';\r\nexport default {\r\n border: (value, { props }) => {\r\n if (typeof value === 'number')\r\n return `${value}px solid`;\r\n const values = value.split(' ');\r\n const [width, style = '', color] = values;\r\n const colorValue = getColor(color)(props) ?? '';\r\n return `${width} ${style} ${colorValue}`;\r\n },\r\n space: (value) => {\r\n return typeof value === 'string' ? value : `${value * 8}px`;\r\n }\r\n};\r\n","export default {};\r\n","export default {};\r\n","export default {\r\n drawer: 1300,\r\n modal: 1400,\r\n toast: 1500,\r\n tooltip: 1600\r\n};\r\n","import animations from './animations';\r\nimport borders from './borders';\r\nimport colors from './colors';\r\nimport durations from './durations';\r\nimport fonts from './fonts';\r\nimport fontSizes from './fontSizes';\r\nimport fontWeights from './fontWeights';\r\nimport gridTemplateColumns from './gridTemplateColumns';\r\nimport gridTemplateRows from './gridTemplateRows';\r\nimport radii from './radii';\r\nimport ringWidths from './ringWidths';\r\nimport screens from './screens';\r\nimport shadows from './shadows';\r\nimport sizes from './sizes';\r\nimport spaces from './spaces';\r\nimport timingFunctions from './timingFunctions';\r\nimport transformers from './transformers';\r\nimport transforms from './transforms';\r\nimport transitions from './transitions';\r\nimport zIndices from './zIndices';\r\nexport default {\r\n animations,\r\n borders,\r\n colors,\r\n durations,\r\n fonts,\r\n fontSizes,\r\n fontWeights,\r\n gridTemplateColumns,\r\n gridTemplateRows,\r\n radii,\r\n ringWidths,\r\n screens,\r\n shadows,\r\n sizes,\r\n spaces,\r\n transformers,\r\n transforms,\r\n transitions,\r\n timingFunctions,\r\n zIndices\r\n};\r\n","import components from './components';\r\nimport foundations from './foundations';\r\nconst defaultTheme = {\r\n components,\r\n ...foundations\r\n};\r\nexport default defaultTheme;\r\n","import { getPx, th as xth, themeGetter } from '@xstyled/styled-components';\r\nimport { useMemo } from 'react';\r\nimport { useTheme as useStyledTheme } from 'styled-components';\r\nimport defaultTheme from '../theme';\r\nimport { merge, runIfFn } from '../utils';\r\n/** Merges provided theme extensions and overrides with default VUI theme. */\r\nexport function extendTheme(extensions) {\r\n return merge(defaultTheme, extensions);\r\n}\r\n/** Removes specific theming keys from the given props. */\r\nexport function omitThemingProps(props) {\r\n const { size, variant, ...rest } = props; // eslint-disable-line @typescript-eslint/no-unused-vars\r\n return rest;\r\n}\r\n/** Re-export of xstyled 'th' with custom typing and screen getter. */\r\nconst th = xth;\r\nth.screen = themeGetter({\r\n name: 'screen',\r\n key: 'screens',\r\n compose: getPx\r\n});\r\nexport { th };\r\n/**\r\n * Combines baseStyle, size and variant styling from a component's theme configuration.\r\n * @param component - name of any component configured in the theme\r\n * @param props - props object of the given component\r\n */\r\nexport function useStyleConfig(component, props = {}) {\r\n const theme = useTheme();\r\n const { baseStyle, defaultProps, parts = [], sizes, variants } = theme?.components[component] ?? {};\r\n const mergedProps = {\r\n ...props,\r\n colorScheme: props?.colorScheme ?? defaultProps?.colorScheme,\r\n size: props?.size ?? defaultProps?.size,\r\n variant: props?.variant ?? defaultProps?.variant\r\n };\r\n const { colorScheme, size, variant } = mergedProps;\r\n return useMemo(() => {\r\n const baseStyles = runIfFn(baseStyle, mergedProps) ?? {};\r\n const sizeStyles = runIfFn(sizes?.[size], mergedProps) ?? {};\r\n const variantStyles = runIfFn(variants?.[variant], mergedProps) ?? {};\r\n let styles = {};\r\n if (parts.length > 0)\r\n parts.forEach((part) => {\r\n styles[part] = merge(baseStyles[part] ?? {}, sizeStyles[part] ?? {}, variantStyles[part] ?? {});\r\n });\r\n else\r\n styles = merge(baseStyles, sizeStyles, variantStyles);\r\n return styles;\r\n }, [colorScheme, size, variant]);\r\n}\r\n/** Returns theme value at the given path. */\r\nexport function useTh(path, defaultValue) {\r\n const theme = useTheme();\r\n return th(path, defaultValue)({ theme });\r\n}\r\n/** Returns the theme object with extensions. */\r\nexport function useTheme() {\r\n return useStyledTheme();\r\n}\r\n","import { useViewportWidth } from '@xstyled/styled-components';\r\nimport React from 'react';\r\nimport { th, useTheme } from './theme';\r\n/** Returns CSS media string with appropriate min-width and max-width values. */\r\nexport const mediaBetween = (minWidth, maxWidth) => (props) => `@media (min-width: ${th.screen(minWidth)(props)}) and (max-width: ${th.screen(maxWidth)(props)})`;\r\n/** Returns CSS media string with appropriate max-width value */\r\nexport const mediaDown = (width) => (props) => {\r\n return `@media (max-width: ${th.screen(width)(props)})`;\r\n};\r\n/** Returns CSS media string with appropriate min-width value. */\r\nexport const mediaUp = (width) => (props) => `@media (min-width: ${th.screen(width)(props)})`;\r\n/**\r\n * Renders its content when viewport width is at or above a provided breakpoint.\r\n * Optionally, direction can be set to down, or below, the breakpoint.\r\n */\r\nexport const RenderOnScreen = ({ children, maxWidth, minWidth }) => {\r\n if (minWidth && maxWidth) {\r\n return (React.createElement(RenderBetween, { maxWidth: maxWidth, minWidth: minWidth }, children));\r\n }\r\n if (minWidth) {\r\n return React.createElement(RenderOver, { width: minWidth }, children);\r\n }\r\n if (maxWidth) {\r\n return React.createElement(RenderUnder, { width: maxWidth }, children);\r\n }\r\n return React.createElement(React.Fragment, null, children);\r\n};\r\nconst RenderBetween = ({ children, maxWidth, minWidth }) => {\r\n const isBetween = useBetween(minWidth, maxWidth);\r\n return isBetween ? React.createElement(React.Fragment, null, children) : null;\r\n};\r\nconst RenderOver = ({ children, width }) => {\r\n const isOver = useUp(width);\r\n return isOver ? React.createElement(React.Fragment, null, children) : null;\r\n};\r\nconst RenderUnder = ({ children, width }) => {\r\n const isUnder = useDown(width);\r\n return isUnder ? React.createElement(React.Fragment, null, children) : null;\r\n};\r\n/** /!\\ No need to export it, keep it internal */\r\n/** Returns viewport width and provided screen width as a number. */\r\nfunction useMedia(width) {\r\n const theme = useTheme();\r\n const viewportWidth = useViewportWidth();\r\n const valueString = th.screen(width)({ theme });\r\n const value = Number(valueString.replace('px', ''));\r\n return { value, viewportWidth };\r\n}\r\n/** Returns true if current viewport width is smaller than provided width. */\r\nexport function useDown(width) {\r\n const { value, viewportWidth } = useMedia(width);\r\n return viewportWidth !== null && value !== null && viewportWidth < value;\r\n}\r\n/** Returns true if current viewport width is larger than or equal to provided width. */\r\nexport function useUp(width) {\r\n const { value, viewportWidth } = useMedia(width);\r\n return viewportWidth !== null && value !== null && viewportWidth >= value;\r\n}\r\n/** Returns true if current viewport width is between provided min and max widths. */\r\nexport function useBetween(minWidth, maxWidth) {\r\n const isDown = useDown(maxWidth);\r\n const isUp = useUp(minWidth);\r\n return isDown && isUp;\r\n}\r\n/** Return the width of the viewport. */\r\nexport { useViewportWidth };\r\n","import { style } from '@xstyled/styled-components';\r\n/** Provides styling to truncate single-line text. */\r\nexport const isTruncated = style({\r\n prop: 'isTruncated',\r\n cssProperty: function () {\r\n return {\r\n overflow: 'hidden',\r\n 'text-overflow': 'ellipsis',\r\n 'white-space': 'nowrap'\r\n };\r\n },\r\n states: {}\r\n});\r\n/** Provides styling to truncate multi-line text. */\r\nexport const maxLines = style({\r\n prop: 'maxLines',\r\n cssProperty: function (value) {\r\n return {\r\n display: '-webkit-box',\r\n overflow: 'hidden',\r\n '-webkit-line-clamp': `${value}`,\r\n '-webkit-box-orient': 'vertical'\r\n };\r\n },\r\n states: {}\r\n});\r\nexport const wordBreak = style({\r\n prop: 'wordBreak'\r\n});\r\n","import { animation, backgroundColor, borders, color, compose, effects, flexboxes, flexboxGrids, grids, interactivity, layout, sizing, space, tables, transforms, transitions, typography } from '@xstyled/styled-components';\r\nimport { isTruncated, maxLines, wordBreak } from './custom';\r\nexport const system = compose(animation, backgroundColor, borders, color, effects, flexboxes, flexboxGrids, grids, interactivity, isTruncated, layout, maxLines, sizing, space, tables, transforms, transitions, typography, wordBreak);\r\nexport default system;\r\n","/* eslint-disable @typescript-eslint/ban-ts-comment */\r\nimport { transform } from '@xstyled/core';\r\nimport { createX } from '@xstyled/styled-components';\r\nimport { flattenStrings } from '@xstyled/util';\r\nimport scStyled, { createGlobalStyle as scCreateGlobalStyle, css as scCss } from 'styled-components';\r\nimport { system } from '../system';\r\n/** Creates enhanced 'styled' function with optional style generators and prop-forwarding safeguard. */\r\nfunction createBaseStyled(css, generator) {\r\n const config = generator ? forwardPropConfig(generator) : {};\r\n return ((component) => {\r\n const baseStyled = config ? scStyled(component).withConfig(config) : scStyled(component);\r\n return getCreateStyle(baseStyled, css, generator);\r\n });\r\n}\r\n/** Enhances createGlobalStyle function with custom 'css' helper. */\r\nfunction createCreateGlobalStyle() {\r\n const css = createCssFunction();\r\n return ((...args) => scCreateGlobalStyle([\r\n // @ts-ignore\r\n css(...args)\r\n ]));\r\n}\r\n/** Enhances styled-components' 'css' function with automatic theming. */\r\nfunction createCssFunction() {\r\n return ((...args) => {\r\n const scCssArgs = scCss(...args);\r\n const flattenedArgs = flattenStrings(scCssArgs);\r\n return flattenedArgs.map(transform);\r\n });\r\n}\r\n/**\r\n * Creates full 'styled' function with properties for components.\r\n * Includes base version and system version using 'Box' postfix.\r\n */\r\nfunction createStyled(generator) {\r\n const css = createCssFunction();\r\n const styled = createBaseStyled(css);\r\n const vstyled = createBaseStyled(css, generator);\r\n Object.keys(scStyled).forEach(key => {\r\n // @ts-ignore\r\n styled[key] = styled(key);\r\n // @ts-ignore\r\n styled[`${key}Box`] = vstyled(key);\r\n });\r\n return styled;\r\n}\r\n/** Provides configuration to the 'styled' function, which filters out xstyled system props. */\r\nfunction forwardPropConfig(generator) {\r\n return {\r\n shouldForwardProp: (prop, defaultValidatorFn) => {\r\n if (typeof prop === 'string' && generator.meta.props.includes(prop))\r\n return false;\r\n return defaultValidatorFn(prop);\r\n }\r\n };\r\n}\r\n/** Extends styled component with a given styles generator (system). */\r\nfunction getCreateStyle(baseCreateStyle, css, generator) {\r\n const createStyle = (...args) => baseCreateStyle `${css(...args)}${generator}`;\r\n createStyle.attrs = (attrs) => getCreateStyle(baseCreateStyle.attrs(attrs), css, generator);\r\n createStyle.withConfig = (config) => getCreateStyle(baseCreateStyle.withConfig(config), css, generator);\r\n return createStyle;\r\n}\r\nexport const createGlobalStyle = createCreateGlobalStyle();\r\nexport const css = createCssFunction();\r\nexport const v = createX(system);\r\nexport const styled = createStyled(system);\r\nexport default styled;\r\n","import React from 'react';\r\n/**\r\n * Component creation utility, which combines forwardRef, memo and ensures correct typing with all props included.\r\n * Config object allows toggling memoization and providing custom 'areEqual' function.\r\n */\r\nexport function vui(component, config) {\r\n const { memoCompare, isMemo = true } = config ?? {};\r\n if (isMemo) {\r\n return React.memo(React.forwardRef(component), memoCompare);\r\n }\r\n return React.forwardRef(component);\r\n}\r\nexport default vui;\r\n","export const bounce = `\n\t0%, 100% {\n\t\tanimationTimingFunction: cubic-bezier(0.8, 0, 1, 1);\n\t\ttransform: translateY(-25%);\n\t}\n\t50% {\n\t\tanimationTimingFunction: cubic-bezier(0, 0, 0.2, 1);\n\t\ttransform: translateY(0);\n\t}\n`;\r\nexport const fadeDown = `\n\tfrom {\n\t\topacity: 0;\n\t\ttransform: translateY(-20px)\n\t}\n\tto {\n\t\topacity: 1;\n\t\ttransform: translateY(0)\n\t}\n`;\r\nexport const fadeIn = `\n\tfrom {\n\t\topacity: 0;\n\t}\n\tto {\n\t\topacity: 1;\n\t}\n`;\r\nexport const fadeLeft = `\n\tfrom {\n\t\topacity: 0;\n\t\ttransform: translateX(20px)\n\t}\n\tto {\n\t\topacity: 1;\n\t\ttransform: translateX(0)\n\t}\n`;\r\nexport const fadeOut = `\n\tfrom {\n\t\topacity: 1;\n\t}\n\tto {\n\t\topacity: 0;\n\t}\n`;\r\nexport const fadeRight = `\n\tfrom {\n\t\topacity: 0;\n\t\ttransform: translateX(-20px)\n\t}\n\tto {\n\t\topacity: 1;\n\t\ttransform: translateX(0)\n\t}\n`;\r\nexport const fadeUp = `\n\tfrom {\n\t\topacity: 0;\n\t\ttransform: translateY(20px)\n\t}\n\tto {\n\t\topacity: 1;\n\t\ttransform: translateY(0)\n\t}\n`;\r\nexport const pulse = `\n\t0%, 100% {\n\t\topacity: 1;\n\t}\n\t50% {\n\t\topacity: .5;\n\t}\n`;\r\nexport const spin = `\n\tfrom {\n\t\ttransform: rotate(0deg);\n\t}\n\tto {\n\t\ttransform: rotate(360deg);\n\t}\n`;\r\n","import { createContext } from '../../utils';\r\nconst [VuiContextProvider, useVuiContext] = createContext({ isOptional: true });\r\nexport { VuiContextProvider, useVuiContext };\r\n","import { useEffect, useState } from 'react';\r\nexport const useOfflineMode = () => {\r\n const [isOffline, setIsOffline] = useState(false);\r\n const setOnline = () => setIsOffline(false);\r\n const setOffline = () => setIsOffline(true);\r\n useEffect(() => {\r\n window.addEventListener('online', setOnline);\r\n window.addEventListener('offline', setOffline);\r\n return () => {\r\n window.removeEventListener('online', setOnline);\r\n window.removeEventListener('offline', setOffline);\r\n };\r\n }, []);\r\n return { isOffline };\r\n};\r\n","export const noScrollClass = 'vui-no-scroll';\r\n","import { useEffect, useState } from 'react';\r\nimport { addBodyClass, removeBodyClass } from '../../utils';\r\nimport { noScrollClass } from './consts';\r\nexport const useBodyScrollLock = () => {\r\n const [isScrollLocked, setIsScrollLocked] = useState(false);\r\n const toggleIsScrollLocked = () => setIsScrollLocked(!isScrollLocked);\r\n useEffect(() => {\r\n if (isScrollLocked)\r\n addBodyClass(noScrollClass);\r\n else\r\n removeBodyClass(noScrollClass);\r\n return () => removeBodyClass(noScrollClass);\r\n }, [isScrollLocked]);\r\n return { isScrollLocked, setIsScrollLocked, toggleIsScrollLocked };\r\n};\r\n","import { cdnFontsPath, cdnUrl } from '../';\r\nconst baseUrl = cdnUrl + cdnFontsPath;\r\nexport default `\n\t@font-face {\n\t\tfont-family: 'Avenir Next';\n\t\tsrc: url('${baseUrl}/avenir-regular-lat-ext.woff');\n\t\tfont-weight: 400;\n\t}\n\n\t@font-face {\n\t\tfont-family: 'Avenir Next';\n\t\tsrc: url('${baseUrl}/avenir-medium-lat-ext.woff');\n\t\tfont-weight: 500;\n\t}\n\n\t@font-face {\n\t\tfont-family: 'Avenir Next';\n\t\tsrc: url('${baseUrl}/avenir-demi-lat-ext.woff');\n\t\tfont-weight: 600;\n\t}\n\n\t@font-face {\n\t\tfont-family: 'Avenir Next';\n\t\tsrc: url('${baseUrl}/avenir-bold-lat-ext.woff');\n\t\tfont-weight: 700;\n\t}\n\n\t@font-face {\n\t\tfont-family: 'DNV Display Light';\n\t\tsrc: url('${baseUrl}/dnv-display-light.woff');\n\t\tfont-weight: 700;\n\t}\n\n\t@font-face {\n\t\tfont-family: 'DNV Display';\n\t\tsrc: url('${baseUrl}/dnv-display-light.woff');\n\t\tfont-weight: 200;\n\t\tfont-style: normal;\n\t}\n\n\t@font-face {\n\t\tfont-family: 'DNV Display';\n\t\tsrc: url('${baseUrl}/dnv-display-regular.woff');\n\t\tfont-weight: bold;\n\t}\n\n\t@font-face {\n\t\tfont-family: 'DNV Display';\n\t\tsrc: url('${baseUrl}/dnv-display-regular.woff');\n\t\tfont-weight: 400;\n\t\tfont-style: normal;\n\t}\n\n\t@font-face {\n\t\tfont-family: 'DNV Display Medium';\n\t\tsrc: url('${baseUrl}/dnv-display-medium.woff');\n\t\tfont-weight: bold;\n\t}\n\n\t@font-face {\n\t\tfont-family: 'DNV Display';\n\t\tsrc: url('${baseUrl}/dnv-display-medium.woff');\n\t\tfont-weight: 500;\n\t\tfont-style: normal;\n\t}\n`;\r\n","import foundations from '../../theme/foundations';\r\nimport { isObject } from '../../utils';\r\nimport { createGlobalStyle, css } from '../styled';\r\nimport { bounce, fadeDown, fadeIn, fadeLeft, fadeOut, fadeRight, fadeUp, pulse, spin } from './animations';\r\nimport { noScrollClass } from './consts';\r\nimport fontFaces from './fontFaces';\r\n/**\r\n * Provides global styles, such as:\r\n * - font face definitions\r\n * - font base styles (color, size, family)\r\n * - animation keyframes\r\n * - CSS variables for each theme value\r\n */\r\nexport default createGlobalStyle `\n ${fontFaces}\n :root {\n ${generateCSSVariables}\n }\n\n * {\n --x-ring-color: var(--vui-colors-focusColor);\n // Fixes a box-shadow issue between some parent and child components\n --x-shadow: 0 0 0 0 transparent;\n }\n\n button,\n .vui-avatar,\n .vui-tag,\n .vui-sidemenu-item,\n .vui-switchTrack {\n --x-ring-color: transparent;\n }\n\n button:focus-visible,\n li:focus-visible,\n .vui-avatar:focus-visible,\n .vui-tag:focus-visible,\n .vui-sidemenu-item:focus-visible,\n .vui-switchTrack:focus-visible {\n --x-ring-color: var(--vui-colors-focusColor);\n outline: var(--vui-colors-focusColor) solid 3px;\n z-index: 1;\n }\n\n body.${noScrollClass} {\n overflow: hidden !important;\n overscroll-behavior: contain;\n }\n\n //@formatter:off\n ${p => p.globalStyle &&\r\n css `\n body {\n color: sandstone.10;\n font-family: avenir;\n font-size: md;\n }\n\n h1,\n h2,\n h3,\n h4,\n h5 {\n color: darkBlue.18;\n }\n `}\n\n //@formatter:on\n @keyframes vui-bounce {\n ${bounce}\n }\n\n @keyframes vui-fadeDown {\n ${fadeDown}\n }\n\n @keyframes vui-fadeIn {\n ${fadeIn}\n }\n\n @keyframes vui-fadeLeft {\n ${fadeLeft}\n }\n\n @keyframes vui-fadeOut {\n ${fadeOut}\n }\n\n @keyframes vui-fadeRight {\n ${fadeRight}\n }\n\n @keyframes vui-fadeUp {\n ${fadeUp}\n }\n\n @keyframes vui-pulse {\n ${pulse}\n }\n\n @keyframes vui-spin {\n ${spin}\n }\n`;\r\n/** Recursively maps through all theme styles and generates a set of CSS properties. */\r\nfunction generateCSSVariables() {\r\n function computeStyle(name, value) {\r\n if (!isObject(value))\r\n return `${name}: ${typeof value === 'string' ? value : `${value}px`};\\n`;\r\n return Object.entries(value).reduce((str, [key, value]) => {\r\n return (str += computeStyle(`${name}-${key}`, value));\r\n }, '');\r\n }\r\n const { animations, transformers, ...styles } = foundations;\r\n return computeStyle('--vui', styles);\r\n}\r\n","import { createGlobalStyle } from '../styled';\r\n/** Set of CSS resets to unify styles across browsers and provide good style defaults. */\r\nexport default createGlobalStyle `\n\thtml {\n\t\tbox-sizing: border-box;\n\t\tline-height: 1.4;\n\t\t-webkit-text-size-adjust: 100%;\n\t}\n\n\t*, *::before, *::after {\n\t\tborder-style: solid;\n\t\tborder-width: 0;\n\t\tbox-sizing: inherit;\n\t}\n\n\tbody {\n\t\tmargin: 0;\n\t}\n\n\ta {\n\t\tbackground-color: transparent;\n\t\tcolor: inherit;\n\t\ttext-decoration: none;\n\t}\n\n\tabbr[title] {\n\t\tborder-bottom: none;\n\t\ttext-decoration: underline dotted;\n\t}\n\n\tb, strong {\n\t\tfont-weight: bolder;\n\t}\n\n\tbutton {\n\t\tcursor: pointer;\n\t\t-webkit-appearance: button;\n\t}\n\n\tbutton, input, optgroup, select, textarea {\n\t\tfont-family: inherit;\n\t\tfont-size: 100%;\n\t\tmargin: 0;\n\t}\n\n\tbutton, select {\n\t\ttext-transform: none;\n\t}\n\n\tcode, kbd, pre, samp {\n\t\tfont-family: ui-monospace, SFMono-Regular, Consolas, 'Liberation Mono', Menlo, monospace;\n\t\tfont-size: 1em;\n\t}\n\n\tdetails {\n\t\tdisplay: block;\n\t}\n\n\tfieldset {\n\t\tpadding: 0.35em 0.75em 0.625em;\n\t}\n\n\th1, h2, h3, h4, h5, h6, p, hr, dl, dd, blockquote, figure, pre {\n\t\tmargin: 0;\n\t}\n\n\th1, h2, h3, h4, h5, h6 {\n\t\tfont-size: inherit;\n\t\tfont-weight: inherit;\n\t}\n\n\thr {\n\t\tcolor: inherit;\n\t\theight: 0;\n\t}\n\n\timg {\n\t\tborder-style: none;\n\t}\n\n\timg, svg, video, canvas, audio, iframe, embed, object {\n\t\tdisplay: block;\n\t}\n\n\tlegend {\n\t\tcolor: inherit;\n\t\tdisplay: table;\n\t\tmax-width: 100%;\n\t\tpadding: 0;\n\t\twhite-space: normal;\n\t}\n\n\tmain {\n\t\tdisplay: block;\n\t}\n\n\tol, ul {\n\t\tlist-style: none;\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t}\n\n\tprogress {\n\t\tvertical-align: baseline;\n\t}\n\n\tsummary {\n\t\tdisplay: list-item;\n\t}\n\n\tsmall {\n\t\tfont-size: 80%;\n\t}\n\n\tsub, sup {\n\t\tfont-size: 75%;\n\t\tline-height: 0;\n\t\tposition: relative;\n\t\tvertical-align: baseline;\n\t}\n\n\tsub {\n\t\tbottom: -0.25em;\n\t}\n\n\tsup {\n\t\ttop: -0.5em;\n\t}\n\n\ttable {\n\t\ttext-indent: 0;\n\t\tborder-color: inherit;\n\t}\n\n\ttemplate {\n\t\tdisplay: none;\n\t}\n\n\ttextarea {\n\t\toverflow: auto;\n\t}\n\n\t::-moz-focus-inner {\n\t\tborder-style: none;\n\t\tpadding: 0;\n\t}\n\n\t::-webkit-file-upload-button {\n\t\tfont: inherit;\n\t\t-webkit-appearance: button;\n\t}\n\n\t[type=checkbox], [type=radio] {\n\t\tpadding: 0;\n\t}\n\n\t[type=number]::-webkit-inner-spin-button,\n\t[type=number]::-webkit-outer-spin-button {\n\t\theight: auto;\n\t}\n\n\t[type=search] {\n\t\toutline-offset: -2px;\n\t\t-webkit-appearance: textfield;\n\t}\n\n\t[type=search]::-webkit-search-decoration {\n\t\t-webkit-appearance: none;\n\t}\n\n\t[hidden] {\n\t\tdisplay: none;\n\t}\n`;\r\n","import { createGlobalStyle } from '../core';\r\nexport default createGlobalStyle `\n\t[data-tippy-root] {\n\t\tmax-width: calc(100vw - 10px);\n\t}\n\n\t.tippy-box {\n\t\tposition: relative;\n\t\ttransition-property: transform, visibility, opacity;\n\t}\n\n\t.tippy-box[data-animation=fade][data-state=hidden] {\n\t\topacity: 0;\n\t}\n\n\t.tippy-content {\n\t\tposition: relative;\n\t\tz-index: 1;\n\t}\n`;\r\n","import React, { useEffect, useState } from 'react';\r\nimport { createPortal } from 'react-dom';\r\n/** Provided children are portaled to document.body or custom container. */\r\nexport const Portal = props => {\r\n const { children, containerRef, disablePortal } = props;\r\n const [mountNode, setMountNode] = useState();\r\n useEffect(() => {\r\n if (!disablePortal) {\r\n setMountNode(containerRef?.current ?? document.body);\r\n }\r\n }, [disablePortal]);\r\n if (disablePortal)\r\n return React.createElement(React.Fragment, null, children);\r\n return mountNode ? createPortal(children, mountNode) : React.createElement(React.Fragment, null, mountNode);\r\n};\r\nPortal.displayName = 'Portal';\r\nexport default Portal;\r\n","import React from 'react';\r\nimport { omitThemingProps, styled, useStyleConfig, vui } from '../core';\r\nimport { cs, filterUndefined } from '../utils';\r\nexport const BoxBase = styled.divBox `\n display: flex;\n min-width: 0;\n transition-duration: normal;\n`;\r\n/** Organizes content layout into columns or rows with easy centering. */\r\nexport const Box = vui((props, ref) => {\r\n const { align, center, centerH, centerV, className, column, direction, elevation, hoverShadow: hoverBoxShadow, justify, radius: borderRadius, shadow, wrap, ...rest } = omitThemingProps(props);\r\n const styles = useStyleConfig('Box', props);\r\n const alignItems = center || (column ? centerH : centerV) ? 'center' : undefined;\r\n const flexDirection = column ? 'column' : undefined;\r\n const justifyContent = center || (column ? centerV : centerH) ? 'center' : undefined;\r\n const aliasedProps = filterUndefined({\r\n alignItems: align ?? alignItems,\r\n borderRadius,\r\n boxShadow: elevation ?? shadow,\r\n flexDirection: direction ?? flexDirection,\r\n flexWrap: wrap ? 'wrap' : undefined,\r\n justifyContent: justify ?? justifyContent\r\n });\r\n return React.createElement(BoxBase, { className: cs('vui-box', className), ref: ref, ...styles, ...aliasedProps, ...rest });\r\n});\r\nBox.displayName = 'Box';\r\nexport default Box;\r\n","import React from 'react';\r\nimport { Box } from '../box';\r\nimport { useVuiContext, v } from '../core';\r\nimport { zIndices } from '../theme';\r\nexport const toasterWidth = 420;\r\nconst Toaster = () => {\r\n const { toasts } = useVuiContext();\r\n const padding = { md: '16px', sm: '4px', xs: '2px' };\r\n const right = { md: '1rem', sm: 0, xs: 0 };\r\n const width = { md: toasterWidth, sm: toasterWidth, xs: '100%' };\r\n const bottom = toasts?.list?.length ? '1rem' : '-2rem';\r\n return (React.createElement(Box, { bottom: bottom, className: \"vui-toaster\", display: \"block\", maxW: width, minW: width, p: padding, position: \"fixed\", right: right, zIndex: zIndices.toast }, toasts?.list?.map?.((toast) => (React.createElement(v.div, { id: `toast_${toast.id}`, key: toast.id }, toast.component)))));\r\n};\r\nexport default React.memo(Toaster);\r\n","import { createContext } from '../utils';\r\nconst [NotificationProvider, useNotificationContext] = createContext({ isOptional: true });\r\nexport { NotificationProvider, useNotificationContext };\r\n","export const notificationStatusMapping = {\r\n error: {\r\n iconProps: {\r\n name: 'falTimesCircle'\r\n },\r\n variant: 'subtleRed'\r\n },\r\n info: {\r\n iconProps: {\r\n name: 'falInfoCircle'\r\n },\r\n variant: 'subtleBlue'\r\n },\r\n loading: {\r\n iconProps: {\r\n animation: 'vui-spin 0.6s linear infinite',\r\n name: 'fadSpinnerThird',\r\n pathFill: ['blue.40', 'blue.60']\r\n },\r\n variant: 'subtleBlue'\r\n },\r\n success: {\r\n iconProps: {\r\n name: 'falCheckCircle'\r\n },\r\n variant: 'subtleGreen'\r\n },\r\n warning: {\r\n iconProps: {\r\n name: 'falExclamationCircle'\r\n },\r\n variant: 'subtleYellow'\r\n }\r\n};\r\n","import { createContext } from '../utils';\r\nconst [ButtonGroupProvider, useButtonGroupContext] = createContext({ isOptional: true });\r\nexport { ButtonGroupProvider, useButtonGroupContext };\r\n","/**\r\n * Provides svg caching functionality to avoid redundant XHR requests.\r\n * When the retrieved item doesn't exist in cache yet, a request is sent\r\n * to its 'src' url. The request's promise is cached for that 'src' key\r\n * and can be used for the whole session without repeating requests.\r\n */\r\nclass Cache {\r\n constructor() {\r\n this.cache = new Map();\r\n this.add = (src, svg) => {\r\n this.cache.set(src, svg);\r\n };\r\n this.get = (src) => {\r\n const item = this.cache.get(src);\r\n if (!item) {\r\n const promise = fetch(src).then(res => res.text());\r\n this.add(src, promise);\r\n return promise;\r\n }\r\n return item;\r\n };\r\n this.reset = () => {\r\n this.cache.clear();\r\n };\r\n }\r\n}\r\nconst cache = new Cache();\r\nexport default cache;\r\n","/** Returns an object with given element's HTML attributes. */\r\nexport function getAttributes(element) {\r\n if (!element)\r\n return {};\r\n const attrs = Array.from(element.attributes);\r\n return attrs.reduce((props, attr) => {\r\n const { name, value } = attr;\r\n props[name] = value;\r\n return props;\r\n }, {});\r\n}\r\n/** Returns content of the SVG HTML string by stripping the svg tag. */\r\nexport function getSvgContent(html = '') {\r\n return html.replace(/(<\\/?svg(?:.|\\n)*?>)|(\\r\\n|\\n|\\r)/gm, '');\r\n}\r\n/** Returns object with initial state values. */\r\nexport function initState() {\r\n return { content: '', svgAttributes: {} };\r\n}\r\n/** Returns given HTML string as an HTML element. */\r\nexport function stringToHTML(html) {\r\n const container = document.createElement('div');\r\n container.innerHTML = html;\r\n return container.firstElementChild;\r\n}\r\n","import React, { useEffect, useRef, useState } from 'react';\r\nimport { css, styled, vui } from '../core';\r\nimport { cs } from '../utils';\r\nimport cache from './cache';\r\nimport { getAttributes, getSvgContent, initState, stringToHTML } from './helpers';\r\nexport const SvgBase = styled.svgBox(({ pathFill }) => {\r\n return css `\n ${pathFill !== undefined &&\r\n (Array.isArray(pathFill)\r\n ? pathFill\r\n .map((fill, index) => `\n\t\t\t\t\t& > path:nth-child(${index + 1}) {\n\t\t\t\t\t\tfill: ${fill};\n\t\t\t\t\t}\n\t\t\t\t`)\r\n .join()\r\n : `\n\t\t\t\t& > path {\n\t\t\t\t\tfill: ${pathFill};\n\t\t\t\t}\n\t\t\t`)}\n `;\r\n});\r\n/**\r\n * Displays an svg element based on provided children or 'src' prop.\r\n *\r\n * When using src, it loads the content from the given URL and saves in in cache.\r\n *\r\n * Then, renders the svg by parsing loaded content (Review potential for XSS due to innerHTML).\r\n */\r\nexport const Svg = vui((props, ref) => {\r\n const { children, className, src, ...rest } = props;\r\n const [state, setState] = useState(initState());\r\n const isMountedRef = useRef(false);\r\n const srcRef = useRef(src);\r\n const { content = '', svgAttributes = {} } = state;\r\n const innerHTML = !children ? { __html: content } : undefined;\r\n useEffect(() => {\r\n isMountedRef.current = true;\r\n return () => {\r\n isMountedRef.current = false;\r\n };\r\n }, []);\r\n useEffect(() => {\r\n srcRef.current = src;\r\n async function loadSvg(src) {\r\n try {\r\n const response = await cache.get(src);\r\n const content = getSvgContent(response);\r\n const svgEl = stringToHTML(response);\r\n const svgAttributes = getAttributes(svgEl);\r\n svgAttributes['data-src'] = src ?? '';\r\n // Update state only when requested 'src' and current 'src' are the same\r\n if (srcRef.current === src && isMountedRef.current) {\r\n setState({ content, svgAttributes });\r\n }\r\n }\r\n catch (error) {\r\n console.error(error); // eslint-disable-line no-console\r\n if (isMountedRef.current) {\r\n setState(initState());\r\n }\r\n }\r\n }\r\n src && loadSvg(src);\r\n }, [src]);\r\n return (React.createElement(SvgBase, { className: cs('vui-svg', className), dangerouslySetInnerHTML: innerHTML, ref: ref, xmlns: \"http://www.w3.org/2000/svg\", ...svgAttributes, ...rest }, children));\r\n});\r\nSvg.displayName = 'Svg';\r\nexport default Svg;\r\n","/* eslint-disable */\r\nexport default {\r\n details: [64, 64, [], '', 'M29 4C29.5523 4 30 3.55229 30 3C30 2.44772 29.5523 2 29 2H10C7.79086 2 6 3.79086 6 6V37C6 37.5523 6.44771 38 7 38C7.55228 38 8 37.5523 8 37L8 6C8 4.89543 8.89543 4 10 4L29 4Z M49 42.01V25H42C41.4477 25 41 24.5523 41 24V16L22 16C20.8954 16 20 16.8954 20 18L20 51C20 52.1046 20.8954 53 22 53H37.5C38.0523 53 38.5 53.4477 38.5 54C38.5 54.5523 38.0523 55 37.5 55H22C19.7909 55 18 53.2091 18 51L18 18C18 15.7909 19.7909 14 22 14L41.7767 14C42.842 14 43.8633 14.425 44.6142 15.1807L49.8375 20.4377C50.5821 21.1871 51 22.2006 51 23.257V42.01C51 42.5623 50.5523 43.01 50 43.01C49.4477 43.01 49 42.5623 49 42.01ZM48.4188 21.8473C48.7301 22.1607 48.9273 22.5665 48.9834 23H43V16.4177C43.0685 16.4707 43.1338 16.5283 43.1955 16.5903L48.4188 21.8473Z M36 9C36 9.55229 35.5523 10 35 10L16 10C14.8954 10 14 10.8954 14 12L14 43C14 43.5523 13.5523 44 13 44C12.4477 44 12 43.5523 12 43L12 12C12 9.79086 13.7909 8 16 8L35 8C35.5523 8 36 8.44772 36 9Z M26 28C25.4477 28 25 28.4477 25 29C25 29.5523 25.4477 30 26 30H43C43.5523 30 44 29.5523 44 29C44 28.4477 43.5523 28 43 28H26Z M25 35C25 34.4477 25.4477 34 26 34H43C43.5523 34 44 34.4477 44 35C44 35.5523 43.5523 36 43 36H26C25.4477 36 25 35.5523 25 35Z M26 40C25.4477 40 25 40.4477 25 41C25 41.5523 25.4477 42 26 42H43C43.5523 42 44 41.5523 44 41C44 40.4477 43.5523 40 43 40H26Z M50 46C50.5523 46 51 46.4477 51 47V53H57C57.5523 53 58 53.4477 58 54C58 54.5523 57.5523 55 57 55H51V61C51 61.5523 50.5523 62 50 62C49.4477 62 49 61.5523 49 61V55H43C42.4477 55 42 54.5523 42 54C42 53.4477 42.4477 53 43 53H49V47C49 46.4477 49.4477 46 50 46Z'],\r\n name: 'conCreateDataset',\r\n pathProps: { fillRule: 'evenodd', clipRule: 'evenodd' }\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [64, 64, [], '', 'M51.9167 12.5998C51.7041 11.4585 51.0959 10.4166 50.2336 9.50439C49.1543 8.36285 47.6394 7.38025 45.8435 6.57678C42.2493 4.96881 37.354 4 32 4C26.646 4 21.7507 4.96881 18.1565 6.57678C16.3606 7.38025 14.8457 8.36285 13.7664 9.50439C12.9041 10.4166 12.2959 11.4585 12.0833 12.5998C12.0298 12.7224 12 12.8577 12 13V41C12 42.4491 12.7017 43.7417 13.7876 44.8227C14.8696 45.8998 16.3848 46.8239 18.177 47.5785C21.5405 48.9946 26.0454 49.8834 31 49.9893V59H19C18.4478 59 18 59.4477 18 60C18 60.5523 18.4478 61 19 61H45C45.5522 61 46 60.5523 46 60C46 59.4477 45.5522 59 45 59H33V49.9893C37.9546 49.8834 42.4595 48.9946 45.823 47.5785C47.6152 46.8239 49.1304 45.8998 50.2124 44.8227C51.2983 43.7417 52 42.4491 52 41V13C52 12.8577 51.9702 12.7224 51.9167 12.5998ZM15.2197 10.8784C14.3811 11.7654 14 12.6495 14 13.5C14 14.3505 14.3811 15.2346 15.2197 16.1216C16.0635 17.0139 17.3311 17.8629 18.9734 18.5976C22.2559 20.066 26.8606 21 32 21C37.1394 21 41.7441 20.066 45.0266 18.5976C46.6689 17.8629 47.9365 17.0139 48.7803 16.1216C49.6189 15.2346 50 14.3505 50 13.5C50 12.6495 49.6189 11.7654 48.7803 10.8784C47.9365 9.98615 46.6689 9.13715 45.0266 8.4024C41.7441 6.93396 37.1394 6 32 6C26.8606 6 22.2559 6.93396 18.9734 8.4024C17.3311 9.13715 16.0635 9.98615 15.2197 10.8784ZM50 17.7336C48.9402 18.7742 47.5134 19.6761 45.8435 20.4232C42.2493 22.0312 37.354 23 32 23C26.646 23 21.7507 22.0312 18.1565 20.4232C16.4866 19.6761 15.0598 18.7742 14 17.7336V22C14 23.8739 15.6396 25.8718 18.9932 27.4602C22.27 29.0125 26.8677 30 32 30C37.1323 30 41.73 29.0125 45.0068 27.4602C48.3604 25.8718 50 23.8739 50 22V17.7336ZM50 26.4404C48.9282 27.5453 47.4929 28.4957 45.863 29.2677C42.2634 30.9728 37.3611 32 32 32C26.6389 32 21.7366 30.9728 18.137 29.2677C16.5071 28.4957 15.0718 27.5453 14 26.4404V32C14 32.76 14.3616 33.572 15.1987 34.4053C16.0396 35.2423 17.3069 36.0421 18.9531 36.7352C22.2412 38.1198 26.8535 39 32 39C37.1465 39 41.7588 38.1198 45.0469 36.7352C46.6931 36.0421 47.9604 35.2423 48.8013 34.4053C49.6384 33.572 50 32.76 50 32V26.4404ZM50 36.027C48.9358 37.0171 47.501 37.8721 45.823 38.5785C42.2346 40.0894 37.3469 41 32 41C26.6531 41 21.7654 40.0894 18.177 38.5785C16.499 37.8721 15.0642 37.0171 14 36.027V41C14 41.76 14.3616 42.572 15.1987 43.4053C16.0396 44.2423 17.3069 45.0421 18.9531 45.7352C22.2412 47.1198 26.8535 48 32 48C37.1465 48 41.7588 47.1198 45.0469 45.7352C46.6931 45.0421 47.9604 44.2423 48.8013 43.4053C49.6384 42.572 50 41.76 50 41V36.027Z M16 60C16 60.5523 15.5522 61 15 61C14.4478 61 14 60.5523 14 60C14 59.4477 14.4478 59 15 59C15.5522 59 16 59.4477 16 60Z M49 61C49.5522 61 50 60.5523 50 60C50 59.4477 49.5522 59 49 59C48.4478 59 48 59.4477 48 60C48 60.5523 48.4478 61 49 61Z M12 60C12 60.5523 11.5522 61 11 61C10.4478 61 10 60.5523 10 60C10 59.4477 10.4478 59 11 59C11.5522 59 12 59.4477 12 60Z M53 61C53.5522 61 54 60.5523 54 60C54 59.4477 53.5522 59 53 59C52.4478 59 52 59.4477 52 60C52 60.5523 52.4478 61 53 61Z'],\r\n name: 'conDatabase',\r\n pathProps: { fillRule: 'evenodd', clipRule: 'evenodd' }\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [64, 64, [], '', 'M51 4C51 3.44769 50.5522 3 50 3C49.4478 3 49 3.44769 49 4V8H45C44.4478 8 44 8.44769 44 9C44 9.55231 44.4478 10 45 10H49V14C49 14.5523 49.4478 15 50 15C50.5522 15 51 14.5523 51 14V10H55C55.5522 10 56 9.55231 56 9C56 8.44769 55.5522 8 55 8H51V4Z M18 59C17.4478 59 17 59.4477 17 60C17 60.5523 17.4478 61 18 61H44C44.5522 61 45 60.5523 45 60C45 59.4477 44.5522 59 44 59H32V49.991C36.936 49.9022 41.4253 49.1583 44.7766 47.9398C46.5613 47.2911 48.0779 46.4882 49.1665 45.5328C50.2571 44.5757 51 43.3864 51 42V18C51 17.4477 50.5522 17 50 17C49.4478 17 49 17.4477 49 18V22C49 23.8739 47.3604 25.8718 44.0068 27.4602C40.73 29.0125 36.1323 30 31 30C25.8677 30 21.27 29.0125 17.9932 27.4602C14.6396 25.8718 13 23.8739 13 22V17.0237C14.0667 18.0153 15.5061 18.8715 17.1892 19.5788C20.7847 21.0895 25.6824 22 31.04 22C37.2139 22 42.7949 20.7903 46.4702 18.8318C46.9578 18.572 47.1423 17.9664 46.8826 17.4789C46.6228 16.9916 46.0171 16.807 45.5298 17.0667C42.2319 18.8242 37.0024 20 31.04 20C25.8823 20 21.2598 19.1197 17.9641 17.7349C16.3142 17.0417 15.0437 16.2417 14.2009 15.4045C13.3621 14.571 13 13.7593 13 13C13 12.2407 13.3621 11.429 14.2009 10.5955C15.0437 9.7583 16.3142 8.95831 17.9641 8.26508C21.2598 6.88031 25.8823 6 31.04 6C35.0027 6 38.6575 6.51984 41.6387 7.39355C42.1687 7.54889 42.7244 7.24518 42.8796 6.71515C43.0349 6.18518 42.7312 5.62964 42.2012 5.4743C39.0144 4.54034 35.168 4 31.04 4C25.6824 4 20.7847 4.91052 17.1892 6.4212C15.3938 7.17566 13.8757 8.09961 12.7915 9.17657C11.7036 10.2573 11 11.5501 11 13V42C11 43.3864 11.7429 44.5757 12.8335 45.5328C13.9221 46.4882 15.4387 47.2911 17.2234 47.9398C20.5747 49.1583 25.064 49.9022 30 49.991V59H18ZM49 26.4404C47.9282 27.5453 46.4929 28.4957 44.863 29.2677C41.2634 30.9728 36.3611 32 31 32C25.6389 32 20.7366 30.9728 17.137 29.2677C15.5071 28.4957 14.0718 27.5453 13 26.4404V32C13 32.76 13.3616 33.572 14.1987 34.4053C15.0396 35.2423 16.3069 36.0421 17.9531 36.7352C21.2412 38.1198 25.8535 39 31 39C36.1465 39 40.7588 38.1198 44.0469 36.7352C45.6931 36.0421 46.9604 35.2423 47.8013 34.4053C48.6384 33.572 49 32.76 49 32V26.4404ZM49 36.027C47.9358 37.0171 46.501 37.8721 44.823 38.5785C41.2346 40.0894 36.3469 41 31 41C25.6531 41 20.7654 40.0894 17.177 38.5785C15.499 37.8721 14.0642 37.0171 13 36.027V42C13 42.6136 13.3206 43.2993 14.1528 44.0297C14.9871 44.7618 16.2529 45.4589 17.9067 46.0602C21.2068 47.2599 25.8347 48 31 48C36.1653 48 40.7932 47.2599 44.0933 46.0602C45.7471 45.4589 47.0129 44.7618 47.8472 44.0297C48.6794 43.2993 49 42.6136 49 42V36.027Z M15 60C15 60.5523 14.5522 61 14 61C13.4478 61 13 60.5523 13 60C13 59.4477 13.4478 59 14 59C14.5522 59 15 59.4477 15 60Z M48 61C48.5522 61 49 60.5523 49 60C49 59.4477 48.5522 59 48 59C47.4478 59 47 59.4477 47 60C47 60.5523 47.4478 61 48 61Z M11 60C11 60.5523 10.5522 61 10 61C9.44775 61 9 60.5523 9 60C9 59.4477 9.44775 59 10 59C10.5522 59 11 59.4477 11 60Z M52 61C52.5522 61 53 60.5523 53 60C53 59.4477 52.5522 59 52 59C51.4478 59 51 59.4477 51 60C51 60.5523 51.4478 61 52 61Z'],\r\n name: 'conDatabasePlus',\r\n pathProps: { fillRule: 'evenodd', clipRule: 'evenodd' }\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [64, 64, [], '', 'M31.5 2C28.7386 2 26.5 4.23858 26.5 7C26.5 9.42262 28.223 11.4428 30.5104 11.9021L30.5104 15.8498C27.1965 15.9603 24.1761 16.6221 21.891 17.6695C19.4676 18.7802 17.5 20.5175 17.5 22.7917C17.5 22.838 17.5008 22.884 17.5024 22.9298C17.5008 22.953 17.5 22.9764 17.5 23.0001V31L11.9 31C11.4367 28.7178 9.41897 27 7 27C4.23858 27 2 29.2386 2 32C2 34.7614 4.23858 37 7 37C9.41894 37 11.4367 35.2823 11.9 33L17.5 33V41.7501C17.5 42.8463 18.0374 43.8001 18.8198 44.5709C19.5987 45.3381 20.6744 45.9831 21.923 46.5033C24.1991 47.4517 27.2079 48.0513 30.5104 48.1517L30.5104 52.0979C28.223 52.5572 26.5 54.5774 26.5 57C26.5 59.7614 28.7386 62 31.5 62C34.2614 62 36.5 59.7614 36.5 57C36.5 54.5847 34.7875 52.5694 32.5104 52.1021L32.5104 48.1511C35.8048 48.0488 38.8057 47.4497 41.077 46.5033C42.3256 45.9831 43.4013 45.3381 44.1802 44.5709C44.9626 43.8001 45.5 42.8463 45.5 41.7501V33L51.6 33C52.0633 35.2822 54.081 37 56.5 37C59.2614 37 61.5 34.7614 61.5 32C61.5 29.2386 59.2614 27 56.5 27C54.0811 27 52.0633 28.7177 51.6 31L45.5 31V23.0001C45.5 22.9764 45.4992 22.953 45.4976 22.9298C45.4992 22.884 45.5 22.838 45.5 22.7917C45.5 20.5175 43.5324 18.7802 41.109 17.6695C38.8287 16.6243 35.8162 15.9631 32.5104 15.8505L32.5104 11.8979C34.7874 11.4306 36.5 9.4153 36.5 7C36.5 4.23858 34.2614 2 31.5 2ZM28.5 7C28.5 5.34315 29.8431 4 31.5 4C33.1569 4 34.5 5.34315 34.5 7C34.5 8.65685 33.1569 10 31.5 10C29.8431 10 28.5 8.65685 28.5 7ZM43.5 26.4574C42.8118 27.0229 41.9906 27.5099 41.109 27.9139C38.5983 29.0647 35.2 29.75 31.5 29.75C27.8 29.75 24.4017 29.0647 21.891 27.9139C21.0094 27.5099 20.1882 27.0229 19.5 26.4574V28.7501C19.5 29.9622 20.5086 31.3287 22.7548 32.4518C24.9412 33.545 28.0317 34.2501 31.5 34.2501C34.9683 34.2501 38.0588 33.545 40.2452 32.4518C42.4914 31.3287 43.5 29.9622 43.5 28.7501V26.4574ZM43.5 32.6801C42.8252 33.2789 42.0179 33.8015 41.1396 34.2407C38.6209 35.5 35.2114 36.2501 31.5 36.2501C27.7886 36.2501 24.3791 35.5 21.8604 34.2407C20.9821 33.8015 20.1748 33.2789 19.5 32.6801V35.2501C19.5 35.6496 19.6901 36.1207 20.2234 36.6461C20.7602 37.1749 21.5883 37.6972 22.6922 38.1571C24.8957 39.0753 28.0092 39.6667 31.5 39.6667C34.9908 39.6667 38.1043 39.0753 40.3078 38.1571C41.4117 37.6972 42.2398 37.1749 42.7766 36.6461C43.3099 36.1207 43.5 35.6496 43.5 35.2501V32.6801ZM43.5 38.6556C42.8184 39.1715 41.9944 39.6211 41.077 40.0033C38.5754 41.0456 35.1889 41.6667 31.5 41.6667C27.8111 41.6667 24.4246 41.0456 21.923 40.0033C21.0056 39.6211 20.1816 39.1715 19.5 38.6556V41.7501C19.5 42.1496 19.6901 42.6207 20.2234 43.1461C20.7602 43.6749 21.5883 44.1972 22.6922 44.6571C24.8957 45.5753 28.0092 46.1667 31.5 46.1667C34.9908 46.1667 38.1043 45.5753 40.3078 44.6571C41.4117 44.1972 42.2398 43.6749 42.7766 43.1461C43.3099 42.6207 43.5 42.1496 43.5 41.7501V38.6556ZM28.5 57C28.5 55.4002 29.7522 54.0929 31.3299 54.0047C31.3885 54.0154 31.4488 54.021 31.5104 54.021C31.5702 54.021 31.6288 54.0157 31.6858 54.0057C33.2561 54.1016 34.5 55.4055 34.5 57C34.5 58.6569 33.1569 60 31.5 60C29.8431 60 28.5 58.6569 28.5 57ZM59.5 32C59.5 30.3431 58.1569 29 56.5 29C54.8431 29 53.5 30.3431 53.5 32C53.5 33.6569 54.8431 35 56.5 35C58.1569 35 59.5 33.6569 59.5 32ZM7 29C8.65685 29 10 30.3431 10 32C10 33.6569 8.65685 35 7 35C5.34315 35 4 33.6569 4 32C4 30.3431 5.34315 29 7 29ZM22.7243 19.4876C20.4426 20.5334 19.5 21.7752 19.5 22.7917C19.5 23.8082 20.4426 25.05 22.7243 26.0958C24.9186 27.1016 28.0203 27.75 31.5 27.75C34.9797 27.75 38.0814 27.1016 40.2757 26.0958C42.5574 25.05 43.5 23.8082 43.5 22.7917C43.5 21.7752 42.5574 20.5334 40.2757 19.4876C38.0814 18.4819 34.9797 17.8334 31.5 17.8334C28.0203 17.8334 24.9186 18.4819 22.7243 19.4876Z'],\r\n name: 'conDataset',\r\n pathProps: { fillRule: 'evenodd', clipRule: 'evenodd' }\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [64, 64, [], '', 'M8 13C8 11.3431 9.34315 10 11 10H20.8431C21.6388 10 22.4019 10.3161 22.9645 10.8787L26.6213 14.5355C27.559 15.4732 28.8308 16 30.1569 16H53C54.6569 16 56 17.3431 56 19V45C56 46.6569 54.6569 48 53 48H11C9.34315 48 8 46.6569 8 45V13ZM11 8C8.23858 8 6 10.2386 6 13V45C6 47.7614 8.23857 50 11 50H53C55.7614 50 58 47.7614 58 45V19C58 16.2386 55.7614 14 53 14H30.1569C29.3612 14 28.5981 13.6839 28.0355 13.1213L24.3787 9.46447C23.441 8.52678 22.1692 8 20.8431 8H11ZM32 24C32.5523 24 33 24.4477 33 25V31H39C39.5523 31 40 31.4477 40 32C40 32.5523 39.5523 33 39 33H33V39C33 39.5523 32.5523 40 32 40C31.4477 40 31 39.5523 31 39V33H25C24.4477 33 24 32.5523 24 32C24 31.4477 24.4477 31 25 31H31V25C31 24.4477 31.4477 24 32 24Z'],\r\n name: 'conFolderPlus'\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [64, 64, [], '', 'M4.19165 24.9841C11.4609 13.6099 22.1372 8 32.5578 8C42.9836 8 53.2963 13.6139 59.8426 24.9856C56.6095 30.2822 52.4537 34.258 47.8143 36.9233L44.682 33.791C44.5203 33.6293 44.3094 33.5449 44.0844 33.5449H43.3602C45.7718 30.9364 47.2483 27.4561 47.2483 23.6243C47.2483 15.5458 40.7026 9 32.624 9C24.5455 9 17.9998 15.5458 17.9998 23.6243C17.9998 31.7028 24.5455 38.2486 32.624 38.2486C36.4559 38.2486 39.9362 36.7721 42.5447 34.3675V35.0847C42.5447 35.3097 42.6361 35.5206 42.7907 35.6823L45.3188 38.2104C41.2668 40.0722 36.9249 41 32.558 41C22.1181 41 11.4493 35.6955 4.19165 24.9841ZM46.8207 39.7123C42.3256 41.9017 37.4628 43 32.558 43C21.2421 43 9.79091 37.1556 2.181 25.5741C2.12567 25.495 2.08251 25.4089 2.05224 25.3187C2.03349 25.263 2.01989 25.2063 2.01131 25.1492C1.97939 24.9384 2.0144 24.7164 2.12434 24.5173C2.13455 24.4987 2.14537 24.4804 2.1568 24.4625C9.75482 12.2081 21.2103 6 32.5578 6C43.9082 6 55.0035 12.2127 61.8597 24.4882C61.9039 24.5627 61.9382 24.6424 61.9618 24.7251C61.9756 24.7732 61.9857 24.8219 61.992 24.8707C62.02 25.0843 61.9795 25.3085 61.8614 25.5085C58.5168 31.1726 54.1672 35.4683 49.2761 38.385L53.7519 42.8608C54.0824 43.1913 54.0824 43.7256 53.7519 44.0561L53.0559 44.7522C52.7254 45.0826 52.1911 45.0826 51.8606 44.7522L46.8207 39.7123ZM16.5442 24.084C16.5442 24.634 16.4892 25.1583 16.3792 25.657C16.2692 26.1557 16.0932 26.5957 15.8512 26.977C15.6092 27.351 15.2939 27.6517 14.9052 27.879C14.5239 28.099 14.0582 28.209 13.5082 28.209C12.9582 28.209 12.4889 28.099 12.1002 27.879C11.7115 27.6517 11.3925 27.351 11.1432 26.977C10.9012 26.5957 10.7252 26.1557 10.6152 25.657C10.5052 25.1583 10.4502 24.634 10.4502 24.084C10.4502 23.534 10.5052 23.0133 10.6152 22.522C10.7252 22.0233 10.9012 21.5907 11.1432 21.224C11.3925 20.85 11.7115 20.553 12.1002 20.333C12.4889 20.113 12.9582 20.003 13.5082 20.003C14.0582 20.003 14.5239 20.113 14.9052 20.333C15.2939 20.553 15.6092 20.85 15.8512 21.224C16.0932 21.5907 16.2692 22.0233 16.3792 22.522C16.4892 23.0133 16.5442 23.534 16.5442 24.084ZM14.6522 24.084C14.6522 23.842 14.6375 23.5743 14.6082 23.281C14.5789 22.9877 14.5239 22.7163 14.4432 22.467C14.3625 22.2103 14.2452 21.9977 14.0912 21.829C13.9445 21.653 13.7502 21.565 13.5082 21.565C13.2662 21.565 13.0682 21.653 12.9142 21.829C12.7602 21.9977 12.6392 22.2103 12.5512 22.467C12.4705 22.7163 12.4155 22.9877 12.3862 23.281C12.3569 23.5743 12.3422 23.842 12.3422 24.084C12.3422 24.3333 12.3569 24.6083 12.3862 24.909C12.4155 25.2023 12.4705 25.4773 12.5512 25.734C12.6392 25.9833 12.7602 26.196 12.9142 26.372C13.0682 26.5407 13.2662 26.625 13.5082 26.625C13.7502 26.625 13.9445 26.5407 14.0912 26.372C14.2452 26.196 14.3625 25.9833 14.4432 25.734C14.5239 25.4773 14.5789 25.2023 14.6082 24.909C14.6375 24.6083 14.6522 24.3333 14.6522 24.084ZM51.0572 22.28V28H52.9052V20.212H51.2112L48.6482 22.093L49.6052 23.402L51.0572 22.28ZM40.1849 25.657C40.2949 25.1583 40.3499 24.634 40.3499 24.084C40.3499 23.534 40.2949 23.0133 40.1849 22.522C40.0749 22.0233 39.8989 21.5907 39.6569 21.224C39.4149 20.85 39.0995 20.553 38.7109 20.333C38.3295 20.113 37.8639 20.003 37.3139 20.003C36.7639 20.003 36.2945 20.113 35.9059 20.333C35.5172 20.553 35.1982 20.85 34.9489 21.224C34.7069 21.5907 34.5309 22.0233 34.4209 22.522C34.3109 23.0133 34.2559 23.534 34.2559 24.084C34.2559 24.634 34.3109 25.1583 34.4209 25.657C34.5309 26.1557 34.7069 26.5957 34.9489 26.977C35.1982 27.351 35.5172 27.6517 35.9059 27.879C36.2945 28.099 36.7639 28.209 37.3139 28.209C37.8639 28.209 38.3295 28.099 38.7109 27.879C39.0995 27.6517 39.4149 27.351 39.6569 26.977C39.8989 26.5957 40.0749 26.1557 40.1849 25.657ZM38.4139 23.281C38.4432 23.5743 38.4579 23.842 38.4579 24.084C38.4579 24.3333 38.4432 24.6083 38.4139 24.909C38.3845 25.2023 38.3295 25.4773 38.2489 25.734C38.1682 25.9833 38.0509 26.196 37.8969 26.372C37.7502 26.5407 37.5559 26.625 37.3139 26.625C37.0719 26.625 36.8739 26.5407 36.7199 26.372C36.5659 26.196 36.4449 25.9833 36.3569 25.734C36.2762 25.4773 36.2212 25.2023 36.1919 24.909C36.1625 24.6083 36.1479 24.3333 36.1479 24.084C36.1479 23.842 36.1625 23.5743 36.1919 23.281C36.2212 22.9877 36.2762 22.7163 36.3569 22.467C36.4449 22.2103 36.5659 21.9977 36.7199 21.829C36.8739 21.653 37.0719 21.565 37.3139 21.565C37.5559 21.565 37.7502 21.653 37.8969 21.829C38.0509 21.9977 38.1682 22.2103 38.2489 22.467C38.3295 22.7163 38.3845 22.9877 38.4139 23.281ZM23.6402 28V22.28L22.1882 23.402L21.2312 22.093L23.7942 20.212H25.4882V28H23.6402ZM30.2515 28V22.28L28.7995 23.402L27.8425 22.093L30.4055 20.212H32.0995V28H30.2515ZM44.1254 28.2039C42.3072 32.7737 37.8467 35.9987 32.624 35.9987C25.783 35.9987 20.2496 30.4654 20.2496 23.6243C20.2496 16.7832 25.783 11.2499 32.624 11.2499C38.2198 11.2499 42.9405 14.952 44.4738 20.0438C44.3014 20.0166 44.1185 20.003 43.9252 20.003C43.3752 20.003 42.9059 20.113 42.5172 20.333C42.1285 20.553 41.8095 20.85 41.5602 21.224C41.3182 21.5907 41.1422 22.0233 41.0322 22.522C40.9222 23.0133 40.8672 23.534 40.8672 24.084C40.8672 24.634 40.9222 25.1583 41.0322 25.657C41.1422 26.1557 41.3182 26.5957 41.5602 26.977C41.8095 27.351 42.1285 27.6517 42.5172 27.879C42.9059 28.099 43.3752 28.209 43.9252 28.209C43.9932 28.209 44.0599 28.2073 44.1254 28.2039ZM44.7836 25.9352C44.7108 26.0998 44.619 26.2454 44.5082 26.372C44.3615 26.5407 44.1672 26.625 43.9252 26.625C43.6832 26.625 43.4852 26.5407 43.3312 26.372C43.1772 26.196 43.0562 25.9833 42.9682 25.734C42.8875 25.4773 42.8325 25.2023 42.8032 24.909C42.7739 24.6083 42.7592 24.3333 42.7592 24.084C42.7592 23.842 42.7739 23.5743 42.8032 23.281C42.8325 22.9877 42.8875 22.7163 42.9682 22.467C43.0562 22.2103 43.1772 21.9977 43.3312 21.829C43.4852 21.653 43.6832 21.565 43.9252 21.565C44.1672 21.565 44.3615 21.653 44.5082 21.829C44.6622 21.9977 44.7795 22.2103 44.8602 22.467C44.9103 22.6219 44.9505 22.7853 44.9808 22.9572C44.9925 23.1781 44.9984 23.4005 44.9984 23.6243C44.9984 24.4142 44.9247 25.1867 44.7836 25.9352ZM26.4998 46C26.4998 45.4477 26.9475 45 27.4998 45H31.4998C32.052 45 32.4998 45.4477 32.4998 46C32.4998 46.5523 32.052 47 31.4998 47H27.4998C26.9475 47 26.4998 46.5523 26.4998 46ZM33.4998 46C33.4998 45.4477 33.9475 45 34.4998 45H36.9998C37.552 45 37.9998 45.4477 37.9998 46C37.9998 46.5523 37.552 47 36.9998 47H34.4998C33.9475 47 33.4998 46.5523 33.4998 46ZM21.4998 49C20.9475 49 20.4998 49.4477 20.4998 50C20.4998 50.5523 20.9475 51 21.4998 51H36.9998C37.552 51 37.9998 50.5523 37.9998 50C37.9998 49.4477 37.552 49 36.9998 49H21.4998ZM23.9998 54C23.9998 53.4477 24.4475 53 24.9998 53H36.9998C37.552 53 37.9998 53.4477 37.9998 54C37.9998 54.5523 37.552 55 36.9998 55H24.9998C24.4475 55 23.9998 54.5523 23.9998 54ZM18.9998 53C18.4475 53 17.9998 53.4477 17.9998 54C17.9998 54.5523 18.4475 55 18.9998 55H21.9998C22.552 55 22.9998 54.5523 22.9998 54C22.9998 53.4477 22.552 53 21.9998 53H18.9998Z'],\r\n name: 'conInsightSearchAlt',\r\n pathProps: { fillRule: 'evenodd', clipRule: 'evenodd' }\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [64, 64, [], '', 'M31.0446 26.2985L32.8036 28.3489C35.0578 30.9765 35.4534 33.6615 34.5515 36.0346C33.6812 38.3246 31.669 40.1515 29.4441 41.3371C27.8792 42.171 27.0316 43.2776 26.6002 44.6352C26.1532 46.0422 26.134 47.7817 26.3843 49.8817L26.6872 52.4233L24.7415 50.7601C21.598 48.073 19.9651 45.4449 20.0006 42.9131C20.0368 40.3293 21.7931 38.2784 24.3644 36.7337C24.826 36.4564 25.2839 36.1996 25.7327 35.9478C26.8932 35.2967 27.9934 34.6795 28.9417 33.8303C30.1664 32.7336 31.0446 31.3057 31.0446 29V26.2985ZM32.6305 31.7919C32.1531 33.2681 31.301 34.4022 30.2759 35.3202C29.1496 36.3289 27.7581 37.1089 26.5409 37.7913C26.1337 38.0195 25.746 38.2368 25.3944 38.4481C23.0809 39.8379 22.0224 41.3665 22.0004 42.9411C21.983 44.1821 22.5989 45.7039 24.2232 47.4937C24.2206 46.267 24.3533 45.1022 24.6941 44.0296C25.2863 42.1656 26.4859 40.6472 28.5036 39.572C30.4709 38.5237 32.0413 37.0097 32.682 35.3241C33.0806 34.2753 33.1476 33.0883 32.6305 31.7919Z M36.7207 39.5382L35.5798 37.3469L34.8753 39.7148C34.6489 40.4757 34.4043 40.9389 34.1679 41.245C33.9396 41.5407 33.6846 41.7348 33.36 41.9102C33.1136 42.0434 32.8717 42.1457 32.5699 42.2733C32.4169 42.338 32.2485 42.4092 32.0563 42.4943C31.5217 42.7308 30.9119 43.033 30.2514 43.5082C28.7774 44.5686 28.2307 46.0506 28.0883 47.5718C27.9673 48.865 28.1319 50.2885 28.2833 51.5977C28.3033 51.771 28.3231 51.9425 28.342 52.1112L28.6784 55.1169L30.2 52.5031C31.2871 50.6357 32.8156 49.0385 34.7671 48.1015C35.8497 47.5816 37.1958 46.8402 37.7669 45.3717C38.3432 43.8899 38.0099 42.0142 36.7207 39.5382ZM35.7509 42.4674C35.7625 42.4523 35.7741 42.4371 35.7856 42.4218C36.1298 43.5225 36.074 44.2068 35.9029 44.6468C35.6419 45.3179 34.9887 45.7764 33.9014 46.2985C32.3904 47.024 31.1149 48.0586 30.0673 49.2608C30.0375 48.7336 30.0351 48.2332 30.0796 47.7582C30.1871 46.6094 30.5581 45.7514 31.4193 45.1317C31.9264 44.7669 32.4003 44.5291 32.8656 44.3232C32.9852 44.2703 33.1145 44.2155 33.249 44.1585C33.5966 44.0112 33.9781 43.8495 34.3108 43.6697C34.8189 43.3952 35.3131 43.0343 35.7509 42.4674Z M17 6C14.2386 6 12 8.23857 12 11V56H9C8.44772 56 8 56.4477 8 57C8 57.5523 8.44772 58 9 58H49C49.5523 58 50 57.5523 50 57C50 56.4477 49.5523 56 49 56H46V48.2201C46.8956 48.5144 47.9918 48.8575 49.1207 49.1235C50.5992 49.4719 52.2602 49.7206 53.6644 49.4865C55.7195 49.144 56.9378 47.3127 57.3032 45.5816C57.6665 43.86 57.2928 41.6959 55.5096 40.6397C55.175 40.4415 54.8439 40.2613 54.5368 40.0943L54.5281 40.0896C54.219 39.9215 53.9366 39.7679 53.6682 39.6088C53.1281 39.2884 52.7014 38.9774 52.3669 38.5934C51.817 37.962 51.375 36.9662 51.4414 34.9515C53.0126 34.7794 54.3205 33.5515 54.5292 31.9146L55.4146 24.9708C55.5989 23.5255 54.8738 22.1739 53.6844 21.4911C53.7137 21.3955 53.7442 21.2975 53.7755 21.1967C53.8288 21.0253 53.8846 20.8457 53.9419 20.6558C54.1156 20.0791 54.2947 19.4292 54.3682 18.8044C54.4401 18.1927 54.4294 17.4667 54.0865 16.8203C53.7136 16.1175 53.0485 15.6899 52.1961 15.5194C51.8029 15.4408 51.5218 15.38 51.2907 15.33C50.6316 15.1874 50.3803 15.133 49.0995 15.005L48.1045 14.9055L47.9055 16.8955L48.9005 16.995C50.0673 17.1117 50.2336 17.1477 50.8485 17.2809C51.0787 17.3307 51.3719 17.3942 51.8039 17.4806C52.2016 17.5601 52.2865 17.695 52.3198 17.7578C52.3831 17.8771 52.4349 18.1198 52.3819 18.5707C52.3304 19.0084 52.1969 19.5147 52.0269 20.0787C51.9823 20.2269 51.934 20.3824 51.8847 20.541C51.8343 20.703 51.7827 20.8693 51.7331 21.0337C50.0851 21.1307 48.6873 22.3882 48.4709 24.0854L47.5854 31.0291C47.394 32.5302 48.1836 33.9303 49.4555 34.5848C49.3247 37.0934 49.8296 38.7253 50.8587 39.9069C51.3952 40.5229 52.0289 40.9618 52.6481 41.329C52.9489 41.5074 53.2596 41.6764 53.5575 41.8384L53.5813 41.8513C53.8919 42.0202 54.1919 42.1838 54.4904 42.3606C55.2398 42.8044 55.6161 43.8903 55.3463 45.1686C55.0785 46.4375 54.2805 47.3563 53.3356 47.5137C52.3398 47.6797 51.0008 47.5117 49.5794 47.1768C48.2645 46.867 46.9869 46.4421 46 46.1128V11C46 8.23858 43.7614 6 41 6H17ZM44 56V24H14V56H44ZM14 22H44V11C44 9.34315 42.6569 8 41 8H17C15.3431 8 14 9.34315 14 11V22ZM50.4548 24.3383C50.5596 23.5166 51.3107 22.9353 52.1325 23.0401C52.9543 23.1449 53.5355 23.896 53.4307 24.7178L52.5453 31.6616C52.4405 32.4833 51.6894 33.0646 50.8676 32.9598C50.0458 32.855 49.4646 32.1039 49.5694 31.2821L50.4548 24.3383Z'],\r\n name: 'conLNGBunkering',\r\n pathProps: { fillRule: 'evenodd', clipRule: 'evenodd' }\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [64, 64, [], '', 'M26.8462 17.9191C26.8462 19.7829 25.5714 21.349 23.8462 21.793V27.9191H25.8462C26.3985 27.9191 26.8462 28.3668 26.8462 28.9191V34.0451C28.5714 34.4891 29.8462 36.0552 29.8462 37.9191C29.8462 39.7829 28.5714 41.349 26.8462 41.7931V43.0451C28.5714 43.4891 29.8462 45.0552 29.8462 46.9191C29.8462 49.1282 28.0553 50.9191 25.8462 50.9191C23.6371 50.9191 21.8462 49.1282 21.8462 46.9191C21.8462 45.0552 23.121 43.4891 24.8462 43.0451V41.7931C23.121 41.349 21.8462 39.7829 21.8462 37.9191C21.8462 36.0552 23.121 34.4891 24.8462 34.0451V29.9191H18.8462C18.8462 32.1282 17.0553 33.9191 14.8462 33.9191C12.6371 33.9191 10.8462 32.1282 10.8462 29.9191C10.8462 27.7099 12.6371 25.9191 14.8462 25.9191C16.3268 25.9191 17.6194 26.7235 18.3111 27.9191H21.8462V21.793C20.121 21.349 18.8462 19.7829 18.8462 17.9191C18.8462 15.7099 20.6371 13.9191 22.8462 13.9191C25.0553 13.9191 26.8462 15.7099 26.8462 17.9191ZM24.8462 17.9191C24.8462 19.0236 23.9508 19.9191 22.8462 19.9191C21.7416 19.9191 20.8462 19.0236 20.8462 17.9191C20.8462 16.8145 21.7416 15.9191 22.8462 15.9191C23.9508 15.9191 24.8462 16.8145 24.8462 17.9191ZM27.8462 37.9191C27.8462 39.0236 26.9508 39.9191 25.8462 39.9191C24.7416 39.9191 23.8462 39.0236 23.8462 37.9191C23.8462 36.8145 24.7416 35.9191 25.8462 35.9191C26.9508 35.9191 27.8462 36.8145 27.8462 37.9191ZM14.8462 31.9191C15.9508 31.9191 16.8462 31.0236 16.8462 29.9191C16.8462 28.8145 15.9508 27.9191 14.8462 27.9191C13.7416 27.9191 12.8462 28.8145 12.8462 29.9191C12.8462 31.0236 13.7416 31.9191 14.8462 31.9191ZM27.8462 46.9191C27.8462 48.0236 26.9508 48.9191 25.8462 48.9191C24.7416 48.9191 23.8462 48.0236 23.8462 46.9191C23.8462 45.8145 24.7416 44.9191 25.8462 44.9191C26.9508 44.9191 27.8462 45.8145 27.8462 46.9191Z M38.3411 16.3196C38.2862 15.77 37.7961 15.3691 37.2466 15.424C36.6971 15.479 36.2961 15.969 36.3511 16.5186C36.5561 18.5689 36.4954 20.0459 36.2688 21.2314C35.9628 22.8323 35.3414 23.9833 34.4886 25.4046C34.2045 25.8782 34.358 26.4924 34.8316 26.7766C35.3052 27.0607 35.9194 26.9072 36.2036 26.4336C36.8713 25.3207 37.4803 24.244 37.8987 22.9291C38.1257 23.213 38.3457 23.6534 38.836 24.6348L38.9517 24.8663C39.8652 26.6934 41.4128 27.6087 43.1123 27.9043C44.7692 28.1925 46.5705 27.8984 48.1623 27.3678C48.6863 27.1931 48.9694 26.6268 48.7948 26.1029C48.6201 25.5789 48.0538 25.2957 47.5299 25.4704C46.1217 25.9398 44.673 26.1457 43.4549 25.9339C42.2794 25.7294 41.327 25.1448 40.7405 23.9719C40.6834 23.8577 40.6282 23.7467 40.5746 23.6389C40.1468 22.7789 39.8201 22.1222 39.4418 21.6566C39.1198 21.2602 38.7683 21.002 38.3605 20.7972C38.5164 19.5486 38.5193 18.1012 38.3411 16.3196Z M36.5532 36.712C36.1627 36.3214 35.5295 36.3214 35.139 36.712C34.7485 37.1025 34.7485 37.7357 35.139 38.1262C36.1184 39.1056 36.7754 39.8887 37.2017 40.7413C37.6181 41.5742 37.8461 42.5393 37.8461 43.9191C37.8461 44.0718 37.8803 44.2165 37.9416 44.346L37.8942 44.3741C36.7043 45.088 35.9653 46.1787 35.4177 47.5477C35.2126 48.0605 35.462 48.6424 35.9748 48.8475C36.4876 49.0527 37.0696 48.8032 37.2747 48.2905C37.7271 47.1594 38.2382 46.5001 38.9232 46.0891C39.6344 45.6623 40.6716 45.4191 42.3462 45.4191C42.8985 45.4191 43.3462 44.9714 43.3462 44.4191C43.3462 43.8668 42.8985 43.4191 42.3462 43.4191C41.4217 43.4191 40.5901 43.4849 39.8433 43.6407C39.8135 42.1503 39.5403 40.9463 38.9905 39.8469C38.4168 38.6995 37.5738 37.7326 36.5532 36.712Z M31.9224 4.43383C31.7018 4.26755 31.4608 4.11197 31.2085 3.97082C30.4893 3.56853 29.5841 3.23014 28.5673 3.08119C26.611 2.7946 24.268 3.21663 22.1164 5.15561C21.9887 5.14553 21.8413 5.13762 21.678 5.13502C21.1188 5.12611 20.3469 5.17892 19.5258 5.43809C18.6985 5.69923 17.8133 6.17307 17.0616 7.00482C16.4229 7.71142 15.9136 8.63983 15.603 9.83503C12.9181 10.4391 10.4134 11.7635 8.78077 14.0954C7.08224 16.5214 6.44208 19.8734 7.30593 24.2466C5.27968 26.1485 4.66592 29.4248 5.16423 32.2668C5.63798 34.9686 7.18879 37.666 9.95283 38.7074C9.12938 40.6054 9.12013 42.5698 9.80953 44.1861C10.4865 45.7733 11.823 46.9739 13.5841 47.3813C13.0643 49.4925 13.6608 51.4033 14.8843 52.7447C16.084 54.0598 17.8769 54.8097 19.6953 54.653C20.2628 56.5032 21.6609 58.6484 23.6222 59.8864C24.8188 60.6417 26.2599 61.0799 27.8582 60.8641C29.1954 60.6836 30.561 60.0565 31.9224 58.9102C33.2837 60.0565 34.6493 60.6836 35.9866 60.8641C37.5848 61.0799 39.0259 60.6417 40.2225 59.8864C42.1838 58.6484 43.582 56.5032 44.1494 54.653C45.9678 54.8097 47.7608 54.0598 48.9604 52.7447C50.1839 51.4033 50.7804 49.4925 50.2607 47.3813C52.0217 46.9739 53.3582 45.7733 54.0352 44.1861C54.7246 42.5698 54.7153 40.6054 53.8919 38.7074C56.6559 37.666 58.2067 34.9686 58.6805 32.2668C59.1788 29.4248 58.565 26.1485 56.5388 24.2466C57.4026 19.8734 56.7625 16.5214 55.064 14.0954C53.4313 11.7635 50.9267 10.4391 48.2417 9.83503C47.9311 8.63983 47.4218 7.71142 46.7832 7.00482C46.0314 6.17307 45.1462 5.69923 44.3189 5.43809C43.4979 5.17892 42.726 5.12611 42.1668 5.13502C42.0034 5.13762 41.8561 5.14553 41.7283 5.15561C39.5767 3.21663 37.2337 2.7946 35.2774 3.08119C34.2606 3.23014 33.3554 3.56853 32.6363 3.97082C32.3839 4.11197 32.1429 4.26755 31.9224 4.43383ZM30.2321 5.71629C30.4935 5.86253 30.6964 6.00682 30.8462 6.13224V57.1968C29.6318 58.278 28.5337 58.7548 27.5906 58.8821C26.538 59.0242 25.5636 58.7467 24.6897 58.1951C22.8804 57.0531 21.6556 54.8284 21.444 53.3595C21.4029 53.0741 21.2406 52.8203 20.9988 52.6633C20.7569 52.5063 20.459 52.4613 20.1816 52.5399C18.818 52.9264 17.3194 52.4465 16.362 51.3968C15.4405 50.3866 15.0031 48.8211 15.8456 46.9409C15.9842 46.6315 15.9566 46.2729 15.7723 45.9884C15.588 45.7038 15.272 45.532 14.933 45.532C13.3426 45.532 12.1888 44.6665 11.6492 43.4014C11.1017 42.1179 11.1659 40.3466 12.2656 38.6015C12.4442 38.318 12.469 37.964 12.3316 37.6585C12.1943 37.3529 11.9131 37.1364 11.5826 37.0817C9.14581 36.6789 7.5944 34.5461 7.13418 31.9214C6.66784 29.2617 7.41706 26.6096 9.00476 25.4284C9.32154 25.1928 9.47001 24.7928 9.38369 24.4075C8.42153 20.113 9.05721 17.1877 10.4191 15.2425C11.7908 13.2833 14.0251 12.1374 16.6163 11.67C17.0262 11.5961 17.3473 11.2759 17.4224 10.8662C17.6448 9.65284 18.0753 8.86591 18.5453 8.34589C19.017 7.82403 19.5749 7.51989 20.1279 7.34532C20.6871 7.16879 21.2328 7.12818 21.6461 7.13477C21.8505 7.13802 22.0161 7.15271 22.1265 7.16581C22.1815 7.17234 22.2222 7.17841 22.2465 7.18232L22.2703 7.18633L22.2684 7.18595C22.5941 7.2502 22.9305 7.14865 23.1662 6.91487C24.9343 5.16118 26.7877 4.84184 28.2774 5.06007C29.0383 5.17153 29.7121 5.42544 30.2321 5.71629ZM36.2541 58.8821C35.2717 58.7495 34.1212 58.2377 32.8462 57.0585V6.27045C32.9977 6.12 33.2484 5.92005 33.6126 5.71629C34.1326 5.42544 34.8064 5.17153 35.5673 5.06007C37.057 4.84184 38.9104 5.16118 40.6786 6.91487C40.9141 7.14844 41.25 7.25002 41.5754 7.18612L41.5982 7.18232C41.6225 7.17841 41.6632 7.17234 41.7182 7.16581C41.8286 7.15271 41.9943 7.13802 42.1986 7.13477C42.6119 7.12818 43.1576 7.16879 43.7169 7.34532C44.2699 7.51989 44.8277 7.82403 45.2994 8.34589C45.7694 8.86591 46.1999 9.65284 46.4223 10.8662C46.4974 11.2759 46.8185 11.5961 47.2284 11.67C49.8196 12.1374 52.0539 13.2833 53.4256 15.2425C54.7875 17.1877 55.4232 20.113 54.461 24.4075C54.3747 24.7928 54.5232 25.1928 54.84 25.4284C56.4277 26.6096 57.1769 29.2617 56.7105 31.9214C56.2938 34.2981 54.9824 36.2714 52.929 36.9223C52.8273 36.9138 52.7226 36.9209 52.6179 36.9455C51.2471 37.2668 50.4451 37.2668 49.0743 36.9455C46.8191 36.4168 45.0933 34.7372 44.1781 33.3644C43.8718 32.9049 43.2509 32.7807 42.7914 33.087C42.3319 33.3934 42.2077 34.0143 42.514 34.4738C43.5989 36.101 45.7016 38.209 48.6179 38.8927C49.8583 39.1835 50.792 39.2584 51.8744 39.1175C52.6855 40.6909 52.6891 42.2443 52.1955 43.4014C51.656 44.6665 50.5022 45.532 48.9117 45.532C48.5727 45.532 48.2567 45.7038 48.0724 45.9884C47.8881 46.2729 47.8605 46.6315 47.9991 46.9409C48.8416 48.8211 48.4043 50.3866 47.4828 51.3968C46.5253 52.4465 45.0267 52.9264 43.6631 52.5399C43.3857 52.4613 43.0878 52.5063 42.846 52.6633C42.6041 52.8203 42.4418 53.0741 42.4007 53.3595C42.1891 54.8284 40.9643 57.0531 39.155 58.1951C38.2811 58.7467 37.3067 59.0242 36.2541 58.8821Z'],\r\n name: 'conMachineLearning',\r\n pathProps: { fillRule: 'evenodd', clipRule: 'evenodd' }\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [64, 64, [], '', 'M50 46.5C50 45.9477 49.5523 45.5 49 45.5C48.4477 45.5 48 45.9477 48 46.5L48 54C48 55.1046 47.1046 56 46 56H12C10.8954 56 10 55.1046 10 54L10 10C10 8.89543 10.8954 8 12 8L38 8V17C38 17.5523 38.4477 18 39 18H48V20.5C48 21.0523 48.4477 21.5 49 21.5C49.5523 21.5 50 21.0523 50 20.5V17.2426C50 17.1887 49.9989 17.1349 49.9967 17.0813C49.9989 17.0545 50 17.0274 50 17C50 16.9166 49.9898 16.8356 49.9706 16.7582C49.8629 15.8759 49.4635 15.0493 48.8284 14.4142L41.5858 7.17157C40.9507 6.53652 40.1241 6.13706 39.2418 6.02943C39.1644 6.0102 39.0834 6 39 6C38.9726 6 38.9455 6.0011 38.9187 6.00325C38.8651 6.00109 38.8113 6 38.7574 6H12C9.79086 6 8 7.79086 8 10L8 54C8 56.2091 9.79086 58 12 58H46C48.2091 58 50 56.2091 50 54L50 46.5ZM40 8.43288V16L47.5671 16C47.5197 15.9402 47.4687 15.8829 47.4142 15.8284L40.1716 8.58579C40.1171 8.5313 40.0598 8.48028 40 8.43288Z M17 22C17.5523 22 18 22.4477 18 23V41H37C37.5523 41 38 41.4477 38 42C38 42.5523 37.5523 43 37 43H17C16.4477 43 16 42.5523 16 42V23C16 22.4477 16.4477 22 17 22Z M23 33C23 32.4477 22.5523 32 22 32C21.4477 32 21 32.4477 21 33V37C21 37.5523 21.4477 38 22 38C22.5523 38 23 37.5523 23 37V33Z M26 29C26.5523 29 27 29.4477 27 30V37C27 37.5523 26.5523 38 26 38C25.4477 38 25 37.5523 25 37V30C25 29.4477 25.4477 29 26 29Z M31 32C31 31.4477 30.5523 31 30 31C29.4477 31 29 31.4477 29 32V37C29 37.5523 29.4477 38 30 38C30.5523 38 31 37.5523 31 37V32Z M34 27C34.5523 27 35 27.4477 35 28V37C35 37.5523 34.5523 38 34 38C33.4477 38 33 37.5523 33 37V28C33 27.4477 33.4477 27 34 27Z M55.1918 18.634C54.2352 18.0817 53.012 18.4094 52.4597 19.366L39.4836 41.8414C39.293 42.1715 39.2007 42.5491 39.2176 42.9299L39.3666 46.2949C39.4313 47.7554 40.9899 48.6552 42.287 47.981L45.2758 46.4276C45.614 46.2518 45.8949 45.9831 46.0854 45.653L59.0616 23.1776C59.6139 22.221 59.2861 20.9979 58.3296 20.4456L55.1918 18.634ZM54.1918 20.366L57.3296 22.1776L44.3534 44.653L41.3647 46.2064L41.2156 42.8414L54.1918 20.366Z'],\r\n name: 'conReport',\r\n pathProps: { fillRule: 'evenodd', clipRule: 'evenodd' }\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [64, 64, [], '', 'M53 5C50.7909 5 49 6.79086 49 9C49 9.99915 49.3663 10.9127 49.972 11.6138L42.032 19.5538C41.4365 19.2019 40.7418 19 40 19C39.1907 19 38.4375 19.2404 37.8079 19.6536L28.6227 10.698C28.8648 10.1826 29 9.60709 29 9C29 6.79086 27.2091 5 25 5C22.7909 5 21 6.79086 21 9C21 9.61267 21.1377 10.1932 21.384 10.7122C21.3597 10.7312 21.3362 10.7515 21.3134 10.773L12.3537 19.2349C11.9309 19.0828 11.4751 19 11 19C8.79086 19 7 20.7909 7 23C7 25.2091 8.79086 27 11 27C13.2091 27 15 25.2091 15 23C15 22.0057 14.6372 21.0961 14.0367 20.3964L22.6646 12.2478C23.3217 12.7212 24.1283 13 25 13C25.8747 13 26.6839 12.7192 27.3423 12.2429L36.4611 21.1338C36.1667 21.6909 36 22.326 36 23C36 25.2091 37.7909 27 40 27C42.2091 27 44 25.2091 44 23C44 22.2582 43.7981 21.5635 43.4462 20.968L51.6483 12.7659C52.0705 12.9174 52.5256 13 53 13C55.2091 13 57 11.2091 57 9C57 6.79086 55.2091 5 53 5ZM51 9C51 7.89543 51.8954 7 53 7C54.1046 7 55 7.89543 55 9C55 10.1046 54.1046 11 53 11C51.8954 11 51 10.1046 51 9ZM11 21C9.89543 21 9 21.8954 9 23C9 24.1046 9.89543 25 11 25C12.1046 25 13 24.1046 13 23C13 21.8954 12.1046 21 11 21ZM40 21C38.8954 21 38 21.8954 38 23C38 24.1046 38.8954 25 40 25C41.1046 25 42 24.1046 42 23C42 21.8954 41.1046 21 40 21ZM25 7C23.8954 7 23 7.89543 23 9C23 10.1046 23.8954 11 25 11C26.1046 11 27 10.1046 27 9C27 7.89543 26.1046 7 25 7Z M8 45C8 43.8954 8.89543 43 10 43H12C13.1046 43 14 43.8954 14 45V57C14 58.1046 13.1046 59 12 59H10C8.89543 59 8 58.1046 8 57V45ZM10 45V57H12V45H10Z M24 26C22.8954 26 22 26.8954 22 28V57C22 58.1046 22.8954 59 24 59H26C27.1046 59 28 58.1046 28 57V28C28 26.8954 27.1046 26 26 26H24ZM24 57V28H26V57H24Z M36 40C36 38.8954 36.8954 38 38 38H40C41.1046 38 42 38.8954 42 40V57C42 58.1046 41.1046 59 40 59H38C36.8954 59 36 58.1046 36 57V40ZM40 40H38V57H40V40Z M52 30C50.8954 30 50 30.8954 50 32V57C50 58.1046 50.8954 59 52 59H54C55.1046 59 56 58.1046 56 57V32C56 30.8954 55.1046 30 54 30H52ZM52 57V32H54V57H52Z'],\r\n name: 'conReport1',\r\n pathProps: { fillRule: 'evenodd', clipRule: 'evenodd' }\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [64, 64, [], '', 'M10 45H29.6786C29.7332 45 29.7867 45.0044 29.8389 45.0128C29.908 45.0209 29.9771 45.0362 30.0453 45.0593C30.5685 45.2362 30.8407 45.8007 30.6534 46.3203L27.5231 55H35.5C36.0523 55 36.5 55.4477 36.5 56C36.5 56.5523 36.0523 57 35.5 57H17C16.4477 57 16 56.5523 16 56C16 55.4477 16.4477 55 17 55H25.3974L28.2826 47H10C7.23857 47 5 44.7614 5 42L5 12C5 9.23858 7.23858 7 10 7L54 7C56.7614 7 59 9.23858 59 12V35.55C59 36.1023 58.5523 36.55 58 36.55C57.4477 36.55 57 36.1023 57 35.55V12C57 10.3432 55.6569 9 54 9L10 9C8.34315 9 7 10.3431 7 12L7 42C7 43.6569 8.34314 45 10 45Z M34.5 30C32.567 30 31 31.567 31 33.5C31 35.433 32.567 37 34.5 37C36.433 37 38 35.433 38 33.5C38 31.567 36.433 30 34.5 30ZM33 33.5C33 32.6716 33.6716 32 34.5 32C35.3284 32 36 32.6716 36 33.5C36 34.3284 35.3284 35 34.5 35C33.6716 35 33 34.3284 33 33.5Z M34.5 27C32.7761 27 31.1228 27.6848 29.9038 28.9038C28.6848 30.1228 28 31.7761 28 33.5C28 34.0523 27.5523 34.5 27 34.5C26.4477 34.5 26 34.0523 26 33.5C26 31.2457 26.8955 29.0837 28.4896 27.4896C30.0837 25.8955 32.2457 25 34.5 25C35.0523 25 35.5 25.4477 35.5 26C35.5 26.5523 35.0523 27 34.5 27Z M25.6612 24.6612C28.0054 22.317 31.1848 21 34.5 21C35.0523 21 35.5 20.5523 35.5 20C35.5 19.4477 35.0523 19 34.5 19C30.6544 19 26.9662 20.5277 24.247 23.247C21.5277 25.9662 20 29.6544 20 33.5C20 34.0523 20.4477 34.5 21 34.5C21.5523 34.5 22 34.0523 22 33.5C22 30.1848 23.317 27.0054 25.6612 24.6612Z M34.5 15C29.5935 15 24.888 16.9491 21.4185 20.4185C17.9491 23.888 16 28.5935 16 33.5C16 34.0523 15.5523 34.5 15 34.5C14.4477 34.5 14 34.0523 14 33.5C14 28.0631 16.1598 22.8488 20.0043 19.0043C23.8488 15.1598 29.0631 13 34.5 13C35.0523 13 35.5 13.4477 35.5 14C35.5 14.5523 35.0523 15 34.5 15Z M45 28C44.4477 28 44 28.4477 44 29V32H42.5001C42.1599 32 41.8429 32.173 41.6589 32.4592L37.1589 39.4592C37.0663 39.6033 37.0154 39.7622 37.003 39.9218L34.6286 40.8715C34.3741 40.9734 34.1725 41.1752 34.071 41.4299C33.9696 41.6845 33.9771 41.9697 34.0918 42.2186L40.6373 56.4186C40.8007 56.773 41.1552 57 41.5455 57H52.4545C52.8448 57 53.1994 56.773 53.3627 56.4186L59.9082 42.2186C60.0229 41.9697 60.0304 41.6845 59.929 41.4299C59.8275 41.1752 59.6259 40.9734 59.3714 40.8715L56.9973 39.9219C56.9849 39.7623 56.9339 39.6034 56.8413 39.4592L52.3413 32.4592C52.1573 32.173 51.8404 32 51.5001 32H50V29C50 28.4477 49.5523 28 49 28H45ZM53.987 38.7178L50.9542 34H43.0461L40.0133 38.7177L44.4003 36.9629C46.0691 36.2953 47.9309 36.2953 49.5997 36.9629L53.987 38.7178ZM48 32H46V30H48V32ZM45.1431 38.8198C46.3351 38.343 47.6649 38.343 48.857 38.8198L57.6511 42.3375L51.8144 55H42.1856L36.3489 42.3375L45.1431 38.8198Z'],\r\n name: 'conSensorAlt',\r\n pathProps: { fillRule: 'evenodd', clipRule: 'evenodd' }\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [64, 64, [], '', 'M10 4C10 3.44772 9.55228 3 9 3C8.44772 3 8 3.44772 8 4V9L3 9C2.44771 9 2 9.44771 2 10C2 10.5523 2.44771 11 3 11L8 11V16C8 16.5523 8.44771 17 9 17C9.55228 17 10 16.5523 10 16V11L15 11C15.5523 11 16 10.5523 16 10C16 9.44772 15.5523 9 15 9L10 9V4Z M31 48C31 48.392 30.7744 48.7314 30.446 48.8953L27.5231 57H35.5C36.0523 57 36.5 57.4477 36.5 58C36.5 58.5523 36.0523 59 35.5 59H17C16.4477 59 16 58.5523 16 58C16 57.4477 16.4477 57 17 57H25.3974L28.2826 49H13C10.2386 49 8 46.7614 8 44L8 23C8 22.4477 8.44771 22 9 22C9.55228 22 10 22.4477 10 23L10 44C10 45.6568 11.3431 47 13 47H30C30.5523 47 31 47.4477 31 48Z M61 39C60.4477 39 60 38.5523 60 38L60 14C60 12.3431 58.6569 11 57 11L21.5 11C20.9477 11 20.5 10.5523 20.5 10C20.5 9.44772 20.9477 9 21.5 9L57 9C59.7614 9 62 11.2386 62 14L62 38C62 38.5523 61.5523 39 61 39Z M34.5 32C32.567 32 31 33.567 31 35.5C31 37.433 32.567 39 34.5 39C36.433 39 38 37.433 38 35.5C38 33.567 36.433 32 34.5 32ZM33 35.5C33 34.6716 33.6716 34 34.5 34C35.3284 34 36 34.6716 36 35.5C36 36.3284 35.3284 37 34.5 37C33.6716 37 33 36.3284 33 35.5Z M34.5 29C32.7761 29 31.1228 29.6848 29.9038 30.9038C28.6848 32.1228 28 33.7761 28 35.5C28 36.0523 27.5523 36.5 27 36.5C26.4477 36.5 26 36.0523 26 35.5C26 33.2457 26.8955 31.0837 28.4896 29.4896C30.0837 27.8955 32.2457 27 34.5 27C35.0523 27 35.5 27.4477 35.5 28C35.5 28.5523 35.0523 29 34.5 29Z M25.6612 26.6612C28.0054 24.317 31.1848 23 34.5 23C35.0523 23 35.5 22.5523 35.5 22C35.5 21.4477 35.0523 21 34.5 21C30.6544 21 26.9662 22.5277 24.247 25.247C21.5277 27.9662 20 31.6544 20 35.5C20 36.0523 20.4477 36.5 21 36.5C21.5523 36.5 22 36.0523 22 35.5C22 32.1848 23.317 29.0054 25.6612 26.6612Z M34.5 17C29.5935 17 24.8879 18.9491 21.4185 22.4185C17.9491 25.8879 16 30.5935 16 35.5C16 36.0523 15.5523 36.5 15 36.5C14.4477 36.5 14 36.0523 14 35.5C14 30.0631 16.1598 24.8488 20.0043 21.0043C23.8488 17.1598 29.0631 15 34.5 15C35.0523 15 35.5 15.4477 35.5 16C35.5 16.5523 35.0523 17 34.5 17Z M46 30C45.4477 30 45 30.4477 45 31V34H43.5001C43.1599 34 42.8429 34.173 42.6589 34.4592L38.1589 41.4592C38.0663 41.6033 38.0154 41.7622 38.003 41.9218L35.6286 42.8715C35.3741 42.9734 35.1725 43.1752 35.071 43.4299C34.9696 43.6845 34.9771 43.9697 35.0918 44.2186L41.6373 58.4186C41.8006 58.773 42.1552 59 42.5455 59H53.4545C53.8448 59 54.1994 58.773 54.3627 58.4186L60.9082 44.2186C61.0229 43.9697 61.0304 43.6845 60.929 43.4299C60.8275 43.1752 60.6259 42.9734 60.3714 42.8715L57.9973 41.9219C57.9849 41.7623 57.9339 41.6033 57.8413 41.4592L53.3413 34.4592C53.1573 34.173 52.8404 34 52.5001 34H51V31C51 30.4477 50.5523 30 50 30H46ZM54.987 40.7178L51.9542 36H44.0461L41.0133 40.7177L45.4003 38.9629C47.0691 38.2953 48.9309 38.2953 50.5997 38.9629L54.987 40.7178ZM49 34H47V32H49V34ZM46.143 40.8198C47.3351 40.343 48.6649 40.343 49.857 40.8198L58.6511 44.3375L52.8144 57H43.1856L37.3489 44.3375L46.143 40.8198Z'],\r\n name: 'conSensorPlus',\r\n pathProps: { fillRule: 'evenodd', clipRule: 'evenodd' }\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [64, 64, [], '', 'M24.293 29.364L31.1064 22.5505C31.1416 22.4806 31.1856 22.4139 31.2382 22.3521C31.2495 22.3389 31.2611 22.3259 31.2731 22.3133C31.2935 22.2917 31.3149 22.271 31.3371 22.2513C31.4135 22.1835 31.4978 22.1295 31.5868 22.0891C31.7127 22.0319 31.8526 22 32 22C32.0119 22 32.0238 22.0002 32.0357 22.0006C32.3033 21.9912 32.574 22.0886 32.7782 22.2929C32.8558 22.3705 32.918 22.4576 32.9648 22.5506L39.7782 29.364C40.1687 29.7545 40.1687 30.3877 39.7782 30.7782C39.3877 31.1687 38.7545 31.1687 38.364 30.7782L33 25.4142V44.5C33 45.0523 32.5523 45.5 32 45.5C31.4477 45.5 31 45.0523 31 44.5V25.4854L25.7072 30.7782C25.3167 31.1687 24.6835 31.1687 24.293 30.7782C23.9024 30.3876 23.9024 29.7545 24.293 29.364Z M52.9706 16.7582C52.8629 15.8759 52.4635 15.0493 51.8284 14.4142L44.5858 7.17157C43.9507 6.53652 43.1241 6.13706 42.2418 6.02943C42.1644 6.0102 42.0834 6 42 6C41.9726 6 41.9455 6.0011 41.9187 6.00325C41.8651 6.00109 41.8113 6 41.7574 6H15C12.7909 6 11 7.79086 11 10L11 54C11 56.2091 12.7909 58 15 58H49C51.2091 58 53 56.2091 53 54L53 17.2426C53 17.1887 52.9989 17.1349 52.9967 17.0813C52.9989 17.0545 53 17.0274 53 17C53 16.9166 52.9898 16.8356 52.9706 16.7582ZM50.5671 16C50.5197 15.9402 50.4687 15.8829 50.4142 15.8284L43.1716 8.58579C43.1171 8.5313 43.0598 8.48028 43 8.43288V16L50.5671 16ZM51 18H42C41.4477 18 41 17.5523 41 17V8L15 8C13.8954 8 13 8.89543 13 10L13 54C13 55.1046 13.8954 56 15 56H49C50.1046 56 51 55.1046 51 54L51 18Z'],\r\n name: 'conUploadFile',\r\n pathProps: { fillRule: 'evenodd', clipRule: 'evenodd' }\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [64, 64, [], '', 'M51 32V18H42C41.4477 18 41 17.5523 41 17V8L15 8C13.8954 8 13 8.89543 13 10L13 32C13 32.5523 12.5523 33 12 33C11.4477 33 11 32.5523 11 32V10C11 7.79086 12.7909 6 15 6H41.7574C41.8113 6 41.8651 6.00109 41.9187 6.00325C41.9455 6.0011 41.9726 6 42 6C42.0834 6 42.1644 6.0102 42.2418 6.02943C43.1241 6.13706 43.9507 6.53652 44.5858 7.17157L51.8284 14.4142C52.4635 15.0493 52.8629 15.8759 52.9706 16.7582C52.9898 16.8356 53 16.9166 53 17C53 17.0274 52.9989 17.0545 52.9967 17.0813C52.9989 17.1349 53 17.1887 53 17.2426V32C53 32.5523 52.5523 33 52 33C51.4477 33 51 32.5523 51 32ZM50.4142 15.8284C50.4687 15.8829 50.5197 15.9402 50.5671 16L43 16V8.43288C43.0598 8.48029 43.1171 8.5313 43.1716 8.58579L50.4142 15.8284Z M31.1064 24.5505L24.293 31.364C23.9024 31.7545 23.9024 32.3876 24.293 32.7782C24.6835 33.1687 25.3167 33.1687 25.7072 32.7782L31 27.4854V46.5C31 47.0523 31.4477 47.5 32 47.5C32.5523 47.5 33 47.0523 33 46.5V27.4142L38.364 32.7782C38.7545 33.1687 39.3876 33.1687 39.7782 32.7782C40.1687 32.3877 40.1687 31.7545 39.7782 31.364L32.9648 24.5506C32.918 24.4576 32.8558 24.3705 32.7782 24.2929C32.574 24.0886 32.3033 23.9912 32.0357 24.0006C32.0238 24.0002 32.0119 24 32 24C31.8526 24 31.7127 24.0319 31.5868 24.0891C31.4978 24.1295 31.4135 24.1835 31.3371 24.2513C31.3149 24.271 31.2935 24.2917 31.2731 24.3133C31.2611 24.3259 31.2495 24.3389 31.2382 24.3521C31.1856 24.4139 31.1416 24.4806 31.1064 24.5505Z M22 56C21.4477 56 21 56.4477 21 57C21 57.5523 21.4477 58 22 58H32H42C42.5523 58 43 57.5523 43 57C43 56.4477 42.5523 56 42 56H22Z'],\r\n name: 'conUploadFile1',\r\n pathProps: { fillRule: 'evenodd', clipRule: 'evenodd' }\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [20, 20, [], '', 'M3 0C1.34315 0 0 1.34315 0 3V17C0 18.6569 1.34315 20 3 20H17C18.6569 20 20 18.6569 20 17V3C20 1.34315 18.6569 0 17 0H3ZM4.25 9.17969H15.75C15.8881 9.17969 16 9.29937 16 9.4375V10.5C16 10.6381 15.8881 10.75 15.75 10.75H4.25C4.11188 10.75 4 10.6381 4 10.5V9.4375C4 9.29937 4.11188 9.17969 4.25 9.17969Z'],\r\n name: 'cuiCheckboxIndeterminate'\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [20, 20, [], '', 'M17.8571 0C18.9913 0 19.9197 0.881093 19.9951 1.99614L20 2.14286V17.8571C20 18.9913 19.1189 19.9197 18.0039 19.9951L17.8571 20H2.14286C1.00869 20 0.080337 19.1189 0.00494355 18.0039L0 17.8571V2.14286C0 1.00869 0.881093 0.080337 1.99614 0.00494355L2.14286 0H17.8571ZM15.191 5.43326L7.89451 12.6712L4.81522 9.56705C4.60687 9.35701 4.26768 9.35563 4.05763 9.56402L3.67728 9.94129C3.46723 10.1496 3.46585 10.4888 3.67424 10.6989L7.50808 14.5637C7.71643 14.7738 8.05562 14.7751 8.26567 14.5667L16.3228 6.57424C16.5328 6.36589 16.5342 6.0267 16.3258 5.81665L15.9486 5.43629C15.7402 5.22625 15.401 5.22487 15.191 5.43326Z'],\r\n name: 'cuiCheckboxSelected'\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [20, 20, [], '', 'M17 1H3C1.89543 1 1 1.89543 1 3V17C1 18.1046 1.89543 19 3 19H17C18.1046 19 19 18.1046 19 17V3C19 1.89543 18.1046 1 17 1ZM3 0C1.34315 0 0 1.34315 0 3V17C0 18.6569 1.34315 20 3 20H17C18.6569 20 20 18.6569 20 17V3C20 1.34315 18.6569 0 17 0H3Z'],\r\n name: 'cuiCheckboxUnselected',\r\n pathProps: { fillRule: 'evenodd', clipRule: 'evenodd' }\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [20, 20, [], '', 'M19 10C19 14.9706 14.9706 19 10 19C5.02944 19 1 14.9706 1 10C1 5.02944 5.02944 1 10 1C14.9706 1 19 5.02944 19 10ZM20 10C20 15.5228 15.5228 20 10 20C4.47715 20 0 15.5228 0 10C0 4.47715 4.47715 0 10 0C15.5228 0 20 4.47715 20 10ZM10 16C13.3137 16 16 13.3137 16 10C16 6.68629 13.3137 4 10 4C6.68629 4 4 6.68629 4 10C4 13.3137 6.68629 16 10 16Z'],\r\n name: 'cuiRadioSelected',\r\n pathProps: { fillRule: 'evenodd', clipRule: 'evenodd' }\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [20, 20, [], '', 'M10 19C14.9706 19 19 14.9706 19 10C19 5.02944 14.9706 1 10 1C5.02944 1 1 5.02944 1 10C1 14.9706 5.02944 19 10 19ZM10 20C15.5228 20 20 15.5228 20 10C20 4.47715 15.5228 0 10 0C4.47715 0 0 4.47715 0 10C0 15.5228 4.47715 20 10 20Z'],\r\n name: 'cuiRadioUnselected',\r\n pathProps: { fillRule: 'evenodd', clipRule: 'evenodd' }\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [32, 32, [], '', 'M14.9466 17.083C15.0366 16.675 15.0816 16.246 15.0816 15.796C15.0816 15.346 15.0366 14.92 14.9466 14.518C14.8566 14.11 14.7126 13.756 14.5146 13.456C14.3166 13.15 14.0586 12.907 13.7406 12.727C13.4286 12.547 13.0476 12.457 12.5976 12.457C12.1476 12.457 11.7636 12.547 11.4456 12.727C11.1276 12.907 10.8666 13.15 10.6626 13.456C10.4646 13.756 10.3206 14.11 10.2306 14.518C10.1406 14.92 10.0956 15.346 10.0956 15.796C10.0956 16.246 10.1406 16.675 10.2306 17.083C10.3206 17.491 10.4646 17.851 10.6626 18.163C10.8666 18.469 11.1276 18.715 11.4456 18.901C11.7636 19.081 12.1476 19.171 12.5976 19.171C13.0476 19.171 13.4286 19.081 13.7406 18.901C14.0586 18.715 14.3166 18.469 14.5146 18.163C14.7126 17.851 14.8566 17.491 14.9466 17.083ZM13.4976 15.139C13.5216 15.379 13.5336 15.598 13.5336 15.796C13.5336 16 13.5216 16.225 13.4976 16.471C13.4736 16.711 13.4286 16.936 13.3626 17.146C13.2966 17.35 13.2006 17.524 13.0746 17.668C12.9546 17.806 12.7956 17.875 12.5976 17.875C12.3996 17.875 12.2376 17.806 12.1116 17.668C11.9856 17.524 11.8866 17.35 11.8146 17.146C11.7486 16.936 11.7036 16.711 11.6796 16.471C11.6556 16.225 11.6436 16 11.6436 15.796C11.6436 15.598 11.6556 15.379 11.6796 15.139C11.7036 14.899 11.7486 14.677 11.8146 14.473C11.8866 14.263 11.9856 14.089 12.1116 13.951C12.2376 13.807 12.3996 13.735 12.5976 13.735C12.7956 13.735 12.9546 13.807 13.0746 13.951C13.2006 14.089 13.2966 14.263 13.3626 14.473C13.4286 14.677 13.4736 14.899 13.4976 15.139Z M18.047 14.32V19H19.559V12.628H18.173L16.076 14.167L16.859 15.238L18.047 14.32Z M26.4406 24.9515C28.557 23.0755 30.4249 20.5598 31.9026 17.4305C31.9061 17.423 31.9096 17.4155 31.913 17.4079C31.9703 17.2797 31.9985 17.1457 32.0001 17.0133C32.0019 16.8838 31.9785 16.752 31.927 16.6249C31.9233 16.6158 31.9195 16.6068 31.9155 16.5978C28.3538 8.37001 22.4878 4 16.2884 4C10.1044 4 4.05229 8.35061 0.103991 16.5558C0.0942613 16.5754 0.0851868 16.5954 0.076778 16.6156C0.0221524 16.7465 -0.00252763 16.8831 -7.85859e-05 17.0174C0.00215906 17.1518 0.0315895 17.2874 0.0907476 17.4163C0.0998582 17.4363 0.109625 17.4559 0.120036 17.4752C4.08985 25.0372 10.1514 29 16.2884 29C19.2884 29 22.2238 28.0532 24.8599 26.2026L28.4424 29.7133C28.8369 30.0999 29.47 30.0935 29.8565 29.699C30.2431 29.3045 30.2367 28.6714 29.8422 28.2849L26.4406 24.9515ZM16.2884 6C11.2302 6 5.86034 9.50392 2.12354 16.9798C5.83906 23.7739 11.1921 27 16.2884 27C18.711 27 21.1506 26.2709 23.4032 24.7752L21.6213 23.029C20.0811 24.2624 18.1267 25 16 25C11.0294 25 6.99999 20.9706 6.99999 16C6.99999 11.0294 11.0294 7 16 7C20.9706 7 25 11.0294 25 16C25 18.1233 24.2647 20.0749 23.0348 21.614L25.0091 23.5487C26.8571 21.9408 28.5302 19.7597 29.8988 16.9815C26.5303 9.4987 21.3413 6 16.2884 6ZM16 9C12.134 9 8.99999 12.134 8.99999 16C8.99999 19.866 12.134 23 16 23C19.866 23 23 19.866 23 16C23 12.134 19.866 9 16 9Z'],\r\n name: 'culEyeAssess',\r\n pathProps: { fillRule: 'evenodd', clipRule: 'evenodd' }\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [512, 512, [], '', ['M478.71 364.58zm-22 6.11l-27.83-15.9a15.92 15.92 0 0 1-6.94-19.2A184 184 0 1 1 256 72c5.89 0 11.71.29 17.46.83-.74-.07-1.48-.15-2.23-.21-8.49-.69-15.23-7.31-15.23-15.83v-32a16 16 0 0 1 15.34-16C266.24 8.46 261.18 8 256 8 119 8 8 119 8 256s111 248 248 248c98 0 182.42-56.95 222.71-139.42-4.13 7.86-14.23 10.55-22 6.11z', 'M271.23 72.62c-8.49-.69-15.23-7.31-15.23-15.83V24.73c0-9.11 7.67-16.78 16.77-16.17C401.92 17.18 504 124.67 504 256a246 246 0 0 1-25 108.24c-4 8.17-14.37 11-22.26 6.45l-27.84-15.9c-7.41-4.23-9.83-13.35-6.2-21.07A182.53 182.53 0 0 0 440 256c0-96.49-74.27-175.63-168.77-183.38z']],\r\n name: 'fadSpinnerThird'\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [448, 512, [], '', 'M413.505 91.951L133.49 371.966l-98.995-98.995c-4.686-4.686-12.284-4.686-16.971 0L6.211 284.284c-4.686 4.686-4.686 12.284 0 16.971l118.794 118.794c4.686 4.686 12.284 4.686 16.971 0l299.813-299.813c4.686-4.686 4.686-12.284 0-16.971l-11.314-11.314c-4.686-4.686-12.284-4.686-16.97 0z'],\r\n name: 'falCheck'\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [512, 512, [], '', 'M256 8C119.033 8 8 119.033 8 256s111.033 248 248 248 248-111.033 248-248S392.967 8 256 8zm0 464c-118.664 0-216-96.055-216-216 0-118.663 96.055-216 216-216 118.664 0 216 96.055 216 216 0 118.663-96.055 216-216 216zm141.63-274.961L217.15 376.071c-4.705 4.667-12.303 4.637-16.97-.068l-85.878-86.572c-4.667-4.705-4.637-12.303.068-16.97l8.52-8.451c4.705-4.667 12.303-4.637 16.97.068l68.976 69.533 163.441-162.13c4.705-4.667 12.303-4.637 16.97.068l8.451 8.52c4.668 4.705 4.637 12.303-.068 16.97z'],\r\n name: 'falCheckCircle'\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [320, 512, [], '', 'M192 256c0 17.7-14.3 32-32 32s-32-14.3-32-32 14.3-32 32-32 32 14.3 32 32zm88-32c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32zm-240 0c-17.7 0-32 14.3-32 32s14.3 32 32 32 32-14.3 32-32-14.3-32-32-32z'],\r\n name: 'falEllipsisH'\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [64, 512, [], '', 'M32 224c17.7 0 32 14.3 32 32s-14.3 32-32 32-32-14.3-32-32 14.3-32 32-32zM0 136c0 17.7 14.3 32 32 32s32-14.3 32-32-14.3-32-32-32-32 14.3-32 32zm0 240c0 17.7 14.3 32 32 32s32-14.3 32-32-14.3-32-32-32-32 14.3-32 32z'],\r\n name: 'falEllipsisV'\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [512, 512, [], '', 'M256 40c118.621 0 216 96.075 216 216 0 119.291-96.61 216-216 216-119.244 0-216-96.562-216-216 0-119.203 96.602-216 216-216m0-32C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm-11.49 120h22.979c6.823 0 12.274 5.682 11.99 12.5l-7 168c-.268 6.428-5.556 11.5-11.99 11.5h-8.979c-6.433 0-11.722-5.073-11.99-11.5l-7-168c-.283-6.818 5.167-12.5 11.99-12.5zM256 340c-15.464 0-28 12.536-28 28s12.536 28 28 28 28-12.536 28-28-12.536-28-28-28z'],\r\n name: 'falExclamationCircle'\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [576, 512, [], '', 'M270.2 160h35.5c3.4 0 6.1 2.8 6 6.2l-7.5 196c-.1 3.2-2.8 5.8-6 5.8h-20.5c-3.2 0-5.9-2.5-6-5.8l-7.5-196c-.1-3.4 2.6-6.2 6-6.2zM288 388c-15.5 0-28 12.5-28 28s12.5 28 28 28 28-12.5 28-28-12.5-28-28-28zm281.5 52L329.6 24c-18.4-32-64.7-32-83.2 0L6.5 440c-18.4 31.9 4.6 72 41.6 72H528c36.8 0 60-40 41.5-72zM528 480H48c-12.3 0-20-13.3-13.9-24l240-416c6.1-10.6 21.6-10.7 27.7 0l240 416c6.2 10.6-1.5 24-13.8 24z'],\r\n name: 'falExclamationTriangle'\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [512, 512, [], '', 'M256 40c118.621 0 216 96.075 216 216 0 119.291-96.61 216-216 216-119.244 0-216-96.562-216-216 0-119.203 96.602-216 216-216m0-32C119.043 8 8 119.083 8 256c0 136.997 111.043 248 248 248s248-111.003 248-248C504 119.083 392.957 8 256 8zm-36 344h12V232h-12c-6.627 0-12-5.373-12-12v-8c0-6.627 5.373-12 12-12h48c6.627 0 12 5.373 12 12v140h12c6.627 0 12 5.373 12 12v8c0 6.627-5.373 12-12 12h-72c-6.627 0-12-5.373-12-12v-8c0-6.627 5.373-12 12-12zm36-240c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32z'],\r\n name: 'falInfoCircle'\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [384, 512, [], '', 'M376 232H216V72c0-4.42-3.58-8-8-8h-32c-4.42 0-8 3.58-8 8v160H8c-4.42 0-8 3.58-8 8v32c0 4.42 3.58 8 8 8h160v160c0 4.42 3.58 8 8 8h32c4.42 0 8-3.58 8-8V280h160c4.42 0 8-3.58 8-8v-32c0-4.42-3.58-8-8-8z'],\r\n name: 'falPlus'\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [512, 512, [], '', 'M288 32c0 17.673-14.327 32-32 32s-32-14.327-32-32 14.327-32 32-32 32 14.327 32 32zm-32 416c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zm256-192c0-17.673-14.327-32-32-32s-32 14.327-32 32 14.327 32 32 32 32-14.327 32-32zm-448 0c0-17.673-14.327-32-32-32S0 238.327 0 256s14.327 32 32 32 32-14.327 32-32zm33.608 126.392c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zm316.784 0c-17.673 0-32 14.327-32 32s14.327 32 32 32 32-14.327 32-32-14.327-32-32-32zM97.608 65.608c-17.673 0-32 14.327-32 32 0 17.673 14.327 32 32 32s32-14.327 32-32c0-17.673-14.327-32-32-32z'],\r\n name: 'falSpinner'\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [320, 512, [], '', 'M193.94 256L296.5 153.44l21.15-21.15c3.12-3.12 3.12-8.19 0-11.31l-22.63-22.63c-3.12-3.12-8.19-3.12-11.31 0L160 222.06 36.29 98.34c-3.12-3.12-8.19-3.12-11.31 0L2.34 120.97c-3.12 3.12-3.12 8.19 0 11.31L126.06 256 2.34 379.71c-3.12 3.12-3.12 8.19 0 11.31l22.63 22.63c3.12 3.12 8.19 3.12 11.31 0L160 289.94 262.56 392.5l21.15 21.15c3.12 3.12 8.19 3.12 11.31 0l22.63-22.63c3.12-3.12 3.12-8.19 0-11.31L193.94 256z'],\r\n name: 'falTimes'\r\n};\r\n","/* eslint-disable */\r\nexport default {\r\n details: [512, 512, [], '', 'M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm0 464c-118.7 0-216-96.1-216-216 0-118.7 96.1-216 216-216 118.7 0 216 96.1 216 216 0 118.7-96.1 216-216 216zm94.8-285.3L281.5 256l69.3 69.3c4.7 4.7 4.7 12.3 0 17l-8.5 8.5c-4.7 4.7-12.3 4.7-17 0L256 281.5l-69.3 69.3c-4.7 4.7-12.3 4.7-17 0l-8.5-8.5c-4.7-4.7-4.7-12.3 0-17l69.3-69.3-69.3-69.3c-4.7-4.7-4.7-12.3 0-17l8.5-8.5c4.7-4.7 12.3-4.7 17 0l69.3 69.3 69.3-69.3c4.7-4.7 12.3-4.7 17 0l8.5 8.5c4.6 4.7 4.6 12.3 0 17z'],\r\n name: 'falTimesCircle'\r\n};\r\n","import conCreateDataset from './baseIcons/conc/conCreateDataset';\r\nimport conDatabase from './baseIcons/conc/conDatabase';\r\nimport conDatabasePlus from './baseIcons/conc/conDatabasePlus';\r\nimport conDataset from './baseIcons/conc/conDataset';\r\nimport conFolderPlus from './baseIcons/conc/conFolderPlus';\r\nimport conInsightSearchAlt from './baseIcons/conc/conInsightSearchAlt';\r\nimport conLNGBunkering from './baseIcons/conc/conLNGBunkering';\r\nimport conMachineLearning from './baseIcons/conc/conMachineLearning';\r\nimport conReport from './baseIcons/conc/conReport';\r\nimport conReport1 from './baseIcons/conc/conReport1';\r\nimport conSensorAlt from './baseIcons/conc/conSensorAlt';\r\nimport conSensorPlus from './baseIcons/conc/conSensorPlus';\r\nimport conUploadFile from './baseIcons/conc/conUploadFile';\r\nimport conUploadFile1 from './baseIcons/conc/conUploadFile1';\r\nimport cuiCheckboxIndeterminate from './baseIcons/cui/cuiCheckboxIndeterminate';\r\nimport cuiCheckboxSelected from './baseIcons/cui/cuiCheckboxSelected';\r\nimport cuiCheckboxUnselected from './baseIcons/cui/cuiCheckboxUnselected';\r\nimport cuiRadioSelected from './baseIcons/cui/cuiRadioSelected';\r\nimport cuiRadioUnselected from './baseIcons/cui/cuiRadioUnselected';\r\nimport culEyeAssess from './baseIcons/cul/culEyeAssess';\r\nimport fadSpinnerThird from './baseIcons/fad/fadSpinnerThird';\r\nimport falCheck from './baseIcons/fal/falCheck';\r\nimport falCheckCircle from './baseIcons/fal/falCheckCircle';\r\nimport falEllipsisH from './baseIcons/fal/falEllipsisH';\r\nimport falEllipsisV from './baseIcons/fal/falEllipsisV';\r\nimport falExclamationCircle from './baseIcons/fal/falExclamationCircle';\r\nimport falExclamationTriangle from './baseIcons/fal/falExclamationTriangle';\r\nimport falInfoCircle from './baseIcons/fal/falInfoCircle';\r\nimport falPlus from './baseIcons/fal/falPlus';\r\nimport falSpinner from './baseIcons/fal/falSpinner';\r\nimport falTimes from './baseIcons/fal/falTimes';\r\nimport falTimesCircle from './baseIcons/fal/falTimesCircle';\r\n/**\r\n * Default icons are fundamental to functioning of certain components.\r\n * They are added to the icon library in order to avoid loading them from CDN.\r\n */\r\nexport const defaultIcons = {\r\n conCreateDataset,\r\n conDatabase,\r\n conDatabasePlus,\r\n conDataset,\r\n conFolderPlus,\r\n conLNGBunkering,\r\n conReport,\r\n conReport1,\r\n conSensorAlt,\r\n conSensorPlus,\r\n conUploadFile,\r\n conUploadFile1,\r\n conInsightSearchAlt,\r\n conMachineLearning,\r\n cuiCheckboxIndeterminate,\r\n cuiCheckboxSelected,\r\n cuiCheckboxUnselected,\r\n cuiRadioSelected,\r\n cuiRadioUnselected,\r\n culEyeAssess,\r\n fadSpinnerThird,\r\n falCheck,\r\n falCheckCircle,\r\n falEllipsisH,\r\n falEllipsisV,\r\n falExclamationCircle,\r\n falExclamationTriangle,\r\n falInfoCircle,\r\n falPlus,\r\n falSpinner,\r\n falTimes,\r\n falTimesCircle\r\n};\r\n","import { defaultIcons } from './consts';\r\n/**\r\n * Holds the collection of selected predefined icons. Can be extended with more icons by the consumer.\r\n * When using icons, they will be checked in library before loading them from CDN.\r\n */\r\nclass IconsCache {\r\n constructor() {\r\n this.cache = new Map();\r\n this.add = (...icons) => {\r\n icons.forEach(icon => {\r\n this.cache.set(icon.name, icon);\r\n });\r\n };\r\n this.get = (name) => {\r\n const icon = this.cache.get(name);\r\n if (!icon) {\r\n /* eslint-disable-next-line no-console */\r\n console.error(`Icon ${name} does not exist in the library.`);\r\n }\r\n return icon;\r\n };\r\n this.has = (name) => {\r\n return this.cache.has(name);\r\n };\r\n this.init = () => {\r\n this.add(...Object.values(defaultIcons));\r\n };\r\n this.reset = () => {\r\n this.cache.clear();\r\n };\r\n }\r\n}\r\nconst cache = new IconsCache();\r\ncache.init();\r\nexport default cache;\r\n","import { cdnUrl } from '../core';\r\nimport { iconsCache } from '../icons';\r\n/**\r\n * Returns an object with either 'src' or 'customIcon', depending on whether the provided icon is:\r\n * - not in library: 'src' as CDN url\r\n * - in library: 'customIcon' as icon definition object\r\n */\r\nexport function getIconDetails(icon) {\r\n if (!icon)\r\n return {};\r\n // Compute CDN url if icon is not in library cache\r\n if (!iconsCache.has(icon)) {\r\n const prefix = icon.slice(0, 3);\r\n return {\r\n src: `${cdnUrl}/common/icons/ui/${prefix}/${icon}.svg`\r\n };\r\n }\r\n // Compute relevant properties based on icon definition from the library\r\n const { details, name, pathProps = [], svgProps = {} } = iconsCache.get(icon);\r\n const [width, height, , , d] = details;\r\n const viewBox = `0 0 ${width} ${height}`;\r\n const customIcon = {\r\n d: Array.isArray(d) ? d : [d],\r\n pathProps: Array.isArray(pathProps) ? pathProps : [pathProps],\r\n svgProps: { 'data-name': name, viewBox, ...svgProps }\r\n };\r\n return {\r\n customIcon\r\n };\r\n}\r\n","import React from 'react';\r\nimport { omitThemingProps, useStyleConfig, vui } from '../core';\r\nimport { Svg } from '../svg';\r\nimport { cs, filterUndefined } from '../utils';\r\nimport { getIconDetails } from './helpers';\r\n/** Displays and Svg element with a given icon. Handles icon names or definition objects. */\r\nexport const Icon = vui((props, ref) => {\r\n const { className, icon, name = props.icon, rotate, scale, ...rest } = omitThemingProps(props);\r\n const styles = useStyleConfig('Icon', props);\r\n const { customIcon, src } = getIconDetails(name);\r\n const scaledSize = scale ? 16 * scale : undefined;\r\n const aliasedProps = filterUndefined({\r\n h: scaledSize,\r\n transform: rotate !== undefined ? `rotate(${rotate}deg)` : undefined,\r\n w: scaledSize\r\n });\r\n return (React.createElement(Svg, { className: cs('vui-icon', className), clipRule: customIcon?.pathProps?.clipRule || props?.pathProps?.clipRule || undefined, display: \"inline-flex\", fillRule: customIcon?.pathProps?.fillRule || props?.pathProps?.fillRule || undefined, flexShrink: 0, ref: ref, src: src, ...styles, ...customIcon?.svgProps, ...aliasedProps, ...rest }, customIcon?.d.map((d, i) => (React.createElement(\"path\", { d: d, fill: \"currentColor\", key: i, ...customIcon.pathProps[i] })))));\r\n});\r\nIcon.displayName = 'Icon';\r\nexport default Icon;\r\n","import { createContext } from '../utils';\r\nconst [ButtonProvider, useButtonContext] = createContext({ isOptional: true });\r\nexport { ButtonProvider, useButtonContext };\r\n","import React from 'react';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport Icon from '../icon';\r\nimport { cs } from '../utils';\r\nimport { useButtonContext } from './context';\r\nconst isConceptualIcon = (name) => name?.startsWith('con');\r\n/** Displays an icon within the Button. */\r\nexport const ButtonIcon = vui((props, ref) => {\r\n const { className, name, ...rest } = props;\r\n const styles = useStyleConfig('Button', useButtonContext());\r\n const verifiedName = isConceptualIcon(name) ? undefined : name;\r\n return React.createElement(Icon, { className: cs('vui-buttonIcon', className), name: verifiedName, ref: ref, ...styles.icon, ...rest });\r\n});\r\nButtonIcon.displayName = 'ButtonIcon';\r\nexport default ButtonIcon;\r\n","import React from 'react';\r\nimport { omitThemingProps, styled, useStyleConfig, vui } from '../core';\r\nimport { cs, filterUndefined } from '../utils';\r\nexport const TBase = styled.spanBox `\n transition-duration: fast;\n`;\r\n/** Displays given text and allows easy styling. */\r\nexport const T = vui((props, ref) => {\r\n const { align, casing, centerV, children, className, decoration, text, weight, ...rest } = omitThemingProps(props);\r\n const styles = useStyleConfig('T', props);\r\n const aliasedProps = filterUndefined({\r\n alignItems: centerV ? 'center' : undefined,\r\n display: centerV ? 'inline-flex' : undefined,\r\n fontWeight: weight,\r\n textAlign: align,\r\n textDecoration: decoration,\r\n textTransform: casing\r\n });\r\n return (React.createElement(TBase, { className: cs('vui-t', className), ref: ref, ...styles, ...aliasedProps, ...rest }, children ?? text));\r\n});\r\nT.displayName = 'T';\r\nexport default T;\r\n","import React from 'react';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport T from '../t';\r\nimport { cs } from '../utils';\r\nimport { useButtonContext } from './context';\r\n/** Displays the text label of the button. */\r\nexport const ButtonText = vui((props, ref) => {\r\n const { className, ...rest } = props;\r\n const styles = useStyleConfig('Button', useButtonContext());\r\n return React.createElement(T, { className: cs('vui-buttonText', className), fontSize: \"inherit\", ref: ref, ...styles.text, ...rest });\r\n});\r\nButtonText.displayName = 'ButtonText';\r\nexport default ButtonText;\r\n","export const loadingIconProps = {\r\n animation: 'vui-spin 0.6s linear infinite',\r\n name: 'fadSpinnerThird',\r\n pathFill: ['', 'transparent']\r\n};\r\nexport const buttonStateMapping = {\r\n error: {\r\n variant: 'solidRed',\r\n iconProps: {\r\n animation: 'fadeDown',\r\n icon: 'falTimesCircle'\r\n }\r\n },\r\n loading: {\r\n variant: 'primaryDark',\r\n iconProps: loadingIconProps\r\n },\r\n success: {\r\n variant: 'solidGreen',\r\n iconProps: {\r\n animation: 'fadeDown',\r\n icon: 'falCheckCircle'\r\n }\r\n }\r\n};\r\n","import React, { useMemo } from 'react';\r\nimport { useButtonGroupContext } from '../buttonGroup/context';\r\nimport { styled, useStyleConfig, vui } from '../core';\r\nimport { activeClassName, cs, filterUndefined, isReactText, isString } from '../utils';\r\nimport ButtonIcon from './buttonIcon';\r\nimport ButtonText from './buttonText';\r\nimport { buttonStateMapping, loadingIconProps } from './consts';\r\nimport { ButtonProvider } from './context';\r\nconst ContentWrapper = styled.span `\n visibility: hidden;\n`;\r\nconst StateWrapper = styled.span `\n bottom: 0;\n display: flex;\n left: 0;\n position: absolute;\n right: 0;\n top: 0;\n`;\r\nexport const ButtonBase = styled.buttonBox `\n align-items: center;\n display: inline-flex;\n flex-shrink: 0;\n font-weight: medium;\n justify-content: center;\n line-height: normal;\n overflow: hidden;\n position: relative;\n transition-duration: fast;\n user-select: none;\n width: fit-content;\n`;\r\n/**\r\n * Triggers given actions on click. Supports multiple states, sizes and variants.\r\n *\r\n * Comes with additional props for extra behavior, like loading, disabled or elevated.\r\n *\r\n * Exposes some props to the children via context.\r\n */\r\nexport const Button = vui((props, ref) => {\r\n const buttonGroupProps = useButtonGroupContext();\r\n const mergedProps = { ...buttonGroupProps, ...props };\r\n const { borderWidth: borderWidthProp, children, className, colorScheme, disabled, dropDownIcon = 'falAngleDown', icon, iconLeft, iconRight, isActive, isDropDown, isElevated, isFullWidth, isLoading, // eslint-disable-line\r\n isRound, isSplit, isTruncated, size, state = '', stateMapping, text, title, variant: variantProp, ...rest } = mergedProps;\r\n const hasState = Boolean(state) && state !== 'idle';\r\n const states = { ...buttonStateMapping, ...stateMapping };\r\n const { iconProps: stateIconProps, ...stateProps } = states[state] ?? {};\r\n const variant = filterUndefined({\r\n variant: states[state]?.variant ?? variantProp\r\n });\r\n const styles = useStyleConfig('Button', { ...mergedProps, ...variant });\r\n const { borderWidth, h, spaceX = 0, ...buttonStyles } = styles.container;\r\n const context = useMemo(() => filterUndefined({ disabled, size, variant }), [disabled, size, variant]);\r\n const Content = hasState ? ContentWrapper : React.Fragment;\r\n // Apply more space for text and less space for icons\r\n const border = borderWidthProp ?? borderWidth ?? 1;\r\n const spaceXItem = spaceX - border;\r\n const spaceXText = spaceX * 2 - border;\r\n const iconLeftMr = spaceXItem + 1 + 'px';\r\n const iconRightMl = isSplit ? 'auto' : spaceXItem + 1 + 'px';\r\n const pl = (icon || iconLeft || isLoading ? spaceXItem : spaceXText) + 'px';\r\n const pr = (icon || iconRight ? spaceXItem : spaceXText) + 'px';\r\n let ariaLabel = '';\r\n if (title)\r\n ariaLabel = title;\r\n else {\r\n if (isString(text))\r\n ariaLabel = text;\r\n else if (isReactText(text))\r\n ariaLabel = text.toString();\r\n else {\r\n if (isString(icon))\r\n ariaLabel = icon;\r\n else if (isString(iconLeft))\r\n ariaLabel = iconLeft;\r\n else if (isString(iconRight))\r\n ariaLabel = iconRight;\r\n }\r\n }\r\n const disabledProps = disabled\r\n ? {\r\n 'aria-disabled': disabled,\r\n disabledBg: 'bg',\r\n disabledBorderColor: 'borderColor',\r\n disabledColor: 'color',\r\n hoverBg: 'bg',\r\n hoverBorderColor: 'borderColor',\r\n hoverColor: 'color',\r\n activeBg: 'bg',\r\n cursor: 'not-allowed',\r\n opacity: 0.5\r\n }\r\n : {};\r\n const aliasedProps = filterUndefined({\r\n borderRadius: isRound ? h / 2 : styles?.container?.borderRadius || 0,\r\n boxShadow: isElevated ? '2' : undefined,\r\n minW: icon ? 0 : undefined,\r\n pointerEvents: hasState ? 'none' : undefined,\r\n w: isFullWidth ? '100%' : undefined\r\n });\r\n return (React.createElement(ButtonProvider, { value: context },\r\n React.createElement(ButtonBase, { borderWidth: border, className: cs('vui-button', className, isActive && activeClassName, variantProp ? `vui-button-variant-${variantProp}` : undefined), disabled: disabled, focusRing: 3, h: h, pl: pl, pr: isDropDown ? 0 : pr, ref: ref, title: title || ariaLabel, type: \"button\", variant: variant, ...buttonStyles, ...disabledProps, ...aliasedProps, ...rest },\r\n hasState && (React.createElement(StateWrapper, { onClick: (e) => e.stopPropagation(), ...stateProps },\r\n React.createElement(ButtonIcon, { m: \"auto\", ...stateIconProps }))),\r\n React.createElement(Content, null,\r\n isString(icon) ? React.createElement(ButtonIcon, { name: icon }) : icon,\r\n !icon && (React.createElement(React.Fragment, null,\r\n isLoading ? (React.createElement(ButtonIcon, { mr: isDropDown ? 0 : iconLeftMr, ...loadingIconProps })) : isString(iconLeft) ? (React.createElement(ButtonIcon, { mr: isDropDown ? 0 : iconLeftMr, name: iconLeft })) : (iconLeft),\r\n children ?? (isReactText(text) ? React.createElement(ButtonText, { ...{ isTruncated, text } }) : text),\r\n isString(iconRight) ? React.createElement(ButtonIcon, { ml: iconRightMl, name: iconRight }) : iconRight)),\r\n isDropDown && React.createElement(ButtonIcon, { name: dropDownIcon })))));\r\n});\r\nButton.Icon = ButtonIcon;\r\nButton.Text = ButtonText;\r\nButton.displayName = 'Button';\r\nexport default Button;\r\n","import React from 'react';\r\nimport { vui } from '../core';\r\nimport Button from './button';\r\nexport const AppButton = vui((props, ref) => (React.createElement(Button, { ref: ref, variant: \"primaryDark\", ...props })));\r\nexport const BackButton = vui((props, ref) => (React.createElement(IconButton, { icon: \"falArrowLeft\", ref: ref, variant: \"tertiaryDark\", ...props })));\r\nexport const CloseButton = vui((props, ref) => (React.createElement(IconButton, { icon: \"falTimes\", ref: ref, variant: \"tertiaryDark\", ...props })));\r\nexport const CTAButton = vui((props, ref) => (React.createElement(Button, { ref: ref, variant: \"solidGreen\", ...props })));\r\nexport const DangerButton = vui((props, ref) => (React.createElement(Button, { ref: ref, variant: \"solidRed\", ...props })));\r\nexport const IconButton = vui((props, ref) => (React.createElement(Button, { ref: ref, variant: \"tertiaryDark\", ...props })));\r\nexport const LineButton = vui((props, ref) => (React.createElement(Button, { ref: ref, variant: \"secondaryDark\", ...props })));\r\nexport const TextButton = vui((props, ref) => (React.createElement(Button, { ref: ref, variant: \"tertiaryDark\", ...props })));\r\n","import React from 'react';\r\nimport Button from '../button';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport { cs } from '../utils';\r\nimport { notificationStatusMapping } from './consts';\r\nimport { useNotificationContext } from './context';\r\n/** Displays an action button within the Notification. */\r\nexport const NotificationButton = vui((props, ref) => {\r\n const { className, ...rest } = props;\r\n const mergedProps = { ...useNotificationContext(), ...props };\r\n const styles = useStyleConfig('Notification', useNotificationContext());\r\n const { status = '' } = mergedProps;\r\n const { variant } = notificationStatusMapping[status] ?? {};\r\n return (React.createElement(Button, { className: cs('vui-notificationButton', className), ml: \"0px\", mr: \"16px\", my: \"16px\", px: \"12px\", py: \"6px\", ref: ref, ...styles.button, variant: variant, ...rest }));\r\n});\r\nNotificationButton.displayName = 'NotificationButton';\r\nexport default NotificationButton;\r\n","import React from 'react';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport Icon from '../icon';\r\nimport { cs } from '../utils';\r\nimport { notificationStatusMapping } from './consts';\r\nimport { useNotificationContext } from './context';\r\n/** Displays an icon based on the status within the Notification. */\r\nexport const NotificationIcon = vui((props, ref) => {\r\n const { className, alignSelf, ...rest } = props;\r\n const mergedProps = { ...useNotificationContext(), ...props };\r\n const styles = useStyleConfig('Notification', useNotificationContext());\r\n const { status = '' } = mergedProps;\r\n const { iconProps } = notificationStatusMapping[status] ?? {};\r\n const marginTop = alignSelf === 'center' ? '0' : '16px';\r\n return (React.createElement(Icon, { alignSelf: alignSelf, className: cs('vui-notificationIcon', className), ml: \"16px\", mt: marginTop, ref: ref, size: \"md\", ...styles.icon, ...iconProps, ...rest }));\r\n});\r\nNotificationIcon.displayName = 'NotificationIcon';\r\nexport default NotificationIcon;\r\n","import React from 'react';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport T from '../t';\r\nimport { cs } from '../utils';\r\nimport { useNotificationContext } from './context';\r\n/** Displays text within the Notification. */\r\nexport const NotificationText = vui((props, ref) => {\r\n const { className, ...rest } = props;\r\n const styles = useStyleConfig('Notification', useNotificationContext());\r\n return (React.createElement(T, { className: cs('vui-notificationText', className), flex: \"1\", lineHeight: \"24px\", minW: 0, mx: \"16px\", my: \"16px\", ref: ref, ...styles.text, ...rest }));\r\n});\r\nNotificationText.displayName = 'NotificationText';\r\nexport default NotificationText;\r\n","import React from 'react';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport { T } from '../t';\r\nimport { cs } from '../utils';\r\nimport { useNotificationContext } from './context';\r\n/** Displays a title within the Notification. */\r\nexport const NotificationTitle = vui((props, ref) => {\r\n const { className, ...rest } = props;\r\n const styles = useStyleConfig('Notification', useNotificationContext());\r\n return (React.createElement(T, { className: cs('vui-notificationTitle', className), fontWeight: \"demi\", ref: ref, ...styles.title, ...rest }));\r\n});\r\nNotificationTitle.displayName = 'NotificationTitle';\r\nexport default NotificationTitle;\r\n","import React from 'react';\r\nimport Box from '../box';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport { cs, filterUndefined, isReactText, isString } from '../utils';\r\nimport { notificationStatusMapping } from './consts';\r\nimport { NotificationProvider } from './context';\r\nimport NotificationButton from './notificationButton';\r\nimport NotificationIcon from './notificationIcon';\r\nimport NotificationText from './notificationText';\r\nimport NotificationTitle from './notificationTitle';\r\n/**\r\n * Displays informational content, like text and icon with optional action buttons.\r\n * Handles multiple states, like info, error or loading.\r\n */\r\nexport const Notification = vui((props, ref) => {\r\n const { action, children, className, icon, onClose, size, status, statusMapping, text, title, variant: variantProp = 'subtleBlue', verticalAlign, ...rest } = props;\r\n const statuses = { ...notificationStatusMapping, ...statusMapping };\r\n const { variant = variantProp } = statuses[status ?? ''] ?? {};\r\n const styles = useStyleConfig('Notification', { variant, ...props });\r\n const iconName = isString(icon) ? icon : statuses[status ?? '']?.iconProps?.name;\r\n const context = filterUndefined({ size, status });\r\n const titleDisplay = action ? 'block' : 'inline-flex';\r\n const alignSelf = verticalAlign === 'center' ? 'center' : 'flex-start';\r\n return (React.createElement(NotificationProvider, { value: context },\r\n React.createElement(Box, { borderRadius: \"md\", borderWidth: 1, className: cs('vui-notification', className), ref: ref, role: \"mark\", w: \"fit-content\", ...styles.container, ...rest },\r\n iconName ? React.createElement(NotificationIcon, { alignSelf: alignSelf, name: iconName }) : icon,\r\n children ?? (React.createElement(NotificationText, { alignSelf: alignSelf },\r\n isReactText(title) ? React.createElement(NotificationTitle, { display: titleDisplay, text: title }) : title,\r\n \" \",\r\n text)),\r\n action,\r\n onClose && (React.createElement(NotificationButton, { alignSelf: alignSelf, icon: \"falTimes\", onClick: onClose, variant: variant, w: \"32px\" })))));\r\n});\r\nNotification.Button = NotificationButton;\r\nNotification.Icon = NotificationIcon;\r\nNotification.Text = NotificationText;\r\nNotification.Title = NotificationTitle;\r\nNotification.displayName = 'Notification';\r\nexport default Notification;\r\n","import React from 'react';\r\nimport { useVuiContext } from '../core';\r\nimport { Notification } from '../notification';\r\nimport { uid } from '../utils';\r\nexport const defaultDuration = 'fast';\r\nexport const fastToastDuration = 4000;\r\nexport const slowToastDuration = 8000;\r\nconst setup = {\r\n options: {\r\n duration: defaultDuration\r\n },\r\n componentList: []\r\n};\r\nconst getDurationTime = (duration) => (duration === 'fast' ? fastToastDuration : slowToastDuration);\r\nexport const useToast = () => {\r\n const { addToast, removeToast } = useVuiContext();\r\n const hideToast = (id) => removeToast(id);\r\n const showToast = (options) => {\r\n const id = options?.id ? options.id : uid('toast');\r\n const { duration = setup.options.duration } = options || {};\r\n const { status = setup.options.duration } = options || {};\r\n const { action } = options || {};\r\n const { icon } = options || {};\r\n const { text } = options || {};\r\n const { title } = options || {};\r\n const onClose = () => hideToast(id);\r\n const toast = {\r\n id,\r\n component: (React.createElement(Notification, { action: action, animation: \"fadeDown\", icon: icon, mt: { md: 1, sm: '4px', xs: '4px' }, onClose: onClose, shadow: 3, status: status, text: text, title: title, verticalAlign: \"center\", w: 1 }))\r\n };\r\n addToast(toast);\r\n if (duration && duration !== 'sticky')\r\n window.setTimeout(() => hideToast(id), getDurationTime(duration));\r\n };\r\n const showInfo = (text, duration = defaultDuration) => showToast({ text, status: 'info', duration });\r\n const showSuccess = (text, duration = defaultDuration) => showToast({ text, status: 'success', duration });\r\n const showWarning = (text, duration = defaultDuration) => showToast({ text, status: 'warning', duration });\r\n const showError = (text, duration = defaultDuration) => showToast({ text, status: 'error', duration });\r\n const showLoading = (text, duration = defaultDuration) => showToast({ text, status: 'loading', duration });\r\n return { showToast, hideToast, showInfo, showSuccess, showWarning, showError, showLoading };\r\n};\r\n","import React, { useEffect, useState } from 'react';\r\nimport { useToast } from '../../toast';\r\nimport { useOfflineMode } from './useOfflineMode';\r\nconst NotifyOffline = () => {\r\n const { showError, showInfo } = useToast();\r\n const [isOfflineNotified, setIsOfflineNotified] = useState(false);\r\n const { isOffline } = useOfflineMode();\r\n useEffect(() => {\r\n if (!isOffline && isOfflineNotified)\r\n showInfo('The application is online');\r\n if (isOffline) {\r\n showError('The application is offline');\r\n setIsOfflineNotified(true);\r\n }\r\n }, [isOffline]);\r\n return null;\r\n};\r\nexport default React.memo(NotifyOffline);\r\n","export const toastsReducer = (state, action) => {\r\n switch (action.type) {\r\n case 'add': {\r\n return { list: [action.toast, ...state.list] };\r\n }\r\n case 'remove': {\r\n return { list: state.list.filter(t => t.id !== action.toast.id) };\r\n }\r\n default: {\r\n throw new Error(`Unhandled action type: ${action.type}`);\r\n }\r\n }\r\n};\r\nexport const genericReducer = (state, action) => (state = action);\r\n","import React, { useReducer } from 'react';\r\nimport { ThemeProvider } from 'styled-components';\r\nimport PopoverStyle from '../../popover/popoverStyle';\r\nimport { Portal } from '../../portal';\r\nimport defaultTheme from '../../theme';\r\nimport { Toaster } from '../../toast';\r\nimport { VuiContextProvider } from './context';\r\nimport GlobalStyle from './globalStyle';\r\nimport NotifyOffline from './notifyOffline';\r\nimport { genericReducer, toastsReducer } from './reducers';\r\nimport ResetCSS from './resetCSS';\r\n/** Provides theme to all wrapped components and by default includes CSS reset and global styles. */\r\nconst VuiProvider = ({ children, globalStyle = true, resetCSS = true, theme = defaultTheme, notifyOffline = false }) => {\r\n const [toasts, toastsDispatch] = useReducer(toastsReducer, { list: [] });\r\n const [portalSlot, setPortalSlot] = useReducer(genericReducer, null);\r\n const addToast = (toast) => toastsDispatch({ type: 'add', toast });\r\n const removeToast = (id) => toastsDispatch({ type: 'remove', toast: { id } });\r\n const context = { toasts, addToast, removeToast, setPortalSlot };\r\n return (React.createElement(VuiContextProvider, { value: context },\r\n React.createElement(ThemeProvider, { theme: theme },\r\n React.createElement(React.Fragment, null,\r\n resetCSS && React.createElement(ResetCSS, null),\r\n React.createElement(GlobalStyle, { globalStyle: globalStyle }),\r\n React.createElement(PopoverStyle, null),\r\n children,\r\n notifyOffline && React.createElement(NotifyOffline, null),\r\n React.createElement(Portal, null,\r\n portalSlot,\r\n React.createElement(Toaster, null))))));\r\n};\r\nexport default VuiProvider;\r\n","import { createContext } from '../utils';\r\nconst [ListProvider, useListContext] = createContext({ isOptional: true });\r\nexport { ListProvider, useListContext };\r\n","import React from 'react';\r\nimport { omitThemingProps, styled, useStyleConfig, vui } from '../core';\r\nimport { cs, filterUndefined } from '../utils';\r\nexport const DividerBase = styled.hrBox `\n border-color: sandstone.90;\n`;\r\n/** Visually separates content with a horizontal or vertical line. */\r\nexport const Divider = vui((props, ref) => {\r\n const { className, isVertical, width, ...rest } = omitThemingProps(props);\r\n const styles = useStyleConfig('Divider', props);\r\n const borderSide = isVertical ? 'Right' : 'Bottom';\r\n const borderWidth = `border${borderSide}Width`;\r\n const height = isVertical ? '100%' : '';\r\n const aliasedProps = filterUndefined({\r\n [borderWidth]: width ?? 1\r\n });\r\n return (React.createElement(DividerBase, { className: cs('vui-divider', className), h: height, ref: ref, ...styles, ...aliasedProps, ...rest }));\r\n});\r\nDivider.displayName = 'Divider';\r\nexport default Divider;\r\n","import React from 'react';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport Divider from '../divider';\r\nimport { cs } from '../utils';\r\nimport { useListContext } from './context';\r\n/** Displays a divider line within the List. */\r\nexport const ListDivider = vui((props, ref) => {\r\n const { className, ...rest } = props;\r\n const styles = useStyleConfig('List', useListContext());\r\n return (React.createElement(\"li\", null,\r\n React.createElement(Divider, { className: cs('vui-listDivider', className), my: 1, ref: ref, ...styles.divider, ...rest })));\r\n});\r\nListDivider.displayName = 'ListDivider';\r\nexport default ListDivider;\r\n","import React from 'react';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport { T } from '../t';\r\nimport { cs } from '../utils';\r\nimport { useListContext } from './context';\r\n/** Displays a heading within the List. */\r\nexport const ListHeading = vui((props, ref) => {\r\n const { className, ...rest } = props;\r\n const styles = useStyleConfig('List', useListContext());\r\n return (React.createElement(\"li\", null,\r\n React.createElement(T, { className: cs('vui-listHeading', className), display: \"inline-block\", px: 2, py: 1, ref: ref, size: \"sm\", textTransform: \"uppercase\", weight: \"medium\", ...styles.heading, ...rest })));\r\n});\r\nListHeading.displayName = 'ListHeading';\r\nexport default ListHeading;\r\n","import React from 'react';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport Icon from '../icon';\r\nimport { cs } from '../utils';\r\nimport { useListContext } from './context';\r\n/** Displays an icon on the side of the ListItem. */\r\nexport const ListIcon = vui((props, ref) => {\r\n const { className, ...rest } = props;\r\n const styles = useStyleConfig('List', useListContext());\r\n return React.createElement(Icon, { className: cs('vui-listIcon', className), ref: ref, ...styles.icon, ...rest });\r\n});\r\nListIcon.displayName = 'ListIcon';\r\nexport default ListIcon;\r\n","import { createContext } from '../utils';\r\nconst [LinkProvider, useLinkContext] = createContext({ isOptional: true });\r\nexport { LinkProvider, useLinkContext };\r\n","import React from 'react';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport Icon from '../icon';\r\nimport { cs } from '../utils';\r\nimport { useLinkContext } from './context';\r\n/** Displays an icon within the Link. */\r\nexport const LinkIcon = vui((props, ref) => {\r\n const { className, ...rest } = props;\r\n const styles = useStyleConfig('Link', useLinkContext());\r\n return React.createElement(Icon, { className: cs('vui-linkIcon', className), ref: ref, ...styles.icon, ...rest });\r\n});\r\nLinkIcon.displayName = 'LinkIcon';\r\nexport default LinkIcon;\r\n","import React from 'react';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport T from '../t';\r\nimport { cs } from '../utils';\r\nimport { useLinkContext } from './context';\r\n/** Displays text of the Link. */\r\nexport const LinkText = vui((props, ref) => {\r\n const { className, ...rest } = props;\r\n const styles = useStyleConfig('Link', useLinkContext());\r\n return (React.createElement(T, { className: cs('vui-linkText', className), fontSize: \"inherit\", ref: ref, transitionDuration: \"unset\", ...styles.text, ...rest }));\r\n});\r\nLinkText.displayName = 'LinkText';\r\nexport default LinkText;\r\n","import React, { useMemo } from 'react';\r\nimport { styled, useStyleConfig, vui } from '../core';\r\nimport { cs, filterUndefined, isReactText, isString } from '../utils';\r\nimport { LinkProvider } from './context';\r\nimport LinkIcon from './linkIcon';\r\nimport LinkText from './linkText';\r\nexport const LinkBase = styled.aBox `\n align-items: center;\n border-radius: none;\n cursor: pointer;\n display: inline-flex;\n line-height: normal;\n outline: none;\n text-decoration: none;\n transition-duration: instant;\n width: fit-content;\n`;\r\n/**\r\n * Displays a link item. Handles different underline scenarios and opening external links in new tab.\r\n * Exposes some props to the children via context.\r\n */\r\nexport const Link = vui((props, ref) => {\r\n const { children, className, decoration, hoverDecoration = 'underline', iconLeft, iconRight, isExternal, isUnderlined, size, text, variant, weight, ...rest } = props;\r\n const styles = useStyleConfig('Link', props);\r\n const context = useMemo(() => filterUndefined({ size, variant }), [size, variant]);\r\n const aliasedProps = filterUndefined({\r\n fontWeight: weight,\r\n rel: isExternal ? 'noopener' : undefined,\r\n target: isExternal ? '_blank' : undefined,\r\n textDecoration: decoration ?? (isUnderlined ? 'underline' : undefined)\r\n });\r\n return (React.createElement(LinkProvider, { value: context },\r\n React.createElement(LinkBase, { className: cs('vui-link', className), focusRing: 2, hoverTextDecoration: hoverDecoration, ref: ref, ...styles.container, ...aliasedProps, ...rest },\r\n isString(iconLeft) ? React.createElement(LinkIcon, { mr: 1, name: iconLeft }) : iconLeft,\r\n children ?? (isReactText(text) ? React.createElement(LinkText, { text: text }) : text),\r\n isString(iconRight) ? React.createElement(LinkIcon, { ml: 1, name: iconRight }) : iconRight)));\r\n});\r\nLink.Icon = LinkIcon;\r\nLink.Text = LinkText;\r\nLink.displayName = 'Link';\r\nexport default Link;\r\n","import React from 'react';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport T from '../t';\r\nimport { cs, ellipsisOverflow } from '../utils';\r\nimport { useListContext } from './context';\r\n/** Displays text within the ListItem. */\r\nexport const ListText = vui((props, ref) => {\r\n const { className, ...rest } = props;\r\n const styles = useStyleConfig('List', useListContext());\r\n return (React.createElement(T, { className: cs('vui-listText', className), fontSize: \"inherit\", ref: ref, ...ellipsisOverflow, ...styles.text, ...rest }));\r\n});\r\nListText.displayName = 'ListText';\r\nexport default ListText;\r\n","import React, { Fragment } from 'react';\r\nimport { styled, useStyleConfig, vui } from '../core';\r\nimport Link from '../link';\r\nimport { cs, filterUndefined, isReactText, isString } from '../utils';\r\nimport { useListContext } from './context';\r\nimport ListIcon from './listIcon';\r\nimport ListText from './listText';\r\n/** Used as optional content wrapper when list item should be a link. */\r\nconst ListItemLink = vui((props, ref) => (React.createElement(Link, { borderRadius: \"none\", className: \"vui-listItemLink\", h: \"100%\", px: 2, ref: ref, variant: \"plain\", w: \"100%\", ...props })));\r\n/*@formatter:off*/\r\nexport const ListItemBase = styled.liBox `\n display: flex;\n line-height: normal;\n outline: none;\n transition-duration: fast;\n\n &[aria-disabled='true'] {\n cursor: not-allowed;\n user-select: none;\n opacity: 0.5;\n }\n\n &:focus-visible {\n z-index: 1;\n }\n`;\r\n/*@formatter:on*/\r\n/**\r\n * Displays a list item with text and optional icons. Can be shown as interactive or selected.\r\n * Optionally wraps the content with an <a> element when rendering a link.\r\n */\r\nexport const ListItem = vui((props, ref) => {\r\n const mergedProps = { ...useListContext(), ...props };\r\n const { children, center, centerH, centerV = true, className, column, disabled, iconLeft, iconRight, isInteractive: isInteractiveProp, isSelected, isTruncated, itemLeft, itemRight, linkProps, onClick, text, ...rest } = mergedProps;\r\n const styles = useStyleConfig('List', useListContext());\r\n const { activeBg, hoverBg, selectedBg, ...itemStyles } = styles.item;\r\n const isLinkItem = linkProps !== undefined;\r\n const isInteractive = isInteractiveProp || isLinkItem || onClick !== undefined;\r\n const alignItems = (center || (column ? centerH : centerV)) && 'center';\r\n const flexDirection = column && 'column';\r\n const justifyContent = (center || (column ? centerV : centerH)) && 'center';\r\n const ContentWrapper = isLinkItem ? ListItemLink : Fragment;\r\n const interactiveProps = !disabled && isInteractive\r\n ? {\r\n cursor: 'pointer',\r\n focusVisibleRing: 2,\r\n hoverBg,\r\n activeBg,\r\n tabIndex: !isLinkItem ? 0 : undefined,\r\n userSelect: 'none'\r\n }\r\n : {};\r\n const aliasedProps = filterUndefined({\r\n alignItems,\r\n bg: isSelected ? selectedBg : undefined,\r\n 'aria-disabled': disabled,\r\n flexDirection,\r\n justifyContent,\r\n px: isLinkItem ? 0 : undefined\r\n });\r\n return (React.createElement(ListItemBase, { bg: disabled ? rest.disabledBg || 'sandstone.95' : undefined, className: cs('vui-listItem', className), onClick: !disabled ? onClick : undefined, ref: ref, ...itemStyles, ...interactiveProps, ...aliasedProps, ...rest },\r\n React.createElement(ContentWrapper, { ...linkProps },\r\n itemLeft,\r\n isString(iconLeft) ? React.createElement(ListIcon, { mr: 1, name: iconLeft }) : iconLeft,\r\n children ?? (isReactText(text) ? React.createElement(ListText, { ...{ isTruncated, text } }) : text),\r\n isString(iconRight) ? React.createElement(ListIcon, { ml: \"auto\", name: iconRight }) : iconRight,\r\n itemRight)));\r\n});\r\nListItem.displayName = 'ListItem';\r\nexport default ListItem;\r\n","import React, { useMemo } from 'react';\r\nimport { styled, useStyleConfig, vui } from '../core';\r\nimport { cs, filterUndefined, isArray, isReactText } from '../utils';\r\nimport { ListProvider } from './context';\r\nimport ListDivider from './listDivider';\r\nimport ListHeading from './listHeading';\r\nimport ListIcon from './listIcon';\r\nimport ListItem from './listItem';\r\nimport ListText from './listText';\r\nexport const ListBase = styled.ulBox ``;\r\n/** Displays a list of list link items and optional heading. Exposes some props to the children via context. */\r\nexport const List = vui((props, ref) => {\r\n const { children, className, heading, isInteractive, items, size, variant, ...rest } = props;\r\n const styles = useStyleConfig('List', props);\r\n const context = useMemo(() => filterUndefined({ isInteractive, size, variant }), [isInteractive, size, variant]);\r\n return (React.createElement(ListProvider, { value: context },\r\n React.createElement(ListBase, { className: cs('vui-list', className), ref: ref, ...styles.container, ...rest },\r\n isReactText(heading) ? React.createElement(ListHeading, { text: heading }) : heading,\r\n children ??\r\n (isArray(items)\r\n ? items.map(({ key, ...props }, index) => React.createElement(ListItem, { key: key ?? index, ...props }))\r\n : items))));\r\n});\r\nList.Divider = ListDivider;\r\nList.Heading = ListHeading;\r\nList.Icon = ListIcon;\r\nList.Item = ListItem;\r\nList.Text = ListText;\r\nList.displayName = 'List';\r\nexport default List;\r\n","import React from 'react';\r\nimport Icon from '../icon';\r\nconst names = {\r\n horizontal: {\r\n collapsed: 'falChevronRight',\r\n expanded: 'falChevronLeft'\r\n },\r\n vertical: {\r\n collapsed: 'falChevronDown',\r\n expanded: 'falChevronUp'\r\n }\r\n};\r\nconst AccordionItemArrow = ({ collapsed, color = 'sandstone.10', disabled = false, orientation = 'vertical', ...rest }) => (React.createElement(Icon, { name: names[orientation][collapsed ? 'collapsed' : 'expanded'], opacity: disabled ? 0.5 : 1, pathFill: color, size: \"sm\", ...rest }));\r\nexport default React.memo(AccordionItemArrow);\r\n","import { createContext } from '../utils';\r\nconst [AccordionProvider, useAccordionContext] = createContext({ isOptional: true });\r\nexport { AccordionProvider, useAccordionContext };\r\n","import React, { useEffect, useState } from 'react';\r\nimport { Box } from '../box';\r\nimport { omitThemingProps, useStyleConfig } from '../core';\r\nimport { ListItem } from '../list';\r\nimport { cs } from '../utils';\r\nimport AccordionItemArrow from './accordionItemArrow';\r\nimport { useAccordionContext } from './context';\r\n/** An accordion item. */\r\nexport const AccordionItem = (props) => {\r\n const { className, children, collapsed, content, disabled, id, iconPosition = 'end', title, onToggle, ...rest } = omitThemingProps(props);\r\n const [collapsedInternal, setIsCollapsedInternal] = useState(false);\r\n const styles = useStyleConfig('Accordion', useAccordionContext());\r\n useEffect(() => {\r\n setIsCollapsedInternal(!!collapsed);\r\n }, [collapsed]);\r\n const toggle = () => {\r\n if (!disabled) {\r\n onToggle?.({ id, collapsed: !collapsedInternal });\r\n setIsCollapsedInternal(!collapsedInternal);\r\n }\r\n };\r\n const isIconStart = iconPosition === 'start';\r\n const isIconEnd = iconPosition === 'end';\r\n return (React.createElement(ListItem, { borderBottom: \"1px solid transparent\", borderColor: styles.item.borderColor, className: cs('vui-accordion-item', className), color: \"yellow\", disabled: disabled, disabledBg: styles.item.disabledBg, disabledColor: styles.item.disabledColor, flexDirection: \"column\", h: \"auto\", id: `${id}`, p: 0, w: \"100%\", ...rest },\r\n React.createElement(Box, { color: \"yellow\", cursor: disabled ? 'not-allowed' : 'pointer', hoverBg: disabled\r\n ? 'transparent'\r\n : collapsedInternal\r\n ? styles.item.itemTitleHoverBg\r\n : styles.item.expandedItemTitleHoverBg, justifyContent: iconPosition === 'start' ? 'initial' : 'space-between', onClick: toggle, px: 2, w: \"100%\", ...styles.item },\r\n isIconStart && (React.createElement(Box, null,\r\n React.createElement(AccordionItemArrow, { collapsed: collapsedInternal, color: styles.icon.color }))),\r\n React.createElement(Box, { fontWeight: typeof title === 'string' ? '500' : 'inherit', ml: isIconStart ? 2 : 0, opacity: disabled ? 0.5 : 1 }, title),\r\n isIconEnd && (React.createElement(Box, null,\r\n React.createElement(AccordionItemArrow, { collapsed: collapsedInternal, color: styles.icon.color, disabled: disabled })))),\r\n !collapsedInternal && (React.createElement(Box, { mb: 2, mt: 2, px: 2, py: 1, w: \"100%\" }, children ?? content))));\r\n};\r\nAccordionItem.displayName = 'AccordionItem';\r\nexport default AccordionItem;\r\n","import React from 'react';\r\nimport { omitThemingProps, styled, useStyleConfig, vui } from '../core';\r\nimport { cs } from '../utils';\r\nexport const ImageBase = styled.imgBox `\n height: auto;\n object-fit: cover;\n width: 100%;\n`;\r\n/** Displays an image. Includes base styling. */\r\nexport const Image = vui((props, ref) => {\r\n const { alt, className, title, ...rest } = omitThemingProps(props);\r\n const styles = useStyleConfig('Image', props);\r\n return (React.createElement(ImageBase, { alt: alt ? alt : title ? title : '', className: cs('vui-image', className), ref: ref, title: title, ...styles, ...rest }));\r\n});\r\nImage.displayName = 'Image';\r\nexport default Image;\r\n","/** Gets initials from the name for the Avatar. */\r\nexport function defaultGetInitials(name = '') {\r\n const [first = '', last = ''] = name.split(' ');\r\n return `${first.charAt(0)}${last.charAt(0)}`.toUpperCase();\r\n}\r\n","import React from 'react';\r\nimport { omitThemingProps, styled, useStyleConfig, vui } from '../core';\r\nimport Icon from '../icon';\r\nimport Image from '../image';\r\nimport { cs, filterUndefined } from '../utils';\r\nimport { defaultGetInitials } from './helpers';\r\nfunction imageExists(image_url) {\r\n const http = new XMLHttpRequest();\r\n http.open('HEAD', image_url, false);\r\n http.send();\r\n return http.status !== 404;\r\n}\r\nexport const AvatarBase = styled.spanBox `\n align-items: center;\n display: inline-flex;\n flex-shrink: 0;\n font-weight: medium;\n justify-content: center;\n line-height: normal;\n outline: none;\n overflow: hidden;\n transition-duration: fast;\n\n &:focus {\n border-color: transparent;\n }\n\n &[aria-disabled='true'] {\n opacity: 0.5;\n cursor: not-allowed;\n user-select: none;\n }\n`;\r\n/** Displays user data, such as name initials or profile image. */\r\nexport const Avatar = vui((props, ref) => {\r\n const { children, className, disabled, getInitials = defaultGetInitials, icon, isInteractive = props.onClick !== undefined, isSquare, name = '', src, ...rest } = omitThemingProps(props);\r\n const { activeBg, h, hoverBg, iconSize, ...styles } = useStyleConfig('Avatar', props);\r\n const borderRadius = isSquare ? (props.size === 'sm' ? '3px' : '6px') : '50%';\r\n const initials = getInitials(name);\r\n const internalIcon = src && !imageExists(src) ? 'falUser' : icon;\r\n const interactiveProps = !disabled && isInteractive\r\n ? {\r\n cursor: 'pointer',\r\n hoverBg,\r\n hoverOpacity: src ? 0.85 : 1,\r\n activeOpacity: src ? 0.7 : 1,\r\n activeBg,\r\n focusRing: 3,\r\n tabIndex: 0,\r\n userSelect: 'none'\r\n }\r\n : {};\r\n const aliasedProps = filterUndefined({\r\n borderRadius: borderRadius,\r\n 'aria-disabled': disabled\r\n });\r\n return (React.createElement(AvatarBase, { borderRadius: borderRadius, className: cs('vui-avatar', className), h: h, ref: ref, w: h, ...styles, ...interactiveProps, ...aliasedProps, ...rest }, children ? (children) : src && imageExists(src) ? (React.createElement(Image, { ...{ borderRadius, src } })) : internalIcon ? (React.createElement(Icon, { name: internalIcon, size: iconSize })) : initials ? (initials) : null));\r\n});\r\nAvatar.displayName = 'Avatar';\r\nexport default Avatar;\r\n","/** Closes the popper if 'Escape' is pressed. Tippy plugin. */\r\nexport const closeOnEscPlugin = {\r\n name: 'closeOnEsc',\r\n defaultValue: true,\r\n fn({ hide }) {\r\n function onKeyDown(e) {\r\n if (e.key === 'Escape') {\r\n hide();\r\n }\r\n }\r\n return {\r\n onHide() {\r\n document.removeEventListener('keydown', onKeyDown);\r\n },\r\n onShow() {\r\n document.addEventListener('keydown', onKeyDown);\r\n }\r\n };\r\n }\r\n};\r\n/** Sets popper width to be the same as reference. Updates on resize, etc. Popper modifier. */\r\nexport const matchWidthModifier = {\r\n name: 'matchWidth',\r\n enabled: true,\r\n phase: 'beforeWrite',\r\n requires: ['computeStyles'],\r\n fn: ({ state }) => {\r\n state.styles.popper.width = `${state.rects.reference.width}px`;\r\n },\r\n effect: ({ state }) => () => {\r\n const reference = state.elements.reference;\r\n state.elements.popper.style.width = `${reference.offsetWidth}px`;\r\n }\r\n};\r\n","import { createContext } from '../utils';\r\nconst [PopoverProvider, usePopoverContext] = createContext({ isOptional: true });\r\nexport { PopoverProvider, usePopoverContext };\r\n","import React from 'react';\r\nimport Box from '../box';\r\nimport { useStyleConfig, v, vui } from '../core';\r\nimport { cs, mergeRefs } from '../utils';\r\nimport { usePopoverContext } from './context';\r\n/** Displays provided content in an overlaying wrapper. */\r\nexport const PopoverContent = vui((props, ref) => {\r\n const { children, className, ...rest } = props;\r\n const popoverProps = usePopoverContext() ?? {};\r\n const { isLazy, isOpen, setPopper } = popoverProps;\r\n const styles = useStyleConfig('Popover', { ...popoverProps, ...props });\r\n const shouldRenderChildren = isLazy ? isOpen : true;\r\n return (\r\n // Wrapping div prevents an error thrown when conditionally unmounting this component\r\n React.createElement(v.div, { ring: 0 },\r\n React.createElement(Box, { bg: \"white\", borderRadius: \"md\", boxShadow: \"2\", className: cs('vui-popoverContent', className), overflowY: \"auto\", ref: mergeRefs(setPopper, ref), ring: 0, ...styles.content, ...rest }, shouldRenderChildren ? children : null)));\r\n});\r\nPopoverContent.displayName = 'PopoverContent';\r\nexport default PopoverContent;\r\n","/* eslint-disable @typescript-eslint/ban-ts-comment */\r\nimport React from 'react';\r\nimport { useStyleConfig, v, vui } from '../core';\r\nimport { cs, mergeRefs } from '../utils';\r\nimport { usePopoverContext } from './context';\r\n/**\r\n * Displays a trigger component to toggle display of the popover content.\r\n * Can be rendered as any component using the 'as' prop. By default renders as a plain button.\r\n */\r\nexport const PopoverTrigger = vui((props, ref) => {\r\n // @ts-ignore - TS incorrectly doesn't recognize 'as' prop\r\n const { as, className, onClick: onClickProp, ...rest } = props;\r\n const { setReference, ...popoverProps } = usePopoverContext() ?? {};\r\n const styles = useStyleConfig('Popover', { ...popoverProps, ...props });\r\n const Element = as || v.button;\r\n const onClick = (e) => {\r\n // Avoids triggering parent's onClick, like when inside a ListItem\r\n e.stopPropagation();\r\n onClickProp?.(e);\r\n };\r\n return (React.createElement(Element, { className: cs('vui-popoverTrigger', className), onClick: onClick, ref: mergeRefs(setReference, ref), ...styles.trigger, ...rest }));\r\n});\r\nPopoverTrigger.displayName = 'PopoverTrigger';\r\nexport default PopoverTrigger;\r\n","export var top = 'top';\nexport var bottom = 'bottom';\nexport var right = 'right';\nexport var left = 'left';\nexport var auto = 'auto';\nexport var basePlacements = [top, bottom, right, left];\nexport var start = 'start';\nexport var end = 'end';\nexport var clippingParents = 'clippingParents';\nexport var viewport = 'viewport';\nexport var popper = 'popper';\nexport var reference = 'reference';\nexport var variationPlacements = /*#__PURE__*/basePlacements.reduce(function (acc, placement) {\n return acc.concat([placement + \"-\" + start, placement + \"-\" + end]);\n}, []);\nexport var placements = /*#__PURE__*/[].concat(basePlacements, [auto]).reduce(function (acc, placement) {\n return acc.concat([placement, placement + \"-\" + start, placement + \"-\" + end]);\n}, []); // modifiers that need to read the DOM\n\nexport var beforeRead = 'beforeRead';\nexport var read = 'read';\nexport var afterRead = 'afterRead'; // pure-logic modifiers\n\nexport var beforeMain = 'beforeMain';\nexport var main = 'main';\nexport var afterMain = 'afterMain'; // modifier with the purpose to write to the DOM (or write into a framework state)\n\nexport var beforeWrite = 'beforeWrite';\nexport var write = 'write';\nexport var afterWrite = 'afterWrite';\nexport var modifierPhases = [beforeRead, read, afterRead, beforeMain, main, afterMain, beforeWrite, write, afterWrite];","export default function getNodeName(element) {\n return element ? (element.nodeName || '').toLowerCase() : null;\n}","export default function getWindow(node) {\n if (node == null) {\n return window;\n }\n\n if (node.toString() !== '[object Window]') {\n var ownerDocument = node.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView || window : window;\n }\n\n return node;\n}","import getWindow from \"./getWindow.js\";\n\nfunction isElement(node) {\n var OwnElement = getWindow(node).Element;\n return node instanceof OwnElement || node instanceof Element;\n}\n\nfunction isHTMLElement(node) {\n var OwnElement = getWindow(node).HTMLElement;\n return node instanceof OwnElement || node instanceof HTMLElement;\n}\n\nfunction isShadowRoot(node) {\n // IE 11 has no ShadowRoot\n if (typeof ShadowRoot === 'undefined') {\n return false;\n }\n\n var OwnElement = getWindow(node).ShadowRoot;\n return node instanceof OwnElement || node instanceof ShadowRoot;\n}\n\nexport { isElement, isHTMLElement, isShadowRoot };","import getNodeName from \"../dom-utils/getNodeName.js\";\nimport { isHTMLElement } from \"../dom-utils/instanceOf.js\"; // This modifier takes the styles prepared by the `computeStyles` modifier\n// and applies them to the HTMLElements such as popper and arrow\n\nfunction applyStyles(_ref) {\n var state = _ref.state;\n Object.keys(state.elements).forEach(function (name) {\n var style = state.styles[name] || {};\n var attributes = state.attributes[name] || {};\n var element = state.elements[name]; // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n } // Flow doesn't support to extend this property, but it's the most\n // effective way to apply styles to an HTMLElement\n // $FlowFixMe[cannot-write]\n\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (name) {\n var value = attributes[name];\n\n if (value === false) {\n element.removeAttribute(name);\n } else {\n element.setAttribute(name, value === true ? '' : value);\n }\n });\n });\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state;\n var initialStyles = {\n popper: {\n position: state.options.strategy,\n left: '0',\n top: '0',\n margin: '0'\n },\n arrow: {\n position: 'absolute'\n },\n reference: {}\n };\n Object.assign(state.elements.popper.style, initialStyles.popper);\n state.styles = initialStyles;\n\n if (state.elements.arrow) {\n Object.assign(state.elements.arrow.style, initialStyles.arrow);\n }\n\n return function () {\n Object.keys(state.elements).forEach(function (name) {\n var element = state.elements[name];\n var attributes = state.attributes[name] || {};\n var styleProperties = Object.keys(state.styles.hasOwnProperty(name) ? state.styles[name] : initialStyles[name]); // Set all values to an empty string to unset them\n\n var style = styleProperties.reduce(function (style, property) {\n style[property] = '';\n return style;\n }, {}); // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n }\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (attribute) {\n element.removeAttribute(attribute);\n });\n });\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'applyStyles',\n enabled: true,\n phase: 'write',\n fn: applyStyles,\n effect: effect,\n requires: ['computeStyles']\n};","import { auto } from \"../enums.js\";\nexport default function getBasePlacement(placement) {\n return placement.split('-')[0];\n}","export var max = Math.max;\nexport var min = Math.min;\nexport var round = Math.round;","export default function getUAString() {\n var uaData = navigator.userAgentData;\n\n if (uaData != null && uaData.brands && Array.isArray(uaData.brands)) {\n return uaData.brands.map(function (item) {\n return item.brand + \"/\" + item.version;\n }).join(' ');\n }\n\n return navigator.userAgent;\n}","import getUAString from \"../utils/userAgent.js\";\nexport default function isLayoutViewport() {\n return !/^((?!chrome|android).)*safari/i.test(getUAString());\n}","import { isElement, isHTMLElement } from \"./instanceOf.js\";\nimport { round } from \"../utils/math.js\";\nimport getWindow from \"./getWindow.js\";\nimport isLayoutViewport from \"./isLayoutViewport.js\";\nexport default function getBoundingClientRect(element, includeScale, isFixedStrategy) {\n if (includeScale === void 0) {\n includeScale = false;\n }\n\n if (isFixedStrategy === void 0) {\n isFixedStrategy = false;\n }\n\n var clientRect = element.getBoundingClientRect();\n var scaleX = 1;\n var scaleY = 1;\n\n if (includeScale && isHTMLElement(element)) {\n scaleX = element.offsetWidth > 0 ? round(clientRect.width) / element.offsetWidth || 1 : 1;\n scaleY = element.offsetHeight > 0 ? round(clientRect.height) / element.offsetHeight || 1 : 1;\n }\n\n var _ref = isElement(element) ? getWindow(element) : window,\n visualViewport = _ref.visualViewport;\n\n var addVisualOffsets = !isLayoutViewport() && isFixedStrategy;\n var x = (clientRect.left + (addVisualOffsets && visualViewport ? visualViewport.offsetLeft : 0)) / scaleX;\n var y = (clientRect.top + (addVisualOffsets && visualViewport ? visualViewport.offsetTop : 0)) / scaleY;\n var width = clientRect.width / scaleX;\n var height = clientRect.height / scaleY;\n return {\n width: width,\n height: height,\n top: y,\n right: x + width,\n bottom: y + height,\n left: x,\n x: x,\n y: y\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\"; // Returns the layout rect of an element relative to its offsetParent. Layout\n// means it doesn't take into account transforms.\n\nexport default function getLayoutRect(element) {\n var clientRect = getBoundingClientRect(element); // Use the clientRect sizes if it's not been transformed.\n // Fixes https://github.com/popperjs/popper-core/issues/1223\n\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n if (Math.abs(clientRect.width - width) <= 1) {\n width = clientRect.width;\n }\n\n if (Math.abs(clientRect.height - height) <= 1) {\n height = clientRect.height;\n }\n\n return {\n x: element.offsetLeft,\n y: element.offsetTop,\n width: width,\n height: height\n };\n}","import { isShadowRoot } from \"./instanceOf.js\";\nexport default function contains(parent, child) {\n var rootNode = child.getRootNode && child.getRootNode(); // First, attempt with faster native method\n\n if (parent.contains(child)) {\n return true;\n } // then fallback to custom implementation with Shadow DOM support\n else if (rootNode && isShadowRoot(rootNode)) {\n var next = child;\n\n do {\n if (next && parent.isSameNode(next)) {\n return true;\n } // $FlowFixMe[prop-missing]: need a better way to handle this...\n\n\n next = next.parentNode || next.host;\n } while (next);\n } // Give up, the result is false\n\n\n return false;\n}","import getWindow from \"./getWindow.js\";\nexport default function getComputedStyle(element) {\n return getWindow(element).getComputedStyle(element);\n}","import getNodeName from \"./getNodeName.js\";\nexport default function isTableElement(element) {\n return ['table', 'td', 'th'].indexOf(getNodeName(element)) >= 0;\n}","import { isElement } from \"./instanceOf.js\";\nexport default function getDocumentElement(element) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return ((isElement(element) ? element.ownerDocument : // $FlowFixMe[prop-missing]\n element.document) || window.document).documentElement;\n}","import getNodeName from \"./getNodeName.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport { isShadowRoot } from \"./instanceOf.js\";\nexport default function getParentNode(element) {\n if (getNodeName(element) === 'html') {\n return element;\n }\n\n return (// this is a quicker (but less type safe) way to save quite some bytes from the bundle\n // $FlowFixMe[incompatible-return]\n // $FlowFixMe[prop-missing]\n element.assignedSlot || // step into the shadow DOM of the parent of a slotted node\n element.parentNode || ( // DOM Element detected\n isShadowRoot(element) ? element.host : null) || // ShadowRoot detected\n // $FlowFixMe[incompatible-call]: HTMLElement is a Node\n getDocumentElement(element) // fallback\n\n );\n}","import getWindow from \"./getWindow.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isHTMLElement, isShadowRoot } from \"./instanceOf.js\";\nimport isTableElement from \"./isTableElement.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport getUAString from \"../utils/userAgent.js\";\n\nfunction getTrueOffsetParent(element) {\n if (!isHTMLElement(element) || // https://github.com/popperjs/popper-core/issues/837\n getComputedStyle(element).position === 'fixed') {\n return null;\n }\n\n return element.offsetParent;\n} // `.offsetParent` reports `null` for fixed elements, while absolute elements\n// return the containing block\n\n\nfunction getContainingBlock(element) {\n var isFirefox = /firefox/i.test(getUAString());\n var isIE = /Trident/i.test(getUAString());\n\n if (isIE && isHTMLElement(element)) {\n // In IE 9, 10 and 11 fixed elements containing block is always established by the viewport\n var elementCss = getComputedStyle(element);\n\n if (elementCss.position === 'fixed') {\n return null;\n }\n }\n\n var currentNode = getParentNode(element);\n\n if (isShadowRoot(currentNode)) {\n currentNode = currentNode.host;\n }\n\n while (isHTMLElement(currentNode) && ['html', 'body'].indexOf(getNodeName(currentNode)) < 0) {\n var css = getComputedStyle(currentNode); // This is non-exhaustive but covers the most common CSS properties that\n // create a containing block.\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n\n if (css.transform !== 'none' || css.perspective !== 'none' || css.contain === 'paint' || ['transform', 'perspective'].indexOf(css.willChange) !== -1 || isFirefox && css.willChange === 'filter' || isFirefox && css.filter && css.filter !== 'none') {\n return currentNode;\n } else {\n currentNode = currentNode.parentNode;\n }\n }\n\n return null;\n} // Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\n\n\nexport default function getOffsetParent(element) {\n var window = getWindow(element);\n var offsetParent = getTrueOffsetParent(element);\n\n while (offsetParent && isTableElement(offsetParent) && getComputedStyle(offsetParent).position === 'static') {\n offsetParent = getTrueOffsetParent(offsetParent);\n }\n\n if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle(offsetParent).position === 'static')) {\n return window;\n }\n\n return offsetParent || getContainingBlock(element) || window;\n}","export default function getMainAxisFromPlacement(placement) {\n return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y';\n}","import { max as mathMax, min as mathMin } from \"./math.js\";\nexport function within(min, value, max) {\n return mathMax(min, mathMin(value, max));\n}\nexport function withinMaxClamp(min, value, max) {\n var v = within(min, value, max);\n return v > max ? max : v;\n}","export default function getFreshSideObject() {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n };\n}","import getFreshSideObject from \"./getFreshSideObject.js\";\nexport default function mergePaddingObject(paddingObject) {\n return Object.assign({}, getFreshSideObject(), paddingObject);\n}","export default function expandToHashMap(value, keys) {\n return keys.reduce(function (hashMap, key) {\n hashMap[key] = value;\n return hashMap;\n }, {});\n}","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport contains from \"../dom-utils/contains.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport { within } from \"../utils/within.js\";\nimport mergePaddingObject from \"../utils/mergePaddingObject.js\";\nimport expandToHashMap from \"../utils/expandToHashMap.js\";\nimport { left, right, basePlacements, top, bottom } from \"../enums.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar toPaddingObject = function toPaddingObject(padding, state) {\n padding = typeof padding === 'function' ? padding(Object.assign({}, state.rects, {\n placement: state.placement\n })) : padding;\n return mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n};\n\nfunction arrow(_ref) {\n var _state$modifiersData$;\n\n var state = _ref.state,\n name = _ref.name,\n options = _ref.options;\n var arrowElement = state.elements.arrow;\n var popperOffsets = state.modifiersData.popperOffsets;\n var basePlacement = getBasePlacement(state.placement);\n var axis = getMainAxisFromPlacement(basePlacement);\n var isVertical = [left, right].indexOf(basePlacement) >= 0;\n var len = isVertical ? 'height' : 'width';\n\n if (!arrowElement || !popperOffsets) {\n return;\n }\n\n var paddingObject = toPaddingObject(options.padding, state);\n var arrowRect = getLayoutRect(arrowElement);\n var minProp = axis === 'y' ? top : left;\n var maxProp = axis === 'y' ? bottom : right;\n var endDiff = state.rects.reference[len] + state.rects.reference[axis] - popperOffsets[axis] - state.rects.popper[len];\n var startDiff = popperOffsets[axis] - state.rects.reference[axis];\n var arrowOffsetParent = getOffsetParent(arrowElement);\n var clientSize = arrowOffsetParent ? axis === 'y' ? arrowOffsetParent.clientHeight || 0 : arrowOffsetParent.clientWidth || 0 : 0;\n var centerToReference = endDiff / 2 - startDiff / 2; // Make sure the arrow doesn't overflow the popper if the center point is\n // outside of the popper bounds\n\n var min = paddingObject[minProp];\n var max = clientSize - arrowRect[len] - paddingObject[maxProp];\n var center = clientSize / 2 - arrowRect[len] / 2 + centerToReference;\n var offset = within(min, center, max); // Prevents breaking syntax highlighting...\n\n var axisProp = axis;\n state.modifiersData[name] = (_state$modifiersData$ = {}, _state$modifiersData$[axisProp] = offset, _state$modifiersData$.centerOffset = offset - center, _state$modifiersData$);\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state,\n options = _ref2.options;\n var _options$element = options.element,\n arrowElement = _options$element === void 0 ? '[data-popper-arrow]' : _options$element;\n\n if (arrowElement == null) {\n return;\n } // CSS selector\n\n\n if (typeof arrowElement === 'string') {\n arrowElement = state.elements.popper.querySelector(arrowElement);\n\n if (!arrowElement) {\n return;\n }\n }\n\n if (!contains(state.elements.popper, arrowElement)) {\n return;\n }\n\n state.elements.arrow = arrowElement;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'arrow',\n enabled: true,\n phase: 'main',\n fn: arrow,\n effect: effect,\n requires: ['popperOffsets'],\n requiresIfExists: ['preventOverflow']\n};","export default function getVariation(placement) {\n return placement.split('-')[1];\n}","import { top, left, right, bottom, end } from \"../enums.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getWindow from \"../dom-utils/getWindow.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport getComputedStyle from \"../dom-utils/getComputedStyle.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getVariation from \"../utils/getVariation.js\";\nimport { round } from \"../utils/math.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar unsetSides = {\n top: 'auto',\n right: 'auto',\n bottom: 'auto',\n left: 'auto'\n}; // Round the offsets to the nearest suitable subpixel based on the DPR.\n// Zooming can change the DPR, but it seems to report a value that will\n// cleanly divide the values into the appropriate subpixels.\n\nfunction roundOffsetsByDPR(_ref, win) {\n var x = _ref.x,\n y = _ref.y;\n var dpr = win.devicePixelRatio || 1;\n return {\n x: round(x * dpr) / dpr || 0,\n y: round(y * dpr) / dpr || 0\n };\n}\n\nexport function mapToStyles(_ref2) {\n var _Object$assign2;\n\n var popper = _ref2.popper,\n popperRect = _ref2.popperRect,\n placement = _ref2.placement,\n variation = _ref2.variation,\n offsets = _ref2.offsets,\n position = _ref2.position,\n gpuAcceleration = _ref2.gpuAcceleration,\n adaptive = _ref2.adaptive,\n roundOffsets = _ref2.roundOffsets,\n isFixed = _ref2.isFixed;\n var _offsets$x = offsets.x,\n x = _offsets$x === void 0 ? 0 : _offsets$x,\n _offsets$y = offsets.y,\n y = _offsets$y === void 0 ? 0 : _offsets$y;\n\n var _ref3 = typeof roundOffsets === 'function' ? roundOffsets({\n x: x,\n y: y\n }) : {\n x: x,\n y: y\n };\n\n x = _ref3.x;\n y = _ref3.y;\n var hasX = offsets.hasOwnProperty('x');\n var hasY = offsets.hasOwnProperty('y');\n var sideX = left;\n var sideY = top;\n var win = window;\n\n if (adaptive) {\n var offsetParent = getOffsetParent(popper);\n var heightProp = 'clientHeight';\n var widthProp = 'clientWidth';\n\n if (offsetParent === getWindow(popper)) {\n offsetParent = getDocumentElement(popper);\n\n if (getComputedStyle(offsetParent).position !== 'static' && position === 'absolute') {\n heightProp = 'scrollHeight';\n widthProp = 'scrollWidth';\n }\n } // $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it\n\n\n offsetParent = offsetParent;\n\n if (placement === top || (placement === left || placement === right) && variation === end) {\n sideY = bottom;\n var offsetY = isFixed && offsetParent === win && win.visualViewport ? win.visualViewport.height : // $FlowFixMe[prop-missing]\n offsetParent[heightProp];\n y -= offsetY - popperRect.height;\n y *= gpuAcceleration ? 1 : -1;\n }\n\n if (placement === left || (placement === top || placement === bottom) && variation === end) {\n sideX = right;\n var offsetX = isFixed && offsetParent === win && win.visualViewport ? win.visualViewport.width : // $FlowFixMe[prop-missing]\n offsetParent[widthProp];\n x -= offsetX - popperRect.width;\n x *= gpuAcceleration ? 1 : -1;\n }\n }\n\n var commonStyles = Object.assign({\n position: position\n }, adaptive && unsetSides);\n\n var _ref4 = roundOffsets === true ? roundOffsetsByDPR({\n x: x,\n y: y\n }, getWindow(popper)) : {\n x: x,\n y: y\n };\n\n x = _ref4.x;\n y = _ref4.y;\n\n if (gpuAcceleration) {\n var _Object$assign;\n\n return Object.assign({}, commonStyles, (_Object$assign = {}, _Object$assign[sideY] = hasY ? '0' : '', _Object$assign[sideX] = hasX ? '0' : '', _Object$assign.transform = (win.devicePixelRatio || 1) <= 1 ? \"translate(\" + x + \"px, \" + y + \"px)\" : \"translate3d(\" + x + \"px, \" + y + \"px, 0)\", _Object$assign));\n }\n\n return Object.assign({}, commonStyles, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + \"px\" : '', _Object$assign2[sideX] = hasX ? x + \"px\" : '', _Object$assign2.transform = '', _Object$assign2));\n}\n\nfunction computeStyles(_ref5) {\n var state = _ref5.state,\n options = _ref5.options;\n var _options$gpuAccelerat = options.gpuAcceleration,\n gpuAcceleration = _options$gpuAccelerat === void 0 ? true : _options$gpuAccelerat,\n _options$adaptive = options.adaptive,\n adaptive = _options$adaptive === void 0 ? true : _options$adaptive,\n _options$roundOffsets = options.roundOffsets,\n roundOffsets = _options$roundOffsets === void 0 ? true : _options$roundOffsets;\n var commonStyles = {\n placement: getBasePlacement(state.placement),\n variation: getVariation(state.placement),\n popper: state.elements.popper,\n popperRect: state.rects.popper,\n gpuAcceleration: gpuAcceleration,\n isFixed: state.options.strategy === 'fixed'\n };\n\n if (state.modifiersData.popperOffsets != null) {\n state.styles.popper = Object.assign({}, state.styles.popper, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.popperOffsets,\n position: state.options.strategy,\n adaptive: adaptive,\n roundOffsets: roundOffsets\n })));\n }\n\n if (state.modifiersData.arrow != null) {\n state.styles.arrow = Object.assign({}, state.styles.arrow, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.arrow,\n position: 'absolute',\n adaptive: false,\n roundOffsets: roundOffsets\n })));\n }\n\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-placement': state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'computeStyles',\n enabled: true,\n phase: 'beforeWrite',\n fn: computeStyles,\n data: {}\n};","import getWindow from \"../dom-utils/getWindow.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar passive = {\n passive: true\n};\n\nfunction effect(_ref) {\n var state = _ref.state,\n instance = _ref.instance,\n options = _ref.options;\n var _options$scroll = options.scroll,\n scroll = _options$scroll === void 0 ? true : _options$scroll,\n _options$resize = options.resize,\n resize = _options$resize === void 0 ? true : _options$resize;\n var window = getWindow(state.elements.popper);\n var scrollParents = [].concat(state.scrollParents.reference, state.scrollParents.popper);\n\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.addEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.addEventListener('resize', instance.update, passive);\n }\n\n return function () {\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.removeEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.removeEventListener('resize', instance.update, passive);\n }\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'eventListeners',\n enabled: true,\n phase: 'write',\n fn: function fn() {},\n effect: effect,\n data: {}\n};","var hash = {\n left: 'right',\n right: 'left',\n bottom: 'top',\n top: 'bottom'\n};\nexport default function getOppositePlacement(placement) {\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}","var hash = {\n start: 'end',\n end: 'start'\n};\nexport default function getOppositeVariationPlacement(placement) {\n return placement.replace(/start|end/g, function (matched) {\n return hash[matched];\n });\n}","import getWindow from \"./getWindow.js\";\nexport default function getWindowScroll(node) {\n var win = getWindow(node);\n var scrollLeft = win.pageXOffset;\n var scrollTop = win.pageYOffset;\n return {\n scrollLeft: scrollLeft,\n scrollTop: scrollTop\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nexport default function getWindowScrollBarX(element) {\n // If <html> has a CSS width greater than the viewport, then this will be\n // incorrect for RTL.\n // Popper 1 is broken in this case and never had a bug report so let's assume\n // it's not an issue. I don't think anyone ever specifies width on <html>\n // anyway.\n // Browsers where the left scrollbar doesn't cause an issue report `0` for\n // this (e.g. Edge 2019, IE11, Safari)\n return getBoundingClientRect(getDocumentElement(element)).left + getWindowScroll(element).scrollLeft;\n}","import getWindow from \"./getWindow.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport isLayoutViewport from \"./isLayoutViewport.js\";\nexport default function getViewportRect(element, strategy) {\n var win = getWindow(element);\n var html = getDocumentElement(element);\n var visualViewport = win.visualViewport;\n var width = html.clientWidth;\n var height = html.clientHeight;\n var x = 0;\n var y = 0;\n\n if (visualViewport) {\n width = visualViewport.width;\n height = visualViewport.height;\n var layoutViewport = isLayoutViewport();\n\n if (layoutViewport || !layoutViewport && strategy === 'fixed') {\n x = visualViewport.offsetLeft;\n y = visualViewport.offsetTop;\n }\n }\n\n return {\n width: width,\n height: height,\n x: x + getWindowScrollBarX(element),\n y: y\n };\n}","import getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nimport { max } from \"../utils/math.js\"; // Gets the entire size of the scrollable document area, even extending outside\n// of the `<html>` and `<body>` rect bounds if horizontally scrollable\n\nexport default function getDocumentRect(element) {\n var _element$ownerDocumen;\n\n var html = getDocumentElement(element);\n var winScroll = getWindowScroll(element);\n var body = (_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body;\n var width = max(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0);\n var height = max(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0);\n var x = -winScroll.scrollLeft + getWindowScrollBarX(element);\n var y = -winScroll.scrollTop;\n\n if (getComputedStyle(body || html).direction === 'rtl') {\n x += max(html.clientWidth, body ? body.clientWidth : 0) - width;\n }\n\n return {\n width: width,\n height: height,\n x: x,\n y: y\n };\n}","import getComputedStyle from \"./getComputedStyle.js\";\nexport default function isScrollParent(element) {\n // Firefox wants us to check `-x` and `-y` variations as well\n var _getComputedStyle = getComputedStyle(element),\n overflow = _getComputedStyle.overflow,\n overflowX = _getComputedStyle.overflowX,\n overflowY = _getComputedStyle.overflowY;\n\n return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX);\n}","import getParentNode from \"./getParentNode.js\";\nimport isScrollParent from \"./isScrollParent.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nexport default function getScrollParent(node) {\n if (['html', 'body', '#document'].indexOf(getNodeName(node)) >= 0) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return node.ownerDocument.body;\n }\n\n if (isHTMLElement(node) && isScrollParent(node)) {\n return node;\n }\n\n return getScrollParent(getParentNode(node));\n}","import getScrollParent from \"./getScrollParent.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport getWindow from \"./getWindow.js\";\nimport isScrollParent from \"./isScrollParent.js\";\n/*\ngiven a DOM element, return the list of all scroll parents, up the list of ancesors\nuntil we get to the top window object. This list is what we attach scroll listeners\nto, because if any of these parent elements scroll, we'll need to re-calculate the\nreference element's position.\n*/\n\nexport default function listScrollParents(element, list) {\n var _element$ownerDocumen;\n\n if (list === void 0) {\n list = [];\n }\n\n var scrollParent = getScrollParent(element);\n var isBody = scrollParent === ((_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body);\n var win = getWindow(scrollParent);\n var target = isBody ? [win].concat(win.visualViewport || [], isScrollParent(scrollParent) ? scrollParent : []) : scrollParent;\n var updatedList = list.concat(target);\n return isBody ? updatedList : // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here\n updatedList.concat(listScrollParents(getParentNode(target)));\n}","export default function rectToClientRect(rect) {\n return Object.assign({}, rect, {\n left: rect.x,\n top: rect.y,\n right: rect.x + rect.width,\n bottom: rect.y + rect.height\n });\n}","import { viewport } from \"../enums.js\";\nimport getViewportRect from \"./getViewportRect.js\";\nimport getDocumentRect from \"./getDocumentRect.js\";\nimport listScrollParents from \"./listScrollParents.js\";\nimport getOffsetParent from \"./getOffsetParent.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isElement, isHTMLElement } from \"./instanceOf.js\";\nimport getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport contains from \"./contains.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport rectToClientRect from \"../utils/rectToClientRect.js\";\nimport { max, min } from \"../utils/math.js\";\n\nfunction getInnerBoundingClientRect(element, strategy) {\n var rect = getBoundingClientRect(element, false, strategy === 'fixed');\n rect.top = rect.top + element.clientTop;\n rect.left = rect.left + element.clientLeft;\n rect.bottom = rect.top + element.clientHeight;\n rect.right = rect.left + element.clientWidth;\n rect.width = element.clientWidth;\n rect.height = element.clientHeight;\n rect.x = rect.left;\n rect.y = rect.top;\n return rect;\n}\n\nfunction getClientRectFromMixedType(element, clippingParent, strategy) {\n return clippingParent === viewport ? rectToClientRect(getViewportRect(element, strategy)) : isElement(clippingParent) ? getInnerBoundingClientRect(clippingParent, strategy) : rectToClientRect(getDocumentRect(getDocumentElement(element)));\n} // A \"clipping parent\" is an overflowable container with the characteristic of\n// clipping (or hiding) overflowing elements with a position different from\n// `initial`\n\n\nfunction getClippingParents(element) {\n var clippingParents = listScrollParents(getParentNode(element));\n var canEscapeClipping = ['absolute', 'fixed'].indexOf(getComputedStyle(element).position) >= 0;\n var clipperElement = canEscapeClipping && isHTMLElement(element) ? getOffsetParent(element) : element;\n\n if (!isElement(clipperElement)) {\n return [];\n } // $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414\n\n\n return clippingParents.filter(function (clippingParent) {\n return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body';\n });\n} // Gets the maximum area that the element is visible in due to any number of\n// clipping parents\n\n\nexport default function getClippingRect(element, boundary, rootBoundary, strategy) {\n var mainClippingParents = boundary === 'clippingParents' ? getClippingParents(element) : [].concat(boundary);\n var clippingParents = [].concat(mainClippingParents, [rootBoundary]);\n var firstClippingParent = clippingParents[0];\n var clippingRect = clippingParents.reduce(function (accRect, clippingParent) {\n var rect = getClientRectFromMixedType(element, clippingParent, strategy);\n accRect.top = max(rect.top, accRect.top);\n accRect.right = min(rect.right, accRect.right);\n accRect.bottom = min(rect.bottom, accRect.bottom);\n accRect.left = max(rect.left, accRect.left);\n return accRect;\n }, getClientRectFromMixedType(element, firstClippingParent, strategy));\n clippingRect.width = clippingRect.right - clippingRect.left;\n clippingRect.height = clippingRect.bottom - clippingRect.top;\n clippingRect.x = clippingRect.left;\n clippingRect.y = clippingRect.top;\n return clippingRect;\n}","import getBasePlacement from \"./getBasePlacement.js\";\nimport getVariation from \"./getVariation.js\";\nimport getMainAxisFromPlacement from \"./getMainAxisFromPlacement.js\";\nimport { top, right, bottom, left, start, end } from \"../enums.js\";\nexport default function computeOffsets(_ref) {\n var reference = _ref.reference,\n element = _ref.element,\n placement = _ref.placement;\n var basePlacement = placement ? getBasePlacement(placement) : null;\n var variation = placement ? getVariation(placement) : null;\n var commonX = reference.x + reference.width / 2 - element.width / 2;\n var commonY = reference.y + reference.height / 2 - element.height / 2;\n var offsets;\n\n switch (basePlacement) {\n case top:\n offsets = {\n x: commonX,\n y: reference.y - element.height\n };\n break;\n\n case bottom:\n offsets = {\n x: commonX,\n y: reference.y + reference.height\n };\n break;\n\n case right:\n offsets = {\n x: reference.x + reference.width,\n y: commonY\n };\n break;\n\n case left:\n offsets = {\n x: reference.x - element.width,\n y: commonY\n };\n break;\n\n default:\n offsets = {\n x: reference.x,\n y: reference.y\n };\n }\n\n var mainAxis = basePlacement ? getMainAxisFromPlacement(basePlacement) : null;\n\n if (mainAxis != null) {\n var len = mainAxis === 'y' ? 'height' : 'width';\n\n switch (variation) {\n case start:\n offsets[mainAxis] = offsets[mainAxis] - (reference[len] / 2 - element[len] / 2);\n break;\n\n case end:\n offsets[mainAxis] = offsets[mainAxis] + (reference[len] / 2 - element[len] / 2);\n break;\n\n default:\n }\n }\n\n return offsets;\n}","import getClippingRect from \"../dom-utils/getClippingRect.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport getBoundingClientRect from \"../dom-utils/getBoundingClientRect.js\";\nimport computeOffsets from \"./computeOffsets.js\";\nimport rectToClientRect from \"./rectToClientRect.js\";\nimport { clippingParents, reference, popper, bottom, top, right, basePlacements, viewport } from \"../enums.js\";\nimport { isElement } from \"../dom-utils/instanceOf.js\";\nimport mergePaddingObject from \"./mergePaddingObject.js\";\nimport expandToHashMap from \"./expandToHashMap.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport default function detectOverflow(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n _options$placement = _options.placement,\n placement = _options$placement === void 0 ? state.placement : _options$placement,\n _options$strategy = _options.strategy,\n strategy = _options$strategy === void 0 ? state.strategy : _options$strategy,\n _options$boundary = _options.boundary,\n boundary = _options$boundary === void 0 ? clippingParents : _options$boundary,\n _options$rootBoundary = _options.rootBoundary,\n rootBoundary = _options$rootBoundary === void 0 ? viewport : _options$rootBoundary,\n _options$elementConte = _options.elementContext,\n elementContext = _options$elementConte === void 0 ? popper : _options$elementConte,\n _options$altBoundary = _options.altBoundary,\n altBoundary = _options$altBoundary === void 0 ? false : _options$altBoundary,\n _options$padding = _options.padding,\n padding = _options$padding === void 0 ? 0 : _options$padding;\n var paddingObject = mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n var altContext = elementContext === popper ? reference : popper;\n var popperRect = state.rects.popper;\n var element = state.elements[altBoundary ? altContext : elementContext];\n var clippingClientRect = getClippingRect(isElement(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary, strategy);\n var referenceClientRect = getBoundingClientRect(state.elements.reference);\n var popperOffsets = computeOffsets({\n reference: referenceClientRect,\n element: popperRect,\n strategy: 'absolute',\n placement: placement\n });\n var popperClientRect = rectToClientRect(Object.assign({}, popperRect, popperOffsets));\n var elementClientRect = elementContext === popper ? popperClientRect : referenceClientRect; // positive = overflowing the clipping rect\n // 0 or negative = within the clipping rect\n\n var overflowOffsets = {\n top: clippingClientRect.top - elementClientRect.top + paddingObject.top,\n bottom: elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom,\n left: clippingClientRect.left - elementClientRect.left + paddingObject.left,\n right: elementClientRect.right - clippingClientRect.right + paddingObject.right\n };\n var offsetData = state.modifiersData.offset; // Offsets can be applied only to the popper element\n\n if (elementContext === popper && offsetData) {\n var offset = offsetData[placement];\n Object.keys(overflowOffsets).forEach(function (key) {\n var multiply = [right, bottom].indexOf(key) >= 0 ? 1 : -1;\n var axis = [top, bottom].indexOf(key) >= 0 ? 'y' : 'x';\n overflowOffsets[key] += offset[axis] * multiply;\n });\n }\n\n return overflowOffsets;\n}","import getVariation from \"./getVariation.js\";\nimport { variationPlacements, basePlacements, placements as allPlacements } from \"../enums.js\";\nimport detectOverflow from \"./detectOverflow.js\";\nimport getBasePlacement from \"./getBasePlacement.js\";\nexport default function computeAutoPlacement(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n placement = _options.placement,\n boundary = _options.boundary,\n rootBoundary = _options.rootBoundary,\n padding = _options.padding,\n flipVariations = _options.flipVariations,\n _options$allowedAutoP = _options.allowedAutoPlacements,\n allowedAutoPlacements = _options$allowedAutoP === void 0 ? allPlacements : _options$allowedAutoP;\n var variation = getVariation(placement);\n var placements = variation ? flipVariations ? variationPlacements : variationPlacements.filter(function (placement) {\n return getVariation(placement) === variation;\n }) : basePlacements;\n var allowedPlacements = placements.filter(function (placement) {\n return allowedAutoPlacements.indexOf(placement) >= 0;\n });\n\n if (allowedPlacements.length === 0) {\n allowedPlacements = placements;\n } // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions...\n\n\n var overflows = allowedPlacements.reduce(function (acc, placement) {\n acc[placement] = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding\n })[getBasePlacement(placement)];\n return acc;\n }, {});\n return Object.keys(overflows).sort(function (a, b) {\n return overflows[a] - overflows[b];\n });\n}","import getOppositePlacement from \"../utils/getOppositePlacement.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getOppositeVariationPlacement from \"../utils/getOppositeVariationPlacement.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport computeAutoPlacement from \"../utils/computeAutoPlacement.js\";\nimport { bottom, top, start, right, left, auto } from \"../enums.js\";\nimport getVariation from \"../utils/getVariation.js\"; // eslint-disable-next-line import/no-unused-modules\n\nfunction getExpandedFallbackPlacements(placement) {\n if (getBasePlacement(placement) === auto) {\n return [];\n }\n\n var oppositePlacement = getOppositePlacement(placement);\n return [getOppositeVariationPlacement(placement), oppositePlacement, getOppositeVariationPlacement(oppositePlacement)];\n}\n\nfunction flip(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n\n if (state.modifiersData[name]._skip) {\n return;\n }\n\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? true : _options$altAxis,\n specifiedFallbackPlacements = options.fallbackPlacements,\n padding = options.padding,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n _options$flipVariatio = options.flipVariations,\n flipVariations = _options$flipVariatio === void 0 ? true : _options$flipVariatio,\n allowedAutoPlacements = options.allowedAutoPlacements;\n var preferredPlacement = state.options.placement;\n var basePlacement = getBasePlacement(preferredPlacement);\n var isBasePlacement = basePlacement === preferredPlacement;\n var fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipVariations ? [getOppositePlacement(preferredPlacement)] : getExpandedFallbackPlacements(preferredPlacement));\n var placements = [preferredPlacement].concat(fallbackPlacements).reduce(function (acc, placement) {\n return acc.concat(getBasePlacement(placement) === auto ? computeAutoPlacement(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n flipVariations: flipVariations,\n allowedAutoPlacements: allowedAutoPlacements\n }) : placement);\n }, []);\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var checksMap = new Map();\n var makeFallbackChecks = true;\n var firstFittingPlacement = placements[0];\n\n for (var i = 0; i < placements.length; i++) {\n var placement = placements[i];\n\n var _basePlacement = getBasePlacement(placement);\n\n var isStartVariation = getVariation(placement) === start;\n var isVertical = [top, bottom].indexOf(_basePlacement) >= 0;\n var len = isVertical ? 'width' : 'height';\n var overflow = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n altBoundary: altBoundary,\n padding: padding\n });\n var mainVariationSide = isVertical ? isStartVariation ? right : left : isStartVariation ? bottom : top;\n\n if (referenceRect[len] > popperRect[len]) {\n mainVariationSide = getOppositePlacement(mainVariationSide);\n }\n\n var altVariationSide = getOppositePlacement(mainVariationSide);\n var checks = [];\n\n if (checkMainAxis) {\n checks.push(overflow[_basePlacement] <= 0);\n }\n\n if (checkAltAxis) {\n checks.push(overflow[mainVariationSide] <= 0, overflow[altVariationSide] <= 0);\n }\n\n if (checks.every(function (check) {\n return check;\n })) {\n firstFittingPlacement = placement;\n makeFallbackChecks = false;\n break;\n }\n\n checksMap.set(placement, checks);\n }\n\n if (makeFallbackChecks) {\n // `2` may be desired in some cases – research later\n var numberOfChecks = flipVariations ? 3 : 1;\n\n var _loop = function _loop(_i) {\n var fittingPlacement = placements.find(function (placement) {\n var checks = checksMap.get(placement);\n\n if (checks) {\n return checks.slice(0, _i).every(function (check) {\n return check;\n });\n }\n });\n\n if (fittingPlacement) {\n firstFittingPlacement = fittingPlacement;\n return \"break\";\n }\n };\n\n for (var _i = numberOfChecks; _i > 0; _i--) {\n var _ret = _loop(_i);\n\n if (_ret === \"break\") break;\n }\n }\n\n if (state.placement !== firstFittingPlacement) {\n state.modifiersData[name]._skip = true;\n state.placement = firstFittingPlacement;\n state.reset = true;\n }\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'flip',\n enabled: true,\n phase: 'main',\n fn: flip,\n requiresIfExists: ['offset'],\n data: {\n _skip: false\n }\n};","import { top, bottom, left, right } from \"../enums.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\n\nfunction getSideOffsets(overflow, rect, preventedOffsets) {\n if (preventedOffsets === void 0) {\n preventedOffsets = {\n x: 0,\n y: 0\n };\n }\n\n return {\n top: overflow.top - rect.height - preventedOffsets.y,\n right: overflow.right - rect.width + preventedOffsets.x,\n bottom: overflow.bottom - rect.height + preventedOffsets.y,\n left: overflow.left - rect.width - preventedOffsets.x\n };\n}\n\nfunction isAnySideFullyClipped(overflow) {\n return [top, right, bottom, left].some(function (side) {\n return overflow[side] >= 0;\n });\n}\n\nfunction hide(_ref) {\n var state = _ref.state,\n name = _ref.name;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var preventedOffsets = state.modifiersData.preventOverflow;\n var referenceOverflow = detectOverflow(state, {\n elementContext: 'reference'\n });\n var popperAltOverflow = detectOverflow(state, {\n altBoundary: true\n });\n var referenceClippingOffsets = getSideOffsets(referenceOverflow, referenceRect);\n var popperEscapeOffsets = getSideOffsets(popperAltOverflow, popperRect, preventedOffsets);\n var isReferenceHidden = isAnySideFullyClipped(referenceClippingOffsets);\n var hasPopperEscaped = isAnySideFullyClipped(popperEscapeOffsets);\n state.modifiersData[name] = {\n referenceClippingOffsets: referenceClippingOffsets,\n popperEscapeOffsets: popperEscapeOffsets,\n isReferenceHidden: isReferenceHidden,\n hasPopperEscaped: hasPopperEscaped\n };\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-reference-hidden': isReferenceHidden,\n 'data-popper-escaped': hasPopperEscaped\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'hide',\n enabled: true,\n phase: 'main',\n requiresIfExists: ['preventOverflow'],\n fn: hide\n};","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport { top, left, right, placements } from \"../enums.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport function distanceAndSkiddingToXY(placement, rects, offset) {\n var basePlacement = getBasePlacement(placement);\n var invertDistance = [left, top].indexOf(basePlacement) >= 0 ? -1 : 1;\n\n var _ref = typeof offset === 'function' ? offset(Object.assign({}, rects, {\n placement: placement\n })) : offset,\n skidding = _ref[0],\n distance = _ref[1];\n\n skidding = skidding || 0;\n distance = (distance || 0) * invertDistance;\n return [left, right].indexOf(basePlacement) >= 0 ? {\n x: distance,\n y: skidding\n } : {\n x: skidding,\n y: distance\n };\n}\n\nfunction offset(_ref2) {\n var state = _ref2.state,\n options = _ref2.options,\n name = _ref2.name;\n var _options$offset = options.offset,\n offset = _options$offset === void 0 ? [0, 0] : _options$offset;\n var data = placements.reduce(function (acc, placement) {\n acc[placement] = distanceAndSkiddingToXY(placement, state.rects, offset);\n return acc;\n }, {});\n var _data$state$placement = data[state.placement],\n x = _data$state$placement.x,\n y = _data$state$placement.y;\n\n if (state.modifiersData.popperOffsets != null) {\n state.modifiersData.popperOffsets.x += x;\n state.modifiersData.popperOffsets.y += y;\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'offset',\n enabled: true,\n phase: 'main',\n requires: ['popperOffsets'],\n fn: offset\n};","import computeOffsets from \"../utils/computeOffsets.js\";\n\nfunction popperOffsets(_ref) {\n var state = _ref.state,\n name = _ref.name;\n // Offsets are the actual position the popper needs to have to be\n // properly positioned near its reference element\n // This is the most basic placement, and will be adjusted by\n // the modifiers in the next step\n state.modifiersData[name] = computeOffsets({\n reference: state.rects.reference,\n element: state.rects.popper,\n strategy: 'absolute',\n placement: state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'popperOffsets',\n enabled: true,\n phase: 'read',\n fn: popperOffsets,\n data: {}\n};","export default function getAltAxis(axis) {\n return axis === 'x' ? 'y' : 'x';\n}","import { top, left, right, bottom, start } from \"../enums.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport getAltAxis from \"../utils/getAltAxis.js\";\nimport { within, withinMaxClamp } from \"../utils/within.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport getVariation from \"../utils/getVariation.js\";\nimport getFreshSideObject from \"../utils/getFreshSideObject.js\";\nimport { min as mathMin, max as mathMax } from \"../utils/math.js\";\n\nfunction preventOverflow(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? false : _options$altAxis,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n padding = options.padding,\n _options$tether = options.tether,\n tether = _options$tether === void 0 ? true : _options$tether,\n _options$tetherOffset = options.tetherOffset,\n tetherOffset = _options$tetherOffset === void 0 ? 0 : _options$tetherOffset;\n var overflow = detectOverflow(state, {\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n altBoundary: altBoundary\n });\n var basePlacement = getBasePlacement(state.placement);\n var variation = getVariation(state.placement);\n var isBasePlacement = !variation;\n var mainAxis = getMainAxisFromPlacement(basePlacement);\n var altAxis = getAltAxis(mainAxis);\n var popperOffsets = state.modifiersData.popperOffsets;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var tetherOffsetValue = typeof tetherOffset === 'function' ? tetherOffset(Object.assign({}, state.rects, {\n placement: state.placement\n })) : tetherOffset;\n var normalizedTetherOffsetValue = typeof tetherOffsetValue === 'number' ? {\n mainAxis: tetherOffsetValue,\n altAxis: tetherOffsetValue\n } : Object.assign({\n mainAxis: 0,\n altAxis: 0\n }, tetherOffsetValue);\n var offsetModifierState = state.modifiersData.offset ? state.modifiersData.offset[state.placement] : null;\n var data = {\n x: 0,\n y: 0\n };\n\n if (!popperOffsets) {\n return;\n }\n\n if (checkMainAxis) {\n var _offsetModifierState$;\n\n var mainSide = mainAxis === 'y' ? top : left;\n var altSide = mainAxis === 'y' ? bottom : right;\n var len = mainAxis === 'y' ? 'height' : 'width';\n var offset = popperOffsets[mainAxis];\n var min = offset + overflow[mainSide];\n var max = offset - overflow[altSide];\n var additive = tether ? -popperRect[len] / 2 : 0;\n var minLen = variation === start ? referenceRect[len] : popperRect[len];\n var maxLen = variation === start ? -popperRect[len] : -referenceRect[len]; // We need to include the arrow in the calculation so the arrow doesn't go\n // outside the reference bounds\n\n var arrowElement = state.elements.arrow;\n var arrowRect = tether && arrowElement ? getLayoutRect(arrowElement) : {\n width: 0,\n height: 0\n };\n var arrowPaddingObject = state.modifiersData['arrow#persistent'] ? state.modifiersData['arrow#persistent'].padding : getFreshSideObject();\n var arrowPaddingMin = arrowPaddingObject[mainSide];\n var arrowPaddingMax = arrowPaddingObject[altSide]; // If the reference length is smaller than the arrow length, we don't want\n // to include its full size in the calculation. If the reference is small\n // and near the edge of a boundary, the popper can overflow even if the\n // reference is not overflowing as well (e.g. virtual elements with no\n // width or height)\n\n var arrowLen = within(0, referenceRect[len], arrowRect[len]);\n var minOffset = isBasePlacement ? referenceRect[len] / 2 - additive - arrowLen - arrowPaddingMin - normalizedTetherOffsetValue.mainAxis : minLen - arrowLen - arrowPaddingMin - normalizedTetherOffsetValue.mainAxis;\n var maxOffset = isBasePlacement ? -referenceRect[len] / 2 + additive + arrowLen + arrowPaddingMax + normalizedTetherOffsetValue.mainAxis : maxLen + arrowLen + arrowPaddingMax + normalizedTetherOffsetValue.mainAxis;\n var arrowOffsetParent = state.elements.arrow && getOffsetParent(state.elements.arrow);\n var clientOffset = arrowOffsetParent ? mainAxis === 'y' ? arrowOffsetParent.clientTop || 0 : arrowOffsetParent.clientLeft || 0 : 0;\n var offsetModifierValue = (_offsetModifierState$ = offsetModifierState == null ? void 0 : offsetModifierState[mainAxis]) != null ? _offsetModifierState$ : 0;\n var tetherMin = offset + minOffset - offsetModifierValue - clientOffset;\n var tetherMax = offset + maxOffset - offsetModifierValue;\n var preventedOffset = within(tether ? mathMin(min, tetherMin) : min, offset, tether ? mathMax(max, tetherMax) : max);\n popperOffsets[mainAxis] = preventedOffset;\n data[mainAxis] = preventedOffset - offset;\n }\n\n if (checkAltAxis) {\n var _offsetModifierState$2;\n\n var _mainSide = mainAxis === 'x' ? top : left;\n\n var _altSide = mainAxis === 'x' ? bottom : right;\n\n var _offset = popperOffsets[altAxis];\n\n var _len = altAxis === 'y' ? 'height' : 'width';\n\n var _min = _offset + overflow[_mainSide];\n\n var _max = _offset - overflow[_altSide];\n\n var isOriginSide = [top, left].indexOf(basePlacement) !== -1;\n\n var _offsetModifierValue = (_offsetModifierState$2 = offsetModifierState == null ? void 0 : offsetModifierState[altAxis]) != null ? _offsetModifierState$2 : 0;\n\n var _tetherMin = isOriginSide ? _min : _offset - referenceRect[_len] - popperRect[_len] - _offsetModifierValue + normalizedTetherOffsetValue.altAxis;\n\n var _tetherMax = isOriginSide ? _offset + referenceRect[_len] + popperRect[_len] - _offsetModifierValue - normalizedTetherOffsetValue.altAxis : _max;\n\n var _preventedOffset = tether && isOriginSide ? withinMaxClamp(_tetherMin, _offset, _tetherMax) : within(tether ? _tetherMin : _min, _offset, tether ? _tetherMax : _max);\n\n popperOffsets[altAxis] = _preventedOffset;\n data[altAxis] = _preventedOffset - _offset;\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'preventOverflow',\n enabled: true,\n phase: 'main',\n fn: preventOverflow,\n requiresIfExists: ['offset']\n};","export default function getHTMLElementScroll(element) {\n return {\n scrollLeft: element.scrollLeft,\n scrollTop: element.scrollTop\n };\n}","import getWindowScroll from \"./getWindowScroll.js\";\nimport getWindow from \"./getWindow.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getHTMLElementScroll from \"./getHTMLElementScroll.js\";\nexport default function getNodeScroll(node) {\n if (node === getWindow(node) || !isHTMLElement(node)) {\n return getWindowScroll(node);\n } else {\n return getHTMLElementScroll(node);\n }\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getNodeScroll from \"./getNodeScroll.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport isScrollParent from \"./isScrollParent.js\";\nimport { round } from \"../utils/math.js\";\n\nfunction isElementScaled(element) {\n var rect = element.getBoundingClientRect();\n var scaleX = round(rect.width) / element.offsetWidth || 1;\n var scaleY = round(rect.height) / element.offsetHeight || 1;\n return scaleX !== 1 || scaleY !== 1;\n} // Returns the composite rect of an element relative to its offsetParent.\n// Composite means it takes into account transforms as well as layout.\n\n\nexport default function getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) {\n if (isFixed === void 0) {\n isFixed = false;\n }\n\n var isOffsetParentAnElement = isHTMLElement(offsetParent);\n var offsetParentIsScaled = isHTMLElement(offsetParent) && isElementScaled(offsetParent);\n var documentElement = getDocumentElement(offsetParent);\n var rect = getBoundingClientRect(elementOrVirtualElement, offsetParentIsScaled, isFixed);\n var scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n var offsets = {\n x: 0,\n y: 0\n };\n\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n if (getNodeName(offsetParent) !== 'body' || // https://github.com/popperjs/popper-core/issues/1078\n isScrollParent(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n\n if (isHTMLElement(offsetParent)) {\n offsets = getBoundingClientRect(offsetParent, true);\n offsets.x += offsetParent.clientLeft;\n offsets.y += offsetParent.clientTop;\n } else if (documentElement) {\n offsets.x = getWindowScrollBarX(documentElement);\n }\n }\n\n return {\n x: rect.left + scroll.scrollLeft - offsets.x,\n y: rect.top + scroll.scrollTop - offsets.y,\n width: rect.width,\n height: rect.height\n };\n}","import { modifierPhases } from \"../enums.js\"; // source: https://stackoverflow.com/questions/49875255\n\nfunction order(modifiers) {\n var map = new Map();\n var visited = new Set();\n var result = [];\n modifiers.forEach(function (modifier) {\n map.set(modifier.name, modifier);\n }); // On visiting object, check for its dependencies and visit them recursively\n\n function sort(modifier) {\n visited.add(modifier.name);\n var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []);\n requires.forEach(function (dep) {\n if (!visited.has(dep)) {\n var depModifier = map.get(dep);\n\n if (depModifier) {\n sort(depModifier);\n }\n }\n });\n result.push(modifier);\n }\n\n modifiers.forEach(function (modifier) {\n if (!visited.has(modifier.name)) {\n // check for visited object\n sort(modifier);\n }\n });\n return result;\n}\n\nexport default function orderModifiers(modifiers) {\n // order based on dependencies\n var orderedModifiers = order(modifiers); // order based on phase\n\n return modifierPhases.reduce(function (acc, phase) {\n return acc.concat(orderedModifiers.filter(function (modifier) {\n return modifier.phase === phase;\n }));\n }, []);\n}","export default function debounce(fn) {\n var pending;\n return function () {\n if (!pending) {\n pending = new Promise(function (resolve) {\n Promise.resolve().then(function () {\n pending = undefined;\n resolve(fn());\n });\n });\n }\n\n return pending;\n };\n}","export default function mergeByName(modifiers) {\n var merged = modifiers.reduce(function (merged, current) {\n var existing = merged[current.name];\n merged[current.name] = existing ? Object.assign({}, existing, current, {\n options: Object.assign({}, existing.options, current.options),\n data: Object.assign({}, existing.data, current.data)\n }) : current;\n return merged;\n }, {}); // IE11 does not support Object.values\n\n return Object.keys(merged).map(function (key) {\n return merged[key];\n });\n}","import getCompositeRect from \"./dom-utils/getCompositeRect.js\";\nimport getLayoutRect from \"./dom-utils/getLayoutRect.js\";\nimport listScrollParents from \"./dom-utils/listScrollParents.js\";\nimport getOffsetParent from \"./dom-utils/getOffsetParent.js\";\nimport orderModifiers from \"./utils/orderModifiers.js\";\nimport debounce from \"./utils/debounce.js\";\nimport mergeByName from \"./utils/mergeByName.js\";\nimport detectOverflow from \"./utils/detectOverflow.js\";\nimport { isElement } from \"./dom-utils/instanceOf.js\";\nvar DEFAULT_OPTIONS = {\n placement: 'bottom',\n modifiers: [],\n strategy: 'absolute'\n};\n\nfunction areValidElements() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return !args.some(function (element) {\n return !(element && typeof element.getBoundingClientRect === 'function');\n });\n}\n\nexport function popperGenerator(generatorOptions) {\n if (generatorOptions === void 0) {\n generatorOptions = {};\n }\n\n var _generatorOptions = generatorOptions,\n _generatorOptions$def = _generatorOptions.defaultModifiers,\n defaultModifiers = _generatorOptions$def === void 0 ? [] : _generatorOptions$def,\n _generatorOptions$def2 = _generatorOptions.defaultOptions,\n defaultOptions = _generatorOptions$def2 === void 0 ? DEFAULT_OPTIONS : _generatorOptions$def2;\n return function createPopper(reference, popper, options) {\n if (options === void 0) {\n options = defaultOptions;\n }\n\n var state = {\n placement: 'bottom',\n orderedModifiers: [],\n options: Object.assign({}, DEFAULT_OPTIONS, defaultOptions),\n modifiersData: {},\n elements: {\n reference: reference,\n popper: popper\n },\n attributes: {},\n styles: {}\n };\n var effectCleanupFns = [];\n var isDestroyed = false;\n var instance = {\n state: state,\n setOptions: function setOptions(setOptionsAction) {\n var options = typeof setOptionsAction === 'function' ? setOptionsAction(state.options) : setOptionsAction;\n cleanupModifierEffects();\n state.options = Object.assign({}, defaultOptions, state.options, options);\n state.scrollParents = {\n reference: isElement(reference) ? listScrollParents(reference) : reference.contextElement ? listScrollParents(reference.contextElement) : [],\n popper: listScrollParents(popper)\n }; // Orders the modifiers based on their dependencies and `phase`\n // properties\n\n var orderedModifiers = orderModifiers(mergeByName([].concat(defaultModifiers, state.options.modifiers))); // Strip out disabled modifiers\n\n state.orderedModifiers = orderedModifiers.filter(function (m) {\n return m.enabled;\n });\n runModifierEffects();\n return instance.update();\n },\n // Sync update – it will always be executed, even if not necessary. This\n // is useful for low frequency updates where sync behavior simplifies the\n // logic.\n // For high frequency updates (e.g. `resize` and `scroll` events), always\n // prefer the async Popper#update method\n forceUpdate: function forceUpdate() {\n if (isDestroyed) {\n return;\n }\n\n var _state$elements = state.elements,\n reference = _state$elements.reference,\n popper = _state$elements.popper; // Don't proceed if `reference` or `popper` are not valid elements\n // anymore\n\n if (!areValidElements(reference, popper)) {\n return;\n } // Store the reference and popper rects to be read by modifiers\n\n\n state.rects = {\n reference: getCompositeRect(reference, getOffsetParent(popper), state.options.strategy === 'fixed'),\n popper: getLayoutRect(popper)\n }; // Modifiers have the ability to reset the current update cycle. The\n // most common use case for this is the `flip` modifier changing the\n // placement, which then needs to re-run all the modifiers, because the\n // logic was previously ran for the previous placement and is therefore\n // stale/incorrect\n\n state.reset = false;\n state.placement = state.options.placement; // On each update cycle, the `modifiersData` property for each modifier\n // is filled with the initial data specified by the modifier. This means\n // it doesn't persist and is fresh on each update.\n // To ensure persistent data, use `${name}#persistent`\n\n state.orderedModifiers.forEach(function (modifier) {\n return state.modifiersData[modifier.name] = Object.assign({}, modifier.data);\n });\n\n for (var index = 0; index < state.orderedModifiers.length; index++) {\n if (state.reset === true) {\n state.reset = false;\n index = -1;\n continue;\n }\n\n var _state$orderedModifie = state.orderedModifiers[index],\n fn = _state$orderedModifie.fn,\n _state$orderedModifie2 = _state$orderedModifie.options,\n _options = _state$orderedModifie2 === void 0 ? {} : _state$orderedModifie2,\n name = _state$orderedModifie.name;\n\n if (typeof fn === 'function') {\n state = fn({\n state: state,\n options: _options,\n name: name,\n instance: instance\n }) || state;\n }\n }\n },\n // Async and optimistically optimized update – it will not be executed if\n // not necessary (debounced to run at most once-per-tick)\n update: debounce(function () {\n return new Promise(function (resolve) {\n instance.forceUpdate();\n resolve(state);\n });\n }),\n destroy: function destroy() {\n cleanupModifierEffects();\n isDestroyed = true;\n }\n };\n\n if (!areValidElements(reference, popper)) {\n return instance;\n }\n\n instance.setOptions(options).then(function (state) {\n if (!isDestroyed && options.onFirstUpdate) {\n options.onFirstUpdate(state);\n }\n }); // Modifiers have the ability to execute arbitrary code before the first\n // update cycle runs. They will be executed in the same order as the update\n // cycle. This is useful when a modifier adds some persistent data that\n // other modifiers need to use, but the modifier is run after the dependent\n // one.\n\n function runModifierEffects() {\n state.orderedModifiers.forEach(function (_ref) {\n var name = _ref.name,\n _ref$options = _ref.options,\n options = _ref$options === void 0 ? {} : _ref$options,\n effect = _ref.effect;\n\n if (typeof effect === 'function') {\n var cleanupFn = effect({\n state: state,\n name: name,\n instance: instance,\n options: options\n });\n\n var noopFn = function noopFn() {};\n\n effectCleanupFns.push(cleanupFn || noopFn);\n }\n });\n }\n\n function cleanupModifierEffects() {\n effectCleanupFns.forEach(function (fn) {\n return fn();\n });\n effectCleanupFns = [];\n }\n\n return instance;\n };\n}\nexport var createPopper = /*#__PURE__*/popperGenerator(); // eslint-disable-next-line import/no-unused-modules\n\nexport { detectOverflow };","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nimport offset from \"./modifiers/offset.js\";\nimport flip from \"./modifiers/flip.js\";\nimport preventOverflow from \"./modifiers/preventOverflow.js\";\nimport arrow from \"./modifiers/arrow.js\";\nimport hide from \"./modifiers/hide.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles, offset, flip, preventOverflow, arrow, hide];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow }; // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper as createPopperLite } from \"./popper-lite.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport * from \"./modifiers/index.js\";","/**!\n* tippy.js v6.3.7\n* (c) 2017-2021 atomiks\n* MIT License\n*/\nimport { createPopper, applyStyles } from '@popperjs/core';\n\nvar ROUND_ARROW = '<svg width=\"16\" height=\"6\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M0 6s1.796-.013 4.67-3.615C5.851.9 6.93.006 8 0c1.07-.006 2.148.887 3.343 2.385C14.233 6.005 16 6 16 6H0z\"></svg>';\nvar BOX_CLASS = \"tippy-box\";\nvar CONTENT_CLASS = \"tippy-content\";\nvar BACKDROP_CLASS = \"tippy-backdrop\";\nvar ARROW_CLASS = \"tippy-arrow\";\nvar SVG_ARROW_CLASS = \"tippy-svg-arrow\";\nvar TOUCH_OPTIONS = {\n passive: true,\n capture: true\n};\nvar TIPPY_DEFAULT_APPEND_TO = function TIPPY_DEFAULT_APPEND_TO() {\n return document.body;\n};\n\nfunction hasOwnProperty(obj, key) {\n return {}.hasOwnProperty.call(obj, key);\n}\nfunction getValueAtIndexOrReturn(value, index, defaultValue) {\n if (Array.isArray(value)) {\n var v = value[index];\n return v == null ? Array.isArray(defaultValue) ? defaultValue[index] : defaultValue : v;\n }\n\n return value;\n}\nfunction isType(value, type) {\n var str = {}.toString.call(value);\n return str.indexOf('[object') === 0 && str.indexOf(type + \"]\") > -1;\n}\nfunction invokeWithArgsOrReturn(value, args) {\n return typeof value === 'function' ? value.apply(void 0, args) : value;\n}\nfunction debounce(fn, ms) {\n // Avoid wrapping in `setTimeout` if ms is 0 anyway\n if (ms === 0) {\n return fn;\n }\n\n var timeout;\n return function (arg) {\n clearTimeout(timeout);\n timeout = setTimeout(function () {\n fn(arg);\n }, ms);\n };\n}\nfunction removeProperties(obj, keys) {\n var clone = Object.assign({}, obj);\n keys.forEach(function (key) {\n delete clone[key];\n });\n return clone;\n}\nfunction splitBySpaces(value) {\n return value.split(/\\s+/).filter(Boolean);\n}\nfunction normalizeToArray(value) {\n return [].concat(value);\n}\nfunction pushIfUnique(arr, value) {\n if (arr.indexOf(value) === -1) {\n arr.push(value);\n }\n}\nfunction unique(arr) {\n return arr.filter(function (item, index) {\n return arr.indexOf(item) === index;\n });\n}\nfunction getBasePlacement(placement) {\n return placement.split('-')[0];\n}\nfunction arrayFrom(value) {\n return [].slice.call(value);\n}\nfunction removeUndefinedProps(obj) {\n return Object.keys(obj).reduce(function (acc, key) {\n if (obj[key] !== undefined) {\n acc[key] = obj[key];\n }\n\n return acc;\n }, {});\n}\n\nfunction div() {\n return document.createElement('div');\n}\nfunction isElement(value) {\n return ['Element', 'Fragment'].some(function (type) {\n return isType(value, type);\n });\n}\nfunction isNodeList(value) {\n return isType(value, 'NodeList');\n}\nfunction isMouseEvent(value) {\n return isType(value, 'MouseEvent');\n}\nfunction isReferenceElement(value) {\n return !!(value && value._tippy && value._tippy.reference === value);\n}\nfunction getArrayOfElements(value) {\n if (isElement(value)) {\n return [value];\n }\n\n if (isNodeList(value)) {\n return arrayFrom(value);\n }\n\n if (Array.isArray(value)) {\n return value;\n }\n\n return arrayFrom(document.querySelectorAll(value));\n}\nfunction setTransitionDuration(els, value) {\n els.forEach(function (el) {\n if (el) {\n el.style.transitionDuration = value + \"ms\";\n }\n });\n}\nfunction setVisibilityState(els, state) {\n els.forEach(function (el) {\n if (el) {\n el.setAttribute('data-state', state);\n }\n });\n}\nfunction getOwnerDocument(elementOrElements) {\n var _element$ownerDocumen;\n\n var _normalizeToArray = normalizeToArray(elementOrElements),\n element = _normalizeToArray[0]; // Elements created via a <template> have an ownerDocument with no reference to the body\n\n\n return element != null && (_element$ownerDocumen = element.ownerDocument) != null && _element$ownerDocumen.body ? element.ownerDocument : document;\n}\nfunction isCursorOutsideInteractiveBorder(popperTreeData, event) {\n var clientX = event.clientX,\n clientY = event.clientY;\n return popperTreeData.every(function (_ref) {\n var popperRect = _ref.popperRect,\n popperState = _ref.popperState,\n props = _ref.props;\n var interactiveBorder = props.interactiveBorder;\n var basePlacement = getBasePlacement(popperState.placement);\n var offsetData = popperState.modifiersData.offset;\n\n if (!offsetData) {\n return true;\n }\n\n var topDistance = basePlacement === 'bottom' ? offsetData.top.y : 0;\n var bottomDistance = basePlacement === 'top' ? offsetData.bottom.y : 0;\n var leftDistance = basePlacement === 'right' ? offsetData.left.x : 0;\n var rightDistance = basePlacement === 'left' ? offsetData.right.x : 0;\n var exceedsTop = popperRect.top - clientY + topDistance > interactiveBorder;\n var exceedsBottom = clientY - popperRect.bottom - bottomDistance > interactiveBorder;\n var exceedsLeft = popperRect.left - clientX + leftDistance > interactiveBorder;\n var exceedsRight = clientX - popperRect.right - rightDistance > interactiveBorder;\n return exceedsTop || exceedsBottom || exceedsLeft || exceedsRight;\n });\n}\nfunction updateTransitionEndListener(box, action, listener) {\n var method = action + \"EventListener\"; // some browsers apparently support `transition` (unprefixed) but only fire\n // `webkitTransitionEnd`...\n\n ['transitionend', 'webkitTransitionEnd'].forEach(function (event) {\n box[method](event, listener);\n });\n}\n/**\n * Compared to xxx.contains, this function works for dom structures with shadow\n * dom\n */\n\nfunction actualContains(parent, child) {\n var target = child;\n\n while (target) {\n var _target$getRootNode;\n\n if (parent.contains(target)) {\n return true;\n }\n\n target = target.getRootNode == null ? void 0 : (_target$getRootNode = target.getRootNode()) == null ? void 0 : _target$getRootNode.host;\n }\n\n return false;\n}\n\nvar currentInput = {\n isTouch: false\n};\nvar lastMouseMoveTime = 0;\n/**\n * When a `touchstart` event is fired, it's assumed the user is using touch\n * input. We'll bind a `mousemove` event listener to listen for mouse input in\n * the future. This way, the `isTouch` property is fully dynamic and will handle\n * hybrid devices that use a mix of touch + mouse input.\n */\n\nfunction onDocumentTouchStart() {\n if (currentInput.isTouch) {\n return;\n }\n\n currentInput.isTouch = true;\n\n if (window.performance) {\n document.addEventListener('mousemove', onDocumentMouseMove);\n }\n}\n/**\n * When two `mousemove` event are fired consecutively within 20ms, it's assumed\n * the user is using mouse input again. `mousemove` can fire on touch devices as\n * well, but very rarely that quickly.\n */\n\nfunction onDocumentMouseMove() {\n var now = performance.now();\n\n if (now - lastMouseMoveTime < 20) {\n currentInput.isTouch = false;\n document.removeEventListener('mousemove', onDocumentMouseMove);\n }\n\n lastMouseMoveTime = now;\n}\n/**\n * When an element is in focus and has a tippy, leaving the tab/window and\n * returning causes it to show again. For mouse users this is unexpected, but\n * for keyboard use it makes sense.\n * TODO: find a better technique to solve this problem\n */\n\nfunction onWindowBlur() {\n var activeElement = document.activeElement;\n\n if (isReferenceElement(activeElement)) {\n var instance = activeElement._tippy;\n\n if (activeElement.blur && !instance.state.isVisible) {\n activeElement.blur();\n }\n }\n}\nfunction bindGlobalEventListeners() {\n document.addEventListener('touchstart', onDocumentTouchStart, TOUCH_OPTIONS);\n window.addEventListener('blur', onWindowBlur);\n}\n\nvar isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined';\nvar isIE11 = isBrowser ? // @ts-ignore\n!!window.msCrypto : false;\n\nfunction createMemoryLeakWarning(method) {\n var txt = method === 'destroy' ? 'n already-' : ' ';\n return [method + \"() was called on a\" + txt + \"destroyed instance. This is a no-op but\", 'indicates a potential memory leak.'].join(' ');\n}\nfunction clean(value) {\n var spacesAndTabs = /[ \\t]{2,}/g;\n var lineStartWithSpaces = /^[ \\t]*/gm;\n return value.replace(spacesAndTabs, ' ').replace(lineStartWithSpaces, '').trim();\n}\n\nfunction getDevMessage(message) {\n return clean(\"\\n %ctippy.js\\n\\n %c\" + clean(message) + \"\\n\\n %c\\uD83D\\uDC77\\u200D This is a development-only message. It will be removed in production.\\n \");\n}\n\nfunction getFormattedMessage(message) {\n return [getDevMessage(message), // title\n 'color: #00C584; font-size: 1.3em; font-weight: bold;', // message\n 'line-height: 1.5', // footer\n 'color: #a6a095;'];\n} // Assume warnings and errors never have the same message\n\nvar visitedMessages;\n\nif (process.env.NODE_ENV !== \"production\") {\n resetVisitedMessages();\n}\n\nfunction resetVisitedMessages() {\n visitedMessages = new Set();\n}\nfunction warnWhen(condition, message) {\n if (condition && !visitedMessages.has(message)) {\n var _console;\n\n visitedMessages.add(message);\n\n (_console = console).warn.apply(_console, getFormattedMessage(message));\n }\n}\nfunction errorWhen(condition, message) {\n if (condition && !visitedMessages.has(message)) {\n var _console2;\n\n visitedMessages.add(message);\n\n (_console2 = console).error.apply(_console2, getFormattedMessage(message));\n }\n}\nfunction validateTargets(targets) {\n var didPassFalsyValue = !targets;\n var didPassPlainObject = Object.prototype.toString.call(targets) === '[object Object]' && !targets.addEventListener;\n errorWhen(didPassFalsyValue, ['tippy() was passed', '`' + String(targets) + '`', 'as its targets (first) argument. Valid types are: String, Element,', 'Element[], or NodeList.'].join(' '));\n errorWhen(didPassPlainObject, ['tippy() was passed a plain object which is not supported as an argument', 'for virtual positioning. Use props.getReferenceClientRect instead.'].join(' '));\n}\n\nvar pluginProps = {\n animateFill: false,\n followCursor: false,\n inlinePositioning: false,\n sticky: false\n};\nvar renderProps = {\n allowHTML: false,\n animation: 'fade',\n arrow: true,\n content: '',\n inertia: false,\n maxWidth: 350,\n role: 'tooltip',\n theme: '',\n zIndex: 9999\n};\nvar defaultProps = Object.assign({\n appendTo: TIPPY_DEFAULT_APPEND_TO,\n aria: {\n content: 'auto',\n expanded: 'auto'\n },\n delay: 0,\n duration: [300, 250],\n getReferenceClientRect: null,\n hideOnClick: true,\n ignoreAttributes: false,\n interactive: false,\n interactiveBorder: 2,\n interactiveDebounce: 0,\n moveTransition: '',\n offset: [0, 10],\n onAfterUpdate: function onAfterUpdate() {},\n onBeforeUpdate: function onBeforeUpdate() {},\n onCreate: function onCreate() {},\n onDestroy: function onDestroy() {},\n onHidden: function onHidden() {},\n onHide: function onHide() {},\n onMount: function onMount() {},\n onShow: function onShow() {},\n onShown: function onShown() {},\n onTrigger: function onTrigger() {},\n onUntrigger: function onUntrigger() {},\n onClickOutside: function onClickOutside() {},\n placement: 'top',\n plugins: [],\n popperOptions: {},\n render: null,\n showOnCreate: false,\n touch: true,\n trigger: 'mouseenter focus',\n triggerTarget: null\n}, pluginProps, renderProps);\nvar defaultKeys = Object.keys(defaultProps);\nvar setDefaultProps = function setDefaultProps(partialProps) {\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== \"production\") {\n validateProps(partialProps, []);\n }\n\n var keys = Object.keys(partialProps);\n keys.forEach(function (key) {\n defaultProps[key] = partialProps[key];\n });\n};\nfunction getExtendedPassedProps(passedProps) {\n var plugins = passedProps.plugins || [];\n var pluginProps = plugins.reduce(function (acc, plugin) {\n var name = plugin.name,\n defaultValue = plugin.defaultValue;\n\n if (name) {\n var _name;\n\n acc[name] = passedProps[name] !== undefined ? passedProps[name] : (_name = defaultProps[name]) != null ? _name : defaultValue;\n }\n\n return acc;\n }, {});\n return Object.assign({}, passedProps, pluginProps);\n}\nfunction getDataAttributeProps(reference, plugins) {\n var propKeys = plugins ? Object.keys(getExtendedPassedProps(Object.assign({}, defaultProps, {\n plugins: plugins\n }))) : defaultKeys;\n var props = propKeys.reduce(function (acc, key) {\n var valueAsString = (reference.getAttribute(\"data-tippy-\" + key) || '').trim();\n\n if (!valueAsString) {\n return acc;\n }\n\n if (key === 'content') {\n acc[key] = valueAsString;\n } else {\n try {\n acc[key] = JSON.parse(valueAsString);\n } catch (e) {\n acc[key] = valueAsString;\n }\n }\n\n return acc;\n }, {});\n return props;\n}\nfunction evaluateProps(reference, props) {\n var out = Object.assign({}, props, {\n content: invokeWithArgsOrReturn(props.content, [reference])\n }, props.ignoreAttributes ? {} : getDataAttributeProps(reference, props.plugins));\n out.aria = Object.assign({}, defaultProps.aria, out.aria);\n out.aria = {\n expanded: out.aria.expanded === 'auto' ? props.interactive : out.aria.expanded,\n content: out.aria.content === 'auto' ? props.interactive ? null : 'describedby' : out.aria.content\n };\n return out;\n}\nfunction validateProps(partialProps, plugins) {\n if (partialProps === void 0) {\n partialProps = {};\n }\n\n if (plugins === void 0) {\n plugins = [];\n }\n\n var keys = Object.keys(partialProps);\n keys.forEach(function (prop) {\n var nonPluginProps = removeProperties(defaultProps, Object.keys(pluginProps));\n var didPassUnknownProp = !hasOwnProperty(nonPluginProps, prop); // Check if the prop exists in `plugins`\n\n if (didPassUnknownProp) {\n didPassUnknownProp = plugins.filter(function (plugin) {\n return plugin.name === prop;\n }).length === 0;\n }\n\n warnWhen(didPassUnknownProp, [\"`\" + prop + \"`\", \"is not a valid prop. You may have spelled it incorrectly, or if it's\", 'a plugin, forgot to pass it in an array as props.plugins.', '\\n\\n', 'All props: https://atomiks.github.io/tippyjs/v6/all-props/\\n', 'Plugins: https://atomiks.github.io/tippyjs/v6/plugins/'].join(' '));\n });\n}\n\nvar innerHTML = function innerHTML() {\n return 'innerHTML';\n};\n\nfunction dangerouslySetInnerHTML(element, html) {\n element[innerHTML()] = html;\n}\n\nfunction createArrowElement(value) {\n var arrow = div();\n\n if (value === true) {\n arrow.className = ARROW_CLASS;\n } else {\n arrow.className = SVG_ARROW_CLASS;\n\n if (isElement(value)) {\n arrow.appendChild(value);\n } else {\n dangerouslySetInnerHTML(arrow, value);\n }\n }\n\n return arrow;\n}\n\nfunction setContent(content, props) {\n if (isElement(props.content)) {\n dangerouslySetInnerHTML(content, '');\n content.appendChild(props.content);\n } else if (typeof props.content !== 'function') {\n if (props.allowHTML) {\n dangerouslySetInnerHTML(content, props.content);\n } else {\n content.textContent = props.content;\n }\n }\n}\nfunction getChildren(popper) {\n var box = popper.firstElementChild;\n var boxChildren = arrayFrom(box.children);\n return {\n box: box,\n content: boxChildren.find(function (node) {\n return node.classList.contains(CONTENT_CLASS);\n }),\n arrow: boxChildren.find(function (node) {\n return node.classList.contains(ARROW_CLASS) || node.classList.contains(SVG_ARROW_CLASS);\n }),\n backdrop: boxChildren.find(function (node) {\n return node.classList.contains(BACKDROP_CLASS);\n })\n };\n}\nfunction render(instance) {\n var popper = div();\n var box = div();\n box.className = BOX_CLASS;\n box.setAttribute('data-state', 'hidden');\n box.setAttribute('tabindex', '-1');\n var content = div();\n content.className = CONTENT_CLASS;\n content.setAttribute('data-state', 'hidden');\n setContent(content, instance.props);\n popper.appendChild(box);\n box.appendChild(content);\n onUpdate(instance.props, instance.props);\n\n function onUpdate(prevProps, nextProps) {\n var _getChildren = getChildren(popper),\n box = _getChildren.box,\n content = _getChildren.content,\n arrow = _getChildren.arrow;\n\n if (nextProps.theme) {\n box.setAttribute('data-theme', nextProps.theme);\n } else {\n box.removeAttribute('data-theme');\n }\n\n if (typeof nextProps.animation === 'string') {\n box.setAttribute('data-animation', nextProps.animation);\n } else {\n box.removeAttribute('data-animation');\n }\n\n if (nextProps.inertia) {\n box.setAttribute('data-inertia', '');\n } else {\n box.removeAttribute('data-inertia');\n }\n\n box.style.maxWidth = typeof nextProps.maxWidth === 'number' ? nextProps.maxWidth + \"px\" : nextProps.maxWidth;\n\n if (nextProps.role) {\n box.setAttribute('role', nextProps.role);\n } else {\n box.removeAttribute('role');\n }\n\n if (prevProps.content !== nextProps.content || prevProps.allowHTML !== nextProps.allowHTML) {\n setContent(content, instance.props);\n }\n\n if (nextProps.arrow) {\n if (!arrow) {\n box.appendChild(createArrowElement(nextProps.arrow));\n } else if (prevProps.arrow !== nextProps.arrow) {\n box.removeChild(arrow);\n box.appendChild(createArrowElement(nextProps.arrow));\n }\n } else if (arrow) {\n box.removeChild(arrow);\n }\n }\n\n return {\n popper: popper,\n onUpdate: onUpdate\n };\n} // Runtime check to identify if the render function is the default one; this\n// way we can apply default CSS transitions logic and it can be tree-shaken away\n\nrender.$$tippy = true;\n\nvar idCounter = 1;\nvar mouseMoveListeners = []; // Used by `hideAll()`\n\nvar mountedInstances = [];\nfunction createTippy(reference, passedProps) {\n var props = evaluateProps(reference, Object.assign({}, defaultProps, getExtendedPassedProps(removeUndefinedProps(passedProps)))); // ===========================================================================\n // 🔒 Private members\n // ===========================================================================\n\n var showTimeout;\n var hideTimeout;\n var scheduleHideAnimationFrame;\n var isVisibleFromClick = false;\n var didHideDueToDocumentMouseDown = false;\n var didTouchMove = false;\n var ignoreOnFirstUpdate = false;\n var lastTriggerEvent;\n var currentTransitionEndListener;\n var onFirstUpdate;\n var listeners = [];\n var debouncedOnMouseMove = debounce(onMouseMove, props.interactiveDebounce);\n var currentTarget; // ===========================================================================\n // 🔑 Public members\n // ===========================================================================\n\n var id = idCounter++;\n var popperInstance = null;\n var plugins = unique(props.plugins);\n var state = {\n // Is the instance currently enabled?\n isEnabled: true,\n // Is the tippy currently showing and not transitioning out?\n isVisible: false,\n // Has the instance been destroyed?\n isDestroyed: false,\n // Is the tippy currently mounted to the DOM?\n isMounted: false,\n // Has the tippy finished transitioning in?\n isShown: false\n };\n var instance = {\n // properties\n id: id,\n reference: reference,\n popper: div(),\n popperInstance: popperInstance,\n props: props,\n state: state,\n plugins: plugins,\n // methods\n clearDelayTimeouts: clearDelayTimeouts,\n setProps: setProps,\n setContent: setContent,\n show: show,\n hide: hide,\n hideWithInteractivity: hideWithInteractivity,\n enable: enable,\n disable: disable,\n unmount: unmount,\n destroy: destroy\n }; // TODO: Investigate why this early return causes a TDZ error in the tests —\n // it doesn't seem to happen in the browser\n\n /* istanbul ignore if */\n\n if (!props.render) {\n if (process.env.NODE_ENV !== \"production\") {\n errorWhen(true, 'render() function has not been supplied.');\n }\n\n return instance;\n } // ===========================================================================\n // Initial mutations\n // ===========================================================================\n\n\n var _props$render = props.render(instance),\n popper = _props$render.popper,\n onUpdate = _props$render.onUpdate;\n\n popper.setAttribute('data-tippy-root', '');\n popper.id = \"tippy-\" + instance.id;\n instance.popper = popper;\n reference._tippy = instance;\n popper._tippy = instance;\n var pluginsHooks = plugins.map(function (plugin) {\n return plugin.fn(instance);\n });\n var hasAriaExpanded = reference.hasAttribute('aria-expanded');\n addListeners();\n handleAriaExpandedAttribute();\n handleStyles();\n invokeHook('onCreate', [instance]);\n\n if (props.showOnCreate) {\n scheduleShow();\n } // Prevent a tippy with a delay from hiding if the cursor left then returned\n // before it started hiding\n\n\n popper.addEventListener('mouseenter', function () {\n if (instance.props.interactive && instance.state.isVisible) {\n instance.clearDelayTimeouts();\n }\n });\n popper.addEventListener('mouseleave', function () {\n if (instance.props.interactive && instance.props.trigger.indexOf('mouseenter') >= 0) {\n getDocument().addEventListener('mousemove', debouncedOnMouseMove);\n }\n });\n return instance; // ===========================================================================\n // 🔒 Private methods\n // ===========================================================================\n\n function getNormalizedTouchSettings() {\n var touch = instance.props.touch;\n return Array.isArray(touch) ? touch : [touch, 0];\n }\n\n function getIsCustomTouchBehavior() {\n return getNormalizedTouchSettings()[0] === 'hold';\n }\n\n function getIsDefaultRenderFn() {\n var _instance$props$rende;\n\n // @ts-ignore\n return !!((_instance$props$rende = instance.props.render) != null && _instance$props$rende.$$tippy);\n }\n\n function getCurrentTarget() {\n return currentTarget || reference;\n }\n\n function getDocument() {\n var parent = getCurrentTarget().parentNode;\n return parent ? getOwnerDocument(parent) : document;\n }\n\n function getDefaultTemplateChildren() {\n return getChildren(popper);\n }\n\n function getDelay(isShow) {\n // For touch or keyboard input, force `0` delay for UX reasons\n // Also if the instance is mounted but not visible (transitioning out),\n // ignore delay\n if (instance.state.isMounted && !instance.state.isVisible || currentInput.isTouch || lastTriggerEvent && lastTriggerEvent.type === 'focus') {\n return 0;\n }\n\n return getValueAtIndexOrReturn(instance.props.delay, isShow ? 0 : 1, defaultProps.delay);\n }\n\n function handleStyles(fromHide) {\n if (fromHide === void 0) {\n fromHide = false;\n }\n\n popper.style.pointerEvents = instance.props.interactive && !fromHide ? '' : 'none';\n popper.style.zIndex = \"\" + instance.props.zIndex;\n }\n\n function invokeHook(hook, args, shouldInvokePropsHook) {\n if (shouldInvokePropsHook === void 0) {\n shouldInvokePropsHook = true;\n }\n\n pluginsHooks.forEach(function (pluginHooks) {\n if (pluginHooks[hook]) {\n pluginHooks[hook].apply(pluginHooks, args);\n }\n });\n\n if (shouldInvokePropsHook) {\n var _instance$props;\n\n (_instance$props = instance.props)[hook].apply(_instance$props, args);\n }\n }\n\n function handleAriaContentAttribute() {\n var aria = instance.props.aria;\n\n if (!aria.content) {\n return;\n }\n\n var attr = \"aria-\" + aria.content;\n var id = popper.id;\n var nodes = normalizeToArray(instance.props.triggerTarget || reference);\n nodes.forEach(function (node) {\n var currentValue = node.getAttribute(attr);\n\n if (instance.state.isVisible) {\n node.setAttribute(attr, currentValue ? currentValue + \" \" + id : id);\n } else {\n var nextValue = currentValue && currentValue.replace(id, '').trim();\n\n if (nextValue) {\n node.setAttribute(attr, nextValue);\n } else {\n node.removeAttribute(attr);\n }\n }\n });\n }\n\n function handleAriaExpandedAttribute() {\n if (hasAriaExpanded || !instance.props.aria.expanded) {\n return;\n }\n\n var nodes = normalizeToArray(instance.props.triggerTarget || reference);\n nodes.forEach(function (node) {\n if (instance.props.interactive) {\n node.setAttribute('aria-expanded', instance.state.isVisible && node === getCurrentTarget() ? 'true' : 'false');\n } else {\n node.removeAttribute('aria-expanded');\n }\n });\n }\n\n function cleanupInteractiveMouseListeners() {\n getDocument().removeEventListener('mousemove', debouncedOnMouseMove);\n mouseMoveListeners = mouseMoveListeners.filter(function (listener) {\n return listener !== debouncedOnMouseMove;\n });\n }\n\n function onDocumentPress(event) {\n // Moved finger to scroll instead of an intentional tap outside\n if (currentInput.isTouch) {\n if (didTouchMove || event.type === 'mousedown') {\n return;\n }\n }\n\n var actualTarget = event.composedPath && event.composedPath()[0] || event.target; // Clicked on interactive popper\n\n if (instance.props.interactive && actualContains(popper, actualTarget)) {\n return;\n } // Clicked on the event listeners target\n\n\n if (normalizeToArray(instance.props.triggerTarget || reference).some(function (el) {\n return actualContains(el, actualTarget);\n })) {\n if (currentInput.isTouch) {\n return;\n }\n\n if (instance.state.isVisible && instance.props.trigger.indexOf('click') >= 0) {\n return;\n }\n } else {\n invokeHook('onClickOutside', [instance, event]);\n }\n\n if (instance.props.hideOnClick === true) {\n instance.clearDelayTimeouts();\n instance.hide(); // `mousedown` event is fired right before `focus` if pressing the\n // currentTarget. This lets a tippy with `focus` trigger know that it\n // should not show\n\n didHideDueToDocumentMouseDown = true;\n setTimeout(function () {\n didHideDueToDocumentMouseDown = false;\n }); // The listener gets added in `scheduleShow()`, but this may be hiding it\n // before it shows, and hide()'s early bail-out behavior can prevent it\n // from being cleaned up\n\n if (!instance.state.isMounted) {\n removeDocumentPress();\n }\n }\n }\n\n function onTouchMove() {\n didTouchMove = true;\n }\n\n function onTouchStart() {\n didTouchMove = false;\n }\n\n function addDocumentPress() {\n var doc = getDocument();\n doc.addEventListener('mousedown', onDocumentPress, true);\n doc.addEventListener('touchend', onDocumentPress, TOUCH_OPTIONS);\n doc.addEventListener('touchstart', onTouchStart, TOUCH_OPTIONS);\n doc.addEventListener('touchmove', onTouchMove, TOUCH_OPTIONS);\n }\n\n function removeDocumentPress() {\n var doc = getDocument();\n doc.removeEventListener('mousedown', onDocumentPress, true);\n doc.removeEventListener('touchend', onDocumentPress, TOUCH_OPTIONS);\n doc.removeEventListener('touchstart', onTouchStart, TOUCH_OPTIONS);\n doc.removeEventListener('touchmove', onTouchMove, TOUCH_OPTIONS);\n }\n\n function onTransitionedOut(duration, callback) {\n onTransitionEnd(duration, function () {\n if (!instance.state.isVisible && popper.parentNode && popper.parentNode.contains(popper)) {\n callback();\n }\n });\n }\n\n function onTransitionedIn(duration, callback) {\n onTransitionEnd(duration, callback);\n }\n\n function onTransitionEnd(duration, callback) {\n var box = getDefaultTemplateChildren().box;\n\n function listener(event) {\n if (event.target === box) {\n updateTransitionEndListener(box, 'remove', listener);\n callback();\n }\n } // Make callback synchronous if duration is 0\n // `transitionend` won't fire otherwise\n\n\n if (duration === 0) {\n return callback();\n }\n\n updateTransitionEndListener(box, 'remove', currentTransitionEndListener);\n updateTransitionEndListener(box, 'add', listener);\n currentTransitionEndListener = listener;\n }\n\n function on(eventType, handler, options) {\n if (options === void 0) {\n options = false;\n }\n\n var nodes = normalizeToArray(instance.props.triggerTarget || reference);\n nodes.forEach(function (node) {\n node.addEventListener(eventType, handler, options);\n listeners.push({\n node: node,\n eventType: eventType,\n handler: handler,\n options: options\n });\n });\n }\n\n function addListeners() {\n if (getIsCustomTouchBehavior()) {\n on('touchstart', onTrigger, {\n passive: true\n });\n on('touchend', onMouseLeave, {\n passive: true\n });\n }\n\n splitBySpaces(instance.props.trigger).forEach(function (eventType) {\n if (eventType === 'manual') {\n return;\n }\n\n on(eventType, onTrigger);\n\n switch (eventType) {\n case 'mouseenter':\n on('mouseleave', onMouseLeave);\n break;\n\n case 'focus':\n on(isIE11 ? 'focusout' : 'blur', onBlurOrFocusOut);\n break;\n\n case 'focusin':\n on('focusout', onBlurOrFocusOut);\n break;\n }\n });\n }\n\n function removeListeners() {\n listeners.forEach(function (_ref) {\n var node = _ref.node,\n eventType = _ref.eventType,\n handler = _ref.handler,\n options = _ref.options;\n node.removeEventListener(eventType, handler, options);\n });\n listeners = [];\n }\n\n function onTrigger(event) {\n var _lastTriggerEvent;\n\n var shouldScheduleClickHide = false;\n\n if (!instance.state.isEnabled || isEventListenerStopped(event) || didHideDueToDocumentMouseDown) {\n return;\n }\n\n var wasFocused = ((_lastTriggerEvent = lastTriggerEvent) == null ? void 0 : _lastTriggerEvent.type) === 'focus';\n lastTriggerEvent = event;\n currentTarget = event.currentTarget;\n handleAriaExpandedAttribute();\n\n if (!instance.state.isVisible && isMouseEvent(event)) {\n // If scrolling, `mouseenter` events can be fired if the cursor lands\n // over a new target, but `mousemove` events don't get fired. This\n // causes interactive tooltips to get stuck open until the cursor is\n // moved\n mouseMoveListeners.forEach(function (listener) {\n return listener(event);\n });\n } // Toggle show/hide when clicking click-triggered tooltips\n\n\n if (event.type === 'click' && (instance.props.trigger.indexOf('mouseenter') < 0 || isVisibleFromClick) && instance.props.hideOnClick !== false && instance.state.isVisible) {\n shouldScheduleClickHide = true;\n } else {\n scheduleShow(event);\n }\n\n if (event.type === 'click') {\n isVisibleFromClick = !shouldScheduleClickHide;\n }\n\n if (shouldScheduleClickHide && !wasFocused) {\n scheduleHide(event);\n }\n }\n\n function onMouseMove(event) {\n var target = event.target;\n var isCursorOverReferenceOrPopper = getCurrentTarget().contains(target) || popper.contains(target);\n\n if (event.type === 'mousemove' && isCursorOverReferenceOrPopper) {\n return;\n }\n\n var popperTreeData = getNestedPopperTree().concat(popper).map(function (popper) {\n var _instance$popperInsta;\n\n var instance = popper._tippy;\n var state = (_instance$popperInsta = instance.popperInstance) == null ? void 0 : _instance$popperInsta.state;\n\n if (state) {\n return {\n popperRect: popper.getBoundingClientRect(),\n popperState: state,\n props: props\n };\n }\n\n return null;\n }).filter(Boolean);\n\n if (isCursorOutsideInteractiveBorder(popperTreeData, event)) {\n cleanupInteractiveMouseListeners();\n scheduleHide(event);\n }\n }\n\n function onMouseLeave(event) {\n var shouldBail = isEventListenerStopped(event) || instance.props.trigger.indexOf('click') >= 0 && isVisibleFromClick;\n\n if (shouldBail) {\n return;\n }\n\n if (instance.props.interactive) {\n instance.hideWithInteractivity(event);\n return;\n }\n\n scheduleHide(event);\n }\n\n function onBlurOrFocusOut(event) {\n if (instance.props.trigger.indexOf('focusin') < 0 && event.target !== getCurrentTarget()) {\n return;\n } // If focus was moved to within the popper\n\n\n if (instance.props.interactive && event.relatedTarget && popper.contains(event.relatedTarget)) {\n return;\n }\n\n scheduleHide(event);\n }\n\n function isEventListenerStopped(event) {\n return currentInput.isTouch ? getIsCustomTouchBehavior() !== event.type.indexOf('touch') >= 0 : false;\n }\n\n function createPopperInstance() {\n destroyPopperInstance();\n var _instance$props2 = instance.props,\n popperOptions = _instance$props2.popperOptions,\n placement = _instance$props2.placement,\n offset = _instance$props2.offset,\n getReferenceClientRect = _instance$props2.getReferenceClientRect,\n moveTransition = _instance$props2.moveTransition;\n var arrow = getIsDefaultRenderFn() ? getChildren(popper).arrow : null;\n var computedReference = getReferenceClientRect ? {\n getBoundingClientRect: getReferenceClientRect,\n contextElement: getReferenceClientRect.contextElement || getCurrentTarget()\n } : reference;\n var tippyModifier = {\n name: '$$tippy',\n enabled: true,\n phase: 'beforeWrite',\n requires: ['computeStyles'],\n fn: function fn(_ref2) {\n var state = _ref2.state;\n\n if (getIsDefaultRenderFn()) {\n var _getDefaultTemplateCh = getDefaultTemplateChildren(),\n box = _getDefaultTemplateCh.box;\n\n ['placement', 'reference-hidden', 'escaped'].forEach(function (attr) {\n if (attr === 'placement') {\n box.setAttribute('data-placement', state.placement);\n } else {\n if (state.attributes.popper[\"data-popper-\" + attr]) {\n box.setAttribute(\"data-\" + attr, '');\n } else {\n box.removeAttribute(\"data-\" + attr);\n }\n }\n });\n state.attributes.popper = {};\n }\n }\n };\n var modifiers = [{\n name: 'offset',\n options: {\n offset: offset\n }\n }, {\n name: 'preventOverflow',\n options: {\n padding: {\n top: 2,\n bottom: 2,\n left: 5,\n right: 5\n }\n }\n }, {\n name: 'flip',\n options: {\n padding: 5\n }\n }, {\n name: 'computeStyles',\n options: {\n adaptive: !moveTransition\n }\n }, tippyModifier];\n\n if (getIsDefaultRenderFn() && arrow) {\n modifiers.push({\n name: 'arrow',\n options: {\n element: arrow,\n padding: 3\n }\n });\n }\n\n modifiers.push.apply(modifiers, (popperOptions == null ? void 0 : popperOptions.modifiers) || []);\n instance.popperInstance = createPopper(computedReference, popper, Object.assign({}, popperOptions, {\n placement: placement,\n onFirstUpdate: onFirstUpdate,\n modifiers: modifiers\n }));\n }\n\n function destroyPopperInstance() {\n if (instance.popperInstance) {\n instance.popperInstance.destroy();\n instance.popperInstance = null;\n }\n }\n\n function mount() {\n var appendTo = instance.props.appendTo;\n var parentNode; // By default, we'll append the popper to the triggerTargets's parentNode so\n // it's directly after the reference element so the elements inside the\n // tippy can be tabbed to\n // If there are clipping issues, the user can specify a different appendTo\n // and ensure focus management is handled correctly manually\n\n var node = getCurrentTarget();\n\n if (instance.props.interactive && appendTo === TIPPY_DEFAULT_APPEND_TO || appendTo === 'parent') {\n parentNode = node.parentNode;\n } else {\n parentNode = invokeWithArgsOrReturn(appendTo, [node]);\n } // The popper element needs to exist on the DOM before its position can be\n // updated as Popper needs to read its dimensions\n\n\n if (!parentNode.contains(popper)) {\n parentNode.appendChild(popper);\n }\n\n instance.state.isMounted = true;\n createPopperInstance();\n /* istanbul ignore else */\n\n if (process.env.NODE_ENV !== \"production\") {\n // Accessibility check\n warnWhen(instance.props.interactive && appendTo === defaultProps.appendTo && node.nextElementSibling !== popper, ['Interactive tippy element may not be accessible via keyboard', 'navigation because it is not directly after the reference element', 'in the DOM source order.', '\\n\\n', 'Using a wrapper <div> or <span> tag around the reference element', 'solves this by creating a new parentNode context.', '\\n\\n', 'Specifying `appendTo: document.body` silences this warning, but it', 'assumes you are using a focus management solution to handle', 'keyboard navigation.', '\\n\\n', 'See: https://atomiks.github.io/tippyjs/v6/accessibility/#interactivity'].join(' '));\n }\n }\n\n function getNestedPopperTree() {\n return arrayFrom(popper.querySelectorAll('[data-tippy-root]'));\n }\n\n function scheduleShow(event) {\n instance.clearDelayTimeouts();\n\n if (event) {\n invokeHook('onTrigger', [instance, event]);\n }\n\n addDocumentPress();\n var delay = getDelay(true);\n\n var _getNormalizedTouchSe = getNormalizedTouchSettings(),\n touchValue = _getNormalizedTouchSe[0],\n touchDelay = _getNormalizedTouchSe[1];\n\n if (currentInput.isTouch && touchValue === 'hold' && touchDelay) {\n delay = touchDelay;\n }\n\n if (delay) {\n showTimeout = setTimeout(function () {\n instance.show();\n }, delay);\n } else {\n instance.show();\n }\n }\n\n function scheduleHide(event) {\n instance.clearDelayTimeouts();\n invokeHook('onUntrigger', [instance, event]);\n\n if (!instance.state.isVisible) {\n removeDocumentPress();\n return;\n } // For interactive tippies, scheduleHide is added to a document.body handler\n // from onMouseLeave so must intercept scheduled hides from mousemove/leave\n // events when trigger contains mouseenter and click, and the tip is\n // currently shown as a result of a click.\n\n\n if (instance.props.trigger.indexOf('mouseenter') >= 0 && instance.props.trigger.indexOf('click') >= 0 && ['mouseleave', 'mousemove'].indexOf(event.type) >= 0 && isVisibleFromClick) {\n return;\n }\n\n var delay = getDelay(false);\n\n if (delay) {\n hideTimeout = setTimeout(function () {\n if (instance.state.isVisible) {\n instance.hide();\n }\n }, delay);\n } else {\n // Fixes a `transitionend` problem when it fires 1 frame too\n // late sometimes, we don't want hide() to be called.\n scheduleHideAnimationFrame = requestAnimationFrame(function () {\n instance.hide();\n });\n }\n } // ===========================================================================\n // 🔑 Public methods\n // ===========================================================================\n\n\n function enable() {\n instance.state.isEnabled = true;\n }\n\n function disable() {\n // Disabling the instance should also hide it\n // https://github.com/atomiks/tippy.js-react/issues/106\n instance.hide();\n instance.state.isEnabled = false;\n }\n\n function clearDelayTimeouts() {\n clearTimeout(showTimeout);\n clearTimeout(hideTimeout);\n cancelAnimationFrame(scheduleHideAnimationFrame);\n }\n\n function setProps(partialProps) {\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== \"production\") {\n warnWhen(instance.state.isDestroyed, createMemoryLeakWarning('setProps'));\n }\n\n if (instance.state.isDestroyed) {\n return;\n }\n\n invokeHook('onBeforeUpdate', [instance, partialProps]);\n removeListeners();\n var prevProps = instance.props;\n var nextProps = evaluateProps(reference, Object.assign({}, prevProps, removeUndefinedProps(partialProps), {\n ignoreAttributes: true\n }));\n instance.props = nextProps;\n addListeners();\n\n if (prevProps.interactiveDebounce !== nextProps.interactiveDebounce) {\n cleanupInteractiveMouseListeners();\n debouncedOnMouseMove = debounce(onMouseMove, nextProps.interactiveDebounce);\n } // Ensure stale aria-expanded attributes are removed\n\n\n if (prevProps.triggerTarget && !nextProps.triggerTarget) {\n normalizeToArray(prevProps.triggerTarget).forEach(function (node) {\n node.removeAttribute('aria-expanded');\n });\n } else if (nextProps.triggerTarget) {\n reference.removeAttribute('aria-expanded');\n }\n\n handleAriaExpandedAttribute();\n handleStyles();\n\n if (onUpdate) {\n onUpdate(prevProps, nextProps);\n }\n\n if (instance.popperInstance) {\n createPopperInstance(); // Fixes an issue with nested tippies if they are all getting re-rendered,\n // and the nested ones get re-rendered first.\n // https://github.com/atomiks/tippyjs-react/issues/177\n // TODO: find a cleaner / more efficient solution(!)\n\n getNestedPopperTree().forEach(function (nestedPopper) {\n // React (and other UI libs likely) requires a rAF wrapper as it flushes\n // its work in one\n requestAnimationFrame(nestedPopper._tippy.popperInstance.forceUpdate);\n });\n }\n\n invokeHook('onAfterUpdate', [instance, partialProps]);\n }\n\n function setContent(content) {\n instance.setProps({\n content: content\n });\n }\n\n function show() {\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== \"production\") {\n warnWhen(instance.state.isDestroyed, createMemoryLeakWarning('show'));\n } // Early bail-out\n\n\n var isAlreadyVisible = instance.state.isVisible;\n var isDestroyed = instance.state.isDestroyed;\n var isDisabled = !instance.state.isEnabled;\n var isTouchAndTouchDisabled = currentInput.isTouch && !instance.props.touch;\n var duration = getValueAtIndexOrReturn(instance.props.duration, 0, defaultProps.duration);\n\n if (isAlreadyVisible || isDestroyed || isDisabled || isTouchAndTouchDisabled) {\n return;\n } // Normalize `disabled` behavior across browsers.\n // Firefox allows events on disabled elements, but Chrome doesn't.\n // Using a wrapper element (i.e. <span>) is recommended.\n\n\n if (getCurrentTarget().hasAttribute('disabled')) {\n return;\n }\n\n invokeHook('onShow', [instance], false);\n\n if (instance.props.onShow(instance) === false) {\n return;\n }\n\n instance.state.isVisible = true;\n\n if (getIsDefaultRenderFn()) {\n popper.style.visibility = 'visible';\n }\n\n handleStyles();\n addDocumentPress();\n\n if (!instance.state.isMounted) {\n popper.style.transition = 'none';\n } // If flipping to the opposite side after hiding at least once, the\n // animation will use the wrong placement without resetting the duration\n\n\n if (getIsDefaultRenderFn()) {\n var _getDefaultTemplateCh2 = getDefaultTemplateChildren(),\n box = _getDefaultTemplateCh2.box,\n content = _getDefaultTemplateCh2.content;\n\n setTransitionDuration([box, content], 0);\n }\n\n onFirstUpdate = function onFirstUpdate() {\n var _instance$popperInsta2;\n\n if (!instance.state.isVisible || ignoreOnFirstUpdate) {\n return;\n }\n\n ignoreOnFirstUpdate = true; // reflow\n\n void popper.offsetHeight;\n popper.style.transition = instance.props.moveTransition;\n\n if (getIsDefaultRenderFn() && instance.props.animation) {\n var _getDefaultTemplateCh3 = getDefaultTemplateChildren(),\n _box = _getDefaultTemplateCh3.box,\n _content = _getDefaultTemplateCh3.content;\n\n setTransitionDuration([_box, _content], duration);\n setVisibilityState([_box, _content], 'visible');\n }\n\n handleAriaContentAttribute();\n handleAriaExpandedAttribute();\n pushIfUnique(mountedInstances, instance); // certain modifiers (e.g. `maxSize`) require a second update after the\n // popper has been positioned for the first time\n\n (_instance$popperInsta2 = instance.popperInstance) == null ? void 0 : _instance$popperInsta2.forceUpdate();\n invokeHook('onMount', [instance]);\n\n if (instance.props.animation && getIsDefaultRenderFn()) {\n onTransitionedIn(duration, function () {\n instance.state.isShown = true;\n invokeHook('onShown', [instance]);\n });\n }\n };\n\n mount();\n }\n\n function hide() {\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== \"production\") {\n warnWhen(instance.state.isDestroyed, createMemoryLeakWarning('hide'));\n } // Early bail-out\n\n\n var isAlreadyHidden = !instance.state.isVisible;\n var isDestroyed = instance.state.isDestroyed;\n var isDisabled = !instance.state.isEnabled;\n var duration = getValueAtIndexOrReturn(instance.props.duration, 1, defaultProps.duration);\n\n if (isAlreadyHidden || isDestroyed || isDisabled) {\n return;\n }\n\n invokeHook('onHide', [instance], false);\n\n if (instance.props.onHide(instance) === false) {\n return;\n }\n\n instance.state.isVisible = false;\n instance.state.isShown = false;\n ignoreOnFirstUpdate = false;\n isVisibleFromClick = false;\n\n if (getIsDefaultRenderFn()) {\n popper.style.visibility = 'hidden';\n }\n\n cleanupInteractiveMouseListeners();\n removeDocumentPress();\n handleStyles(true);\n\n if (getIsDefaultRenderFn()) {\n var _getDefaultTemplateCh4 = getDefaultTemplateChildren(),\n box = _getDefaultTemplateCh4.box,\n content = _getDefaultTemplateCh4.content;\n\n if (instance.props.animation) {\n setTransitionDuration([box, content], duration);\n setVisibilityState([box, content], 'hidden');\n }\n }\n\n handleAriaContentAttribute();\n handleAriaExpandedAttribute();\n\n if (instance.props.animation) {\n if (getIsDefaultRenderFn()) {\n onTransitionedOut(duration, instance.unmount);\n }\n } else {\n instance.unmount();\n }\n }\n\n function hideWithInteractivity(event) {\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== \"production\") {\n warnWhen(instance.state.isDestroyed, createMemoryLeakWarning('hideWithInteractivity'));\n }\n\n getDocument().addEventListener('mousemove', debouncedOnMouseMove);\n pushIfUnique(mouseMoveListeners, debouncedOnMouseMove);\n debouncedOnMouseMove(event);\n }\n\n function unmount() {\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== \"production\") {\n warnWhen(instance.state.isDestroyed, createMemoryLeakWarning('unmount'));\n }\n\n if (instance.state.isVisible) {\n instance.hide();\n }\n\n if (!instance.state.isMounted) {\n return;\n }\n\n destroyPopperInstance(); // If a popper is not interactive, it will be appended outside the popper\n // tree by default. This seems mainly for interactive tippies, but we should\n // find a workaround if possible\n\n getNestedPopperTree().forEach(function (nestedPopper) {\n nestedPopper._tippy.unmount();\n });\n\n if (popper.parentNode) {\n popper.parentNode.removeChild(popper);\n }\n\n mountedInstances = mountedInstances.filter(function (i) {\n return i !== instance;\n });\n instance.state.isMounted = false;\n invokeHook('onHidden', [instance]);\n }\n\n function destroy() {\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== \"production\") {\n warnWhen(instance.state.isDestroyed, createMemoryLeakWarning('destroy'));\n }\n\n if (instance.state.isDestroyed) {\n return;\n }\n\n instance.clearDelayTimeouts();\n instance.unmount();\n removeListeners();\n delete reference._tippy;\n instance.state.isDestroyed = true;\n invokeHook('onDestroy', [instance]);\n }\n}\n\nfunction tippy(targets, optionalProps) {\n if (optionalProps === void 0) {\n optionalProps = {};\n }\n\n var plugins = defaultProps.plugins.concat(optionalProps.plugins || []);\n /* istanbul ignore else */\n\n if (process.env.NODE_ENV !== \"production\") {\n validateTargets(targets);\n validateProps(optionalProps, plugins);\n }\n\n bindGlobalEventListeners();\n var passedProps = Object.assign({}, optionalProps, {\n plugins: plugins\n });\n var elements = getArrayOfElements(targets);\n /* istanbul ignore else */\n\n if (process.env.NODE_ENV !== \"production\") {\n var isSingleContentElement = isElement(passedProps.content);\n var isMoreThanOneReferenceElement = elements.length > 1;\n warnWhen(isSingleContentElement && isMoreThanOneReferenceElement, ['tippy() was passed an Element as the `content` prop, but more than', 'one tippy instance was created by this invocation. This means the', 'content element will only be appended to the last tippy instance.', '\\n\\n', 'Instead, pass the .innerHTML of the element, or use a function that', 'returns a cloned version of the element instead.', '\\n\\n', '1) content: element.innerHTML\\n', '2) content: () => element.cloneNode(true)'].join(' '));\n }\n\n var instances = elements.reduce(function (acc, reference) {\n var instance = reference && createTippy(reference, passedProps);\n\n if (instance) {\n acc.push(instance);\n }\n\n return acc;\n }, []);\n return isElement(targets) ? instances[0] : instances;\n}\n\ntippy.defaultProps = defaultProps;\ntippy.setDefaultProps = setDefaultProps;\ntippy.currentInput = currentInput;\nvar hideAll = function hideAll(_temp) {\n var _ref = _temp === void 0 ? {} : _temp,\n excludedReferenceOrInstance = _ref.exclude,\n duration = _ref.duration;\n\n mountedInstances.forEach(function (instance) {\n var isExcluded = false;\n\n if (excludedReferenceOrInstance) {\n isExcluded = isReferenceElement(excludedReferenceOrInstance) ? instance.reference === excludedReferenceOrInstance : instance.popper === excludedReferenceOrInstance.popper;\n }\n\n if (!isExcluded) {\n var originalDuration = instance.props.duration;\n instance.setProps({\n duration: duration\n });\n instance.hide();\n\n if (!instance.state.isDestroyed) {\n instance.setProps({\n duration: originalDuration\n });\n }\n }\n });\n};\n\n// every time the popper is destroyed (i.e. a new target), removing the styles\n// and causing transitions to break for singletons when the console is open, but\n// most notably for non-transform styles being used, `gpuAcceleration: false`.\n\nvar applyStylesModifier = Object.assign({}, applyStyles, {\n effect: function effect(_ref) {\n var state = _ref.state;\n var initialStyles = {\n popper: {\n position: state.options.strategy,\n left: '0',\n top: '0',\n margin: '0'\n },\n arrow: {\n position: 'absolute'\n },\n reference: {}\n };\n Object.assign(state.elements.popper.style, initialStyles.popper);\n state.styles = initialStyles;\n\n if (state.elements.arrow) {\n Object.assign(state.elements.arrow.style, initialStyles.arrow);\n } // intentionally return no cleanup function\n // return () => { ... }\n\n }\n});\n\nvar createSingleton = function createSingleton(tippyInstances, optionalProps) {\n var _optionalProps$popper;\n\n if (optionalProps === void 0) {\n optionalProps = {};\n }\n\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== \"production\") {\n errorWhen(!Array.isArray(tippyInstances), ['The first argument passed to createSingleton() must be an array of', 'tippy instances. The passed value was', String(tippyInstances)].join(' '));\n }\n\n var individualInstances = tippyInstances;\n var references = [];\n var triggerTargets = [];\n var currentTarget;\n var overrides = optionalProps.overrides;\n var interceptSetPropsCleanups = [];\n var shownOnCreate = false;\n\n function setTriggerTargets() {\n triggerTargets = individualInstances.map(function (instance) {\n return normalizeToArray(instance.props.triggerTarget || instance.reference);\n }).reduce(function (acc, item) {\n return acc.concat(item);\n }, []);\n }\n\n function setReferences() {\n references = individualInstances.map(function (instance) {\n return instance.reference;\n });\n }\n\n function enableInstances(isEnabled) {\n individualInstances.forEach(function (instance) {\n if (isEnabled) {\n instance.enable();\n } else {\n instance.disable();\n }\n });\n }\n\n function interceptSetProps(singleton) {\n return individualInstances.map(function (instance) {\n var originalSetProps = instance.setProps;\n\n instance.setProps = function (props) {\n originalSetProps(props);\n\n if (instance.reference === currentTarget) {\n singleton.setProps(props);\n }\n };\n\n return function () {\n instance.setProps = originalSetProps;\n };\n });\n } // have to pass singleton, as it maybe undefined on first call\n\n\n function prepareInstance(singleton, target) {\n var index = triggerTargets.indexOf(target); // bail-out\n\n if (target === currentTarget) {\n return;\n }\n\n currentTarget = target;\n var overrideProps = (overrides || []).concat('content').reduce(function (acc, prop) {\n acc[prop] = individualInstances[index].props[prop];\n return acc;\n }, {});\n singleton.setProps(Object.assign({}, overrideProps, {\n getReferenceClientRect: typeof overrideProps.getReferenceClientRect === 'function' ? overrideProps.getReferenceClientRect : function () {\n var _references$index;\n\n return (_references$index = references[index]) == null ? void 0 : _references$index.getBoundingClientRect();\n }\n }));\n }\n\n enableInstances(false);\n setReferences();\n setTriggerTargets();\n var plugin = {\n fn: function fn() {\n return {\n onDestroy: function onDestroy() {\n enableInstances(true);\n },\n onHidden: function onHidden() {\n currentTarget = null;\n },\n onClickOutside: function onClickOutside(instance) {\n if (instance.props.showOnCreate && !shownOnCreate) {\n shownOnCreate = true;\n currentTarget = null;\n }\n },\n onShow: function onShow(instance) {\n if (instance.props.showOnCreate && !shownOnCreate) {\n shownOnCreate = true;\n prepareInstance(instance, references[0]);\n }\n },\n onTrigger: function onTrigger(instance, event) {\n prepareInstance(instance, event.currentTarget);\n }\n };\n }\n };\n var singleton = tippy(div(), Object.assign({}, removeProperties(optionalProps, ['overrides']), {\n plugins: [plugin].concat(optionalProps.plugins || []),\n triggerTarget: triggerTargets,\n popperOptions: Object.assign({}, optionalProps.popperOptions, {\n modifiers: [].concat(((_optionalProps$popper = optionalProps.popperOptions) == null ? void 0 : _optionalProps$popper.modifiers) || [], [applyStylesModifier])\n })\n }));\n var originalShow = singleton.show;\n\n singleton.show = function (target) {\n originalShow(); // first time, showOnCreate or programmatic call with no params\n // default to showing first instance\n\n if (!currentTarget && target == null) {\n return prepareInstance(singleton, references[0]);\n } // triggered from event (do nothing as prepareInstance already called by onTrigger)\n // programmatic call with no params when already visible (do nothing again)\n\n\n if (currentTarget && target == null) {\n return;\n } // target is index of instance\n\n\n if (typeof target === 'number') {\n return references[target] && prepareInstance(singleton, references[target]);\n } // target is a child tippy instance\n\n\n if (individualInstances.indexOf(target) >= 0) {\n var ref = target.reference;\n return prepareInstance(singleton, ref);\n } // target is a ReferenceElement\n\n\n if (references.indexOf(target) >= 0) {\n return prepareInstance(singleton, target);\n }\n };\n\n singleton.showNext = function () {\n var first = references[0];\n\n if (!currentTarget) {\n return singleton.show(0);\n }\n\n var index = references.indexOf(currentTarget);\n singleton.show(references[index + 1] || first);\n };\n\n singleton.showPrevious = function () {\n var last = references[references.length - 1];\n\n if (!currentTarget) {\n return singleton.show(last);\n }\n\n var index = references.indexOf(currentTarget);\n var target = references[index - 1] || last;\n singleton.show(target);\n };\n\n var originalSetProps = singleton.setProps;\n\n singleton.setProps = function (props) {\n overrides = props.overrides || overrides;\n originalSetProps(props);\n };\n\n singleton.setInstances = function (nextInstances) {\n enableInstances(true);\n interceptSetPropsCleanups.forEach(function (fn) {\n return fn();\n });\n individualInstances = nextInstances;\n enableInstances(false);\n setReferences();\n setTriggerTargets();\n interceptSetPropsCleanups = interceptSetProps(singleton);\n singleton.setProps({\n triggerTarget: triggerTargets\n });\n };\n\n interceptSetPropsCleanups = interceptSetProps(singleton);\n return singleton;\n};\n\nvar BUBBLING_EVENTS_MAP = {\n mouseover: 'mouseenter',\n focusin: 'focus',\n click: 'click'\n};\n/**\n * Creates a delegate instance that controls the creation of tippy instances\n * for child elements (`target` CSS selector).\n */\n\nfunction delegate(targets, props) {\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== \"production\") {\n errorWhen(!(props && props.target), ['You must specity a `target` prop indicating a CSS selector string matching', 'the target elements that should receive a tippy.'].join(' '));\n }\n\n var listeners = [];\n var childTippyInstances = [];\n var disabled = false;\n var target = props.target;\n var nativeProps = removeProperties(props, ['target']);\n var parentProps = Object.assign({}, nativeProps, {\n trigger: 'manual',\n touch: false\n });\n var childProps = Object.assign({\n touch: defaultProps.touch\n }, nativeProps, {\n showOnCreate: true\n });\n var returnValue = tippy(targets, parentProps);\n var normalizedReturnValue = normalizeToArray(returnValue);\n\n function onTrigger(event) {\n if (!event.target || disabled) {\n return;\n }\n\n var targetNode = event.target.closest(target);\n\n if (!targetNode) {\n return;\n } // Get relevant trigger with fallbacks:\n // 1. Check `data-tippy-trigger` attribute on target node\n // 2. Fallback to `trigger` passed to `delegate()`\n // 3. Fallback to `defaultProps.trigger`\n\n\n var trigger = targetNode.getAttribute('data-tippy-trigger') || props.trigger || defaultProps.trigger; // @ts-ignore\n\n if (targetNode._tippy) {\n return;\n }\n\n if (event.type === 'touchstart' && typeof childProps.touch === 'boolean') {\n return;\n }\n\n if (event.type !== 'touchstart' && trigger.indexOf(BUBBLING_EVENTS_MAP[event.type]) < 0) {\n return;\n }\n\n var instance = tippy(targetNode, childProps);\n\n if (instance) {\n childTippyInstances = childTippyInstances.concat(instance);\n }\n }\n\n function on(node, eventType, handler, options) {\n if (options === void 0) {\n options = false;\n }\n\n node.addEventListener(eventType, handler, options);\n listeners.push({\n node: node,\n eventType: eventType,\n handler: handler,\n options: options\n });\n }\n\n function addEventListeners(instance) {\n var reference = instance.reference;\n on(reference, 'touchstart', onTrigger, TOUCH_OPTIONS);\n on(reference, 'mouseover', onTrigger);\n on(reference, 'focusin', onTrigger);\n on(reference, 'click', onTrigger);\n }\n\n function removeEventListeners() {\n listeners.forEach(function (_ref) {\n var node = _ref.node,\n eventType = _ref.eventType,\n handler = _ref.handler,\n options = _ref.options;\n node.removeEventListener(eventType, handler, options);\n });\n listeners = [];\n }\n\n function applyMutations(instance) {\n var originalDestroy = instance.destroy;\n var originalEnable = instance.enable;\n var originalDisable = instance.disable;\n\n instance.destroy = function (shouldDestroyChildInstances) {\n if (shouldDestroyChildInstances === void 0) {\n shouldDestroyChildInstances = true;\n }\n\n if (shouldDestroyChildInstances) {\n childTippyInstances.forEach(function (instance) {\n instance.destroy();\n });\n }\n\n childTippyInstances = [];\n removeEventListeners();\n originalDestroy();\n };\n\n instance.enable = function () {\n originalEnable();\n childTippyInstances.forEach(function (instance) {\n return instance.enable();\n });\n disabled = false;\n };\n\n instance.disable = function () {\n originalDisable();\n childTippyInstances.forEach(function (instance) {\n return instance.disable();\n });\n disabled = true;\n };\n\n addEventListeners(instance);\n }\n\n normalizedReturnValue.forEach(applyMutations);\n return returnValue;\n}\n\nvar animateFill = {\n name: 'animateFill',\n defaultValue: false,\n fn: function fn(instance) {\n var _instance$props$rende;\n\n // @ts-ignore\n if (!((_instance$props$rende = instance.props.render) != null && _instance$props$rende.$$tippy)) {\n if (process.env.NODE_ENV !== \"production\") {\n errorWhen(instance.props.animateFill, 'The `animateFill` plugin requires the default render function.');\n }\n\n return {};\n }\n\n var _getChildren = getChildren(instance.popper),\n box = _getChildren.box,\n content = _getChildren.content;\n\n var backdrop = instance.props.animateFill ? createBackdropElement() : null;\n return {\n onCreate: function onCreate() {\n if (backdrop) {\n box.insertBefore(backdrop, box.firstElementChild);\n box.setAttribute('data-animatefill', '');\n box.style.overflow = 'hidden';\n instance.setProps({\n arrow: false,\n animation: 'shift-away'\n });\n }\n },\n onMount: function onMount() {\n if (backdrop) {\n var transitionDuration = box.style.transitionDuration;\n var duration = Number(transitionDuration.replace('ms', '')); // The content should fade in after the backdrop has mostly filled the\n // tooltip element. `clip-path` is the other alternative but is not\n // well-supported and is buggy on some devices.\n\n content.style.transitionDelay = Math.round(duration / 10) + \"ms\";\n backdrop.style.transitionDuration = transitionDuration;\n setVisibilityState([backdrop], 'visible');\n }\n },\n onShow: function onShow() {\n if (backdrop) {\n backdrop.style.transitionDuration = '0ms';\n }\n },\n onHide: function onHide() {\n if (backdrop) {\n setVisibilityState([backdrop], 'hidden');\n }\n }\n };\n }\n};\n\nfunction createBackdropElement() {\n var backdrop = div();\n backdrop.className = BACKDROP_CLASS;\n setVisibilityState([backdrop], 'hidden');\n return backdrop;\n}\n\nvar mouseCoords = {\n clientX: 0,\n clientY: 0\n};\nvar activeInstances = [];\n\nfunction storeMouseCoords(_ref) {\n var clientX = _ref.clientX,\n clientY = _ref.clientY;\n mouseCoords = {\n clientX: clientX,\n clientY: clientY\n };\n}\n\nfunction addMouseCoordsListener(doc) {\n doc.addEventListener('mousemove', storeMouseCoords);\n}\n\nfunction removeMouseCoordsListener(doc) {\n doc.removeEventListener('mousemove', storeMouseCoords);\n}\n\nvar followCursor = {\n name: 'followCursor',\n defaultValue: false,\n fn: function fn(instance) {\n var reference = instance.reference;\n var doc = getOwnerDocument(instance.props.triggerTarget || reference);\n var isInternalUpdate = false;\n var wasFocusEvent = false;\n var isUnmounted = true;\n var prevProps = instance.props;\n\n function getIsInitialBehavior() {\n return instance.props.followCursor === 'initial' && instance.state.isVisible;\n }\n\n function addListener() {\n doc.addEventListener('mousemove', onMouseMove);\n }\n\n function removeListener() {\n doc.removeEventListener('mousemove', onMouseMove);\n }\n\n function unsetGetReferenceClientRect() {\n isInternalUpdate = true;\n instance.setProps({\n getReferenceClientRect: null\n });\n isInternalUpdate = false;\n }\n\n function onMouseMove(event) {\n // If the instance is interactive, avoid updating the position unless it's\n // over the reference element\n var isCursorOverReference = event.target ? reference.contains(event.target) : true;\n var followCursor = instance.props.followCursor;\n var clientX = event.clientX,\n clientY = event.clientY;\n var rect = reference.getBoundingClientRect();\n var relativeX = clientX - rect.left;\n var relativeY = clientY - rect.top;\n\n if (isCursorOverReference || !instance.props.interactive) {\n instance.setProps({\n // @ts-ignore - unneeded DOMRect properties\n getReferenceClientRect: function getReferenceClientRect() {\n var rect = reference.getBoundingClientRect();\n var x = clientX;\n var y = clientY;\n\n if (followCursor === 'initial') {\n x = rect.left + relativeX;\n y = rect.top + relativeY;\n }\n\n var top = followCursor === 'horizontal' ? rect.top : y;\n var right = followCursor === 'vertical' ? rect.right : x;\n var bottom = followCursor === 'horizontal' ? rect.bottom : y;\n var left = followCursor === 'vertical' ? rect.left : x;\n return {\n width: right - left,\n height: bottom - top,\n top: top,\n right: right,\n bottom: bottom,\n left: left\n };\n }\n });\n }\n }\n\n function create() {\n if (instance.props.followCursor) {\n activeInstances.push({\n instance: instance,\n doc: doc\n });\n addMouseCoordsListener(doc);\n }\n }\n\n function destroy() {\n activeInstances = activeInstances.filter(function (data) {\n return data.instance !== instance;\n });\n\n if (activeInstances.filter(function (data) {\n return data.doc === doc;\n }).length === 0) {\n removeMouseCoordsListener(doc);\n }\n }\n\n return {\n onCreate: create,\n onDestroy: destroy,\n onBeforeUpdate: function onBeforeUpdate() {\n prevProps = instance.props;\n },\n onAfterUpdate: function onAfterUpdate(_, _ref2) {\n var followCursor = _ref2.followCursor;\n\n if (isInternalUpdate) {\n return;\n }\n\n if (followCursor !== undefined && prevProps.followCursor !== followCursor) {\n destroy();\n\n if (followCursor) {\n create();\n\n if (instance.state.isMounted && !wasFocusEvent && !getIsInitialBehavior()) {\n addListener();\n }\n } else {\n removeListener();\n unsetGetReferenceClientRect();\n }\n }\n },\n onMount: function onMount() {\n if (instance.props.followCursor && !wasFocusEvent) {\n if (isUnmounted) {\n onMouseMove(mouseCoords);\n isUnmounted = false;\n }\n\n if (!getIsInitialBehavior()) {\n addListener();\n }\n }\n },\n onTrigger: function onTrigger(_, event) {\n if (isMouseEvent(event)) {\n mouseCoords = {\n clientX: event.clientX,\n clientY: event.clientY\n };\n }\n\n wasFocusEvent = event.type === 'focus';\n },\n onHidden: function onHidden() {\n if (instance.props.followCursor) {\n unsetGetReferenceClientRect();\n removeListener();\n isUnmounted = true;\n }\n }\n };\n }\n};\n\nfunction getProps(props, modifier) {\n var _props$popperOptions;\n\n return {\n popperOptions: Object.assign({}, props.popperOptions, {\n modifiers: [].concat((((_props$popperOptions = props.popperOptions) == null ? void 0 : _props$popperOptions.modifiers) || []).filter(function (_ref) {\n var name = _ref.name;\n return name !== modifier.name;\n }), [modifier])\n })\n };\n}\n\nvar inlinePositioning = {\n name: 'inlinePositioning',\n defaultValue: false,\n fn: function fn(instance) {\n var reference = instance.reference;\n\n function isEnabled() {\n return !!instance.props.inlinePositioning;\n }\n\n var placement;\n var cursorRectIndex = -1;\n var isInternalUpdate = false;\n var triedPlacements = [];\n var modifier = {\n name: 'tippyInlinePositioning',\n enabled: true,\n phase: 'afterWrite',\n fn: function fn(_ref2) {\n var state = _ref2.state;\n\n if (isEnabled()) {\n if (triedPlacements.indexOf(state.placement) !== -1) {\n triedPlacements = [];\n }\n\n if (placement !== state.placement && triedPlacements.indexOf(state.placement) === -1) {\n triedPlacements.push(state.placement);\n instance.setProps({\n // @ts-ignore - unneeded DOMRect properties\n getReferenceClientRect: function getReferenceClientRect() {\n return _getReferenceClientRect(state.placement);\n }\n });\n }\n\n placement = state.placement;\n }\n }\n };\n\n function _getReferenceClientRect(placement) {\n return getInlineBoundingClientRect(getBasePlacement(placement), reference.getBoundingClientRect(), arrayFrom(reference.getClientRects()), cursorRectIndex);\n }\n\n function setInternalProps(partialProps) {\n isInternalUpdate = true;\n instance.setProps(partialProps);\n isInternalUpdate = false;\n }\n\n function addModifier() {\n if (!isInternalUpdate) {\n setInternalProps(getProps(instance.props, modifier));\n }\n }\n\n return {\n onCreate: addModifier,\n onAfterUpdate: addModifier,\n onTrigger: function onTrigger(_, event) {\n if (isMouseEvent(event)) {\n var rects = arrayFrom(instance.reference.getClientRects());\n var cursorRect = rects.find(function (rect) {\n return rect.left - 2 <= event.clientX && rect.right + 2 >= event.clientX && rect.top - 2 <= event.clientY && rect.bottom + 2 >= event.clientY;\n });\n var index = rects.indexOf(cursorRect);\n cursorRectIndex = index > -1 ? index : cursorRectIndex;\n }\n },\n onHidden: function onHidden() {\n cursorRectIndex = -1;\n }\n };\n }\n};\nfunction getInlineBoundingClientRect(currentBasePlacement, boundingRect, clientRects, cursorRectIndex) {\n // Not an inline element, or placement is not yet known\n if (clientRects.length < 2 || currentBasePlacement === null) {\n return boundingRect;\n } // There are two rects and they are disjoined\n\n\n if (clientRects.length === 2 && cursorRectIndex >= 0 && clientRects[0].left > clientRects[1].right) {\n return clientRects[cursorRectIndex] || boundingRect;\n }\n\n switch (currentBasePlacement) {\n case 'top':\n case 'bottom':\n {\n var firstRect = clientRects[0];\n var lastRect = clientRects[clientRects.length - 1];\n var isTop = currentBasePlacement === 'top';\n var top = firstRect.top;\n var bottom = lastRect.bottom;\n var left = isTop ? firstRect.left : lastRect.left;\n var right = isTop ? firstRect.right : lastRect.right;\n var width = right - left;\n var height = bottom - top;\n return {\n top: top,\n bottom: bottom,\n left: left,\n right: right,\n width: width,\n height: height\n };\n }\n\n case 'left':\n case 'right':\n {\n var minLeft = Math.min.apply(Math, clientRects.map(function (rects) {\n return rects.left;\n }));\n var maxRight = Math.max.apply(Math, clientRects.map(function (rects) {\n return rects.right;\n }));\n var measureRects = clientRects.filter(function (rect) {\n return currentBasePlacement === 'left' ? rect.left === minLeft : rect.right === maxRight;\n });\n var _top = measureRects[0].top;\n var _bottom = measureRects[measureRects.length - 1].bottom;\n var _left = minLeft;\n var _right = maxRight;\n\n var _width = _right - _left;\n\n var _height = _bottom - _top;\n\n return {\n top: _top,\n bottom: _bottom,\n left: _left,\n right: _right,\n width: _width,\n height: _height\n };\n }\n\n default:\n {\n return boundingRect;\n }\n }\n}\n\nvar sticky = {\n name: 'sticky',\n defaultValue: false,\n fn: function fn(instance) {\n var reference = instance.reference,\n popper = instance.popper;\n\n function getReference() {\n return instance.popperInstance ? instance.popperInstance.state.elements.reference : reference;\n }\n\n function shouldCheck(value) {\n return instance.props.sticky === true || instance.props.sticky === value;\n }\n\n var prevRefRect = null;\n var prevPopRect = null;\n\n function updatePosition() {\n var currentRefRect = shouldCheck('reference') ? getReference().getBoundingClientRect() : null;\n var currentPopRect = shouldCheck('popper') ? popper.getBoundingClientRect() : null;\n\n if (currentRefRect && areRectsDifferent(prevRefRect, currentRefRect) || currentPopRect && areRectsDifferent(prevPopRect, currentPopRect)) {\n if (instance.popperInstance) {\n instance.popperInstance.update();\n }\n }\n\n prevRefRect = currentRefRect;\n prevPopRect = currentPopRect;\n\n if (instance.state.isMounted) {\n requestAnimationFrame(updatePosition);\n }\n }\n\n return {\n onMount: function onMount() {\n if (instance.props.sticky) {\n updatePosition();\n }\n }\n };\n }\n};\n\nfunction areRectsDifferent(rectA, rectB) {\n if (rectA && rectB) {\n return rectA.top !== rectB.top || rectA.right !== rectB.right || rectA.bottom !== rectB.bottom || rectA.left !== rectB.left;\n }\n\n return true;\n}\n\ntippy.setDefaultProps({\n render: render\n});\n\nexport default tippy;\nexport { animateFill, createSingleton, delegate, followCursor, hideAll, inlinePositioning, ROUND_ARROW as roundArrow, sticky };\n//# sourceMappingURL=tippy.esm.js.map\n","import { useCallback, useEffect, useMemo, useState } from 'react';\r\nimport tippy from 'tippy.js';\r\nimport { useCallbackRef } from '../utils';\r\nimport { closeOnEscPlugin, matchWidthModifier } from './consts';\r\n/**\r\n * Controls the logic of instantiating and managing a tippy instance.\r\n * Takes multiple configuration props that control closing, placement or behavior.\r\n * Exposes functions used for ref callbacks on consuming components, programatic open/close methods and properties.\r\n */\r\nexport default function usePopover(props = {}) {\r\n const { closeOnBlur = true, closeOnEsc = true, defaultIsOpen = false, flip = true, isOpen: isOpenProp, matchWidth, offset, onClose: onCloseProp, onOpen: onOpenProp, options, placement = 'bottom-start', trigger = 'click' } = props;\r\n const [isOpen, setIsOpen] = useState(isOpenProp ?? defaultIsOpen);\r\n const [instance, setInstance] = useState(null);\r\n const [reference, setReference] = useState(null);\r\n const [popper, setPopper] = useState(null);\r\n const close = useCallback(() => instance?.hide(), [instance]);\r\n const onClose = useCallbackRef(onCloseProp);\r\n const onOpen = useCallbackRef(onOpenProp);\r\n const open = useCallback(() => instance?.show(), [instance]);\r\n const isControlled = isOpenProp !== undefined;\r\n const tippyOptions = useMemo(() => {\r\n const { aria, offset: optionsOffset, onHidden, onHide, onShow, plugins = [], popperOptions = {}, ...otherOptions } = options ?? {};\r\n return {\r\n aria,\r\n arrow: false,\r\n duration: [200, 150],\r\n hideOnClick: !isControlled ? closeOnBlur : false,\r\n interactive: true,\r\n maxWidth: 'none',\r\n offset: optionsOffset ?? offset ?? [0, 4],\r\n onHidden: instance => {\r\n setIsOpen(false);\r\n onHidden?.(instance);\r\n },\r\n onHide: instance => {\r\n onClose(instance);\r\n onHide?.(instance);\r\n },\r\n onShow: instance => {\r\n setIsOpen(true);\r\n onOpen(instance);\r\n onShow?.(instance);\r\n },\r\n placement,\r\n plugins: [...(!isControlled && closeOnEsc ? [closeOnEscPlugin] : []), ...plugins],\r\n popperOptions: {\r\n ...popperOptions,\r\n modifiers: [\r\n {\r\n name: 'flip',\r\n enabled: flip\r\n },\r\n { ...matchWidthModifier, enabled: !!matchWidth },\r\n ...(popperOptions.modifiers ?? [])\r\n ]\r\n },\r\n showOnCreate: isOpenProp ?? defaultIsOpen,\r\n trigger: !isControlled ? trigger : 'manual',\r\n ...otherOptions\r\n };\r\n }, [closeOnBlur, closeOnEsc, offset, options, placement, trigger]);\r\n // Create a new Tippy instance\r\n useEffect(() => {\r\n if (popper !== null && reference !== null) {\r\n // Destroy old instance to ensure new options work\r\n instance?.destroy();\r\n const newInstance = tippy(reference, {\r\n ...tippyOptions,\r\n content: popper\r\n });\r\n setInstance(newInstance);\r\n }\r\n }, [popper, tippyOptions, trigger]);\r\n // Handle showing/hiding popup in controlled mode\r\n useEffect(() => {\r\n if (isControlled) {\r\n if (isOpenProp)\r\n instance?.show();\r\n else\r\n instance?.hide();\r\n }\r\n }, [isOpenProp]);\r\n return {\r\n close,\r\n instance,\r\n isOpen,\r\n open,\r\n popper,\r\n reference,\r\n setPopper,\r\n setReference\r\n };\r\n}\r\n","import React from 'react';\r\nimport { filterUndefined, runIfFn } from '../utils';\r\nimport { PopoverProvider } from './context';\r\nimport PopoverContent from './popoverContent';\r\nimport PopoverTrigger from './popoverTrigger';\r\nimport usePopover from './usePopover';\r\n/**\r\n * Uses 'usePopover' hook to expose relevant data to its children parts.\r\n * By default, renders provided content only when popover is opened (lazy).\r\n */\r\nexport default function Popover(props) {\r\n const { children, isLazy = true, options, ...rest } = props;\r\n const popoverProps = usePopover({ options, ...rest });\r\n const { close, isOpen, open } = popoverProps;\r\n const context = filterUndefined({ isLazy, ...popoverProps });\r\n return React.createElement(PopoverProvider, { value: context }, runIfFn(children, { close, isOpen, open }));\r\n}\r\nPopover.Content = PopoverContent;\r\nPopover.Trigger = PopoverTrigger;\r\nPopover.displayName = 'Popover';\r\n","import React from 'react';\r\nimport { omitThemingProps, styled, useStyleConfig, vui } from '../core';\r\nimport { cs, filterUndefined } from '../utils';\r\nexport const PBase = styled.pBox `\n transition-duration: fast;\n`;\r\n/** Displays a paragraph of text. */\r\nexport const P = vui((props, ref) => {\r\n const { align, casing, children, className, decoration, text, weight, ...rest } = omitThemingProps(props);\r\n const styles = useStyleConfig('P', props);\r\n const aliasedProps = filterUndefined({\r\n fontWeight: weight,\r\n textAlign: align,\r\n textDecoration: decoration,\r\n textTransform: casing\r\n });\r\n return (React.createElement(PBase, { className: cs('vui-p', className), ref: ref, ...styles, ...aliasedProps, ...rest }, children ?? text));\r\n});\r\nP.displayName = 'P';\r\nexport default P;\r\n","import { createContext } from '../utils';\r\nconst [ModalProvider, useModalContext] = createContext({ isOptional: true });\r\nexport { ModalProvider, useModalContext };\r\n","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}","export default function _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n return _extends.apply(this, arguments);\n}","/**\n * defines a focus group\n */\nexport var FOCUS_GROUP = 'data-focus-lock';\n/**\n * disables element discovery inside a group marked by key\n */\nexport var FOCUS_DISABLED = 'data-focus-lock-disabled';\n/**\n * allows uncontrolled focus within the marked area, effectively disabling focus lock for it's content\n */\nexport var FOCUS_ALLOW = 'data-no-focus-lock';\n/**\n * instructs autofocus engine to pick default autofocus inside a given node\n * can be set on the element or container\n */\nexport var FOCUS_AUTO = 'data-autofocus-inside';\n/**\n * instructs autofocus to ignore elements within a given node\n * can be set on the element or container\n */\nexport var FOCUS_NO_AUTOFOCUS = 'data-no-autofocus';\n","/**\n * Assigns a value for a given ref, no matter of the ref format\n * @param {RefObject} ref - a callback function or ref object\n * @param value - a new value\n *\n * @see https://github.com/theKashey/use-callback-ref#assignref\n * @example\n * const refObject = useRef();\n * const refFn = (ref) => {....}\n *\n * assignRef(refObject, \"refValue\");\n * assignRef(refFn, \"refValue\");\n */\nexport function assignRef(ref, value) {\n if (typeof ref === 'function') {\n ref(value);\n }\n else if (ref) {\n ref.current = value;\n }\n return ref;\n}\n","import { useState } from 'react';\n/**\n * creates a MutableRef with ref change callback\n * @param initialValue - initial ref value\n * @param {Function} callback - a callback to run when value changes\n *\n * @example\n * const ref = useCallbackRef(0, (newValue, oldValue) => console.log(oldValue, '->', newValue);\n * ref.current = 1;\n * // prints 0 -> 1\n *\n * @see https://reactjs.org/docs/hooks-reference.html#useref\n * @see https://github.com/theKashey/use-callback-ref#usecallbackref---to-replace-reactuseref\n * @returns {MutableRefObject}\n */\nexport function useCallbackRef(initialValue, callback) {\n var ref = useState(function () { return ({\n // value\n value: initialValue,\n // last callback\n callback: callback,\n // \"memoized\" public interface\n facade: {\n get current() {\n return ref.value;\n },\n set current(value) {\n var last = ref.value;\n if (last !== value) {\n ref.value = value;\n ref.callback(value, last);\n }\n },\n },\n }); })[0];\n // update callback\n ref.callback = callback;\n return ref.facade;\n}\n","import { assignRef } from './assignRef';\nimport { useCallbackRef } from './useRef';\n/**\n * Merges two or more refs together providing a single interface to set their value\n * @param {RefObject|Ref} refs\n * @returns {MutableRefObject} - a new ref, which translates all changes to {refs}\n *\n * @see {@link mergeRefs} a version without buit-in memoization\n * @see https://github.com/theKashey/use-callback-ref#usemergerefs\n * @example\n * const Component = React.forwardRef((props, ref) => {\n * const ownRef = useRef();\n * const domRef = useMergeRefs([ref, ownRef]); // 👈 merge together\n * return <div ref={domRef}>...</div>\n * }\n */\nexport function useMergeRefs(refs, defaultValue) {\n return useCallbackRef(defaultValue || null, function (newValue) { return refs.forEach(function (ref) { return assignRef(ref, newValue); }); });\n}\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nexport var hiddenGuard = {\n width: '1px',\n height: '0px',\n padding: 0,\n overflow: 'hidden',\n position: 'fixed',\n top: '1px',\n left: '1px'\n};\n\nvar InFocusGuard = function InFocusGuard(_ref) {\n var children = _ref.children;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"div\", {\n key: \"guard-first\",\n \"data-focus-guard\": true,\n \"data-focus-auto-guard\": true,\n style: hiddenGuard\n }), children, children && /*#__PURE__*/React.createElement(\"div\", {\n key: \"guard-last\",\n \"data-focus-guard\": true,\n \"data-focus-auto-guard\": true,\n style: hiddenGuard\n }));\n};\n\nInFocusGuard.propTypes = process.env.NODE_ENV !== \"production\" ? {\n children: PropTypes.node\n} : {};\nInFocusGuard.defaultProps = {\n children: null\n};\nexport default InFocusGuard;","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n","import { __assign } from \"tslib\";\nfunction ItoI(a) {\n return a;\n}\nfunction innerCreateMedium(defaults, middleware) {\n if (middleware === void 0) { middleware = ItoI; }\n var buffer = [];\n var assigned = false;\n var medium = {\n read: function () {\n if (assigned) {\n throw new Error('Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.');\n }\n if (buffer.length) {\n return buffer[buffer.length - 1];\n }\n return defaults;\n },\n useMedium: function (data) {\n var item = middleware(data, assigned);\n buffer.push(item);\n return function () {\n buffer = buffer.filter(function (x) { return x !== item; });\n };\n },\n assignSyncMedium: function (cb) {\n assigned = true;\n while (buffer.length) {\n var cbs = buffer;\n buffer = [];\n cbs.forEach(cb);\n }\n buffer = {\n push: function (x) { return cb(x); },\n filter: function () { return buffer; },\n };\n },\n assignMedium: function (cb) {\n assigned = true;\n var pendingQueue = [];\n if (buffer.length) {\n var cbs = buffer;\n buffer = [];\n cbs.forEach(cb);\n pendingQueue = buffer;\n }\n var executeQueue = function () {\n var cbs = pendingQueue;\n pendingQueue = [];\n cbs.forEach(cb);\n };\n var cycle = function () { return Promise.resolve().then(executeQueue); };\n cycle();\n buffer = {\n push: function (x) {\n pendingQueue.push(x);\n cycle();\n },\n filter: function (filter) {\n pendingQueue = pendingQueue.filter(filter);\n return buffer;\n },\n };\n },\n };\n return medium;\n}\nexport function createMedium(defaults, middleware) {\n if (middleware === void 0) { middleware = ItoI; }\n return innerCreateMedium(defaults, middleware);\n}\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function createSidecarMedium(options) {\n if (options === void 0) { options = {}; }\n var medium = innerCreateMedium(null);\n medium.options = __assign({ async: true, ssr: false }, options);\n return medium;\n}\n","import { createMedium, createSidecarMedium } from 'use-sidecar';\nexport var mediumFocus = createMedium({}, function (_ref) {\n var target = _ref.target,\n currentTarget = _ref.currentTarget;\n return {\n target: target,\n currentTarget: currentTarget\n };\n});\nexport var mediumBlur = createMedium();\nexport var mediumEffect = createMedium();\nexport var mediumSidecar = createSidecarMedium({\n async: true // focus-lock sidecar is not required on the server\n // however, it might be required for JSDOM tests\n // ssr: true,\n\n});","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport { node, bool, string, any, arrayOf, oneOfType, object, func } from 'prop-types';\nimport * as constants from 'focus-lock/constants';\nimport { useMergeRefs } from 'use-callback-ref';\nimport { useEffect } from 'react';\nimport { hiddenGuard } from './FocusGuard';\nimport { mediumFocus, mediumBlur, mediumSidecar } from './medium';\nvar emptyArray = [];\nvar FocusLock = /*#__PURE__*/React.forwardRef(function FocusLockUI(props, parentRef) {\n var _extends2;\n\n var _React$useState = React.useState(),\n realObserved = _React$useState[0],\n setObserved = _React$useState[1];\n\n var observed = React.useRef();\n var isActive = React.useRef(false);\n var originalFocusedElement = React.useRef(null);\n var children = props.children,\n disabled = props.disabled,\n noFocusGuards = props.noFocusGuards,\n persistentFocus = props.persistentFocus,\n crossFrame = props.crossFrame,\n autoFocus = props.autoFocus,\n allowTextSelection = props.allowTextSelection,\n group = props.group,\n className = props.className,\n whiteList = props.whiteList,\n hasPositiveIndices = props.hasPositiveIndices,\n _props$shards = props.shards,\n shards = _props$shards === void 0 ? emptyArray : _props$shards,\n _props$as = props.as,\n Container = _props$as === void 0 ? 'div' : _props$as,\n _props$lockProps = props.lockProps,\n containerProps = _props$lockProps === void 0 ? {} : _props$lockProps,\n SideCar = props.sideCar,\n shouldReturnFocus = props.returnFocus,\n focusOptions = props.focusOptions,\n onActivationCallback = props.onActivation,\n onDeactivationCallback = props.onDeactivation;\n\n var _React$useState2 = React.useState({}),\n id = _React$useState2[0]; // SIDE EFFECT CALLBACKS\n\n\n var onActivation = React.useCallback(function () {\n originalFocusedElement.current = originalFocusedElement.current || document && document.activeElement;\n\n if (observed.current && onActivationCallback) {\n onActivationCallback(observed.current);\n }\n\n isActive.current = true;\n }, [onActivationCallback]);\n var onDeactivation = React.useCallback(function () {\n isActive.current = false;\n\n if (onDeactivationCallback) {\n onDeactivationCallback(observed.current);\n }\n }, [onDeactivationCallback]);\n useEffect(function () {\n if (!disabled) {\n // cleanup return focus on trap deactivation\n // sideEffect/returnFocus should happen by this time\n originalFocusedElement.current = null;\n }\n }, []);\n var returnFocus = React.useCallback(function (allowDefer) {\n var returnFocusTo = originalFocusedElement.current;\n\n if (returnFocusTo && returnFocusTo.focus) {\n var howToReturnFocus = typeof shouldReturnFocus === 'function' ? shouldReturnFocus(returnFocusTo) : shouldReturnFocus;\n\n if (howToReturnFocus) {\n var returnFocusOptions = typeof howToReturnFocus === 'object' ? howToReturnFocus : undefined;\n originalFocusedElement.current = null;\n\n if (allowDefer) {\n // React might return focus after update\n // it's safer to defer the action\n Promise.resolve().then(function () {\n return returnFocusTo.focus(returnFocusOptions);\n });\n } else {\n returnFocusTo.focus(returnFocusOptions);\n }\n }\n }\n }, [shouldReturnFocus]); // MEDIUM CALLBACKS\n\n var onFocus = React.useCallback(function (event) {\n if (isActive.current) {\n mediumFocus.useMedium(event);\n }\n }, []);\n var onBlur = mediumBlur.useMedium; // REF PROPAGATION\n // not using real refs due to race conditions\n\n var setObserveNode = React.useCallback(function (newObserved) {\n if (observed.current !== newObserved) {\n observed.current = newObserved;\n setObserved(newObserved);\n }\n }, []);\n\n if (process.env.NODE_ENV !== 'production') {\n if (typeof allowTextSelection !== 'undefined') {\n // eslint-disable-next-line no-console\n console.warn('React-Focus-Lock: allowTextSelection is deprecated and enabled by default');\n }\n\n React.useEffect(function () {\n // report incorrect integration - https://github.com/theKashey/react-focus-lock/issues/123\n if (!observed.current && typeof Container !== 'string') {\n // eslint-disable-next-line no-console\n console.error('FocusLock: could not obtain ref to internal node');\n }\n }, []);\n }\n\n var lockProps = _extends((_extends2 = {}, _extends2[constants.FOCUS_DISABLED] = disabled && 'disabled', _extends2[constants.FOCUS_GROUP] = group, _extends2), containerProps);\n\n var hasLeadingGuards = noFocusGuards !== true;\n var hasTailingGuards = hasLeadingGuards && noFocusGuards !== 'tail';\n var mergedRef = useMergeRefs([parentRef, setObserveNode]);\n return /*#__PURE__*/React.createElement(React.Fragment, null, hasLeadingGuards && [\n /*#__PURE__*/\n // nearest focus guard\n React.createElement(\"div\", {\n key: \"guard-first\",\n \"data-focus-guard\": true,\n tabIndex: disabled ? -1 : 0,\n style: hiddenGuard\n }), // first tabbed element guard\n hasPositiveIndices ? /*#__PURE__*/React.createElement(\"div\", {\n key: \"guard-nearest\",\n \"data-focus-guard\": true,\n tabIndex: disabled ? -1 : 1,\n style: hiddenGuard\n }) : null], !disabled && /*#__PURE__*/React.createElement(SideCar, {\n id: id,\n sideCar: mediumSidecar,\n observed: realObserved,\n disabled: disabled,\n persistentFocus: persistentFocus,\n crossFrame: crossFrame,\n autoFocus: autoFocus,\n whiteList: whiteList,\n shards: shards,\n onActivation: onActivation,\n onDeactivation: onDeactivation,\n returnFocus: returnFocus,\n focusOptions: focusOptions\n }), /*#__PURE__*/React.createElement(Container, _extends({\n ref: mergedRef\n }, lockProps, {\n className: className,\n onBlur: onBlur,\n onFocus: onFocus\n }), children), hasTailingGuards && /*#__PURE__*/React.createElement(\"div\", {\n \"data-focus-guard\": true,\n tabIndex: disabled ? -1 : 0,\n style: hiddenGuard\n }));\n});\nFocusLock.propTypes = process.env.NODE_ENV !== \"production\" ? {\n children: node,\n disabled: bool,\n returnFocus: oneOfType([bool, object, func]),\n focusOptions: object,\n noFocusGuards: bool,\n hasPositiveIndices: bool,\n allowTextSelection: bool,\n autoFocus: bool,\n persistentFocus: bool,\n crossFrame: bool,\n group: string,\n className: string,\n whiteList: func,\n shards: arrayOf(any),\n as: oneOfType([string, func, object]),\n lockProps: object,\n onActivation: func,\n onDeactivation: func,\n sideCar: any.isRequired\n} : {};\nFocusLock.defaultProps = {\n children: undefined,\n disabled: false,\n returnFocus: false,\n focusOptions: undefined,\n noFocusGuards: false,\n autoFocus: true,\n persistentFocus: false,\n crossFrame: true,\n hasPositiveIndices: undefined,\n allowTextSelection: undefined,\n group: undefined,\n className: undefined,\n whiteList: undefined,\n shards: undefined,\n as: 'div',\n lockProps: {},\n onActivation: undefined,\n onDeactivation: undefined\n};\nexport default FocusLock;","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n setPrototypeOf(subClass, superClass);\n}","export default function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}","import _inheritsLoose from '@babel/runtime/helpers/esm/inheritsLoose';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport React, { PureComponent } from 'react';\n\nfunction withSideEffect(reducePropsToState, handleStateChangeOnClient) {\n if (process.env.NODE_ENV !== \"production\") {\n if (typeof reducePropsToState !== 'function') {\n throw new Error('Expected reducePropsToState to be a function.');\n }\n\n if (typeof handleStateChangeOnClient !== 'function') {\n throw new Error('Expected handleStateChangeOnClient to be a function.');\n }\n }\n\n function getDisplayName(WrappedComponent) {\n return WrappedComponent.displayName || WrappedComponent.name || 'Component';\n }\n\n return function wrap(WrappedComponent) {\n if (process.env.NODE_ENV !== \"production\") {\n if (typeof WrappedComponent !== 'function') {\n throw new Error('Expected WrappedComponent to be a React component.');\n }\n }\n\n var mountedInstances = [];\n var state;\n\n function emitChange() {\n state = reducePropsToState(mountedInstances.map(function (instance) {\n return instance.props;\n }));\n handleStateChangeOnClient(state);\n }\n\n var SideEffect = /*#__PURE__*/function (_PureComponent) {\n _inheritsLoose(SideEffect, _PureComponent);\n\n function SideEffect() {\n return _PureComponent.apply(this, arguments) || this;\n }\n\n // Try to use displayName of wrapped component\n SideEffect.peek = function peek() {\n return state;\n };\n\n var _proto = SideEffect.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n mountedInstances.push(this);\n emitChange();\n };\n\n _proto.componentDidUpdate = function componentDidUpdate() {\n emitChange();\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n var index = mountedInstances.indexOf(this);\n mountedInstances.splice(index, 1);\n emitChange();\n };\n\n _proto.render = function render() {\n return /*#__PURE__*/React.createElement(WrappedComponent, this.props);\n };\n\n return SideEffect;\n }(PureComponent);\n\n _defineProperty(SideEffect, \"displayName\", \"SideEffect(\" + getDisplayName(WrappedComponent) + \")\");\n\n return SideEffect;\n };\n}\n\nexport default withSideEffect;\n","/*\nIE11 support\n */\nexport var toArray = function (a) {\n var ret = Array(a.length);\n for (var i = 0; i < a.length; ++i) {\n ret[i] = a[i];\n }\n return ret;\n};\nexport var asArray = function (a) { return (Array.isArray(a) ? a : [a]); };\nexport var getFirst = function (a) { return (Array.isArray(a) ? a[0] : a); };\n","import { FOCUS_NO_AUTOFOCUS } from '../constants';\nvar isElementHidden = function (node) {\n // we can measure only \"elements\"\n // consider others as \"visible\"\n if (node.nodeType !== Node.ELEMENT_NODE) {\n return false;\n }\n var computedStyle = window.getComputedStyle(node, null);\n if (!computedStyle || !computedStyle.getPropertyValue) {\n return false;\n }\n return (computedStyle.getPropertyValue('display') === 'none' || computedStyle.getPropertyValue('visibility') === 'hidden');\n};\nvar getParentNode = function (node) {\n // DOCUMENT_FRAGMENT_NODE can also point on ShadowRoot. In this case .host will point on the next node\n return node.parentNode && node.parentNode.nodeType === Node.DOCUMENT_FRAGMENT_NODE\n ? // eslint-disable-next-line @typescript-eslint/no-explicit-any\n node.parentNode.host\n : node.parentNode;\n};\nvar isTopNode = function (node) {\n // @ts-ignore\n return node === document || (node && node.nodeType === Node.DOCUMENT_NODE);\n};\nvar isVisibleUncached = function (node, checkParent) {\n return !node || isTopNode(node) || (!isElementHidden(node) && checkParent(getParentNode(node)));\n};\nexport var isVisibleCached = function (visibilityCache, node) {\n var cached = visibilityCache.get(node);\n if (cached !== undefined) {\n return cached;\n }\n var result = isVisibleUncached(node, isVisibleCached.bind(undefined, visibilityCache));\n visibilityCache.set(node, result);\n return result;\n};\nvar isAutoFocusAllowedUncached = function (node, checkParent) {\n return node && !isTopNode(node) ? (isAutoFocusAllowed(node) ? checkParent(getParentNode(node)) : false) : true;\n};\nexport var isAutoFocusAllowedCached = function (cache, node) {\n var cached = cache.get(node);\n if (cached !== undefined) {\n return cached;\n }\n var result = isAutoFocusAllowedUncached(node, isAutoFocusAllowedCached.bind(undefined, cache));\n cache.set(node, result);\n return result;\n};\nexport var getDataset = function (node) {\n // @ts-ignore\n return node.dataset;\n};\nexport var isHTMLButtonElement = function (node) { return node.tagName === 'BUTTON'; };\nexport var isHTMLInputElement = function (node) { return node.tagName === 'INPUT'; };\nexport var isRadioElement = function (node) {\n return isHTMLInputElement(node) && node.type === 'radio';\n};\nexport var notHiddenInput = function (node) {\n return !((isHTMLInputElement(node) || isHTMLButtonElement(node)) && (node.type === 'hidden' || node.disabled));\n};\nexport var isAutoFocusAllowed = function (node) {\n var attribute = node.getAttribute(FOCUS_NO_AUTOFOCUS);\n return ![true, 'true', ''].includes(attribute);\n};\nexport var isGuard = function (node) { var _a; return Boolean(node && ((_a = getDataset(node)) === null || _a === void 0 ? void 0 : _a.focusGuard)); };\nexport var isNotAGuard = function (node) { return !isGuard(node); };\nexport var isDefined = function (x) { return Boolean(x); };\n","import { toArray } from './array';\nexport var tabSort = function (a, b) {\n var tabDiff = a.tabIndex - b.tabIndex;\n var indexDiff = a.index - b.index;\n if (tabDiff) {\n if (!a.tabIndex) {\n return 1;\n }\n if (!b.tabIndex) {\n return -1;\n }\n }\n return tabDiff || indexDiff;\n};\nexport var orderByTabIndex = function (nodes, filterNegative, keepGuards) {\n return toArray(nodes)\n .map(function (node, index) { return ({\n node: node,\n index: index,\n tabIndex: keepGuards && node.tabIndex === -1 ? ((node.dataset || {}).focusGuard ? 0 : -1) : node.tabIndex,\n }); })\n .filter(function (data) { return !filterNegative || data.tabIndex >= 0; })\n .sort(tabSort);\n};\n","/**\n * list of the object to be considered as focusable\n */\nexport var tabbables = [\n 'button:enabled',\n 'select:enabled',\n 'textarea:enabled',\n 'input:enabled',\n // elements with explicit roles will also use explicit tabindex\n // '[role=\"button\"]',\n 'a[href]',\n 'area[href]',\n 'summary',\n 'iframe',\n 'object',\n 'embed',\n 'audio[controls]',\n 'video[controls]',\n '[tabindex]',\n '[contenteditable]',\n '[autofocus]',\n];\n","import { FOCUS_AUTO } from '../constants';\nimport { toArray } from './array';\nimport { tabbables } from './tabbables';\nvar queryTabbables = tabbables.join(',');\nvar queryGuardTabbables = \"\".concat(queryTabbables, \", [data-focus-guard]\");\nvar getFocusablesWithShadowDom = function (parent, withGuards) {\n return toArray((parent.shadowRoot || parent).children).reduce(function (acc, child) {\n return acc.concat(child.matches(withGuards ? queryGuardTabbables : queryTabbables) ? [child] : [], getFocusablesWithShadowDom(child));\n }, []);\n};\nvar getFocusablesWithIFrame = function (parent, withGuards) {\n var _a;\n // contentDocument of iframe will be null if current origin cannot access it\n if (parent instanceof HTMLIFrameElement && ((_a = parent.contentDocument) === null || _a === void 0 ? void 0 : _a.body)) {\n return getFocusables([parent.contentDocument.body], withGuards);\n }\n return [parent];\n};\nexport var getFocusables = function (parents, withGuards) {\n return parents.reduce(function (acc, parent) {\n var _a;\n var focusableWithShadowDom = getFocusablesWithShadowDom(parent, withGuards);\n var focusableWithIframes = (_a = []).concat.apply(_a, focusableWithShadowDom.map(function (node) { return getFocusablesWithIFrame(node, withGuards); }));\n return acc.concat(\n // add all tabbables inside and within shadow DOMs in DOM order\n focusableWithIframes, \n // add if node is tabbable itself\n parent.parentNode\n ? toArray(parent.parentNode.querySelectorAll(queryTabbables)).filter(function (node) { return node === parent; })\n : []);\n }, []);\n};\n/**\n * return a list of focusable nodes within an area marked as \"auto-focusable\"\n * @param parent\n */\nexport var getParentAutofocusables = function (parent) {\n var parentFocus = parent.querySelectorAll(\"[\".concat(FOCUS_AUTO, \"]\"));\n return toArray(parentFocus)\n .map(function (node) { return getFocusables([node]); })\n .reduce(function (acc, nodes) { return acc.concat(nodes); }, []);\n};\n","import { toArray } from './array';\nimport { isAutoFocusAllowedCached, isVisibleCached, notHiddenInput } from './is';\nimport { orderByTabIndex } from './tabOrder';\nimport { getFocusables, getParentAutofocusables } from './tabUtils';\n/**\n * given list of focusable elements keeps the ones user can interact with\n * @param nodes\n * @param visibilityCache\n */\nexport var filterFocusable = function (nodes, visibilityCache) {\n return toArray(nodes)\n .filter(function (node) { return isVisibleCached(visibilityCache, node); })\n .filter(function (node) { return notHiddenInput(node); });\n};\nexport var filterAutoFocusable = function (nodes, cache) {\n if (cache === void 0) { cache = new Map(); }\n return toArray(nodes).filter(function (node) { return isAutoFocusAllowedCached(cache, node); });\n};\n/**\n * only tabbable ones\n * (but with guards which would be ignored)\n */\nexport var getTabbableNodes = function (topNodes, visibilityCache, withGuards) {\n return orderByTabIndex(filterFocusable(getFocusables(topNodes, withGuards), visibilityCache), true, withGuards);\n};\n/**\n * actually anything \"focusable\", not only tabbable\n * (without guards, as long as they are not expected to be focused)\n */\nexport var getAllTabbableNodes = function (topNodes, visibilityCache) {\n return orderByTabIndex(filterFocusable(getFocusables(topNodes), visibilityCache), false);\n};\n/**\n * return list of nodes which are expected to be auto-focused\n * @param topNode\n * @param visibilityCache\n */\nexport var parentAutofocusables = function (topNode, visibilityCache) {\n return filterFocusable(getParentAutofocusables(topNode), visibilityCache);\n};\n/*\n * Determines if element is contained in scope, including nested shadow DOMs\n */\nexport var contains = function (scope, element) {\n if (scope.shadowRoot) {\n return contains(scope.shadowRoot, element);\n }\n else {\n if (Object.getPrototypeOf(scope).contains !== undefined &&\n Object.getPrototypeOf(scope).contains.call(scope, element)) {\n return true;\n }\n return toArray(scope.children).some(function (child) {\n var _a;\n if (child instanceof HTMLIFrameElement) {\n var iframeBody = (_a = child.contentDocument) === null || _a === void 0 ? void 0 : _a.body;\n if (iframeBody) {\n return contains(iframeBody, element);\n }\n return false;\n }\n return contains(child, element);\n });\n }\n};\n","import { FOCUS_DISABLED, FOCUS_GROUP } from '../constants';\nimport { asArray, toArray } from './array';\n/**\n * in case of multiple nodes nested inside each other\n * keeps only top ones\n * this is O(nlogn)\n * @param nodes\n * @returns {*}\n */\nvar filterNested = function (nodes) {\n var contained = new Set();\n var l = nodes.length;\n for (var i = 0; i < l; i += 1) {\n for (var j = i + 1; j < l; j += 1) {\n var position = nodes[i].compareDocumentPosition(nodes[j]);\n /* eslint-disable no-bitwise */\n if ((position & Node.DOCUMENT_POSITION_CONTAINED_BY) > 0) {\n contained.add(j);\n }\n if ((position & Node.DOCUMENT_POSITION_CONTAINS) > 0) {\n contained.add(i);\n }\n /* eslint-enable */\n }\n }\n return nodes.filter(function (_, index) { return !contained.has(index); });\n};\n/**\n * finds top most parent for a node\n * @param node\n * @returns {*}\n */\nvar getTopParent = function (node) {\n return node.parentNode ? getTopParent(node.parentNode) : node;\n};\n/**\n * returns all \"focus containers\" inside a given node\n * @param node\n * @returns {T}\n */\nexport var getAllAffectedNodes = function (node) {\n var nodes = asArray(node);\n return nodes.filter(Boolean).reduce(function (acc, currentNode) {\n var group = currentNode.getAttribute(FOCUS_GROUP);\n acc.push.apply(acc, (group\n ? filterNested(toArray(getTopParent(currentNode).querySelectorAll(\"[\".concat(FOCUS_GROUP, \"=\\\"\").concat(group, \"\\\"]:not([\").concat(FOCUS_DISABLED, \"=\\\"disabled\\\"])\"))))\n : [currentNode]));\n return acc;\n }, []);\n};\n","export var safeProbe = function (cb) {\n try {\n return cb();\n }\n catch (e) {\n return undefined;\n }\n};\n","/**\n * returns active element from document or from nested shadowdoms\n */\nimport { safeProbe } from './safe';\nexport var getActiveElement = function (inDocument) {\n if (inDocument === void 0) { inDocument = document; }\n if (!inDocument || !inDocument.activeElement) {\n return undefined;\n }\n var activeElement = inDocument.activeElement;\n return (activeElement.shadowRoot\n ? getActiveElement(activeElement.shadowRoot)\n : activeElement instanceof HTMLIFrameElement && safeProbe(function () { return activeElement.contentWindow.document; })\n ? getActiveElement(activeElement.contentWindow.document)\n : activeElement);\n};\n","import { contains } from './utils/DOMutils';\nimport { getAllAffectedNodes } from './utils/all-affected';\nimport { getFirst, toArray } from './utils/array';\nimport { getActiveElement } from './utils/getActiveElement';\nvar focusInFrame = function (frame, activeElement) { return frame === activeElement; };\nvar focusInsideIframe = function (topNode, activeElement) {\n return Boolean(toArray(topNode.querySelectorAll('iframe')).some(function (node) { return focusInFrame(node, activeElement); }));\n};\n/**\n * @returns {Boolean} true, if the current focus is inside given node or nodes\n */\nexport var focusInside = function (topNode, activeElement) {\n // const activeElement = document && getActiveElement();\n if (activeElement === void 0) { activeElement = getActiveElement(getFirst(topNode).ownerDocument); }\n if (!activeElement || (activeElement.dataset && activeElement.dataset.focusGuard)) {\n return false;\n }\n return getAllAffectedNodes(topNode).some(function (node) {\n return contains(node, activeElement) || focusInsideIframe(node, activeElement);\n });\n};\n","import { FOCUS_ALLOW } from './constants';\nimport { contains } from './utils/DOMutils';\nimport { toArray } from './utils/array';\nimport { getActiveElement } from './utils/getActiveElement';\n/**\n * focus is hidden FROM the focus-lock\n * ie contained inside a node focus-lock shall ignore\n * @returns {boolean} focus is currently is in \"allow\" area\n */\nexport var focusIsHidden = function (inDocument) {\n if (inDocument === void 0) { inDocument = document; }\n var activeElement = getActiveElement(inDocument);\n if (!activeElement) {\n return false;\n }\n // this does not support setting FOCUS_ALLOW within shadow dom\n return toArray(inDocument.querySelectorAll(\"[\".concat(FOCUS_ALLOW, \"]\"))).some(function (node) { return contains(node, activeElement); });\n};\n","import { isRadioElement } from './is';\nvar findSelectedRadio = function (node, nodes) {\n return nodes\n .filter(isRadioElement)\n .filter(function (el) { return el.name === node.name; })\n .filter(function (el) { return el.checked; })[0] || node;\n};\nexport var correctNode = function (node, nodes) {\n if (isRadioElement(node) && node.name) {\n return findSelectedRadio(node, nodes);\n }\n return node;\n};\n/**\n * giving a set of radio inputs keeps only selected (tabbable) ones\n * @param nodes\n */\nexport var correctNodes = function (nodes) {\n // IE11 has no Set(array) constructor\n var resultSet = new Set();\n nodes.forEach(function (node) { return resultSet.add(correctNode(node, nodes)); });\n // using filter to support IE11\n return nodes.filter(function (node) { return resultSet.has(node); });\n};\n","import { correctNode } from './correctFocus';\nexport var pickFirstFocus = function (nodes) {\n if (nodes[0] && nodes.length > 1) {\n return correctNode(nodes[0], nodes);\n }\n return nodes[0];\n};\nexport var pickFocusable = function (nodes, index) {\n if (nodes.length > 1) {\n return nodes.indexOf(correctNode(nodes[index], nodes));\n }\n return index;\n};\n","import { correctNodes } from './utils/correctFocus';\nimport { pickFocusable } from './utils/firstFocus';\nimport { isGuard } from './utils/is';\nexport var NEW_FOCUS = 'NEW_FOCUS';\n/**\n * Main solver for the \"find next focus\" question\n * @param innerNodes\n * @param outerNodes\n * @param activeElement\n * @param lastNode\n * @returns {number|string|undefined|*}\n */\nexport var newFocus = function (innerNodes, outerNodes, activeElement, lastNode) {\n var cnt = innerNodes.length;\n var firstFocus = innerNodes[0];\n var lastFocus = innerNodes[cnt - 1];\n var isOnGuard = isGuard(activeElement);\n // focus is inside\n if (activeElement && innerNodes.indexOf(activeElement) >= 0) {\n return undefined;\n }\n var activeIndex = activeElement !== undefined ? outerNodes.indexOf(activeElement) : -1;\n var lastIndex = lastNode ? outerNodes.indexOf(lastNode) : activeIndex;\n var lastNodeInside = lastNode ? innerNodes.indexOf(lastNode) : -1;\n var indexDiff = activeIndex - lastIndex;\n var firstNodeIndex = outerNodes.indexOf(firstFocus);\n var lastNodeIndex = outerNodes.indexOf(lastFocus);\n var correctedNodes = correctNodes(outerNodes);\n var correctedIndex = activeElement !== undefined ? correctedNodes.indexOf(activeElement) : -1;\n var correctedIndexDiff = correctedIndex - (lastNode ? correctedNodes.indexOf(lastNode) : activeIndex);\n var returnFirstNode = pickFocusable(innerNodes, 0);\n var returnLastNode = pickFocusable(innerNodes, cnt - 1);\n // new focus\n if (activeIndex === -1 || lastNodeInside === -1) {\n return NEW_FOCUS;\n }\n // old focus\n if (!indexDiff && lastNodeInside >= 0) {\n return lastNodeInside;\n }\n // first element\n if (activeIndex <= firstNodeIndex && isOnGuard && Math.abs(indexDiff) > 1) {\n return returnLastNode;\n }\n // last element\n if (activeIndex >= lastNodeIndex && isOnGuard && Math.abs(indexDiff) > 1) {\n return returnFirstNode;\n }\n // jump out, but not on the guard\n if (indexDiff && Math.abs(correctedIndexDiff) > 1) {\n return lastNodeInside;\n }\n // focus above lock\n if (activeIndex <= firstNodeIndex) {\n return returnLastNode;\n }\n // focus below lock\n if (activeIndex > lastNodeIndex) {\n return returnFirstNode;\n }\n // index is inside tab order, but outside Lock\n if (indexDiff) {\n if (Math.abs(indexDiff) > 1) {\n return lastNodeInside;\n }\n return (cnt + lastNodeInside + indexDiff) % cnt;\n }\n // do nothing\n return undefined;\n};\n","import { filterAutoFocusable } from './DOMutils';\nimport { pickFirstFocus } from './firstFocus';\nimport { getDataset } from './is';\nvar findAutoFocused = function (autoFocusables) {\n return function (node) {\n var _a;\n var autofocus = (_a = getDataset(node)) === null || _a === void 0 ? void 0 : _a.autofocus;\n return (\n // @ts-expect-error\n node.autofocus ||\n //\n (autofocus !== undefined && autofocus !== 'false') ||\n //\n autoFocusables.indexOf(node) >= 0);\n };\n};\nexport var pickAutofocus = function (nodesIndexes, orderedNodes, groups) {\n var nodes = nodesIndexes.map(function (_a) {\n var node = _a.node;\n return node;\n });\n var autoFocusable = filterAutoFocusable(nodes.filter(findAutoFocused(groups)));\n if (autoFocusable && autoFocusable.length) {\n return pickFirstFocus(autoFocusable);\n }\n return pickFirstFocus(filterAutoFocusable(orderedNodes));\n};\n","import { parentAutofocusables } from './DOMutils';\nimport { contains } from './DOMutils';\nimport { asArray } from './array';\nvar getParents = function (node, parents) {\n if (parents === void 0) { parents = []; }\n parents.push(node);\n if (node.parentNode) {\n getParents(node.parentNode.host || node.parentNode, parents);\n }\n return parents;\n};\n/**\n * finds a parent for both nodeA and nodeB\n * @param nodeA\n * @param nodeB\n * @returns {boolean|*}\n */\nexport var getCommonParent = function (nodeA, nodeB) {\n var parentsA = getParents(nodeA);\n var parentsB = getParents(nodeB);\n // tslint:disable-next-line:prefer-for-of\n for (var i = 0; i < parentsA.length; i += 1) {\n var currentParent = parentsA[i];\n if (parentsB.indexOf(currentParent) >= 0) {\n return currentParent;\n }\n }\n return false;\n};\nexport var getTopCommonParent = function (baseActiveElement, leftEntry, rightEntries) {\n var activeElements = asArray(baseActiveElement);\n var leftEntries = asArray(leftEntry);\n var activeElement = activeElements[0];\n var topCommon = false;\n leftEntries.filter(Boolean).forEach(function (entry) {\n topCommon = getCommonParent(topCommon || entry, entry) || topCommon;\n rightEntries.filter(Boolean).forEach(function (subEntry) {\n var common = getCommonParent(activeElement, subEntry);\n if (common) {\n if (!topCommon || contains(common, topCommon)) {\n topCommon = common;\n }\n else {\n topCommon = getCommonParent(common, topCommon);\n }\n }\n });\n });\n // TODO: add assert here?\n return topCommon;\n};\n/**\n * return list of nodes which are expected to be autofocused inside a given top nodes\n * @param entries\n * @param visibilityCache\n */\nexport var allParentAutofocusables = function (entries, visibilityCache) {\n return entries.reduce(function (acc, node) { return acc.concat(parentAutofocusables(node, visibilityCache)); }, []);\n};\n","import { NEW_FOCUS, newFocus } from './solver';\nimport { getAllTabbableNodes, getTabbableNodes } from './utils/DOMutils';\nimport { getAllAffectedNodes } from './utils/all-affected';\nimport { asArray, getFirst } from './utils/array';\nimport { pickAutofocus } from './utils/auto-focus';\nimport { getActiveElement } from './utils/getActiveElement';\nimport { isDefined, isNotAGuard } from './utils/is';\nimport { allParentAutofocusables, getTopCommonParent } from './utils/parenting';\nvar reorderNodes = function (srcNodes, dstNodes) {\n var remap = new Map();\n // no Set(dstNodes) for IE11 :(\n dstNodes.forEach(function (entity) { return remap.set(entity.node, entity); });\n // remap to dstNodes\n return srcNodes.map(function (node) { return remap.get(node); }).filter(isDefined);\n};\n/**\n * given top node(s) and the last active element return the element to be focused next\n * @param topNode\n * @param lastNode\n */\nexport var getFocusMerge = function (topNode, lastNode) {\n var activeElement = getActiveElement(asArray(topNode).length > 0 ? document : getFirst(topNode).ownerDocument);\n var entries = getAllAffectedNodes(topNode).filter(isNotAGuard);\n var commonParent = getTopCommonParent(activeElement || topNode, topNode, entries);\n var visibilityCache = new Map();\n var anyFocusable = getAllTabbableNodes(entries, visibilityCache);\n var innerElements = getTabbableNodes(entries, visibilityCache).filter(function (_a) {\n var node = _a.node;\n return isNotAGuard(node);\n });\n if (!innerElements[0]) {\n innerElements = anyFocusable;\n if (!innerElements[0]) {\n return undefined;\n }\n }\n var outerNodes = getAllTabbableNodes([commonParent], visibilityCache).map(function (_a) {\n var node = _a.node;\n return node;\n });\n var orderedInnerElements = reorderNodes(outerNodes, innerElements);\n var innerNodes = orderedInnerElements.map(function (_a) {\n var node = _a.node;\n return node;\n });\n var newId = newFocus(innerNodes, outerNodes, activeElement, lastNode);\n if (newId === NEW_FOCUS) {\n var focusNode = pickAutofocus(anyFocusable, innerNodes, allParentAutofocusables(entries, visibilityCache));\n if (focusNode) {\n return { node: focusNode };\n }\n else {\n console.warn('focus-lock: cannot find any node to move focus into');\n return undefined;\n }\n }\n if (newId === undefined) {\n return newId;\n }\n return orderedInnerElements[newId];\n};\n","import { getTabbableNodes } from './utils/DOMutils';\nimport { getAllAffectedNodes } from './utils/all-affected';\nimport { isGuard, isNotAGuard } from './utils/is';\nimport { getTopCommonParent } from './utils/parenting';\n/**\n * return list of focusable elements inside a given top node\n * @deprecated use {@link getFocusableIn}. Yep, there is typo in the function name\n */\nexport var getFocusabledIn = function (topNode) {\n var entries = getAllAffectedNodes(topNode).filter(isNotAGuard);\n var commonParent = getTopCommonParent(topNode, topNode, entries);\n var visibilityCache = new Map();\n var outerNodes = getTabbableNodes([commonParent], visibilityCache, true);\n var innerElements = getTabbableNodes(entries, visibilityCache)\n .filter(function (_a) {\n var node = _a.node;\n return isNotAGuard(node);\n })\n .map(function (_a) {\n var node = _a.node;\n return node;\n });\n return outerNodes.map(function (_a) {\n var node = _a.node, index = _a.index;\n return ({\n node: node,\n index: index,\n lockItem: innerElements.indexOf(node) >= 0,\n guard: isGuard(node),\n });\n });\n};\n/**\n * return list of focusable elements inside a given top node\n */\nexport var getFocusableIn = getFocusabledIn;\n","import { getFocusMerge } from './focusMerge';\nexport var focusOn = function (target, focusOptions) {\n if ('focus' in target) {\n target.focus(focusOptions);\n }\n if ('contentWindow' in target && target.contentWindow) {\n target.contentWindow.focus();\n }\n};\nvar guardCount = 0;\nvar lockDisabled = false;\n/**\n * Sets focus at a given node. The last focused element will help to determine which element(first or last) should be focused.\n * HTML markers (see {@link import('./constants').FOCUS_AUTO} constants) can control autofocus\n * @param topNode\n * @param lastNode\n * @param options\n */\nexport var setFocus = function (topNode, lastNode, options) {\n if (options === void 0) { options = {}; }\n var focusable = getFocusMerge(topNode, lastNode);\n if (lockDisabled) {\n return;\n }\n if (focusable) {\n if (guardCount > 2) {\n // tslint:disable-next-line:no-console\n console.error('FocusLock: focus-fighting detected. Only one focus management system could be active. ' +\n 'See https://github.com/theKashey/focus-lock/#focus-fighting');\n lockDisabled = true;\n setTimeout(function () {\n lockDisabled = false;\n }, 1);\n return;\n }\n guardCount++;\n focusOn(focusable.node, options.focusOptions);\n guardCount--;\n }\n};\n","export function deferAction(action) {\n // Hidding setImmediate from Webpack to avoid inserting polyfill\n var _window = window,\n setImmediate = _window.setImmediate;\n\n if (typeof setImmediate !== 'undefined') {\n setImmediate(action);\n } else {\n setTimeout(action, 1);\n }\n}\nexport var inlineProp = function inlineProp(name, value) {\n var obj = {};\n obj[name] = value;\n return obj;\n};","/* eslint-disable no-mixed-operators */\nimport * as React from 'react';\nimport PropTypes from 'prop-types';\nimport withSideEffect from 'react-clientside-effect';\nimport moveFocusInside, { focusInside, focusIsHidden, getFocusabledIn } from 'focus-lock';\nimport { deferAction } from './util';\nimport { mediumFocus, mediumBlur, mediumEffect } from './medium';\n\nvar focusOnBody = function focusOnBody() {\n return document && document.activeElement === document.body;\n};\n\nvar isFreeFocus = function isFreeFocus() {\n return focusOnBody() || focusIsHidden();\n};\n\nvar lastActiveTrap = null;\nvar lastActiveFocus = null;\nvar lastPortaledElement = null;\nvar focusWasOutsideWindow = false;\n\nvar defaultWhitelist = function defaultWhitelist() {\n return true;\n};\n\nvar focusWhitelisted = function focusWhitelisted(activeElement) {\n return (lastActiveTrap.whiteList || defaultWhitelist)(activeElement);\n};\n\nvar recordPortal = function recordPortal(observerNode, portaledElement) {\n lastPortaledElement = {\n observerNode: observerNode,\n portaledElement: portaledElement\n };\n};\n\nvar focusIsPortaledPair = function focusIsPortaledPair(element) {\n return lastPortaledElement && lastPortaledElement.portaledElement === element;\n};\n\nfunction autoGuard(startIndex, end, step, allNodes) {\n var lastGuard = null;\n var i = startIndex;\n\n do {\n var item = allNodes[i];\n\n if (item.guard) {\n if (item.node.dataset.focusAutoGuard) {\n lastGuard = item;\n }\n } else if (item.lockItem) {\n if (i !== startIndex) {\n // we will tab to the next element\n return;\n }\n\n lastGuard = null;\n } else {\n break;\n }\n } while ((i += step) !== end);\n\n if (lastGuard) {\n lastGuard.node.tabIndex = 0;\n }\n}\n\nvar extractRef = function extractRef(ref) {\n return ref && 'current' in ref ? ref.current : ref;\n};\n\nvar focusWasOutside = function focusWasOutside(crossFrameOption) {\n if (crossFrameOption) {\n // with cross frame return true for any value\n return Boolean(focusWasOutsideWindow);\n } // in other case return only of focus went a while aho\n\n\n return focusWasOutsideWindow === 'meanwhile';\n};\n\nvar checkInHost = function checkInHost(check, el, boundary) {\n return el && ( // find host equal to active element and check nested active element\n el.host === check && (!el.activeElement || boundary.contains(el.activeElement)) // dive up\n || el.parentNode && checkInHost(check, el.parentNode, boundary));\n};\n\nvar withinHost = function withinHost(activeElement, workingArea) {\n return workingArea.some(function (area) {\n return checkInHost(activeElement, area, area);\n });\n};\n\nvar activateTrap = function activateTrap() {\n var result = false;\n\n if (lastActiveTrap) {\n var _lastActiveTrap = lastActiveTrap,\n observed = _lastActiveTrap.observed,\n persistentFocus = _lastActiveTrap.persistentFocus,\n autoFocus = _lastActiveTrap.autoFocus,\n shards = _lastActiveTrap.shards,\n crossFrame = _lastActiveTrap.crossFrame,\n focusOptions = _lastActiveTrap.focusOptions;\n var workingNode = observed || lastPortaledElement && lastPortaledElement.portaledElement;\n var activeElement = document && document.activeElement;\n\n if (workingNode) {\n var workingArea = [workingNode].concat(shards.map(extractRef).filter(Boolean));\n\n if (!activeElement || focusWhitelisted(activeElement)) {\n if (persistentFocus || focusWasOutside(crossFrame) || !isFreeFocus() || !lastActiveFocus && autoFocus) {\n if (workingNode && !( // active element is \"inside\" working area\n focusInside(workingArea) || // check for shadow-dom contained elements\n activeElement && withinHost(activeElement, workingArea) || focusIsPortaledPair(activeElement, workingNode))) {\n if (document && !lastActiveFocus && activeElement && !autoFocus) {\n // Check if blur() exists, which is missing on certain elements on IE\n if (activeElement.blur) {\n activeElement.blur();\n }\n\n document.body.focus();\n } else {\n result = moveFocusInside(workingArea, lastActiveFocus, {\n focusOptions: focusOptions\n });\n lastPortaledElement = {};\n }\n }\n\n focusWasOutsideWindow = false;\n lastActiveFocus = document && document.activeElement;\n }\n }\n\n if (document) {\n var newActiveElement = document && document.activeElement;\n var allNodes = getFocusabledIn(workingArea);\n var focusedIndex = allNodes.map(function (_ref) {\n var node = _ref.node;\n return node;\n }).indexOf(newActiveElement);\n\n if (focusedIndex > -1) {\n // remove old focus\n allNodes.filter(function (_ref2) {\n var guard = _ref2.guard,\n node = _ref2.node;\n return guard && node.dataset.focusAutoGuard;\n }).forEach(function (_ref3) {\n var node = _ref3.node;\n return node.removeAttribute('tabIndex');\n });\n autoGuard(focusedIndex, allNodes.length, +1, allNodes);\n autoGuard(focusedIndex, -1, -1, allNodes);\n }\n }\n }\n }\n\n return result;\n};\n\nvar onTrap = function onTrap(event) {\n if (activateTrap() && event) {\n // prevent scroll jump\n event.stopPropagation();\n event.preventDefault();\n }\n};\n\nvar onBlur = function onBlur() {\n return deferAction(activateTrap);\n};\n\nvar onFocus = function onFocus(event) {\n // detect portal\n var source = event.target;\n var currentNode = event.currentTarget;\n\n if (!currentNode.contains(source)) {\n recordPortal(currentNode, source);\n }\n};\n\nvar FocusWatcher = function FocusWatcher() {\n return null;\n};\n\nvar FocusTrap = function FocusTrap(_ref4) {\n var children = _ref4.children;\n return /*#__PURE__*/React.createElement(\"div\", {\n onBlur: onBlur,\n onFocus: onFocus\n }, children);\n};\n\nFocusTrap.propTypes = process.env.NODE_ENV !== \"production\" ? {\n children: PropTypes.node.isRequired\n} : {};\n\nvar onWindowBlur = function onWindowBlur() {\n focusWasOutsideWindow = 'just'; // using setTimeout to set this variable after React/sidecar reaction\n\n setTimeout(function () {\n focusWasOutsideWindow = 'meanwhile';\n }, 0);\n};\n\nvar attachHandler = function attachHandler() {\n document.addEventListener('focusin', onTrap);\n document.addEventListener('focusout', onBlur);\n window.addEventListener('blur', onWindowBlur);\n};\n\nvar detachHandler = function detachHandler() {\n document.removeEventListener('focusin', onTrap);\n document.removeEventListener('focusout', onBlur);\n window.removeEventListener('blur', onWindowBlur);\n};\n\nfunction reducePropsToState(propsList) {\n return propsList.filter(function (_ref5) {\n var disabled = _ref5.disabled;\n return !disabled;\n });\n}\n\nfunction handleStateChangeOnClient(traps) {\n var trap = traps.slice(-1)[0];\n\n if (trap && !lastActiveTrap) {\n attachHandler();\n }\n\n var lastTrap = lastActiveTrap;\n var sameTrap = lastTrap && trap && trap.id === lastTrap.id;\n lastActiveTrap = trap;\n\n if (lastTrap && !sameTrap) {\n lastTrap.onDeactivation(); // return focus only of last trap was removed\n\n if (!traps.filter(function (_ref6) {\n var id = _ref6.id;\n return id === lastTrap.id;\n }).length) {\n // allow defer is no other trap is awaiting restore\n lastTrap.returnFocus(!trap);\n }\n }\n\n if (trap) {\n lastActiveFocus = null;\n\n if (!sameTrap || lastTrap.observed !== trap.observed) {\n trap.onActivation();\n }\n\n activateTrap(true);\n deferAction(activateTrap);\n } else {\n detachHandler();\n lastActiveFocus = null;\n }\n} // bind medium\n\n\nmediumFocus.assignSyncMedium(onFocus);\nmediumBlur.assignMedium(onBlur);\nmediumEffect.assignMedium(function (cb) {\n return cb({\n moveFocusInside: moveFocusInside,\n focusInside: focusInside\n });\n});\nexport default withSideEffect(reducePropsToState, handleStateChangeOnClient)(FocusWatcher);","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport FocusLockUI from './Lock';\nimport FocusTrap from './Trap';\n/* that would be a BREAKING CHANGE!\n// delaying sidecar execution till the first usage\nconst RequireSideCar = (props) => {\n // eslint-disable-next-line global-require\n const SideCar = require('./Trap').default;\n return <SideCar {...props} />;\n};\n*/\n\nvar FocusLockCombination = /*#__PURE__*/React.forwardRef(function FocusLockUICombination(props, ref) {\n return /*#__PURE__*/React.createElement(FocusLockUI, _extends({\n sideCar: FocusTrap,\n ref: ref\n }, props));\n});\n\nvar _ref = FocusLockUI.propTypes || {},\n sideCar = _ref.sideCar,\n propTypes = _objectWithoutPropertiesLoose(_ref, [\"sideCar\"]);\n\nFocusLockCombination.propTypes = process.env.NODE_ENV !== \"production\" ? propTypes : {};\nexport default FocusLockCombination;","import React, { useCallback } from 'react';\r\nimport ReactFocusLock from 'react-focus-lock';\r\n/**\r\n * Traps the focus within the provided content.\r\n *\r\n * Tabbing using the keyboard will only cycle through the children and won't leave the boundary of the FocusLock wrapper.\r\n */\r\nexport const FocusLock = props => {\r\n const { autoFocus, children, crossFrame, finalFocusRef, initialFocusRef, isDisabled, persistentFocus, returnFocus: returnFocusProp } = props;\r\n const onActivation = React.useCallback(() => {\r\n initialFocusRef?.current?.focus();\r\n }, [initialFocusRef]);\r\n const onDeactivation = useCallback(() => {\r\n finalFocusRef?.current?.focus();\r\n }, [finalFocusRef]);\r\n const returnFocus = returnFocusProp && !finalFocusRef;\r\n return (React.createElement(ReactFocusLock, { autoFocus: autoFocus, crossFrame: crossFrame, disabled: isDisabled, onActivation: onActivation, onDeactivation: onDeactivation, persistentFocus: persistentFocus, returnFocus: returnFocus }, children));\r\n};\r\nFocusLock.displayName = 'FocusLock';\r\nexport default FocusLock;\r\n","import React from 'react';\r\nimport { styled, useStyleConfig, vui } from '../core';\r\nimport { colors } from '../theme';\r\nimport { cs, HSLToRGBA, parseHSL } from '../utils';\r\nimport { useModalContext } from './context';\r\nconst { h, s, l } = parseHSL(colors.sandstone[5]);\r\nconst rgba = HSLToRGBA(h, s, l, 0.6);\r\nexport const ModalBackdropBase = styled.divBox `\n background-color: ${rgba};\n inset: 0;\n position: fixed;\n z-index: modal;\n`;\r\n/** Displays a dark overlay underneath modal content, but on top of page content. */\r\nexport const ModalBackdrop = vui((props, ref) => {\r\n const { className, ...rest } = props;\r\n const styles = useStyleConfig('Modal', useModalContext());\r\n return (React.createElement(ModalBackdropBase, { animation: \"fadeIn\", className: cs('vui-modalBackdrop', className), ref: ref, ...styles.backdrop, ...rest }));\r\n});\r\nModalBackdrop.displayName = 'ModalBackdrop';\r\nexport default ModalBackdrop;\r\n","import React from 'react';\r\nimport { styled, useStyleConfig, vui } from '../core';\r\nimport { callAll, cs } from '../utils';\r\nimport { useModalContext } from './context';\r\nexport const ModalContentBase = styled.divBox `\n display: flex;\n inset: 0px;\n position: fixed;\n z-index: modal;\n`;\r\n/** Wraps the content provided to the Modal component. */\r\nexport const ModalContent = vui((props, ref) => {\r\n const { className, ...rest } = props;\r\n const { onBackdropClick } = useModalContext() ?? {};\r\n const styles = useStyleConfig('Modal', useModalContext());\r\n return (React.createElement(ModalContentBase, { className: cs('vui-modalContent', className), ref: ref, tabIndex: -1, ...styles.content, ...rest, onClick: callAll(props.onClick, onBackdropClick) }));\r\n});\r\nModalContent.displayName = 'ModalContent';\r\nexport default ModalContent;\r\n","import { useEffect } from 'react';\r\nimport { useBodyScrollLock } from '../core';\r\n/** State management for nested modals. */\r\nclass ModalManager {\r\n constructor() {\r\n this.modals = [];\r\n this.add = (modal) => this.modals.push(modal);\r\n this.remove = (modal) => (this.modals = this.modals.filter(m => m !== modal));\r\n this.isTopModal = (modal) => {\r\n const topmostModal = this.modals[this.modals.length - 1];\r\n return topmostModal === modal;\r\n };\r\n }\r\n}\r\nexport const manager = new ModalManager();\r\n/** Refs of new modals will be automatically added/removed from the state when rendering. */\r\nexport function useModalManager(ref, isOpen, disableScrollLock) {\r\n const { setIsScrollLocked } = useBodyScrollLock();\r\n useEffect(() => {\r\n if (isOpen) {\r\n manager.add(ref);\r\n if (!disableScrollLock)\r\n setIsScrollLocked(true);\r\n }\r\n return () => {\r\n manager.remove(ref);\r\n if (!disableScrollLock)\r\n setIsScrollLocked(false);\r\n };\r\n }, [isOpen, ref]);\r\n}\r\n","import React, { cloneElement, useRef } from 'react';\r\nimport Box from '../box';\r\nimport { vui } from '../core';\r\nimport FocusLock from '../focusLock';\r\nimport Portal from '../portal';\r\nimport { callAll, cs, mergeRefs } from '../utils';\r\nimport { ModalProvider } from './context';\r\nimport ModalBackdrop from './modalBackdrop';\r\nimport ModalContent from './modalContent';\r\nimport { manager, useModalManager } from './modalManager';\r\n/**\r\n * Displays provided content on top of a dark backdrop element with fixed position.\r\n * By default uses Portal for content and closes when clicking backdrop or pressing 'Escape'.\r\n * Uses focus and scroll lock to achieve proper accessibility.\r\n * More about accessibility: https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/dialog_role\r\n */\r\nexport const Modal = vui((props, ref) => {\r\n const { allowPinchZoom, children, className, contentProps, disableAutoFocus, disableBackdropClose, disableEscClose, disablePortal, disableReturnFocus, disableScrollLock, disableTrapFocus, finalFocusRef, hideBackdrop, initialFocusRef, isOpen, onBackdropClick: onBackdropClickProp, onClose, onEsc, preserveScrollBar, size, variant, ...rest } = props;\r\n const modalRef = useRef(null);\r\n const mouseDownTarget = useRef(null);\r\n useModalManager(modalRef, isOpen, disableScrollLock);\r\n if (!isOpen)\r\n return null;\r\n const onBackdropClick = (e) => {\r\n e.stopPropagation();\r\n // Avoid closing modal when click starts inside the content and is released outside\r\n if (mouseDownTarget.current !== e.target)\r\n return;\r\n if (!manager.isTopModal(modalRef))\r\n return;\r\n !disableBackdropClose && onClose?.();\r\n onBackdropClickProp?.(e);\r\n };\r\n const onKeyDown = (e) => {\r\n if (e.key === 'Escape') {\r\n e.stopPropagation();\r\n !disableEscClose && onClose?.();\r\n onEsc?.();\r\n }\r\n };\r\n const onMouseDown = (e) => (mouseDownTarget.current = e.target);\r\n const childProps = {\r\n onClick: (e) => {\r\n e.stopPropagation();\r\n children?.props?.onClick?.(e);\r\n },\r\n tabIndex: children?.props?.tabIndex ?? -1\r\n };\r\n const context = { isOpen, onBackdropClick, onClose, size, variant };\r\n return (React.createElement(ModalProvider, { value: context },\r\n React.createElement(Portal, { disablePortal: disablePortal },\r\n React.createElement(Box, { className: cs('vui-modal', className), ref: mergeRefs(ref, modalRef), ...rest, onKeyDown: callAll(props.onKeyDown, onKeyDown), onMouseDown: callAll(props.onMouseDown, onMouseDown) },\r\n !hideBackdrop && React.createElement(ModalBackdrop, null),\r\n React.createElement(FocusLock, { autoFocus: !disableAutoFocus, finalFocusRef: finalFocusRef, initialFocusRef: initialFocusRef, isDisabled: disableTrapFocus, returnFocus: !disableReturnFocus },\r\n React.createElement(ModalContent, { animation: \"fadeDown\", ...contentProps }, cloneElement(children, childProps)))))));\r\n});\r\nModal.Backdrop = ModalBackdrop;\r\nModal.Content = ModalContent;\r\nModal.displayName = 'Modal';\r\nexport default Modal;\r\n","import React from 'react';\r\nimport { omitThemingProps, styled, useStyleConfig, useUp, vui } from '../core';\r\nimport { cs, filterUndefined } from '../utils';\r\nexport const HeadingBase = styled.h2Box `\n font-weight: demi;\n transition-duration: fast;\n`;\r\n/** Used to define headings and titles for pages, articles, panels, etc. */\r\nexport const Heading = vui((props, ref) => {\r\n const { align, casing, children, className, decoration, text, weight, ...rest } = omitThemingProps(props);\r\n const styles = useStyleConfig('Heading', props);\r\n const { fontSize, lineHeight, ...restStyles } = styles;\r\n const hClassName = props.size ? `vui-${props.size}` : '';\r\n const aliasedProps = filterUndefined({\r\n fontWeight: weight,\r\n textAlign: align,\r\n textDecoration: decoration,\r\n textTransform: casing\r\n });\r\n const isDesktop = useUp(993);\r\n const fontSizeDesktop = fontSize?.desktop || fontSize;\r\n const fontSizeMobile = fontSize?.mobile || fontSize;\r\n const lineHeightDesktop = lineHeight?.desktop || lineHeight;\r\n const lineHeightMobile = lineHeight?.mobile || lineHeight;\r\n return (React.createElement(HeadingBase, { className: cs('vui-heading', hClassName, className), fontSize: isDesktop ? fontSizeDesktop : fontSizeMobile, lineHeight: isDesktop ? lineHeightDesktop : lineHeightMobile, ref: ref, ...restStyles, ...aliasedProps, ...rest }, children ?? text));\r\n});\r\nHeading.displayName = 'Heading';\r\nexport default Heading;\r\n","import { createContext } from '../utils';\r\nconst [MenuProvider, useMenuContext] = createContext({ isOptional: true });\r\nexport { MenuProvider, useMenuContext };\r\n","import React from 'react';\r\nimport { TextButton } from '../button';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport { PopoverTrigger } from '../popover';\r\nimport { cs } from '../utils';\r\nimport { useMenuContext } from './context';\r\n/** Displays PopoverTrigger as a button. */\r\nexport const MenuButton = vui((props, ref) => {\r\n const { className, ...rest } = props;\r\n const styles = useStyleConfig('Menu', useMenuContext());\r\n return (React.createElement(PopoverTrigger, { as: TextButton, className: cs('vui-menuButton', className), ref: ref, ...styles.button, ...rest }));\r\n});\r\nMenuButton.displayName = 'MenuButton';\r\nexport default MenuButton;\r\n","import React from 'react';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport { ListItem } from '../list';\r\nimport { usePopoverContext } from '../popover';\r\nimport { cs, useCallbackRef } from '../utils';\r\nimport { useMenuContext } from './context';\r\n/** Displays a list item and by default closes the menu on click. */\r\nexport const MenuItem = vui((props, ref) => {\r\n const { className, onClick: onClickProp, ...rest } = props;\r\n const { instance } = usePopoverContext() ?? {};\r\n const { closeOnSelect, ...menuProps } = useMenuContext() ?? {};\r\n const styles = useStyleConfig('Menu', { ...menuProps, ...props });\r\n const onClick = useCallbackRef((e) => {\r\n onClickProp?.(e);\r\n closeOnSelect && instance?.hide();\r\n });\r\n return (React.createElement(ListItem, { className: cs('vui-menuItem', className), isInteractive: true, onClick: onClick, ref: ref, ...styles.item, ...rest }));\r\n});\r\nMenuItem.displayName = 'MenuItem';\r\nexport default MenuItem;\r\n","import React from 'react';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport List from '../list';\r\nimport { PopoverContent } from '../popover';\r\nimport { cs } from '../utils';\r\nimport { useMenuContext } from './context';\r\n/** Displays a list of menu items in a popover content element. */\r\nexport const MenuList = vui((props, ref) => {\r\n const { className, contentProps, contentRef, ...rest } = props;\r\n const styles = useStyleConfig('Menu', useMenuContext());\r\n return (React.createElement(PopoverContent, { borderRadius: 0, ref: contentRef, ...contentProps },\r\n React.createElement(List, { className: cs('vui-menuList', className), py: 1, ref: ref, w: \"100%\", ...styles.list, ...rest, maxH: 295 })));\r\n});\r\nMenuList.Divider = List.Divider;\r\nMenuList.Heading = List.Heading;\r\nMenuList.Icon = List.Icon;\r\nMenuList.Item = List.Item;\r\nMenuList.Text = List.Text;\r\nexport default MenuList;\r\n","import React, { useMemo } from 'react';\r\nimport { Popover } from '../popover';\r\nimport { filterUndefined } from '../utils';\r\nimport { MenuProvider } from './context';\r\nimport MenuButton from './menuButton';\r\nimport MenuItem from './menuItem';\r\nimport MenuList from './menuList';\r\n/** Wraps Popover component and exposes some props to the children via context. */\r\nexport function Menu(props) {\r\n const { closeOnSelect = true, size, variant, ...rest } = props;\r\n const context = useMemo(() => filterUndefined({ closeOnSelect, size, variant }), [closeOnSelect, size, variant]);\r\n return (React.createElement(MenuProvider, { value: context },\r\n React.createElement(Popover, { ...rest })));\r\n}\r\nMenu.Button = MenuButton;\r\nMenu.Item = MenuItem;\r\nMenu.List = MenuList;\r\nMenu.displayName = 'Menu';\r\nexport default Menu;\r\n","import { createContext } from '../utils';\r\nconst [FooterProvider, useFooterContext] = createContext({ isOptional: true });\r\nexport { FooterProvider, useFooterContext };\r\n","import React from 'react';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport Heading from '../heading';\r\nimport { cs } from '../utils';\r\nimport { useFooterContext } from './context';\r\n/** Heading of a links section. */\r\nexport const FooterHeading = vui((props, ref) => {\r\n const { className, ...rest } = props;\r\n const styles = useStyleConfig('Footer', useFooterContext());\r\n return (React.createElement(Heading, { className: cs('vui-footerHeading', className), color: \"white\", mb: 1, ref: ref, size: \"h5\", ...styles.heading, ...rest }));\r\n});\r\nFooterHeading.displayName = 'FooterHeading';\r\nexport default FooterHeading;\r\n","import React from 'react';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport Link from '../link';\r\nimport { cs } from '../utils';\r\nimport { useFooterContext } from './context';\r\n/** Individual link item of the Footer. */\r\nexport const FooterLink = vui((props, ref) => {\r\n const { className, ...rest } = props;\r\n const styles = useStyleConfig('Footer', useFooterContext());\r\n return (React.createElement(Link, { className: cs('vui-footerLink', className), py: 0.5, ref: ref, size: { _: 'sm', md: 'md' }, variant: \"white\", ...styles.link, ...rest }));\r\n});\r\nFooterLink.displayName = 'FooterLink';\r\nexport default FooterLink;\r\n","import React from 'react';\r\nimport Box from '../box';\r\nimport { useStyleConfig, v, vui } from '../core';\r\nimport { cs, isJsx } from '../utils';\r\nimport { useFooterContext } from './context';\r\nimport FooterHeading from './footerHeading';\r\nimport FooterLink from './footerLink';\r\n/** Section includes a heading and a set of links. */\r\nexport const FooterSection = vui((props, ref) => {\r\n const { children, className, heading, links, ...rest } = props;\r\n const styles = useStyleConfig('Footer', useFooterContext());\r\n return (React.createElement(Box, { className: cs('vui-footerSection', className), column: true, ref: ref, ...styles.section, ...rest },\r\n isJsx(heading) ? heading : React.createElement(FooterHeading, { text: heading }),\r\n children ??\r\n (isJsx(links) ? (links) : (React.createElement(v.ul, null, links?.map(({ text, url }, index) => (React.createElement(v.li, { key: index },\r\n React.createElement(FooterLink, { href: url, text: text })))))))));\r\n});\r\nFooterSection.displayName = 'FooterSection';\r\nexport default FooterSection;\r\n","import React from 'react';\r\nimport Box from '../box';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport { cs } from '../utils';\r\nimport { useFooterContext } from './context';\r\nimport FooterSection from './footerSection';\r\n/** Organizes sections with links into a single column. Different width per breakpoint. */\r\nconst FooterColumn = vui((props, ref) => {\r\n const { children, className, sections, ...rest } = props;\r\n const styles = useStyleConfig('Footer', useFooterContext());\r\n return (React.createElement(Box, { className: cs('vui-footerColumn', className), column: true, flex: { xs: '0 0 50%', sm: '0 0 50%', md: '0 0 25%' }, minW: 164, p: { xs: 1, sm: 1, md: 1.25, lg: 1.5 }, ref: ref, spaceY: 4, ...styles.column, ...rest }, children ?? sections?.map((section, index) => React.createElement(FooterSection, { key: index, ...section }))));\r\n});\r\nFooterColumn.displayName = 'FooterColumn';\r\nexport default FooterColumn;\r\n","import React from 'react';\r\nimport Box from '../box';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport { cs } from '../utils';\r\nimport { useFooterContext } from './context';\r\n/** Controls max-width of the content and centers itself horizontally. */\r\nexport const FooterContent = vui((props, ref) => {\r\n const { className, ...rest } = props;\r\n const styles = useStyleConfig('Footer', useFooterContext());\r\n return (React.createElement(Box, { className: cs('vui-footerContent', className), column: true, fontSize: { xs: 12, sm: 12, md: 14 }, maxW: { xs: 344, sm: 412, md: 780, lg: 782, xl: 888 }, mx: \"auto\", ref: ref, w: \"100%\", ...styles.content, ...rest }));\r\n});\r\nFooterContent.displayName = 'FooterContent';\r\nexport default FooterContent;\r\n","import React from 'react';\r\nimport Box from '../box';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport { cs } from '../utils';\r\nimport { useFooterContext } from './context';\r\n/** Organizes Footer content into a row of multuple columns. */\r\nconst FooterRow = vui((props, ref) => {\r\n const { className, ...rest } = props;\r\n const styles = useStyleConfig('Footer', useFooterContext());\r\n return React.createElement(Box, { className: cs('vui-footerRow', className), m: -1.5, ref: ref, wrap: true, ...styles.row, ...rest });\r\n});\r\nFooterRow.displayName = 'FooterRow';\r\nexport default FooterRow;\r\n","import React from 'react';\r\nimport Box from '../box';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport { cs } from '../utils';\r\nimport { useFooterContext } from './context';\r\n/** Organizes sections with links into a single column. Different width per breakpoint. */\r\nconst FooterSlimColumn = vui((props, ref) => {\r\n const { children, ...rest } = props;\r\n const styles = useStyleConfig('Footer', useFooterContext());\r\n return (React.createElement(Box, { className: cs('vui-footerSlimColumn'), column: true, flex: { xs: '0 0 50%', sm: '0 0 20%', md: '0 0 20%' }, minW: 164, p: { xs: 1, sm: 1, md: 1.25, lg: 1.5 }, ref: ref, spaceY: 4, ...styles.column, ...rest }, children));\r\n});\r\nFooterSlimColumn.displayName = 'FooterSlimColumn';\r\nexport default FooterSlimColumn;\r\n","import React from 'react';\r\nimport Box from '../box';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport Link from '../link';\r\nimport T from '../t';\r\nimport { cs } from '../utils';\r\nimport { useFooterContext } from './context';\r\nimport FooterColumn from './footerColumn';\r\nimport FooterHeading from './footerHeading';\r\nexport const defaultLinkedInUrl = 'https://www.linkedin.com/showcase/veracity-data-platform';\r\n/** Section includes a heading and a set of links. */\r\nexport const FooterTrademark = vui((props, ref) => {\r\n const { className, linkedIn, ...rest } = props;\r\n const styles = useStyleConfig('Footer', useFooterContext());\r\n return (React.createElement(Box, { className: cs('vui-footerTrademark', className), ref: ref, w: \"100%\", wrap: true, ...styles.trademark, ...rest },\r\n React.createElement(FooterColumn, { centerV: true, flex: { xs: '0 0 100%', md: '0 0 25%' } },\r\n React.createElement(Link, { fontWeight: \"demi\", href: linkedIn ?? defaultLinkedInUrl, iconLeft: React.createElement(Link.Icon, { mr: 1, name: \"cubCircleLinkedIn\", radius: \"50%\", size: \"sm\" }), isExternal: true, ...styles.link },\r\n React.createElement(FooterHeading, { mb: 0, text: \"Follow us\" }))),\r\n React.createElement(FooterColumn, { centerV: true, flex: { xs: '0 0 100%', md: '0 0 75%' } },\r\n React.createElement(T, { size: \"xs\" },\r\n React.createElement(T, { size: \"xs\", weight: \"demi\" }, \"Veracity by DNV\"),\r\n \", DNV AS, NO-1322 H\\u00F8vik, Norway\"))));\r\n});\r\nFooterTrademark.displayName = 'FooterTrademark';\r\nexport default FooterTrademark;\r\n","import React from 'react';\r\nimport { Box } from '../box';\r\nimport { styled, useDown, useStyleConfig, vui } from '../core';\r\nimport { Divider } from '../divider';\r\nimport { Link } from '../link';\r\nimport Menu from '../menu';\r\nimport { T } from '../t';\r\nimport { cs } from '../utils';\r\nimport { FooterProvider } from './context';\r\nimport FooterColumn from './footerColumn';\r\nimport FooterContent from './footerContent';\r\nimport FooterHeading from './footerHeading';\r\nimport FooterLink from './footerLink';\r\nimport FooterRow from './footerRow';\r\nimport FooterSection from './footerSection';\r\nimport FooterSlimColumn from './footerSlimColumn';\r\nimport { defaultLinkedInUrl, FooterTrademark } from './footerTrademark';\r\n/*@formatter:off*/\r\nexport const FooterBase = styled.divBox `\n background-color: darkBlue.main;\n color: white;\n padding: 5 3;\n`;\r\n/*@formatter:on*/\r\n/** Branded Veracity Footer with trademark and links sections. Controls max-width of the content. */\r\nexport const Footer = vui((props, ref) => {\r\n const { applicationLinks, applicationSocialLinks = [], applicationStaticItems = [], children, className, columns, isApplication = false, isDNV = false, linkedIn, size, variant, isSlim, ...rest } = props;\r\n const context = { size, variant };\r\n const styles = useStyleConfig('Footer', props);\r\n if (isApplication) {\r\n if (!applicationLinks) {\r\n console.error('Footer: isApplication is true but applicationLinks is not set.');\r\n }\r\n }\r\n const slimLinks = [\r\n {\r\n id: 'home',\r\n text: 'veracity.com',\r\n url: 'https://www.veracity.com/'\r\n }\r\n ];\r\n columns?.map(column => {\r\n column.map(section => {\r\n section.links?.map(link => {\r\n if (!link)\r\n return;\r\n if (['home', 'support', 'status'].includes(link.id || '')) {\r\n slimLinks.push(link);\r\n }\r\n });\r\n });\r\n });\r\n const downMd = useDown('md');\r\n const downLg = useDown('lg');\r\n return (React.createElement(FooterProvider, { value: context },\r\n React.createElement(FooterBase, { className: cs('vui-footer', isApplication ? 'vui-footer-app' : '', className), px: isApplication ? '40px' : 3, py: isSlim ? (downMd ? '16px' : '9px') : 5, role: \"contentinfo\", ...styles.container, ref: ref, ...rest },\r\n isApplication && (React.createElement(FooterContent, { alignContent: \"center\", alignItems: \"center\", maxW: \"100%\" },\r\n React.createElement(FooterRow, { alignContent: \"space-between\", w: 1 },\r\n React.createElement(Box, { alignItems: \"self-start\", columnGap: 3, flex: { xs: '0 0 100%', sm: '0 0 100%', md: '0 0 100%', lg: '0 0 50%' }, py: { xs: 1, sm: 1, md: 1.25, lg: 1.5 }, wrap: true }, applicationLinks?.map((link, index) => (React.createElement(Box, { flex: { xs: '0 0 50%', sm: '0 0 auto' }, key: index },\r\n link.items && (React.createElement(Menu, { isLazy: false, offset: [-16, 9], placement: \"top-start\", size: \"lg\", ...rest },\r\n React.createElement(Menu.Button, { as: Link, className: \"vui-footerLink-trigger\", pt: \"3px\", role: \"button\", text: link.text, title: link.text, ...styles.link, ...rest }),\r\n React.createElement(Menu.List, { maxH: 400, right: 0, w: 320, ...styles.list }, link.items.map(({ text, url }, index) => (React.createElement(Menu.Item, { isTruncated: true, key: index, linkProps: { href: url }, text: text, title: text, ...styles.item })))))),\r\n !link.items && React.createElement(FooterLink, { ...link, href: link.url }))))),\r\n downLg && React.createElement(Divider, { borderColor: \"sandstone.main\", mb: 0.5, mt: 1, w: 1 }),\r\n React.createElement(Box, { centerV: true, columnGap: 3, flex: { xs: '0 0 100%', sm: '0 0 100%', md: '0 0 100%', lg: '0 0 50%' }, justifyContent: { sm: 'center', lg: 'flex-end' }, py: { xs: 1, sm: 1, md: 1.25, lg: 1.5 }, wrap: true },\r\n applicationStaticItems?.map((text, index) => (React.createElement(Box, { key: index },\r\n React.createElement(T, { size: \"sm\" }, text)))),\r\n isDNV ? (React.createElement(Box, null,\r\n React.createElement(T, { size: \"sm\" }, \"@ DNV AS 2021\"))) : (React.createElement(Box, null,\r\n React.createElement(T, { size: \"sm\" },\r\n React.createElement(T, { weight: \"demi\" }, \"Veracity by DNV\"),\r\n \", DNV AS\"))),\r\n React.createElement(Box, null,\r\n applicationSocialLinks?.map((link, index) => (React.createElement(Link, { fontWeight: \"demi\", href: link.url, iconLeft: React.createElement(Link.Icon, { name: `cubCircle${link.text}`, radius: \"50%\", size: \"xs\" }), isExternal: true, key: index, mr: 1, size: { _: 'sm', md: 'md' }, ...styles.link }))),\r\n React.createElement(Link, { fontWeight: \"demi\", href: linkedIn ?? defaultLinkedInUrl, isExternal: true, size: { _: 'sm', md: 'md' }, ...styles.link },\r\n React.createElement(FooterHeading, { fontSize: \"16px\", mb: 0, text: \"Follow us\" }))))))),\r\n !isApplication && isSlim && (React.createElement(FooterContent, { alignContent: \"center\", alignItems: \"center\", maxW: { xs: 343, sm: 305, md: 720, lg: 975 } },\r\n React.createElement(FooterRow, null,\r\n slimLinks.map((link, index) => {\r\n /** if the screen is small drop one specific link */\r\n if (downLg && link?.id === 'support')\r\n return;\r\n return (React.createElement(FooterSlimColumn, { key: index },\r\n React.createElement(FooterLink, { ...link })));\r\n }),\r\n downMd && React.createElement(Divider, { borderColor: \"sandstone.main\", mb: 0.5, mt: 1, w: 1 }),\r\n React.createElement(FooterSlimColumn, { centerV: true },\r\n React.createElement(T, { size: \"xs\" },\r\n React.createElement(T, { weight: \"demi\" }, \"Veracity by DNV\"),\r\n \", DNV AS\")),\r\n React.createElement(FooterSlimColumn, null,\r\n React.createElement(Link, { fontWeight: \"demi\", href: linkedIn ?? defaultLinkedInUrl, iconLeft: React.createElement(Link.Icon, { mr: 1, name: \"cubCircleLinkedIn\", radius: \"50%\", size: \"xs\" }), isExternal: true, size: { _: 'sm', md: 'md' }, ...styles.link },\r\n React.createElement(FooterHeading, { fontSize: \"16px\", mb: 0, text: \"Follow us\" })))))),\r\n !isApplication && !isSlim && (React.createElement(FooterContent, null,\r\n children ??\r\n (columns && (React.createElement(FooterRow, null, columns.map((sections, index) => (React.createElement(FooterColumn, { key: index, sections: sections })))))),\r\n children || columns ? React.createElement(Divider, { borderColor: \"sandstone.main\", my: 4 }) : null,\r\n React.createElement(FooterRow, null,\r\n React.createElement(FooterTrademark, { linkedIn: linkedIn })))))));\r\n});\r\nFooter.Column = FooterColumn;\r\nFooter.Content = FooterContent;\r\nFooter.Heading = FooterHeading;\r\nFooter.Link = FooterLink;\r\nFooter.Row = FooterRow;\r\nFooter.Section = FooterSection;\r\nFooter.displayName = 'Footer';\r\nexport default Footer;\r\n","import { createContext } from '../utils';\r\nconst [HeaderProvider, useHeaderContext] = createContext({ isOptional: true });\r\nexport { HeaderProvider, useHeaderContext };\r\n","import React from 'react';\r\nimport Avatar from '../avatar';\r\nimport Box from '../box';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport T from '../t';\r\nimport { cs } from '../utils';\r\nimport { useHeaderContext } from './context';\r\n/** Displays user information, like username and company name, within HeaderAccount part. */\r\nexport const HeaderAccountUserInfo = vui((props, ref) => {\r\n const { children, className, color, companyName, displayName, isApplication, role, ...rest } = props;\r\n const styles = useStyleConfig('Header', useHeaderContext());\r\n const localColor = color || styles.accountUserInfo.color || 'darkBlue.main';\r\n return (React.createElement(Box, { className: cs('vui-headerAccountUserInfo', className), p: 2, pb: 1, ref: ref, spaceX: 2, ...styles.accountUserInfo, ...rest, lineHeight: isApplication ? '18px' : 'inherit', pr: isApplication ? 0 : 'inherit', textAlign: isApplication ? 'right' : 'inherit' }, children ?? (React.createElement(React.Fragment, null,\r\n !isApplication && (React.createElement(Avatar, { className: \"vui-headerAccountUserInfoAvatar\", name: displayName, size: \"xl\", variant: \"solidDarkBlue\" })),\r\n React.createElement(Box, { column: true, rowGap: role ? 0 : 0.5 },\r\n displayName && (React.createElement(T, { color: localColor, fontSize: isApplication ? '12px' : 'inherit', isTruncated: true, pr: 1, title: displayName, weight: \"demi\" }, displayName)),\r\n companyName && (React.createElement(T, { color: localColor, fontSize: isApplication ? '12px' : 'inherit', isTruncated: true, pr: 1, title: companyName }, companyName)),\r\n role && (React.createElement(T, { color: localColor, fontSize: isApplication ? '12px' : 'inherit', isTruncated: true, opacity: 0.5, pr: 1, title: role }, role)))))));\r\n});\r\nHeaderAccountUserInfo.displayName = 'HeaderAccountUserInfo';\r\nexport default HeaderAccountUserInfo;\r\n","import React, { Fragment } from 'react';\r\nimport Avatar from '../avatar';\r\nimport { useStyleConfig } from '../core';\r\nimport List from '../list';\r\nimport Popover from '../popover';\r\nimport { isJsx, isObject } from '../utils';\r\nimport { useHeaderContext } from './context';\r\nimport HeaderAccountUserInfo from './headerAccountUserInfo';\r\n/** Disables popper's dynamic re-positioning */\r\n/** Displays user account information and helpful links, like settings or logout. */\r\nexport function HeaderAccount(props) {\r\n const { contentProps, options = {}, sections, triggerProps, userInfo, ...rest } = props;\r\n const { isMobile } = useHeaderContext();\r\n const styles = useStyleConfig('Header', useHeaderContext()).account;\r\n const name = isObject(userInfo) ? userInfo.displayName : '';\r\n const variant = styles?.trigger?.variant ?? 'solidDarkBlue';\r\n const offsetX = isMobile ? 64 : 39;\r\n return (React.createElement(Popover, { isLazy: false, offset: [offsetX, 16], placement: \"bottom-end\", ...rest },\r\n React.createElement(Popover.Trigger, { as: Avatar, className: \"vui-headerAccountTrigger\", isInteractive: true, ml: 1, name: name, role: \"button\", size: \"lg\", title: \"Account\", variant: variant, ...styles.trigger, ...triggerProps }),\r\n React.createElement(Popover.Content, { borderRadius: 0, className: \"vui-headerAccountContent\", column: true, ...styles.content, w: isMobile ? 280 : 320, ...contentProps },\r\n isJsx(userInfo) ? userInfo : userInfo && React.createElement(HeaderAccountUserInfo, { ...userInfo }),\r\n isJsx(sections)\r\n ? sections\r\n : sections && (React.createElement(List, { className: \"vui-headerAccountList\", mb: 2 }, sections.map(({ heading, links }, index) => (React.createElement(Fragment, { key: index },\r\n React.createElement(List.Divider, null),\r\n heading && React.createElement(List.Heading, { text: heading }),\r\n links?.map(({ icon, url, ...rest }, index) => (React.createElement(List.Item, { iconLeft: icon, key: index, linkProps: { href: url }, ...rest })))))))))));\r\n}\r\nHeaderAccount.displayName = 'HeaderAccount';\r\nexport default HeaderAccount;\r\n","import React from 'react';\r\nimport { Box } from '../box';\r\nimport { useUp, vui } from '../core';\r\nimport { Heading } from '../heading';\r\nimport { cs } from '../utils';\r\n/** Logo displayed in the left corner of the Header. */\r\nexport const HeaderApplicationName = vui((props, ref) => {\r\n const { color, title, url, ...rest } = props;\r\n const isTablet = useUp('md');\r\n const additionalClassName = isTablet ? 'vui-headerApplicationNameTablet' : 'vui-headerApplicationNameMobile';\r\n const mobileProps = isTablet\r\n ? {\r\n fontSize: 18,\r\n mt: 0\r\n }\r\n : {\r\n fontSize: 18,\r\n maxW: '156px',\r\n lineHeight: '21px'\r\n };\r\n const linkProps = url ? { as: 'a', href: url, outline: 'none', focusRing: 2 } : {};\r\n const localColor = color || 'darkBlue.main';\r\n return (React.createElement(Box, { ...linkProps },\r\n React.createElement(Heading, { className: cs('vui-headerApplicationName', additionalClassName), size: \"title\", ...rest, ...mobileProps, color: localColor }, title)));\r\n});\r\nHeaderApplicationName.displayName = 'HeaderApplicationName';\r\nexport default HeaderApplicationName;\r\n","import React from 'react';\r\nimport Box from '../box';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport { cs } from '../utils';\r\nimport { useHeaderContext } from './context';\r\n/** Controls max-width of the content and centers itself horizontally. */\r\nexport const HeaderContent = vui((props, ref) => {\r\n const { className, ...rest } = props;\r\n const styles = useStyleConfig('Header', useHeaderContext());\r\n return (React.createElement(Box, { centerV: true, className: cs('vui-headerContent', className), h: 1, mx: \"auto\", position: \"relative\", ref: ref, w: 1, ...styles.content, ...rest }));\r\n});\r\nHeaderContent.displayName = 'HeaderContent';\r\nexport default HeaderContent;\r\n","import React from 'react';\r\nimport Box from '../box';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport Link from '../link';\r\nimport T from '../t';\r\nimport { cs } from '../utils';\r\nimport { useHeaderContext } from './context';\r\n/** Text inviting to create an account when logged out. */\r\nexport const HeaderCreateAccount = vui((props, ref) => {\r\n const { children, className, url, ...rest } = props;\r\n const { isMobile, links } = useHeaderContext() ?? {};\r\n const styles = useStyleConfig('Header', useHeaderContext()).createAccount;\r\n const screenProps = isMobile ? { borderBottom: '1px solid sandstone.main', p: 2 } : { ml: 3 };\r\n const linkVariant = isMobile ? 'dark' : styles?.link?.variant ?? 'dark';\r\n return (React.createElement(Box, { className: cs('vui-headerCreateAccount', className), column: true, flexShrink: 0, ref: ref, ...styles.container, ...screenProps, ...rest }, children ?? (React.createElement(React.Fragment, null,\r\n React.createElement(T, { size: \"sm\", ...styles.text, color: isMobile ? 'darkBlue.main' : styles?.text?.color ?? 'darkBlue.main' }, \"New to Veracity?\"),\r\n React.createElement(Link, { fontWeight: \"medium\", href: url ?? links.signUp, isUnderlined: true, size: \"sm\", variant: linkVariant }, \"Create account\")))));\r\n});\r\nHeaderCreateAccount.displayName = 'HeaderCreateAccount';\r\nexport default HeaderCreateAccount;\r\n","import React from 'react';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport Divider from '../divider';\r\nimport { cs } from '../utils';\r\nimport { useHeaderContext } from './context';\r\n/** Vertical line dividing part of the Header content. */\r\nexport const HeaderDivider = vui((props, ref) => {\r\n const { className, ...rest } = props;\r\n const styles = useStyleConfig('Header', useHeaderContext());\r\n return (React.createElement(Divider, { borderColor: \"darkBlue.main\", className: cs('vui-headerDivider', className), h: 40, isVertical: true, ref: ref, ...styles.divider, ...rest }));\r\n});\r\nHeaderDivider.displayName = 'HeaderDivider';\r\nexport default HeaderDivider;\r\n","import React from 'react';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport List from '../list';\r\nimport { cs, useCallbackRef } from '../utils';\r\nimport { useHeaderContext } from './context';\r\n/** Individual link item of the Header. */\r\nexport const HeaderLinkItem = vui((props, ref) => {\r\n const { className, icon, isActive, linkProps, onClick: onClickProp, url, ...rest } = props;\r\n const { isMobile, setIsMobileOpen } = useHeaderContext() ?? {};\r\n const styles = useStyleConfig('Header', useHeaderContext()).linkItem;\r\n const onClick = useCallbackRef((e) => {\r\n setIsMobileOpen(false);\r\n onClickProp?.(e);\r\n });\r\n const linkActiveProps = isActive\r\n ? isMobile\r\n ? {\r\n bg: 'skyBlue.95',\r\n borderColor: 'seaBlue.main',\r\n borderLeftWidth: 3,\r\n hoverBg: 'skyBlue.90',\r\n pl: '10px',\r\n activeBorderBottomWidth: 0,\r\n pt: '0px'\r\n }\r\n : { borderBottomWidth: 4, pt: '4px' }\r\n : {};\r\n const linkMobileProps = isMobile\r\n ? {\r\n color: 'darkBlue.main',\r\n hoverColor: 'darkBlue.main',\r\n hoverBg: 'skyBlue.90',\r\n activeColor: 'darkBlue.main',\r\n activeBg: 'transparent',\r\n activeBorderColor: 'seaBlue.main',\r\n activeBorderLeftWidth: 0,\r\n pt: '0',\r\n activePl: isActive ? '13px' : '16px'\r\n }\r\n : { activeBorderBottomWidth: 0, pt: '0px', activePt: isActive ? '1px' : '0' };\r\n const itemScreenProps = isMobile ? {} : { display: 'inline-flex', fontWeight: 'medium', h: '100%' };\r\n return (React.createElement(List.Item, { className: cs('vui-headerLinkItem', className), iconLeft: icon, linkProps: {\r\n href: url,\r\n ringInset: true,\r\n transition: 'all 0.1s, border-width 0s, padding 0s',\r\n w: { xs: '100%', lg: 'max-content' },\r\n ...styles.link,\r\n ...linkProps,\r\n ...linkMobileProps,\r\n ...linkActiveProps\r\n }, onClick: onClick, ref: ref, ...itemScreenProps, ...styles.container, ...rest }));\r\n});\r\nHeaderLinkItem.displayName = 'HeaderLinkItem';\r\nexport default HeaderLinkItem;\r\n","import React from 'react';\r\nimport Box from '../box';\r\nimport { cdnUrl, vui } from '../core';\r\nimport Svg from '../svg';\r\nimport { cs } from '../utils';\r\nconst veracityLogo = `${cdnUrl}/common/icons/logos/veracity-logo.svg`;\r\nconst dnvLogo = `${cdnUrl}/common/icons/logos/dnv-logo.svg`;\r\n/** Brand logo. */\r\nexport const Logo = vui((props, ref) => {\r\n const { brand, children, className, src, styles, url, ...rest } = props;\r\n let svgSrc = src;\r\n if (!svgSrc)\r\n svgSrc = brand === 'dnv' ? dnvLogo : veracityLogo;\r\n const linkProps = url ? { as: 'a', href: url, outline: 'none', focusRing: 2 } : {};\r\n return (React.createElement(Box, { centerV: true, className: cs('vui-logo', className), flexShrink: 0, h: 40, mr: 2, ref: ref, ...styles?.container, ...linkProps, ...rest }, children ?? React.createElement(Svg, { \"aria-label\": \"logo\", h: \"100%\", src: svgSrc, ...styles?.svg })));\r\n});\r\nLogo.displayName = 'Logo';\r\nexport default Logo;\r\n","import React from 'react';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport { Logo } from '../logo';\r\nimport { useHeaderContext } from './context';\r\n/** Logo displayed in the left corner of the Header. */\r\nexport const HeaderLogo = vui((props, ref) => {\r\n const { brand, children, className, src, url, ...rest } = props;\r\n const { links } = useHeaderContext() ?? {};\r\n const styles = useStyleConfig('Header', useHeaderContext()).logo;\r\n const logoUrl = url ?? links.home;\r\n return (React.createElement(Logo, { brand: brand, className: className, ref: ref, src: src, styles: styles, url: logoUrl, ...rest }, children));\r\n});\r\nHeaderLogo.displayName = 'HeaderLogo';\r\nexport default HeaderLogo;\r\n","import React from 'react';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport List from '../list';\r\nimport { cs } from '../utils';\r\nimport { useHeaderContext } from './context';\r\nimport HeaderLinkItem from './headerLinkItem';\r\n/** List of Header Links. */\r\nexport const HeaderMainLinks = vui((props, ref) => {\r\n const { children, className, links, ...rest } = props;\r\n const { isMobile } = useHeaderContext() ?? {};\r\n const styles = useStyleConfig('Header', useHeaderContext());\r\n const screenStyles = isMobile\r\n ? {\r\n flexDirection: 'column',\r\n mb: 1\r\n }\r\n : { h: '100%' };\r\n return (React.createElement(List, { className: cs('vui-headerMainLinks', className), display: \"flex\", ref: ref, ...styles.mainLinks, ...screenStyles, ...rest }, children ?? links?.map((link, index) => React.createElement(HeaderLinkItem, { key: index, ...link }))));\r\n});\r\nHeaderMainLinks.displayName = 'HeaderMainLinks';\r\nexport default HeaderMainLinks;\r\n","import React from 'react';\r\nimport Box from '../box';\r\nimport { useStyleConfig, useUp, vui } from '../core';\r\nimport { cs, mergeRefs } from '../utils';\r\nimport { useHeaderContext } from './context';\r\n/** Displays part of the Header content when on a mobile screen. */\r\nexport const HeaderMobileContent = vui((props, ref) => {\r\n const { className, ...rest } = props;\r\n const { isMobileOpen, mobileContentRef } = useHeaderContext() ?? {};\r\n const styles = useStyleConfig('Header', useHeaderContext());\r\n const islargerThanTablet = useUp('lg');\r\n return isMobileOpen ? (React.createElement(Box, { bg: \"white\", className: cs('vui-headerMobileContent', className), column: true, overflowX: \"hidden\", overflowY: \"auto\", position: \"absolute\", ref: mergeRefs(ref, mobileContentRef), right: islargerThanTablet ? '-40px' : '-16px', shadow: 2, top: \"calc(100% + 1px)\", w: islargerThanTablet ? 320 : 280, zIndex: \"100\", ...styles.mobileContent, ...rest })) : null;\r\n});\r\nHeaderMobileContent.displayName = 'HeaderMobileContent';\r\nexport default HeaderMobileContent;\r\n","import React from 'react';\r\nimport { IconButton } from '../button';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport Icon from '../icon';\r\nimport { cs, mergeRefs } from '../utils';\r\nimport { useHeaderContext } from './context';\r\n/** Button that toggles display of the mobile content. */\r\nexport const HeaderMobileToggle = vui((props, ref) => {\r\n const { className, ...rest } = props;\r\n const { isMobileOpen, mobileToggleRef, setIsMobileOpen } = useHeaderContext() ?? {};\r\n const styles = useStyleConfig('Header', useHeaderContext());\r\n const iconName = isMobileOpen ? 'falTimes' : 'falBars';\r\n return (React.createElement(IconButton, { className: cs('vui-headerMobileToggle', className), icon: React.createElement(Icon, { name: iconName }), ml: 1, onClick: () => setIsMobileOpen(s => !s), p: \"3px\", ref: mergeRefs(ref, mobileToggleRef), title: \"More options\", ...styles.mobileToggle, ...rest }));\r\n});\r\nHeaderMobileToggle.displayName = 'HeaderMobileToggle';\r\nexport default HeaderMobileToggle;\r\n","import React from 'react';\r\nimport Button from '../button';\r\nimport { styled, useStyleConfig, vui } from '../core';\r\nimport { cs } from '../utils';\r\nimport { useHeaderContext } from './context';\r\n/*@formatter:off*/\r\nconst Badge = styled.spanBox `\n align-items: center;\n background-color: energyRed.45;\n border-radius: round;\n color: white;\n display: flex;\n font-size: 12px;\n font-weight: medium;\n height: 20px;\n justify-content: center;\n position: absolute;\n right: 1px;\n top: 1px;\n min-width: 20px;\n`;\r\n/*@formatter:on*/\r\n/** Icon link to Veracity notifications engine with an optional number of new notifications. */\r\nexport const HeaderNotifications = vui((props, ref) => {\r\n const { children, className, count = 0, url, ...rest } = props;\r\n const { links } = useHeaderContext() ?? {};\r\n const styles = useStyleConfig('Header', useHeaderContext()).notifications;\r\n return (React.createElement(Button, { as: \"a\", className: cs('vui-headerNotifications', className), href: url ?? links.notifications, minW: 0, position: \"relative\", px: \"9px\", ref: ref, size: \"lg\", title: \"Notifications\", variant: \"tertiaryDark\", ...styles.container, ...rest }, children ?? (React.createElement(React.Fragment, null,\r\n React.createElement(Button.Icon, { name: \"falBell\" }),\r\n count > 0 && (React.createElement(Badge, { px: count < 9 ? '0' : '4px', right: count < 9 ? 1 : 0 }, count < 100 ? count : '99+'))))));\r\n});\r\nHeaderNotifications.displayName = 'HeaderNotifications';\r\nexport default HeaderNotifications;\r\n","import React from 'react';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport Link from '../link';\r\nimport P from '../p';\r\nimport { cs } from '../utils';\r\nimport { useHeaderContext } from './context';\r\n/** Displays a message with link to Marketplace if user has no services available. */\r\nexport const HeaderServicesMessage = vui((props, ref) => {\r\n const { children, className, ...rest } = props;\r\n const { links } = useHeaderContext() ?? {};\r\n const styles = useStyleConfig('Header', useHeaderContext());\r\n return (React.createElement(P, { className: cs('vui-headerServicesMessage', className), mb: 2, ml: 2, ref: ref, ...styles.servicesMessage, ...rest }, children ?? (React.createElement(React.Fragment, null,\r\n \"No services available. \",\r\n React.createElement(\"br\", null),\r\n \"Explore more on the\",\r\n ' ',\r\n React.createElement(Link, { href: links?.marketplace, isUnderlined: true }, \"marketplace\"),\r\n \".\"))));\r\n});\r\nHeaderServicesMessage.displayName = 'HeaderServicesMessage';\r\nexport default HeaderServicesMessage;\r\n","import React from 'react';\r\nimport { RenderOnScreen, useStyleConfig } from '../core';\r\nimport List from '../list';\r\nimport Menu from '../menu';\r\nimport { useHeaderContext } from './context';\r\nimport HeaderServicesMessage from './headerServicesMessage';\r\n/** Supporting internal component to avoid code duplication. */\r\nfunction ListContent({ links = [] }) {\r\n const styles = useStyleConfig('Header', useHeaderContext()).services;\r\n return (React.createElement(React.Fragment, null, links.length > 0 ? (links.map(({ text, url }, index) => (React.createElement(Menu.Item, { isTruncated: true, key: index, linkProps: { href: url }, text: text, title: text, ...styles.item })))) : (React.createElement(HeaderServicesMessage, null))));\r\n}\r\n/** Displays a list of services available to the user. */\r\nexport function HeaderServices(props) {\r\n const { buttonProps, isApplication = false, links = [], showTopBorder = false, ...rest } = props;\r\n const styles = useStyleConfig('Header', useHeaderContext()).services;\r\n const offsetX = isApplication ? 179 : 135;\r\n return (React.createElement(React.Fragment, null,\r\n React.createElement(RenderOnScreen, { minWidth: \"lg\" },\r\n React.createElement(Menu, { isLazy: false, offset: [offsetX, 17], placement: \"bottom-end\", size: \"lg\", ...rest },\r\n React.createElement(Menu.Button, { className: \"vui-services-trigger\", icon: \"falTh\", ml: 1, size: \"lg\", title: \"My services\", ...styles.button, ...buttonProps }),\r\n React.createElement(Menu.List, { heading: \"My Services\", maxH: 295, right: 0, w: 320, ...styles.list },\r\n React.createElement(ListContent, { links: links })))),\r\n React.createElement(RenderOnScreen, { maxWidth: \"lg\" },\r\n React.createElement(List, { heading: \"My Services\", ...styles.list, borderTop: showTopBorder ? 1 : 0, borderTopColor: \"sandstone.main\", maxH: 295, pt: 1 },\r\n React.createElement(ListContent, { links: links })))));\r\n}\r\nHeaderServices.displayName = 'HeaderServices';\r\nexport default HeaderServices;\r\n","import React from 'react';\r\nimport Button from '../button';\r\nimport { useStyleConfig, vui } from '../core';\r\nimport { cs } from '../utils';\r\nimport { useHeaderContext } from './context';\r\n/** Sign in button leading to Veracity login page. */\r\nexport const HeaderSignIn = vui((props, ref) => {\r\n const { children, className, url, ...rest } = props;\r\n const { links } = useHeaderContext() ?? {};\r\n const styles = useStyleConfig('Header', useHeaderContext());\r\n const buttonVariant = styles?.signIn?.button?.variant ?? 'primaryDark';\r\n return (React.createElement(Button, { as: \"a\", className: cs('vui-headerSignIn', className), href: url ?? links.signIn, ref: ref, size: \"lg\", variant: buttonVariant, ...styles.signIn, ...rest }, children ?? 'Sign in'));\r\n});\r\nHeaderSignIn.displayName = 'HeaderSignIn';\r\nexport default HeaderSignIn;\r\n","import React from 'react';\r\nimport { useDown, useStyleConfig } from '../core';\r\nimport Menu from '../menu';\r\nimport { useHeaderContext } from './context';\r\n/** Supporting internal component to avoid code duplication. */\r\nfunction ListContent({ links = [] }) {\r\n const styles = useStyleConfig('Header', useHeaderContext()).services;\r\n return (React.createElement(React.Fragment, null,\r\n React.createElement(Menu.Item, { isTruncated: true, key: \"veracity-support\", linkProps: { href: 'https://support.veracity.com/' }, text: \"Veracity support\", title: \"Veracity support\", ...styles.item }),\r\n React.createElement(Menu.Item, { isTruncated: true, key: \"veracity-terms\", linkProps: { href: 'https://id.veracity.com/terms-of-use' }, text: \"Veracity terms\", title: \"Veracity terms\", ...styles.item }),\r\n React.createElement(Menu.Item, { isTruncated: true, key: \"privacy\", linkProps: { href: 'https://services.veracity.com/PrivacyStatement' }, text: \"Privacy\", title: \"Privacy\", ...styles.item }),\r\n links.length > 0 &&\r\n links.map(({ text, url }, index) => (React.createElement(Menu.Item, { isTruncated: true, key: index, linkProps: { href: url }, text: text, title: text, ...styles.item })))));\r\n}\r\n/** Displays a list of services available to the user. */\r\nexport function HeaderSupport(props) {\r\n const { links = [], ...rest } = props;\r\n const styles = useStyleConfig('Header', useHeaderContext()).services;\r\n const isTablet = useDown('lg');\r\n const offsetX = isTablet ? 162 : 135;\r\n return (React.createElement(React.Fragment, null,\r\n React.createElement(Menu, { isLazy: false, offset: [offsetX, 16], placement: \"bottom-end\", size: \"lg\", ...rest },\r\n React.createElement(Menu.Button, { className: \"vui-app-info-trigger\", color: styles.button.color, icon: \"falQuestionCircle\", ml: 1, size: \"lg\", title: \"Support\", ...styles.button }),\r\n React.createElement(Menu.List, { maxH: 295, right: 0, w: isTablet ? 280 : 320, ...styles.list },\r\n React.createElement(ListContent, { links: links })))));\r\n}\r\nHeaderSupport.displayName = 'HeaderSupport';\r\nexport default HeaderSupport;\r\n","import React, { useRef, useState } from 'react';\r\nimport { styled, useLinks, useStyleConfig, useUp, vui } from '../core';\r\nimport { cs, useClickOutside } from '../utils';\r\nimport { HeaderProvider } from './context';\r\nimport HeaderAccount from './headerAccount';\r\nimport HeaderAccountUserInfo from './headerAccountUserInfo';\r\nimport HeaderApplicationName from './headerApplicationName';\r\nimport HeaderContent from './headerContent';\r\nimport HeaderCreateAccount from './headerCreateAccount';\r\nimport HeaderDivider from './headerDivider';\r\nimport HeaderLinkItem from './headerLinkItem';\r\nimport HeaderLogo from './headerLogo';\r\nimport HeaderMainLinks from './headerMainLinks';\r\nimport HeaderMobileContent from './headerMobileContent';\r\nimport HeaderMobileToggle from './headerMobileToggle';\r\nimport HeaderNotifications from './headerNotifications';\r\nimport HeaderServices from './headerServices';\r\nimport HeaderServicesMessage from './headerServicesMessage';\r\nimport HeaderSignIn from './headerSignIn';\r\nimport HeaderSupport from './headerSupport';\r\n/*@formatter:off*/\r\nexport const HeaderBase = styled.headerBox `\n align-items: center;\n background-color: white;\n border-bottom: 1px solid darkBlue.main;\n display: flex;\n position: relative;\n`;\r\n/*@formatter:on*/\r\n/** Branded Veracity Header with logo, links, services, account and other data. Controls max-width of the content. */\r\nexport const Header = vui((props, ref) => {\r\n const { className, isSticky, size, variant, ...rest } = props;\r\n const [isMobileOpen, setIsMobileOpen] = useState(false);\r\n const mobileContentRef = useRef(null);\r\n const mobileToggleRef = useRef(null);\r\n const styles = useStyleConfig('Header', props);\r\n const headerHeight = 72;\r\n const [links] = useLinks();\r\n useClickOutside([mobileContentRef, mobileToggleRef], () => {\r\n setIsMobileOpen(false);\r\n });\r\n const isDesktop = useUp('lg');\r\n const isMobile = !isDesktop;\r\n const context = {\r\n headerHeight,\r\n isDesktop,\r\n isMobile,\r\n isMobileOpen,\r\n links,\r\n mobileContentRef,\r\n mobileToggleRef,\r\n setIsMobileOpen,\r\n size,\r\n variant\r\n };\r\n return (React.createElement(HeaderProvider, { value: context },\r\n React.createElement(HeaderBase, { className: cs('vui-header', className), h: headerHeight, position: isSticky ? 'sticky' : 'static', px: { xs: 2, lg: 5 }, ref: ref, role: \"banner\", top: isSticky ? 0 : 'auto', ...styles.container, ...rest })));\r\n});\r\nHeader.Account = HeaderAccount;\r\nHeader.AccountUserInfo = HeaderAccountUserInfo;\r\nHeader.Support = HeaderSupport;\r\nHeader.ApplicationName = HeaderApplicationName;\r\nHeader.Content = HeaderContent;\r\nHeader.CreateAccount = HeaderCreateAccount;\r\nHeader.Divider = HeaderDivider;\r\nHeader.LinkItem = HeaderLinkItem;\r\nHeader.Logo = HeaderLogo;\r\nHeader.MainLinks = HeaderMainLinks;\r\nHeader.MobileContent = HeaderMobileContent;\r\nHeader.MobileToggle = HeaderMobileToggle;\r\nHeader.Notifications = HeaderNotifications;\r\nHeader.Services = HeaderServices;\r\nHeader.ServicesMessage = HeaderServicesMessage;\r\nHeader.SignIn = HeaderSignIn;\r\nHeader.displayName = 'Header';\r\nexport default Header;\r\n","import { useEffect, useState } from 'react';\r\nimport { cdnUrls, useLinks } from '../core';\r\nimport { isObject } from '../utils';\r\n/** Loads templates for Header links and enriches them with urls from LinksContext. */\r\nexport function useHeaderLinks(env) {\r\n const [templates, setTemplates] = useState({});\r\n const [links] = useLinks();\r\n useEffect(() => {\r\n loadHeaderlinks();\r\n async function loadHeaderlinks() {\r\n try {\r\n const response = await fetch(`${cdnUrls[env]}/common/data/links/header.json`);\r\n if (!response.ok)\r\n return;\r\n const data = await response.json();\r\n if (isObject(data))\r\n setTemplates(data);\r\n }\r\n catch {\r\n console.error('Failed to retrieve header data.');\r\n }\r\n }\r\n }, [env]);\r\n const accountSections = templates.accountSections?.map(section => {\r\n return { ...section, links: section.links?.map(link => ({ ...link, url: links[link?.id ?? ''] })) };\r\n });\r\n const mainLinks = templates.mainLinks?.map(link => ({\r\n ...link,\r\n url: links[link?.id ?? '']\r\n }));\r\n return { accountSections, mainLinks };\r\n}\r\n","import React from 'react';\r\nimport Box from '../box';\r\nimport { RenderOnScreen, vui } from '../core';\r\nimport { cs, isJsx } from '../utils';\r\nimport Header from './header';\r\n/** Displays Header content appropriate for logged out users, such as sign in button or create account prompt. */\r\nexport const LoggedOutHeader = vui((props, ref) => {\r\n const { children, className, createAccount, logo, mainLinks, signIn, ...rest } = props;\r\n return (React.createElement(Header, { className: cs('vui-loggedOutHeader', className), ref: ref, ...rest },\r\n React.createElement(Header.Content, null,\r\n isJsx(logo) ? logo : React.createElement(Header.Logo, { ...logo }),\r\n React.createElement(RenderOnScreen, { minWidth: \"lg\" }, children),\r\n React.createElement(Box, { ml: \"auto\" }),\r\n React.createElement(RenderOnScreen, { minWidth: \"lg\" },\r\n isJsx(mainLinks) ? mainLinks : React.createElement(Header.MainLinks, { links: mainLinks }),\r\n mainLinks !== undefined && React.createElement(Header.Divider, { ml: 1, mr: 3 }),\r\n isJsx(signIn) ? signIn : React.createElement(Header.SignIn, { ...signIn }),\r\n isJsx(createAccount) ? createAccount : React.createElement(Header.CreateAccount, { ...createAccount })),\r\n React.createElement(RenderOnScreen, { maxWidth: \"lg\" },\r\n isJsx(signIn) ? signIn : React.createElement(Header.SignIn, { ...signIn }),\r\n React.createElement(Header.Divider, { ml: 2 }),\r\n React.createElement(Header.MobileToggle, null),\r\n React.createElement(Header.MobileContent, null,\r\n children,\r\n isJsx(createAccount) ? createAccount : React.createElement(Header.CreateAccount, { ...createAccount }),\r\n isJsx(mainLinks) ? mainLinks : React.createElement(Header.MainLinks, { links: mainLinks }))))));\r\n});\r\nLoggedOutHeader.displayName = 'LoggedOutHeader';\r\nexport default LoggedOutHeader;\r\n","export const spinnerPositionMapping = {\r\n bottom: {\r\n container: { flexDirection: 'column' }\r\n },\r\n left: {\r\n container: { flexDirection: 'row-reverse' }\r\n },\r\n right: {\r\n container: { flexDirection: 'row' }\r\n },\r\n top: {\r\n container: { flexDirection: 'column-reverse' }\r\n }\r\n};\r\nexport const spinnerSpeedMapping = {\r\n slow: '1s',\r\n normal: '0.9s',\r\n fast: '0.8s'\r\n};\r\n","import React from 'react';\r\nimport Box from '../box';\r\nimport { styled, useStyleConfig, vui } from '../core';\r\nimport T from '../t';\r\nimport { cs, filterUndefined } from '../utils';\r\nimport { spinnerPositionMapping, spinnerSpeedMapping } from './consts';\r\nexport const SpinnerCircle = styled.divBox `\n border-radius: round;\n display: flex;\n flex-shrink: 0;\n`;\r\n/**\r\n * Displays a spinning circular element with optional text to signify loading content.\r\n *\r\n * Handles different positioning scenarios, speeds and coloring of the circle.\r\n */\r\nexport const Spinner = vui((props, ref) => {\r\n const { className, emptyColor, size, speed: speedProp = 'normal', text, textPosition = 'bottom', thickness, ...rest } = props;\r\n const styles = useStyleConfig('Spinner', props);\r\n const isCustomSize = typeof size === 'number';\r\n const positionProps = spinnerPositionMapping[textPosition];\r\n const speed = spinnerSpeedMapping[speedProp] ?? speedProp;\r\n const circleProps = filterUndefined({\r\n borderColor: emptyColor,\r\n borderWidth: isCustomSize ? thickness ?? 4 : thickness,\r\n h: isCustomSize ? size : undefined,\r\n w: isCustomSize ? size : undefined\r\n });\r\n return (React.createElement(Box, { center: true, className: cs('vui-spinner', className), gap: 1, ref: ref, transitionDuration: \"fast\", ...positionProps.container, ...styles.container, ...rest },\r\n React.createElement(SpinnerCircle, { animation: `vui-spin ${speed} linear infinite`, className: \"vui-spinnerCircle\", ...styles.circle, ...circleProps }),\r\n !!text && (React.createElement(T, { className: \"vui-spinnerText\", ...styles.text }, text))));\r\n});\r\nSpinner.displayName = 'Spinner';\r\nexport default Spinner;\r\n","import tippy, { createSingleton } from 'tippy.js';\nexport { default as tippy } from 'tippy.js';\nimport React, { useLayoutEffect, useEffect, useRef, useState, cloneElement, useMemo, forwardRef as forwardRef$1 } from 'react';\nimport { createPortal } from 'react-dom';\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nvar isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined';\nfunction preserveRef(ref, node) {\n if (ref) {\n if (typeof ref === 'function') {\n ref(node);\n }\n\n if ({}.hasOwnProperty.call(ref, 'current')) {\n ref.current = node;\n }\n }\n}\nfunction ssrSafeCreateDiv() {\n return isBrowser && document.createElement('div');\n}\nfunction toDataAttributes(attrs) {\n var dataAttrs = {\n 'data-placement': attrs.placement\n };\n\n if (attrs.referenceHidden) {\n dataAttrs['data-reference-hidden'] = '';\n }\n\n if (attrs.escaped) {\n dataAttrs['data-escaped'] = '';\n }\n\n return dataAttrs;\n}\n\nfunction deepEqual(x, y) {\n if (x === y) {\n return true;\n } else if (typeof x === 'object' && x != null && typeof y === 'object' && y != null) {\n if (Object.keys(x).length !== Object.keys(y).length) {\n return false;\n }\n\n for (var prop in x) {\n if (y.hasOwnProperty(prop)) {\n if (!deepEqual(x[prop], y[prop])) {\n return false;\n }\n } else {\n return false;\n }\n }\n\n return true;\n } else {\n return false;\n }\n}\n\nfunction uniqueByShape(arr) {\n var output = [];\n arr.forEach(function (item) {\n if (!output.find(function (outputItem) {\n return deepEqual(item, outputItem);\n })) {\n output.push(item);\n }\n });\n return output;\n}\nfunction deepPreserveProps(instanceProps, componentProps) {\n var _instanceProps$popper, _componentProps$poppe;\n\n return Object.assign({}, componentProps, {\n popperOptions: Object.assign({}, instanceProps.popperOptions, componentProps.popperOptions, {\n modifiers: uniqueByShape([].concat(((_instanceProps$popper = instanceProps.popperOptions) == null ? void 0 : _instanceProps$popper.modifiers) || [], ((_componentProps$poppe = componentProps.popperOptions) == null ? void 0 : _componentProps$poppe.modifiers) || []))\n })\n });\n}\n\nvar useIsomorphicLayoutEffect = isBrowser ? useLayoutEffect : useEffect;\nfunction useMutableBox(initialValue) {\n // Using refs instead of state as it's recommended to not store imperative\n // values in state due to memory problems in React(?)\n var ref = useRef();\n\n if (!ref.current) {\n ref.current = typeof initialValue === 'function' ? initialValue() : initialValue;\n }\n\n return ref.current;\n}\n\nfunction updateClassName(box, action, classNames) {\n classNames.split(/\\s+/).forEach(function (name) {\n if (name) {\n box.classList[action](name);\n }\n });\n}\n\nvar classNamePlugin = {\n name: 'className',\n defaultValue: '',\n fn: function fn(instance) {\n var box = instance.popper.firstElementChild;\n\n var isDefaultRenderFn = function isDefaultRenderFn() {\n var _instance$props$rende;\n\n return !!((_instance$props$rende = instance.props.render) == null ? void 0 : _instance$props$rende.$$tippy);\n };\n\n function add() {\n if (instance.props.className && !isDefaultRenderFn()) {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(['@tippyjs/react: Cannot use `className` prop in conjunction with', '`render` prop. Place the className on the element you are', 'rendering.'].join(' '));\n }\n\n return;\n }\n\n updateClassName(box, 'add', instance.props.className);\n }\n\n function remove() {\n if (isDefaultRenderFn()) {\n updateClassName(box, 'remove', instance.props.className);\n }\n }\n\n return {\n onCreate: add,\n onBeforeUpdate: remove,\n onAfterUpdate: add\n };\n }\n};\n\nfunction TippyGenerator(tippy) {\n function Tippy(_ref) {\n var children = _ref.children,\n content = _ref.content,\n visible = _ref.visible,\n singleton = _ref.singleton,\n render = _ref.render,\n reference = _ref.reference,\n _ref$disabled = _ref.disabled,\n disabled = _ref$disabled === void 0 ? false : _ref$disabled,\n _ref$ignoreAttributes = _ref.ignoreAttributes,\n ignoreAttributes = _ref$ignoreAttributes === void 0 ? true : _ref$ignoreAttributes,\n __source = _ref.__source,\n __self = _ref.__self,\n restOfNativeProps = _objectWithoutPropertiesLoose(_ref, [\"children\", \"content\", \"visible\", \"singleton\", \"render\", \"reference\", \"disabled\", \"ignoreAttributes\", \"__source\", \"__self\"]);\n\n var isControlledMode = visible !== undefined;\n var isSingletonMode = singleton !== undefined;\n\n var _useState = useState(false),\n mounted = _useState[0],\n setMounted = _useState[1];\n\n var _useState2 = useState({}),\n attrs = _useState2[0],\n setAttrs = _useState2[1];\n\n var _useState3 = useState(),\n singletonContent = _useState3[0],\n setSingletonContent = _useState3[1];\n\n var mutableBox = useMutableBox(function () {\n return {\n container: ssrSafeCreateDiv(),\n renders: 1\n };\n });\n var props = Object.assign({\n ignoreAttributes: ignoreAttributes\n }, restOfNativeProps, {\n content: mutableBox.container\n });\n\n if (isControlledMode) {\n if (process.env.NODE_ENV !== 'production') {\n ['trigger', 'hideOnClick', 'showOnCreate'].forEach(function (nativeStateProp) {\n if (props[nativeStateProp] !== undefined) {\n console.warn([\"@tippyjs/react: Cannot specify `\" + nativeStateProp + \"` prop in\", \"controlled mode (`visible` prop)\"].join(' '));\n }\n });\n }\n\n props.trigger = 'manual';\n props.hideOnClick = false;\n }\n\n if (isSingletonMode) {\n disabled = true;\n }\n\n var computedProps = props;\n var plugins = props.plugins || [];\n\n if (render) {\n computedProps = Object.assign({}, props, {\n plugins: isSingletonMode && singleton.data != null ? [].concat(plugins, [{\n fn: function fn() {\n return {\n onTrigger: function onTrigger(instance, event) {\n var node = singleton.data.children.find(function (_ref2) {\n var instance = _ref2.instance;\n return instance.reference === event.currentTarget;\n });\n instance.state.$$activeSingletonInstance = node.instance;\n setSingletonContent(node.content);\n }\n };\n }\n }]) : plugins,\n render: function render() {\n return {\n popper: mutableBox.container\n };\n }\n });\n }\n\n var deps = [reference].concat(children ? [children.type] : []); // CREATE\n\n useIsomorphicLayoutEffect(function () {\n var element = reference;\n\n if (reference && reference.hasOwnProperty('current')) {\n element = reference.current;\n }\n\n var instance = tippy(element || mutableBox.ref || ssrSafeCreateDiv(), Object.assign({}, computedProps, {\n plugins: [classNamePlugin].concat(props.plugins || [])\n }));\n mutableBox.instance = instance;\n\n if (disabled) {\n instance.disable();\n }\n\n if (visible) {\n instance.show();\n }\n\n if (isSingletonMode) {\n singleton.hook({\n instance: instance,\n content: content,\n props: computedProps,\n setSingletonContent: setSingletonContent\n });\n }\n\n setMounted(true);\n return function () {\n instance.destroy();\n singleton == null ? void 0 : singleton.cleanup(instance);\n };\n }, deps); // UPDATE\n\n useIsomorphicLayoutEffect(function () {\n var _instance$popperInsta;\n\n // Prevent this effect from running on 1st render\n if (mutableBox.renders === 1) {\n mutableBox.renders++;\n return;\n }\n\n var instance = mutableBox.instance;\n instance.setProps(deepPreserveProps(instance.props, computedProps)); // Fixes #264\n\n (_instance$popperInsta = instance.popperInstance) == null ? void 0 : _instance$popperInsta.forceUpdate();\n\n if (disabled) {\n instance.disable();\n } else {\n instance.enable();\n }\n\n if (isControlledMode) {\n if (visible) {\n instance.show();\n } else {\n instance.hide();\n }\n }\n\n if (isSingletonMode) {\n singleton.hook({\n instance: instance,\n content: content,\n props: computedProps,\n setSingletonContent: setSingletonContent\n });\n }\n });\n useIsomorphicLayoutEffect(function () {\n var _instance$props$poppe;\n\n if (!render) {\n return;\n }\n\n var instance = mutableBox.instance;\n instance.setProps({\n popperOptions: Object.assign({}, instance.props.popperOptions, {\n modifiers: [].concat((((_instance$props$poppe = instance.props.popperOptions) == null ? void 0 : _instance$props$poppe.modifiers) || []).filter(function (_ref3) {\n var name = _ref3.name;\n return name !== '$$tippyReact';\n }), [{\n name: '$$tippyReact',\n enabled: true,\n phase: 'beforeWrite',\n requires: ['computeStyles'],\n fn: function fn(_ref4) {\n var _state$modifiersData;\n\n var state = _ref4.state;\n var hideData = (_state$modifiersData = state.modifiersData) == null ? void 0 : _state$modifiersData.hide; // WARNING: this is a high-risk path that can cause an infinite\n // loop. This expression _must_ evaluate to false when required\n\n if (attrs.placement !== state.placement || attrs.referenceHidden !== (hideData == null ? void 0 : hideData.isReferenceHidden) || attrs.escaped !== (hideData == null ? void 0 : hideData.hasPopperEscaped)) {\n setAttrs({\n placement: state.placement,\n referenceHidden: hideData == null ? void 0 : hideData.isReferenceHidden,\n escaped: hideData == null ? void 0 : hideData.hasPopperEscaped\n });\n }\n\n state.attributes.popper = {};\n }\n }])\n })\n });\n }, [attrs.placement, attrs.referenceHidden, attrs.escaped].concat(deps));\n return /*#__PURE__*/React.createElement(React.Fragment, null, children ? /*#__PURE__*/cloneElement(children, {\n ref: function ref(node) {\n mutableBox.ref = node;\n preserveRef(children.ref, node);\n }\n }) : null, mounted && /*#__PURE__*/createPortal(render ? render(toDataAttributes(attrs), singletonContent, mutableBox.instance) : content, mutableBox.container));\n }\n\n return Tippy;\n}\n\nfunction useSingletonGenerator(createSingleton) {\n return function useSingleton(_temp) {\n var _ref = _temp === void 0 ? {} : _temp,\n _ref$disabled = _ref.disabled,\n disabled = _ref$disabled === void 0 ? false : _ref$disabled,\n _ref$overrides = _ref.overrides,\n overrides = _ref$overrides === void 0 ? [] : _ref$overrides;\n\n var _useState = useState(false),\n mounted = _useState[0],\n setMounted = _useState[1];\n\n var mutableBox = useMutableBox({\n children: [],\n renders: 1\n });\n useIsomorphicLayoutEffect(function () {\n if (!mounted) {\n setMounted(true);\n return;\n }\n\n var children = mutableBox.children,\n sourceData = mutableBox.sourceData;\n\n if (!sourceData) {\n if (process.env.NODE_ENV !== 'production') {\n console.error(['@tippyjs/react: The `source` variable from `useSingleton()` has', 'not been passed to a <Tippy /> component.'].join(' '));\n }\n\n return;\n }\n\n var instance = createSingleton(children.map(function (child) {\n return child.instance;\n }), Object.assign({}, sourceData.props, {\n popperOptions: sourceData.instance.props.popperOptions,\n overrides: overrides,\n plugins: [classNamePlugin].concat(sourceData.props.plugins || [])\n }));\n mutableBox.instance = instance;\n\n if (disabled) {\n instance.disable();\n }\n\n return function () {\n instance.destroy();\n mutableBox.children = children.filter(function (_ref2) {\n var instance = _ref2.instance;\n return !instance.state.isDestroyed;\n });\n };\n }, [mounted]);\n useIsomorphicLayoutEffect(function () {\n if (!mounted) {\n return;\n }\n\n if (mutableBox.renders === 1) {\n mutableBox.renders++;\n return;\n }\n\n var children = mutableBox.children,\n instance = mutableBox.instance,\n sourceData = mutableBox.sourceData;\n\n if (!(instance && sourceData)) {\n return;\n }\n\n var _sourceData$props = sourceData.props,\n content = _sourceData$props.content,\n props = _objectWithoutPropertiesLoose(_sourceData$props, [\"content\"]);\n\n instance.setProps(deepPreserveProps(instance.props, Object.assign({}, props, {\n overrides: overrides\n })));\n instance.setInstances(children.map(function (child) {\n return child.instance;\n }));\n\n if (disabled) {\n instance.disable();\n } else {\n instance.enable();\n }\n });\n return useMemo(function () {\n var source = {\n data: mutableBox,\n hook: function hook(data) {\n mutableBox.sourceData = data;\n mutableBox.setSingletonContent = data.setSingletonContent;\n },\n cleanup: function cleanup() {\n mutableBox.sourceData = null;\n }\n };\n var target = {\n hook: function hook(data) {\n var _mutableBox$instance, _mutableBox$instance2;\n\n mutableBox.children = mutableBox.children.filter(function (_ref3) {\n var instance = _ref3.instance;\n return data.instance !== instance;\n });\n mutableBox.children.push(data);\n\n if (((_mutableBox$instance = mutableBox.instance) == null ? void 0 : _mutableBox$instance.state.isMounted) && ((_mutableBox$instance2 = mutableBox.instance) == null ? void 0 : _mutableBox$instance2.state.$$activeSingletonInstance) === data.instance) {\n mutableBox.setSingletonContent == null ? void 0 : mutableBox.setSingletonContent(data.content);\n }\n\n if (mutableBox.instance && !mutableBox.instance.state.isDestroyed) {\n mutableBox.instance.setInstances(mutableBox.children.map(function (child) {\n return child.instance;\n }));\n }\n },\n cleanup: function cleanup(instance) {\n mutableBox.children = mutableBox.children.filter(function (data) {\n return data.instance !== instance;\n });\n\n if (mutableBox.instance && !mutableBox.instance.state.isDestroyed) {\n mutableBox.instance.setInstances(mutableBox.children.map(function (child) {\n return child.instance;\n }));\n }\n }\n };\n return [source, target];\n }, []);\n };\n}\n\nvar forwardRef = (function (Tippy, defaultProps) {\n return /*#__PURE__*/forwardRef$1(function TippyWrapper(_ref, _ref2) {\n var children = _ref.children,\n props = _objectWithoutPropertiesLoose(_ref, [\"children\"]);\n\n return (\n /*#__PURE__*/\n // If I spread them separately here, Babel adds the _extends ponyfill for\n // some reason\n React.createElement(Tippy, Object.assign({}, defaultProps, props), children ? /*#__PURE__*/cloneElement(children, {\n ref: function ref(node) {\n preserveRef(_ref2, node);\n preserveRef(children.ref, node);\n }\n }) : null)\n );\n });\n});\n\nvar useSingleton = /*#__PURE__*/useSingletonGenerator(createSingleton);\nvar index = /*#__PURE__*/forwardRef( /*#__PURE__*/TippyGenerator(tippy));\n\nexport default index;\nexport { useSingleton };\n//# sourceMappingURL=tippy-react.esm.js.map\n","export const pointerSize = 12;\r\nexport const bg = 'darkBlue.18';\r\nexport const borderRaduis = 1;\r\nexport const boxShadow = 2;\r\nexport const pointerPlacement = {\r\n top: {\r\n top: 'auto',\r\n bottom: `-${pointerSize / 2}px`,\r\n left: '50%',\r\n right: 'auto',\r\n translate: '-50%, 0'\r\n },\r\n bottom: {\r\n top: `-${pointerSize / 2}px`,\r\n bottom: 'auto',\r\n left: '50%',\r\n right: 'auto',\r\n translate: '-50%, 0'\r\n },\r\n left: {\r\n top: `50%`,\r\n bottom: 'auto',\r\n left: 'auto',\r\n right: '-4px',\r\n translate: '-50%, -50%'\r\n },\r\n right: {\r\n top: `50%`,\r\n bottom: 'auto',\r\n left: '2px',\r\n right: 'auto',\r\n translate: '0, -50%'\r\n }\r\n};\r\n","import React from 'react';\r\nimport Box from '../box';\r\nimport { bg, borderRaduis, boxShadow } from './consts';\r\nexport const TooltipContent = ({ children, fontSize = '16px', maxWidth = '400px' }) => (React.createElement(Box, { bg: bg, borderRadius: borderRaduis, boxShadow: boxShadow, className: \"vui-tooltip-content\", color: \"white\", fontSize: fontSize, m: 1, maxW: maxWidth, overflowY: \"auto\", p: 1, pl: 2, pr: 2 }, children));\r\nTooltipContent.displayName = 'TooltipContent';\r\n","import Tippy from '@tippyjs/react';\r\nimport React from 'react';\r\nimport Box from '../box';\r\nimport { useUp, v } from '../core';\r\nimport { Link } from '../link';\r\nimport { bg, pointerPlacement, pointerSize } from './consts';\r\nimport { TooltipContent } from './tooltipContent';\r\n/**\r\n * A simple text popup hint.\r\n *\r\n * Displayed on mouse enter, and is hidden on mouse leave.\r\n *\r\n * */\r\nexport const Tooltip = (props) => {\r\n const { children, fontSize = '16px', linkText, linkProps, maxWidth = '400px', text = 'Tooltip', placement = 'top' } = props;\r\n const isDesktop = useUp('md');\r\n return (React.createElement(Tippy, { content: React.createElement(TooltipContent, { fontSize: fontSize, maxWidth: maxWidth },\r\n isDesktop && (React.createElement(Box, { bg: bg, bottom: pointerPlacement[placement].bottom, h: `${pointerSize}px`, left: pointerPlacement[placement].left, position: \"absolute\", right: pointerPlacement[placement].right, top: pointerPlacement[placement].top, transform: `translate(${pointerPlacement[placement].translate}) rotate(45deg)`, w: `${pointerSize}px` })),\r\n React.createElement(v.div, null,\r\n text,\r\n !!linkText && (React.createElement(React.Fragment, null,\r\n \"\\u00A0\",\r\n React.createElement(Link, { variant: \"white\", ...linkProps }, linkText))))), interactive: true, offset: [0, 2], placement: placement, popperOptions: {\r\n modifiers: [\r\n {\r\n name: 'flip',\r\n enabled: false\r\n }\r\n ]\r\n } }, children));\r\n};\r\nTooltip.displayName = 'Tooltip';\r\nexport default Tooltip;\r\n","export var Subscribable = /*#__PURE__*/function () {\n function Subscribable() {\n this.listeners = [];\n }\n\n var _proto = Subscribable.prototype;\n\n _proto.subscribe = function subscribe(listener) {\n var _this = this;\n\n var callback = listener || function () {\n return undefined;\n };\n\n this.listeners.push(callback);\n this.onSubscribe();\n return function () {\n _this.listeners = _this.listeners.filter(function (x) {\n return x !== callback;\n });\n\n _this.onUnsubscribe();\n };\n };\n\n _proto.hasListeners = function hasListeners() {\n return this.listeners.length > 0;\n };\n\n _proto.onSubscribe = function onSubscribe() {// Do nothing\n };\n\n _proto.onUnsubscribe = function onUnsubscribe() {// Do nothing\n };\n\n return Subscribable;\n}();","import _extends from \"@babel/runtime/helpers/esm/extends\";\n// TYPES\n// UTILS\nexport var isServer = typeof window === 'undefined';\nexport function noop() {\n return undefined;\n}\nexport function functionalUpdate(updater, input) {\n return typeof updater === 'function' ? updater(input) : updater;\n}\nexport function isValidTimeout(value) {\n return typeof value === 'number' && value >= 0 && value !== Infinity;\n}\nexport function ensureQueryKeyArray(value) {\n return Array.isArray(value) ? value : [value];\n}\nexport function difference(array1, array2) {\n return array1.filter(function (x) {\n return array2.indexOf(x) === -1;\n });\n}\nexport function replaceAt(array, index, value) {\n var copy = array.slice(0);\n copy[index] = value;\n return copy;\n}\nexport function timeUntilStale(updatedAt, staleTime) {\n return Math.max(updatedAt + (staleTime || 0) - Date.now(), 0);\n}\nexport function parseQueryArgs(arg1, arg2, arg3) {\n if (!isQueryKey(arg1)) {\n return arg1;\n }\n\n if (typeof arg2 === 'function') {\n return _extends({}, arg3, {\n queryKey: arg1,\n queryFn: arg2\n });\n }\n\n return _extends({}, arg2, {\n queryKey: arg1\n });\n}\nexport function parseMutationArgs(arg1, arg2, arg3) {\n if (isQueryKey(arg1)) {\n if (typeof arg2 === 'function') {\n return _extends({}, arg3, {\n mutationKey: arg1,\n mutationFn: arg2\n });\n }\n\n return _extends({}, arg2, {\n mutationKey: arg1\n });\n }\n\n if (typeof arg1 === 'function') {\n return _extends({}, arg2, {\n mutationFn: arg1\n });\n }\n\n return _extends({}, arg1);\n}\nexport function parseFilterArgs(arg1, arg2, arg3) {\n return isQueryKey(arg1) ? [_extends({}, arg2, {\n queryKey: arg1\n }), arg3] : [arg1 || {}, arg2];\n}\nexport function parseMutationFilterArgs(arg1, arg2) {\n return isQueryKey(arg1) ? _extends({}, arg2, {\n mutationKey: arg1\n }) : arg1;\n}\nexport function mapQueryStatusFilter(active, inactive) {\n if (active === true && inactive === true || active == null && inactive == null) {\n return 'all';\n } else if (active === false && inactive === false) {\n return 'none';\n } else {\n // At this point, active|inactive can only be true|false or false|true\n // so, when only one value is provided, the missing one has to be the negated value\n var isActive = active != null ? active : !inactive;\n return isActive ? 'active' : 'inactive';\n }\n}\nexport function matchQuery(filters, query) {\n var active = filters.active,\n exact = filters.exact,\n fetching = filters.fetching,\n inactive = filters.inactive,\n predicate = filters.predicate,\n queryKey = filters.queryKey,\n stale = filters.stale;\n\n if (isQueryKey(queryKey)) {\n if (exact) {\n if (query.queryHash !== hashQueryKeyByOptions(queryKey, query.options)) {\n return false;\n }\n } else if (!partialMatchKey(query.queryKey, queryKey)) {\n return false;\n }\n }\n\n var queryStatusFilter = mapQueryStatusFilter(active, inactive);\n\n if (queryStatusFilter === 'none') {\n return false;\n } else if (queryStatusFilter !== 'all') {\n var isActive = query.isActive();\n\n if (queryStatusFilter === 'active' && !isActive) {\n return false;\n }\n\n if (queryStatusFilter === 'inactive' && isActive) {\n return false;\n }\n }\n\n if (typeof stale === 'boolean' && query.isStale() !== stale) {\n return false;\n }\n\n if (typeof fetching === 'boolean' && query.isFetching() !== fetching) {\n return false;\n }\n\n if (predicate && !predicate(query)) {\n return false;\n }\n\n return true;\n}\nexport function matchMutation(filters, mutation) {\n var exact = filters.exact,\n fetching = filters.fetching,\n predicate = filters.predicate,\n mutationKey = filters.mutationKey;\n\n if (isQueryKey(mutationKey)) {\n if (!mutation.options.mutationKey) {\n return false;\n }\n\n if (exact) {\n if (hashQueryKey(mutation.options.mutationKey) !== hashQueryKey(mutationKey)) {\n return false;\n }\n } else if (!partialMatchKey(mutation.options.mutationKey, mutationKey)) {\n return false;\n }\n }\n\n if (typeof fetching === 'boolean' && mutation.state.status === 'loading' !== fetching) {\n return false;\n }\n\n if (predicate && !predicate(mutation)) {\n return false;\n }\n\n return true;\n}\nexport function hashQueryKeyByOptions(queryKey, options) {\n var hashFn = (options == null ? void 0 : options.queryKeyHashFn) || hashQueryKey;\n return hashFn(queryKey);\n}\n/**\n * Default query keys hash function.\n */\n\nexport function hashQueryKey(queryKey) {\n var asArray = ensureQueryKeyArray(queryKey);\n return stableValueHash(asArray);\n}\n/**\n * Hashes the value into a stable hash.\n */\n\nexport function stableValueHash(value) {\n return JSON.stringify(value, function (_, val) {\n return isPlainObject(val) ? Object.keys(val).sort().reduce(function (result, key) {\n result[key] = val[key];\n return result;\n }, {}) : val;\n });\n}\n/**\n * Checks if key `b` partially matches with key `a`.\n */\n\nexport function partialMatchKey(a, b) {\n return partialDeepEqual(ensureQueryKeyArray(a), ensureQueryKeyArray(b));\n}\n/**\n * Checks if `b` partially matches with `a`.\n */\n\nexport function partialDeepEqual(a, b) {\n if (a === b) {\n return true;\n }\n\n if (typeof a !== typeof b) {\n return false;\n }\n\n if (a && b && typeof a === 'object' && typeof b === 'object') {\n return !Object.keys(b).some(function (key) {\n return !partialDeepEqual(a[key], b[key]);\n });\n }\n\n return false;\n}\n/**\n * This function returns `a` if `b` is deeply equal.\n * If not, it will replace any deeply equal children of `b` with those of `a`.\n * This can be used for structural sharing between JSON values for example.\n */\n\nexport function replaceEqualDeep(a, b) {\n if (a === b) {\n return a;\n }\n\n var array = Array.isArray(a) && Array.isArray(b);\n\n if (array || isPlainObject(a) && isPlainObject(b)) {\n var aSize = array ? a.length : Object.keys(a).length;\n var bItems = array ? b : Object.keys(b);\n var bSize = bItems.length;\n var copy = array ? [] : {};\n var equalItems = 0;\n\n for (var i = 0; i < bSize; i++) {\n var key = array ? i : bItems[i];\n copy[key] = replaceEqualDeep(a[key], b[key]);\n\n if (copy[key] === a[key]) {\n equalItems++;\n }\n }\n\n return aSize === bSize && equalItems === aSize ? a : copy;\n }\n\n return b;\n}\n/**\n * Shallow compare objects. Only works with objects that always have the same properties.\n */\n\nexport function shallowEqualObjects(a, b) {\n if (a && !b || b && !a) {\n return false;\n }\n\n for (var key in a) {\n if (a[key] !== b[key]) {\n return false;\n }\n }\n\n return true;\n} // Copied from: https://github.com/jonschlinkert/is-plain-object\n\nexport function isPlainObject(o) {\n if (!hasObjectPrototype(o)) {\n return false;\n } // If has modified constructor\n\n\n var ctor = o.constructor;\n\n if (typeof ctor === 'undefined') {\n return true;\n } // If has modified prototype\n\n\n var prot = ctor.prototype;\n\n if (!hasObjectPrototype(prot)) {\n return false;\n } // If constructor does not have an Object-specific method\n\n\n if (!prot.hasOwnProperty('isPrototypeOf')) {\n return false;\n } // Most likely a plain Object\n\n\n return true;\n}\n\nfunction hasObjectPrototype(o) {\n return Object.prototype.toString.call(o) === '[object Object]';\n}\n\nexport function isQueryKey(value) {\n return typeof value === 'string' || Array.isArray(value);\n}\nexport function isError(value) {\n return value instanceof Error;\n}\nexport function sleep(timeout) {\n return new Promise(function (resolve) {\n setTimeout(resolve, timeout);\n });\n}\n/**\n * Schedules a microtask.\n * This can be useful to schedule state updates after rendering.\n */\n\nexport function scheduleMicrotask(callback) {\n Promise.resolve().then(callback).catch(function (error) {\n return setTimeout(function () {\n throw error;\n });\n });\n}\nexport function getAbortController() {\n if (typeof AbortController === 'function') {\n return new AbortController();\n }\n}","import _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport { Subscribable } from './subscribable';\nimport { isServer } from './utils';\nexport var FocusManager = /*#__PURE__*/function (_Subscribable) {\n _inheritsLoose(FocusManager, _Subscribable);\n\n function FocusManager() {\n var _this;\n\n _this = _Subscribable.call(this) || this;\n\n _this.setup = function (onFocus) {\n var _window;\n\n if (!isServer && ((_window = window) == null ? void 0 : _window.addEventListener)) {\n var listener = function listener() {\n return onFocus();\n }; // Listen to visibillitychange and focus\n\n\n window.addEventListener('visibilitychange', listener, false);\n window.addEventListener('focus', listener, false);\n return function () {\n // Be sure to unsubscribe if a new handler is set\n window.removeEventListener('visibilitychange', listener);\n window.removeEventListener('focus', listener);\n };\n }\n };\n\n return _this;\n }\n\n var _proto = FocusManager.prototype;\n\n _proto.onSubscribe = function onSubscribe() {\n if (!this.cleanup) {\n this.setEventListener(this.setup);\n }\n };\n\n _proto.onUnsubscribe = function onUnsubscribe() {\n if (!this.hasListeners()) {\n var _this$cleanup;\n\n (_this$cleanup = this.cleanup) == null ? void 0 : _this$cleanup.call(this);\n this.cleanup = undefined;\n }\n };\n\n _proto.setEventListener = function setEventListener(setup) {\n var _this$cleanup2,\n _this2 = this;\n\n this.setup = setup;\n (_this$cleanup2 = this.cleanup) == null ? void 0 : _this$cleanup2.call(this);\n this.cleanup = setup(function (focused) {\n if (typeof focused === 'boolean') {\n _this2.setFocused(focused);\n } else {\n _this2.onFocus();\n }\n });\n };\n\n _proto.setFocused = function setFocused(focused) {\n this.focused = focused;\n\n if (focused) {\n this.onFocus();\n }\n };\n\n _proto.onFocus = function onFocus() {\n this.listeners.forEach(function (listener) {\n listener();\n });\n };\n\n _proto.isFocused = function isFocused() {\n if (typeof this.focused === 'boolean') {\n return this.focused;\n } // document global can be unavailable in react native\n\n\n if (typeof document === 'undefined') {\n return true;\n }\n\n return [undefined, 'visible', 'prerender'].includes(document.visibilityState);\n };\n\n return FocusManager;\n}(Subscribable);\nexport var focusManager = new FocusManager();","import _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport { Subscribable } from './subscribable';\nimport { isServer } from './utils';\nexport var OnlineManager = /*#__PURE__*/function (_Subscribable) {\n _inheritsLoose(OnlineManager, _Subscribable);\n\n function OnlineManager() {\n var _this;\n\n _this = _Subscribable.call(this) || this;\n\n _this.setup = function (onOnline) {\n var _window;\n\n if (!isServer && ((_window = window) == null ? void 0 : _window.addEventListener)) {\n var listener = function listener() {\n return onOnline();\n }; // Listen to online\n\n\n window.addEventListener('online', listener, false);\n window.addEventListener('offline', listener, false);\n return function () {\n // Be sure to unsubscribe if a new handler is set\n window.removeEventListener('online', listener);\n window.removeEventListener('offline', listener);\n };\n }\n };\n\n return _this;\n }\n\n var _proto = OnlineManager.prototype;\n\n _proto.onSubscribe = function onSubscribe() {\n if (!this.cleanup) {\n this.setEventListener(this.setup);\n }\n };\n\n _proto.onUnsubscribe = function onUnsubscribe() {\n if (!this.hasListeners()) {\n var _this$cleanup;\n\n (_this$cleanup = this.cleanup) == null ? void 0 : _this$cleanup.call(this);\n this.cleanup = undefined;\n }\n };\n\n _proto.setEventListener = function setEventListener(setup) {\n var _this$cleanup2,\n _this2 = this;\n\n this.setup = setup;\n (_this$cleanup2 = this.cleanup) == null ? void 0 : _this$cleanup2.call(this);\n this.cleanup = setup(function (online) {\n if (typeof online === 'boolean') {\n _this2.setOnline(online);\n } else {\n _this2.onOnline();\n }\n });\n };\n\n _proto.setOnline = function setOnline(online) {\n this.online = online;\n\n if (online) {\n this.onOnline();\n }\n };\n\n _proto.onOnline = function onOnline() {\n this.listeners.forEach(function (listener) {\n listener();\n });\n };\n\n _proto.isOnline = function isOnline() {\n if (typeof this.online === 'boolean') {\n return this.online;\n }\n\n if (typeof navigator === 'undefined' || typeof navigator.onLine === 'undefined') {\n return true;\n }\n\n return navigator.onLine;\n };\n\n return OnlineManager;\n}(Subscribable);\nexport var onlineManager = new OnlineManager();","import { focusManager } from './focusManager';\nimport { onlineManager } from './onlineManager';\nimport { sleep } from './utils';\n\nfunction defaultRetryDelay(failureCount) {\n return Math.min(1000 * Math.pow(2, failureCount), 30000);\n}\n\nexport function isCancelable(value) {\n return typeof (value == null ? void 0 : value.cancel) === 'function';\n}\nexport var CancelledError = function CancelledError(options) {\n this.revert = options == null ? void 0 : options.revert;\n this.silent = options == null ? void 0 : options.silent;\n};\nexport function isCancelledError(value) {\n return value instanceof CancelledError;\n} // CLASS\n\nexport var Retryer = function Retryer(config) {\n var _this = this;\n\n var cancelRetry = false;\n var cancelFn;\n var continueFn;\n var promiseResolve;\n var promiseReject;\n this.abort = config.abort;\n\n this.cancel = function (cancelOptions) {\n return cancelFn == null ? void 0 : cancelFn(cancelOptions);\n };\n\n this.cancelRetry = function () {\n cancelRetry = true;\n };\n\n this.continueRetry = function () {\n cancelRetry = false;\n };\n\n this.continue = function () {\n return continueFn == null ? void 0 : continueFn();\n };\n\n this.failureCount = 0;\n this.isPaused = false;\n this.isResolved = false;\n this.isTransportCancelable = false;\n this.promise = new Promise(function (outerResolve, outerReject) {\n promiseResolve = outerResolve;\n promiseReject = outerReject;\n });\n\n var resolve = function resolve(value) {\n if (!_this.isResolved) {\n _this.isResolved = true;\n config.onSuccess == null ? void 0 : config.onSuccess(value);\n continueFn == null ? void 0 : continueFn();\n promiseResolve(value);\n }\n };\n\n var reject = function reject(value) {\n if (!_this.isResolved) {\n _this.isResolved = true;\n config.onError == null ? void 0 : config.onError(value);\n continueFn == null ? void 0 : continueFn();\n promiseReject(value);\n }\n };\n\n var pause = function pause() {\n return new Promise(function (continueResolve) {\n continueFn = continueResolve;\n _this.isPaused = true;\n config.onPause == null ? void 0 : config.onPause();\n }).then(function () {\n continueFn = undefined;\n _this.isPaused = false;\n config.onContinue == null ? void 0 : config.onContinue();\n });\n }; // Create loop function\n\n\n var run = function run() {\n // Do nothing if already resolved\n if (_this.isResolved) {\n return;\n }\n\n var promiseOrValue; // Execute query\n\n try {\n promiseOrValue = config.fn();\n } catch (error) {\n promiseOrValue = Promise.reject(error);\n } // Create callback to cancel this fetch\n\n\n cancelFn = function cancelFn(cancelOptions) {\n if (!_this.isResolved) {\n reject(new CancelledError(cancelOptions));\n _this.abort == null ? void 0 : _this.abort(); // Cancel transport if supported\n\n if (isCancelable(promiseOrValue)) {\n try {\n promiseOrValue.cancel();\n } catch (_unused) {}\n }\n }\n }; // Check if the transport layer support cancellation\n\n\n _this.isTransportCancelable = isCancelable(promiseOrValue);\n Promise.resolve(promiseOrValue).then(resolve).catch(function (error) {\n var _config$retry, _config$retryDelay;\n\n // Stop if the fetch is already resolved\n if (_this.isResolved) {\n return;\n } // Do we need to retry the request?\n\n\n var retry = (_config$retry = config.retry) != null ? _config$retry : 3;\n var retryDelay = (_config$retryDelay = config.retryDelay) != null ? _config$retryDelay : defaultRetryDelay;\n var delay = typeof retryDelay === 'function' ? retryDelay(_this.failureCount, error) : retryDelay;\n var shouldRetry = retry === true || typeof retry === 'number' && _this.failureCount < retry || typeof retry === 'function' && retry(_this.failureCount, error);\n\n if (cancelRetry || !shouldRetry) {\n // We are done if the query does not need to be retried\n reject(error);\n return;\n }\n\n _this.failureCount++; // Notify on fail\n\n config.onFail == null ? void 0 : config.onFail(_this.failureCount, error); // Delay\n\n sleep(delay) // Pause if the document is not visible or when the device is offline\n .then(function () {\n if (!focusManager.isFocused() || !onlineManager.isOnline()) {\n return pause();\n }\n }).then(function () {\n if (cancelRetry) {\n reject(error);\n } else {\n run();\n }\n });\n });\n }; // Start loop\n\n\n run();\n};","import { scheduleMicrotask } from './utils'; // TYPES\n\n// CLASS\nexport var NotifyManager = /*#__PURE__*/function () {\n function NotifyManager() {\n this.queue = [];\n this.transactions = 0;\n\n this.notifyFn = function (callback) {\n callback();\n };\n\n this.batchNotifyFn = function (callback) {\n callback();\n };\n }\n\n var _proto = NotifyManager.prototype;\n\n _proto.batch = function batch(callback) {\n var result;\n this.transactions++;\n\n try {\n result = callback();\n } finally {\n this.transactions--;\n\n if (!this.transactions) {\n this.flush();\n }\n }\n\n return result;\n };\n\n _proto.schedule = function schedule(callback) {\n var _this = this;\n\n if (this.transactions) {\n this.queue.push(callback);\n } else {\n scheduleMicrotask(function () {\n _this.notifyFn(callback);\n });\n }\n }\n /**\n * All calls to the wrapped function will be batched.\n */\n ;\n\n _proto.batchCalls = function batchCalls(callback) {\n var _this2 = this;\n\n return function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this2.schedule(function () {\n callback.apply(void 0, args);\n });\n };\n };\n\n _proto.flush = function flush() {\n var _this3 = this;\n\n var queue = this.queue;\n this.queue = [];\n\n if (queue.length) {\n scheduleMicrotask(function () {\n _this3.batchNotifyFn(function () {\n queue.forEach(function (callback) {\n _this3.notifyFn(callback);\n });\n });\n });\n }\n }\n /**\n * Use this method to set a custom notify function.\n * This can be used to for example wrap notifications with `React.act` while running tests.\n */\n ;\n\n _proto.setNotifyFunction = function setNotifyFunction(fn) {\n this.notifyFn = fn;\n }\n /**\n * Use this method to set a custom function to batch notifications together into a single tick.\n * By default React Query will use the batch function provided by ReactDOM or React Native.\n */\n ;\n\n _proto.setBatchNotifyFunction = function setBatchNotifyFunction(fn) {\n this.batchNotifyFn = fn;\n };\n\n return NotifyManager;\n}(); // SINGLETON\n\nexport var notifyManager = new NotifyManager();","// TYPES\n// FUNCTIONS\nvar logger = console;\nexport function getLogger() {\n return logger;\n}\nexport function setLogger(newLogger) {\n logger = newLogger;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { getAbortController, functionalUpdate, isValidTimeout, noop, replaceEqualDeep, timeUntilStale, ensureQueryKeyArray } from './utils';\nimport { notifyManager } from './notifyManager';\nimport { getLogger } from './logger';\nimport { Retryer, isCancelledError } from './retryer'; // TYPES\n\n// CLASS\nexport var Query = /*#__PURE__*/function () {\n function Query(config) {\n this.abortSignalConsumed = false;\n this.hadObservers = false;\n this.defaultOptions = config.defaultOptions;\n this.setOptions(config.options);\n this.observers = [];\n this.cache = config.cache;\n this.queryKey = config.queryKey;\n this.queryHash = config.queryHash;\n this.initialState = config.state || this.getDefaultState(this.options);\n this.state = this.initialState;\n this.meta = config.meta;\n this.scheduleGc();\n }\n\n var _proto = Query.prototype;\n\n _proto.setOptions = function setOptions(options) {\n var _this$options$cacheTi;\n\n this.options = _extends({}, this.defaultOptions, options);\n this.meta = options == null ? void 0 : options.meta; // Default to 5 minutes if not cache time is set\n\n this.cacheTime = Math.max(this.cacheTime || 0, (_this$options$cacheTi = this.options.cacheTime) != null ? _this$options$cacheTi : 5 * 60 * 1000);\n };\n\n _proto.setDefaultOptions = function setDefaultOptions(options) {\n this.defaultOptions = options;\n };\n\n _proto.scheduleGc = function scheduleGc() {\n var _this = this;\n\n this.clearGcTimeout();\n\n if (isValidTimeout(this.cacheTime)) {\n this.gcTimeout = setTimeout(function () {\n _this.optionalRemove();\n }, this.cacheTime);\n }\n };\n\n _proto.clearGcTimeout = function clearGcTimeout() {\n clearTimeout(this.gcTimeout);\n this.gcTimeout = undefined;\n };\n\n _proto.optionalRemove = function optionalRemove() {\n if (!this.observers.length) {\n if (this.state.isFetching) {\n if (this.hadObservers) {\n this.scheduleGc();\n }\n } else {\n this.cache.remove(this);\n }\n }\n };\n\n _proto.setData = function setData(updater, options) {\n var _this$options$isDataE, _this$options;\n\n var prevData = this.state.data; // Get the new data\n\n var data = functionalUpdate(updater, prevData); // Use prev data if an isDataEqual function is defined and returns `true`\n\n if ((_this$options$isDataE = (_this$options = this.options).isDataEqual) == null ? void 0 : _this$options$isDataE.call(_this$options, prevData, data)) {\n data = prevData;\n } else if (this.options.structuralSharing !== false) {\n // Structurally share data between prev and new data if needed\n data = replaceEqualDeep(prevData, data);\n } // Set data and mark it as cached\n\n\n this.dispatch({\n data: data,\n type: 'success',\n dataUpdatedAt: options == null ? void 0 : options.updatedAt\n });\n return data;\n };\n\n _proto.setState = function setState(state, setStateOptions) {\n this.dispatch({\n type: 'setState',\n state: state,\n setStateOptions: setStateOptions\n });\n };\n\n _proto.cancel = function cancel(options) {\n var _this$retryer;\n\n var promise = this.promise;\n (_this$retryer = this.retryer) == null ? void 0 : _this$retryer.cancel(options);\n return promise ? promise.then(noop).catch(noop) : Promise.resolve();\n };\n\n _proto.destroy = function destroy() {\n this.clearGcTimeout();\n this.cancel({\n silent: true\n });\n };\n\n _proto.reset = function reset() {\n this.destroy();\n this.setState(this.initialState);\n };\n\n _proto.isActive = function isActive() {\n return this.observers.some(function (observer) {\n return observer.options.enabled !== false;\n });\n };\n\n _proto.isFetching = function isFetching() {\n return this.state.isFetching;\n };\n\n _proto.isStale = function isStale() {\n return this.state.isInvalidated || !this.state.dataUpdatedAt || this.observers.some(function (observer) {\n return observer.getCurrentResult().isStale;\n });\n };\n\n _proto.isStaleByTime = function isStaleByTime(staleTime) {\n if (staleTime === void 0) {\n staleTime = 0;\n }\n\n return this.state.isInvalidated || !this.state.dataUpdatedAt || !timeUntilStale(this.state.dataUpdatedAt, staleTime);\n };\n\n _proto.onFocus = function onFocus() {\n var _this$retryer2;\n\n var observer = this.observers.find(function (x) {\n return x.shouldFetchOnWindowFocus();\n });\n\n if (observer) {\n observer.refetch();\n } // Continue fetch if currently paused\n\n\n (_this$retryer2 = this.retryer) == null ? void 0 : _this$retryer2.continue();\n };\n\n _proto.onOnline = function onOnline() {\n var _this$retryer3;\n\n var observer = this.observers.find(function (x) {\n return x.shouldFetchOnReconnect();\n });\n\n if (observer) {\n observer.refetch();\n } // Continue fetch if currently paused\n\n\n (_this$retryer3 = this.retryer) == null ? void 0 : _this$retryer3.continue();\n };\n\n _proto.addObserver = function addObserver(observer) {\n if (this.observers.indexOf(observer) === -1) {\n this.observers.push(observer);\n this.hadObservers = true; // Stop the query from being garbage collected\n\n this.clearGcTimeout();\n this.cache.notify({\n type: 'observerAdded',\n query: this,\n observer: observer\n });\n }\n };\n\n _proto.removeObserver = function removeObserver(observer) {\n if (this.observers.indexOf(observer) !== -1) {\n this.observers = this.observers.filter(function (x) {\n return x !== observer;\n });\n\n if (!this.observers.length) {\n // If the transport layer does not support cancellation\n // we'll let the query continue so the result can be cached\n if (this.retryer) {\n if (this.retryer.isTransportCancelable || this.abortSignalConsumed) {\n this.retryer.cancel({\n revert: true\n });\n } else {\n this.retryer.cancelRetry();\n }\n }\n\n if (this.cacheTime) {\n this.scheduleGc();\n } else {\n this.cache.remove(this);\n }\n }\n\n this.cache.notify({\n type: 'observerRemoved',\n query: this,\n observer: observer\n });\n }\n };\n\n _proto.getObserversCount = function getObserversCount() {\n return this.observers.length;\n };\n\n _proto.invalidate = function invalidate() {\n if (!this.state.isInvalidated) {\n this.dispatch({\n type: 'invalidate'\n });\n }\n };\n\n _proto.fetch = function fetch(options, fetchOptions) {\n var _this2 = this,\n _this$options$behavio,\n _context$fetchOptions,\n _abortController$abor;\n\n if (this.state.isFetching) {\n if (this.state.dataUpdatedAt && (fetchOptions == null ? void 0 : fetchOptions.cancelRefetch)) {\n // Silently cancel current fetch if the user wants to cancel refetches\n this.cancel({\n silent: true\n });\n } else if (this.promise) {\n var _this$retryer4;\n\n // make sure that retries that were potentially cancelled due to unmounts can continue\n (_this$retryer4 = this.retryer) == null ? void 0 : _this$retryer4.continueRetry(); // Return current promise if we are already fetching\n\n return this.promise;\n }\n } // Update config if passed, otherwise the config from the last execution is used\n\n\n if (options) {\n this.setOptions(options);\n } // Use the options from the first observer with a query function if no function is found.\n // This can happen when the query is hydrated or created with setQueryData.\n\n\n if (!this.options.queryFn) {\n var observer = this.observers.find(function (x) {\n return x.options.queryFn;\n });\n\n if (observer) {\n this.setOptions(observer.options);\n }\n }\n\n var queryKey = ensureQueryKeyArray(this.queryKey);\n var abortController = getAbortController(); // Create query function context\n\n var queryFnContext = {\n queryKey: queryKey,\n pageParam: undefined,\n meta: this.meta\n };\n Object.defineProperty(queryFnContext, 'signal', {\n enumerable: true,\n get: function get() {\n if (abortController) {\n _this2.abortSignalConsumed = true;\n return abortController.signal;\n }\n\n return undefined;\n }\n }); // Create fetch function\n\n var fetchFn = function fetchFn() {\n if (!_this2.options.queryFn) {\n return Promise.reject('Missing queryFn');\n }\n\n _this2.abortSignalConsumed = false;\n return _this2.options.queryFn(queryFnContext);\n }; // Trigger behavior hook\n\n\n var context = {\n fetchOptions: fetchOptions,\n options: this.options,\n queryKey: queryKey,\n state: this.state,\n fetchFn: fetchFn,\n meta: this.meta\n };\n\n if ((_this$options$behavio = this.options.behavior) == null ? void 0 : _this$options$behavio.onFetch) {\n var _this$options$behavio2;\n\n (_this$options$behavio2 = this.options.behavior) == null ? void 0 : _this$options$behavio2.onFetch(context);\n } // Store state in case the current fetch needs to be reverted\n\n\n this.revertState = this.state; // Set to fetching state if not already in it\n\n if (!this.state.isFetching || this.state.fetchMeta !== ((_context$fetchOptions = context.fetchOptions) == null ? void 0 : _context$fetchOptions.meta)) {\n var _context$fetchOptions2;\n\n this.dispatch({\n type: 'fetch',\n meta: (_context$fetchOptions2 = context.fetchOptions) == null ? void 0 : _context$fetchOptions2.meta\n });\n } // Try to fetch the data\n\n\n this.retryer = new Retryer({\n fn: context.fetchFn,\n abort: abortController == null ? void 0 : (_abortController$abor = abortController.abort) == null ? void 0 : _abortController$abor.bind(abortController),\n onSuccess: function onSuccess(data) {\n _this2.setData(data); // Notify cache callback\n\n\n _this2.cache.config.onSuccess == null ? void 0 : _this2.cache.config.onSuccess(data, _this2); // Remove query after fetching if cache time is 0\n\n if (_this2.cacheTime === 0) {\n _this2.optionalRemove();\n }\n },\n onError: function onError(error) {\n // Optimistically update state if needed\n if (!(isCancelledError(error) && error.silent)) {\n _this2.dispatch({\n type: 'error',\n error: error\n });\n }\n\n if (!isCancelledError(error)) {\n // Notify cache callback\n _this2.cache.config.onError == null ? void 0 : _this2.cache.config.onError(error, _this2); // Log error\n\n getLogger().error(error);\n } // Remove query after fetching if cache time is 0\n\n\n if (_this2.cacheTime === 0) {\n _this2.optionalRemove();\n }\n },\n onFail: function onFail() {\n _this2.dispatch({\n type: 'failed'\n });\n },\n onPause: function onPause() {\n _this2.dispatch({\n type: 'pause'\n });\n },\n onContinue: function onContinue() {\n _this2.dispatch({\n type: 'continue'\n });\n },\n retry: context.options.retry,\n retryDelay: context.options.retryDelay\n });\n this.promise = this.retryer.promise;\n return this.promise;\n };\n\n _proto.dispatch = function dispatch(action) {\n var _this3 = this;\n\n this.state = this.reducer(this.state, action);\n notifyManager.batch(function () {\n _this3.observers.forEach(function (observer) {\n observer.onQueryUpdate(action);\n });\n\n _this3.cache.notify({\n query: _this3,\n type: 'queryUpdated',\n action: action\n });\n });\n };\n\n _proto.getDefaultState = function getDefaultState(options) {\n var data = typeof options.initialData === 'function' ? options.initialData() : options.initialData;\n var hasInitialData = typeof options.initialData !== 'undefined';\n var initialDataUpdatedAt = hasInitialData ? typeof options.initialDataUpdatedAt === 'function' ? options.initialDataUpdatedAt() : options.initialDataUpdatedAt : 0;\n var hasData = typeof data !== 'undefined';\n return {\n data: data,\n dataUpdateCount: 0,\n dataUpdatedAt: hasData ? initialDataUpdatedAt != null ? initialDataUpdatedAt : Date.now() : 0,\n error: null,\n errorUpdateCount: 0,\n errorUpdatedAt: 0,\n fetchFailureCount: 0,\n fetchMeta: null,\n isFetching: false,\n isInvalidated: false,\n isPaused: false,\n status: hasData ? 'success' : 'idle'\n };\n };\n\n _proto.reducer = function reducer(state, action) {\n var _action$meta, _action$dataUpdatedAt;\n\n switch (action.type) {\n case 'failed':\n return _extends({}, state, {\n fetchFailureCount: state.fetchFailureCount + 1\n });\n\n case 'pause':\n return _extends({}, state, {\n isPaused: true\n });\n\n case 'continue':\n return _extends({}, state, {\n isPaused: false\n });\n\n case 'fetch':\n return _extends({}, state, {\n fetchFailureCount: 0,\n fetchMeta: (_action$meta = action.meta) != null ? _action$meta : null,\n isFetching: true,\n isPaused: false\n }, !state.dataUpdatedAt && {\n error: null,\n status: 'loading'\n });\n\n case 'success':\n return _extends({}, state, {\n data: action.data,\n dataUpdateCount: state.dataUpdateCount + 1,\n dataUpdatedAt: (_action$dataUpdatedAt = action.dataUpdatedAt) != null ? _action$dataUpdatedAt : Date.now(),\n error: null,\n fetchFailureCount: 0,\n isFetching: false,\n isInvalidated: false,\n isPaused: false,\n status: 'success'\n });\n\n case 'error':\n var error = action.error;\n\n if (isCancelledError(error) && error.revert && this.revertState) {\n return _extends({}, this.revertState);\n }\n\n return _extends({}, state, {\n error: error,\n errorUpdateCount: state.errorUpdateCount + 1,\n errorUpdatedAt: Date.now(),\n fetchFailureCount: state.fetchFailureCount + 1,\n isFetching: false,\n isPaused: false,\n status: 'error'\n });\n\n case 'invalidate':\n return _extends({}, state, {\n isInvalidated: true\n });\n\n case 'setState':\n return _extends({}, state, action.state);\n\n default:\n return state;\n }\n };\n\n return Query;\n}();","import _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport { hashQueryKeyByOptions, matchQuery, parseFilterArgs } from './utils';\nimport { Query } from './query';\nimport { notifyManager } from './notifyManager';\nimport { Subscribable } from './subscribable';\n// CLASS\nexport var QueryCache = /*#__PURE__*/function (_Subscribable) {\n _inheritsLoose(QueryCache, _Subscribable);\n\n function QueryCache(config) {\n var _this;\n\n _this = _Subscribable.call(this) || this;\n _this.config = config || {};\n _this.queries = [];\n _this.queriesMap = {};\n return _this;\n }\n\n var _proto = QueryCache.prototype;\n\n _proto.build = function build(client, options, state) {\n var _options$queryHash;\n\n var queryKey = options.queryKey;\n var queryHash = (_options$queryHash = options.queryHash) != null ? _options$queryHash : hashQueryKeyByOptions(queryKey, options);\n var query = this.get(queryHash);\n\n if (!query) {\n query = new Query({\n cache: this,\n queryKey: queryKey,\n queryHash: queryHash,\n options: client.defaultQueryOptions(options),\n state: state,\n defaultOptions: client.getQueryDefaults(queryKey),\n meta: options.meta\n });\n this.add(query);\n }\n\n return query;\n };\n\n _proto.add = function add(query) {\n if (!this.queriesMap[query.queryHash]) {\n this.queriesMap[query.queryHash] = query;\n this.queries.push(query);\n this.notify({\n type: 'queryAdded',\n query: query\n });\n }\n };\n\n _proto.remove = function remove(query) {\n var queryInMap = this.queriesMap[query.queryHash];\n\n if (queryInMap) {\n query.destroy();\n this.queries = this.queries.filter(function (x) {\n return x !== query;\n });\n\n if (queryInMap === query) {\n delete this.queriesMap[query.queryHash];\n }\n\n this.notify({\n type: 'queryRemoved',\n query: query\n });\n }\n };\n\n _proto.clear = function clear() {\n var _this2 = this;\n\n notifyManager.batch(function () {\n _this2.queries.forEach(function (query) {\n _this2.remove(query);\n });\n });\n };\n\n _proto.get = function get(queryHash) {\n return this.queriesMap[queryHash];\n };\n\n _proto.getAll = function getAll() {\n return this.queries;\n };\n\n _proto.find = function find(arg1, arg2) {\n var _parseFilterArgs = parseFilterArgs(arg1, arg2),\n filters = _parseFilterArgs[0];\n\n if (typeof filters.exact === 'undefined') {\n filters.exact = true;\n }\n\n return this.queries.find(function (query) {\n return matchQuery(filters, query);\n });\n };\n\n _proto.findAll = function findAll(arg1, arg2) {\n var _parseFilterArgs2 = parseFilterArgs(arg1, arg2),\n filters = _parseFilterArgs2[0];\n\n return Object.keys(filters).length > 0 ? this.queries.filter(function (query) {\n return matchQuery(filters, query);\n }) : this.queries;\n };\n\n _proto.notify = function notify(event) {\n var _this3 = this;\n\n notifyManager.batch(function () {\n _this3.listeners.forEach(function (listener) {\n listener(event);\n });\n });\n };\n\n _proto.onFocus = function onFocus() {\n var _this4 = this;\n\n notifyManager.batch(function () {\n _this4.queries.forEach(function (query) {\n query.onFocus();\n });\n });\n };\n\n _proto.onOnline = function onOnline() {\n var _this5 = this;\n\n notifyManager.batch(function () {\n _this5.queries.forEach(function (query) {\n query.onOnline();\n });\n });\n };\n\n return QueryCache;\n}(Subscribable);","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { getLogger } from './logger';\nimport { notifyManager } from './notifyManager';\nimport { Retryer } from './retryer';\nimport { noop } from './utils'; // TYPES\n\n// CLASS\nexport var Mutation = /*#__PURE__*/function () {\n function Mutation(config) {\n this.options = _extends({}, config.defaultOptions, config.options);\n this.mutationId = config.mutationId;\n this.mutationCache = config.mutationCache;\n this.observers = [];\n this.state = config.state || getDefaultState();\n this.meta = config.meta;\n }\n\n var _proto = Mutation.prototype;\n\n _proto.setState = function setState(state) {\n this.dispatch({\n type: 'setState',\n state: state\n });\n };\n\n _proto.addObserver = function addObserver(observer) {\n if (this.observers.indexOf(observer) === -1) {\n this.observers.push(observer);\n }\n };\n\n _proto.removeObserver = function removeObserver(observer) {\n this.observers = this.observers.filter(function (x) {\n return x !== observer;\n });\n };\n\n _proto.cancel = function cancel() {\n if (this.retryer) {\n this.retryer.cancel();\n return this.retryer.promise.then(noop).catch(noop);\n }\n\n return Promise.resolve();\n };\n\n _proto.continue = function _continue() {\n if (this.retryer) {\n this.retryer.continue();\n return this.retryer.promise;\n }\n\n return this.execute();\n };\n\n _proto.execute = function execute() {\n var _this = this;\n\n var data;\n var restored = this.state.status === 'loading';\n var promise = Promise.resolve();\n\n if (!restored) {\n this.dispatch({\n type: 'loading',\n variables: this.options.variables\n });\n promise = promise.then(function () {\n // Notify cache callback\n _this.mutationCache.config.onMutate == null ? void 0 : _this.mutationCache.config.onMutate(_this.state.variables, _this);\n }).then(function () {\n return _this.options.onMutate == null ? void 0 : _this.options.onMutate(_this.state.variables);\n }).then(function (context) {\n if (context !== _this.state.context) {\n _this.dispatch({\n type: 'loading',\n context: context,\n variables: _this.state.variables\n });\n }\n });\n }\n\n return promise.then(function () {\n return _this.executeMutation();\n }).then(function (result) {\n data = result; // Notify cache callback\n\n _this.mutationCache.config.onSuccess == null ? void 0 : _this.mutationCache.config.onSuccess(data, _this.state.variables, _this.state.context, _this);\n }).then(function () {\n return _this.options.onSuccess == null ? void 0 : _this.options.onSuccess(data, _this.state.variables, _this.state.context);\n }).then(function () {\n return _this.options.onSettled == null ? void 0 : _this.options.onSettled(data, null, _this.state.variables, _this.state.context);\n }).then(function () {\n _this.dispatch({\n type: 'success',\n data: data\n });\n\n return data;\n }).catch(function (error) {\n // Notify cache callback\n _this.mutationCache.config.onError == null ? void 0 : _this.mutationCache.config.onError(error, _this.state.variables, _this.state.context, _this); // Log error\n\n getLogger().error(error);\n return Promise.resolve().then(function () {\n return _this.options.onError == null ? void 0 : _this.options.onError(error, _this.state.variables, _this.state.context);\n }).then(function () {\n return _this.options.onSettled == null ? void 0 : _this.options.onSettled(undefined, error, _this.state.variables, _this.state.context);\n }).then(function () {\n _this.dispatch({\n type: 'error',\n error: error\n });\n\n throw error;\n });\n });\n };\n\n _proto.executeMutation = function executeMutation() {\n var _this2 = this,\n _this$options$retry;\n\n this.retryer = new Retryer({\n fn: function fn() {\n if (!_this2.options.mutationFn) {\n return Promise.reject('No mutationFn found');\n }\n\n return _this2.options.mutationFn(_this2.state.variables);\n },\n onFail: function onFail() {\n _this2.dispatch({\n type: 'failed'\n });\n },\n onPause: function onPause() {\n _this2.dispatch({\n type: 'pause'\n });\n },\n onContinue: function onContinue() {\n _this2.dispatch({\n type: 'continue'\n });\n },\n retry: (_this$options$retry = this.options.retry) != null ? _this$options$retry : 0,\n retryDelay: this.options.retryDelay\n });\n return this.retryer.promise;\n };\n\n _proto.dispatch = function dispatch(action) {\n var _this3 = this;\n\n this.state = reducer(this.state, action);\n notifyManager.batch(function () {\n _this3.observers.forEach(function (observer) {\n observer.onMutationUpdate(action);\n });\n\n _this3.mutationCache.notify(_this3);\n });\n };\n\n return Mutation;\n}();\nexport function getDefaultState() {\n return {\n context: undefined,\n data: undefined,\n error: null,\n failureCount: 0,\n isPaused: false,\n status: 'idle',\n variables: undefined\n };\n}\n\nfunction reducer(state, action) {\n switch (action.type) {\n case 'failed':\n return _extends({}, state, {\n failureCount: state.failureCount + 1\n });\n\n case 'pause':\n return _extends({}, state, {\n isPaused: true\n });\n\n case 'continue':\n return _extends({}, state, {\n isPaused: false\n });\n\n case 'loading':\n return _extends({}, state, {\n context: action.context,\n data: undefined,\n error: null,\n isPaused: false,\n status: 'loading',\n variables: action.variables\n });\n\n case 'success':\n return _extends({}, state, {\n data: action.data,\n error: null,\n status: 'success',\n isPaused: false\n });\n\n case 'error':\n return _extends({}, state, {\n data: undefined,\n error: action.error,\n failureCount: state.failureCount + 1,\n isPaused: false,\n status: 'error'\n });\n\n case 'setState':\n return _extends({}, state, action.state);\n\n default:\n return state;\n }\n}","import _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport { notifyManager } from './notifyManager';\nimport { Mutation } from './mutation';\nimport { matchMutation, noop } from './utils';\nimport { Subscribable } from './subscribable'; // TYPES\n\n// CLASS\nexport var MutationCache = /*#__PURE__*/function (_Subscribable) {\n _inheritsLoose(MutationCache, _Subscribable);\n\n function MutationCache(config) {\n var _this;\n\n _this = _Subscribable.call(this) || this;\n _this.config = config || {};\n _this.mutations = [];\n _this.mutationId = 0;\n return _this;\n }\n\n var _proto = MutationCache.prototype;\n\n _proto.build = function build(client, options, state) {\n var mutation = new Mutation({\n mutationCache: this,\n mutationId: ++this.mutationId,\n options: client.defaultMutationOptions(options),\n state: state,\n defaultOptions: options.mutationKey ? client.getMutationDefaults(options.mutationKey) : undefined,\n meta: options.meta\n });\n this.add(mutation);\n return mutation;\n };\n\n _proto.add = function add(mutation) {\n this.mutations.push(mutation);\n this.notify(mutation);\n };\n\n _proto.remove = function remove(mutation) {\n this.mutations = this.mutations.filter(function (x) {\n return x !== mutation;\n });\n mutation.cancel();\n this.notify(mutation);\n };\n\n _proto.clear = function clear() {\n var _this2 = this;\n\n notifyManager.batch(function () {\n _this2.mutations.forEach(function (mutation) {\n _this2.remove(mutation);\n });\n });\n };\n\n _proto.getAll = function getAll() {\n return this.mutations;\n };\n\n _proto.find = function find(filters) {\n if (typeof filters.exact === 'undefined') {\n filters.exact = true;\n }\n\n return this.mutations.find(function (mutation) {\n return matchMutation(filters, mutation);\n });\n };\n\n _proto.findAll = function findAll(filters) {\n return this.mutations.filter(function (mutation) {\n return matchMutation(filters, mutation);\n });\n };\n\n _proto.notify = function notify(mutation) {\n var _this3 = this;\n\n notifyManager.batch(function () {\n _this3.listeners.forEach(function (listener) {\n listener(mutation);\n });\n });\n };\n\n _proto.onFocus = function onFocus() {\n this.resumePausedMutations();\n };\n\n _proto.onOnline = function onOnline() {\n this.resumePausedMutations();\n };\n\n _proto.resumePausedMutations = function resumePausedMutations() {\n var pausedMutations = this.mutations.filter(function (x) {\n return x.state.isPaused;\n });\n return notifyManager.batch(function () {\n return pausedMutations.reduce(function (promise, mutation) {\n return promise.then(function () {\n return mutation.continue().catch(noop);\n });\n }, Promise.resolve());\n });\n };\n\n return MutationCache;\n}(Subscribable);","import { isCancelable } from './retryer';\nimport { getAbortController } from './utils';\nexport function infiniteQueryBehavior() {\n return {\n onFetch: function onFetch(context) {\n context.fetchFn = function () {\n var _context$fetchOptions, _context$fetchOptions2, _context$fetchOptions3, _context$fetchOptions4, _context$state$data, _context$state$data2;\n\n var refetchPage = (_context$fetchOptions = context.fetchOptions) == null ? void 0 : (_context$fetchOptions2 = _context$fetchOptions.meta) == null ? void 0 : _context$fetchOptions2.refetchPage;\n var fetchMore = (_context$fetchOptions3 = context.fetchOptions) == null ? void 0 : (_context$fetchOptions4 = _context$fetchOptions3.meta) == null ? void 0 : _context$fetchOptions4.fetchMore;\n var pageParam = fetchMore == null ? void 0 : fetchMore.pageParam;\n var isFetchingNextPage = (fetchMore == null ? void 0 : fetchMore.direction) === 'forward';\n var isFetchingPreviousPage = (fetchMore == null ? void 0 : fetchMore.direction) === 'backward';\n var oldPages = ((_context$state$data = context.state.data) == null ? void 0 : _context$state$data.pages) || [];\n var oldPageParams = ((_context$state$data2 = context.state.data) == null ? void 0 : _context$state$data2.pageParams) || [];\n var abortController = getAbortController();\n var abortSignal = abortController == null ? void 0 : abortController.signal;\n var newPageParams = oldPageParams;\n var cancelled = false; // Get query function\n\n var queryFn = context.options.queryFn || function () {\n return Promise.reject('Missing queryFn');\n };\n\n var buildNewPages = function buildNewPages(pages, param, page, previous) {\n newPageParams = previous ? [param].concat(newPageParams) : [].concat(newPageParams, [param]);\n return previous ? [page].concat(pages) : [].concat(pages, [page]);\n }; // Create function to fetch a page\n\n\n var fetchPage = function fetchPage(pages, manual, param, previous) {\n if (cancelled) {\n return Promise.reject('Cancelled');\n }\n\n if (typeof param === 'undefined' && !manual && pages.length) {\n return Promise.resolve(pages);\n }\n\n var queryFnContext = {\n queryKey: context.queryKey,\n signal: abortSignal,\n pageParam: param,\n meta: context.meta\n };\n var queryFnResult = queryFn(queryFnContext);\n var promise = Promise.resolve(queryFnResult).then(function (page) {\n return buildNewPages(pages, param, page, previous);\n });\n\n if (isCancelable(queryFnResult)) {\n var promiseAsAny = promise;\n promiseAsAny.cancel = queryFnResult.cancel;\n }\n\n return promise;\n };\n\n var promise; // Fetch first page?\n\n if (!oldPages.length) {\n promise = fetchPage([]);\n } // Fetch next page?\n else if (isFetchingNextPage) {\n var manual = typeof pageParam !== 'undefined';\n var param = manual ? pageParam : getNextPageParam(context.options, oldPages);\n promise = fetchPage(oldPages, manual, param);\n } // Fetch previous page?\n else if (isFetchingPreviousPage) {\n var _manual = typeof pageParam !== 'undefined';\n\n var _param = _manual ? pageParam : getPreviousPageParam(context.options, oldPages);\n\n promise = fetchPage(oldPages, _manual, _param, true);\n } // Refetch pages\n else {\n (function () {\n newPageParams = [];\n var manual = typeof context.options.getNextPageParam === 'undefined';\n var shouldFetchFirstPage = refetchPage && oldPages[0] ? refetchPage(oldPages[0], 0, oldPages) : true; // Fetch first page\n\n promise = shouldFetchFirstPage ? fetchPage([], manual, oldPageParams[0]) : Promise.resolve(buildNewPages([], oldPageParams[0], oldPages[0])); // Fetch remaining pages\n\n var _loop = function _loop(i) {\n promise = promise.then(function (pages) {\n var shouldFetchNextPage = refetchPage && oldPages[i] ? refetchPage(oldPages[i], i, oldPages) : true;\n\n if (shouldFetchNextPage) {\n var _param2 = manual ? oldPageParams[i] : getNextPageParam(context.options, pages);\n\n return fetchPage(pages, manual, _param2);\n }\n\n return Promise.resolve(buildNewPages(pages, oldPageParams[i], oldPages[i]));\n });\n };\n\n for (var i = 1; i < oldPages.length; i++) {\n _loop(i);\n }\n })();\n }\n\n var finalPromise = promise.then(function (pages) {\n return {\n pages: pages,\n pageParams: newPageParams\n };\n });\n var finalPromiseAsAny = finalPromise;\n\n finalPromiseAsAny.cancel = function () {\n cancelled = true;\n abortController == null ? void 0 : abortController.abort();\n\n if (isCancelable(promise)) {\n promise.cancel();\n }\n };\n\n return finalPromise;\n };\n }\n };\n}\nexport function getNextPageParam(options, pages) {\n return options.getNextPageParam == null ? void 0 : options.getNextPageParam(pages[pages.length - 1], pages);\n}\nexport function getPreviousPageParam(options, pages) {\n return options.getPreviousPageParam == null ? void 0 : options.getPreviousPageParam(pages[0], pages);\n}\n/**\n * Checks if there is a next page.\n * Returns `undefined` if it cannot be determined.\n */\n\nexport function hasNextPage(options, pages) {\n if (options.getNextPageParam && Array.isArray(pages)) {\n var nextPageParam = getNextPageParam(options, pages);\n return typeof nextPageParam !== 'undefined' && nextPageParam !== null && nextPageParam !== false;\n }\n}\n/**\n * Checks if there is a previous page.\n * Returns `undefined` if it cannot be determined.\n */\n\nexport function hasPreviousPage(options, pages) {\n if (options.getPreviousPageParam && Array.isArray(pages)) {\n var previousPageParam = getPreviousPageParam(options, pages);\n return typeof previousPageParam !== 'undefined' && previousPageParam !== null && previousPageParam !== false;\n }\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { hashQueryKey, noop, parseFilterArgs, parseQueryArgs, partialMatchKey, hashQueryKeyByOptions } from './utils';\nimport { QueryCache } from './queryCache';\nimport { MutationCache } from './mutationCache';\nimport { focusManager } from './focusManager';\nimport { onlineManager } from './onlineManager';\nimport { notifyManager } from './notifyManager';\nimport { infiniteQueryBehavior } from './infiniteQueryBehavior';\n// CLASS\nexport var QueryClient = /*#__PURE__*/function () {\n function QueryClient(config) {\n if (config === void 0) {\n config = {};\n }\n\n this.queryCache = config.queryCache || new QueryCache();\n this.mutationCache = config.mutationCache || new MutationCache();\n this.defaultOptions = config.defaultOptions || {};\n this.queryDefaults = [];\n this.mutationDefaults = [];\n }\n\n var _proto = QueryClient.prototype;\n\n _proto.mount = function mount() {\n var _this = this;\n\n this.unsubscribeFocus = focusManager.subscribe(function () {\n if (focusManager.isFocused() && onlineManager.isOnline()) {\n _this.mutationCache.onFocus();\n\n _this.queryCache.onFocus();\n }\n });\n this.unsubscribeOnline = onlineManager.subscribe(function () {\n if (focusManager.isFocused() && onlineManager.isOnline()) {\n _this.mutationCache.onOnline();\n\n _this.queryCache.onOnline();\n }\n });\n };\n\n _proto.unmount = function unmount() {\n var _this$unsubscribeFocu, _this$unsubscribeOnli;\n\n (_this$unsubscribeFocu = this.unsubscribeFocus) == null ? void 0 : _this$unsubscribeFocu.call(this);\n (_this$unsubscribeOnli = this.unsubscribeOnline) == null ? void 0 : _this$unsubscribeOnli.call(this);\n };\n\n _proto.isFetching = function isFetching(arg1, arg2) {\n var _parseFilterArgs = parseFilterArgs(arg1, arg2),\n filters = _parseFilterArgs[0];\n\n filters.fetching = true;\n return this.queryCache.findAll(filters).length;\n };\n\n _proto.isMutating = function isMutating(filters) {\n return this.mutationCache.findAll(_extends({}, filters, {\n fetching: true\n })).length;\n };\n\n _proto.getQueryData = function getQueryData(queryKey, filters) {\n var _this$queryCache$find;\n\n return (_this$queryCache$find = this.queryCache.find(queryKey, filters)) == null ? void 0 : _this$queryCache$find.state.data;\n };\n\n _proto.getQueriesData = function getQueriesData(queryKeyOrFilters) {\n return this.getQueryCache().findAll(queryKeyOrFilters).map(function (_ref) {\n var queryKey = _ref.queryKey,\n state = _ref.state;\n var data = state.data;\n return [queryKey, data];\n });\n };\n\n _proto.setQueryData = function setQueryData(queryKey, updater, options) {\n var parsedOptions = parseQueryArgs(queryKey);\n var defaultedOptions = this.defaultQueryOptions(parsedOptions);\n return this.queryCache.build(this, defaultedOptions).setData(updater, options);\n };\n\n _proto.setQueriesData = function setQueriesData(queryKeyOrFilters, updater, options) {\n var _this2 = this;\n\n return notifyManager.batch(function () {\n return _this2.getQueryCache().findAll(queryKeyOrFilters).map(function (_ref2) {\n var queryKey = _ref2.queryKey;\n return [queryKey, _this2.setQueryData(queryKey, updater, options)];\n });\n });\n };\n\n _proto.getQueryState = function getQueryState(queryKey, filters) {\n var _this$queryCache$find2;\n\n return (_this$queryCache$find2 = this.queryCache.find(queryKey, filters)) == null ? void 0 : _this$queryCache$find2.state;\n };\n\n _proto.removeQueries = function removeQueries(arg1, arg2) {\n var _parseFilterArgs2 = parseFilterArgs(arg1, arg2),\n filters = _parseFilterArgs2[0];\n\n var queryCache = this.queryCache;\n notifyManager.batch(function () {\n queryCache.findAll(filters).forEach(function (query) {\n queryCache.remove(query);\n });\n });\n };\n\n _proto.resetQueries = function resetQueries(arg1, arg2, arg3) {\n var _this3 = this;\n\n var _parseFilterArgs3 = parseFilterArgs(arg1, arg2, arg3),\n filters = _parseFilterArgs3[0],\n options = _parseFilterArgs3[1];\n\n var queryCache = this.queryCache;\n\n var refetchFilters = _extends({}, filters, {\n active: true\n });\n\n return notifyManager.batch(function () {\n queryCache.findAll(filters).forEach(function (query) {\n query.reset();\n });\n return _this3.refetchQueries(refetchFilters, options);\n });\n };\n\n _proto.cancelQueries = function cancelQueries(arg1, arg2, arg3) {\n var _this4 = this;\n\n var _parseFilterArgs4 = parseFilterArgs(arg1, arg2, arg3),\n filters = _parseFilterArgs4[0],\n _parseFilterArgs4$ = _parseFilterArgs4[1],\n cancelOptions = _parseFilterArgs4$ === void 0 ? {} : _parseFilterArgs4$;\n\n if (typeof cancelOptions.revert === 'undefined') {\n cancelOptions.revert = true;\n }\n\n var promises = notifyManager.batch(function () {\n return _this4.queryCache.findAll(filters).map(function (query) {\n return query.cancel(cancelOptions);\n });\n });\n return Promise.all(promises).then(noop).catch(noop);\n };\n\n _proto.invalidateQueries = function invalidateQueries(arg1, arg2, arg3) {\n var _ref3,\n _filters$refetchActiv,\n _filters$refetchInact,\n _this5 = this;\n\n var _parseFilterArgs5 = parseFilterArgs(arg1, arg2, arg3),\n filters = _parseFilterArgs5[0],\n options = _parseFilterArgs5[1];\n\n var refetchFilters = _extends({}, filters, {\n // if filters.refetchActive is not provided and filters.active is explicitly false,\n // e.g. invalidateQueries({ active: false }), we don't want to refetch active queries\n active: (_ref3 = (_filters$refetchActiv = filters.refetchActive) != null ? _filters$refetchActiv : filters.active) != null ? _ref3 : true,\n inactive: (_filters$refetchInact = filters.refetchInactive) != null ? _filters$refetchInact : false\n });\n\n return notifyManager.batch(function () {\n _this5.queryCache.findAll(filters).forEach(function (query) {\n query.invalidate();\n });\n\n return _this5.refetchQueries(refetchFilters, options);\n });\n };\n\n _proto.refetchQueries = function refetchQueries(arg1, arg2, arg3) {\n var _this6 = this;\n\n var _parseFilterArgs6 = parseFilterArgs(arg1, arg2, arg3),\n filters = _parseFilterArgs6[0],\n options = _parseFilterArgs6[1];\n\n var promises = notifyManager.batch(function () {\n return _this6.queryCache.findAll(filters).map(function (query) {\n return query.fetch(undefined, _extends({}, options, {\n meta: {\n refetchPage: filters == null ? void 0 : filters.refetchPage\n }\n }));\n });\n });\n var promise = Promise.all(promises).then(noop);\n\n if (!(options == null ? void 0 : options.throwOnError)) {\n promise = promise.catch(noop);\n }\n\n return promise;\n };\n\n _proto.fetchQuery = function fetchQuery(arg1, arg2, arg3) {\n var parsedOptions = parseQueryArgs(arg1, arg2, arg3);\n var defaultedOptions = this.defaultQueryOptions(parsedOptions); // https://github.com/tannerlinsley/react-query/issues/652\n\n if (typeof defaultedOptions.retry === 'undefined') {\n defaultedOptions.retry = false;\n }\n\n var query = this.queryCache.build(this, defaultedOptions);\n return query.isStaleByTime(defaultedOptions.staleTime) ? query.fetch(defaultedOptions) : Promise.resolve(query.state.data);\n };\n\n _proto.prefetchQuery = function prefetchQuery(arg1, arg2, arg3) {\n return this.fetchQuery(arg1, arg2, arg3).then(noop).catch(noop);\n };\n\n _proto.fetchInfiniteQuery = function fetchInfiniteQuery(arg1, arg2, arg3) {\n var parsedOptions = parseQueryArgs(arg1, arg2, arg3);\n parsedOptions.behavior = infiniteQueryBehavior();\n return this.fetchQuery(parsedOptions);\n };\n\n _proto.prefetchInfiniteQuery = function prefetchInfiniteQuery(arg1, arg2, arg3) {\n return this.fetchInfiniteQuery(arg1, arg2, arg3).then(noop).catch(noop);\n };\n\n _proto.cancelMutations = function cancelMutations() {\n var _this7 = this;\n\n var promises = notifyManager.batch(function () {\n return _this7.mutationCache.getAll().map(function (mutation) {\n return mutation.cancel();\n });\n });\n return Promise.all(promises).then(noop).catch(noop);\n };\n\n _proto.resumePausedMutations = function resumePausedMutations() {\n return this.getMutationCache().resumePausedMutations();\n };\n\n _proto.executeMutation = function executeMutation(options) {\n return this.mutationCache.build(this, options).execute();\n };\n\n _proto.getQueryCache = function getQueryCache() {\n return this.queryCache;\n };\n\n _proto.getMutationCache = function getMutationCache() {\n return this.mutationCache;\n };\n\n _proto.getDefaultOptions = function getDefaultOptions() {\n return this.defaultOptions;\n };\n\n _proto.setDefaultOptions = function setDefaultOptions(options) {\n this.defaultOptions = options;\n };\n\n _proto.setQueryDefaults = function setQueryDefaults(queryKey, options) {\n var result = this.queryDefaults.find(function (x) {\n return hashQueryKey(queryKey) === hashQueryKey(x.queryKey);\n });\n\n if (result) {\n result.defaultOptions = options;\n } else {\n this.queryDefaults.push({\n queryKey: queryKey,\n defaultOptions: options\n });\n }\n };\n\n _proto.getQueryDefaults = function getQueryDefaults(queryKey) {\n var _this$queryDefaults$f;\n\n return queryKey ? (_this$queryDefaults$f = this.queryDefaults.find(function (x) {\n return partialMatchKey(queryKey, x.queryKey);\n })) == null ? void 0 : _this$queryDefaults$f.defaultOptions : undefined;\n };\n\n _proto.setMutationDefaults = function setMutationDefaults(mutationKey, options) {\n var result = this.mutationDefaults.find(function (x) {\n return hashQueryKey(mutationKey) === hashQueryKey(x.mutationKey);\n });\n\n if (result) {\n result.defaultOptions = options;\n } else {\n this.mutationDefaults.push({\n mutationKey: mutationKey,\n defaultOptions: options\n });\n }\n };\n\n _proto.getMutationDefaults = function getMutationDefaults(mutationKey) {\n var _this$mutationDefault;\n\n return mutationKey ? (_this$mutationDefault = this.mutationDefaults.find(function (x) {\n return partialMatchKey(mutationKey, x.mutationKey);\n })) == null ? void 0 : _this$mutationDefault.defaultOptions : undefined;\n };\n\n _proto.defaultQueryOptions = function defaultQueryOptions(options) {\n if (options == null ? void 0 : options._defaulted) {\n return options;\n }\n\n var defaultedOptions = _extends({}, this.defaultOptions.queries, this.getQueryDefaults(options == null ? void 0 : options.queryKey), options, {\n _defaulted: true\n });\n\n if (!defaultedOptions.queryHash && defaultedOptions.queryKey) {\n defaultedOptions.queryHash = hashQueryKeyByOptions(defaultedOptions.queryKey, defaultedOptions);\n }\n\n return defaultedOptions;\n };\n\n _proto.defaultQueryObserverOptions = function defaultQueryObserverOptions(options) {\n return this.defaultQueryOptions(options);\n };\n\n _proto.defaultMutationOptions = function defaultMutationOptions(options) {\n if (options == null ? void 0 : options._defaulted) {\n return options;\n }\n\n return _extends({}, this.defaultOptions.mutations, this.getMutationDefaults(options == null ? void 0 : options.mutationKey), options, {\n _defaulted: true\n });\n };\n\n _proto.clear = function clear() {\n this.queryCache.clear();\n this.mutationCache.clear();\n };\n\n return QueryClient;\n}();","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport { isServer, isValidTimeout, noop, replaceEqualDeep, shallowEqualObjects, timeUntilStale } from './utils';\nimport { notifyManager } from './notifyManager';\nimport { focusManager } from './focusManager';\nimport { Subscribable } from './subscribable';\nimport { getLogger } from './logger';\nimport { isCancelledError } from './retryer';\nexport var QueryObserver = /*#__PURE__*/function (_Subscribable) {\n _inheritsLoose(QueryObserver, _Subscribable);\n\n function QueryObserver(client, options) {\n var _this;\n\n _this = _Subscribable.call(this) || this;\n _this.client = client;\n _this.options = options;\n _this.trackedProps = [];\n _this.selectError = null;\n\n _this.bindMethods();\n\n _this.setOptions(options);\n\n return _this;\n }\n\n var _proto = QueryObserver.prototype;\n\n _proto.bindMethods = function bindMethods() {\n this.remove = this.remove.bind(this);\n this.refetch = this.refetch.bind(this);\n };\n\n _proto.onSubscribe = function onSubscribe() {\n if (this.listeners.length === 1) {\n this.currentQuery.addObserver(this);\n\n if (shouldFetchOnMount(this.currentQuery, this.options)) {\n this.executeFetch();\n }\n\n this.updateTimers();\n }\n };\n\n _proto.onUnsubscribe = function onUnsubscribe() {\n if (!this.listeners.length) {\n this.destroy();\n }\n };\n\n _proto.shouldFetchOnReconnect = function shouldFetchOnReconnect() {\n return shouldFetchOn(this.currentQuery, this.options, this.options.refetchOnReconnect);\n };\n\n _proto.shouldFetchOnWindowFocus = function shouldFetchOnWindowFocus() {\n return shouldFetchOn(this.currentQuery, this.options, this.options.refetchOnWindowFocus);\n };\n\n _proto.destroy = function destroy() {\n this.listeners = [];\n this.clearTimers();\n this.currentQuery.removeObserver(this);\n };\n\n _proto.setOptions = function setOptions(options, notifyOptions) {\n var prevOptions = this.options;\n var prevQuery = this.currentQuery;\n this.options = this.client.defaultQueryObserverOptions(options);\n\n if (typeof this.options.enabled !== 'undefined' && typeof this.options.enabled !== 'boolean') {\n throw new Error('Expected enabled to be a boolean');\n } // Keep previous query key if the user does not supply one\n\n\n if (!this.options.queryKey) {\n this.options.queryKey = prevOptions.queryKey;\n }\n\n this.updateQuery();\n var mounted = this.hasListeners(); // Fetch if there are subscribers\n\n if (mounted && shouldFetchOptionally(this.currentQuery, prevQuery, this.options, prevOptions)) {\n this.executeFetch();\n } // Update result\n\n\n this.updateResult(notifyOptions); // Update stale interval if needed\n\n if (mounted && (this.currentQuery !== prevQuery || this.options.enabled !== prevOptions.enabled || this.options.staleTime !== prevOptions.staleTime)) {\n this.updateStaleTimeout();\n }\n\n var nextRefetchInterval = this.computeRefetchInterval(); // Update refetch interval if needed\n\n if (mounted && (this.currentQuery !== prevQuery || this.options.enabled !== prevOptions.enabled || nextRefetchInterval !== this.currentRefetchInterval)) {\n this.updateRefetchInterval(nextRefetchInterval);\n }\n };\n\n _proto.getOptimisticResult = function getOptimisticResult(options) {\n var defaultedOptions = this.client.defaultQueryObserverOptions(options);\n var query = this.client.getQueryCache().build(this.client, defaultedOptions);\n return this.createResult(query, defaultedOptions);\n };\n\n _proto.getCurrentResult = function getCurrentResult() {\n return this.currentResult;\n };\n\n _proto.trackResult = function trackResult(result, defaultedOptions) {\n var _this2 = this;\n\n var trackedResult = {};\n\n var trackProp = function trackProp(key) {\n if (!_this2.trackedProps.includes(key)) {\n _this2.trackedProps.push(key);\n }\n };\n\n Object.keys(result).forEach(function (key) {\n Object.defineProperty(trackedResult, key, {\n configurable: false,\n enumerable: true,\n get: function get() {\n trackProp(key);\n return result[key];\n }\n });\n });\n\n if (defaultedOptions.useErrorBoundary || defaultedOptions.suspense) {\n trackProp('error');\n }\n\n return trackedResult;\n };\n\n _proto.getNextResult = function getNextResult(options) {\n var _this3 = this;\n\n return new Promise(function (resolve, reject) {\n var unsubscribe = _this3.subscribe(function (result) {\n if (!result.isFetching) {\n unsubscribe();\n\n if (result.isError && (options == null ? void 0 : options.throwOnError)) {\n reject(result.error);\n } else {\n resolve(result);\n }\n }\n });\n });\n };\n\n _proto.getCurrentQuery = function getCurrentQuery() {\n return this.currentQuery;\n };\n\n _proto.remove = function remove() {\n this.client.getQueryCache().remove(this.currentQuery);\n };\n\n _proto.refetch = function refetch(options) {\n return this.fetch(_extends({}, options, {\n meta: {\n refetchPage: options == null ? void 0 : options.refetchPage\n }\n }));\n };\n\n _proto.fetchOptimistic = function fetchOptimistic(options) {\n var _this4 = this;\n\n var defaultedOptions = this.client.defaultQueryObserverOptions(options);\n var query = this.client.getQueryCache().build(this.client, defaultedOptions);\n return query.fetch().then(function () {\n return _this4.createResult(query, defaultedOptions);\n });\n };\n\n _proto.fetch = function fetch(fetchOptions) {\n var _this5 = this;\n\n return this.executeFetch(fetchOptions).then(function () {\n _this5.updateResult();\n\n return _this5.currentResult;\n });\n };\n\n _proto.executeFetch = function executeFetch(fetchOptions) {\n // Make sure we reference the latest query as the current one might have been removed\n this.updateQuery(); // Fetch\n\n var promise = this.currentQuery.fetch(this.options, fetchOptions);\n\n if (!(fetchOptions == null ? void 0 : fetchOptions.throwOnError)) {\n promise = promise.catch(noop);\n }\n\n return promise;\n };\n\n _proto.updateStaleTimeout = function updateStaleTimeout() {\n var _this6 = this;\n\n this.clearStaleTimeout();\n\n if (isServer || this.currentResult.isStale || !isValidTimeout(this.options.staleTime)) {\n return;\n }\n\n var time = timeUntilStale(this.currentResult.dataUpdatedAt, this.options.staleTime); // The timeout is sometimes triggered 1 ms before the stale time expiration.\n // To mitigate this issue we always add 1 ms to the timeout.\n\n var timeout = time + 1;\n this.staleTimeoutId = setTimeout(function () {\n if (!_this6.currentResult.isStale) {\n _this6.updateResult();\n }\n }, timeout);\n };\n\n _proto.computeRefetchInterval = function computeRefetchInterval() {\n var _this$options$refetch;\n\n return typeof this.options.refetchInterval === 'function' ? this.options.refetchInterval(this.currentResult.data, this.currentQuery) : (_this$options$refetch = this.options.refetchInterval) != null ? _this$options$refetch : false;\n };\n\n _proto.updateRefetchInterval = function updateRefetchInterval(nextInterval) {\n var _this7 = this;\n\n this.clearRefetchInterval();\n this.currentRefetchInterval = nextInterval;\n\n if (isServer || this.options.enabled === false || !isValidTimeout(this.currentRefetchInterval) || this.currentRefetchInterval === 0) {\n return;\n }\n\n this.refetchIntervalId = setInterval(function () {\n if (_this7.options.refetchIntervalInBackground || focusManager.isFocused()) {\n _this7.executeFetch();\n }\n }, this.currentRefetchInterval);\n };\n\n _proto.updateTimers = function updateTimers() {\n this.updateStaleTimeout();\n this.updateRefetchInterval(this.computeRefetchInterval());\n };\n\n _proto.clearTimers = function clearTimers() {\n this.clearStaleTimeout();\n this.clearRefetchInterval();\n };\n\n _proto.clearStaleTimeout = function clearStaleTimeout() {\n clearTimeout(this.staleTimeoutId);\n this.staleTimeoutId = undefined;\n };\n\n _proto.clearRefetchInterval = function clearRefetchInterval() {\n clearInterval(this.refetchIntervalId);\n this.refetchIntervalId = undefined;\n };\n\n _proto.createResult = function createResult(query, options) {\n var prevQuery = this.currentQuery;\n var prevOptions = this.options;\n var prevResult = this.currentResult;\n var prevResultState = this.currentResultState;\n var prevResultOptions = this.currentResultOptions;\n var queryChange = query !== prevQuery;\n var queryInitialState = queryChange ? query.state : this.currentQueryInitialState;\n var prevQueryResult = queryChange ? this.currentResult : this.previousQueryResult;\n var state = query.state;\n var dataUpdatedAt = state.dataUpdatedAt,\n error = state.error,\n errorUpdatedAt = state.errorUpdatedAt,\n isFetching = state.isFetching,\n status = state.status;\n var isPreviousData = false;\n var isPlaceholderData = false;\n var data; // Optimistically set result in fetching state if needed\n\n if (options.optimisticResults) {\n var mounted = this.hasListeners();\n var fetchOnMount = !mounted && shouldFetchOnMount(query, options);\n var fetchOptionally = mounted && shouldFetchOptionally(query, prevQuery, options, prevOptions);\n\n if (fetchOnMount || fetchOptionally) {\n isFetching = true;\n\n if (!dataUpdatedAt) {\n status = 'loading';\n }\n }\n } // Keep previous data if needed\n\n\n if (options.keepPreviousData && !state.dataUpdateCount && (prevQueryResult == null ? void 0 : prevQueryResult.isSuccess) && status !== 'error') {\n data = prevQueryResult.data;\n dataUpdatedAt = prevQueryResult.dataUpdatedAt;\n status = prevQueryResult.status;\n isPreviousData = true;\n } // Select data if needed\n else if (options.select && typeof state.data !== 'undefined') {\n // Memoize select result\n if (prevResult && state.data === (prevResultState == null ? void 0 : prevResultState.data) && options.select === this.selectFn) {\n data = this.selectResult;\n } else {\n try {\n this.selectFn = options.select;\n data = options.select(state.data);\n\n if (options.structuralSharing !== false) {\n data = replaceEqualDeep(prevResult == null ? void 0 : prevResult.data, data);\n }\n\n this.selectResult = data;\n this.selectError = null;\n } catch (selectError) {\n getLogger().error(selectError);\n this.selectError = selectError;\n }\n }\n } // Use query data\n else {\n data = state.data;\n } // Show placeholder data if needed\n\n\n if (typeof options.placeholderData !== 'undefined' && typeof data === 'undefined' && (status === 'loading' || status === 'idle')) {\n var placeholderData; // Memoize placeholder data\n\n if ((prevResult == null ? void 0 : prevResult.isPlaceholderData) && options.placeholderData === (prevResultOptions == null ? void 0 : prevResultOptions.placeholderData)) {\n placeholderData = prevResult.data;\n } else {\n placeholderData = typeof options.placeholderData === 'function' ? options.placeholderData() : options.placeholderData;\n\n if (options.select && typeof placeholderData !== 'undefined') {\n try {\n placeholderData = options.select(placeholderData);\n\n if (options.structuralSharing !== false) {\n placeholderData = replaceEqualDeep(prevResult == null ? void 0 : prevResult.data, placeholderData);\n }\n\n this.selectError = null;\n } catch (selectError) {\n getLogger().error(selectError);\n this.selectError = selectError;\n }\n }\n }\n\n if (typeof placeholderData !== 'undefined') {\n status = 'success';\n data = placeholderData;\n isPlaceholderData = true;\n }\n }\n\n if (this.selectError) {\n error = this.selectError;\n data = this.selectResult;\n errorUpdatedAt = Date.now();\n status = 'error';\n }\n\n var result = {\n status: status,\n isLoading: status === 'loading',\n isSuccess: status === 'success',\n isError: status === 'error',\n isIdle: status === 'idle',\n data: data,\n dataUpdatedAt: dataUpdatedAt,\n error: error,\n errorUpdatedAt: errorUpdatedAt,\n failureCount: state.fetchFailureCount,\n errorUpdateCount: state.errorUpdateCount,\n isFetched: state.dataUpdateCount > 0 || state.errorUpdateCount > 0,\n isFetchedAfterMount: state.dataUpdateCount > queryInitialState.dataUpdateCount || state.errorUpdateCount > queryInitialState.errorUpdateCount,\n isFetching: isFetching,\n isRefetching: isFetching && status !== 'loading',\n isLoadingError: status === 'error' && state.dataUpdatedAt === 0,\n isPlaceholderData: isPlaceholderData,\n isPreviousData: isPreviousData,\n isRefetchError: status === 'error' && state.dataUpdatedAt !== 0,\n isStale: isStale(query, options),\n refetch: this.refetch,\n remove: this.remove\n };\n return result;\n };\n\n _proto.shouldNotifyListeners = function shouldNotifyListeners(result, prevResult) {\n if (!prevResult) {\n return true;\n }\n\n var _this$options = this.options,\n notifyOnChangeProps = _this$options.notifyOnChangeProps,\n notifyOnChangePropsExclusions = _this$options.notifyOnChangePropsExclusions;\n\n if (!notifyOnChangeProps && !notifyOnChangePropsExclusions) {\n return true;\n }\n\n if (notifyOnChangeProps === 'tracked' && !this.trackedProps.length) {\n return true;\n }\n\n var includedProps = notifyOnChangeProps === 'tracked' ? this.trackedProps : notifyOnChangeProps;\n return Object.keys(result).some(function (key) {\n var typedKey = key;\n var changed = result[typedKey] !== prevResult[typedKey];\n var isIncluded = includedProps == null ? void 0 : includedProps.some(function (x) {\n return x === key;\n });\n var isExcluded = notifyOnChangePropsExclusions == null ? void 0 : notifyOnChangePropsExclusions.some(function (x) {\n return x === key;\n });\n return changed && !isExcluded && (!includedProps || isIncluded);\n });\n };\n\n _proto.updateResult = function updateResult(notifyOptions) {\n var prevResult = this.currentResult;\n this.currentResult = this.createResult(this.currentQuery, this.options);\n this.currentResultState = this.currentQuery.state;\n this.currentResultOptions = this.options; // Only notify if something has changed\n\n if (shallowEqualObjects(this.currentResult, prevResult)) {\n return;\n } // Determine which callbacks to trigger\n\n\n var defaultNotifyOptions = {\n cache: true\n };\n\n if ((notifyOptions == null ? void 0 : notifyOptions.listeners) !== false && this.shouldNotifyListeners(this.currentResult, prevResult)) {\n defaultNotifyOptions.listeners = true;\n }\n\n this.notify(_extends({}, defaultNotifyOptions, notifyOptions));\n };\n\n _proto.updateQuery = function updateQuery() {\n var query = this.client.getQueryCache().build(this.client, this.options);\n\n if (query === this.currentQuery) {\n return;\n }\n\n var prevQuery = this.currentQuery;\n this.currentQuery = query;\n this.currentQueryInitialState = query.state;\n this.previousQueryResult = this.currentResult;\n\n if (this.hasListeners()) {\n prevQuery == null ? void 0 : prevQuery.removeObserver(this);\n query.addObserver(this);\n }\n };\n\n _proto.onQueryUpdate = function onQueryUpdate(action) {\n var notifyOptions = {};\n\n if (action.type === 'success') {\n notifyOptions.onSuccess = true;\n } else if (action.type === 'error' && !isCancelledError(action.error)) {\n notifyOptions.onError = true;\n }\n\n this.updateResult(notifyOptions);\n\n if (this.hasListeners()) {\n this.updateTimers();\n }\n };\n\n _proto.notify = function notify(notifyOptions) {\n var _this8 = this;\n\n notifyManager.batch(function () {\n // First trigger the configuration callbacks\n if (notifyOptions.onSuccess) {\n _this8.options.onSuccess == null ? void 0 : _this8.options.onSuccess(_this8.currentResult.data);\n _this8.options.onSettled == null ? void 0 : _this8.options.onSettled(_this8.currentResult.data, null);\n } else if (notifyOptions.onError) {\n _this8.options.onError == null ? void 0 : _this8.options.onError(_this8.currentResult.error);\n _this8.options.onSettled == null ? void 0 : _this8.options.onSettled(undefined, _this8.currentResult.error);\n } // Then trigger the listeners\n\n\n if (notifyOptions.listeners) {\n _this8.listeners.forEach(function (listener) {\n listener(_this8.currentResult);\n });\n } // Then the cache listeners\n\n\n if (notifyOptions.cache) {\n _this8.client.getQueryCache().notify({\n query: _this8.currentQuery,\n type: 'observerResultsUpdated'\n });\n }\n });\n };\n\n return QueryObserver;\n}(Subscribable);\n\nfunction shouldLoadOnMount(query, options) {\n return options.enabled !== false && !query.state.dataUpdatedAt && !(query.state.status === 'error' && options.retryOnMount === false);\n}\n\nfunction shouldFetchOnMount(query, options) {\n return shouldLoadOnMount(query, options) || query.state.dataUpdatedAt > 0 && shouldFetchOn(query, options, options.refetchOnMount);\n}\n\nfunction shouldFetchOn(query, options, field) {\n if (options.enabled !== false) {\n var value = typeof field === 'function' ? field(query) : field;\n return value === 'always' || value !== false && isStale(query, options);\n }\n\n return false;\n}\n\nfunction shouldFetchOptionally(query, prevQuery, options, prevOptions) {\n return options.enabled !== false && (query !== prevQuery || prevOptions.enabled === false) && (!options.suspense || query.state.status !== 'error') && isStale(query, options);\n}\n\nfunction isStale(query, options) {\n return query.isStaleByTime(options.staleTime);\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport { getDefaultState } from './mutation';\nimport { notifyManager } from './notifyManager';\nimport { Subscribable } from './subscribable';\n// CLASS\nexport var MutationObserver = /*#__PURE__*/function (_Subscribable) {\n _inheritsLoose(MutationObserver, _Subscribable);\n\n function MutationObserver(client, options) {\n var _this;\n\n _this = _Subscribable.call(this) || this;\n _this.client = client;\n\n _this.setOptions(options);\n\n _this.bindMethods();\n\n _this.updateResult();\n\n return _this;\n }\n\n var _proto = MutationObserver.prototype;\n\n _proto.bindMethods = function bindMethods() {\n this.mutate = this.mutate.bind(this);\n this.reset = this.reset.bind(this);\n };\n\n _proto.setOptions = function setOptions(options) {\n this.options = this.client.defaultMutationOptions(options);\n };\n\n _proto.onUnsubscribe = function onUnsubscribe() {\n if (!this.listeners.length) {\n var _this$currentMutation;\n\n (_this$currentMutation = this.currentMutation) == null ? void 0 : _this$currentMutation.removeObserver(this);\n }\n };\n\n _proto.onMutationUpdate = function onMutationUpdate(action) {\n this.updateResult(); // Determine which callbacks to trigger\n\n var notifyOptions = {\n listeners: true\n };\n\n if (action.type === 'success') {\n notifyOptions.onSuccess = true;\n } else if (action.type === 'error') {\n notifyOptions.onError = true;\n }\n\n this.notify(notifyOptions);\n };\n\n _proto.getCurrentResult = function getCurrentResult() {\n return this.currentResult;\n };\n\n _proto.reset = function reset() {\n this.currentMutation = undefined;\n this.updateResult();\n this.notify({\n listeners: true\n });\n };\n\n _proto.mutate = function mutate(variables, options) {\n this.mutateOptions = options;\n\n if (this.currentMutation) {\n this.currentMutation.removeObserver(this);\n }\n\n this.currentMutation = this.client.getMutationCache().build(this.client, _extends({}, this.options, {\n variables: typeof variables !== 'undefined' ? variables : this.options.variables\n }));\n this.currentMutation.addObserver(this);\n return this.currentMutation.execute();\n };\n\n _proto.updateResult = function updateResult() {\n var state = this.currentMutation ? this.currentMutation.state : getDefaultState();\n\n var result = _extends({}, state, {\n isLoading: state.status === 'loading',\n isSuccess: state.status === 'success',\n isError: state.status === 'error',\n isIdle: state.status === 'idle',\n mutate: this.mutate,\n reset: this.reset\n });\n\n this.currentResult = result;\n };\n\n _proto.notify = function notify(options) {\n var _this2 = this;\n\n notifyManager.batch(function () {\n // First trigger the mutate callbacks\n if (_this2.mutateOptions) {\n if (options.onSuccess) {\n _this2.mutateOptions.onSuccess == null ? void 0 : _this2.mutateOptions.onSuccess(_this2.currentResult.data, _this2.currentResult.variables, _this2.currentResult.context);\n _this2.mutateOptions.onSettled == null ? void 0 : _this2.mutateOptions.onSettled(_this2.currentResult.data, null, _this2.currentResult.variables, _this2.currentResult.context);\n } else if (options.onError) {\n _this2.mutateOptions.onError == null ? void 0 : _this2.mutateOptions.onError(_this2.currentResult.error, _this2.currentResult.variables, _this2.currentResult.context);\n _this2.mutateOptions.onSettled == null ? void 0 : _this2.mutateOptions.onSettled(undefined, _this2.currentResult.error, _this2.currentResult.variables, _this2.currentResult.context);\n }\n } // Then trigger the listeners\n\n\n if (options.listeners) {\n _this2.listeners.forEach(function (listener) {\n listener(_this2.currentResult);\n });\n }\n });\n };\n\n return MutationObserver;\n}(Subscribable);","import ReactDOM from 'react-dom';\nexport var unstable_batchedUpdates = ReactDOM.unstable_batchedUpdates;","import { notifyManager } from '../core';\nimport { unstable_batchedUpdates } from './reactBatchedUpdates';\nnotifyManager.setBatchNotifyFunction(unstable_batchedUpdates);","export var logger = console;","import { setLogger } from '../core';\nimport { logger } from './logger';\nsetLogger(logger);","import React from 'react';\nvar defaultContext = /*#__PURE__*/React.createContext(undefined);\nvar QueryClientSharingContext = /*#__PURE__*/React.createContext(false); // if contextSharing is on, we share the first and at least one\n// instance of the context across the window\n// to ensure that if React Query is used across\n// different bundles or microfrontends they will\n// all use the same **instance** of context, regardless\n// of module scoping.\n\nfunction getQueryClientContext(contextSharing) {\n if (contextSharing && typeof window !== 'undefined') {\n if (!window.ReactQueryClientContext) {\n window.ReactQueryClientContext = defaultContext;\n }\n\n return window.ReactQueryClientContext;\n }\n\n return defaultContext;\n}\n\nexport var useQueryClient = function useQueryClient() {\n var queryClient = React.useContext(getQueryClientContext(React.useContext(QueryClientSharingContext)));\n\n if (!queryClient) {\n throw new Error('No QueryClient set, use QueryClientProvider to set one');\n }\n\n return queryClient;\n};\nexport var QueryClientProvider = function QueryClientProvider(_ref) {\n var client = _ref.client,\n _ref$contextSharing = _ref.contextSharing,\n contextSharing = _ref$contextSharing === void 0 ? false : _ref$contextSharing,\n children = _ref.children;\n React.useEffect(function () {\n client.mount();\n return function () {\n client.unmount();\n };\n }, [client]);\n var Context = getQueryClientContext(contextSharing);\n return /*#__PURE__*/React.createElement(QueryClientSharingContext.Provider, {\n value: contextSharing\n }, /*#__PURE__*/React.createElement(Context.Provider, {\n value: client\n }, children));\n};","import React from 'react'; // CONTEXT\n\nfunction createValue() {\n var _isReset = false;\n return {\n clearReset: function clearReset() {\n _isReset = false;\n },\n reset: function reset() {\n _isReset = true;\n },\n isReset: function isReset() {\n return _isReset;\n }\n };\n}\n\nvar QueryErrorResetBoundaryContext = /*#__PURE__*/React.createContext(createValue()); // HOOK\n\nexport var useQueryErrorResetBoundary = function useQueryErrorResetBoundary() {\n return React.useContext(QueryErrorResetBoundaryContext);\n}; // COMPONENT\n\nexport var QueryErrorResetBoundary = function QueryErrorResetBoundary(_ref) {\n var children = _ref.children;\n var value = React.useMemo(function () {\n return createValue();\n }, []);\n return /*#__PURE__*/React.createElement(QueryErrorResetBoundaryContext.Provider, {\n value: value\n }, typeof children === 'function' ? children(value) : children);\n};","export function shouldThrowError(suspense, _useErrorBoundary, params) {\n // Allow useErrorBoundary function to override throwing behavior on a per-error basis\n if (typeof _useErrorBoundary === 'function') {\n return _useErrorBoundary.apply(void 0, params);\n } // Allow useErrorBoundary to override suspense's throwing behavior\n\n\n if (typeof _useErrorBoundary === 'boolean') return _useErrorBoundary; // If suspense is enabled default to throwing errors\n\n return !!suspense;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport React from 'react';\nimport { notifyManager } from '../core/notifyManager';\nimport { noop, parseMutationArgs } from '../core/utils';\nimport { MutationObserver } from '../core/mutationObserver';\nimport { useQueryClient } from './QueryClientProvider';\nimport { shouldThrowError } from './utils'; // HOOK\n\nexport function useMutation(arg1, arg2, arg3) {\n var mountedRef = React.useRef(false);\n\n var _React$useState = React.useState(0),\n forceUpdate = _React$useState[1];\n\n var options = parseMutationArgs(arg1, arg2, arg3);\n var queryClient = useQueryClient();\n var obsRef = React.useRef();\n\n if (!obsRef.current) {\n obsRef.current = new MutationObserver(queryClient, options);\n } else {\n obsRef.current.setOptions(options);\n }\n\n var currentResult = obsRef.current.getCurrentResult();\n React.useEffect(function () {\n mountedRef.current = true;\n var unsubscribe = obsRef.current.subscribe(notifyManager.batchCalls(function () {\n if (mountedRef.current) {\n forceUpdate(function (x) {\n return x + 1;\n });\n }\n }));\n return function () {\n mountedRef.current = false;\n unsubscribe();\n };\n }, []);\n var mutate = React.useCallback(function (variables, mutateOptions) {\n obsRef.current.mutate(variables, mutateOptions).catch(noop);\n }, []);\n\n if (currentResult.error && shouldThrowError(undefined, obsRef.current.options.useErrorBoundary, [currentResult.error])) {\n throw currentResult.error;\n }\n\n return _extends({}, currentResult, {\n mutate: mutate,\n mutateAsync: currentResult.mutate\n });\n}","import React from 'react';\nimport { notifyManager } from '../core/notifyManager';\nimport { useQueryErrorResetBoundary } from './QueryErrorResetBoundary';\nimport { useQueryClient } from './QueryClientProvider';\nimport { shouldThrowError } from './utils';\nexport function useBaseQuery(options, Observer) {\n var mountedRef = React.useRef(false);\n\n var _React$useState = React.useState(0),\n forceUpdate = _React$useState[1];\n\n var queryClient = useQueryClient();\n var errorResetBoundary = useQueryErrorResetBoundary();\n var defaultedOptions = queryClient.defaultQueryObserverOptions(options); // Make sure results are optimistically set in fetching state before subscribing or updating options\n\n defaultedOptions.optimisticResults = true; // Include callbacks in batch renders\n\n if (defaultedOptions.onError) {\n defaultedOptions.onError = notifyManager.batchCalls(defaultedOptions.onError);\n }\n\n if (defaultedOptions.onSuccess) {\n defaultedOptions.onSuccess = notifyManager.batchCalls(defaultedOptions.onSuccess);\n }\n\n if (defaultedOptions.onSettled) {\n defaultedOptions.onSettled = notifyManager.batchCalls(defaultedOptions.onSettled);\n }\n\n if (defaultedOptions.suspense) {\n // Always set stale time when using suspense to prevent\n // fetching again when directly mounting after suspending\n if (typeof defaultedOptions.staleTime !== 'number') {\n defaultedOptions.staleTime = 1000;\n } // Set cache time to 1 if the option has been set to 0\n // when using suspense to prevent infinite loop of fetches\n\n\n if (defaultedOptions.cacheTime === 0) {\n defaultedOptions.cacheTime = 1;\n }\n }\n\n if (defaultedOptions.suspense || defaultedOptions.useErrorBoundary) {\n // Prevent retrying failed query if the error boundary has not been reset yet\n if (!errorResetBoundary.isReset()) {\n defaultedOptions.retryOnMount = false;\n }\n }\n\n var _React$useState2 = React.useState(function () {\n return new Observer(queryClient, defaultedOptions);\n }),\n observer = _React$useState2[0];\n\n var result = observer.getOptimisticResult(defaultedOptions);\n React.useEffect(function () {\n mountedRef.current = true;\n errorResetBoundary.clearReset();\n var unsubscribe = observer.subscribe(notifyManager.batchCalls(function () {\n if (mountedRef.current) {\n forceUpdate(function (x) {\n return x + 1;\n });\n }\n })); // Update result to make sure we did not miss any query updates\n // between creating the observer and subscribing to it.\n\n observer.updateResult();\n return function () {\n mountedRef.current = false;\n unsubscribe();\n };\n }, [errorResetBoundary, observer]);\n React.useEffect(function () {\n // Do not notify on updates because of changes in the options because\n // these changes should already be reflected in the optimistic result.\n observer.setOptions(defaultedOptions, {\n listeners: false\n });\n }, [defaultedOptions, observer]); // Handle suspense\n\n if (defaultedOptions.suspense && result.isLoading) {\n throw observer.fetchOptimistic(defaultedOptions).then(function (_ref) {\n var data = _ref.data;\n defaultedOptions.onSuccess == null ? void 0 : defaultedOptions.onSuccess(data);\n defaultedOptions.onSettled == null ? void 0 : defaultedOptions.onSettled(data, null);\n }).catch(function (error) {\n errorResetBoundary.clearReset();\n defaultedOptions.onError == null ? void 0 : defaultedOptions.onError(error);\n defaultedOptions.onSettled == null ? void 0 : defaultedOptions.onSettled(undefined, error);\n });\n } // Handle error boundary\n\n\n if (result.isError && !errorResetBoundary.isReset() && !result.isFetching && shouldThrowError(defaultedOptions.suspense, defaultedOptions.useErrorBoundary, [result.error, observer.getCurrentQuery()])) {\n throw result.error;\n } // Handle result property usage tracking\n\n\n if (defaultedOptions.notifyOnChangeProps === 'tracked') {\n result = observer.trackResult(result, defaultedOptions);\n }\n\n return result;\n}","import { QueryObserver } from '../core';\nimport { parseQueryArgs } from '../core/utils';\nimport { useBaseQuery } from './useBaseQuery'; // HOOK\n\nexport function useQuery(arg1, arg2, arg3) {\n var parsedOptions = parseQueryArgs(arg1, arg2, arg3);\n return useBaseQuery(parsedOptions, QueryObserver);\n}","if (process.env.NODE_ENV !== 'development') {\n module.exports = {\n ReactQueryDevtools: function () {\n return null\n },\n ReactQueryDevtoolsPanel: function () {\n return null\n },\n }\n} else {\n module.exports = require('./development')\n}\n","import _extends from '@babel/runtime/helpers/esm/extends';\n\n/**\r\n * Actions represent the type of change to a location value.\r\n *\r\n * @see https://github.com/remix-run/history/tree/main/docs/api-reference.md#action\r\n */\nvar Action;\n\n(function (Action) {\n /**\r\n * A POP indicates a change to an arbitrary index in the history stack, such\r\n * as a back or forward navigation. It does not describe the direction of the\r\n * navigation, only that the current index changed.\r\n *\r\n * Note: This is the default action for newly created history objects.\r\n */\n Action[\"Pop\"] = \"POP\";\n /**\r\n * A PUSH indicates a new entry being added to the history stack, such as when\r\n * a link is clicked and a new page loads. When this happens, all subsequent\r\n * entries in the stack are lost.\r\n */\n\n Action[\"Push\"] = \"PUSH\";\n /**\r\n * A REPLACE indicates the entry at the current index in the history stack\r\n * being replaced by a new one.\r\n */\n\n Action[\"Replace\"] = \"REPLACE\";\n})(Action || (Action = {}));\n\nvar readOnly = process.env.NODE_ENV !== \"production\" ? function (obj) {\n return Object.freeze(obj);\n} : function (obj) {\n return obj;\n};\n\nfunction warning(cond, message) {\n if (!cond) {\n // eslint-disable-next-line no-console\n if (typeof console !== 'undefined') console.warn(message);\n\n try {\n // Welcome to debugging history!\n //\n // This error is thrown as a convenience so you can more easily\n // find the source for a warning that appears in the console by\n // enabling \"pause on exceptions\" in your JavaScript debugger.\n throw new Error(message); // eslint-disable-next-line no-empty\n } catch (e) {}\n }\n}\n\nvar BeforeUnloadEventType = 'beforeunload';\nvar HashChangeEventType = 'hashchange';\nvar PopStateEventType = 'popstate';\n/**\r\n * Browser history stores the location in regular URLs. This is the standard for\r\n * most web apps, but it requires some configuration on the server to ensure you\r\n * serve the same app at multiple URLs.\r\n *\r\n * @see https://github.com/remix-run/history/tree/main/docs/api-reference.md#createbrowserhistory\r\n */\n\nfunction createBrowserHistory(options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n _options$window = _options.window,\n window = _options$window === void 0 ? document.defaultView : _options$window;\n var globalHistory = window.history;\n\n function getIndexAndLocation() {\n var _window$location = window.location,\n pathname = _window$location.pathname,\n search = _window$location.search,\n hash = _window$location.hash;\n var state = globalHistory.state || {};\n return [state.idx, readOnly({\n pathname: pathname,\n search: search,\n hash: hash,\n state: state.usr || null,\n key: state.key || 'default'\n })];\n }\n\n var blockedPopTx = null;\n\n function handlePop() {\n if (blockedPopTx) {\n blockers.call(blockedPopTx);\n blockedPopTx = null;\n } else {\n var nextAction = Action.Pop;\n\n var _getIndexAndLocation = getIndexAndLocation(),\n nextIndex = _getIndexAndLocation[0],\n nextLocation = _getIndexAndLocation[1];\n\n if (blockers.length) {\n if (nextIndex != null) {\n var delta = index - nextIndex;\n\n if (delta) {\n // Revert the POP\n blockedPopTx = {\n action: nextAction,\n location: nextLocation,\n retry: function retry() {\n go(delta * -1);\n }\n };\n go(delta);\n }\n } else {\n // Trying to POP to a location with no index. We did not create\n // this location, so we can't effectively block the navigation.\n process.env.NODE_ENV !== \"production\" ? warning(false, // TODO: Write up a doc that explains our blocking strategy in\n // detail and link to it here so people can understand better what\n // is going on and how to avoid it.\n \"You are trying to block a POP navigation to a location that was not \" + \"created by the history library. The block will fail silently in \" + \"production, but in general you should do all navigation with the \" + \"history library (instead of using window.history.pushState directly) \" + \"to avoid this situation.\") : void 0;\n }\n } else {\n applyTx(nextAction);\n }\n }\n }\n\n window.addEventListener(PopStateEventType, handlePop);\n var action = Action.Pop;\n\n var _getIndexAndLocation2 = getIndexAndLocation(),\n index = _getIndexAndLocation2[0],\n location = _getIndexAndLocation2[1];\n\n var listeners = createEvents();\n var blockers = createEvents();\n\n if (index == null) {\n index = 0;\n globalHistory.replaceState(_extends({}, globalHistory.state, {\n idx: index\n }), '');\n }\n\n function createHref(to) {\n return typeof to === 'string' ? to : createPath(to);\n } // state defaults to `null` because `window.history.state` does\n\n\n function getNextLocation(to, state) {\n if (state === void 0) {\n state = null;\n }\n\n return readOnly(_extends({\n pathname: location.pathname,\n hash: '',\n search: ''\n }, typeof to === 'string' ? parsePath(to) : to, {\n state: state,\n key: createKey()\n }));\n }\n\n function getHistoryStateAndUrl(nextLocation, index) {\n return [{\n usr: nextLocation.state,\n key: nextLocation.key,\n idx: index\n }, createHref(nextLocation)];\n }\n\n function allowTx(action, location, retry) {\n return !blockers.length || (blockers.call({\n action: action,\n location: location,\n retry: retry\n }), false);\n }\n\n function applyTx(nextAction) {\n action = nextAction;\n\n var _getIndexAndLocation3 = getIndexAndLocation();\n\n index = _getIndexAndLocation3[0];\n location = _getIndexAndLocation3[1];\n listeners.call({\n action: action,\n location: location\n });\n }\n\n function push(to, state) {\n var nextAction = Action.Push;\n var nextLocation = getNextLocation(to, state);\n\n function retry() {\n push(to, state);\n }\n\n if (allowTx(nextAction, nextLocation, retry)) {\n var _getHistoryStateAndUr = getHistoryStateAndUrl(nextLocation, index + 1),\n historyState = _getHistoryStateAndUr[0],\n url = _getHistoryStateAndUr[1]; // TODO: Support forced reloading\n // try...catch because iOS limits us to 100 pushState calls :/\n\n\n try {\n globalHistory.pushState(historyState, '', url);\n } catch (error) {\n // They are going to lose state here, but there is no real\n // way to warn them about it since the page will refresh...\n window.location.assign(url);\n }\n\n applyTx(nextAction);\n }\n }\n\n function replace(to, state) {\n var nextAction = Action.Replace;\n var nextLocation = getNextLocation(to, state);\n\n function retry() {\n replace(to, state);\n }\n\n if (allowTx(nextAction, nextLocation, retry)) {\n var _getHistoryStateAndUr2 = getHistoryStateAndUrl(nextLocation, index),\n historyState = _getHistoryStateAndUr2[0],\n url = _getHistoryStateAndUr2[1]; // TODO: Support forced reloading\n\n\n globalHistory.replaceState(historyState, '', url);\n applyTx(nextAction);\n }\n }\n\n function go(delta) {\n globalHistory.go(delta);\n }\n\n var history = {\n get action() {\n return action;\n },\n\n get location() {\n return location;\n },\n\n createHref: createHref,\n push: push,\n replace: replace,\n go: go,\n back: function back() {\n go(-1);\n },\n forward: function forward() {\n go(1);\n },\n listen: function listen(listener) {\n return listeners.push(listener);\n },\n block: function block(blocker) {\n var unblock = blockers.push(blocker);\n\n if (blockers.length === 1) {\n window.addEventListener(BeforeUnloadEventType, promptBeforeUnload);\n }\n\n return function () {\n unblock(); // Remove the beforeunload listener so the document may\n // still be salvageable in the pagehide event.\n // See https://html.spec.whatwg.org/#unloading-documents\n\n if (!blockers.length) {\n window.removeEventListener(BeforeUnloadEventType, promptBeforeUnload);\n }\n };\n }\n };\n return history;\n}\n/**\r\n * Hash history stores the location in window.location.hash. This makes it ideal\r\n * for situations where you don't want to send the location to the server for\r\n * some reason, either because you do cannot configure it or the URL space is\r\n * reserved for something else.\r\n *\r\n * @see https://github.com/remix-run/history/tree/main/docs/api-reference.md#createhashhistory\r\n */\n\nfunction createHashHistory(options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options2 = options,\n _options2$window = _options2.window,\n window = _options2$window === void 0 ? document.defaultView : _options2$window;\n var globalHistory = window.history;\n\n function getIndexAndLocation() {\n var _parsePath = parsePath(window.location.hash.substr(1)),\n _parsePath$pathname = _parsePath.pathname,\n pathname = _parsePath$pathname === void 0 ? '/' : _parsePath$pathname,\n _parsePath$search = _parsePath.search,\n search = _parsePath$search === void 0 ? '' : _parsePath$search,\n _parsePath$hash = _parsePath.hash,\n hash = _parsePath$hash === void 0 ? '' : _parsePath$hash;\n\n var state = globalHistory.state || {};\n return [state.idx, readOnly({\n pathname: pathname,\n search: search,\n hash: hash,\n state: state.usr || null,\n key: state.key || 'default'\n })];\n }\n\n var blockedPopTx = null;\n\n function handlePop() {\n if (blockedPopTx) {\n blockers.call(blockedPopTx);\n blockedPopTx = null;\n } else {\n var nextAction = Action.Pop;\n\n var _getIndexAndLocation4 = getIndexAndLocation(),\n nextIndex = _getIndexAndLocation4[0],\n nextLocation = _getIndexAndLocation4[1];\n\n if (blockers.length) {\n if (nextIndex != null) {\n var delta = index - nextIndex;\n\n if (delta) {\n // Revert the POP\n blockedPopTx = {\n action: nextAction,\n location: nextLocation,\n retry: function retry() {\n go(delta * -1);\n }\n };\n go(delta);\n }\n } else {\n // Trying to POP to a location with no index. We did not create\n // this location, so we can't effectively block the navigation.\n process.env.NODE_ENV !== \"production\" ? warning(false, // TODO: Write up a doc that explains our blocking strategy in\n // detail and link to it here so people can understand better\n // what is going on and how to avoid it.\n \"You are trying to block a POP navigation to a location that was not \" + \"created by the history library. The block will fail silently in \" + \"production, but in general you should do all navigation with the \" + \"history library (instead of using window.history.pushState directly) \" + \"to avoid this situation.\") : void 0;\n }\n } else {\n applyTx(nextAction);\n }\n }\n }\n\n window.addEventListener(PopStateEventType, handlePop); // popstate does not fire on hashchange in IE 11 and old (trident) Edge\n // https://developer.mozilla.org/de/docs/Web/API/Window/popstate_event\n\n window.addEventListener(HashChangeEventType, function () {\n var _getIndexAndLocation5 = getIndexAndLocation(),\n nextLocation = _getIndexAndLocation5[1]; // Ignore extraneous hashchange events.\n\n\n if (createPath(nextLocation) !== createPath(location)) {\n handlePop();\n }\n });\n var action = Action.Pop;\n\n var _getIndexAndLocation6 = getIndexAndLocation(),\n index = _getIndexAndLocation6[0],\n location = _getIndexAndLocation6[1];\n\n var listeners = createEvents();\n var blockers = createEvents();\n\n if (index == null) {\n index = 0;\n globalHistory.replaceState(_extends({}, globalHistory.state, {\n idx: index\n }), '');\n }\n\n function getBaseHref() {\n var base = document.querySelector('base');\n var href = '';\n\n if (base && base.getAttribute('href')) {\n var url = window.location.href;\n var hashIndex = url.indexOf('#');\n href = hashIndex === -1 ? url : url.slice(0, hashIndex);\n }\n\n return href;\n }\n\n function createHref(to) {\n return getBaseHref() + '#' + (typeof to === 'string' ? to : createPath(to));\n }\n\n function getNextLocation(to, state) {\n if (state === void 0) {\n state = null;\n }\n\n return readOnly(_extends({\n pathname: location.pathname,\n hash: '',\n search: ''\n }, typeof to === 'string' ? parsePath(to) : to, {\n state: state,\n key: createKey()\n }));\n }\n\n function getHistoryStateAndUrl(nextLocation, index) {\n return [{\n usr: nextLocation.state,\n key: nextLocation.key,\n idx: index\n }, createHref(nextLocation)];\n }\n\n function allowTx(action, location, retry) {\n return !blockers.length || (blockers.call({\n action: action,\n location: location,\n retry: retry\n }), false);\n }\n\n function applyTx(nextAction) {\n action = nextAction;\n\n var _getIndexAndLocation7 = getIndexAndLocation();\n\n index = _getIndexAndLocation7[0];\n location = _getIndexAndLocation7[1];\n listeners.call({\n action: action,\n location: location\n });\n }\n\n function push(to, state) {\n var nextAction = Action.Push;\n var nextLocation = getNextLocation(to, state);\n\n function retry() {\n push(to, state);\n }\n\n process.env.NODE_ENV !== \"production\" ? warning(nextLocation.pathname.charAt(0) === '/', \"Relative pathnames are not supported in hash history.push(\" + JSON.stringify(to) + \")\") : void 0;\n\n if (allowTx(nextAction, nextLocation, retry)) {\n var _getHistoryStateAndUr3 = getHistoryStateAndUrl(nextLocation, index + 1),\n historyState = _getHistoryStateAndUr3[0],\n url = _getHistoryStateAndUr3[1]; // TODO: Support forced reloading\n // try...catch because iOS limits us to 100 pushState calls :/\n\n\n try {\n globalHistory.pushState(historyState, '', url);\n } catch (error) {\n // They are going to lose state here, but there is no real\n // way to warn them about it since the page will refresh...\n window.location.assign(url);\n }\n\n applyTx(nextAction);\n }\n }\n\n function replace(to, state) {\n var nextAction = Action.Replace;\n var nextLocation = getNextLocation(to, state);\n\n function retry() {\n replace(to, state);\n }\n\n process.env.NODE_ENV !== \"production\" ? warning(nextLocation.pathname.charAt(0) === '/', \"Relative pathnames are not supported in hash history.replace(\" + JSON.stringify(to) + \")\") : void 0;\n\n if (allowTx(nextAction, nextLocation, retry)) {\n var _getHistoryStateAndUr4 = getHistoryStateAndUrl(nextLocation, index),\n historyState = _getHistoryStateAndUr4[0],\n url = _getHistoryStateAndUr4[1]; // TODO: Support forced reloading\n\n\n globalHistory.replaceState(historyState, '', url);\n applyTx(nextAction);\n }\n }\n\n function go(delta) {\n globalHistory.go(delta);\n }\n\n var history = {\n get action() {\n return action;\n },\n\n get location() {\n return location;\n },\n\n createHref: createHref,\n push: push,\n replace: replace,\n go: go,\n back: function back() {\n go(-1);\n },\n forward: function forward() {\n go(1);\n },\n listen: function listen(listener) {\n return listeners.push(listener);\n },\n block: function block(blocker) {\n var unblock = blockers.push(blocker);\n\n if (blockers.length === 1) {\n window.addEventListener(BeforeUnloadEventType, promptBeforeUnload);\n }\n\n return function () {\n unblock(); // Remove the beforeunload listener so the document may\n // still be salvageable in the pagehide event.\n // See https://html.spec.whatwg.org/#unloading-documents\n\n if (!blockers.length) {\n window.removeEventListener(BeforeUnloadEventType, promptBeforeUnload);\n }\n };\n }\n };\n return history;\n}\n/**\r\n * Memory history stores the current location in memory. It is designed for use\r\n * in stateful non-browser environments like tests and React Native.\r\n *\r\n * @see https://github.com/remix-run/history/tree/main/docs/api-reference.md#creatememoryhistory\r\n */\n\nfunction createMemoryHistory(options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options3 = options,\n _options3$initialEntr = _options3.initialEntries,\n initialEntries = _options3$initialEntr === void 0 ? ['/'] : _options3$initialEntr,\n initialIndex = _options3.initialIndex;\n var entries = initialEntries.map(function (entry) {\n var location = readOnly(_extends({\n pathname: '/',\n search: '',\n hash: '',\n state: null,\n key: createKey()\n }, typeof entry === 'string' ? parsePath(entry) : entry));\n process.env.NODE_ENV !== \"production\" ? warning(location.pathname.charAt(0) === '/', \"Relative pathnames are not supported in createMemoryHistory({ initialEntries }) (invalid entry: \" + JSON.stringify(entry) + \")\") : void 0;\n return location;\n });\n var index = clamp(initialIndex == null ? entries.length - 1 : initialIndex, 0, entries.length - 1);\n var action = Action.Pop;\n var location = entries[index];\n var listeners = createEvents();\n var blockers = createEvents();\n\n function createHref(to) {\n return typeof to === 'string' ? to : createPath(to);\n }\n\n function getNextLocation(to, state) {\n if (state === void 0) {\n state = null;\n }\n\n return readOnly(_extends({\n pathname: location.pathname,\n search: '',\n hash: ''\n }, typeof to === 'string' ? parsePath(to) : to, {\n state: state,\n key: createKey()\n }));\n }\n\n function allowTx(action, location, retry) {\n return !blockers.length || (blockers.call({\n action: action,\n location: location,\n retry: retry\n }), false);\n }\n\n function applyTx(nextAction, nextLocation) {\n action = nextAction;\n location = nextLocation;\n listeners.call({\n action: action,\n location: location\n });\n }\n\n function push(to, state) {\n var nextAction = Action.Push;\n var nextLocation = getNextLocation(to, state);\n\n function retry() {\n push(to, state);\n }\n\n process.env.NODE_ENV !== \"production\" ? warning(location.pathname.charAt(0) === '/', \"Relative pathnames are not supported in memory history.push(\" + JSON.stringify(to) + \")\") : void 0;\n\n if (allowTx(nextAction, nextLocation, retry)) {\n index += 1;\n entries.splice(index, entries.length, nextLocation);\n applyTx(nextAction, nextLocation);\n }\n }\n\n function replace(to, state) {\n var nextAction = Action.Replace;\n var nextLocation = getNextLocation(to, state);\n\n function retry() {\n replace(to, state);\n }\n\n process.env.NODE_ENV !== \"production\" ? warning(location.pathname.charAt(0) === '/', \"Relative pathnames are not supported in memory history.replace(\" + JSON.stringify(to) + \")\") : void 0;\n\n if (allowTx(nextAction, nextLocation, retry)) {\n entries[index] = nextLocation;\n applyTx(nextAction, nextLocation);\n }\n }\n\n function go(delta) {\n var nextIndex = clamp(index + delta, 0, entries.length - 1);\n var nextAction = Action.Pop;\n var nextLocation = entries[nextIndex];\n\n function retry() {\n go(delta);\n }\n\n if (allowTx(nextAction, nextLocation, retry)) {\n index = nextIndex;\n applyTx(nextAction, nextLocation);\n }\n }\n\n var history = {\n get index() {\n return index;\n },\n\n get action() {\n return action;\n },\n\n get location() {\n return location;\n },\n\n createHref: createHref,\n push: push,\n replace: replace,\n go: go,\n back: function back() {\n go(-1);\n },\n forward: function forward() {\n go(1);\n },\n listen: function listen(listener) {\n return listeners.push(listener);\n },\n block: function block(blocker) {\n return blockers.push(blocker);\n }\n };\n return history;\n} ////////////////////////////////////////////////////////////////////////////////\n// UTILS\n////////////////////////////////////////////////////////////////////////////////\n\nfunction clamp(n, lowerBound, upperBound) {\n return Math.min(Math.max(n, lowerBound), upperBound);\n}\n\nfunction promptBeforeUnload(event) {\n // Cancel the event.\n event.preventDefault(); // Chrome (and legacy IE) requires returnValue to be set.\n\n event.returnValue = '';\n}\n\nfunction createEvents() {\n var handlers = [];\n return {\n get length() {\n return handlers.length;\n },\n\n push: function push(fn) {\n handlers.push(fn);\n return function () {\n handlers = handlers.filter(function (handler) {\n return handler !== fn;\n });\n };\n },\n call: function call(arg) {\n handlers.forEach(function (fn) {\n return fn && fn(arg);\n });\n }\n };\n}\n\nfunction createKey() {\n return Math.random().toString(36).substr(2, 8);\n}\n/**\r\n * Creates a string URL path from the given pathname, search, and hash components.\r\n *\r\n * @see https://github.com/remix-run/history/tree/main/docs/api-reference.md#createpath\r\n */\n\n\nfunction createPath(_ref) {\n var _ref$pathname = _ref.pathname,\n pathname = _ref$pathname === void 0 ? '/' : _ref$pathname,\n _ref$search = _ref.search,\n search = _ref$search === void 0 ? '' : _ref$search,\n _ref$hash = _ref.hash,\n hash = _ref$hash === void 0 ? '' : _ref$hash;\n if (search && search !== '?') pathname += search.charAt(0) === '?' ? search : '?' + search;\n if (hash && hash !== '#') pathname += hash.charAt(0) === '#' ? hash : '#' + hash;\n return pathname;\n}\n/**\r\n * Parses a string URL path into its separate pathname, search, and hash components.\r\n *\r\n * @see https://github.com/remix-run/history/tree/main/docs/api-reference.md#parsepath\r\n */\n\nfunction parsePath(path) {\n var parsedPath = {};\n\n if (path) {\n var hashIndex = path.indexOf('#');\n\n if (hashIndex >= 0) {\n parsedPath.hash = path.substr(hashIndex);\n path = path.substr(0, hashIndex);\n }\n\n var searchIndex = path.indexOf('?');\n\n if (searchIndex >= 0) {\n parsedPath.search = path.substr(searchIndex);\n path = path.substr(0, searchIndex);\n }\n\n if (path) {\n parsedPath.pathname = path;\n }\n }\n\n return parsedPath;\n}\n\nexport { Action, createBrowserHistory, createHashHistory, createMemoryHistory, createPath, parsePath };\n//# sourceMappingURL=index.js.map\n","/**\n * React Router v6.3.0\n *\n * Copyright (c) Remix Software Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE.md file in the root directory of this source tree.\n *\n * @license MIT\n */\nimport { parsePath, createMemoryHistory, Action } from 'history';\nexport { Action as NavigationType, createPath, parsePath } from 'history';\nimport { createContext, useContext, useMemo, useRef, useEffect, useCallback, createElement, useState, useLayoutEffect, Children, isValidElement, Fragment } from 'react';\n\nconst NavigationContext = /*#__PURE__*/createContext(null);\n\nif (process.env.NODE_ENV !== \"production\") {\n NavigationContext.displayName = \"Navigation\";\n}\n\nconst LocationContext = /*#__PURE__*/createContext(null);\n\nif (process.env.NODE_ENV !== \"production\") {\n LocationContext.displayName = \"Location\";\n}\n\nconst RouteContext = /*#__PURE__*/createContext({\n outlet: null,\n matches: []\n});\n\nif (process.env.NODE_ENV !== \"production\") {\n RouteContext.displayName = \"Route\";\n}\n\nfunction invariant(cond, message) {\n if (!cond) throw new Error(message);\n}\nfunction warning(cond, message) {\n if (!cond) {\n // eslint-disable-next-line no-console\n if (typeof console !== \"undefined\") console.warn(message);\n\n try {\n // Welcome to debugging React Router!\n //\n // This error is thrown as a convenience so you can more easily\n // find the source for a warning that appears in the console by\n // enabling \"pause on exceptions\" in your JavaScript debugger.\n throw new Error(message); // eslint-disable-next-line no-empty\n } catch (e) {}\n }\n}\nconst alreadyWarned = {};\nfunction warningOnce(key, cond, message) {\n if (!cond && !alreadyWarned[key]) {\n alreadyWarned[key] = true;\n process.env.NODE_ENV !== \"production\" ? warning(false, message) : void 0;\n }\n}\n\n/**\n * Returns a path with params interpolated.\n *\n * @see https://reactrouter.com/docs/en/v6/api#generatepath\n */\nfunction generatePath(path, params) {\n if (params === void 0) {\n params = {};\n }\n\n return path.replace(/:(\\w+)/g, (_, key) => {\n !(params[key] != null) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Missing \\\":\" + key + \"\\\" param\") : invariant(false) : void 0;\n return params[key];\n }).replace(/\\/*\\*$/, _ => params[\"*\"] == null ? \"\" : params[\"*\"].replace(/^\\/*/, \"/\"));\n}\n/**\n * A RouteMatch contains info about how a route matched a URL.\n */\n\n/**\n * Matches the given routes to a location and returns the match data.\n *\n * @see https://reactrouter.com/docs/en/v6/api#matchroutes\n */\nfunction matchRoutes(routes, locationArg, basename) {\n if (basename === void 0) {\n basename = \"/\";\n }\n\n let location = typeof locationArg === \"string\" ? parsePath(locationArg) : locationArg;\n let pathname = stripBasename(location.pathname || \"/\", basename);\n\n if (pathname == null) {\n return null;\n }\n\n let branches = flattenRoutes(routes);\n rankRouteBranches(branches);\n let matches = null;\n\n for (let i = 0; matches == null && i < branches.length; ++i) {\n matches = matchRouteBranch(branches[i], pathname);\n }\n\n return matches;\n}\n\nfunction flattenRoutes(routes, branches, parentsMeta, parentPath) {\n if (branches === void 0) {\n branches = [];\n }\n\n if (parentsMeta === void 0) {\n parentsMeta = [];\n }\n\n if (parentPath === void 0) {\n parentPath = \"\";\n }\n\n routes.forEach((route, index) => {\n let meta = {\n relativePath: route.path || \"\",\n caseSensitive: route.caseSensitive === true,\n childrenIndex: index,\n route\n };\n\n if (meta.relativePath.startsWith(\"/\")) {\n !meta.relativePath.startsWith(parentPath) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Absolute route path \\\"\" + meta.relativePath + \"\\\" nested under path \" + (\"\\\"\" + parentPath + \"\\\" is not valid. An absolute child route path \") + \"must start with the combined path of all its parent routes.\") : invariant(false) : void 0;\n meta.relativePath = meta.relativePath.slice(parentPath.length);\n }\n\n let path = joinPaths([parentPath, meta.relativePath]);\n let routesMeta = parentsMeta.concat(meta); // Add the children before adding this route to the array so we traverse the\n // route tree depth-first and child routes appear before their parents in\n // the \"flattened\" version.\n\n if (route.children && route.children.length > 0) {\n !(route.index !== true) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Index routes must not have child routes. Please remove \" + (\"all child routes from route path \\\"\" + path + \"\\\".\")) : invariant(false) : void 0;\n flattenRoutes(route.children, branches, routesMeta, path);\n } // Routes without a path shouldn't ever match by themselves unless they are\n // index routes, so don't add them to the list of possible branches.\n\n\n if (route.path == null && !route.index) {\n return;\n }\n\n branches.push({\n path,\n score: computeScore(path, route.index),\n routesMeta\n });\n });\n return branches;\n}\n\nfunction rankRouteBranches(branches) {\n branches.sort((a, b) => a.score !== b.score ? b.score - a.score // Higher score first\n : compareIndexes(a.routesMeta.map(meta => meta.childrenIndex), b.routesMeta.map(meta => meta.childrenIndex)));\n}\n\nconst paramRe = /^:\\w+$/;\nconst dynamicSegmentValue = 3;\nconst indexRouteValue = 2;\nconst emptySegmentValue = 1;\nconst staticSegmentValue = 10;\nconst splatPenalty = -2;\n\nconst isSplat = s => s === \"*\";\n\nfunction computeScore(path, index) {\n let segments = path.split(\"/\");\n let initialScore = segments.length;\n\n if (segments.some(isSplat)) {\n initialScore += splatPenalty;\n }\n\n if (index) {\n initialScore += indexRouteValue;\n }\n\n return segments.filter(s => !isSplat(s)).reduce((score, segment) => score + (paramRe.test(segment) ? dynamicSegmentValue : segment === \"\" ? emptySegmentValue : staticSegmentValue), initialScore);\n}\n\nfunction compareIndexes(a, b) {\n let siblings = a.length === b.length && a.slice(0, -1).every((n, i) => n === b[i]);\n return siblings ? // If two routes are siblings, we should try to match the earlier sibling\n // first. This allows people to have fine-grained control over the matching\n // behavior by simply putting routes with identical paths in the order they\n // want them tried.\n a[a.length - 1] - b[b.length - 1] : // Otherwise, it doesn't really make sense to rank non-siblings by index,\n // so they sort equally.\n 0;\n}\n\nfunction matchRouteBranch(branch, pathname) {\n let {\n routesMeta\n } = branch;\n let matchedParams = {};\n let matchedPathname = \"/\";\n let matches = [];\n\n for (let i = 0; i < routesMeta.length; ++i) {\n let meta = routesMeta[i];\n let end = i === routesMeta.length - 1;\n let remainingPathname = matchedPathname === \"/\" ? pathname : pathname.slice(matchedPathname.length) || \"/\";\n let match = matchPath({\n path: meta.relativePath,\n caseSensitive: meta.caseSensitive,\n end\n }, remainingPathname);\n if (!match) return null;\n Object.assign(matchedParams, match.params);\n let route = meta.route;\n matches.push({\n params: matchedParams,\n pathname: joinPaths([matchedPathname, match.pathname]),\n pathnameBase: normalizePathname(joinPaths([matchedPathname, match.pathnameBase])),\n route\n });\n\n if (match.pathnameBase !== \"/\") {\n matchedPathname = joinPaths([matchedPathname, match.pathnameBase]);\n }\n }\n\n return matches;\n}\n/**\n * A PathPattern is used to match on some portion of a URL pathname.\n */\n\n\n/**\n * Performs pattern matching on a URL pathname and returns information about\n * the match.\n *\n * @see https://reactrouter.com/docs/en/v6/api#matchpath\n */\nfunction matchPath(pattern, pathname) {\n if (typeof pattern === \"string\") {\n pattern = {\n path: pattern,\n caseSensitive: false,\n end: true\n };\n }\n\n let [matcher, paramNames] = compilePath(pattern.path, pattern.caseSensitive, pattern.end);\n let match = pathname.match(matcher);\n if (!match) return null;\n let matchedPathname = match[0];\n let pathnameBase = matchedPathname.replace(/(.)\\/+$/, \"$1\");\n let captureGroups = match.slice(1);\n let params = paramNames.reduce((memo, paramName, index) => {\n // We need to compute the pathnameBase here using the raw splat value\n // instead of using params[\"*\"] later because it will be decoded then\n if (paramName === \"*\") {\n let splatValue = captureGroups[index] || \"\";\n pathnameBase = matchedPathname.slice(0, matchedPathname.length - splatValue.length).replace(/(.)\\/+$/, \"$1\");\n }\n\n memo[paramName] = safelyDecodeURIComponent(captureGroups[index] || \"\", paramName);\n return memo;\n }, {});\n return {\n params,\n pathname: matchedPathname,\n pathnameBase,\n pattern\n };\n}\n\nfunction compilePath(path, caseSensitive, end) {\n if (caseSensitive === void 0) {\n caseSensitive = false;\n }\n\n if (end === void 0) {\n end = true;\n }\n\n process.env.NODE_ENV !== \"production\" ? warning(path === \"*\" || !path.endsWith(\"*\") || path.endsWith(\"/*\"), \"Route path \\\"\" + path + \"\\\" will be treated as if it were \" + (\"\\\"\" + path.replace(/\\*$/, \"/*\") + \"\\\" because the `*` character must \") + \"always follow a `/` in the pattern. To get rid of this warning, \" + (\"please change the route path to \\\"\" + path.replace(/\\*$/, \"/*\") + \"\\\".\")) : void 0;\n let paramNames = [];\n let regexpSource = \"^\" + path.replace(/\\/*\\*?$/, \"\") // Ignore trailing / and /*, we'll handle it below\n .replace(/^\\/*/, \"/\") // Make sure it has a leading /\n .replace(/[\\\\.*+^$?{}|()[\\]]/g, \"\\\\$&\") // Escape special regex chars\n .replace(/:(\\w+)/g, (_, paramName) => {\n paramNames.push(paramName);\n return \"([^\\\\/]+)\";\n });\n\n if (path.endsWith(\"*\")) {\n paramNames.push(\"*\");\n regexpSource += path === \"*\" || path === \"/*\" ? \"(.*)$\" // Already matched the initial /, just match the rest\n : \"(?:\\\\/(.+)|\\\\/*)$\"; // Don't include the / in params[\"*\"]\n } else {\n regexpSource += end ? \"\\\\/*$\" // When matching to the end, ignore trailing slashes\n : // Otherwise, match a word boundary or a proceeding /. The word boundary restricts\n // parent routes to matching only their own words and nothing more, e.g. parent\n // route \"/home\" should not match \"/home2\".\n // Additionally, allow paths starting with `.`, `-`, `~`, and url-encoded entities,\n // but do not consume the character in the matched path so they can match against\n // nested paths.\n \"(?:(?=[.~-]|%[0-9A-F]{2})|\\\\b|\\\\/|$)\";\n }\n\n let matcher = new RegExp(regexpSource, caseSensitive ? undefined : \"i\");\n return [matcher, paramNames];\n}\n\nfunction safelyDecodeURIComponent(value, paramName) {\n try {\n return decodeURIComponent(value);\n } catch (error) {\n process.env.NODE_ENV !== \"production\" ? warning(false, \"The value for the URL param \\\"\" + paramName + \"\\\" will not be decoded because\" + (\" the string \\\"\" + value + \"\\\" is a malformed URL segment. This is probably\") + (\" due to a bad percent encoding (\" + error + \").\")) : void 0;\n return value;\n }\n}\n/**\n * Returns a resolved path object relative to the given pathname.\n *\n * @see https://reactrouter.com/docs/en/v6/api#resolvepath\n */\n\n\nfunction resolvePath(to, fromPathname) {\n if (fromPathname === void 0) {\n fromPathname = \"/\";\n }\n\n let {\n pathname: toPathname,\n search = \"\",\n hash = \"\"\n } = typeof to === \"string\" ? parsePath(to) : to;\n let pathname = toPathname ? toPathname.startsWith(\"/\") ? toPathname : resolvePathname(toPathname, fromPathname) : fromPathname;\n return {\n pathname,\n search: normalizeSearch(search),\n hash: normalizeHash(hash)\n };\n}\n\nfunction resolvePathname(relativePath, fromPathname) {\n let segments = fromPathname.replace(/\\/+$/, \"\").split(\"/\");\n let relativeSegments = relativePath.split(\"/\");\n relativeSegments.forEach(segment => {\n if (segment === \"..\") {\n // Keep the root \"\" segment so the pathname starts at /\n if (segments.length > 1) segments.pop();\n } else if (segment !== \".\") {\n segments.push(segment);\n }\n });\n return segments.length > 1 ? segments.join(\"/\") : \"/\";\n}\n\nfunction resolveTo(toArg, routePathnames, locationPathname) {\n let to = typeof toArg === \"string\" ? parsePath(toArg) : toArg;\n let toPathname = toArg === \"\" || to.pathname === \"\" ? \"/\" : to.pathname; // If a pathname is explicitly provided in `to`, it should be relative to the\n // route context. This is explained in `Note on `<Link to>` values` in our\n // migration guide from v5 as a means of disambiguation between `to` values\n // that begin with `/` and those that do not. However, this is problematic for\n // `to` values that do not provide a pathname. `to` can simply be a search or\n // hash string, in which case we should assume that the navigation is relative\n // to the current location's pathname and *not* the route pathname.\n\n let from;\n\n if (toPathname == null) {\n from = locationPathname;\n } else {\n let routePathnameIndex = routePathnames.length - 1;\n\n if (toPathname.startsWith(\"..\")) {\n let toSegments = toPathname.split(\"/\"); // Each leading .. segment means \"go up one route\" instead of \"go up one\n // URL segment\". This is a key difference from how <a href> works and a\n // major reason we call this a \"to\" value instead of a \"href\".\n\n while (toSegments[0] === \"..\") {\n toSegments.shift();\n routePathnameIndex -= 1;\n }\n\n to.pathname = toSegments.join(\"/\");\n } // If there are more \"..\" segments than parent routes, resolve relative to\n // the root / URL.\n\n\n from = routePathnameIndex >= 0 ? routePathnames[routePathnameIndex] : \"/\";\n }\n\n let path = resolvePath(to, from); // Ensure the pathname has a trailing slash if the original to value had one.\n\n if (toPathname && toPathname !== \"/\" && toPathname.endsWith(\"/\") && !path.pathname.endsWith(\"/\")) {\n path.pathname += \"/\";\n }\n\n return path;\n}\nfunction getToPathname(to) {\n // Empty strings should be treated the same as / paths\n return to === \"\" || to.pathname === \"\" ? \"/\" : typeof to === \"string\" ? parsePath(to).pathname : to.pathname;\n}\nfunction stripBasename(pathname, basename) {\n if (basename === \"/\") return pathname;\n\n if (!pathname.toLowerCase().startsWith(basename.toLowerCase())) {\n return null;\n }\n\n let nextChar = pathname.charAt(basename.length);\n\n if (nextChar && nextChar !== \"/\") {\n // pathname does not start with basename/\n return null;\n }\n\n return pathname.slice(basename.length) || \"/\";\n}\nconst joinPaths = paths => paths.join(\"/\").replace(/\\/\\/+/g, \"/\");\nconst normalizePathname = pathname => pathname.replace(/\\/+$/, \"\").replace(/^\\/*/, \"/\");\n\nconst normalizeSearch = search => !search || search === \"?\" ? \"\" : search.startsWith(\"?\") ? search : \"?\" + search;\n\nconst normalizeHash = hash => !hash || hash === \"#\" ? \"\" : hash.startsWith(\"#\") ? hash : \"#\" + hash;\n\n/**\n * Returns the full href for the given \"to\" value. This is useful for building\n * custom links that are also accessible and preserve right-click behavior.\n *\n * @see https://reactrouter.com/docs/en/v6/api#usehref\n */\n\nfunction useHref(to) {\n !useInRouterContext() ? process.env.NODE_ENV !== \"production\" ? invariant(false, // TODO: This error is probably because they somehow have 2 versions of the\n // router loaded. We can help them understand how to avoid that.\n \"useHref() may be used only in the context of a <Router> component.\") : invariant(false) : void 0;\n let {\n basename,\n navigator\n } = useContext(NavigationContext);\n let {\n hash,\n pathname,\n search\n } = useResolvedPath(to);\n let joinedPathname = pathname;\n\n if (basename !== \"/\") {\n let toPathname = getToPathname(to);\n let endsWithSlash = toPathname != null && toPathname.endsWith(\"/\");\n joinedPathname = pathname === \"/\" ? basename + (endsWithSlash ? \"/\" : \"\") : joinPaths([basename, pathname]);\n }\n\n return navigator.createHref({\n pathname: joinedPathname,\n search,\n hash\n });\n}\n/**\n * Returns true if this component is a descendant of a <Router>.\n *\n * @see https://reactrouter.com/docs/en/v6/api#useinroutercontext\n */\n\nfunction useInRouterContext() {\n return useContext(LocationContext) != null;\n}\n/**\n * Returns the current location object, which represents the current URL in web\n * browsers.\n *\n * Note: If you're using this it may mean you're doing some of your own\n * \"routing\" in your app, and we'd like to know what your use case is. We may\n * be able to provide something higher-level to better suit your needs.\n *\n * @see https://reactrouter.com/docs/en/v6/api#uselocation\n */\n\nfunction useLocation() {\n !useInRouterContext() ? process.env.NODE_ENV !== \"production\" ? invariant(false, // TODO: This error is probably because they somehow have 2 versions of the\n // router loaded. We can help them understand how to avoid that.\n \"useLocation() may be used only in the context of a <Router> component.\") : invariant(false) : void 0;\n return useContext(LocationContext).location;\n}\n/**\n * Returns the current navigation action which describes how the router came to\n * the current location, either by a pop, push, or replace on the history stack.\n *\n * @see https://reactrouter.com/docs/en/v6/api#usenavigationtype\n */\n\nfunction useNavigationType() {\n return useContext(LocationContext).navigationType;\n}\n/**\n * Returns true if the URL for the given \"to\" value matches the current URL.\n * This is useful for components that need to know \"active\" state, e.g.\n * <NavLink>.\n *\n * @see https://reactrouter.com/docs/en/v6/api#usematch\n */\n\nfunction useMatch(pattern) {\n !useInRouterContext() ? process.env.NODE_ENV !== \"production\" ? invariant(false, // TODO: This error is probably because they somehow have 2 versions of the\n // router loaded. We can help them understand how to avoid that.\n \"useMatch() may be used only in the context of a <Router> component.\") : invariant(false) : void 0;\n let {\n pathname\n } = useLocation();\n return useMemo(() => matchPath(pattern, pathname), [pathname, pattern]);\n}\n/**\n * The interface for the navigate() function returned from useNavigate().\n */\n\n/**\n * Returns an imperative method for changing the location. Used by <Link>s, but\n * may also be used by other elements to change the location.\n *\n * @see https://reactrouter.com/docs/en/v6/api#usenavigate\n */\nfunction useNavigate() {\n !useInRouterContext() ? process.env.NODE_ENV !== \"production\" ? invariant(false, // TODO: This error is probably because they somehow have 2 versions of the\n // router loaded. We can help them understand how to avoid that.\n \"useNavigate() may be used only in the context of a <Router> component.\") : invariant(false) : void 0;\n let {\n basename,\n navigator\n } = useContext(NavigationContext);\n let {\n matches\n } = useContext(RouteContext);\n let {\n pathname: locationPathname\n } = useLocation();\n let routePathnamesJson = JSON.stringify(matches.map(match => match.pathnameBase));\n let activeRef = useRef(false);\n useEffect(() => {\n activeRef.current = true;\n });\n let navigate = useCallback(function (to, options) {\n if (options === void 0) {\n options = {};\n }\n\n process.env.NODE_ENV !== \"production\" ? warning(activeRef.current, \"You should call navigate() in a React.useEffect(), not when \" + \"your component is first rendered.\") : void 0;\n if (!activeRef.current) return;\n\n if (typeof to === \"number\") {\n navigator.go(to);\n return;\n }\n\n let path = resolveTo(to, JSON.parse(routePathnamesJson), locationPathname);\n\n if (basename !== \"/\") {\n path.pathname = joinPaths([basename, path.pathname]);\n }\n\n (!!options.replace ? navigator.replace : navigator.push)(path, options.state);\n }, [basename, navigator, routePathnamesJson, locationPathname]);\n return navigate;\n}\nconst OutletContext = /*#__PURE__*/createContext(null);\n/**\n * Returns the context (if provided) for the child route at this level of the route\n * hierarchy.\n * @see https://reactrouter.com/docs/en/v6/api#useoutletcontext\n */\n\nfunction useOutletContext() {\n return useContext(OutletContext);\n}\n/**\n * Returns the element for the child route at this level of the route\n * hierarchy. Used internally by <Outlet> to render child routes.\n *\n * @see https://reactrouter.com/docs/en/v6/api#useoutlet\n */\n\nfunction useOutlet(context) {\n let outlet = useContext(RouteContext).outlet;\n\n if (outlet) {\n return /*#__PURE__*/createElement(OutletContext.Provider, {\n value: context\n }, outlet);\n }\n\n return outlet;\n}\n/**\n * Returns an object of key/value pairs of the dynamic params from the current\n * URL that were matched by the route path.\n *\n * @see https://reactrouter.com/docs/en/v6/api#useparams\n */\n\nfunction useParams() {\n let {\n matches\n } = useContext(RouteContext);\n let routeMatch = matches[matches.length - 1];\n return routeMatch ? routeMatch.params : {};\n}\n/**\n * Resolves the pathname of the given `to` value against the current location.\n *\n * @see https://reactrouter.com/docs/en/v6/api#useresolvedpath\n */\n\nfunction useResolvedPath(to) {\n let {\n matches\n } = useContext(RouteContext);\n let {\n pathname: locationPathname\n } = useLocation();\n let routePathnamesJson = JSON.stringify(matches.map(match => match.pathnameBase));\n return useMemo(() => resolveTo(to, JSON.parse(routePathnamesJson), locationPathname), [to, routePathnamesJson, locationPathname]);\n}\n/**\n * Returns the element of the route that matched the current location, prepared\n * with the correct context to render the remainder of the route tree. Route\n * elements in the tree must render an <Outlet> to render their child route's\n * element.\n *\n * @see https://reactrouter.com/docs/en/v6/api#useroutes\n */\n\nfunction useRoutes(routes, locationArg) {\n !useInRouterContext() ? process.env.NODE_ENV !== \"production\" ? invariant(false, // TODO: This error is probably because they somehow have 2 versions of the\n // router loaded. We can help them understand how to avoid that.\n \"useRoutes() may be used only in the context of a <Router> component.\") : invariant(false) : void 0;\n let {\n matches: parentMatches\n } = useContext(RouteContext);\n let routeMatch = parentMatches[parentMatches.length - 1];\n let parentParams = routeMatch ? routeMatch.params : {};\n let parentPathname = routeMatch ? routeMatch.pathname : \"/\";\n let parentPathnameBase = routeMatch ? routeMatch.pathnameBase : \"/\";\n let parentRoute = routeMatch && routeMatch.route;\n\n if (process.env.NODE_ENV !== \"production\") {\n // You won't get a warning about 2 different <Routes> under a <Route>\n // without a trailing *, but this is a best-effort warning anyway since we\n // cannot even give the warning unless they land at the parent route.\n //\n // Example:\n //\n // <Routes>\n // {/* This route path MUST end with /* because otherwise\n // it will never match /blog/post/123 */}\n // <Route path=\"blog\" element={<Blog />} />\n // <Route path=\"blog/feed\" element={<BlogFeed />} />\n // </Routes>\n //\n // function Blog() {\n // return (\n // <Routes>\n // <Route path=\"post/:id\" element={<Post />} />\n // </Routes>\n // );\n // }\n let parentPath = parentRoute && parentRoute.path || \"\";\n warningOnce(parentPathname, !parentRoute || parentPath.endsWith(\"*\"), \"You rendered descendant <Routes> (or called `useRoutes()`) at \" + (\"\\\"\" + parentPathname + \"\\\" (under <Route path=\\\"\" + parentPath + \"\\\">) but the \") + \"parent route path has no trailing \\\"*\\\". This means if you navigate \" + \"deeper, the parent won't match anymore and therefore the child \" + \"routes will never render.\\n\\n\" + (\"Please change the parent <Route path=\\\"\" + parentPath + \"\\\"> to <Route \") + (\"path=\\\"\" + (parentPath === \"/\" ? \"*\" : parentPath + \"/*\") + \"\\\">.\"));\n }\n\n let locationFromContext = useLocation();\n let location;\n\n if (locationArg) {\n var _parsedLocationArg$pa;\n\n let parsedLocationArg = typeof locationArg === \"string\" ? parsePath(locationArg) : locationArg;\n !(parentPathnameBase === \"/\" || ((_parsedLocationArg$pa = parsedLocationArg.pathname) == null ? void 0 : _parsedLocationArg$pa.startsWith(parentPathnameBase))) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"When overriding the location using `<Routes location>` or `useRoutes(routes, location)`, \" + \"the location pathname must begin with the portion of the URL pathname that was \" + (\"matched by all parent routes. The current pathname base is \\\"\" + parentPathnameBase + \"\\\" \") + (\"but pathname \\\"\" + parsedLocationArg.pathname + \"\\\" was given in the `location` prop.\")) : invariant(false) : void 0;\n location = parsedLocationArg;\n } else {\n location = locationFromContext;\n }\n\n let pathname = location.pathname || \"/\";\n let remainingPathname = parentPathnameBase === \"/\" ? pathname : pathname.slice(parentPathnameBase.length) || \"/\";\n let matches = matchRoutes(routes, {\n pathname: remainingPathname\n });\n\n if (process.env.NODE_ENV !== \"production\") {\n process.env.NODE_ENV !== \"production\" ? warning(parentRoute || matches != null, \"No routes matched location \\\"\" + location.pathname + location.search + location.hash + \"\\\" \") : void 0;\n process.env.NODE_ENV !== \"production\" ? warning(matches == null || matches[matches.length - 1].route.element !== undefined, \"Matched leaf route at location \\\"\" + location.pathname + location.search + location.hash + \"\\\" does not have an element. \" + \"This means it will render an <Outlet /> with a null value by default resulting in an \\\"empty\\\" page.\") : void 0;\n }\n\n return _renderMatches(matches && matches.map(match => Object.assign({}, match, {\n params: Object.assign({}, parentParams, match.params),\n pathname: joinPaths([parentPathnameBase, match.pathname]),\n pathnameBase: match.pathnameBase === \"/\" ? parentPathnameBase : joinPaths([parentPathnameBase, match.pathnameBase])\n })), parentMatches);\n}\nfunction _renderMatches(matches, parentMatches) {\n if (parentMatches === void 0) {\n parentMatches = [];\n }\n\n if (matches == null) return null;\n return matches.reduceRight((outlet, match, index) => {\n return /*#__PURE__*/createElement(RouteContext.Provider, {\n children: match.route.element !== undefined ? match.route.element : outlet,\n value: {\n outlet,\n matches: parentMatches.concat(matches.slice(0, index + 1))\n }\n });\n }, null);\n}\n\n/**\n * A <Router> that stores all entries in memory.\n *\n * @see https://reactrouter.com/docs/en/v6/api#memoryrouter\n */\nfunction MemoryRouter(_ref) {\n let {\n basename,\n children,\n initialEntries,\n initialIndex\n } = _ref;\n let historyRef = useRef();\n\n if (historyRef.current == null) {\n historyRef.current = createMemoryHistory({\n initialEntries,\n initialIndex\n });\n }\n\n let history = historyRef.current;\n let [state, setState] = useState({\n action: history.action,\n location: history.location\n });\n useLayoutEffect(() => history.listen(setState), [history]);\n return /*#__PURE__*/createElement(Router, {\n basename: basename,\n children: children,\n location: state.location,\n navigationType: state.action,\n navigator: history\n });\n}\n\n/**\n * Changes the current location.\n *\n * Note: This API is mostly useful in React.Component subclasses that are not\n * able to use hooks. In functional components, we recommend you use the\n * `useNavigate` hook instead.\n *\n * @see https://reactrouter.com/docs/en/v6/api#navigate\n */\nfunction Navigate(_ref2) {\n let {\n to,\n replace,\n state\n } = _ref2;\n !useInRouterContext() ? process.env.NODE_ENV !== \"production\" ? invariant(false, // TODO: This error is probably because they somehow have 2 versions of\n // the router loaded. We can help them understand how to avoid that.\n \"<Navigate> may be used only in the context of a <Router> component.\") : invariant(false) : void 0;\n process.env.NODE_ENV !== \"production\" ? warning(!useContext(NavigationContext).static, \"<Navigate> must not be used on the initial render in a <StaticRouter>. \" + \"This is a no-op, but you should modify your code so the <Navigate> is \" + \"only ever rendered in response to some user interaction or state change.\") : void 0;\n let navigate = useNavigate();\n useEffect(() => {\n navigate(to, {\n replace,\n state\n });\n });\n return null;\n}\n\n/**\n * Renders the child route's element, if there is one.\n *\n * @see https://reactrouter.com/docs/en/v6/api#outlet\n */\nfunction Outlet(props) {\n return useOutlet(props.context);\n}\n\n/**\n * Declares an element that should be rendered at a certain URL path.\n *\n * @see https://reactrouter.com/docs/en/v6/api#route\n */\nfunction Route(_props) {\n process.env.NODE_ENV !== \"production\" ? invariant(false, \"A <Route> is only ever to be used as the child of <Routes> element, \" + \"never rendered directly. Please wrap your <Route> in a <Routes>.\") : invariant(false) ;\n}\n\n/**\n * Provides location context for the rest of the app.\n *\n * Note: You usually won't render a <Router> directly. Instead, you'll render a\n * router that is more specific to your environment such as a <BrowserRouter>\n * in web browsers or a <StaticRouter> for server rendering.\n *\n * @see https://reactrouter.com/docs/en/v6/api#router\n */\nfunction Router(_ref3) {\n let {\n basename: basenameProp = \"/\",\n children = null,\n location: locationProp,\n navigationType = Action.Pop,\n navigator,\n static: staticProp = false\n } = _ref3;\n !!useInRouterContext() ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"You cannot render a <Router> inside another <Router>.\" + \" You should never have more than one in your app.\") : invariant(false) : void 0;\n let basename = normalizePathname(basenameProp);\n let navigationContext = useMemo(() => ({\n basename,\n navigator,\n static: staticProp\n }), [basename, navigator, staticProp]);\n\n if (typeof locationProp === \"string\") {\n locationProp = parsePath(locationProp);\n }\n\n let {\n pathname = \"/\",\n search = \"\",\n hash = \"\",\n state = null,\n key = \"default\"\n } = locationProp;\n let location = useMemo(() => {\n let trailingPathname = stripBasename(pathname, basename);\n\n if (trailingPathname == null) {\n return null;\n }\n\n return {\n pathname: trailingPathname,\n search,\n hash,\n state,\n key\n };\n }, [basename, pathname, search, hash, state, key]);\n process.env.NODE_ENV !== \"production\" ? warning(location != null, \"<Router basename=\\\"\" + basename + \"\\\"> is not able to match the URL \" + (\"\\\"\" + pathname + search + hash + \"\\\" because it does not start with the \") + \"basename, so the <Router> won't render anything.\") : void 0;\n\n if (location == null) {\n return null;\n }\n\n return /*#__PURE__*/createElement(NavigationContext.Provider, {\n value: navigationContext\n }, /*#__PURE__*/createElement(LocationContext.Provider, {\n children: children,\n value: {\n location,\n navigationType\n }\n }));\n}\n\n/**\n * A container for a nested tree of <Route> elements that renders the branch\n * that best matches the current location.\n *\n * @see https://reactrouter.com/docs/en/v6/api#routes\n */\nfunction Routes(_ref4) {\n let {\n children,\n location\n } = _ref4;\n return useRoutes(createRoutesFromChildren(children), location);\n} ///////////////////////////////////////////////////////////////////////////////\n// UTILS\n///////////////////////////////////////////////////////////////////////////////\n\n/**\n * Creates a route config from a React \"children\" object, which is usually\n * either a `<Route>` element or an array of them. Used internally by\n * `<Routes>` to create a route config from its children.\n *\n * @see https://reactrouter.com/docs/en/v6/api#createroutesfromchildren\n */\n\nfunction createRoutesFromChildren(children) {\n let routes = [];\n Children.forEach(children, element => {\n if (! /*#__PURE__*/isValidElement(element)) {\n // Ignore non-elements. This allows people to more easily inline\n // conditionals in their route config.\n return;\n }\n\n if (element.type === Fragment) {\n // Transparently support React.Fragment and its children.\n routes.push.apply(routes, createRoutesFromChildren(element.props.children));\n return;\n }\n\n !(element.type === Route) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"[\" + (typeof element.type === \"string\" ? element.type : element.type.name) + \"] is not a <Route> component. All component children of <Routes> must be a <Route> or <React.Fragment>\") : invariant(false) : void 0;\n let route = {\n caseSensitive: element.props.caseSensitive,\n element: element.props.element,\n index: element.props.index,\n path: element.props.path\n };\n\n if (element.props.children) {\n route.children = createRoutesFromChildren(element.props.children);\n }\n\n routes.push(route);\n });\n return routes;\n}\n/**\n * Renders the result of `matchRoutes()` into a React element.\n */\n\nfunction renderMatches(matches) {\n return _renderMatches(matches);\n}\n\nexport { MemoryRouter, Navigate, Outlet, Route, Router, Routes, LocationContext as UNSAFE_LocationContext, NavigationContext as UNSAFE_NavigationContext, RouteContext as UNSAFE_RouteContext, createRoutesFromChildren, generatePath, matchPath, matchRoutes, renderMatches, resolvePath, useHref, useInRouterContext, useLocation, useMatch, useNavigate, useNavigationType, useOutlet, useOutletContext, useParams, useResolvedPath, useRoutes };\n//# sourceMappingURL=index.js.map\n","/**\n * React Router DOM v6.3.0\n *\n * Copyright (c) Remix Software Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE.md file in the root directory of this source tree.\n *\n * @license MIT\n */\nimport { useRef, useState, useLayoutEffect, createElement, forwardRef, useCallback, useMemo } from 'react';\nimport { createBrowserHistory, createHashHistory } from 'history';\nimport { Router, useHref, createPath, useLocation, useResolvedPath, useNavigate } from 'react-router';\nexport { MemoryRouter, Navigate, NavigationType, Outlet, Route, Router, Routes, UNSAFE_LocationContext, UNSAFE_NavigationContext, UNSAFE_RouteContext, createPath, createRoutesFromChildren, generatePath, matchPath, matchRoutes, parsePath, renderMatches, resolvePath, useHref, useInRouterContext, useLocation, useMatch, useNavigate, useNavigationType, useOutlet, useOutletContext, useParams, useResolvedPath, useRoutes } from 'react-router';\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nconst _excluded = [\"onClick\", \"reloadDocument\", \"replace\", \"state\", \"target\", \"to\"],\n _excluded2 = [\"aria-current\", \"caseSensitive\", \"className\", \"end\", \"style\", \"to\", \"children\"];\n\nfunction warning(cond, message) {\n if (!cond) {\n // eslint-disable-next-line no-console\n if (typeof console !== \"undefined\") console.warn(message);\n\n try {\n // Welcome to debugging React Router!\n //\n // This error is thrown as a convenience so you can more easily\n // find the source for a warning that appears in the console by\n // enabling \"pause on exceptions\" in your JavaScript debugger.\n throw new Error(message); // eslint-disable-next-line no-empty\n } catch (e) {}\n }\n} ////////////////////////////////////////////////////////////////////////////////\n// COMPONENTS\n////////////////////////////////////////////////////////////////////////////////\n\n/**\n * A `<Router>` for use in web browsers. Provides the cleanest URLs.\n */\nfunction BrowserRouter(_ref) {\n let {\n basename,\n children,\n window\n } = _ref;\n let historyRef = useRef();\n\n if (historyRef.current == null) {\n historyRef.current = createBrowserHistory({\n window\n });\n }\n\n let history = historyRef.current;\n let [state, setState] = useState({\n action: history.action,\n location: history.location\n });\n useLayoutEffect(() => history.listen(setState), [history]);\n return /*#__PURE__*/createElement(Router, {\n basename: basename,\n children: children,\n location: state.location,\n navigationType: state.action,\n navigator: history\n });\n}\n\n/**\n * A `<Router>` for use in web browsers. Stores the location in the hash\n * portion of the URL so it is not sent to the server.\n */\nfunction HashRouter(_ref2) {\n let {\n basename,\n children,\n window\n } = _ref2;\n let historyRef = useRef();\n\n if (historyRef.current == null) {\n historyRef.current = createHashHistory({\n window\n });\n }\n\n let history = historyRef.current;\n let [state, setState] = useState({\n action: history.action,\n location: history.location\n });\n useLayoutEffect(() => history.listen(setState), [history]);\n return /*#__PURE__*/createElement(Router, {\n basename: basename,\n children: children,\n location: state.location,\n navigationType: state.action,\n navigator: history\n });\n}\n\n/**\n * A `<Router>` that accepts a pre-instantiated history object. It's important\n * to note that using your own history object is highly discouraged and may add\n * two versions of the history library to your bundles unless you use the same\n * version of the history library that React Router uses internally.\n */\nfunction HistoryRouter(_ref3) {\n let {\n basename,\n children,\n history\n } = _ref3;\n const [state, setState] = useState({\n action: history.action,\n location: history.location\n });\n useLayoutEffect(() => history.listen(setState), [history]);\n return /*#__PURE__*/createElement(Router, {\n basename: basename,\n children: children,\n location: state.location,\n navigationType: state.action,\n navigator: history\n });\n}\n\nif (process.env.NODE_ENV !== \"production\") {\n HistoryRouter.displayName = \"unstable_HistoryRouter\";\n}\n\nfunction isModifiedEvent(event) {\n return !!(event.metaKey || event.altKey || event.ctrlKey || event.shiftKey);\n}\n\n/**\n * The public API for rendering a history-aware <a>.\n */\nconst Link = /*#__PURE__*/forwardRef(function LinkWithRef(_ref4, ref) {\n let {\n onClick,\n reloadDocument,\n replace = false,\n state,\n target,\n to\n } = _ref4,\n rest = _objectWithoutPropertiesLoose(_ref4, _excluded);\n\n let href = useHref(to);\n let internalOnClick = useLinkClickHandler(to, {\n replace,\n state,\n target\n });\n\n function handleClick(event) {\n if (onClick) onClick(event);\n\n if (!event.defaultPrevented && !reloadDocument) {\n internalOnClick(event);\n }\n }\n\n return (\n /*#__PURE__*/\n // eslint-disable-next-line jsx-a11y/anchor-has-content\n createElement(\"a\", _extends({}, rest, {\n href: href,\n onClick: handleClick,\n ref: ref,\n target: target\n }))\n );\n});\n\nif (process.env.NODE_ENV !== \"production\") {\n Link.displayName = \"Link\";\n}\n\n/**\n * A <Link> wrapper that knows if it's \"active\" or not.\n */\nconst NavLink = /*#__PURE__*/forwardRef(function NavLinkWithRef(_ref5, ref) {\n let {\n \"aria-current\": ariaCurrentProp = \"page\",\n caseSensitive = false,\n className: classNameProp = \"\",\n end = false,\n style: styleProp,\n to,\n children\n } = _ref5,\n rest = _objectWithoutPropertiesLoose(_ref5, _excluded2);\n\n let location = useLocation();\n let path = useResolvedPath(to);\n let locationPathname = location.pathname;\n let toPathname = path.pathname;\n\n if (!caseSensitive) {\n locationPathname = locationPathname.toLowerCase();\n toPathname = toPathname.toLowerCase();\n }\n\n let isActive = locationPathname === toPathname || !end && locationPathname.startsWith(toPathname) && locationPathname.charAt(toPathname.length) === \"/\";\n let ariaCurrent = isActive ? ariaCurrentProp : undefined;\n let className;\n\n if (typeof classNameProp === \"function\") {\n className = classNameProp({\n isActive\n });\n } else {\n // If the className prop is not a function, we use a default `active`\n // class for <NavLink />s that are active. In v5 `active` was the default\n // value for `activeClassName`, but we are removing that API and can still\n // use the old default behavior for a cleaner upgrade path and keep the\n // simple styling rules working as they currently do.\n className = [classNameProp, isActive ? \"active\" : null].filter(Boolean).join(\" \");\n }\n\n let style = typeof styleProp === \"function\" ? styleProp({\n isActive\n }) : styleProp;\n return /*#__PURE__*/createElement(Link, _extends({}, rest, {\n \"aria-current\": ariaCurrent,\n className: className,\n ref: ref,\n style: style,\n to: to\n }), typeof children === \"function\" ? children({\n isActive\n }) : children);\n});\n\nif (process.env.NODE_ENV !== \"production\") {\n NavLink.displayName = \"NavLink\";\n} ////////////////////////////////////////////////////////////////////////////////\n// HOOKS\n////////////////////////////////////////////////////////////////////////////////\n\n/**\n * Handles the click behavior for router `<Link>` components. This is useful if\n * you need to create custom `<Link>` components with the same click behavior we\n * use in our exported `<Link>`.\n */\n\n\nfunction useLinkClickHandler(to, _temp) {\n let {\n target,\n replace: replaceProp,\n state\n } = _temp === void 0 ? {} : _temp;\n let navigate = useNavigate();\n let location = useLocation();\n let path = useResolvedPath(to);\n return useCallback(event => {\n if (event.button === 0 && ( // Ignore everything but left clicks\n !target || target === \"_self\") && // Let browser handle \"target=_blank\" etc.\n !isModifiedEvent(event) // Ignore clicks with modifier keys\n ) {\n event.preventDefault(); // If the URL hasn't changed, a regular <a> will do a replace instead of\n // a push, so do the same here.\n\n let replace = !!replaceProp || createPath(location) === createPath(path);\n navigate(to, {\n replace,\n state\n });\n }\n }, [location, navigate, path, replaceProp, state, target, to]);\n}\n/**\n * A convenient wrapper for reading and writing search parameters via the\n * URLSearchParams interface.\n */\n\nfunction useSearchParams(defaultInit) {\n process.env.NODE_ENV !== \"production\" ? warning(typeof URLSearchParams !== \"undefined\", \"You cannot use the `useSearchParams` hook in a browser that does not \" + \"support the URLSearchParams API. If you need to support Internet \" + \"Explorer 11, we recommend you load a polyfill such as \" + \"https://github.com/ungap/url-search-params\\n\\n\" + \"If you're unsure how to load polyfills, we recommend you check out \" + \"https://polyfill.io/v3/ which provides some recommendations about how \" + \"to load polyfills only for users that need them, instead of for every \" + \"user.\") : void 0;\n let defaultSearchParamsRef = useRef(createSearchParams(defaultInit));\n let location = useLocation();\n let searchParams = useMemo(() => {\n let searchParams = createSearchParams(location.search);\n\n for (let key of defaultSearchParamsRef.current.keys()) {\n if (!searchParams.has(key)) {\n defaultSearchParamsRef.current.getAll(key).forEach(value => {\n searchParams.append(key, value);\n });\n }\n }\n\n return searchParams;\n }, [location.search]);\n let navigate = useNavigate();\n let setSearchParams = useCallback((nextInit, navigateOptions) => {\n navigate(\"?\" + createSearchParams(nextInit), navigateOptions);\n }, [navigate]);\n return [searchParams, setSearchParams];\n}\n\n/**\n * Creates a URLSearchParams object using the given initializer.\n *\n * This is identical to `new URLSearchParams(init)` except it also\n * supports arrays as values in the object form of the initializer\n * instead of just strings. This is convenient when you need multiple\n * values for a given key, but don't want to use an array initializer.\n *\n * For example, instead of:\n *\n * let searchParams = new URLSearchParams([\n * ['sort', 'name'],\n * ['sort', 'price']\n * ]);\n *\n * you can do:\n *\n * let searchParams = createSearchParams({\n * sort: ['name', 'price']\n * });\n */\nfunction createSearchParams(init) {\n if (init === void 0) {\n init = \"\";\n }\n\n return new URLSearchParams(typeof init === \"string\" || Array.isArray(init) || init instanceof URLSearchParams ? init : Object.keys(init).reduce((memo, key) => {\n let value = init[key];\n return memo.concat(Array.isArray(value) ? value.map(v => [key, v]) : [[key, value]]);\n }, []));\n}\n\nexport { BrowserRouter, HashRouter, Link, NavLink, createSearchParams, HistoryRouter as unstable_HistoryRouter, useLinkClickHandler, useSearchParams };\n//# sourceMappingURL=index.js.map\n","function shallow(objA, objB) {\n if (Object.is(objA, objB)) {\n return true;\n }\n if (typeof objA !== \"object\" || objA === null || typeof objB !== \"object\" || objB === null) {\n return false;\n }\n const keysA = Object.keys(objA);\n if (keysA.length !== Object.keys(objB).length) {\n return false;\n }\n for (let i = 0; i < keysA.length; i++) {\n if (!Object.prototype.hasOwnProperty.call(objB, keysA[i]) || !Object.is(objA[keysA[i]], objB[keysA[i]])) {\n return false;\n }\n }\n return true;\n}\n\nexport { shallow as default };\n","'use strict';\n\nexport default function bind(fn, thisArg) {\n return function wrap() {\n return fn.apply(thisArg, arguments);\n };\n}\n","'use strict';\n\nimport bind from './helpers/bind.js';\n\n// utils is a library of generic helper functions non-specific to axios\n\nconst {toString} = Object.prototype;\nconst {getPrototypeOf} = Object;\n\nconst kindOf = (cache => thing => {\n const str = toString.call(thing);\n return cache[str] || (cache[str] = str.slice(8, -1).toLowerCase());\n})(Object.create(null));\n\nconst kindOfTest = (type) => {\n type = type.toLowerCase();\n return (thing) => kindOf(thing) === type\n}\n\nconst typeOfTest = type => thing => typeof thing === type;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n *\n * @returns {boolean} True if value is an Array, otherwise false\n */\nconst {isArray} = Array;\n\n/**\n * Determine if a value is undefined\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nconst isUndefined = typeOfTest('undefined');\n\n/**\n * Determine if a value is a Buffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)\n && isFunction(val.constructor.isBuffer) && val.constructor.isBuffer(val);\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nconst isArrayBuffer = kindOfTest('ArrayBuffer');\n\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n let result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (isArrayBuffer(val.buffer));\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a String, otherwise false\n */\nconst isString = typeOfTest('string');\n\n/**\n * Determine if a value is a Function\n *\n * @param {*} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nconst isFunction = typeOfTest('function');\n\n/**\n * Determine if a value is a Number\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Number, otherwise false\n */\nconst isNumber = typeOfTest('number');\n\n/**\n * Determine if a value is an Object\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an Object, otherwise false\n */\nconst isObject = (thing) => thing !== null && typeof thing === 'object';\n\n/**\n * Determine if a value is a Boolean\n *\n * @param {*} thing The value to test\n * @returns {boolean} True if value is a Boolean, otherwise false\n */\nconst isBoolean = thing => thing === true || thing === false;\n\n/**\n * Determine if a value is a plain Object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a plain Object, otherwise false\n */\nconst isPlainObject = (val) => {\n if (kindOf(val) !== 'object') {\n return false;\n }\n\n const prototype = getPrototypeOf(val);\n return (prototype === null || prototype === Object.prototype || Object.getPrototypeOf(prototype) === null) && !(Symbol.toStringTag in val) && !(Symbol.iterator in val);\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Date, otherwise false\n */\nconst isDate = kindOfTest('Date');\n\n/**\n * Determine if a value is a File\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFile = kindOfTest('File');\n\n/**\n * Determine if a value is a Blob\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nconst isBlob = kindOfTest('Blob');\n\n/**\n * Determine if a value is a FileList\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a File, otherwise false\n */\nconst isFileList = kindOfTest('FileList');\n\n/**\n * Determine if a value is a Stream\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nconst isStream = (val) => isObject(val) && isFunction(val.pipe);\n\n/**\n * Determine if a value is a FormData\n *\n * @param {*} thing The value to test\n *\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nconst isFormData = (thing) => {\n let kind;\n return thing && (\n (typeof FormData === 'function' && thing instanceof FormData) || (\n isFunction(thing.append) && (\n (kind = kindOf(thing)) === 'formdata' ||\n // detect form-data instance\n (kind === 'object' && isFunction(thing.toString) && thing.toString() === '[object FormData]')\n )\n )\n )\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nconst isURLSearchParams = kindOfTest('URLSearchParams');\n\nconst [isReadableStream, isRequest, isResponse, isHeaders] = ['ReadableStream', 'Request', 'Response', 'Headers'].map(kindOfTest);\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n *\n * @returns {String} The String freed of excess whitespace\n */\nconst trim = (str) => str.trim ?\n str.trim() : str.replace(/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g, '');\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n *\n * @param {Boolean} [allOwnKeys = false]\n * @returns {any}\n */\nfunction forEach(obj, fn, {allOwnKeys = false} = {}) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n let i;\n let l;\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n const keys = allOwnKeys ? Object.getOwnPropertyNames(obj) : Object.keys(obj);\n const len = keys.length;\n let key;\n\n for (i = 0; i < len; i++) {\n key = keys[i];\n fn.call(null, obj[key], key, obj);\n }\n }\n}\n\nfunction findKey(obj, key) {\n key = key.toLowerCase();\n const keys = Object.keys(obj);\n let i = keys.length;\n let _key;\n while (i-- > 0) {\n _key = keys[i];\n if (key === _key.toLowerCase()) {\n return _key;\n }\n }\n return null;\n}\n\nconst _global = (() => {\n /*eslint no-undef:0*/\n if (typeof globalThis !== \"undefined\") return globalThis;\n return typeof self !== \"undefined\" ? self : (typeof window !== 'undefined' ? window : global)\n})();\n\nconst isContextDefined = (context) => !isUndefined(context) && context !== _global;\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n *\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n const {caseless} = isContextDefined(this) && this || {};\n const result = {};\n const assignValue = (val, key) => {\n const targetKey = caseless && findKey(result, key) || key;\n if (isPlainObject(result[targetKey]) && isPlainObject(val)) {\n result[targetKey] = merge(result[targetKey], val);\n } else if (isPlainObject(val)) {\n result[targetKey] = merge({}, val);\n } else if (isArray(val)) {\n result[targetKey] = val.slice();\n } else {\n result[targetKey] = val;\n }\n }\n\n for (let i = 0, l = arguments.length; i < l; i++) {\n arguments[i] && forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n *\n * @param {Boolean} [allOwnKeys]\n * @returns {Object} The resulting value of object a\n */\nconst extend = (a, b, thisArg, {allOwnKeys}= {}) => {\n forEach(b, (val, key) => {\n if (thisArg && isFunction(val)) {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n }, {allOwnKeys});\n return a;\n}\n\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n *\n * @returns {string} content value without BOM\n */\nconst stripBOM = (content) => {\n if (content.charCodeAt(0) === 0xFEFF) {\n content = content.slice(1);\n }\n return content;\n}\n\n/**\n * Inherit the prototype methods from one constructor into another\n * @param {function} constructor\n * @param {function} superConstructor\n * @param {object} [props]\n * @param {object} [descriptors]\n *\n * @returns {void}\n */\nconst inherits = (constructor, superConstructor, props, descriptors) => {\n constructor.prototype = Object.create(superConstructor.prototype, descriptors);\n constructor.prototype.constructor = constructor;\n Object.defineProperty(constructor, 'super', {\n value: superConstructor.prototype\n });\n props && Object.assign(constructor.prototype, props);\n}\n\n/**\n * Resolve object with deep prototype chain to a flat object\n * @param {Object} sourceObj source object\n * @param {Object} [destObj]\n * @param {Function|Boolean} [filter]\n * @param {Function} [propFilter]\n *\n * @returns {Object}\n */\nconst toFlatObject = (sourceObj, destObj, filter, propFilter) => {\n let props;\n let i;\n let prop;\n const merged = {};\n\n destObj = destObj || {};\n // eslint-disable-next-line no-eq-null,eqeqeq\n if (sourceObj == null) return destObj;\n\n do {\n props = Object.getOwnPropertyNames(sourceObj);\n i = props.length;\n while (i-- > 0) {\n prop = props[i];\n if ((!propFilter || propFilter(prop, sourceObj, destObj)) && !merged[prop]) {\n destObj[prop] = sourceObj[prop];\n merged[prop] = true;\n }\n }\n sourceObj = filter !== false && getPrototypeOf(sourceObj);\n } while (sourceObj && (!filter || filter(sourceObj, destObj)) && sourceObj !== Object.prototype);\n\n return destObj;\n}\n\n/**\n * Determines whether a string ends with the characters of a specified string\n *\n * @param {String} str\n * @param {String} searchString\n * @param {Number} [position= 0]\n *\n * @returns {boolean}\n */\nconst endsWith = (str, searchString, position) => {\n str = String(str);\n if (position === undefined || position > str.length) {\n position = str.length;\n }\n position -= searchString.length;\n const lastIndex = str.indexOf(searchString, position);\n return lastIndex !== -1 && lastIndex === position;\n}\n\n\n/**\n * Returns new array from array like object or null if failed\n *\n * @param {*} [thing]\n *\n * @returns {?Array}\n */\nconst toArray = (thing) => {\n if (!thing) return null;\n if (isArray(thing)) return thing;\n let i = thing.length;\n if (!isNumber(i)) return null;\n const arr = new Array(i);\n while (i-- > 0) {\n arr[i] = thing[i];\n }\n return arr;\n}\n\n/**\n * Checking if the Uint8Array exists and if it does, it returns a function that checks if the\n * thing passed in is an instance of Uint8Array\n *\n * @param {TypedArray}\n *\n * @returns {Array}\n */\n// eslint-disable-next-line func-names\nconst isTypedArray = (TypedArray => {\n // eslint-disable-next-line func-names\n return thing => {\n return TypedArray && thing instanceof TypedArray;\n };\n})(typeof Uint8Array !== 'undefined' && getPrototypeOf(Uint8Array));\n\n/**\n * For each entry in the object, call the function with the key and value.\n *\n * @param {Object<any, any>} obj - The object to iterate over.\n * @param {Function} fn - The function to call for each entry.\n *\n * @returns {void}\n */\nconst forEachEntry = (obj, fn) => {\n const generator = obj && obj[Symbol.iterator];\n\n const iterator = generator.call(obj);\n\n let result;\n\n while ((result = iterator.next()) && !result.done) {\n const pair = result.value;\n fn.call(obj, pair[0], pair[1]);\n }\n}\n\n/**\n * It takes a regular expression and a string, and returns an array of all the matches\n *\n * @param {string} regExp - The regular expression to match against.\n * @param {string} str - The string to search.\n *\n * @returns {Array<boolean>}\n */\nconst matchAll = (regExp, str) => {\n let matches;\n const arr = [];\n\n while ((matches = regExp.exec(str)) !== null) {\n arr.push(matches);\n }\n\n return arr;\n}\n\n/* Checking if the kindOfTest function returns true when passed an HTMLFormElement. */\nconst isHTMLForm = kindOfTest('HTMLFormElement');\n\nconst toCamelCase = str => {\n return str.toLowerCase().replace(/[-_\\s]([a-z\\d])(\\w*)/g,\n function replacer(m, p1, p2) {\n return p1.toUpperCase() + p2;\n }\n );\n};\n\n/* Creating a function that will check if an object has a property. */\nconst hasOwnProperty = (({hasOwnProperty}) => (obj, prop) => hasOwnProperty.call(obj, prop))(Object.prototype);\n\n/**\n * Determine if a value is a RegExp object\n *\n * @param {*} val The value to test\n *\n * @returns {boolean} True if value is a RegExp object, otherwise false\n */\nconst isRegExp = kindOfTest('RegExp');\n\nconst reduceDescriptors = (obj, reducer) => {\n const descriptors = Object.getOwnPropertyDescriptors(obj);\n const reducedDescriptors = {};\n\n forEach(descriptors, (descriptor, name) => {\n let ret;\n if ((ret = reducer(descriptor, name, obj)) !== false) {\n reducedDescriptors[name] = ret || descriptor;\n }\n });\n\n Object.defineProperties(obj, reducedDescriptors);\n}\n\n/**\n * Makes all methods read-only\n * @param {Object} obj\n */\n\nconst freezeMethods = (obj) => {\n reduceDescriptors(obj, (descriptor, name) => {\n // skip restricted props in strict mode\n if (isFunction(obj) && ['arguments', 'caller', 'callee'].indexOf(name) !== -1) {\n return false;\n }\n\n const value = obj[name];\n\n if (!isFunction(value)) return;\n\n descriptor.enumerable = false;\n\n if ('writable' in descriptor) {\n descriptor.writable = false;\n return;\n }\n\n if (!descriptor.set) {\n descriptor.set = () => {\n throw Error('Can not rewrite read-only method \\'' + name + '\\'');\n };\n }\n });\n}\n\nconst toObjectSet = (arrayOrString, delimiter) => {\n const obj = {};\n\n const define = (arr) => {\n arr.forEach(value => {\n obj[value] = true;\n });\n }\n\n isArray(arrayOrString) ? define(arrayOrString) : define(String(arrayOrString).split(delimiter));\n\n return obj;\n}\n\nconst noop = () => {}\n\nconst toFiniteNumber = (value, defaultValue) => {\n return value != null && Number.isFinite(value = +value) ? value : defaultValue;\n}\n\nconst ALPHA = 'abcdefghijklmnopqrstuvwxyz'\n\nconst DIGIT = '0123456789';\n\nconst ALPHABET = {\n DIGIT,\n ALPHA,\n ALPHA_DIGIT: ALPHA + ALPHA.toUpperCase() + DIGIT\n}\n\nconst generateString = (size = 16, alphabet = ALPHABET.ALPHA_DIGIT) => {\n let str = '';\n const {length} = alphabet;\n while (size--) {\n str += alphabet[Math.random() * length|0]\n }\n\n return str;\n}\n\n/**\n * If the thing is a FormData object, return true, otherwise return false.\n *\n * @param {unknown} thing - The thing to check.\n *\n * @returns {boolean}\n */\nfunction isSpecCompliantForm(thing) {\n return !!(thing && isFunction(thing.append) && thing[Symbol.toStringTag] === 'FormData' && thing[Symbol.iterator]);\n}\n\nconst toJSONObject = (obj) => {\n const stack = new Array(10);\n\n const visit = (source, i) => {\n\n if (isObject(source)) {\n if (stack.indexOf(source) >= 0) {\n return;\n }\n\n if(!('toJSON' in source)) {\n stack[i] = source;\n const target = isArray(source) ? [] : {};\n\n forEach(source, (value, key) => {\n const reducedValue = visit(value, i + 1);\n !isUndefined(reducedValue) && (target[key] = reducedValue);\n });\n\n stack[i] = undefined;\n\n return target;\n }\n }\n\n return source;\n }\n\n return visit(obj, 0);\n}\n\nconst isAsyncFn = kindOfTest('AsyncFunction');\n\nconst isThenable = (thing) =>\n thing && (isObject(thing) || isFunction(thing)) && isFunction(thing.then) && isFunction(thing.catch);\n\n// original code\n// https://github.com/DigitalBrainJS/AxiosPromise/blob/16deab13710ec09779922131f3fa5954320f83ab/lib/utils.js#L11-L34\n\nconst _setImmediate = ((setImmediateSupported, postMessageSupported) => {\n if (setImmediateSupported) {\n return setImmediate;\n }\n\n return postMessageSupported ? ((token, callbacks) => {\n _global.addEventListener(\"message\", ({source, data}) => {\n if (source === _global && data === token) {\n callbacks.length && callbacks.shift()();\n }\n }, false);\n\n return (cb) => {\n callbacks.push(cb);\n _global.postMessage(token, \"*\");\n }\n })(`axios@${Math.random()}`, []) : (cb) => setTimeout(cb);\n})(\n typeof setImmediate === 'function',\n isFunction(_global.postMessage)\n);\n\nconst asap = typeof queueMicrotask !== 'undefined' ?\n queueMicrotask.bind(_global) : ( typeof process !== 'undefined' && process.nextTick || _setImmediate);\n\n// *********************\n\nexport default {\n isArray,\n isArrayBuffer,\n isBuffer,\n isFormData,\n isArrayBufferView,\n isString,\n isNumber,\n isBoolean,\n isObject,\n isPlainObject,\n isReadableStream,\n isRequest,\n isResponse,\n isHeaders,\n isUndefined,\n isDate,\n isFile,\n isBlob,\n isRegExp,\n isFunction,\n isStream,\n isURLSearchParams,\n isTypedArray,\n isFileList,\n forEach,\n merge,\n extend,\n trim,\n stripBOM,\n inherits,\n toFlatObject,\n kindOf,\n kindOfTest,\n endsWith,\n toArray,\n forEachEntry,\n matchAll,\n isHTMLForm,\n hasOwnProperty,\n hasOwnProp: hasOwnProperty, // an alias to avoid ESLint no-prototype-builtins detection\n reduceDescriptors,\n freezeMethods,\n toObjectSet,\n toCamelCase,\n noop,\n toFiniteNumber,\n findKey,\n global: _global,\n isContextDefined,\n ALPHABET,\n generateString,\n isSpecCompliantForm,\n toJSONObject,\n isAsyncFn,\n isThenable,\n setImmediate: _setImmediate,\n asap\n};\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [config] The config.\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n *\n * @returns {Error} The created error.\n */\nfunction AxiosError(message, code, config, request, response) {\n Error.call(this);\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n } else {\n this.stack = (new Error()).stack;\n }\n\n this.message = message;\n this.name = 'AxiosError';\n code && (this.code = code);\n config && (this.config = config);\n request && (this.request = request);\n if (response) {\n this.response = response;\n this.status = response.status ? response.status : null;\n }\n}\n\nutils.inherits(AxiosError, Error, {\n toJSON: function toJSON() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: utils.toJSONObject(this.config),\n code: this.code,\n status: this.status\n };\n }\n});\n\nconst prototype = AxiosError.prototype;\nconst descriptors = {};\n\n[\n 'ERR_BAD_OPTION_VALUE',\n 'ERR_BAD_OPTION',\n 'ECONNABORTED',\n 'ETIMEDOUT',\n 'ERR_NETWORK',\n 'ERR_FR_TOO_MANY_REDIRECTS',\n 'ERR_DEPRECATED',\n 'ERR_BAD_RESPONSE',\n 'ERR_BAD_REQUEST',\n 'ERR_CANCELED',\n 'ERR_NOT_SUPPORT',\n 'ERR_INVALID_URL'\n// eslint-disable-next-line func-names\n].forEach(code => {\n descriptors[code] = {value: code};\n});\n\nObject.defineProperties(AxiosError, descriptors);\nObject.defineProperty(prototype, 'isAxiosError', {value: true});\n\n// eslint-disable-next-line func-names\nAxiosError.from = (error, code, config, request, response, customProps) => {\n const axiosError = Object.create(prototype);\n\n utils.toFlatObject(error, axiosError, function filter(obj) {\n return obj !== Error.prototype;\n }, prop => {\n return prop !== 'isAxiosError';\n });\n\n AxiosError.call(axiosError, error.message, code, config, request, response);\n\n axiosError.cause = error;\n\n axiosError.name = error.name;\n\n customProps && Object.assign(axiosError, customProps);\n\n return axiosError;\n};\n\nexport default AxiosError;\n","// eslint-disable-next-line strict\nexport default null;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\n// temporary hotfix to avoid circular references until AxiosURLSearchParams is refactored\nimport PlatformFormData from '../platform/node/classes/FormData.js';\n\n/**\n * Determines if the given thing is a array or js object.\n *\n * @param {string} thing - The object or array to be visited.\n *\n * @returns {boolean}\n */\nfunction isVisitable(thing) {\n return utils.isPlainObject(thing) || utils.isArray(thing);\n}\n\n/**\n * It removes the brackets from the end of a string\n *\n * @param {string} key - The key of the parameter.\n *\n * @returns {string} the key without the brackets.\n */\nfunction removeBrackets(key) {\n return utils.endsWith(key, '[]') ? key.slice(0, -2) : key;\n}\n\n/**\n * It takes a path, a key, and a boolean, and returns a string\n *\n * @param {string} path - The path to the current key.\n * @param {string} key - The key of the current object being iterated over.\n * @param {string} dots - If true, the key will be rendered with dots instead of brackets.\n *\n * @returns {string} The path to the current key.\n */\nfunction renderKey(path, key, dots) {\n if (!path) return key;\n return path.concat(key).map(function each(token, i) {\n // eslint-disable-next-line no-param-reassign\n token = removeBrackets(token);\n return !dots && i ? '[' + token + ']' : token;\n }).join(dots ? '.' : '');\n}\n\n/**\n * If the array is an array and none of its elements are visitable, then it's a flat array.\n *\n * @param {Array<any>} arr - The array to check\n *\n * @returns {boolean}\n */\nfunction isFlatArray(arr) {\n return utils.isArray(arr) && !arr.some(isVisitable);\n}\n\nconst predicates = utils.toFlatObject(utils, {}, null, function filter(prop) {\n return /^is[A-Z]/.test(prop);\n});\n\n/**\n * Convert a data object to FormData\n *\n * @param {Object} obj\n * @param {?Object} [formData]\n * @param {?Object} [options]\n * @param {Function} [options.visitor]\n * @param {Boolean} [options.metaTokens = true]\n * @param {Boolean} [options.dots = false]\n * @param {?Boolean} [options.indexes = false]\n *\n * @returns {Object}\n **/\n\n/**\n * It converts an object into a FormData object\n *\n * @param {Object<any, any>} obj - The object to convert to form data.\n * @param {string} formData - The FormData object to append to.\n * @param {Object<string, any>} options\n *\n * @returns\n */\nfunction toFormData(obj, formData, options) {\n if (!utils.isObject(obj)) {\n throw new TypeError('target must be an object');\n }\n\n // eslint-disable-next-line no-param-reassign\n formData = formData || new (PlatformFormData || FormData)();\n\n // eslint-disable-next-line no-param-reassign\n options = utils.toFlatObject(options, {\n metaTokens: true,\n dots: false,\n indexes: false\n }, false, function defined(option, source) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n return !utils.isUndefined(source[option]);\n });\n\n const metaTokens = options.metaTokens;\n // eslint-disable-next-line no-use-before-define\n const visitor = options.visitor || defaultVisitor;\n const dots = options.dots;\n const indexes = options.indexes;\n const _Blob = options.Blob || typeof Blob !== 'undefined' && Blob;\n const useBlob = _Blob && utils.isSpecCompliantForm(formData);\n\n if (!utils.isFunction(visitor)) {\n throw new TypeError('visitor must be a function');\n }\n\n function convertValue(value) {\n if (value === null) return '';\n\n if (utils.isDate(value)) {\n return value.toISOString();\n }\n\n if (!useBlob && utils.isBlob(value)) {\n throw new AxiosError('Blob is not supported. Use a Buffer instead.');\n }\n\n if (utils.isArrayBuffer(value) || utils.isTypedArray(value)) {\n return useBlob && typeof Blob === 'function' ? new Blob([value]) : Buffer.from(value);\n }\n\n return value;\n }\n\n /**\n * Default visitor.\n *\n * @param {*} value\n * @param {String|Number} key\n * @param {Array<String|Number>} path\n * @this {FormData}\n *\n * @returns {boolean} return true to visit the each prop of the value recursively\n */\n function defaultVisitor(value, key, path) {\n let arr = value;\n\n if (value && !path && typeof value === 'object') {\n if (utils.endsWith(key, '{}')) {\n // eslint-disable-next-line no-param-reassign\n key = metaTokens ? key : key.slice(0, -2);\n // eslint-disable-next-line no-param-reassign\n value = JSON.stringify(value);\n } else if (\n (utils.isArray(value) && isFlatArray(value)) ||\n ((utils.isFileList(value) || utils.endsWith(key, '[]')) && (arr = utils.toArray(value))\n )) {\n // eslint-disable-next-line no-param-reassign\n key = removeBrackets(key);\n\n arr.forEach(function each(el, index) {\n !(utils.isUndefined(el) || el === null) && formData.append(\n // eslint-disable-next-line no-nested-ternary\n indexes === true ? renderKey([key], index, dots) : (indexes === null ? key : key + '[]'),\n convertValue(el)\n );\n });\n return false;\n }\n }\n\n if (isVisitable(value)) {\n return true;\n }\n\n formData.append(renderKey(path, key, dots), convertValue(value));\n\n return false;\n }\n\n const stack = [];\n\n const exposedHelpers = Object.assign(predicates, {\n defaultVisitor,\n convertValue,\n isVisitable\n });\n\n function build(value, path) {\n if (utils.isUndefined(value)) return;\n\n if (stack.indexOf(value) !== -1) {\n throw Error('Circular reference detected in ' + path.join('.'));\n }\n\n stack.push(value);\n\n utils.forEach(value, function each(el, key) {\n const result = !(utils.isUndefined(el) || el === null) && visitor.call(\n formData, el, utils.isString(key) ? key.trim() : key, path, exposedHelpers\n );\n\n if (result === true) {\n build(el, path ? path.concat(key) : [key]);\n }\n });\n\n stack.pop();\n }\n\n if (!utils.isObject(obj)) {\n throw new TypeError('data must be an object');\n }\n\n build(obj);\n\n return formData;\n}\n\nexport default toFormData;\n","'use strict';\n\nimport toFormData from './toFormData.js';\n\n/**\n * It encodes a string by replacing all characters that are not in the unreserved set with\n * their percent-encoded equivalents\n *\n * @param {string} str - The string to encode.\n *\n * @returns {string} The encoded string.\n */\nfunction encode(str) {\n const charMap = {\n '!': '%21',\n \"'\": '%27',\n '(': '%28',\n ')': '%29',\n '~': '%7E',\n '%20': '+',\n '%00': '\\x00'\n };\n return encodeURIComponent(str).replace(/[!'()~]|%20|%00/g, function replacer(match) {\n return charMap[match];\n });\n}\n\n/**\n * It takes a params object and converts it to a FormData object\n *\n * @param {Object<string, any>} params - The parameters to be converted to a FormData object.\n * @param {Object<string, any>} options - The options object passed to the Axios constructor.\n *\n * @returns {void}\n */\nfunction AxiosURLSearchParams(params, options) {\n this._pairs = [];\n\n params && toFormData(params, this, options);\n}\n\nconst prototype = AxiosURLSearchParams.prototype;\n\nprototype.append = function append(name, value) {\n this._pairs.push([name, value]);\n};\n\nprototype.toString = function toString(encoder) {\n const _encode = encoder ? function(value) {\n return encoder.call(this, value, encode);\n } : encode;\n\n return this._pairs.map(function each(pair) {\n return _encode(pair[0]) + '=' + _encode(pair[1]);\n }, '').join('&');\n};\n\nexport default AxiosURLSearchParams;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosURLSearchParams from '../helpers/AxiosURLSearchParams.js';\n\n/**\n * It replaces all instances of the characters `:`, `$`, `,`, `+`, `[`, and `]` with their\n * URI encoded counterparts\n *\n * @param {string} val The value to be encoded.\n *\n * @returns {string} The encoded value.\n */\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @param {?(object|Function)} options\n *\n * @returns {string} The formatted url\n */\nexport default function buildURL(url, params, options) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n \n const _encode = options && options.encode || encode;\n\n if (utils.isFunction(options)) {\n options = {\n serialize: options\n };\n } \n\n const serializeFn = options && options.serialize;\n\n let serializedParams;\n\n if (serializeFn) {\n serializedParams = serializeFn(params, options);\n } else {\n serializedParams = utils.isURLSearchParams(params) ?\n params.toString() :\n new AxiosURLSearchParams(params, options).toString(_encode);\n }\n\n if (serializedParams) {\n const hashmarkIndex = url.indexOf(\"#\");\n\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\nclass InterceptorManager {\n constructor() {\n this.handlers = [];\n }\n\n /**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\n use(fulfilled, rejected, options) {\n this.handlers.push({\n fulfilled,\n rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null\n });\n return this.handlers.length - 1;\n }\n\n /**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n *\n * @returns {Boolean} `true` if the interceptor was removed, `false` otherwise\n */\n eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n }\n\n /**\n * Clear all interceptors from the stack\n *\n * @returns {void}\n */\n clear() {\n if (this.handlers) {\n this.handlers = [];\n }\n }\n\n /**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n *\n * @returns {void}\n */\n forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n }\n}\n\nexport default InterceptorManager;\n","'use strict';\n\nexport default {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n};\n","'use strict';\n\nimport AxiosURLSearchParams from '../../../helpers/AxiosURLSearchParams.js';\nexport default typeof URLSearchParams !== 'undefined' ? URLSearchParams : AxiosURLSearchParams;\n","'use strict';\n\nexport default typeof FormData !== 'undefined' ? FormData : null;\n","'use strict'\n\nexport default typeof Blob !== 'undefined' ? Blob : null\n","import URLSearchParams from './classes/URLSearchParams.js'\nimport FormData from './classes/FormData.js'\nimport Blob from './classes/Blob.js'\n\nexport default {\n isBrowser: true,\n classes: {\n URLSearchParams,\n FormData,\n Blob\n },\n protocols: ['http', 'https', 'file', 'blob', 'url', 'data']\n};\n","const hasBrowserEnv = typeof window !== 'undefined' && typeof document !== 'undefined';\n\nconst _navigator = typeof navigator === 'object' && navigator || undefined;\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n *\n * @returns {boolean}\n */\nconst hasStandardBrowserEnv = hasBrowserEnv &&\n (!_navigator || ['ReactNative', 'NativeScript', 'NS'].indexOf(_navigator.product) < 0);\n\n/**\n * Determine if we're running in a standard browser webWorker environment\n *\n * Although the `isStandardBrowserEnv` method indicates that\n * `allows axios to run in a web worker`, the WebWorker will still be\n * filtered out due to its judgment standard\n * `typeof window !== 'undefined' && typeof document !== 'undefined'`.\n * This leads to a problem when axios post `FormData` in webWorker\n */\nconst hasStandardBrowserWebWorkerEnv = (() => {\n return (\n typeof WorkerGlobalScope !== 'undefined' &&\n // eslint-disable-next-line no-undef\n self instanceof WorkerGlobalScope &&\n typeof self.importScripts === 'function'\n );\n})();\n\nconst origin = hasBrowserEnv && window.location.href || 'http://localhost';\n\nexport {\n hasBrowserEnv,\n hasStandardBrowserWebWorkerEnv,\n hasStandardBrowserEnv,\n _navigator as navigator,\n origin\n}\n","import platform from './node/index.js';\nimport * as utils from './common/utils.js';\n\nexport default {\n ...utils,\n ...platform\n}\n","'use strict';\n\nimport utils from '../utils.js';\nimport toFormData from './toFormData.js';\nimport platform from '../platform/index.js';\n\nexport default function toURLEncodedForm(data, options) {\n return toFormData(data, new platform.classes.URLSearchParams(), Object.assign({\n visitor: function(value, key, path, helpers) {\n if (platform.isNode && utils.isBuffer(value)) {\n this.append(key, value.toString('base64'));\n return false;\n }\n\n return helpers.defaultVisitor.apply(this, arguments);\n }\n }, options));\n}\n","'use strict';\n\nimport utils from '../utils.js';\n\n/**\n * It takes a string like `foo[x][y][z]` and returns an array like `['foo', 'x', 'y', 'z']\n *\n * @param {string} name - The name of the property to get.\n *\n * @returns An array of strings.\n */\nfunction parsePropPath(name) {\n // foo[x][y][z]\n // foo.x.y.z\n // foo-x-y-z\n // foo x y z\n return utils.matchAll(/\\w+|\\[(\\w*)]/g, name).map(match => {\n return match[0] === '[]' ? '' : match[1] || match[0];\n });\n}\n\n/**\n * Convert an array to an object.\n *\n * @param {Array<any>} arr - The array to convert to an object.\n *\n * @returns An object with the same keys and values as the array.\n */\nfunction arrayToObject(arr) {\n const obj = {};\n const keys = Object.keys(arr);\n let i;\n const len = keys.length;\n let key;\n for (i = 0; i < len; i++) {\n key = keys[i];\n obj[key] = arr[key];\n }\n return obj;\n}\n\n/**\n * It takes a FormData object and returns a JavaScript object\n *\n * @param {string} formData The FormData object to convert to JSON.\n *\n * @returns {Object<string, any> | null} The converted object.\n */\nfunction formDataToJSON(formData) {\n function buildPath(path, value, target, index) {\n let name = path[index++];\n\n if (name === '__proto__') return true;\n\n const isNumericKey = Number.isFinite(+name);\n const isLast = index >= path.length;\n name = !name && utils.isArray(target) ? target.length : name;\n\n if (isLast) {\n if (utils.hasOwnProp(target, name)) {\n target[name] = [target[name], value];\n } else {\n target[name] = value;\n }\n\n return !isNumericKey;\n }\n\n if (!target[name] || !utils.isObject(target[name])) {\n target[name] = [];\n }\n\n const result = buildPath(path, value, target[name], index);\n\n if (result && utils.isArray(target[name])) {\n target[name] = arrayToObject(target[name]);\n }\n\n return !isNumericKey;\n }\n\n if (utils.isFormData(formData) && utils.isFunction(formData.entries)) {\n const obj = {};\n\n utils.forEachEntry(formData, (name, value) => {\n buildPath(parsePropPath(name), value, obj, 0);\n });\n\n return obj;\n }\n\n return null;\n}\n\nexport default formDataToJSON;\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosError from '../core/AxiosError.js';\nimport transitionalDefaults from './transitional.js';\nimport toFormData from '../helpers/toFormData.js';\nimport toURLEncodedForm from '../helpers/toURLEncodedForm.js';\nimport platform from '../platform/index.js';\nimport formDataToJSON from '../helpers/formDataToJSON.js';\n\n/**\n * It takes a string, tries to parse it, and if it fails, it returns the stringified version\n * of the input\n *\n * @param {any} rawValue - The value to be stringified.\n * @param {Function} parser - A function that parses a string into a JavaScript object.\n * @param {Function} encoder - A function that takes a value and returns a string.\n *\n * @returns {string} A stringified version of the rawValue.\n */\nfunction stringifySafely(rawValue, parser, encoder) {\n if (utils.isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return utils.trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n\n return (encoder || JSON.stringify)(rawValue);\n}\n\nconst defaults = {\n\n transitional: transitionalDefaults,\n\n adapter: ['xhr', 'http', 'fetch'],\n\n transformRequest: [function transformRequest(data, headers) {\n const contentType = headers.getContentType() || '';\n const hasJSONContentType = contentType.indexOf('application/json') > -1;\n const isObjectPayload = utils.isObject(data);\n\n if (isObjectPayload && utils.isHTMLForm(data)) {\n data = new FormData(data);\n }\n\n const isFormData = utils.isFormData(data);\n\n if (isFormData) {\n return hasJSONContentType ? JSON.stringify(formDataToJSON(data)) : data;\n }\n\n if (utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data) ||\n utils.isReadableStream(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n headers.setContentType('application/x-www-form-urlencoded;charset=utf-8', false);\n return data.toString();\n }\n\n let isFileList;\n\n if (isObjectPayload) {\n if (contentType.indexOf('application/x-www-form-urlencoded') > -1) {\n return toURLEncodedForm(data, this.formSerializer).toString();\n }\n\n if ((isFileList = utils.isFileList(data)) || contentType.indexOf('multipart/form-data') > -1) {\n const _FormData = this.env && this.env.FormData;\n\n return toFormData(\n isFileList ? {'files[]': data} : data,\n _FormData && new _FormData(),\n this.formSerializer\n );\n }\n }\n\n if (isObjectPayload || hasJSONContentType ) {\n headers.setContentType('application/json', false);\n return stringifySafely(data);\n }\n\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n const transitional = this.transitional || defaults.transitional;\n const forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n const JSONRequested = this.responseType === 'json';\n\n if (utils.isResponse(data) || utils.isReadableStream(data)) {\n return data;\n }\n\n if (data && utils.isString(data) && ((forcedJSONParsing && !this.responseType) || JSONRequested)) {\n const silentJSONParsing = transitional && transitional.silentJSONParsing;\n const strictJSONParsing = !silentJSONParsing && JSONRequested;\n\n try {\n return JSON.parse(data);\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw AxiosError.from(e, AxiosError.ERR_BAD_RESPONSE, this, null, this.response);\n }\n throw e;\n }\n }\n }\n\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n maxBodyLength: -1,\n\n env: {\n FormData: platform.classes.FormData,\n Blob: platform.classes.Blob\n },\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n },\n\n headers: {\n common: {\n 'Accept': 'application/json, text/plain, */*',\n 'Content-Type': undefined\n }\n }\n};\n\nutils.forEach(['delete', 'get', 'head', 'post', 'put', 'patch'], (method) => {\n defaults.headers[method] = {};\n});\n\nexport default defaults;\n","'use strict';\n\nimport utils from './../utils.js';\n\n// RawAxiosHeaders whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nconst ignoreDuplicateOf = utils.toObjectSet([\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n]);\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} rawHeaders Headers needing to be parsed\n *\n * @returns {Object} Headers parsed into an object\n */\nexport default rawHeaders => {\n const parsed = {};\n let key;\n let val;\n let i;\n\n rawHeaders && rawHeaders.split('\\n').forEach(function parser(line) {\n i = line.indexOf(':');\n key = line.substring(0, i).trim().toLowerCase();\n val = line.substring(i + 1).trim();\n\n if (!key || (parsed[key] && ignoreDuplicateOf[key])) {\n return;\n }\n\n if (key === 'set-cookie') {\n if (parsed[key]) {\n parsed[key].push(val);\n } else {\n parsed[key] = [val];\n }\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n });\n\n return parsed;\n};\n","'use strict';\n\nimport utils from '../utils.js';\nimport parseHeaders from '../helpers/parseHeaders.js';\n\nconst $internals = Symbol('internals');\n\nfunction normalizeHeader(header) {\n return header && String(header).trim().toLowerCase();\n}\n\nfunction normalizeValue(value) {\n if (value === false || value == null) {\n return value;\n }\n\n return utils.isArray(value) ? value.map(normalizeValue) : String(value);\n}\n\nfunction parseTokens(str) {\n const tokens = Object.create(null);\n const tokensRE = /([^\\s,;=]+)\\s*(?:=\\s*([^,;]+))?/g;\n let match;\n\n while ((match = tokensRE.exec(str))) {\n tokens[match[1]] = match[2];\n }\n\n return tokens;\n}\n\nconst isValidHeaderName = (str) => /^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(str.trim());\n\nfunction matchHeaderValue(context, value, header, filter, isHeaderNameFilter) {\n if (utils.isFunction(filter)) {\n return filter.call(this, value, header);\n }\n\n if (isHeaderNameFilter) {\n value = header;\n }\n\n if (!utils.isString(value)) return;\n\n if (utils.isString(filter)) {\n return value.indexOf(filter) !== -1;\n }\n\n if (utils.isRegExp(filter)) {\n return filter.test(value);\n }\n}\n\nfunction formatHeader(header) {\n return header.trim()\n .toLowerCase().replace(/([a-z\\d])(\\w*)/g, (w, char, str) => {\n return char.toUpperCase() + str;\n });\n}\n\nfunction buildAccessors(obj, header) {\n const accessorName = utils.toCamelCase(' ' + header);\n\n ['get', 'set', 'has'].forEach(methodName => {\n Object.defineProperty(obj, methodName + accessorName, {\n value: function(arg1, arg2, arg3) {\n return this[methodName].call(this, header, arg1, arg2, arg3);\n },\n configurable: true\n });\n });\n}\n\nclass AxiosHeaders {\n constructor(headers) {\n headers && this.set(headers);\n }\n\n set(header, valueOrRewrite, rewrite) {\n const self = this;\n\n function setHeader(_value, _header, _rewrite) {\n const lHeader = normalizeHeader(_header);\n\n if (!lHeader) {\n throw new Error('header name must be a non-empty string');\n }\n\n const key = utils.findKey(self, lHeader);\n\n if(!key || self[key] === undefined || _rewrite === true || (_rewrite === undefined && self[key] !== false)) {\n self[key || _header] = normalizeValue(_value);\n }\n }\n\n const setHeaders = (headers, _rewrite) =>\n utils.forEach(headers, (_value, _header) => setHeader(_value, _header, _rewrite));\n\n if (utils.isPlainObject(header) || header instanceof this.constructor) {\n setHeaders(header, valueOrRewrite)\n } else if(utils.isString(header) && (header = header.trim()) && !isValidHeaderName(header)) {\n setHeaders(parseHeaders(header), valueOrRewrite);\n } else if (utils.isHeaders(header)) {\n for (const [key, value] of header.entries()) {\n setHeader(value, key, rewrite);\n }\n } else {\n header != null && setHeader(valueOrRewrite, header, rewrite);\n }\n\n return this;\n }\n\n get(header, parser) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n if (key) {\n const value = this[key];\n\n if (!parser) {\n return value;\n }\n\n if (parser === true) {\n return parseTokens(value);\n }\n\n if (utils.isFunction(parser)) {\n return parser.call(this, value, key);\n }\n\n if (utils.isRegExp(parser)) {\n return parser.exec(value);\n }\n\n throw new TypeError('parser must be boolean|regexp|function');\n }\n }\n }\n\n has(header, matcher) {\n header = normalizeHeader(header);\n\n if (header) {\n const key = utils.findKey(this, header);\n\n return !!(key && this[key] !== undefined && (!matcher || matchHeaderValue(this, this[key], key, matcher)));\n }\n\n return false;\n }\n\n delete(header, matcher) {\n const self = this;\n let deleted = false;\n\n function deleteHeader(_header) {\n _header = normalizeHeader(_header);\n\n if (_header) {\n const key = utils.findKey(self, _header);\n\n if (key && (!matcher || matchHeaderValue(self, self[key], key, matcher))) {\n delete self[key];\n\n deleted = true;\n }\n }\n }\n\n if (utils.isArray(header)) {\n header.forEach(deleteHeader);\n } else {\n deleteHeader(header);\n }\n\n return deleted;\n }\n\n clear(matcher) {\n const keys = Object.keys(this);\n let i = keys.length;\n let deleted = false;\n\n while (i--) {\n const key = keys[i];\n if(!matcher || matchHeaderValue(this, this[key], key, matcher, true)) {\n delete this[key];\n deleted = true;\n }\n }\n\n return deleted;\n }\n\n normalize(format) {\n const self = this;\n const headers = {};\n\n utils.forEach(this, (value, header) => {\n const key = utils.findKey(headers, header);\n\n if (key) {\n self[key] = normalizeValue(value);\n delete self[header];\n return;\n }\n\n const normalized = format ? formatHeader(header) : String(header).trim();\n\n if (normalized !== header) {\n delete self[header];\n }\n\n self[normalized] = normalizeValue(value);\n\n headers[normalized] = true;\n });\n\n return this;\n }\n\n concat(...targets) {\n return this.constructor.concat(this, ...targets);\n }\n\n toJSON(asStrings) {\n const obj = Object.create(null);\n\n utils.forEach(this, (value, header) => {\n value != null && value !== false && (obj[header] = asStrings && utils.isArray(value) ? value.join(', ') : value);\n });\n\n return obj;\n }\n\n [Symbol.iterator]() {\n return Object.entries(this.toJSON())[Symbol.iterator]();\n }\n\n toString() {\n return Object.entries(this.toJSON()).map(([header, value]) => header + ': ' + value).join('\\n');\n }\n\n get [Symbol.toStringTag]() {\n return 'AxiosHeaders';\n }\n\n static from(thing) {\n return thing instanceof this ? thing : new this(thing);\n }\n\n static concat(first, ...targets) {\n const computed = new this(first);\n\n targets.forEach((target) => computed.set(target));\n\n return computed;\n }\n\n static accessor(header) {\n const internals = this[$internals] = (this[$internals] = {\n accessors: {}\n });\n\n const accessors = internals.accessors;\n const prototype = this.prototype;\n\n function defineAccessor(_header) {\n const lHeader = normalizeHeader(_header);\n\n if (!accessors[lHeader]) {\n buildAccessors(prototype, _header);\n accessors[lHeader] = true;\n }\n }\n\n utils.isArray(header) ? header.forEach(defineAccessor) : defineAccessor(header);\n\n return this;\n }\n}\n\nAxiosHeaders.accessor(['Content-Type', 'Content-Length', 'Accept', 'Accept-Encoding', 'User-Agent', 'Authorization']);\n\n// reserved names hotfix\nutils.reduceDescriptors(AxiosHeaders.prototype, ({value}, key) => {\n let mapped = key[0].toUpperCase() + key.slice(1); // map `set` => `Set`\n return {\n get: () => value,\n set(headerValue) {\n this[mapped] = headerValue;\n }\n }\n});\n\nutils.freezeMethods(AxiosHeaders);\n\nexport default AxiosHeaders;\n","'use strict';\n\nimport utils from './../utils.js';\nimport defaults from '../defaults/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Array|Function} fns A single function or Array of functions\n * @param {?Object} response The response object\n *\n * @returns {*} The resulting transformed data\n */\nexport default function transformData(fns, response) {\n const config = this || defaults;\n const context = response || config;\n const headers = AxiosHeaders.from(context.headers);\n let data = context.data;\n\n utils.forEach(fns, function transform(fn) {\n data = fn.call(config, data, headers.normalize(), response ? response.status : undefined);\n });\n\n headers.normalize();\n\n return data;\n}\n","'use strict';\n\nexport default function isCancel(value) {\n return !!(value && value.__CANCEL__);\n}\n","'use strict';\n\nimport AxiosError from '../core/AxiosError.js';\nimport utils from '../utils.js';\n\n/**\n * A `CanceledError` is an object that is thrown when an operation is canceled.\n *\n * @param {string=} message The message.\n * @param {Object=} config The config.\n * @param {Object=} request The request.\n *\n * @returns {CanceledError} The created error.\n */\nfunction CanceledError(message, config, request) {\n // eslint-disable-next-line no-eq-null,eqeqeq\n AxiosError.call(this, message == null ? 'canceled' : message, AxiosError.ERR_CANCELED, config, request);\n this.name = 'CanceledError';\n}\n\nutils.inherits(CanceledError, AxiosError, {\n __CANCEL__: true\n});\n\nexport default CanceledError;\n","'use strict';\n\nimport AxiosError from './AxiosError.js';\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n *\n * @returns {object} The response.\n */\nexport default function settle(resolve, reject, response) {\n const validateStatus = response.config.validateStatus;\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(new AxiosError(\n 'Request failed with status code ' + response.status,\n [AxiosError.ERR_BAD_REQUEST, AxiosError.ERR_BAD_RESPONSE][Math.floor(response.status / 100) - 4],\n response.config,\n response.request,\n response\n ));\n }\n}\n","'use strict';\n\nexport default function parseProtocol(url) {\n const match = /^([-+\\w]{1,25})(:?\\/\\/|:)/.exec(url);\n return match && match[1] || '';\n}\n","'use strict';\n\n/**\n * Calculate data maxRate\n * @param {Number} [samplesCount= 10]\n * @param {Number} [min= 1000]\n * @returns {Function}\n */\nfunction speedometer(samplesCount, min) {\n samplesCount = samplesCount || 10;\n const bytes = new Array(samplesCount);\n const timestamps = new Array(samplesCount);\n let head = 0;\n let tail = 0;\n let firstSampleTS;\n\n min = min !== undefined ? min : 1000;\n\n return function push(chunkLength) {\n const now = Date.now();\n\n const startedAt = timestamps[tail];\n\n if (!firstSampleTS) {\n firstSampleTS = now;\n }\n\n bytes[head] = chunkLength;\n timestamps[head] = now;\n\n let i = tail;\n let bytesCount = 0;\n\n while (i !== head) {\n bytesCount += bytes[i++];\n i = i % samplesCount;\n }\n\n head = (head + 1) % samplesCount;\n\n if (head === tail) {\n tail = (tail + 1) % samplesCount;\n }\n\n if (now - firstSampleTS < min) {\n return;\n }\n\n const passed = startedAt && now - startedAt;\n\n return passed ? Math.round(bytesCount * 1000 / passed) : undefined;\n };\n}\n\nexport default speedometer;\n","/**\n * Throttle decorator\n * @param {Function} fn\n * @param {Number} freq\n * @return {Function}\n */\nfunction throttle(fn, freq) {\n let timestamp = 0;\n let threshold = 1000 / freq;\n let lastArgs;\n let timer;\n\n const invoke = (args, now = Date.now()) => {\n timestamp = now;\n lastArgs = null;\n if (timer) {\n clearTimeout(timer);\n timer = null;\n }\n fn.apply(null, args);\n }\n\n const throttled = (...args) => {\n const now = Date.now();\n const passed = now - timestamp;\n if ( passed >= threshold) {\n invoke(args, now);\n } else {\n lastArgs = args;\n if (!timer) {\n timer = setTimeout(() => {\n timer = null;\n invoke(lastArgs)\n }, threshold - passed);\n }\n }\n }\n\n const flush = () => lastArgs && invoke(lastArgs);\n\n return [throttled, flush];\n}\n\nexport default throttle;\n","import speedometer from \"./speedometer.js\";\nimport throttle from \"./throttle.js\";\nimport utils from \"../utils.js\";\n\nexport const progressEventReducer = (listener, isDownloadStream, freq = 3) => {\n let bytesNotified = 0;\n const _speedometer = speedometer(50, 250);\n\n return throttle(e => {\n const loaded = e.loaded;\n const total = e.lengthComputable ? e.total : undefined;\n const progressBytes = loaded - bytesNotified;\n const rate = _speedometer(progressBytes);\n const inRange = loaded <= total;\n\n bytesNotified = loaded;\n\n const data = {\n loaded,\n total,\n progress: total ? (loaded / total) : undefined,\n bytes: progressBytes,\n rate: rate ? rate : undefined,\n estimated: rate && total && inRange ? (total - loaded) / rate : undefined,\n event: e,\n lengthComputable: total != null,\n [isDownloadStream ? 'download' : 'upload']: true\n };\n\n listener(data);\n }, freq);\n}\n\nexport const progressEventDecorator = (total, throttled) => {\n const lengthComputable = total != null;\n\n return [(loaded) => throttled[0]({\n lengthComputable,\n total,\n loaded\n }), throttled[1]];\n}\n\nexport const asyncDecorator = (fn) => (...args) => utils.asap(() => fn(...args));\n","import platform from '../platform/index.js';\n\nexport default platform.hasStandardBrowserEnv ? ((origin, isMSIE) => (url) => {\n url = new URL(url, platform.origin);\n\n return (\n origin.protocol === url.protocol &&\n origin.host === url.host &&\n (isMSIE || origin.port === url.port)\n );\n})(\n new URL(platform.origin),\n platform.navigator && /(msie|trident)/i.test(platform.navigator.userAgent)\n) : () => true;\n","import utils from './../utils.js';\nimport platform from '../platform/index.js';\n\nexport default platform.hasStandardBrowserEnv ?\n\n // Standard browser envs support document.cookie\n {\n write(name, value, expires, path, domain, secure) {\n const cookie = [name + '=' + encodeURIComponent(value)];\n\n utils.isNumber(expires) && cookie.push('expires=' + new Date(expires).toGMTString());\n\n utils.isString(path) && cookie.push('path=' + path);\n\n utils.isString(domain) && cookie.push('domain=' + domain);\n\n secure === true && cookie.push('secure');\n\n document.cookie = cookie.join('; ');\n },\n\n read(name) {\n const match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n }\n\n :\n\n // Non-standard browser env (web workers, react-native) lack needed support.\n {\n write() {},\n read() {\n return null;\n },\n remove() {}\n };\n\n","'use strict';\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n *\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nexport default function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"<scheme>://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d+\\-.]*:)?\\/\\//i.test(url);\n}\n","'use strict';\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n *\n * @returns {string} The combined URL\n */\nexport default function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/?\\/$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n}\n","'use strict';\n\nimport isAbsoluteURL from '../helpers/isAbsoluteURL.js';\nimport combineURLs from '../helpers/combineURLs.js';\n\n/**\n * Creates a new URL by combining the baseURL with the requestedURL,\n * only when the requestedURL is not already an absolute URL.\n * If the requestURL is absolute, this function returns the requestedURL untouched.\n *\n * @param {string} baseURL The base URL\n * @param {string} requestedURL Absolute or relative URL to combine\n *\n * @returns {string} The combined full path\n */\nexport default function buildFullPath(baseURL, requestedURL) {\n if (baseURL && !isAbsoluteURL(requestedURL)) {\n return combineURLs(baseURL, requestedURL);\n }\n return requestedURL;\n}\n","'use strict';\n\nimport utils from '../utils.js';\nimport AxiosHeaders from \"./AxiosHeaders.js\";\n\nconst headersToObject = (thing) => thing instanceof AxiosHeaders ? { ...thing } : thing;\n\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n *\n * @returns {Object} New object resulting from merging config2 to config1\n */\nexport default function mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n const config = {};\n\n function getMergedValue(target, source, prop, caseless) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge.call({caseless}, target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDeepProperties(a, b, prop , caseless) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(a, b, prop , caseless);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a, prop , caseless);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function valueFromConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function defaultToConfig2(a, b) {\n if (!utils.isUndefined(b)) {\n return getMergedValue(undefined, b);\n } else if (!utils.isUndefined(a)) {\n return getMergedValue(undefined, a);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDirectKeys(a, b, prop) {\n if (prop in config2) {\n return getMergedValue(a, b);\n } else if (prop in config1) {\n return getMergedValue(undefined, a);\n }\n }\n\n const mergeMap = {\n url: valueFromConfig2,\n method: valueFromConfig2,\n data: valueFromConfig2,\n baseURL: defaultToConfig2,\n transformRequest: defaultToConfig2,\n transformResponse: defaultToConfig2,\n paramsSerializer: defaultToConfig2,\n timeout: defaultToConfig2,\n timeoutMessage: defaultToConfig2,\n withCredentials: defaultToConfig2,\n withXSRFToken: defaultToConfig2,\n adapter: defaultToConfig2,\n responseType: defaultToConfig2,\n xsrfCookieName: defaultToConfig2,\n xsrfHeaderName: defaultToConfig2,\n onUploadProgress: defaultToConfig2,\n onDownloadProgress: defaultToConfig2,\n decompress: defaultToConfig2,\n maxContentLength: defaultToConfig2,\n maxBodyLength: defaultToConfig2,\n beforeRedirect: defaultToConfig2,\n transport: defaultToConfig2,\n httpAgent: defaultToConfig2,\n httpsAgent: defaultToConfig2,\n cancelToken: defaultToConfig2,\n socketPath: defaultToConfig2,\n responseEncoding: defaultToConfig2,\n validateStatus: mergeDirectKeys,\n headers: (a, b , prop) => mergeDeepProperties(headersToObject(a), headersToObject(b),prop, true)\n };\n\n utils.forEach(Object.keys(Object.assign({}, config1, config2)), function computeConfigValue(prop) {\n const merge = mergeMap[prop] || mergeDeepProperties;\n const configValue = merge(config1[prop], config2[prop], prop);\n (utils.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);\n });\n\n return config;\n}\n","import platform from \"../platform/index.js\";\nimport utils from \"../utils.js\";\nimport isURLSameOrigin from \"./isURLSameOrigin.js\";\nimport cookies from \"./cookies.js\";\nimport buildFullPath from \"../core/buildFullPath.js\";\nimport mergeConfig from \"../core/mergeConfig.js\";\nimport AxiosHeaders from \"../core/AxiosHeaders.js\";\nimport buildURL from \"./buildURL.js\";\n\nexport default (config) => {\n const newConfig = mergeConfig({}, config);\n\n let {data, withXSRFToken, xsrfHeaderName, xsrfCookieName, headers, auth} = newConfig;\n\n newConfig.headers = headers = AxiosHeaders.from(headers);\n\n newConfig.url = buildURL(buildFullPath(newConfig.baseURL, newConfig.url), config.params, config.paramsSerializer);\n\n // HTTP basic authentication\n if (auth) {\n headers.set('Authorization', 'Basic ' +\n btoa((auth.username || '') + ':' + (auth.password ? unescape(encodeURIComponent(auth.password)) : ''))\n );\n }\n\n let contentType;\n\n if (utils.isFormData(data)) {\n if (platform.hasStandardBrowserEnv || platform.hasStandardBrowserWebWorkerEnv) {\n headers.setContentType(undefined); // Let the browser set it\n } else if ((contentType = headers.getContentType()) !== false) {\n // fix semicolon duplication issue for ReactNative FormData implementation\n const [type, ...tokens] = contentType ? contentType.split(';').map(token => token.trim()).filter(Boolean) : [];\n headers.setContentType([type || 'multipart/form-data', ...tokens].join('; '));\n }\n }\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n\n if (platform.hasStandardBrowserEnv) {\n withXSRFToken && utils.isFunction(withXSRFToken) && (withXSRFToken = withXSRFToken(newConfig));\n\n if (withXSRFToken || (withXSRFToken !== false && isURLSameOrigin(newConfig.url))) {\n // Add xsrf header\n const xsrfValue = xsrfHeaderName && xsrfCookieName && cookies.read(xsrfCookieName);\n\n if (xsrfValue) {\n headers.set(xsrfHeaderName, xsrfValue);\n }\n }\n }\n\n return newConfig;\n}\n\n","import utils from './../utils.js';\nimport settle from './../core/settle.js';\nimport transitionalDefaults from '../defaults/transitional.js';\nimport AxiosError from '../core/AxiosError.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport parseProtocol from '../helpers/parseProtocol.js';\nimport platform from '../platform/index.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport {progressEventReducer} from '../helpers/progressEventReducer.js';\nimport resolveConfig from \"../helpers/resolveConfig.js\";\n\nconst isXHRAdapterSupported = typeof XMLHttpRequest !== 'undefined';\n\nexport default isXHRAdapterSupported && function (config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n const _config = resolveConfig(config);\n let requestData = _config.data;\n const requestHeaders = AxiosHeaders.from(_config.headers).normalize();\n let {responseType, onUploadProgress, onDownloadProgress} = _config;\n let onCanceled;\n let uploadThrottled, downloadThrottled;\n let flushUpload, flushDownload;\n\n function done() {\n flushUpload && flushUpload(); // flush events\n flushDownload && flushDownload(); // flush events\n\n _config.cancelToken && _config.cancelToken.unsubscribe(onCanceled);\n\n _config.signal && _config.signal.removeEventListener('abort', onCanceled);\n }\n\n let request = new XMLHttpRequest();\n\n request.open(_config.method.toUpperCase(), _config.url, true);\n\n // Set the request timeout in MS\n request.timeout = _config.timeout;\n\n function onloadend() {\n if (!request) {\n return;\n }\n // Prepare the response\n const responseHeaders = AxiosHeaders.from(\n 'getAllResponseHeaders' in request && request.getAllResponseHeaders()\n );\n const responseData = !responseType || responseType === 'text' || responseType === 'json' ?\n request.responseText : request.response;\n const response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config,\n request\n };\n\n settle(function _resolve(value) {\n resolve(value);\n done();\n }, function _reject(err) {\n reject(err);\n done();\n }, response);\n\n // Clean up request\n request = null;\n }\n\n if ('onloadend' in request) {\n // Use onloadend if available\n request.onloadend = onloadend;\n } else {\n // Listen for ready state to emulate onloadend\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n // readystate handler is calling before onerror or ontimeout handlers,\n // so we should call onloadend on the next 'tick'\n setTimeout(onloadend);\n };\n }\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(new AxiosError('Request aborted', AxiosError.ECONNABORTED, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n let timeoutErrorMessage = _config.timeout ? 'timeout of ' + _config.timeout + 'ms exceeded' : 'timeout exceeded';\n const transitional = _config.transitional || transitionalDefaults;\n if (_config.timeoutErrorMessage) {\n timeoutErrorMessage = _config.timeoutErrorMessage;\n }\n reject(new AxiosError(\n timeoutErrorMessage,\n transitional.clarifyTimeoutError ? AxiosError.ETIMEDOUT : AxiosError.ECONNABORTED,\n config,\n request));\n\n // Clean up request\n request = null;\n };\n\n // Remove Content-Type if data is undefined\n requestData === undefined && requestHeaders.setContentType(null);\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders.toJSON(), function setRequestHeader(val, key) {\n request.setRequestHeader(key, val);\n });\n }\n\n // Add withCredentials to request if needed\n if (!utils.isUndefined(_config.withCredentials)) {\n request.withCredentials = !!_config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (responseType && responseType !== 'json') {\n request.responseType = _config.responseType;\n }\n\n // Handle progress if needed\n if (onDownloadProgress) {\n ([downloadThrottled, flushDownload] = progressEventReducer(onDownloadProgress, true));\n request.addEventListener('progress', downloadThrottled);\n }\n\n // Not all browsers support upload events\n if (onUploadProgress && request.upload) {\n ([uploadThrottled, flushUpload] = progressEventReducer(onUploadProgress));\n\n request.upload.addEventListener('progress', uploadThrottled);\n\n request.upload.addEventListener('loadend', flushUpload);\n }\n\n if (_config.cancelToken || _config.signal) {\n // Handle cancellation\n // eslint-disable-next-line func-names\n onCanceled = cancel => {\n if (!request) {\n return;\n }\n reject(!cancel || cancel.type ? new CanceledError(null, config, request) : cancel);\n request.abort();\n request = null;\n };\n\n _config.cancelToken && _config.cancelToken.subscribe(onCanceled);\n if (_config.signal) {\n _config.signal.aborted ? onCanceled() : _config.signal.addEventListener('abort', onCanceled);\n }\n }\n\n const protocol = parseProtocol(_config.url);\n\n if (protocol && platform.protocols.indexOf(protocol) === -1) {\n reject(new AxiosError('Unsupported protocol ' + protocol + ':', AxiosError.ERR_BAD_REQUEST, config));\n return;\n }\n\n\n // Send the request\n request.send(requestData || null);\n });\n}\n","import CanceledError from \"../cancel/CanceledError.js\";\nimport AxiosError from \"../core/AxiosError.js\";\nimport utils from '../utils.js';\n\nconst composeSignals = (signals, timeout) => {\n const {length} = (signals = signals ? signals.filter(Boolean) : []);\n\n if (timeout || length) {\n let controller = new AbortController();\n\n let aborted;\n\n const onabort = function (reason) {\n if (!aborted) {\n aborted = true;\n unsubscribe();\n const err = reason instanceof Error ? reason : this.reason;\n controller.abort(err instanceof AxiosError ? err : new CanceledError(err instanceof Error ? err.message : err));\n }\n }\n\n let timer = timeout && setTimeout(() => {\n timer = null;\n onabort(new AxiosError(`timeout ${timeout} of ms exceeded`, AxiosError.ETIMEDOUT))\n }, timeout)\n\n const unsubscribe = () => {\n if (signals) {\n timer && clearTimeout(timer);\n timer = null;\n signals.forEach(signal => {\n signal.unsubscribe ? signal.unsubscribe(onabort) : signal.removeEventListener('abort', onabort);\n });\n signals = null;\n }\n }\n\n signals.forEach((signal) => signal.addEventListener('abort', onabort));\n\n const {signal} = controller;\n\n signal.unsubscribe = () => utils.asap(unsubscribe);\n\n return signal;\n }\n}\n\nexport default composeSignals;\n","\nexport const streamChunk = function* (chunk, chunkSize) {\n let len = chunk.byteLength;\n\n if (!chunkSize || len < chunkSize) {\n yield chunk;\n return;\n }\n\n let pos = 0;\n let end;\n\n while (pos < len) {\n end = pos + chunkSize;\n yield chunk.slice(pos, end);\n pos = end;\n }\n}\n\nexport const readBytes = async function* (iterable, chunkSize) {\n for await (const chunk of readStream(iterable)) {\n yield* streamChunk(chunk, chunkSize);\n }\n}\n\nconst readStream = async function* (stream) {\n if (stream[Symbol.asyncIterator]) {\n yield* stream;\n return;\n }\n\n const reader = stream.getReader();\n try {\n for (;;) {\n const {done, value} = await reader.read();\n if (done) {\n break;\n }\n yield value;\n }\n } finally {\n await reader.cancel();\n }\n}\n\nexport const trackStream = (stream, chunkSize, onProgress, onFinish) => {\n const iterator = readBytes(stream, chunkSize);\n\n let bytes = 0;\n let done;\n let _onFinish = (e) => {\n if (!done) {\n done = true;\n onFinish && onFinish(e);\n }\n }\n\n return new ReadableStream({\n async pull(controller) {\n try {\n const {done, value} = await iterator.next();\n\n if (done) {\n _onFinish();\n controller.close();\n return;\n }\n\n let len = value.byteLength;\n if (onProgress) {\n let loadedBytes = bytes += len;\n onProgress(loadedBytes);\n }\n controller.enqueue(new Uint8Array(value));\n } catch (err) {\n _onFinish(err);\n throw err;\n }\n },\n cancel(reason) {\n _onFinish(reason);\n return iterator.return();\n }\n }, {\n highWaterMark: 2\n })\n}\n","import platform from \"../platform/index.js\";\nimport utils from \"../utils.js\";\nimport AxiosError from \"../core/AxiosError.js\";\nimport composeSignals from \"../helpers/composeSignals.js\";\nimport {trackStream} from \"../helpers/trackStream.js\";\nimport AxiosHeaders from \"../core/AxiosHeaders.js\";\nimport {progressEventReducer, progressEventDecorator, asyncDecorator} from \"../helpers/progressEventReducer.js\";\nimport resolveConfig from \"../helpers/resolveConfig.js\";\nimport settle from \"../core/settle.js\";\n\nconst isFetchSupported = typeof fetch === 'function' && typeof Request === 'function' && typeof Response === 'function';\nconst isReadableStreamSupported = isFetchSupported && typeof ReadableStream === 'function';\n\n// used only inside the fetch adapter\nconst encodeText = isFetchSupported && (typeof TextEncoder === 'function' ?\n ((encoder) => (str) => encoder.encode(str))(new TextEncoder()) :\n async (str) => new Uint8Array(await new Response(str).arrayBuffer())\n);\n\nconst test = (fn, ...args) => {\n try {\n return !!fn(...args);\n } catch (e) {\n return false\n }\n}\n\nconst supportsRequestStream = isReadableStreamSupported && test(() => {\n let duplexAccessed = false;\n\n const hasContentType = new Request(platform.origin, {\n body: new ReadableStream(),\n method: 'POST',\n get duplex() {\n duplexAccessed = true;\n return 'half';\n },\n }).headers.has('Content-Type');\n\n return duplexAccessed && !hasContentType;\n});\n\nconst DEFAULT_CHUNK_SIZE = 64 * 1024;\n\nconst supportsResponseStream = isReadableStreamSupported &&\n test(() => utils.isReadableStream(new Response('').body));\n\n\nconst resolvers = {\n stream: supportsResponseStream && ((res) => res.body)\n};\n\nisFetchSupported && (((res) => {\n ['text', 'arrayBuffer', 'blob', 'formData', 'stream'].forEach(type => {\n !resolvers[type] && (resolvers[type] = utils.isFunction(res[type]) ? (res) => res[type]() :\n (_, config) => {\n throw new AxiosError(`Response type '${type}' is not supported`, AxiosError.ERR_NOT_SUPPORT, config);\n })\n });\n})(new Response));\n\nconst getBodyLength = async (body) => {\n if (body == null) {\n return 0;\n }\n\n if(utils.isBlob(body)) {\n return body.size;\n }\n\n if(utils.isSpecCompliantForm(body)) {\n const _request = new Request(platform.origin, {\n method: 'POST',\n body,\n });\n return (await _request.arrayBuffer()).byteLength;\n }\n\n if(utils.isArrayBufferView(body) || utils.isArrayBuffer(body)) {\n return body.byteLength;\n }\n\n if(utils.isURLSearchParams(body)) {\n body = body + '';\n }\n\n if(utils.isString(body)) {\n return (await encodeText(body)).byteLength;\n }\n}\n\nconst resolveBodyLength = async (headers, body) => {\n const length = utils.toFiniteNumber(headers.getContentLength());\n\n return length == null ? getBodyLength(body) : length;\n}\n\nexport default isFetchSupported && (async (config) => {\n let {\n url,\n method,\n data,\n signal,\n cancelToken,\n timeout,\n onDownloadProgress,\n onUploadProgress,\n responseType,\n headers,\n withCredentials = 'same-origin',\n fetchOptions\n } = resolveConfig(config);\n\n responseType = responseType ? (responseType + '').toLowerCase() : 'text';\n\n let composedSignal = composeSignals([signal, cancelToken && cancelToken.toAbortSignal()], timeout);\n\n let request;\n\n const unsubscribe = composedSignal && composedSignal.unsubscribe && (() => {\n composedSignal.unsubscribe();\n });\n\n let requestContentLength;\n\n try {\n if (\n onUploadProgress && supportsRequestStream && method !== 'get' && method !== 'head' &&\n (requestContentLength = await resolveBodyLength(headers, data)) !== 0\n ) {\n let _request = new Request(url, {\n method: 'POST',\n body: data,\n duplex: \"half\"\n });\n\n let contentTypeHeader;\n\n if (utils.isFormData(data) && (contentTypeHeader = _request.headers.get('content-type'))) {\n headers.setContentType(contentTypeHeader)\n }\n\n if (_request.body) {\n const [onProgress, flush] = progressEventDecorator(\n requestContentLength,\n progressEventReducer(asyncDecorator(onUploadProgress))\n );\n\n data = trackStream(_request.body, DEFAULT_CHUNK_SIZE, onProgress, flush);\n }\n }\n\n if (!utils.isString(withCredentials)) {\n withCredentials = withCredentials ? 'include' : 'omit';\n }\n\n // Cloudflare Workers throws when credentials are defined\n // see https://github.com/cloudflare/workerd/issues/902\n const isCredentialsSupported = \"credentials\" in Request.prototype;\n request = new Request(url, {\n ...fetchOptions,\n signal: composedSignal,\n method: method.toUpperCase(),\n headers: headers.normalize().toJSON(),\n body: data,\n duplex: \"half\",\n credentials: isCredentialsSupported ? withCredentials : undefined\n });\n\n let response = await fetch(request);\n\n const isStreamResponse = supportsResponseStream && (responseType === 'stream' || responseType === 'response');\n\n if (supportsResponseStream && (onDownloadProgress || (isStreamResponse && unsubscribe))) {\n const options = {};\n\n ['status', 'statusText', 'headers'].forEach(prop => {\n options[prop] = response[prop];\n });\n\n const responseContentLength = utils.toFiniteNumber(response.headers.get('content-length'));\n\n const [onProgress, flush] = onDownloadProgress && progressEventDecorator(\n responseContentLength,\n progressEventReducer(asyncDecorator(onDownloadProgress), true)\n ) || [];\n\n response = new Response(\n trackStream(response.body, DEFAULT_CHUNK_SIZE, onProgress, () => {\n flush && flush();\n unsubscribe && unsubscribe();\n }),\n options\n );\n }\n\n responseType = responseType || 'text';\n\n let responseData = await resolvers[utils.findKey(resolvers, responseType) || 'text'](response, config);\n\n !isStreamResponse && unsubscribe && unsubscribe();\n\n return await new Promise((resolve, reject) => {\n settle(resolve, reject, {\n data: responseData,\n headers: AxiosHeaders.from(response.headers),\n status: response.status,\n statusText: response.statusText,\n config,\n request\n })\n })\n } catch (err) {\n unsubscribe && unsubscribe();\n\n if (err && err.name === 'TypeError' && /fetch/i.test(err.message)) {\n throw Object.assign(\n new AxiosError('Network Error', AxiosError.ERR_NETWORK, config, request),\n {\n cause: err.cause || err\n }\n )\n }\n\n throw AxiosError.from(err, err && err.code, config, request);\n }\n});\n\n\n","import utils from '../utils.js';\nimport httpAdapter from './http.js';\nimport xhrAdapter from './xhr.js';\nimport fetchAdapter from './fetch.js';\nimport AxiosError from \"../core/AxiosError.js\";\n\nconst knownAdapters = {\n http: httpAdapter,\n xhr: xhrAdapter,\n fetch: fetchAdapter\n}\n\nutils.forEach(knownAdapters, (fn, value) => {\n if (fn) {\n try {\n Object.defineProperty(fn, 'name', {value});\n } catch (e) {\n // eslint-disable-next-line no-empty\n }\n Object.defineProperty(fn, 'adapterName', {value});\n }\n});\n\nconst renderReason = (reason) => `- ${reason}`;\n\nconst isResolvedHandle = (adapter) => utils.isFunction(adapter) || adapter === null || adapter === false;\n\nexport default {\n getAdapter: (adapters) => {\n adapters = utils.isArray(adapters) ? adapters : [adapters];\n\n const {length} = adapters;\n let nameOrAdapter;\n let adapter;\n\n const rejectedReasons = {};\n\n for (let i = 0; i < length; i++) {\n nameOrAdapter = adapters[i];\n let id;\n\n adapter = nameOrAdapter;\n\n if (!isResolvedHandle(nameOrAdapter)) {\n adapter = knownAdapters[(id = String(nameOrAdapter)).toLowerCase()];\n\n if (adapter === undefined) {\n throw new AxiosError(`Unknown adapter '${id}'`);\n }\n }\n\n if (adapter) {\n break;\n }\n\n rejectedReasons[id || '#' + i] = adapter;\n }\n\n if (!adapter) {\n\n const reasons = Object.entries(rejectedReasons)\n .map(([id, state]) => `adapter ${id} ` +\n (state === false ? 'is not supported by the environment' : 'is not available in the build')\n );\n\n let s = length ?\n (reasons.length > 1 ? 'since :\\n' + reasons.map(renderReason).join('\\n') : ' ' + renderReason(reasons[0])) :\n 'as no adapter specified';\n\n throw new AxiosError(\n `There is no suitable adapter to dispatch the request ` + s,\n 'ERR_NOT_SUPPORT'\n );\n }\n\n return adapter;\n },\n adapters: knownAdapters\n}\n","'use strict';\n\nimport transformData from './transformData.js';\nimport isCancel from '../cancel/isCancel.js';\nimport defaults from '../defaults/index.js';\nimport CanceledError from '../cancel/CanceledError.js';\nimport AxiosHeaders from '../core/AxiosHeaders.js';\nimport adapters from \"../adapters/adapters.js\";\n\n/**\n * Throws a `CanceledError` if cancellation has been requested.\n *\n * @param {Object} config The config that is to be used for the request\n *\n * @returns {void}\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n\n if (config.signal && config.signal.aborted) {\n throw new CanceledError(null, config);\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n *\n * @returns {Promise} The Promise to be fulfilled\n */\nexport default function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n config.headers = AxiosHeaders.from(config.headers);\n\n // Transform request data\n config.data = transformData.call(\n config,\n config.transformRequest\n );\n\n if (['post', 'put', 'patch'].indexOf(config.method) !== -1) {\n config.headers.setContentType('application/x-www-form-urlencoded', false);\n }\n\n const adapter = adapters.getAdapter(config.adapter || defaults.adapter);\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData.call(\n config,\n config.transformResponse,\n response\n );\n\n response.headers = AxiosHeaders.from(response.headers);\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData.call(\n config,\n config.transformResponse,\n reason.response\n );\n reason.response.headers = AxiosHeaders.from(reason.response.headers);\n }\n }\n\n return Promise.reject(reason);\n });\n}\n","export const VERSION = \"1.7.9\";","'use strict';\n\nimport {VERSION} from '../env/data.js';\nimport AxiosError from '../core/AxiosError.js';\n\nconst validators = {};\n\n// eslint-disable-next-line func-names\n['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach((type, i) => {\n validators[type] = function validator(thing) {\n return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\n };\n});\n\nconst deprecatedWarnings = {};\n\n/**\n * Transitional option validator\n *\n * @param {function|boolean?} validator - set to false if the transitional option has been removed\n * @param {string?} version - deprecated version / removed since version\n * @param {string?} message - some message with additional info\n *\n * @returns {function}\n */\nvalidators.transitional = function transitional(validator, version, message) {\n function formatMessage(opt, desc) {\n return '[Axios v' + VERSION + '] Transitional option \\'' + opt + '\\'' + desc + (message ? '. ' + message : '');\n }\n\n // eslint-disable-next-line func-names\n return (value, opt, opts) => {\n if (validator === false) {\n throw new AxiosError(\n formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')),\n AxiosError.ERR_DEPRECATED\n );\n }\n\n if (version && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n // eslint-disable-next-line no-console\n console.warn(\n formatMessage(\n opt,\n ' has been deprecated since v' + version + ' and will be removed in the near future'\n )\n );\n }\n\n return validator ? validator(value, opt, opts) : true;\n };\n};\n\nvalidators.spelling = function spelling(correctSpelling) {\n return (value, opt) => {\n // eslint-disable-next-line no-console\n console.warn(`${opt} is likely a misspelling of ${correctSpelling}`);\n return true;\n }\n};\n\n/**\n * Assert object's properties type\n *\n * @param {object} options\n * @param {object} schema\n * @param {boolean?} allowUnknown\n *\n * @returns {object}\n */\n\nfunction assertOptions(options, schema, allowUnknown) {\n if (typeof options !== 'object') {\n throw new AxiosError('options must be an object', AxiosError.ERR_BAD_OPTION_VALUE);\n }\n const keys = Object.keys(options);\n let i = keys.length;\n while (i-- > 0) {\n const opt = keys[i];\n const validator = schema[opt];\n if (validator) {\n const value = options[opt];\n const result = value === undefined || validator(value, opt, options);\n if (result !== true) {\n throw new AxiosError('option ' + opt + ' must be ' + result, AxiosError.ERR_BAD_OPTION_VALUE);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw new AxiosError('Unknown option ' + opt, AxiosError.ERR_BAD_OPTION);\n }\n }\n}\n\nexport default {\n assertOptions,\n validators\n};\n","'use strict';\n\nimport utils from './../utils.js';\nimport buildURL from '../helpers/buildURL.js';\nimport InterceptorManager from './InterceptorManager.js';\nimport dispatchRequest from './dispatchRequest.js';\nimport mergeConfig from './mergeConfig.js';\nimport buildFullPath from './buildFullPath.js';\nimport validator from '../helpers/validator.js';\nimport AxiosHeaders from './AxiosHeaders.js';\n\nconst validators = validator.validators;\n\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n *\n * @return {Axios} A new instance of Axios\n */\nclass Axios {\n constructor(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n }\n\n /**\n * Dispatch a request\n *\n * @param {String|Object} configOrUrl The config specific for this request (merged with this.defaults)\n * @param {?Object} config\n *\n * @returns {Promise} The Promise to be fulfilled\n */\n async request(configOrUrl, config) {\n try {\n return await this._request(configOrUrl, config);\n } catch (err) {\n if (err instanceof Error) {\n let dummy = {};\n\n Error.captureStackTrace ? Error.captureStackTrace(dummy) : (dummy = new Error());\n\n // slice off the Error: ... line\n const stack = dummy.stack ? dummy.stack.replace(/^.+\\n/, '') : '';\n try {\n if (!err.stack) {\n err.stack = stack;\n // match without the 2 top stack lines\n } else if (stack && !String(err.stack).endsWith(stack.replace(/^.+\\n.+\\n/, ''))) {\n err.stack += '\\n' + stack\n }\n } catch (e) {\n // ignore the case where \"stack\" is an un-writable property\n }\n }\n\n throw err;\n }\n }\n\n _request(configOrUrl, config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof configOrUrl === 'string') {\n config = config || {};\n config.url = configOrUrl;\n } else {\n config = configOrUrl || {};\n }\n\n config = mergeConfig(this.defaults, config);\n\n const {transitional, paramsSerializer, headers} = config;\n\n if (transitional !== undefined) {\n validator.assertOptions(transitional, {\n silentJSONParsing: validators.transitional(validators.boolean),\n forcedJSONParsing: validators.transitional(validators.boolean),\n clarifyTimeoutError: validators.transitional(validators.boolean)\n }, false);\n }\n\n if (paramsSerializer != null) {\n if (utils.isFunction(paramsSerializer)) {\n config.paramsSerializer = {\n serialize: paramsSerializer\n }\n } else {\n validator.assertOptions(paramsSerializer, {\n encode: validators.function,\n serialize: validators.function\n }, true);\n }\n }\n\n validator.assertOptions(config, {\n baseUrl: validators.spelling('baseURL'),\n withXsrfToken: validators.spelling('withXSRFToken')\n }, true);\n\n // Set config.method\n config.method = (config.method || this.defaults.method || 'get').toLowerCase();\n\n // Flatten headers\n let contextHeaders = headers && utils.merge(\n headers.common,\n headers[config.method]\n );\n\n headers && utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n (method) => {\n delete headers[method];\n }\n );\n\n config.headers = AxiosHeaders.concat(contextHeaders, headers);\n\n // filter out skipped interceptors\n const requestInterceptorChain = [];\n let synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n const responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n let promise;\n let i = 0;\n let len;\n\n if (!synchronousRequestInterceptors) {\n const chain = [dispatchRequest.bind(this), undefined];\n chain.unshift.apply(chain, requestInterceptorChain);\n chain.push.apply(chain, responseInterceptorChain);\n len = chain.length;\n\n promise = Promise.resolve(config);\n\n while (i < len) {\n promise = promise.then(chain[i++], chain[i++]);\n }\n\n return promise;\n }\n\n len = requestInterceptorChain.length;\n\n let newConfig = config;\n\n i = 0;\n\n while (i < len) {\n const onFulfilled = requestInterceptorChain[i++];\n const onRejected = requestInterceptorChain[i++];\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected.call(this, error);\n break;\n }\n }\n\n try {\n promise = dispatchRequest.call(this, newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n\n i = 0;\n len = responseInterceptorChain.length;\n\n while (i < len) {\n promise = promise.then(responseInterceptorChain[i++], responseInterceptorChain[i++]);\n }\n\n return promise;\n }\n\n getUri(config) {\n config = mergeConfig(this.defaults, config);\n const fullPath = buildFullPath(config.baseURL, config.url);\n return buildURL(fullPath, config.params, config.paramsSerializer);\n }\n}\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n url,\n data: (config || {}).data\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n\n function generateHTTPMethod(isForm) {\n return function httpMethod(url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method,\n headers: isForm ? {\n 'Content-Type': 'multipart/form-data'\n } : {},\n url,\n data\n }));\n };\n }\n\n Axios.prototype[method] = generateHTTPMethod();\n\n Axios.prototype[method + 'Form'] = generateHTTPMethod(true);\n});\n\nexport default Axios;\n","'use strict';\n\nimport CanceledError from './CanceledError.js';\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @param {Function} executor The executor function.\n *\n * @returns {CancelToken}\n */\nclass CancelToken {\n constructor(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n let resolvePromise;\n\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n const token = this;\n\n // eslint-disable-next-line func-names\n this.promise.then(cancel => {\n if (!token._listeners) return;\n\n let i = token._listeners.length;\n\n while (i-- > 0) {\n token._listeners[i](cancel);\n }\n token._listeners = null;\n });\n\n // eslint-disable-next-line func-names\n this.promise.then = onfulfilled => {\n let _resolve;\n // eslint-disable-next-line func-names\n const promise = new Promise(resolve => {\n token.subscribe(resolve);\n _resolve = resolve;\n }).then(onfulfilled);\n\n promise.cancel = function reject() {\n token.unsubscribe(_resolve);\n };\n\n return promise;\n };\n\n executor(function cancel(message, config, request) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new CanceledError(message, config, request);\n resolvePromise(token.reason);\n });\n }\n\n /**\n * Throws a `CanceledError` if cancellation has been requested.\n */\n throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n }\n\n /**\n * Subscribe to the cancel signal\n */\n\n subscribe(listener) {\n if (this.reason) {\n listener(this.reason);\n return;\n }\n\n if (this._listeners) {\n this._listeners.push(listener);\n } else {\n this._listeners = [listener];\n }\n }\n\n /**\n * Unsubscribe from the cancel signal\n */\n\n unsubscribe(listener) {\n if (!this._listeners) {\n return;\n }\n const index = this._listeners.indexOf(listener);\n if (index !== -1) {\n this._listeners.splice(index, 1);\n }\n }\n\n toAbortSignal() {\n const controller = new AbortController();\n\n const abort = (err) => {\n controller.abort(err);\n };\n\n this.subscribe(abort);\n\n controller.signal.unsubscribe = () => this.unsubscribe(abort);\n\n return controller.signal;\n }\n\n /**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\n static source() {\n let cancel;\n const token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token,\n cancel\n };\n }\n}\n\nexport default CancelToken;\n","'use strict';\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n *\n * @returns {Function}\n */\nexport default function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n}\n","'use strict';\n\nimport utils from './../utils.js';\n\n/**\n * Determines whether the payload is an error thrown by Axios\n *\n * @param {*} payload The value to test\n *\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\n */\nexport default function isAxiosError(payload) {\n return utils.isObject(payload) && (payload.isAxiosError === true);\n}\n","const HttpStatusCode = {\n Continue: 100,\n SwitchingProtocols: 101,\n Processing: 102,\n EarlyHints: 103,\n Ok: 200,\n Created: 201,\n Accepted: 202,\n NonAuthoritativeInformation: 203,\n NoContent: 204,\n ResetContent: 205,\n PartialContent: 206,\n MultiStatus: 207,\n AlreadyReported: 208,\n ImUsed: 226,\n MultipleChoices: 300,\n MovedPermanently: 301,\n Found: 302,\n SeeOther: 303,\n NotModified: 304,\n UseProxy: 305,\n Unused: 306,\n TemporaryRedirect: 307,\n PermanentRedirect: 308,\n BadRequest: 400,\n Unauthorized: 401,\n PaymentRequired: 402,\n Forbidden: 403,\n NotFound: 404,\n MethodNotAllowed: 405,\n NotAcceptable: 406,\n ProxyAuthenticationRequired: 407,\n RequestTimeout: 408,\n Conflict: 409,\n Gone: 410,\n LengthRequired: 411,\n PreconditionFailed: 412,\n PayloadTooLarge: 413,\n UriTooLong: 414,\n UnsupportedMediaType: 415,\n RangeNotSatisfiable: 416,\n ExpectationFailed: 417,\n ImATeapot: 418,\n MisdirectedRequest: 421,\n UnprocessableEntity: 422,\n Locked: 423,\n FailedDependency: 424,\n TooEarly: 425,\n UpgradeRequired: 426,\n PreconditionRequired: 428,\n TooManyRequests: 429,\n RequestHeaderFieldsTooLarge: 431,\n UnavailableForLegalReasons: 451,\n InternalServerError: 500,\n NotImplemented: 501,\n BadGateway: 502,\n ServiceUnavailable: 503,\n GatewayTimeout: 504,\n HttpVersionNotSupported: 505,\n VariantAlsoNegotiates: 506,\n InsufficientStorage: 507,\n LoopDetected: 508,\n NotExtended: 510,\n NetworkAuthenticationRequired: 511,\n};\n\nObject.entries(HttpStatusCode).forEach(([key, value]) => {\n HttpStatusCode[value] = key;\n});\n\nexport default HttpStatusCode;\n","'use strict';\n\nimport utils from './utils.js';\nimport bind from './helpers/bind.js';\nimport Axios from './core/Axios.js';\nimport mergeConfig from './core/mergeConfig.js';\nimport defaults from './defaults/index.js';\nimport formDataToJSON from './helpers/formDataToJSON.js';\nimport CanceledError from './cancel/CanceledError.js';\nimport CancelToken from './cancel/CancelToken.js';\nimport isCancel from './cancel/isCancel.js';\nimport {VERSION} from './env/data.js';\nimport toFormData from './helpers/toFormData.js';\nimport AxiosError from './core/AxiosError.js';\nimport spread from './helpers/spread.js';\nimport isAxiosError from './helpers/isAxiosError.js';\nimport AxiosHeaders from \"./core/AxiosHeaders.js\";\nimport adapters from './adapters/adapters.js';\nimport HttpStatusCode from './helpers/HttpStatusCode.js';\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n *\n * @returns {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n const context = new Axios(defaultConfig);\n const instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context, {allOwnKeys: true});\n\n // Copy context to instance\n utils.extend(instance, context, null, {allOwnKeys: true});\n\n // Factory for creating new instances\n instance.create = function create(instanceConfig) {\n return createInstance(mergeConfig(defaultConfig, instanceConfig));\n };\n\n return instance;\n}\n\n// Create the default instance to be exported\nconst axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Expose Cancel & CancelToken\naxios.CanceledError = CanceledError;\naxios.CancelToken = CancelToken;\naxios.isCancel = isCancel;\naxios.VERSION = VERSION;\naxios.toFormData = toFormData;\n\n// Expose AxiosError class\naxios.AxiosError = AxiosError;\n\n// alias for CanceledError for backward compatibility\naxios.Cancel = axios.CanceledError;\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\n\naxios.spread = spread;\n\n// Expose isAxiosError\naxios.isAxiosError = isAxiosError;\n\n// Expose mergeConfig\naxios.mergeConfig = mergeConfig;\n\naxios.AxiosHeaders = AxiosHeaders;\n\naxios.formToJSON = thing => formDataToJSON(utils.isHTMLForm(thing) ? new FormData(thing) : thing);\n\naxios.getAdapter = adapters.getAdapter;\n\naxios.HttpStatusCode = HttpStatusCode;\n\naxios.default = axios;\n\n// this module should only have a default export\nexport default axios\n","import axios from 'axios'\n\nexport const isDevelopment = process.env.NODE_ENV === 'development'\n\nexport const client = axios.create({\n\tbaseURL: window.__VAP_GLOBALS__.config.rootUrl\n})\n\nexport const clientMock = axios.create({\n\t//baseURL: 'https://1855b68a-0eb3-433b-bbeb-b2719f5122e8.mock.pstmn.io'\n\tbaseURL: 'https://f1b6892a-803c-4f6b-8f4d-5ab8f0f60085.mock.pstmn.io'\n})\n\nexport default client\n","import { client, clientMock } from '../client'\n\nexport const getReports = (tenantDomain: string) => {\n return client.get(`/webapi/report/tenant/${tenantDomain}`).then(response => response.data)\n}\n\nexport const getEmbeddedConfig = (entityId: number, reportId: number) => {\n return client\n .get(`/webapi/report/config/entity/${entityId}/report/${reportId}`)\n .then(response => response.data)\n .catch(res => Promise.reject(res))\n}\n\nexport const logUsage = (entityTreeId: number, reportId: number) => {\n return client\n .get(`/webapi/report/usage/entity/${entityTreeId}/report/${reportId}`)\n .then(response => response.data)\n .catch(res => Promise.reject(res))\n}\n\nexport const logPageView = (entityTreeId: number, reportId: number, usageId: number, pageName: string) => {\n return client\n .get(`/webapi/report/pageview?entityTreeId=${entityTreeId}&reportId=${reportId}&usageId=${usageId}&pageName=${pageName}`)\n .then(response => response.data)\n .catch(res => Promise.reject(res))\n}\n\nexport const getExportFile = (entityId: Number, reportId: Number, format: string, bookmark: any, callback: (err) => any) => {\n const formData = {\n EntityId: entityId,\n ReportId: reportId,\n Format: format,\n Bookmark: bookmark\n }\n\n return client\n .post('/webapi/report/exportToFile', formData, {\n headers: {\n 'content-type': 'application/json'\n }\n })\n .then(response => response.data)\n .catch(err => Promise.reject(err.response?.data))\n}\n","export const time1Day = 86400000\nexport const time1Hour = 3600000\nexport const time1Minute = 60000\nexport const time30Minutes = 1800000\nexport const time30Seconds = 30000\nexport const time5Minutes = 300000\n\nexport const queries = {\n\tglobal: {\n\t\tauth: 'auth',\n\t\tme: 'me',\n\t\treports: 'reports',\n\t\tembeddedConfig: 'embeddedConfig'\n\t}\n}\n","import type { EmbeddedConfig, TenantReport } from 'libs/global'\nimport { useMutation, useQuery } from 'react-query'\n\nimport { getEmbeddedConfig, getReports, logPageView, logUsage } from 'apis/global'\nimport { queries, time30Minutes } from 'queries/consts'\n\nexport const useReports = (tenantDomain: string) => {\n return useQuery<TenantReport, any>([queries.global.reports], () => getReports(tenantDomain), {\n cacheTime: time30Minutes,\n staleTime: time30Minutes,\n retry: 1,\n refetchOnWindowFocus: false\n })\n}\n\nexport const useEmbeddedConfig = (entityId: number, reportId: number) => {\n return useQuery<any, any>([queries.global.embeddedConfig, entityId, reportId], () => getEmbeddedConfig(entityId, reportId), {\n cacheTime: time30Minutes,\n staleTime: time30Minutes,\n retry: 1,\n refetchOnWindowFocus: false\n })\n}\n\nexport const useLogUsage = (entityTreeId: number, reportId: number, callback?: Function) => {\n const mutation = useMutation(() => logUsage(entityTreeId, reportId), {\n onSuccess: data => callback && callback(data),\n onError: err => {\n //todo: show error\n }\n })\n return mutation\n}\n","import { useReducer, useRef, useDebugValue, useEffect, useLayoutEffect } from 'react';\n\nfunction createStore(createState) {\n let state;\n const listeners = /* @__PURE__ */ new Set();\n const setState = (partial, replace) => {\n const nextState = typeof partial === \"function\" ? partial(state) : partial;\n if (nextState !== state) {\n const previousState = state;\n state = replace ? nextState : Object.assign({}, state, nextState);\n listeners.forEach((listener) => listener(state, previousState));\n }\n };\n const getState = () => state;\n const subscribeWithSelector = (listener, selector = getState, equalityFn = Object.is) => {\n console.warn(\"[DEPRECATED] Please use `subscribeWithSelector` middleware\");\n let currentSlice = selector(state);\n function listenerToAdd() {\n const nextSlice = selector(state);\n if (!equalityFn(currentSlice, nextSlice)) {\n const previousSlice = currentSlice;\n listener(currentSlice = nextSlice, previousSlice);\n }\n }\n listeners.add(listenerToAdd);\n return () => listeners.delete(listenerToAdd);\n };\n const subscribe = (listener, selector, equalityFn) => {\n if (selector || equalityFn) {\n return subscribeWithSelector(listener, selector, equalityFn);\n }\n listeners.add(listener);\n return () => listeners.delete(listener);\n };\n const destroy = () => listeners.clear();\n const api = { setState, getState, subscribe, destroy };\n state = createState(setState, getState, api);\n return api;\n}\n\nconst isSSR = typeof window === \"undefined\" || !window.navigator || /ServerSideRendering|^Deno\\//.test(window.navigator.userAgent);\nconst useIsomorphicLayoutEffect = isSSR ? useEffect : useLayoutEffect;\nfunction create(createState) {\n const api = typeof createState === \"function\" ? createStore(createState) : createState;\n const useStore = (selector = api.getState, equalityFn = Object.is) => {\n const [, forceUpdate] = useReducer((c) => c + 1, 0);\n const state = api.getState();\n const stateRef = useRef(state);\n const selectorRef = useRef(selector);\n const equalityFnRef = useRef(equalityFn);\n const erroredRef = useRef(false);\n const currentSliceRef = useRef();\n if (currentSliceRef.current === void 0) {\n currentSliceRef.current = selector(state);\n }\n let newStateSlice;\n let hasNewStateSlice = false;\n if (stateRef.current !== state || selectorRef.current !== selector || equalityFnRef.current !== equalityFn || erroredRef.current) {\n newStateSlice = selector(state);\n hasNewStateSlice = !equalityFn(currentSliceRef.current, newStateSlice);\n }\n useIsomorphicLayoutEffect(() => {\n if (hasNewStateSlice) {\n currentSliceRef.current = newStateSlice;\n }\n stateRef.current = state;\n selectorRef.current = selector;\n equalityFnRef.current = equalityFn;\n erroredRef.current = false;\n });\n const stateBeforeSubscriptionRef = useRef(state);\n useIsomorphicLayoutEffect(() => {\n const listener = () => {\n try {\n const nextState = api.getState();\n const nextStateSlice = selectorRef.current(nextState);\n if (!equalityFnRef.current(currentSliceRef.current, nextStateSlice)) {\n stateRef.current = nextState;\n currentSliceRef.current = nextStateSlice;\n forceUpdate();\n }\n } catch (error) {\n erroredRef.current = true;\n forceUpdate();\n }\n };\n const unsubscribe = api.subscribe(listener);\n if (api.getState() !== stateBeforeSubscriptionRef.current) {\n listener();\n }\n return unsubscribe;\n }, []);\n const sliceToReturn = hasNewStateSlice ? newStateSlice : currentSliceRef.current;\n useDebugValue(sliceToReturn);\n return sliceToReturn;\n };\n Object.assign(useStore, api);\n useStore[Symbol.iterator] = function() {\n console.warn(\"[useStore, api] = create() is deprecated and will be removed in v4\");\n const items = [useStore, api];\n return {\n next() {\n const done = items.length <= 0;\n return { value: items.shift(), done };\n }\n };\n };\n return useStore;\n}\n\nexport { create as default };\n","import type { Entity, Report } from 'libs/global'\nimport create from 'zustand'\n\ntype GlobalState = {\n\tclearSelectedReport: () => void\n\tisSignIn: boolean\n\tselectedEntity: Entity\n\tselectedReport: Report\n\tsetIsSignIn: (isLogin: boolean) => void\n\tsetSelectedEntity: (entity: Entity) => void\n\tsetSelectedReport: (report: Report) => void\n\tsetTenantName: (tenantName: string) => void\n\ttenantName: string\n}\n\nexport const useGlobalStore = create<GlobalState>(set => ({\n\tisSignIn: false,\n\tsetIsSignIn: (isSignIn: boolean) => set({ isSignIn }),\n\ttenantName: null,\n\tsetTenantName: (tenantName: string) => set({ tenantName }),\n\tselectedEntity: null,\n\tsetSelectedEntity: (selectedEntity: Entity) => set({ selectedEntity }),\n\tselectedReport: null,\n\tsetSelectedReport: (selectedReport: Report) => set({ selectedReport }),\n\tclearSelectedReport: () => set({ selectedReport: null })\n}))\n","/* eslint-disable no-bitwise, no-cond-assign */\n\n/**\n * Checks if an element contains another given element.\n * \n * @param context the context element\n * @param node the element to check\n */\nexport default function contains(context, node) {\n // HTML DOM and SVG DOM may have different support levels,\n // so we need to check on context instead of a document root element.\n if (context.contains) return context.contains(node);\n if (context.compareDocumentPosition) return context === node || !!(context.compareDocumentPosition(node) & 16);\n}","import { useRef, useEffect } from 'react';\n\n/**\n * Track whether a component is current mounted. Generally less preferable than\n * properlly canceling effects so they don't run after a component is unmounted,\n * but helpful in cases where that isn't feasible, such as a `Promise` resolution.\n *\n * @returns a function that returns the current isMounted state of the component\n *\n * ```ts\n * const [data, setData] = useState(null)\n * const isMounted = useMounted()\n *\n * useEffect(() => {\n * fetchdata().then((newData) => {\n * if (isMounted()) {\n * setData(newData);\n * }\n * })\n * })\n * ```\n */\nexport default function useMounted() {\n const mounted = useRef(true);\n const isMounted = useRef(() => mounted.current);\n useEffect(() => {\n mounted.current = true;\n return () => {\n mounted.current = false;\n };\n }, []);\n return isMounted.current;\n}","import { useRef } from 'react';\n\n/**\n * Returns a ref that is immediately updated with the new value\n *\n * @param value The Ref value\n * @category refs\n */\nexport default function useUpdatedRef(value) {\n const valueRef = useRef(value);\n valueRef.current = value;\n return valueRef;\n}","import useUpdatedRef from './useUpdatedRef';\nimport { useEffect } from 'react';\n\n/**\n * Attach a callback that fires when a component unmounts\n *\n * @param fn Handler to run when the component unmounts\n * @category effects\n */\nexport default function useWillUnmount(fn) {\n const onUnmount = useUpdatedRef(fn);\n useEffect(() => () => onUnmount.current(), []);\n}","import { useMemo, useRef } from 'react';\nimport useMounted from './useMounted';\nimport useWillUnmount from './useWillUnmount';\n\n/*\n * Browsers including Internet Explorer, Chrome, Safari, and Firefox store the\n * delay as a 32-bit signed integer internally. This causes an integer overflow\n * when using delays larger than 2,147,483,647 ms (about 24.8 days),\n * resulting in the timeout being executed immediately.\n *\n * via: https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/setTimeout\n */\nconst MAX_DELAY_MS = 2 ** 31 - 1;\nfunction setChainedTimeout(handleRef, fn, timeoutAtMs) {\n const delayMs = timeoutAtMs - Date.now();\n handleRef.current = delayMs <= MAX_DELAY_MS ? setTimeout(fn, delayMs) : setTimeout(() => setChainedTimeout(handleRef, fn, timeoutAtMs), MAX_DELAY_MS);\n}\n\n/**\n * Returns a controller object for setting a timeout that is properly cleaned up\n * once the component unmounts. New timeouts cancel and replace existing ones.\n *\n *\n *\n * ```tsx\n * const { set, clear } = useTimeout();\n * const [hello, showHello] = useState(false);\n * //Display hello after 5 seconds\n * set(() => showHello(true), 5000);\n * return (\n * <div className=\"App\">\n * {hello ? <h3>Hello</h3> : null}\n * </div>\n * );\n * ```\n */\nexport default function useTimeout() {\n const isMounted = useMounted();\n\n // types are confused between node and web here IDK\n const handleRef = useRef();\n useWillUnmount(() => clearTimeout(handleRef.current));\n return useMemo(() => {\n const clear = () => clearTimeout(handleRef.current);\n function set(fn, delayMs = 0) {\n if (!isMounted()) return;\n clear();\n if (delayMs <= MAX_DELAY_MS) {\n // For simplicity, if the timeout is short, just set a normal timeout.\n handleRef.current = setTimeout(fn, delayMs);\n } else {\n setChainedTimeout(handleRef, fn, Date.now() + delayMs);\n }\n }\n return {\n set,\n clear\n };\n }, []);\n}","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n/**\n * Similar to invariant but only logs a warning if the condition is not met.\n * This can be used to log issues in development environments in critical\n * paths. Removing the logging code for production environments will keep the\n * same logic and follow the same code paths.\n */\n\nvar __DEV__ = process.env.NODE_ENV !== 'production';\n\nvar warning = function() {};\n\nif (__DEV__) {\n var printWarning = function printWarning(format, args) {\n var len = arguments.length;\n args = new Array(len > 1 ? len - 1 : 0);\n for (var key = 1; key < len; key++) {\n args[key - 1] = arguments[key];\n }\n var argIndex = 0;\n var message = 'Warning: ' +\n format.replace(/%s/g, function() {\n return args[argIndex++];\n });\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n }\n\n warning = function(condition, format, args) {\n var len = arguments.length;\n args = new Array(len > 2 ? len - 2 : 0);\n for (var key = 2; key < len; key++) {\n args[key - 2] = arguments[key];\n }\n if (format === undefined) {\n throw new Error(\n '`warning(condition, format, ...args)` requires a warning ' +\n 'message argument'\n );\n }\n if (!condition) {\n printWarning.apply(null, [format].concat(args));\n }\n };\n}\n\nmodule.exports = warning;\n","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\n\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\n\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\n\nimport { useCallback, useRef, useState } from 'react';\nimport * as Utils from './utils';\n\nfunction useUncontrolledProp(propValue, defaultValue, handler) {\n var wasPropRef = useRef(propValue !== undefined);\n\n var _useState = useState(defaultValue),\n stateValue = _useState[0],\n setState = _useState[1];\n\n var isProp = propValue !== undefined;\n var wasProp = wasPropRef.current;\n wasPropRef.current = isProp;\n /**\n * If a prop switches from controlled to Uncontrolled\n * reset its value to the defaultValue\n */\n\n if (!isProp && wasProp && stateValue !== defaultValue) {\n setState(defaultValue);\n }\n\n return [isProp ? propValue : stateValue, useCallback(function (value) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n if (handler) handler.apply(void 0, [value].concat(args));\n setState(value);\n }, [handler])];\n}\n\nexport { useUncontrolledProp };\nexport default function useUncontrolled(props, config) {\n return Object.keys(config).reduce(function (result, fieldName) {\n var _extends2;\n\n var _ref = result,\n defaultValue = _ref[Utils.defaultKey(fieldName)],\n propsValue = _ref[fieldName],\n rest = _objectWithoutPropertiesLoose(_ref, [Utils.defaultKey(fieldName), fieldName].map(_toPropertyKey));\n\n var handlerName = config[fieldName];\n\n var _useUncontrolledProp = useUncontrolledProp(propsValue, defaultValue, props[handlerName]),\n value = _useUncontrolledProp[0],\n handler = _useUncontrolledProp[1];\n\n return _extends({}, rest, (_extends2 = {}, _extends2[fieldName] = value, _extends2[handlerName] = handler, _extends2));\n }, props);\n}","import { useMemo } from 'react';\nconst toFnRef = ref => !ref || typeof ref === 'function' ? ref : value => {\n ref.current = value;\n};\nexport function mergeRefs(refA, refB) {\n const a = toFnRef(refA);\n const b = toFnRef(refB);\n return value => {\n if (a) a(value);\n if (b) b(value);\n };\n}\n\n/**\n * Create and returns a single callback ref composed from two other Refs.\n *\n * ```tsx\n * const Button = React.forwardRef((props, ref) => {\n * const [element, attachRef] = useCallbackRef<HTMLButtonElement>();\n * const mergedRef = useMergedRefs(ref, attachRef);\n *\n * return <button ref={mergedRef} {...props}/>\n * })\n * ```\n *\n * @param refA A Callback or mutable Ref\n * @param refB A Callback or mutable Ref\n * @category refs\n */\nfunction useMergedRefs(refA, refB) {\n return useMemo(() => mergeRefs(refA, refB), [refA, refB]);\n}\nexport default useMergedRefs;","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\tvar nativeCodeString = '[native code]';\n\n\tfunction classNames() {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tif (arg.length) {\n\t\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\t\tif (inner) {\n\t\t\t\t\t\tclasses.push(inner);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\t\t\tclasses.push(arg.toString());\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import { useState } from 'react';\n\n/**\n * A convenience hook around `useState` designed to be paired with\n * the component [callback ref](https://reactjs.org/docs/refs-and-the-dom.html#callback-refs) api.\n * Callback refs are useful over `useRef()` when you need to respond to the ref being set\n * instead of lazily accessing it in an effect.\n *\n * ```ts\n * const [element, attachRef] = useCallbackRef<HTMLDivElement>()\n *\n * useEffect(() => {\n * if (!element) return\n *\n * const calendar = new FullCalendar.Calendar(element)\n *\n * return () => {\n * calendar.destroy()\n * }\n * }, [element])\n *\n * return <div ref={attachRef} />\n * ```\n *\n * @category refs\n */\nexport default function useCallbackRef() {\n return useState(null);\n}","var has = Object.prototype.hasOwnProperty;\n\nfunction find(iter, tar, key) {\n\tfor (key of iter.keys()) {\n\t\tif (dequal(key, tar)) return key;\n\t}\n}\n\nexport function dequal(foo, bar) {\n\tvar ctor, len, tmp;\n\tif (foo === bar) return true;\n\n\tif (foo && bar && (ctor=foo.constructor) === bar.constructor) {\n\t\tif (ctor === Date) return foo.getTime() === bar.getTime();\n\t\tif (ctor === RegExp) return foo.toString() === bar.toString();\n\n\t\tif (ctor === Array) {\n\t\t\tif ((len=foo.length) === bar.length) {\n\t\t\t\twhile (len-- && dequal(foo[len], bar[len]));\n\t\t\t}\n\t\t\treturn len === -1;\n\t\t}\n\n\t\tif (ctor === Set) {\n\t\t\tif (foo.size !== bar.size) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tfor (len of foo) {\n\t\t\t\ttmp = len;\n\t\t\t\tif (tmp && typeof tmp === 'object') {\n\t\t\t\t\ttmp = find(bar, tmp);\n\t\t\t\t\tif (!tmp) return false;\n\t\t\t\t}\n\t\t\t\tif (!bar.has(tmp)) return false;\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\n\t\tif (ctor === Map) {\n\t\t\tif (foo.size !== bar.size) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tfor (len of foo) {\n\t\t\t\ttmp = len[0];\n\t\t\t\tif (tmp && typeof tmp === 'object') {\n\t\t\t\t\ttmp = find(bar, tmp);\n\t\t\t\t\tif (!tmp) return false;\n\t\t\t\t}\n\t\t\t\tif (!dequal(len[1], bar.get(tmp))) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\n\t\tif (ctor === ArrayBuffer) {\n\t\t\tfoo = new Uint8Array(foo);\n\t\t\tbar = new Uint8Array(bar);\n\t\t} else if (ctor === DataView) {\n\t\t\tif ((len=foo.byteLength) === bar.byteLength) {\n\t\t\t\twhile (len-- && foo.getInt8(len) === bar.getInt8(len));\n\t\t\t}\n\t\t\treturn len === -1;\n\t\t}\n\n\t\tif (ArrayBuffer.isView(foo)) {\n\t\t\tif ((len=foo.byteLength) === bar.byteLength) {\n\t\t\t\twhile (len-- && foo[len] === bar[len]);\n\t\t\t}\n\t\t\treturn len === -1;\n\t\t}\n\n\t\tif (!ctor || typeof foo === 'object') {\n\t\t\tlen = 0;\n\t\t\tfor (ctor in foo) {\n\t\t\t\tif (has.call(foo, ctor) && ++len && !has.call(bar, ctor)) return false;\n\t\t\t\tif (!(ctor in bar) || !dequal(foo[ctor], bar[ctor])) return false;\n\t\t\t}\n\t\t\treturn Object.keys(bar).length === len;\n\t\t}\n\t}\n\n\treturn foo !== foo && bar !== bar;\n}\n","import { useCallback } from 'react';\nimport useMounted from './useMounted';\n\n/**\n * `useSafeState` takes the return value of a `useState` hook and wraps the\n * setter to prevent updates onces the component has unmounted. Can used\n * with `useMergeState` and `useStateAsync` as well\n *\n * @param state The return value of a useStateHook\n *\n * ```ts\n * const [show, setShow] = useSafeState(useState(true));\n * ```\n */\n\nfunction useSafeState(state) {\n const isMounted = useMounted();\n return [state[0], useCallback(nextState => {\n if (!isMounted()) return;\n return state[1](nextState);\n }, [isMounted, state[1]])];\n}\nexport default useSafeState;","import arrow from '@popperjs/core/lib/modifiers/arrow';\nimport computeStyles from '@popperjs/core/lib/modifiers/computeStyles';\nimport eventListeners from '@popperjs/core/lib/modifiers/eventListeners';\nimport flip from '@popperjs/core/lib/modifiers/flip';\nimport hide from '@popperjs/core/lib/modifiers/hide';\nimport offset from '@popperjs/core/lib/modifiers/offset';\nimport popperOffsets from '@popperjs/core/lib/modifiers/popperOffsets';\nimport preventOverflow from '@popperjs/core/lib/modifiers/preventOverflow';\nimport { placements } from '@popperjs/core/lib/enums';\nimport { popperGenerator } from '@popperjs/core/lib/popper-base';\n\n// For the common JS build we will turn this file into a bundle with no imports.\n// This is b/c the Popper lib is all esm files, and would break in a common js only environment\nexport const createPopper = popperGenerator({\n defaultModifiers: [hide, popperOffsets, computeStyles, eventListeners, offset, flip, preventOverflow, arrow]\n});\nexport { placements };","const _excluded = [\"enabled\", \"placement\", \"strategy\", \"modifiers\"];\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\nimport { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { dequal } from 'dequal';\nimport useSafeState from '@restart/hooks/useSafeState';\nimport { createPopper } from './popper';\nconst disabledApplyStylesModifier = {\n name: 'applyStyles',\n enabled: false,\n phase: 'afterWrite',\n fn: () => undefined\n};\n\n// until docjs supports type exports...\n\nconst ariaDescribedByModifier = {\n name: 'ariaDescribedBy',\n enabled: true,\n phase: 'afterWrite',\n effect: ({\n state\n }) => () => {\n const {\n reference,\n popper\n } = state.elements;\n if ('removeAttribute' in reference) {\n const ids = (reference.getAttribute('aria-describedby') || '').split(',').filter(id => id.trim() !== popper.id);\n if (!ids.length) reference.removeAttribute('aria-describedby');else reference.setAttribute('aria-describedby', ids.join(','));\n }\n },\n fn: ({\n state\n }) => {\n var _popper$getAttribute;\n const {\n popper,\n reference\n } = state.elements;\n const role = (_popper$getAttribute = popper.getAttribute('role')) == null ? void 0 : _popper$getAttribute.toLowerCase();\n if (popper.id && role === 'tooltip' && 'setAttribute' in reference) {\n const ids = reference.getAttribute('aria-describedby');\n if (ids && ids.split(',').indexOf(popper.id) !== -1) {\n return;\n }\n reference.setAttribute('aria-describedby', ids ? `${ids},${popper.id}` : popper.id);\n }\n }\n};\nconst EMPTY_MODIFIERS = [];\n/**\n * Position an element relative some reference element using Popper.js\n *\n * @param referenceElement\n * @param popperElement\n * @param {object} options\n * @param {object=} options.modifiers Popper.js modifiers\n * @param {boolean=} options.enabled toggle the popper functionality on/off\n * @param {string=} options.placement The popper element placement relative to the reference element\n * @param {string=} options.strategy the positioning strategy\n * @param {function=} options.onCreate called when the popper is created\n * @param {function=} options.onUpdate called when the popper is updated\n *\n * @returns {UsePopperState} The popper state\n */\nfunction usePopper(referenceElement, popperElement, _ref = {}) {\n let {\n enabled = true,\n placement = 'bottom',\n strategy = 'absolute',\n modifiers = EMPTY_MODIFIERS\n } = _ref,\n config = _objectWithoutPropertiesLoose(_ref, _excluded);\n const prevModifiers = useRef(modifiers);\n const popperInstanceRef = useRef();\n const update = useCallback(() => {\n var _popperInstanceRef$cu;\n (_popperInstanceRef$cu = popperInstanceRef.current) == null ? void 0 : _popperInstanceRef$cu.update();\n }, []);\n const forceUpdate = useCallback(() => {\n var _popperInstanceRef$cu2;\n (_popperInstanceRef$cu2 = popperInstanceRef.current) == null ? void 0 : _popperInstanceRef$cu2.forceUpdate();\n }, []);\n const [popperState, setState] = useSafeState(useState({\n placement,\n update,\n forceUpdate,\n attributes: {},\n styles: {\n popper: {},\n arrow: {}\n }\n }));\n const updateModifier = useMemo(() => ({\n name: 'updateStateModifier',\n enabled: true,\n phase: 'write',\n requires: ['computeStyles'],\n fn: ({\n state\n }) => {\n const styles = {};\n const attributes = {};\n Object.keys(state.elements).forEach(element => {\n styles[element] = state.styles[element];\n attributes[element] = state.attributes[element];\n });\n setState({\n state,\n styles,\n attributes,\n update,\n forceUpdate,\n placement: state.placement\n });\n }\n }), [update, forceUpdate, setState]);\n const nextModifiers = useMemo(() => {\n if (!dequal(prevModifiers.current, modifiers)) {\n prevModifiers.current = modifiers;\n }\n return prevModifiers.current;\n }, [modifiers]);\n useEffect(() => {\n if (!popperInstanceRef.current || !enabled) return;\n popperInstanceRef.current.setOptions({\n placement,\n strategy,\n modifiers: [...nextModifiers, updateModifier, disabledApplyStylesModifier]\n });\n }, [strategy, placement, updateModifier, enabled, nextModifiers]);\n useEffect(() => {\n if (!enabled || referenceElement == null || popperElement == null) {\n return undefined;\n }\n popperInstanceRef.current = createPopper(referenceElement, popperElement, Object.assign({}, config, {\n placement,\n strategy,\n modifiers: [...nextModifiers, ariaDescribedByModifier, updateModifier]\n }));\n return () => {\n if (popperInstanceRef.current != null) {\n popperInstanceRef.current.destroy();\n popperInstanceRef.current = undefined;\n setState(s => Object.assign({}, s, {\n attributes: {},\n styles: {\n popper: {}\n }\n }));\n }\n };\n // This is only run once to _create_ the popper\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [enabled, referenceElement, popperElement]);\n return popperState;\n}\nexport default usePopper;","export default !!(typeof window !== 'undefined' && window.document && window.document.createElement);","/* eslint-disable no-return-assign */\nimport canUseDOM from './canUseDOM';\nexport var optionsSupported = false;\nexport var onceSupported = false;\n\ntry {\n var options = {\n get passive() {\n return optionsSupported = true;\n },\n\n get once() {\n // eslint-disable-next-line no-multi-assign\n return onceSupported = optionsSupported = true;\n }\n\n };\n\n if (canUseDOM) {\n window.addEventListener('test', options, options);\n window.removeEventListener('test', options, true);\n }\n} catch (e) {\n /* */\n}\n\n/**\n * An `addEventListener` ponyfill, supports the `once` option\n * \n * @param node the element\n * @param eventName the event name\n * @param handle the handler\n * @param options event options\n */\nfunction addEventListener(node, eventName, handler, options) {\n if (options && typeof options !== 'boolean' && !onceSupported) {\n var once = options.once,\n capture = options.capture;\n var wrappedHandler = handler;\n\n if (!onceSupported && once) {\n wrappedHandler = handler.__once || function onceHandler(event) {\n this.removeEventListener(eventName, onceHandler, capture);\n handler.call(this, event);\n };\n\n handler.__once = wrappedHandler;\n }\n\n node.addEventListener(eventName, wrappedHandler, optionsSupported ? options : capture);\n }\n\n node.addEventListener(eventName, handler, options);\n}\n\nexport default addEventListener;","/**\n * A `removeEventListener` ponyfill\n * \n * @param node the element\n * @param eventName the event name\n * @param handle the handler\n * @param options event options\n */\nfunction removeEventListener(node, eventName, handler, options) {\n var capture = options && typeof options !== 'boolean' ? options.capture : options;\n node.removeEventListener(eventName, handler, capture);\n\n if (handler.__once) {\n node.removeEventListener(eventName, handler.__once, capture);\n }\n}\n\nexport default removeEventListener;","import addEventListener from './addEventListener';\nimport removeEventListener from './removeEventListener';\n\nfunction listen(node, eventName, handler, options) {\n addEventListener(node, eventName, handler, options);\n return function () {\n removeEventListener(node, eventName, handler, options);\n };\n}\n\nexport default listen;","/**\n * Returns the owner document of a given element.\n * \n * @param node the element\n */\nexport default function ownerDocument(node) {\n return node && node.ownerDocument || document;\n}","import { useEffect, useRef } from 'react';\n\n/**\n * Creates a `Ref` whose value is updated in an effect, ensuring the most recent\n * value is the one rendered with. Generally only required for Concurrent mode usage\n * where previous work in `render()` may be discarded before being used.\n *\n * This is safe to access in an event handler.\n *\n * @param value The `Ref` value\n */\nfunction useCommittedRef(value) {\n const ref = useRef(value);\n useEffect(() => {\n ref.current = value;\n }, [value]);\n return ref;\n}\nexport default useCommittedRef;","import { useCallback } from 'react';\nimport useCommittedRef from './useCommittedRef';\nexport default function useEventCallback(fn) {\n const ref = useCommittedRef(fn);\n return useCallback(function (...args) {\n return ref.current && ref.current(...args);\n }, [ref]);\n}","import contains from 'dom-helpers/contains';\nimport listen from 'dom-helpers/listen';\nimport ownerDocument from 'dom-helpers/ownerDocument';\nimport { useCallback, useEffect, useRef } from 'react';\nimport useEventCallback from '@restart/hooks/useEventCallback';\nimport warning from 'warning';\nconst noop = () => {};\nfunction isLeftClickEvent(event) {\n return event.button === 0;\n}\nfunction isModifiedEvent(event) {\n return !!(event.metaKey || event.altKey || event.ctrlKey || event.shiftKey);\n}\nexport const getRefTarget = ref => ref && ('current' in ref ? ref.current : ref);\nconst InitialTriggerEvents = {\n click: 'mousedown',\n mouseup: 'mousedown',\n pointerup: 'pointerdown'\n};\n\n/**\n * The `useClickOutside` hook registers your callback on the document that fires\n * when a pointer event is registered outside of the provided ref or element.\n *\n * @param {Ref<HTMLElement>| HTMLElement} ref The element boundary\n * @param {function} onClickOutside\n * @param {object=} options\n * @param {boolean=} options.disabled\n * @param {string=} options.clickTrigger The DOM event name (click, mousedown, etc) to attach listeners on\n */\nfunction useClickOutside(ref, onClickOutside = noop, {\n disabled,\n clickTrigger = 'click'\n} = {}) {\n const preventMouseClickOutsideRef = useRef(false);\n const waitingForTrigger = useRef(false);\n const handleMouseCapture = useCallback(e => {\n const currentTarget = getRefTarget(ref);\n warning(!!currentTarget, 'ClickOutside captured a close event but does not have a ref to compare it to. ' + 'useClickOutside(), should be passed a ref that resolves to a DOM node');\n preventMouseClickOutsideRef.current = !currentTarget || isModifiedEvent(e) || !isLeftClickEvent(e) || !!contains(currentTarget, e.target) || waitingForTrigger.current;\n waitingForTrigger.current = false;\n }, [ref]);\n const handleInitialMouse = useEventCallback(e => {\n const currentTarget = getRefTarget(ref);\n if (currentTarget && contains(currentTarget, e.target)) {\n waitingForTrigger.current = true;\n }\n });\n const handleMouse = useEventCallback(e => {\n if (!preventMouseClickOutsideRef.current) {\n onClickOutside(e);\n }\n });\n useEffect(() => {\n var _ownerWindow$event, _ownerWindow$parent;\n if (disabled || ref == null) return undefined;\n const doc = ownerDocument(getRefTarget(ref));\n const ownerWindow = doc.defaultView || window;\n\n // Store the current event to avoid triggering handlers immediately\n // For things rendered in an iframe, the event might originate on the parent window\n // so we should fall back to that global event if the local one doesn't exist\n // https://github.com/facebook/react/issues/20074\n let currentEvent = (_ownerWindow$event = ownerWindow.event) != null ? _ownerWindow$event : (_ownerWindow$parent = ownerWindow.parent) == null ? void 0 : _ownerWindow$parent.event;\n let removeInitialTriggerListener = null;\n if (InitialTriggerEvents[clickTrigger]) {\n removeInitialTriggerListener = listen(doc, InitialTriggerEvents[clickTrigger], handleInitialMouse, true);\n }\n\n // Use capture for this listener so it fires before React's listener, to\n // avoid false positives in the contains() check below if the target DOM\n // element is removed in the React mouse callback.\n const removeMouseCaptureListener = listen(doc, clickTrigger, handleMouseCapture, true);\n const removeMouseListener = listen(doc, clickTrigger, e => {\n // skip if this event is the same as the one running when we added the handlers\n if (e === currentEvent) {\n currentEvent = undefined;\n return;\n }\n handleMouse(e);\n });\n let mobileSafariHackListeners = [];\n if ('ontouchstart' in doc.documentElement) {\n mobileSafariHackListeners = [].slice.call(doc.body.children).map(el => listen(el, 'mousemove', noop));\n }\n return () => {\n removeInitialTriggerListener == null ? void 0 : removeInitialTriggerListener();\n removeMouseCaptureListener();\n removeMouseListener();\n mobileSafariHackListeners.forEach(remove => remove());\n };\n }, [ref, disabled, clickTrigger, handleMouseCapture, handleInitialMouse, handleMouse]);\n}\nexport default useClickOutside;","/* eslint-disable import/prefer-default-export */\nexport function isEscKey(e) {\n return e.code === 'Escape' || e.keyCode === 27;\n}","import listen from 'dom-helpers/listen';\nimport ownerDocument from 'dom-helpers/ownerDocument';\nimport { useEffect } from 'react';\nimport useEventCallback from '@restart/hooks/useEventCallback';\nimport useClickOutside, { getRefTarget } from './useClickOutside';\nimport { isEscKey } from './utils';\nconst noop = () => {};\n/**\n * The `useRootClose` hook registers your callback on the document\n * when rendered. Powers the `<Overlay/>` component. This is used achieve modal\n * style behavior where your callback is triggered when the user tries to\n * interact with the rest of the document or hits the `esc` key.\n *\n * @param {Ref<HTMLElement>| HTMLElement} ref The element boundary\n * @param {function} onRootClose\n * @param {object=} options\n * @param {boolean=} options.disabled\n * @param {string=} options.clickTrigger The DOM event name (click, mousedown, etc) to attach listeners on\n */\nfunction useRootClose(ref, onRootClose, {\n disabled,\n clickTrigger\n} = {}) {\n const onClose = onRootClose || noop;\n useClickOutside(ref, onClose, {\n disabled,\n clickTrigger\n });\n const handleKeyUp = useEventCallback(e => {\n if (isEscKey(e)) {\n onClose(e);\n }\n });\n useEffect(() => {\n if (disabled || ref == null) return undefined;\n const doc = ownerDocument(getRefTarget(ref));\n\n // Store the current event to avoid triggering handlers immediately\n // https://github.com/facebook/react/issues/20074\n let currentEvent = (doc.defaultView || window).event;\n const removeKeyupListener = listen(doc, 'keyup', e => {\n // skip if this event is the same as the one running when we added the handlers\n if (e === currentEvent) {\n currentEvent = undefined;\n return;\n }\n handleKeyUp(e);\n });\n return () => {\n removeKeyupListener();\n };\n }, [ref, disabled, handleKeyUp]);\n}\nexport default useRootClose;","import { createContext, useContext } from 'react';\nimport canUseDOM from 'dom-helpers/canUseDOM';\nconst Context = /*#__PURE__*/createContext(canUseDOM ? window : undefined);\nexport const WindowProvider = Context.Provider;\n\n/**\n * The document \"window\" placed in React context. Helpful for determining\n * SSR context, or when rendering into an iframe.\n *\n * @returns the current window\n */\nexport default function useWindow() {\n return useContext(Context);\n}","import ownerDocument from 'dom-helpers/ownerDocument';\nimport canUseDOM from 'dom-helpers/canUseDOM';\nimport { useState, useEffect } from 'react';\nimport useWindow from './useWindow';\nexport const resolveContainerRef = (ref, document) => {\n if (!canUseDOM) return null;\n if (ref == null) return (document || ownerDocument()).body;\n if (typeof ref === 'function') ref = ref();\n if (ref && 'current' in ref) ref = ref.current;\n if (ref && ('nodeType' in ref || ref.getBoundingClientRect)) return ref;\n return null;\n};\nexport default function useWaitForDOMRef(ref, onResolved) {\n const window = useWindow();\n const [resolvedRef, setRef] = useState(() => resolveContainerRef(ref, window == null ? void 0 : window.document));\n if (!resolvedRef) {\n const earlyRef = resolveContainerRef(ref);\n if (earlyRef) setRef(earlyRef);\n }\n useEffect(() => {\n if (onResolved && resolvedRef) {\n onResolved(resolvedRef);\n }\n }, [onResolved, resolvedRef]);\n useEffect(() => {\n const nextRef = resolveContainerRef(ref);\n if (nextRef !== resolvedRef) {\n setRef(nextRef);\n }\n }, [ref, resolvedRef]);\n return resolvedRef;\n}","export function toModifierMap(modifiers) {\n const result = {};\n if (!Array.isArray(modifiers)) {\n return modifiers || result;\n }\n\n // eslint-disable-next-line no-unused-expressions\n modifiers == null ? void 0 : modifiers.forEach(m => {\n result[m.name] = m;\n });\n return result;\n}\nexport function toModifierArray(map = {}) {\n if (Array.isArray(map)) return map;\n return Object.keys(map).map(k => {\n map[k].name = k;\n return map[k];\n });\n}\nexport default function mergeOptionsWithPopperConfig({\n enabled,\n enableEvents,\n placement,\n flip,\n offset,\n fixed,\n containerPadding,\n arrowElement,\n popperConfig = {}\n}) {\n var _modifiers$eventListe, _modifiers$preventOve, _modifiers$preventOve2, _modifiers$offset, _modifiers$arrow;\n const modifiers = toModifierMap(popperConfig.modifiers);\n return Object.assign({}, popperConfig, {\n placement,\n enabled,\n strategy: fixed ? 'fixed' : popperConfig.strategy,\n modifiers: toModifierArray(Object.assign({}, modifiers, {\n eventListeners: {\n enabled: enableEvents,\n options: (_modifiers$eventListe = modifiers.eventListeners) == null ? void 0 : _modifiers$eventListe.options\n },\n preventOverflow: Object.assign({}, modifiers.preventOverflow, {\n options: containerPadding ? Object.assign({\n padding: containerPadding\n }, (_modifiers$preventOve = modifiers.preventOverflow) == null ? void 0 : _modifiers$preventOve.options) : (_modifiers$preventOve2 = modifiers.preventOverflow) == null ? void 0 : _modifiers$preventOve2.options\n }),\n offset: {\n options: Object.assign({\n offset\n }, (_modifiers$offset = modifiers.offset) == null ? void 0 : _modifiers$offset.options)\n },\n arrow: Object.assign({}, modifiers.arrow, {\n enabled: !!arrowElement,\n options: Object.assign({}, (_modifiers$arrow = modifiers.arrow) == null ? void 0 : _modifiers$arrow.options, {\n element: arrowElement\n })\n }),\n flip: Object.assign({\n enabled: !!flip\n }, modifiers.flip)\n }))\n });\n}","import { useEffect, useLayoutEffect } from 'react';\nconst isReactNative = typeof global !== 'undefined' &&\n// @ts-ignore\nglobal.navigator &&\n// @ts-ignore\nglobal.navigator.product === 'ReactNative';\nconst isDOM = typeof document !== 'undefined';\n\n/**\n * Is `useLayoutEffect` in a DOM or React Native environment, otherwise resolves to useEffect\n * Only useful to avoid the console warning.\n *\n * PREFER `useEffect` UNLESS YOU KNOW WHAT YOU ARE DOING.\n *\n * @category effects\n */\nexport default isDOM || isReactNative ? useLayoutEffect : useEffect;","import useEventCallback from '@restart/hooks/useEventCallback';\nimport useMergedRefs from '@restart/hooks/useMergedRefs';\nimport { cloneElement, useEffect, useRef } from 'react';\nfunction NoopTransition({\n children,\n in: inProp,\n onExited,\n mountOnEnter,\n unmountOnExit\n}) {\n const ref = useRef(null);\n const hasEnteredRef = useRef(inProp);\n const handleExited = useEventCallback(onExited);\n useEffect(() => {\n if (inProp) hasEnteredRef.current = true;else {\n handleExited(ref.current);\n }\n }, [inProp, handleExited]);\n const combinedRef = useMergedRefs(ref, children.ref);\n const child = /*#__PURE__*/cloneElement(children, {\n ref: combinedRef\n });\n if (inProp) return child;\n if (unmountOnExit) {\n return null;\n }\n if (!hasEnteredRef.current && mountOnEnter) {\n return null;\n }\n return child;\n}\nexport default NoopTransition;","import useMergedRefs from '@restart/hooks/useMergedRefs';\nimport useEventCallback from '@restart/hooks/useEventCallback';\nimport useIsomorphicEffect from '@restart/hooks/useIsomorphicEffect';\nimport React, { useRef, cloneElement, useState } from 'react';\nimport NoopTransition from './NoopTransition';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport function useTransition({\n in: inProp,\n onTransition\n}) {\n const ref = useRef(null);\n const isInitialRef = useRef(true);\n const handleTransition = useEventCallback(onTransition);\n useIsomorphicEffect(() => {\n if (!ref.current) {\n return undefined;\n }\n let stale = false;\n handleTransition({\n in: inProp,\n element: ref.current,\n initial: isInitialRef.current,\n isStale: () => stale\n });\n return () => {\n stale = true;\n };\n }, [inProp, handleTransition]);\n useIsomorphicEffect(() => {\n isInitialRef.current = false;\n // this is for strict mode\n return () => {\n isInitialRef.current = true;\n };\n }, []);\n return ref;\n}\n/**\n * Adapts an imperative transition function to a subset of the RTG `<Transition>` component API.\n *\n * ImperativeTransition does not support mounting options or `appear` at the moment, meaning\n * that it always acts like: `mountOnEnter={true} unmountOnExit={true} appear={true}`\n */\nexport default function ImperativeTransition({\n children,\n in: inProp,\n onExited,\n onEntered,\n transition\n}) {\n const [exited, setExited] = useState(!inProp);\n\n // TODO: I think this needs to be in an effect\n if (inProp && exited) {\n setExited(false);\n }\n const ref = useTransition({\n in: !!inProp,\n onTransition: options => {\n const onFinish = () => {\n if (options.isStale()) return;\n if (options.in) {\n onEntered == null ? void 0 : onEntered(options.element, options.initial);\n } else {\n setExited(true);\n onExited == null ? void 0 : onExited(options.element);\n }\n };\n Promise.resolve(transition(options)).then(onFinish, error => {\n if (!options.in) setExited(true);\n throw error;\n });\n }\n });\n const combinedRef = useMergedRefs(ref, children.ref);\n return exited && !inProp ? null : /*#__PURE__*/cloneElement(children, {\n ref: combinedRef\n });\n}\nexport function renderTransition(Component, runTransition, props) {\n if (Component) {\n return /*#__PURE__*/_jsx(Component, Object.assign({}, props));\n }\n if (runTransition) {\n return /*#__PURE__*/_jsx(ImperativeTransition, Object.assign({}, props, {\n transition: runTransition\n }));\n }\n return /*#__PURE__*/_jsx(NoopTransition, Object.assign({}, props));\n}","import * as React from 'react';\nimport ReactDOM from 'react-dom';\nimport useCallbackRef from '@restart/hooks/useCallbackRef';\nimport useMergedRefs from '@restart/hooks/useMergedRefs';\nimport { useState } from 'react';\nimport usePopper from './usePopper';\nimport useRootClose from './useRootClose';\nimport useWaitForDOMRef from './useWaitForDOMRef';\nimport mergeOptionsWithPopperConfig from './mergeOptionsWithPopperConfig';\nimport { renderTransition } from './ImperativeTransition';\n/**\n * Built on top of `Popper.js`, the overlay component is\n * great for custom tooltip overlays.\n */\nconst Overlay = /*#__PURE__*/React.forwardRef((props, outerRef) => {\n const {\n flip,\n offset,\n placement,\n containerPadding,\n popperConfig = {},\n transition: Transition,\n runTransition\n } = props;\n const [rootElement, attachRef] = useCallbackRef();\n const [arrowElement, attachArrowRef] = useCallbackRef();\n const mergedRef = useMergedRefs(attachRef, outerRef);\n const container = useWaitForDOMRef(props.container);\n const target = useWaitForDOMRef(props.target);\n const [exited, setExited] = useState(!props.show);\n const popper = usePopper(target, rootElement, mergeOptionsWithPopperConfig({\n placement,\n enableEvents: !!props.show,\n containerPadding: containerPadding || 5,\n flip,\n offset,\n arrowElement,\n popperConfig\n }));\n\n // TODO: I think this needs to be in an effect\n if (props.show && exited) {\n setExited(false);\n }\n const handleHidden = (...args) => {\n setExited(true);\n if (props.onExited) {\n props.onExited(...args);\n }\n };\n\n // Don't un-render the overlay while it's transitioning out.\n const mountOverlay = props.show || !exited;\n useRootClose(rootElement, props.onHide, {\n disabled: !props.rootClose || props.rootCloseDisabled,\n clickTrigger: props.rootCloseEvent\n });\n if (!mountOverlay) {\n // Don't bother showing anything if we don't have to.\n return null;\n }\n const {\n onExit,\n onExiting,\n onEnter,\n onEntering,\n onEntered\n } = props;\n let child = props.children(Object.assign({}, popper.attributes.popper, {\n style: popper.styles.popper,\n ref: mergedRef\n }), {\n popper,\n placement,\n show: !!props.show,\n arrowProps: Object.assign({}, popper.attributes.arrow, {\n style: popper.styles.arrow,\n ref: attachArrowRef\n })\n });\n child = renderTransition(Transition, runTransition, {\n in: !!props.show,\n appear: true,\n mountOnEnter: true,\n unmountOnExit: true,\n children: child,\n onExit,\n onExiting,\n onExited: handleHidden,\n onEnter,\n onEntering,\n onEntered\n });\n return container ? /*#__PURE__*/ReactDOM.createPortal(child, container) : null;\n});\nOverlay.displayName = 'Overlay';\nexport default Overlay;","/**\n * Checks if a given element has a CSS class.\n * \n * @param element the element\n * @param className the CSS class name\n */\nexport default function hasClass(element, className) {\n if (element.classList) return !!className && element.classList.contains(className);\n return (\" \" + (element.className.baseVal || element.className) + \" \").indexOf(\" \" + className + \" \") !== -1;\n}","import * as React from 'react';\nimport { useContext, useMemo } from 'react';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport const DEFAULT_BREAKPOINTS = ['xxl', 'xl', 'lg', 'md', 'sm', 'xs'];\nconst ThemeContext = /*#__PURE__*/React.createContext({\n prefixes: {},\n breakpoints: DEFAULT_BREAKPOINTS\n});\nconst {\n Consumer,\n Provider\n} = ThemeContext;\n\nfunction ThemeProvider({\n prefixes = {},\n breakpoints = DEFAULT_BREAKPOINTS,\n dir,\n children\n}) {\n const contextValue = useMemo(() => ({\n prefixes: { ...prefixes\n },\n breakpoints,\n dir\n }), [prefixes, breakpoints, dir]);\n return /*#__PURE__*/_jsx(Provider, {\n value: contextValue,\n children: children\n });\n}\n\nexport function useBootstrapPrefix(prefix, defaultPrefix) {\n const {\n prefixes\n } = useContext(ThemeContext);\n return prefix || prefixes[defaultPrefix] || defaultPrefix;\n}\nexport function useBootstrapBreakpoints() {\n const {\n breakpoints\n } = useContext(ThemeContext);\n return breakpoints;\n}\nexport function useIsRTL() {\n const {\n dir\n } = useContext(ThemeContext);\n return dir === 'rtl';\n}\n\nfunction createBootstrapComponent(Component, opts) {\n if (typeof opts === 'string') opts = {\n prefix: opts\n };\n const isClassy = Component.prototype && Component.prototype.isReactComponent; // If it's a functional component make sure we don't break it with a ref\n\n const {\n prefix,\n forwardRefAs = isClassy ? 'ref' : 'innerRef'\n } = opts;\n const Wrapped = /*#__PURE__*/React.forwardRef(({ ...props\n }, ref) => {\n props[forwardRefAs] = ref;\n const bsPrefix = useBootstrapPrefix(props.bsPrefix, prefix);\n return /*#__PURE__*/_jsx(Component, { ...props,\n bsPrefix: bsPrefix\n });\n });\n Wrapped.displayName = `Bootstrap(${Component.displayName || Component.name})`;\n return Wrapped;\n}\n\nexport { createBootstrapComponent, Consumer as ThemeConsumer };\nexport default ThemeProvider;","var rHyphen = /-(.)/g;\nexport default function camelize(string) {\n return string.replace(rHyphen, function (_, chr) {\n return chr.toUpperCase();\n });\n}","import classNames from 'classnames';\nimport camelize from 'dom-helpers/camelize';\nimport * as React from 'react';\nimport { useBootstrapPrefix } from './ThemeProvider';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\n\nconst pascalCase = str => str[0].toUpperCase() + camelize(str).slice(1);\n\n// TODO: emstricten & fix the typing here! `createWithBsPrefix<TElementType>...`\nexport default function createWithBsPrefix(prefix, {\n displayName = pascalCase(prefix),\n Component,\n defaultProps\n} = {}) {\n const BsComponent = /*#__PURE__*/React.forwardRef(({\n className,\n bsPrefix,\n as: Tag = Component || 'div',\n ...props\n }, ref) => {\n const resolvedPrefix = useBootstrapPrefix(bsPrefix, prefix);\n return /*#__PURE__*/_jsx(Tag, {\n ref: ref,\n className: classNames(className, resolvedPrefix),\n ...props\n });\n });\n BsComponent.defaultProps = defaultProps;\n BsComponent.displayName = displayName;\n return BsComponent;\n}","import createWithBsPrefix from './createWithBsPrefix';\nexport default createWithBsPrefix('popover-header');","import createWithBsPrefix from './createWithBsPrefix';\nexport default createWithBsPrefix('popover-body');","import * as React from 'react';\nexport class BsPrefixComponent extends React.Component {} // Need to use this instead of typeof Component to get proper type checking.\n\nexport function getOverlayDirection(placement, isRTL) {\n let bsDirection = placement;\n\n if (placement === 'left') {\n bsDirection = isRTL ? 'end' : 'start';\n } else if (placement === 'right') {\n bsDirection = isRTL ? 'start' : 'end';\n }\n\n return bsDirection;\n}","import classNames from 'classnames';\nimport * as React from 'react';\nimport { useBootstrapPrefix, useIsRTL } from './ThemeProvider';\nimport PopoverHeader from './PopoverHeader';\nimport PopoverBody from './PopoverBody';\nimport { getOverlayDirection } from './helpers';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\nconst defaultProps = {\n placement: 'right'\n};\nconst Popover = /*#__PURE__*/React.forwardRef(({\n bsPrefix,\n placement,\n className,\n style,\n children,\n body,\n arrowProps,\n popper: _,\n show: _1,\n ...props\n}, ref) => {\n const decoratedBsPrefix = useBootstrapPrefix(bsPrefix, 'popover');\n const isRTL = useIsRTL();\n const [primaryPlacement] = (placement == null ? void 0 : placement.split('-')) || [];\n const bsDirection = getOverlayDirection(primaryPlacement, isRTL);\n return /*#__PURE__*/_jsxs(\"div\", {\n ref: ref,\n role: \"tooltip\",\n style: style,\n \"x-placement\": primaryPlacement,\n className: classNames(className, decoratedBsPrefix, primaryPlacement && `bs-popover-${bsDirection}`),\n ...props,\n children: [/*#__PURE__*/_jsx(\"div\", {\n className: \"popover-arrow\",\n ...arrowProps\n }), body ? /*#__PURE__*/_jsx(PopoverBody, {\n children: children\n }) : children]\n });\n});\nPopover.defaultProps = defaultProps;\nexport default Object.assign(Popover, {\n Header: PopoverHeader,\n Body: PopoverBody,\n // Default popover offset.\n // https://github.com/twbs/bootstrap/blob/5c32767e0e0dbac2d934bcdee03719a65d3f1187/js/src/popover.js#L28\n POPPER_OFFSET: [0, 8]\n});","import { useMemo, useRef } from 'react';\nimport hasClass from 'dom-helpers/hasClass';\nimport { useBootstrapPrefix } from './ThemeProvider';\nimport Popover from './Popover'; // This is meant for internal use.\n// This applies a custom offset to the overlay if it's a popover.\n\nexport default function useOverlayOffset(customOffset) {\n const overlayRef = useRef(null);\n const popoverClass = useBootstrapPrefix(undefined, 'popover');\n const offset = useMemo(() => ({\n name: 'offset',\n options: {\n offset: () => {\n if (overlayRef.current && hasClass(overlayRef.current, popoverClass)) {\n return customOffset || Popover.POPPER_OFFSET;\n }\n\n return customOffset || [0, 0];\n }\n }\n }), [customOffset, popoverClass]);\n return [overlayRef, [offset]];\n}","export default {\n disabled: false\n};","import React from 'react';\nexport default React.createContext(null);","export var forceReflow = function forceReflow(node) {\n return node.scrollTop;\n};","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport config from './config';\nimport { timeoutsShape } from './utils/PropTypes';\nimport TransitionGroupContext from './TransitionGroupContext';\nimport { forceReflow } from './utils/reflow';\nexport var UNMOUNTED = 'unmounted';\nexport var EXITED = 'exited';\nexport var ENTERING = 'entering';\nexport var ENTERED = 'entered';\nexport var EXITING = 'exiting';\n/**\n * The Transition component lets you describe a transition from one component\n * state to another _over time_ with a simple declarative API. Most commonly\n * it's used to animate the mounting and unmounting of a component, but can also\n * be used to describe in-place transition states as well.\n *\n * ---\n *\n * **Note**: `Transition` is a platform-agnostic base component. If you're using\n * transitions in CSS, you'll probably want to use\n * [`CSSTransition`](https://reactcommunity.org/react-transition-group/css-transition)\n * instead. It inherits all the features of `Transition`, but contains\n * additional features necessary to play nice with CSS transitions (hence the\n * name of the component).\n *\n * ---\n *\n * By default the `Transition` component does not alter the behavior of the\n * component it renders, it only tracks \"enter\" and \"exit\" states for the\n * components. It's up to you to give meaning and effect to those states. For\n * example we can add styles to a component when it enters or exits:\n *\n * ```jsx\n * import { Transition } from 'react-transition-group';\n *\n * const duration = 300;\n *\n * const defaultStyle = {\n * transition: `opacity ${duration}ms ease-in-out`,\n * opacity: 0,\n * }\n *\n * const transitionStyles = {\n * entering: { opacity: 1 },\n * entered: { opacity: 1 },\n * exiting: { opacity: 0 },\n * exited: { opacity: 0 },\n * };\n *\n * const Fade = ({ in: inProp }) => (\n * <Transition in={inProp} timeout={duration}>\n * {state => (\n * <div style={{\n * ...defaultStyle,\n * ...transitionStyles[state]\n * }}>\n * I'm a fade Transition!\n * </div>\n * )}\n * </Transition>\n * );\n * ```\n *\n * There are 4 main states a Transition can be in:\n * - `'entering'`\n * - `'entered'`\n * - `'exiting'`\n * - `'exited'`\n *\n * Transition state is toggled via the `in` prop. When `true` the component\n * begins the \"Enter\" stage. During this stage, the component will shift from\n * its current transition state, to `'entering'` for the duration of the\n * transition and then to the `'entered'` stage once it's complete. Let's take\n * the following example (we'll use the\n * [useState](https://reactjs.org/docs/hooks-reference.html#usestate) hook):\n *\n * ```jsx\n * function App() {\n * const [inProp, setInProp] = useState(false);\n * return (\n * <div>\n * <Transition in={inProp} timeout={500}>\n * {state => (\n * // ...\n * )}\n * </Transition>\n * <button onClick={() => setInProp(true)}>\n * Click to Enter\n * </button>\n * </div>\n * );\n * }\n * ```\n *\n * When the button is clicked the component will shift to the `'entering'` state\n * and stay there for 500ms (the value of `timeout`) before it finally switches\n * to `'entered'`.\n *\n * When `in` is `false` the same thing happens except the state moves from\n * `'exiting'` to `'exited'`.\n */\n\nvar Transition = /*#__PURE__*/function (_React$Component) {\n _inheritsLoose(Transition, _React$Component);\n\n function Transition(props, context) {\n var _this;\n\n _this = _React$Component.call(this, props, context) || this;\n var parentGroup = context; // In the context of a TransitionGroup all enters are really appears\n\n var appear = parentGroup && !parentGroup.isMounting ? props.enter : props.appear;\n var initialStatus;\n _this.appearStatus = null;\n\n if (props.in) {\n if (appear) {\n initialStatus = EXITED;\n _this.appearStatus = ENTERING;\n } else {\n initialStatus = ENTERED;\n }\n } else {\n if (props.unmountOnExit || props.mountOnEnter) {\n initialStatus = UNMOUNTED;\n } else {\n initialStatus = EXITED;\n }\n }\n\n _this.state = {\n status: initialStatus\n };\n _this.nextCallback = null;\n return _this;\n }\n\n Transition.getDerivedStateFromProps = function getDerivedStateFromProps(_ref, prevState) {\n var nextIn = _ref.in;\n\n if (nextIn && prevState.status === UNMOUNTED) {\n return {\n status: EXITED\n };\n }\n\n return null;\n } // getSnapshotBeforeUpdate(prevProps) {\n // let nextStatus = null\n // if (prevProps !== this.props) {\n // const { status } = this.state\n // if (this.props.in) {\n // if (status !== ENTERING && status !== ENTERED) {\n // nextStatus = ENTERING\n // }\n // } else {\n // if (status === ENTERING || status === ENTERED) {\n // nextStatus = EXITING\n // }\n // }\n // }\n // return { nextStatus }\n // }\n ;\n\n var _proto = Transition.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n this.updateStatus(true, this.appearStatus);\n };\n\n _proto.componentDidUpdate = function componentDidUpdate(prevProps) {\n var nextStatus = null;\n\n if (prevProps !== this.props) {\n var status = this.state.status;\n\n if (this.props.in) {\n if (status !== ENTERING && status !== ENTERED) {\n nextStatus = ENTERING;\n }\n } else {\n if (status === ENTERING || status === ENTERED) {\n nextStatus = EXITING;\n }\n }\n }\n\n this.updateStatus(false, nextStatus);\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n this.cancelNextCallback();\n };\n\n _proto.getTimeouts = function getTimeouts() {\n var timeout = this.props.timeout;\n var exit, enter, appear;\n exit = enter = appear = timeout;\n\n if (timeout != null && typeof timeout !== 'number') {\n exit = timeout.exit;\n enter = timeout.enter; // TODO: remove fallback for next major\n\n appear = timeout.appear !== undefined ? timeout.appear : enter;\n }\n\n return {\n exit: exit,\n enter: enter,\n appear: appear\n };\n };\n\n _proto.updateStatus = function updateStatus(mounting, nextStatus) {\n if (mounting === void 0) {\n mounting = false;\n }\n\n if (nextStatus !== null) {\n // nextStatus will always be ENTERING or EXITING.\n this.cancelNextCallback();\n\n if (nextStatus === ENTERING) {\n if (this.props.unmountOnExit || this.props.mountOnEnter) {\n var node = this.props.nodeRef ? this.props.nodeRef.current : ReactDOM.findDOMNode(this); // https://github.com/reactjs/react-transition-group/pull/749\n // With unmountOnExit or mountOnEnter, the enter animation should happen at the transition between `exited` and `entering`.\n // To make the animation happen, we have to separate each rendering and avoid being processed as batched.\n\n if (node) forceReflow(node);\n }\n\n this.performEnter(mounting);\n } else {\n this.performExit();\n }\n } else if (this.props.unmountOnExit && this.state.status === EXITED) {\n this.setState({\n status: UNMOUNTED\n });\n }\n };\n\n _proto.performEnter = function performEnter(mounting) {\n var _this2 = this;\n\n var enter = this.props.enter;\n var appearing = this.context ? this.context.isMounting : mounting;\n\n var _ref2 = this.props.nodeRef ? [appearing] : [ReactDOM.findDOMNode(this), appearing],\n maybeNode = _ref2[0],\n maybeAppearing = _ref2[1];\n\n var timeouts = this.getTimeouts();\n var enterTimeout = appearing ? timeouts.appear : timeouts.enter; // no enter animation skip right to ENTERED\n // if we are mounting and running this it means appear _must_ be set\n\n if (!mounting && !enter || config.disabled) {\n this.safeSetState({\n status: ENTERED\n }, function () {\n _this2.props.onEntered(maybeNode);\n });\n return;\n }\n\n this.props.onEnter(maybeNode, maybeAppearing);\n this.safeSetState({\n status: ENTERING\n }, function () {\n _this2.props.onEntering(maybeNode, maybeAppearing);\n\n _this2.onTransitionEnd(enterTimeout, function () {\n _this2.safeSetState({\n status: ENTERED\n }, function () {\n _this2.props.onEntered(maybeNode, maybeAppearing);\n });\n });\n });\n };\n\n _proto.performExit = function performExit() {\n var _this3 = this;\n\n var exit = this.props.exit;\n var timeouts = this.getTimeouts();\n var maybeNode = this.props.nodeRef ? undefined : ReactDOM.findDOMNode(this); // no exit animation skip right to EXITED\n\n if (!exit || config.disabled) {\n this.safeSetState({\n status: EXITED\n }, function () {\n _this3.props.onExited(maybeNode);\n });\n return;\n }\n\n this.props.onExit(maybeNode);\n this.safeSetState({\n status: EXITING\n }, function () {\n _this3.props.onExiting(maybeNode);\n\n _this3.onTransitionEnd(timeouts.exit, function () {\n _this3.safeSetState({\n status: EXITED\n }, function () {\n _this3.props.onExited(maybeNode);\n });\n });\n });\n };\n\n _proto.cancelNextCallback = function cancelNextCallback() {\n if (this.nextCallback !== null) {\n this.nextCallback.cancel();\n this.nextCallback = null;\n }\n };\n\n _proto.safeSetState = function safeSetState(nextState, callback) {\n // This shouldn't be necessary, but there are weird race conditions with\n // setState callbacks and unmounting in testing, so always make sure that\n // we can cancel any pending setState callbacks after we unmount.\n callback = this.setNextCallback(callback);\n this.setState(nextState, callback);\n };\n\n _proto.setNextCallback = function setNextCallback(callback) {\n var _this4 = this;\n\n var active = true;\n\n this.nextCallback = function (event) {\n if (active) {\n active = false;\n _this4.nextCallback = null;\n callback(event);\n }\n };\n\n this.nextCallback.cancel = function () {\n active = false;\n };\n\n return this.nextCallback;\n };\n\n _proto.onTransitionEnd = function onTransitionEnd(timeout, handler) {\n this.setNextCallback(handler);\n var node = this.props.nodeRef ? this.props.nodeRef.current : ReactDOM.findDOMNode(this);\n var doesNotHaveTimeoutOrListener = timeout == null && !this.props.addEndListener;\n\n if (!node || doesNotHaveTimeoutOrListener) {\n setTimeout(this.nextCallback, 0);\n return;\n }\n\n if (this.props.addEndListener) {\n var _ref3 = this.props.nodeRef ? [this.nextCallback] : [node, this.nextCallback],\n maybeNode = _ref3[0],\n maybeNextCallback = _ref3[1];\n\n this.props.addEndListener(maybeNode, maybeNextCallback);\n }\n\n if (timeout != null) {\n setTimeout(this.nextCallback, timeout);\n }\n };\n\n _proto.render = function render() {\n var status = this.state.status;\n\n if (status === UNMOUNTED) {\n return null;\n }\n\n var _this$props = this.props,\n children = _this$props.children,\n _in = _this$props.in,\n _mountOnEnter = _this$props.mountOnEnter,\n _unmountOnExit = _this$props.unmountOnExit,\n _appear = _this$props.appear,\n _enter = _this$props.enter,\n _exit = _this$props.exit,\n _timeout = _this$props.timeout,\n _addEndListener = _this$props.addEndListener,\n _onEnter = _this$props.onEnter,\n _onEntering = _this$props.onEntering,\n _onEntered = _this$props.onEntered,\n _onExit = _this$props.onExit,\n _onExiting = _this$props.onExiting,\n _onExited = _this$props.onExited,\n _nodeRef = _this$props.nodeRef,\n childProps = _objectWithoutPropertiesLoose(_this$props, [\"children\", \"in\", \"mountOnEnter\", \"unmountOnExit\", \"appear\", \"enter\", \"exit\", \"timeout\", \"addEndListener\", \"onEnter\", \"onEntering\", \"onEntered\", \"onExit\", \"onExiting\", \"onExited\", \"nodeRef\"]);\n\n return (\n /*#__PURE__*/\n // allows for nested Transitions\n React.createElement(TransitionGroupContext.Provider, {\n value: null\n }, typeof children === 'function' ? children(status, childProps) : React.cloneElement(React.Children.only(children), childProps))\n );\n };\n\n return Transition;\n}(React.Component);\n\nTransition.contextType = TransitionGroupContext;\nTransition.propTypes = process.env.NODE_ENV !== \"production\" ? {\n /**\n * A React reference to DOM element that need to transition:\n * https://stackoverflow.com/a/51127130/4671932\n *\n * - When `nodeRef` prop is used, `node` is not passed to callback functions\n * (e.g. `onEnter`) because user already has direct access to the node.\n * - When changing `key` prop of `Transition` in a `TransitionGroup` a new\n * `nodeRef` need to be provided to `Transition` with changed `key` prop\n * (see\n * [test/CSSTransition-test.js](https://github.com/reactjs/react-transition-group/blob/13435f897b3ab71f6e19d724f145596f5910581c/test/CSSTransition-test.js#L362-L437)).\n */\n nodeRef: PropTypes.shape({\n current: typeof Element === 'undefined' ? PropTypes.any : function (propValue, key, componentName, location, propFullName, secret) {\n var value = propValue[key];\n return PropTypes.instanceOf(value && 'ownerDocument' in value ? value.ownerDocument.defaultView.Element : Element)(propValue, key, componentName, location, propFullName, secret);\n }\n }),\n\n /**\n * A `function` child can be used instead of a React element. This function is\n * called with the current transition status (`'entering'`, `'entered'`,\n * `'exiting'`, `'exited'`), which can be used to apply context\n * specific props to a component.\n *\n * ```jsx\n * <Transition in={this.state.in} timeout={150}>\n * {state => (\n * <MyComponent className={`fade fade-${state}`} />\n * )}\n * </Transition>\n * ```\n */\n children: PropTypes.oneOfType([PropTypes.func.isRequired, PropTypes.element.isRequired]).isRequired,\n\n /**\n * Show the component; triggers the enter or exit states\n */\n in: PropTypes.bool,\n\n /**\n * By default the child component is mounted immediately along with\n * the parent `Transition` component. If you want to \"lazy mount\" the component on the\n * first `in={true}` you can set `mountOnEnter`. After the first enter transition the component will stay\n * mounted, even on \"exited\", unless you also specify `unmountOnExit`.\n */\n mountOnEnter: PropTypes.bool,\n\n /**\n * By default the child component stays mounted after it reaches the `'exited'` state.\n * Set `unmountOnExit` if you'd prefer to unmount the component after it finishes exiting.\n */\n unmountOnExit: PropTypes.bool,\n\n /**\n * By default the child component does not perform the enter transition when\n * it first mounts, regardless of the value of `in`. If you want this\n * behavior, set both `appear` and `in` to `true`.\n *\n * > **Note**: there are no special appear states like `appearing`/`appeared`, this prop\n * > only adds an additional enter transition. However, in the\n * > `<CSSTransition>` component that first enter transition does result in\n * > additional `.appear-*` classes, that way you can choose to style it\n * > differently.\n */\n appear: PropTypes.bool,\n\n /**\n * Enable or disable enter transitions.\n */\n enter: PropTypes.bool,\n\n /**\n * Enable or disable exit transitions.\n */\n exit: PropTypes.bool,\n\n /**\n * The duration of the transition, in milliseconds.\n * Required unless `addEndListener` is provided.\n *\n * You may specify a single timeout for all transitions:\n *\n * ```jsx\n * timeout={500}\n * ```\n *\n * or individually:\n *\n * ```jsx\n * timeout={{\n * appear: 500,\n * enter: 300,\n * exit: 500,\n * }}\n * ```\n *\n * - `appear` defaults to the value of `enter`\n * - `enter` defaults to `0`\n * - `exit` defaults to `0`\n *\n * @type {number | { enter?: number, exit?: number, appear?: number }}\n */\n timeout: function timeout(props) {\n var pt = timeoutsShape;\n if (!props.addEndListener) pt = pt.isRequired;\n\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n return pt.apply(void 0, [props].concat(args));\n },\n\n /**\n * Add a custom transition end trigger. Called with the transitioning\n * DOM node and a `done` callback. Allows for more fine grained transition end\n * logic. Timeouts are still used as a fallback if provided.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * ```jsx\n * addEndListener={(node, done) => {\n * // use the css transitionend event to mark the finish of a transition\n * node.addEventListener('transitionend', done, false);\n * }}\n * ```\n */\n addEndListener: PropTypes.func,\n\n /**\n * Callback fired before the \"entering\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool) -> void\n */\n onEnter: PropTypes.func,\n\n /**\n * Callback fired after the \"entering\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool)\n */\n onEntering: PropTypes.func,\n\n /**\n * Callback fired after the \"entered\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool) -> void\n */\n onEntered: PropTypes.func,\n\n /**\n * Callback fired before the \"exiting\" status is applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExit: PropTypes.func,\n\n /**\n * Callback fired after the \"exiting\" status is applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExiting: PropTypes.func,\n\n /**\n * Callback fired after the \"exited\" status is applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExited: PropTypes.func\n} : {}; // Name the function so it is clearer in the documentation\n\nfunction noop() {}\n\nTransition.defaultProps = {\n in: false,\n mountOnEnter: false,\n unmountOnExit: false,\n appear: false,\n enter: true,\n exit: true,\n onEnter: noop,\n onEntering: noop,\n onEntered: noop,\n onExit: noop,\n onExiting: noop,\n onExited: noop\n};\nTransition.UNMOUNTED = UNMOUNTED;\nTransition.EXITED = EXITED;\nTransition.ENTERING = ENTERING;\nTransition.ENTERED = ENTERED;\nTransition.EXITING = EXITING;\nexport default Transition;","import ownerDocument from './ownerDocument';\n/**\n * Returns the owner window of a given element.\n * \n * @param node the element\n */\n\nexport default function ownerWindow(node) {\n var doc = ownerDocument(node);\n return doc && doc.defaultView || window;\n}","import ownerWindow from './ownerWindow';\n/**\n * Returns one or all computed style properties of an element.\n * \n * @param node the element\n * @param psuedoElement the style property\n */\n\nexport default function getComputedStyle(node, psuedoElement) {\n return ownerWindow(node).getComputedStyle(node, psuedoElement);\n}","var rUpper = /([A-Z])/g;\nexport default function hyphenate(string) {\n return string.replace(rUpper, '-$1').toLowerCase();\n}","/**\n * Copyright 2013-2014, Facebook, Inc.\n * All rights reserved.\n * https://github.com/facebook/react/blob/2aeb8a2a6beb00617a4217f7f8284924fa2ad819/src/vendor/core/hyphenateStyleName.js\n */\nimport hyphenate from './hyphenate';\nvar msPattern = /^ms-/;\nexport default function hyphenateStyleName(string) {\n return hyphenate(string).replace(msPattern, '-ms-');\n}","var supportedTransforms = /^((translate|rotate|scale)(X|Y|Z|3d)?|matrix(3d)?|perspective|skew(X|Y)?)$/i;\nexport default function isTransform(value) {\n return !!(value && supportedTransforms.test(value));\n}","import getComputedStyle from './getComputedStyle';\nimport hyphenate from './hyphenateStyle';\nimport isTransform from './isTransform';\n\nfunction style(node, property) {\n var css = '';\n var transforms = '';\n\n if (typeof property === 'string') {\n return node.style.getPropertyValue(hyphenate(property)) || getComputedStyle(node).getPropertyValue(hyphenate(property));\n }\n\n Object.keys(property).forEach(function (key) {\n var value = property[key];\n\n if (!value && value !== 0) {\n node.style.removeProperty(hyphenate(key));\n } else if (isTransform(key)) {\n transforms += key + \"(\" + value + \") \";\n } else {\n css += hyphenate(key) + \": \" + value + \";\";\n }\n });\n\n if (transforms) {\n css += \"transform: \" + transforms + \";\";\n }\n\n node.style.cssText += \";\" + css;\n}\n\nexport default style;","/**\n * Triggers an event on a given element.\n * \n * @param node the element\n * @param eventName the event name to trigger\n * @param bubbles whether the event should bubble up\n * @param cancelable whether the event should be cancelable\n */\nexport default function triggerEvent(node, eventName, bubbles, cancelable) {\n if (bubbles === void 0) {\n bubbles = false;\n }\n\n if (cancelable === void 0) {\n cancelable = true;\n }\n\n if (node) {\n var event = document.createEvent('HTMLEvents');\n event.initEvent(eventName, bubbles, cancelable);\n node.dispatchEvent(event);\n }\n}","import css from './css';\nimport listen from './listen';\nimport triggerEvent from './triggerEvent';\n\nfunction parseDuration(node) {\n var str = css(node, 'transitionDuration') || '';\n var mult = str.indexOf('ms') === -1 ? 1000 : 1;\n return parseFloat(str) * mult;\n}\n\nfunction emulateTransitionEnd(element, duration, padding) {\n if (padding === void 0) {\n padding = 5;\n }\n\n var called = false;\n var handle = setTimeout(function () {\n if (!called) triggerEvent(element, 'transitionend', true);\n }, duration + padding);\n var remove = listen(element, 'transitionend', function () {\n called = true;\n }, {\n once: true\n });\n return function () {\n clearTimeout(handle);\n remove();\n };\n}\n\nexport default function transitionEnd(element, handler, duration, padding) {\n if (duration == null) duration = parseDuration(element) || 0;\n var removeEmulate = emulateTransitionEnd(element, duration, padding);\n var remove = listen(element, 'transitionend', handler);\n return function () {\n removeEmulate();\n remove();\n };\n}","import css from 'dom-helpers/css';\nimport transitionEnd from 'dom-helpers/transitionEnd';\n\nfunction parseDuration(node, property) {\n const str = css(node, property) || '';\n const mult = str.indexOf('ms') === -1 ? 1000 : 1;\n return parseFloat(str) * mult;\n}\n\nexport default function transitionEndListener(element, handler) {\n const duration = parseDuration(element, 'transitionDuration');\n const delay = parseDuration(element, 'transitionDelay');\n const remove = transitionEnd(element, e => {\n if (e.target === element) {\n remove();\n handler(e);\n }\n }, duration + delay);\n}","// reading a dimension prop will cause the browser to recalculate,\n// which will let our animations work\nexport default function triggerBrowserReflow(node) {\n // eslint-disable-next-line @typescript-eslint/no-unused-expressions\n node.offsetHeight;\n}","import ReactDOM from 'react-dom';\nexport default function safeFindDOMNode(componentOrElement) {\n if (componentOrElement && 'setState' in componentOrElement) {\n return ReactDOM.findDOMNode(componentOrElement);\n }\n\n return componentOrElement != null ? componentOrElement : null;\n}","import React, { useCallback, useRef } from 'react';\nimport Transition from 'react-transition-group/Transition';\nimport useMergedRefs from '@restart/hooks/useMergedRefs';\nimport safeFindDOMNode from './safeFindDOMNode';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\n// Normalizes Transition callbacks when nodeRef is used.\nconst TransitionWrapper = /*#__PURE__*/React.forwardRef(({\n onEnter,\n onEntering,\n onEntered,\n onExit,\n onExiting,\n onExited,\n addEndListener,\n children,\n childRef,\n ...props\n}, ref) => {\n const nodeRef = useRef(null);\n const mergedRef = useMergedRefs(nodeRef, childRef);\n\n const attachRef = r => {\n mergedRef(safeFindDOMNode(r));\n };\n\n const normalize = callback => param => {\n if (callback && nodeRef.current) {\n callback(nodeRef.current, param);\n }\n };\n /* eslint-disable react-hooks/exhaustive-deps */\n\n\n const handleEnter = useCallback(normalize(onEnter), [onEnter]);\n const handleEntering = useCallback(normalize(onEntering), [onEntering]);\n const handleEntered = useCallback(normalize(onEntered), [onEntered]);\n const handleExit = useCallback(normalize(onExit), [onExit]);\n const handleExiting = useCallback(normalize(onExiting), [onExiting]);\n const handleExited = useCallback(normalize(onExited), [onExited]);\n const handleAddEndListener = useCallback(normalize(addEndListener), [addEndListener]);\n /* eslint-enable react-hooks/exhaustive-deps */\n\n return /*#__PURE__*/_jsx(Transition, {\n ref: ref,\n ...props,\n onEnter: handleEnter,\n onEntered: handleEntered,\n onEntering: handleEntering,\n onExit: handleExit,\n onExited: handleExited,\n onExiting: handleExiting,\n addEndListener: handleAddEndListener,\n nodeRef: nodeRef,\n children: typeof children === 'function' ? (status, innerProps) => children(status, { ...innerProps,\n ref: attachRef\n }) : /*#__PURE__*/React.cloneElement(children, {\n ref: attachRef\n })\n });\n});\nexport default TransitionWrapper;","import classNames from 'classnames';\nimport * as React from 'react';\nimport { useCallback } from 'react';\nimport { ENTERED, ENTERING } from 'react-transition-group/Transition';\nimport transitionEndListener from './transitionEndListener';\nimport triggerBrowserReflow from './triggerBrowserReflow';\nimport TransitionWrapper from './TransitionWrapper';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst defaultProps = {\n in: false,\n timeout: 300,\n mountOnEnter: false,\n unmountOnExit: false,\n appear: false\n};\nconst fadeStyles = {\n [ENTERING]: 'show',\n [ENTERED]: 'show'\n};\nconst Fade = /*#__PURE__*/React.forwardRef(({\n className,\n children,\n transitionClasses = {},\n ...props\n}, ref) => {\n const handleEnter = useCallback((node, isAppearing) => {\n triggerBrowserReflow(node);\n props.onEnter == null ? void 0 : props.onEnter(node, isAppearing);\n }, [props]);\n return /*#__PURE__*/_jsx(TransitionWrapper, {\n ref: ref,\n addEndListener: transitionEndListener,\n ...props,\n onEnter: handleEnter,\n childRef: children.ref,\n children: (status, innerProps) => /*#__PURE__*/React.cloneElement(children, { ...innerProps,\n className: classNames('fade', className, children.props.className, fadeStyles[status], transitionClasses[status])\n })\n });\n});\nFade.defaultProps = defaultProps;\nFade.displayName = 'Fade';\nexport default Fade;","import * as React from 'react';\nimport { useRef } from 'react';\nimport classNames from 'classnames';\nimport BaseOverlay from '@restart/ui/Overlay';\nimport useMergedRefs from '@restart/hooks/useMergedRefs';\nimport useOverlayOffset from './useOverlayOffset';\nimport Fade from './Fade';\nimport safeFindDOMNode from './safeFindDOMNode';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nconst defaultProps = {\n transition: Fade,\n rootClose: false,\n show: false,\n placement: 'top'\n};\n\nfunction wrapRefs(props, arrowProps) {\n const {\n ref\n } = props;\n const {\n ref: aRef\n } = arrowProps;\n\n props.ref = ref.__wrapped || (ref.__wrapped = r => ref(safeFindDOMNode(r)));\n\n arrowProps.ref = aRef.__wrapped || (aRef.__wrapped = r => aRef(safeFindDOMNode(r)));\n}\n\nconst Overlay = /*#__PURE__*/React.forwardRef(({\n children: overlay,\n transition,\n popperConfig = {},\n ...outerProps\n}, outerRef) => {\n const popperRef = useRef({});\n const [ref, modifiers] = useOverlayOffset(outerProps.offset);\n const mergedRef = useMergedRefs(outerRef, ref);\n const actualTransition = transition === true ? Fade : transition || undefined;\n return /*#__PURE__*/_jsx(BaseOverlay, { ...outerProps,\n ref: mergedRef,\n popperConfig: { ...popperConfig,\n modifiers: modifiers.concat(popperConfig.modifiers || [])\n },\n transition: actualTransition,\n children: (overlayProps, {\n arrowProps,\n popper: popperObj,\n show\n }) => {\n var _popperObj$state, _popperObj$state$modi;\n\n wrapRefs(overlayProps, arrowProps); // Need to get placement from popper object, handling case when overlay is flipped using 'flip' prop\n\n const updatedPlacement = popperObj == null ? void 0 : popperObj.placement;\n const popper = Object.assign(popperRef.current, {\n state: popperObj == null ? void 0 : popperObj.state,\n scheduleUpdate: popperObj == null ? void 0 : popperObj.update,\n placement: updatedPlacement,\n outOfBoundaries: (popperObj == null ? void 0 : (_popperObj$state = popperObj.state) == null ? void 0 : (_popperObj$state$modi = _popperObj$state.modifiersData.hide) == null ? void 0 : _popperObj$state$modi.isReferenceHidden) || false\n });\n if (typeof overlay === 'function') return overlay({ ...overlayProps,\n placement: updatedPlacement,\n show,\n ...(!transition && show && {\n className: 'show'\n }),\n popper,\n arrowProps\n });\n return /*#__PURE__*/React.cloneElement(overlay, { ...overlayProps,\n placement: updatedPlacement,\n arrowProps,\n popper,\n className: classNames(overlay.props.className, !transition && show && 'show'),\n style: { ...overlay.props.style,\n ...overlayProps.style\n }\n });\n }\n });\n});\nOverlay.displayName = 'Overlay';\nOverlay.defaultProps = defaultProps;\nexport default Overlay;","import contains from 'dom-helpers/contains';\nimport * as React from 'react';\nimport { cloneElement, useCallback, useRef } from 'react';\nimport useTimeout from '@restart/hooks/useTimeout';\nimport warning from 'warning';\nimport { useUncontrolledProp } from 'uncontrollable';\nimport useMergedRefs from '@restart/hooks/useMergedRefs';\nimport Overlay from './Overlay';\nimport safeFindDOMNode from './safeFindDOMNode';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { jsxs as _jsxs } from \"react/jsx-runtime\";\n\nfunction normalizeDelay(delay) {\n return delay && typeof delay === 'object' ? delay : {\n show: delay,\n hide: delay\n };\n} // Simple implementation of mouseEnter and mouseLeave.\n// React's built version is broken: https://github.com/facebook/react/issues/4251\n// for cases when the trigger is disabled and mouseOut/Over can cause flicker\n// moving from one child element to another.\n\n\nfunction handleMouseOverOut( // eslint-disable-next-line @typescript-eslint/no-shadow\nhandler, args, relatedNative) {\n const [e] = args;\n const target = e.currentTarget;\n const related = e.relatedTarget || e.nativeEvent[relatedNative];\n\n if ((!related || related !== target) && !contains(target, related)) {\n handler(...args);\n }\n}\n\nconst defaultProps = {\n defaultShow: false,\n trigger: ['hover', 'focus']\n};\n\nfunction OverlayTrigger({\n trigger,\n overlay,\n children,\n popperConfig = {},\n show: propsShow,\n defaultShow = false,\n onToggle,\n delay: propsDelay,\n placement,\n flip = placement && placement.indexOf('auto') !== -1,\n ...props\n}) {\n const triggerNodeRef = useRef(null);\n const mergedRef = useMergedRefs(triggerNodeRef, children.ref);\n const timeout = useTimeout();\n const hoverStateRef = useRef('');\n const [show, setShow] = useUncontrolledProp(propsShow, defaultShow, onToggle);\n const delay = normalizeDelay(propsDelay);\n const {\n onFocus,\n onBlur,\n onClick\n } = typeof children !== 'function' ? React.Children.only(children).props : {};\n\n const attachRef = r => {\n mergedRef(safeFindDOMNode(r));\n };\n\n const handleShow = useCallback(() => {\n timeout.clear();\n hoverStateRef.current = 'show';\n\n if (!delay.show) {\n setShow(true);\n return;\n }\n\n timeout.set(() => {\n if (hoverStateRef.current === 'show') setShow(true);\n }, delay.show);\n }, [delay.show, setShow, timeout]);\n const handleHide = useCallback(() => {\n timeout.clear();\n hoverStateRef.current = 'hide';\n\n if (!delay.hide) {\n setShow(false);\n return;\n }\n\n timeout.set(() => {\n if (hoverStateRef.current === 'hide') setShow(false);\n }, delay.hide);\n }, [delay.hide, setShow, timeout]);\n const handleFocus = useCallback((...args) => {\n handleShow();\n onFocus == null ? void 0 : onFocus(...args);\n }, [handleShow, onFocus]);\n const handleBlur = useCallback((...args) => {\n handleHide();\n onBlur == null ? void 0 : onBlur(...args);\n }, [handleHide, onBlur]);\n const handleClick = useCallback((...args) => {\n setShow(!show);\n onClick == null ? void 0 : onClick(...args);\n }, [onClick, setShow, show]);\n const handleMouseOver = useCallback((...args) => {\n handleMouseOverOut(handleShow, args, 'fromElement');\n }, [handleShow]);\n const handleMouseOut = useCallback((...args) => {\n handleMouseOverOut(handleHide, args, 'toElement');\n }, [handleHide]);\n const triggers = trigger == null ? [] : [].concat(trigger);\n const triggerProps = {\n ref: attachRef\n };\n\n if (triggers.indexOf('click') !== -1) {\n triggerProps.onClick = handleClick;\n }\n\n if (triggers.indexOf('focus') !== -1) {\n triggerProps.onFocus = handleFocus;\n triggerProps.onBlur = handleBlur;\n }\n\n if (triggers.indexOf('hover') !== -1) {\n process.env.NODE_ENV !== \"production\" ? warning(triggers.length > 1, '[react-bootstrap] Specifying only the `\"hover\"` trigger limits the visibility of the overlay to just mouse users. Consider also including the `\"focus\"` trigger so that touch and keyboard only users can see the overlay as well.') : void 0;\n triggerProps.onMouseOver = handleMouseOver;\n triggerProps.onMouseOut = handleMouseOut;\n }\n\n return /*#__PURE__*/_jsxs(_Fragment, {\n children: [typeof children === 'function' ? children(triggerProps) : /*#__PURE__*/cloneElement(children, triggerProps), /*#__PURE__*/_jsx(Overlay, { ...props,\n show: show,\n onHide: handleHide,\n flip: flip,\n placement: placement,\n popperConfig: popperConfig,\n target: triggerNodeRef.current,\n children: overlay\n })]\n });\n}\n\nOverlayTrigger.defaultProps = defaultProps;\nexport default OverlayTrigger;","import { ListItem, styled } from '@veracity/vui'\n\nexport const SelectedListItem = styled(ListItem)`\n\tpadding-left: 0;\n overflow: hidden;\n\twhite-space: nowrap;\n\ttext-overflow: ellipsis;\n\t&:before {\n\t\tcontent: '';\n\t\theight: 100%;\n\t\twidth: 5px;\n\t\tbackground-color: #003f79;\n\t}\n`\n\nexport const OverflowText = styled.span`\n\twidth: 100%;\n align-items: center;\n\toverflow: hidden;\n\twhite-space: nowrap;\n\ttext-overflow: ellipsis;\n text-align: left;\n}\n`\nexport const TooltipDiv = styled.div`\n\tbackground: rgb(0, 42, 62);\n\tcolor: #fff;\n\tpadding: 10px;\n`\n","import { Box, List, ListItem, Menu, Tooltip } from '@veracity/vui'\nimport type { Entity, Report, TenantReport } from 'libs/global'\nimport { useEffect } from 'react'\nimport OverlayTrigger from 'react-bootstrap/OverlayTrigger'\nimport { useNavigate } from 'react-router-dom'\nimport shallow from 'zustand/shallow'\n\nimport { useGlobalStore } from 'stores/global'\n\nimport { OverflowText, SelectedListItem, TooltipDiv } from './styles'\n\ntype LeftPanelProps = {\n entityId: number\n reportId: number\n tenantReport: TenantReport\n}\n\ntype MatchedEntityReport = {\n entity: Entity\n report: Report\n}\n\nconst LeftPanel = (props: LeftPanelProps) => {\n const navigate = useNavigate()\n const entities = props.tenantReport.tenant.entities\n const { selectedEntity, setSelectedEntity, selectedReport, setSelectedReport } = useGlobalStore(\n state => ({\n selectedEntity: state.selectedEntity,\n setSelectedEntity: state.setSelectedEntity,\n selectedReport: state.selectedReport,\n setSelectedReport: state.setSelectedReport\n }),\n shallow\n )\n\n const onEntitySelected = (entity: Entity) => {\n let report\n if (entity.reports.length > 0) report = entity.reports[0]\n setSelectedEntity(entity)\n report && setSelectedReport(report)\n\n const targetUrl = `/${props.tenantReport.tenant.domainName.toLowerCase()}/entity/${entity.entityTreeId}${report ? `/report/${report.id}` : ''}`\n navigate(targetUrl, { replace: true })\n }\n\n const onReportSelected = (report: Report) => {\n setSelectedReport(report)\n navigate(`/${props.tenantReport.tenant.domainName.toLowerCase()}/entity/${selectedEntity.entityTreeId}/report/${report.id}`)\n }\n\n useEffect(() => {\n if (props.entityId) {\n const entity = props.tenantReport.tenant.entities.find(e => e.entityTreeId === props.entityId)\n if (entity) {\n if (!props.reportId) {\n onEntitySelected(entity)\n setSelectedReport(entity.reports[0])\n } else {\n const report = entity.reports.find(r => r.id === props.reportId)\n if (report) {\n setSelectedEntity(entity)\n setSelectedReport(report)\n }\n }\n }\n } else if (!props.entityId && !props.reportId) {\n navigate(`/${props.tenantReport.tenant.domainName.toLowerCase()}/entity/${entities[0].entityTreeId}/report/${entities[0].reports[0].id}`)\n }\n }, [props.entityId, props.reportId])\n\n return (\n <Box borderRightColor=\"#e1e6e9\" borderRightWidth=\"1px\" className=\"left-panel\" column>\n <Menu>\n <Menu.Button className=\"selected-entity\" color=\"blue.100\" iconRight=\"falAngleDown\" title=\" \">\n <OverflowText>{selectedEntity && selectedEntity.name}</OverflowText>\n </Menu.Button>\n {entities && (\n <Menu.List className=\"entity-list\" h={480} heading=\"Switch Entity...\" maxW={360}>\n {entities.map(e => (\n <Menu.Item\n className=\"entity-item\"\n fontSize=\"16px\"\n isSelected={selectedEntity && selectedEntity.id === e.id}\n key={e.id}\n onClick={() => onEntitySelected(e)}\n py=\"16px\"\n >\n <Tooltip text={e.name}>\n <OverflowText>{e.name}</OverflowText>\n </Tooltip>\n </Menu.Item>\n ))}\n </Menu.List>\n )}\n </Menu>\n {selectedEntity && selectedEntity.reports.length > 0 && (\n <List overflow=\"auto\">\n {selectedEntity.reports.map(r => {\n if (selectedReport && selectedReport.id === r.id)\n return (\n <SelectedListItem isSelected key={r.id} onClick={() => onReportSelected(r)}>\n <Box ml=\"10px\">{r.name}</Box>\n </SelectedListItem>\n )\n return (\n <ListItem alignItems=\"stretch\" key={r.id} onClick={() => onReportSelected(r)}>\n <OverlayTrigger overlay={<TooltipDiv id={`tooltip-${r.id}`}>{r.name}</TooltipDiv>} placement=\"bottom\">\n <Box centerV>\n <OverflowText>{r.name}</OverflowText>\n </Box>\n </OverlayTrigger>\n </ListItem>\n )\n })}\n </List>\n )}\n </Box>\n )\n}\n\nexport default LeftPanel\n","export enum FileDataPrefix {\n jpeg = 'image/jpeg',\n jpg = 'image/jpg',\n pbix = 'application/pbix',\n pdf = 'application/pdf',\n png = 'image/png',\n pptx = 'application/pptx',\n xlsx = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'\n}\n","export const enterFullScreen = (element: HTMLElement) => {\n\tif (!isFullScreen()) {\n\t\tconst ele = element as any\n\t\tif (ele.requestFullscreen) {\n\t\t\tele.requestFullscreen()\n\t\t} else if (ele.mozRequestFullScreen) {\n\t\t\tele.mozRequestFullScreen()\n\t\t} else if (ele.webkitRequestFullscreen) {\n\t\t\tele.webkitRequestFullscreen()\n\t\t} else if (ele.msRequestFullscreen) {\n\t\t\tele.msRequestFullscreen()\n\t\t}\n\t}\n}\n\nexport const exitFullScreen = () => {\n\tif (isFullScreen()) {\n\t\tconst doc = document as any\n\t\tif (doc.exitFullscreen) {\n\t\t\tdoc.exitFullscreen()\n\t\t} else if (doc.mozCancelFullScreen) {\n\t\t\tdoc.mozCancelFullScreen()\n\t\t} else if (doc.webkitExitFullscreen) {\n\t\t\tdoc.webkitExitFullscreen()\n\t\t} else if (doc.msExitFullscreen) {\n\t\t\tdoc.msExitFullscreen()\n\t\t}\n\t}\n}\n\nexport const isFullScreen = () => {\n\treturn (\n\t\tdocument.fullscreenElement ||\n\t\t(document as any).mozFullScreenElement ||\n\t\t(document as any).webkitFullScreenElement ||\n\t\t(document as any).msFullscreenElement ||\n\t\tfalse\n\t)\n}\n\nexport const isFullscreenEnabled = () => {\n\treturn (\n\t\tdocument.fullscreenEnabled ||\n\t\t(document as any).mozFullScreenEnabled ||\n\t\t(document as any).webkitFullscreenEnabled ||\n\t\t(document as any).msFullscreenEnabled ||\n\t\tfalse\n\t)\n}\n","import { Box, Footer, useFooterLinks, useLoadLinks } from '@veracity/vui'\nimport React from 'react'\n\nconst GlobalFooter = () => {\n const appLinks = [\n {\n id: 'link-platform',\n text: 'Platform',\n items: [\n {\n id: 'about',\n text: 'About Veracity',\n url: 'https://www.veracity.com/about?loggedin=1'\n },\n {\n id: 'news',\n text: 'News',\n url: 'https://www.veracity.com/news?loggedin=1'\n },\n {\n id: 'marketplace',\n text: 'Marketplace',\n url: 'https://store.veracity.com/?loggedin=1'\n },\n {\n id: 'veracityTrustCenter',\n text: 'Veracity trust center',\n url: 'https://www.veracity.com/veracity-trust-center?loggedin=1'\n },\n {\n id: 'career',\n text: 'Career',\n url: 'https://www.veracity.com/career?loggedin=1'\n }\n ]\n },\n {\n id: 'link-products',\n text: 'Products',\n items: [\n {\n id: 'veracityConnectedArticle',\n text: 'Veracity Connected app',\n url: 'https://www.veracity.com/article/veracity-connected-bringing-veracity-to-your-mobile?loggedin=1'\n },\n {\n id: 'dataFabricProduct',\n text: 'Veracity Data Fabric',\n url: 'https://store.veracity.com/veracity-data-fabric-secure-data-sharing?loggedin=1'\n },\n {\n id: 'assetConnectArticle',\n text: 'Asset Connect',\n url: 'https://www.veracity.com/article/veracity-asset?loggedin=1'\n },\n {\n id: 'vapProduct',\n text: 'Veracity Adapter for Power BI (VAP)',\n url: 'https://store.veracity.com/veracity-adapter-for-power-bi-vap?loggedin=1'\n },\n {\n id: 'analytics',\n text: 'Veracity Analytics',\n url: 'https://analytics.veracity.com/?loggedin=1'\n }\n ]\n },\n {\n id: 'link-partnership',\n text: 'Partnership',\n items: [\n {\n id: 'sellingOnVeracityArticle',\n text: 'Selling on Veracity',\n url: 'https://developer.veracity.com/article/are-you-ready-to-sell-on-veracity?loggedin=1'\n },\n {\n id: 'partnerProgram',\n text: 'Veracity partner program',\n url: 'https://www.veracity.com/partner-integration?loggedin=1'\n }\n ]\n },\n {\n id: 'link-developer',\n text: 'Developer',\n items: [\n {\n id: 'developer',\n text: 'Veracity for Developers',\n url: 'https://developer.veracity.com/?loggedin=1'\n },\n {\n id: 'documentation',\n text: 'Documentation',\n url: 'https://developer.veracity.com/docs?loggedin=1'\n },\n {\n id: 'developerCommunity',\n text: 'Developer Community',\n url: 'https://community.veracity.com/?loggedin=1'\n }\n ]\n },\n {\n id: 'link-support',\n text: 'Support',\n items: [\n {\n id: 'link-helpcenter',\n text: 'Help Center',\n url: 'https://help-center.veracity.com/?loggedin=1'\n },\n {\n id: 'link-veracitystatus',\n text: 'Veracity Status',\n url: 'https://status.veracity.com/?loggedin=1'\n },\n {\n id: 'link-veracitysupport',\n text: 'Veracity Support',\n url: 'https://support.veracity.com/?loggedin=1'\n }\n ]\n },\n {\n id: 'linkg-leagal',\n text: 'Legal',\n items: [\n {\n id: 'privacyStatement',\n text: 'Privacy statement',\n url: 'https://services.veracity.com/PrivacyStatement?loggedin=1'\n },\n {\n id: 'termsOfUse',\n text: 'Terms of use',\n url: 'https://id.veracity.com/terms-of-use?loggedin=1'\n },\n {\n id: 'cookiePolicy',\n text: 'Cookies policy',\n url: 'https://services.veracity.com/CookieList?loggedin=1'\n }\n ]\n }\n ]\n\n return (\n <Box bg=\"darkBlue.18\" display=\"block\" h=\"48px\">\n <Footer applicationLinks={appLinks} isApplication isSlim variant=\"developer\" />\n </Box>\n )\n}\n\nexport default GlobalFooter\n","import { Button, Environment, LoggedOutHeader, useHeaderLinks, useLoadLinks } from '@veracity/vui'\nimport shallow from 'zustand/shallow'\n\nimport { useGlobalStore } from 'stores/global'\n\nconst getHeaderEnv = (): Environment => {\n let headerEnv: Environment = null\n switch ((window.__VAP_GLOBALS__.config.env as string).toLowerCase()) {\n case 'development':\n case 'devtest':\n case 'test':\n headerEnv = 'Test'\n break\n case 'stag':\n headerEnv = 'Stag'\n break\n case 'prod':\n headerEnv = 'Prod'\n break\n default:\n headerEnv = 'Test'\n }\n return headerEnv\n}\n\nconst getLogoURL = (): string => {\n const rootUrl = new URL(window.__VAP_GLOBALS__.config.rootUrl)\n let logoUrl = 'https://onedesign.azureedge.net/onedesigncdn/2.6.0/images/DNV_logo_RGB.svg'\n if (rootUrl.hostname.endsWith('veracity.com')) logoUrl = 'https://cdn.veracity.com/common/icons/logos/veracity-logo.svg'\n return logoUrl\n}\n\nexport default function Header() {\n const headerEnv = getHeaderEnv()\n useLoadLinks(headerEnv, true)\n const { mainLinks } = useHeaderLinks(headerEnv)\n const { tenantName } = useGlobalStore(\n state => ({\n tenantName: state.tenantName\n }),\n shallow\n )\n\n const gotoMyservice = () => {\n if (headerEnv === 'Test') window.location.href = 'https://servicestest.veracity.com'\n if (headerEnv === 'Stag') window.location.href = 'https://servicesstag.veracity.com'\n if (headerEnv === 'Prod') window.location.href = 'https://services.veracity.com'\n }\n\n const logoLink = {\n url: `/${tenantName ?? ''}`,\n src: getLogoURL()\n }\n\n return (\n <>\n <LoggedOutHeader logo={logoLink} mainLinks={mainLinks} signIn={<Button onClick={() => gotoMyservice()}>Sign in</Button>}></LoggedOutHeader>\n </>\n )\n}\n","/**\n * @licstart The following is the entire license notice for the\n * JavaScript code in this page\n *\n * Copyright 2023 Mozilla Foundation\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * @licend The above is the entire license notice for the\n * JavaScript code in this page\n */\n\n/******/ // The require scope\n/******/ var __webpack_require__ = {};\n/******/ \n/************************************************************************/\n/******/ /* webpack/runtime/define property getters */\n/******/ (() => {\n/******/ \t// define getter functions for harmony exports\n/******/ \t__webpack_require__.d = (exports, definition) => {\n/******/ \t\tfor(var key in definition) {\n/******/ \t\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n/******/ \t\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n/******/ \t\t\t}\n/******/ \t\t}\n/******/ \t};\n/******/ })();\n/******/ \n/******/ /* webpack/runtime/hasOwnProperty shorthand */\n/******/ (() => {\n/******/ \t__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))\n/******/ })();\n/******/ \n/************************************************************************/\nvar __webpack_exports__ = globalThis.pdfjsLib = {};\n\n// EXPORTS\n__webpack_require__.d(__webpack_exports__, {\n AbortException: () => (/* reexport */ AbortException),\n AnnotationEditorLayer: () => (/* reexport */ AnnotationEditorLayer),\n AnnotationEditorParamsType: () => (/* reexport */ AnnotationEditorParamsType),\n AnnotationEditorType: () => (/* reexport */ AnnotationEditorType),\n AnnotationEditorUIManager: () => (/* reexport */ AnnotationEditorUIManager),\n AnnotationLayer: () => (/* reexport */ AnnotationLayer),\n AnnotationMode: () => (/* reexport */ AnnotationMode),\n CMapCompressionType: () => (/* reexport */ CMapCompressionType),\n ColorPicker: () => (/* reexport */ ColorPicker),\n DOMSVGFactory: () => (/* reexport */ DOMSVGFactory),\n DrawLayer: () => (/* reexport */ DrawLayer),\n FeatureTest: () => (/* reexport */ util_FeatureTest),\n GlobalWorkerOptions: () => (/* reexport */ GlobalWorkerOptions),\n ImageKind: () => (/* reexport */ util_ImageKind),\n InvalidPDFException: () => (/* reexport */ InvalidPDFException),\n MissingPDFException: () => (/* reexport */ MissingPDFException),\n OPS: () => (/* reexport */ OPS),\n Outliner: () => (/* reexport */ Outliner),\n PDFDataRangeTransport: () => (/* reexport */ PDFDataRangeTransport),\n PDFDateString: () => (/* reexport */ PDFDateString),\n PDFWorker: () => (/* reexport */ PDFWorker),\n PasswordResponses: () => (/* reexport */ PasswordResponses),\n PermissionFlag: () => (/* reexport */ PermissionFlag),\n PixelsPerInch: () => (/* reexport */ PixelsPerInch),\n RenderingCancelledException: () => (/* reexport */ RenderingCancelledException),\n TextLayer: () => (/* reexport */ TextLayer),\n UnexpectedResponseException: () => (/* reexport */ UnexpectedResponseException),\n Util: () => (/* reexport */ Util),\n VerbosityLevel: () => (/* reexport */ VerbosityLevel),\n XfaLayer: () => (/* reexport */ XfaLayer),\n build: () => (/* reexport */ build),\n createValidAbsoluteUrl: () => (/* reexport */ createValidAbsoluteUrl),\n fetchData: () => (/* reexport */ fetchData),\n getDocument: () => (/* reexport */ getDocument),\n getFilenameFromUrl: () => (/* reexport */ getFilenameFromUrl),\n getPdfFilenameFromUrl: () => (/* reexport */ getPdfFilenameFromUrl),\n getXfaPageViewport: () => (/* reexport */ getXfaPageViewport),\n isDataScheme: () => (/* reexport */ isDataScheme),\n isPdfFile: () => (/* reexport */ isPdfFile),\n noContextMenu: () => (/* reexport */ noContextMenu),\n normalizeUnicode: () => (/* reexport */ normalizeUnicode),\n renderTextLayer: () => (/* reexport */ renderTextLayer),\n setLayerDimensions: () => (/* reexport */ setLayerDimensions),\n shadow: () => (/* reexport */ shadow),\n updateTextLayer: () => (/* reexport */ updateTextLayer),\n version: () => (/* reexport */ version)\n});\n\n;// CONCATENATED MODULE: ./src/shared/util.js\nconst isNodeJS = typeof process === \"object\" && process + \"\" === \"[object process]\" && !process.versions.nw && !(process.versions.electron && process.type && process.type !== \"browser\");\nconst IDENTITY_MATRIX = [1, 0, 0, 1, 0, 0];\nconst FONT_IDENTITY_MATRIX = [0.001, 0, 0, 0.001, 0, 0];\nconst MAX_IMAGE_SIZE_TO_CACHE = 10e6;\nconst LINE_FACTOR = 1.35;\nconst LINE_DESCENT_FACTOR = 0.35;\nconst BASELINE_FACTOR = LINE_DESCENT_FACTOR / LINE_FACTOR;\nconst RenderingIntentFlag = {\n ANY: 0x01,\n DISPLAY: 0x02,\n PRINT: 0x04,\n SAVE: 0x08,\n ANNOTATIONS_FORMS: 0x10,\n ANNOTATIONS_STORAGE: 0x20,\n ANNOTATIONS_DISABLE: 0x40,\n OPLIST: 0x100\n};\nconst AnnotationMode = {\n DISABLE: 0,\n ENABLE: 1,\n ENABLE_FORMS: 2,\n ENABLE_STORAGE: 3\n};\nconst AnnotationEditorPrefix = \"pdfjs_internal_editor_\";\nconst AnnotationEditorType = {\n DISABLE: -1,\n NONE: 0,\n FREETEXT: 3,\n HIGHLIGHT: 9,\n STAMP: 13,\n INK: 15\n};\nconst AnnotationEditorParamsType = {\n RESIZE: 1,\n CREATE: 2,\n FREETEXT_SIZE: 11,\n FREETEXT_COLOR: 12,\n FREETEXT_OPACITY: 13,\n INK_COLOR: 21,\n INK_THICKNESS: 22,\n INK_OPACITY: 23,\n HIGHLIGHT_COLOR: 31,\n HIGHLIGHT_DEFAULT_COLOR: 32,\n HIGHLIGHT_THICKNESS: 33,\n HIGHLIGHT_FREE: 34,\n HIGHLIGHT_SHOW_ALL: 35\n};\nconst PermissionFlag = {\n PRINT: 0x04,\n MODIFY_CONTENTS: 0x08,\n COPY: 0x10,\n MODIFY_ANNOTATIONS: 0x20,\n FILL_INTERACTIVE_FORMS: 0x100,\n COPY_FOR_ACCESSIBILITY: 0x200,\n ASSEMBLE: 0x400,\n PRINT_HIGH_QUALITY: 0x800\n};\nconst TextRenderingMode = {\n FILL: 0,\n STROKE: 1,\n FILL_STROKE: 2,\n INVISIBLE: 3,\n FILL_ADD_TO_PATH: 4,\n STROKE_ADD_TO_PATH: 5,\n FILL_STROKE_ADD_TO_PATH: 6,\n ADD_TO_PATH: 7,\n FILL_STROKE_MASK: 3,\n ADD_TO_PATH_FLAG: 4\n};\nconst util_ImageKind = {\n GRAYSCALE_1BPP: 1,\n RGB_24BPP: 2,\n RGBA_32BPP: 3\n};\nconst AnnotationType = {\n TEXT: 1,\n LINK: 2,\n FREETEXT: 3,\n LINE: 4,\n SQUARE: 5,\n CIRCLE: 6,\n POLYGON: 7,\n POLYLINE: 8,\n HIGHLIGHT: 9,\n UNDERLINE: 10,\n SQUIGGLY: 11,\n STRIKEOUT: 12,\n STAMP: 13,\n CARET: 14,\n INK: 15,\n POPUP: 16,\n FILEATTACHMENT: 17,\n SOUND: 18,\n MOVIE: 19,\n WIDGET: 20,\n SCREEN: 21,\n PRINTERMARK: 22,\n TRAPNET: 23,\n WATERMARK: 24,\n THREED: 25,\n REDACT: 26\n};\nconst AnnotationReplyType = {\n GROUP: \"Group\",\n REPLY: \"R\"\n};\nconst AnnotationFlag = {\n INVISIBLE: 0x01,\n HIDDEN: 0x02,\n PRINT: 0x04,\n NOZOOM: 0x08,\n NOROTATE: 0x10,\n NOVIEW: 0x20,\n READONLY: 0x40,\n LOCKED: 0x80,\n TOGGLENOVIEW: 0x100,\n LOCKEDCONTENTS: 0x200\n};\nconst AnnotationFieldFlag = {\n READONLY: 0x0000001,\n REQUIRED: 0x0000002,\n NOEXPORT: 0x0000004,\n MULTILINE: 0x0001000,\n PASSWORD: 0x0002000,\n NOTOGGLETOOFF: 0x0004000,\n RADIO: 0x0008000,\n PUSHBUTTON: 0x0010000,\n COMBO: 0x0020000,\n EDIT: 0x0040000,\n SORT: 0x0080000,\n FILESELECT: 0x0100000,\n MULTISELECT: 0x0200000,\n DONOTSPELLCHECK: 0x0400000,\n DONOTSCROLL: 0x0800000,\n COMB: 0x1000000,\n RICHTEXT: 0x2000000,\n RADIOSINUNISON: 0x2000000,\n COMMITONSELCHANGE: 0x4000000\n};\nconst AnnotationBorderStyleType = {\n SOLID: 1,\n DASHED: 2,\n BEVELED: 3,\n INSET: 4,\n UNDERLINE: 5\n};\nconst AnnotationActionEventType = {\n E: \"Mouse Enter\",\n X: \"Mouse Exit\",\n D: \"Mouse Down\",\n U: \"Mouse Up\",\n Fo: \"Focus\",\n Bl: \"Blur\",\n PO: \"PageOpen\",\n PC: \"PageClose\",\n PV: \"PageVisible\",\n PI: \"PageInvisible\",\n K: \"Keystroke\",\n F: \"Format\",\n V: \"Validate\",\n C: \"Calculate\"\n};\nconst DocumentActionEventType = {\n WC: \"WillClose\",\n WS: \"WillSave\",\n DS: \"DidSave\",\n WP: \"WillPrint\",\n DP: \"DidPrint\"\n};\nconst PageActionEventType = {\n O: \"PageOpen\",\n C: \"PageClose\"\n};\nconst VerbosityLevel = {\n ERRORS: 0,\n WARNINGS: 1,\n INFOS: 5\n};\nconst CMapCompressionType = {\n NONE: 0,\n BINARY: 1\n};\nconst OPS = {\n dependency: 1,\n setLineWidth: 2,\n setLineCap: 3,\n setLineJoin: 4,\n setMiterLimit: 5,\n setDash: 6,\n setRenderingIntent: 7,\n setFlatness: 8,\n setGState: 9,\n save: 10,\n restore: 11,\n transform: 12,\n moveTo: 13,\n lineTo: 14,\n curveTo: 15,\n curveTo2: 16,\n curveTo3: 17,\n closePath: 18,\n rectangle: 19,\n stroke: 20,\n closeStroke: 21,\n fill: 22,\n eoFill: 23,\n fillStroke: 24,\n eoFillStroke: 25,\n closeFillStroke: 26,\n closeEOFillStroke: 27,\n endPath: 28,\n clip: 29,\n eoClip: 30,\n beginText: 31,\n endText: 32,\n setCharSpacing: 33,\n setWordSpacing: 34,\n setHScale: 35,\n setLeading: 36,\n setFont: 37,\n setTextRenderingMode: 38,\n setTextRise: 39,\n moveText: 40,\n setLeadingMoveText: 41,\n setTextMatrix: 42,\n nextLine: 43,\n showText: 44,\n showSpacedText: 45,\n nextLineShowText: 46,\n nextLineSetSpacingShowText: 47,\n setCharWidth: 48,\n setCharWidthAndBounds: 49,\n setStrokeColorSpace: 50,\n setFillColorSpace: 51,\n setStrokeColor: 52,\n setStrokeColorN: 53,\n setFillColor: 54,\n setFillColorN: 55,\n setStrokeGray: 56,\n setFillGray: 57,\n setStrokeRGBColor: 58,\n setFillRGBColor: 59,\n setStrokeCMYKColor: 60,\n setFillCMYKColor: 61,\n shadingFill: 62,\n beginInlineImage: 63,\n beginImageData: 64,\n endInlineImage: 65,\n paintXObject: 66,\n markPoint: 67,\n markPointProps: 68,\n beginMarkedContent: 69,\n beginMarkedContentProps: 70,\n endMarkedContent: 71,\n beginCompat: 72,\n endCompat: 73,\n paintFormXObjectBegin: 74,\n paintFormXObjectEnd: 75,\n beginGroup: 76,\n endGroup: 77,\n beginAnnotation: 80,\n endAnnotation: 81,\n paintImageMaskXObject: 83,\n paintImageMaskXObjectGroup: 84,\n paintImageXObject: 85,\n paintInlineImageXObject: 86,\n paintInlineImageXObjectGroup: 87,\n paintImageXObjectRepeat: 88,\n paintImageMaskXObjectRepeat: 89,\n paintSolidColorImageMask: 90,\n constructPath: 91\n};\nconst PasswordResponses = {\n NEED_PASSWORD: 1,\n INCORRECT_PASSWORD: 2\n};\nlet verbosity = VerbosityLevel.WARNINGS;\nfunction setVerbosityLevel(level) {\n if (Number.isInteger(level)) {\n verbosity = level;\n }\n}\nfunction getVerbosityLevel() {\n return verbosity;\n}\nfunction info(msg) {\n if (verbosity >= VerbosityLevel.INFOS) {\n console.log(`Info: ${msg}`);\n }\n}\nfunction warn(msg) {\n if (verbosity >= VerbosityLevel.WARNINGS) {\n console.log(`Warning: ${msg}`);\n }\n}\nfunction unreachable(msg) {\n throw new Error(msg);\n}\nfunction assert(cond, msg) {\n if (!cond) {\n unreachable(msg);\n }\n}\nfunction _isValidProtocol(url) {\n switch (url?.protocol) {\n case \"http:\":\n case \"https:\":\n case \"ftp:\":\n case \"mailto:\":\n case \"tel:\":\n return true;\n default:\n return false;\n }\n}\nfunction createValidAbsoluteUrl(url, baseUrl = null, options = null) {\n if (!url) {\n return null;\n }\n try {\n if (options && typeof url === \"string\") {\n if (options.addDefaultProtocol && url.startsWith(\"www.\")) {\n const dots = url.match(/\\./g);\n if (dots?.length >= 2) {\n url = `http://${url}`;\n }\n }\n if (options.tryConvertEncoding) {\n try {\n url = stringToUTF8String(url);\n } catch {}\n }\n }\n const absoluteUrl = baseUrl ? new URL(url, baseUrl) : new URL(url);\n if (_isValidProtocol(absoluteUrl)) {\n return absoluteUrl;\n }\n } catch {}\n return null;\n}\nfunction shadow(obj, prop, value, nonSerializable = false) {\n Object.defineProperty(obj, prop, {\n value,\n enumerable: !nonSerializable,\n configurable: true,\n writable: false\n });\n return value;\n}\nconst BaseException = function BaseExceptionClosure() {\n function BaseException(message, name) {\n if (this.constructor === BaseException) {\n unreachable(\"Cannot initialize BaseException.\");\n }\n this.message = message;\n this.name = name;\n }\n BaseException.prototype = new Error();\n BaseException.constructor = BaseException;\n return BaseException;\n}();\nclass PasswordException extends BaseException {\n constructor(msg, code) {\n super(msg, \"PasswordException\");\n this.code = code;\n }\n}\nclass UnknownErrorException extends BaseException {\n constructor(msg, details) {\n super(msg, \"UnknownErrorException\");\n this.details = details;\n }\n}\nclass InvalidPDFException extends BaseException {\n constructor(msg) {\n super(msg, \"InvalidPDFException\");\n }\n}\nclass MissingPDFException extends BaseException {\n constructor(msg) {\n super(msg, \"MissingPDFException\");\n }\n}\nclass UnexpectedResponseException extends BaseException {\n constructor(msg, status) {\n super(msg, \"UnexpectedResponseException\");\n this.status = status;\n }\n}\nclass FormatError extends BaseException {\n constructor(msg) {\n super(msg, \"FormatError\");\n }\n}\nclass AbortException extends BaseException {\n constructor(msg) {\n super(msg, \"AbortException\");\n }\n}\nfunction bytesToString(bytes) {\n if (typeof bytes !== \"object\" || bytes?.length === undefined) {\n unreachable(\"Invalid argument for bytesToString\");\n }\n const length = bytes.length;\n const MAX_ARGUMENT_COUNT = 8192;\n if (length < MAX_ARGUMENT_COUNT) {\n return String.fromCharCode.apply(null, bytes);\n }\n const strBuf = [];\n for (let i = 0; i < length; i += MAX_ARGUMENT_COUNT) {\n const chunkEnd = Math.min(i + MAX_ARGUMENT_COUNT, length);\n const chunk = bytes.subarray(i, chunkEnd);\n strBuf.push(String.fromCharCode.apply(null, chunk));\n }\n return strBuf.join(\"\");\n}\nfunction stringToBytes(str) {\n if (typeof str !== \"string\") {\n unreachable(\"Invalid argument for stringToBytes\");\n }\n const length = str.length;\n const bytes = new Uint8Array(length);\n for (let i = 0; i < length; ++i) {\n bytes[i] = str.charCodeAt(i) & 0xff;\n }\n return bytes;\n}\nfunction string32(value) {\n return String.fromCharCode(value >> 24 & 0xff, value >> 16 & 0xff, value >> 8 & 0xff, value & 0xff);\n}\nfunction objectSize(obj) {\n return Object.keys(obj).length;\n}\nfunction objectFromMap(map) {\n const obj = Object.create(null);\n for (const [key, value] of map) {\n obj[key] = value;\n }\n return obj;\n}\nfunction isLittleEndian() {\n const buffer8 = new Uint8Array(4);\n buffer8[0] = 1;\n const view32 = new Uint32Array(buffer8.buffer, 0, 1);\n return view32[0] === 1;\n}\nfunction isEvalSupported() {\n try {\n new Function(\"\");\n return true;\n } catch {\n return false;\n }\n}\nclass util_FeatureTest {\n static get isLittleEndian() {\n return shadow(this, \"isLittleEndian\", isLittleEndian());\n }\n static get isEvalSupported() {\n return shadow(this, \"isEvalSupported\", isEvalSupported());\n }\n static get isOffscreenCanvasSupported() {\n return shadow(this, \"isOffscreenCanvasSupported\", typeof OffscreenCanvas !== \"undefined\");\n }\n static get platform() {\n if (typeof navigator !== \"undefined\" && typeof navigator?.platform === \"string\") {\n return shadow(this, \"platform\", {\n isMac: navigator.platform.includes(\"Mac\")\n });\n }\n return shadow(this, \"platform\", {\n isMac: false\n });\n }\n static get isCSSRoundSupported() {\n return shadow(this, \"isCSSRoundSupported\", globalThis.CSS?.supports?.(\"width: round(1.5px, 1px)\"));\n }\n}\nconst hexNumbers = Array.from(Array(256).keys(), n => n.toString(16).padStart(2, \"0\"));\nclass Util {\n static makeHexColor(r, g, b) {\n return `#${hexNumbers[r]}${hexNumbers[g]}${hexNumbers[b]}`;\n }\n static scaleMinMax(transform, minMax) {\n let temp;\n if (transform[0]) {\n if (transform[0] < 0) {\n temp = minMax[0];\n minMax[0] = minMax[2];\n minMax[2] = temp;\n }\n minMax[0] *= transform[0];\n minMax[2] *= transform[0];\n if (transform[3] < 0) {\n temp = minMax[1];\n minMax[1] = minMax[3];\n minMax[3] = temp;\n }\n minMax[1] *= transform[3];\n minMax[3] *= transform[3];\n } else {\n temp = minMax[0];\n minMax[0] = minMax[1];\n minMax[1] = temp;\n temp = minMax[2];\n minMax[2] = minMax[3];\n minMax[3] = temp;\n if (transform[1] < 0) {\n temp = minMax[1];\n minMax[1] = minMax[3];\n minMax[3] = temp;\n }\n minMax[1] *= transform[1];\n minMax[3] *= transform[1];\n if (transform[2] < 0) {\n temp = minMax[0];\n minMax[0] = minMax[2];\n minMax[2] = temp;\n }\n minMax[0] *= transform[2];\n minMax[2] *= transform[2];\n }\n minMax[0] += transform[4];\n minMax[1] += transform[5];\n minMax[2] += transform[4];\n minMax[3] += transform[5];\n }\n static transform(m1, m2) {\n return [m1[0] * m2[0] + m1[2] * m2[1], m1[1] * m2[0] + m1[3] * m2[1], m1[0] * m2[2] + m1[2] * m2[3], m1[1] * m2[2] + m1[3] * m2[3], m1[0] * m2[4] + m1[2] * m2[5] + m1[4], m1[1] * m2[4] + m1[3] * m2[5] + m1[5]];\n }\n static applyTransform(p, m) {\n const xt = p[0] * m[0] + p[1] * m[2] + m[4];\n const yt = p[0] * m[1] + p[1] * m[3] + m[5];\n return [xt, yt];\n }\n static applyInverseTransform(p, m) {\n const d = m[0] * m[3] - m[1] * m[2];\n const xt = (p[0] * m[3] - p[1] * m[2] + m[2] * m[5] - m[4] * m[3]) / d;\n const yt = (-p[0] * m[1] + p[1] * m[0] + m[4] * m[1] - m[5] * m[0]) / d;\n return [xt, yt];\n }\n static getAxialAlignedBoundingBox(r, m) {\n const p1 = this.applyTransform(r, m);\n const p2 = this.applyTransform(r.slice(2, 4), m);\n const p3 = this.applyTransform([r[0], r[3]], m);\n const p4 = this.applyTransform([r[2], r[1]], m);\n return [Math.min(p1[0], p2[0], p3[0], p4[0]), Math.min(p1[1], p2[1], p3[1], p4[1]), Math.max(p1[0], p2[0], p3[0], p4[0]), Math.max(p1[1], p2[1], p3[1], p4[1])];\n }\n static inverseTransform(m) {\n const d = m[0] * m[3] - m[1] * m[2];\n return [m[3] / d, -m[1] / d, -m[2] / d, m[0] / d, (m[2] * m[5] - m[4] * m[3]) / d, (m[4] * m[1] - m[5] * m[0]) / d];\n }\n static singularValueDecompose2dScale(m) {\n const transpose = [m[0], m[2], m[1], m[3]];\n const a = m[0] * transpose[0] + m[1] * transpose[2];\n const b = m[0] * transpose[1] + m[1] * transpose[3];\n const c = m[2] * transpose[0] + m[3] * transpose[2];\n const d = m[2] * transpose[1] + m[3] * transpose[3];\n const first = (a + d) / 2;\n const second = Math.sqrt((a + d) ** 2 - 4 * (a * d - c * b)) / 2;\n const sx = first + second || 1;\n const sy = first - second || 1;\n return [Math.sqrt(sx), Math.sqrt(sy)];\n }\n static normalizeRect(rect) {\n const r = rect.slice(0);\n if (rect[0] > rect[2]) {\n r[0] = rect[2];\n r[2] = rect[0];\n }\n if (rect[1] > rect[3]) {\n r[1] = rect[3];\n r[3] = rect[1];\n }\n return r;\n }\n static intersect(rect1, rect2) {\n const xLow = Math.max(Math.min(rect1[0], rect1[2]), Math.min(rect2[0], rect2[2]));\n const xHigh = Math.min(Math.max(rect1[0], rect1[2]), Math.max(rect2[0], rect2[2]));\n if (xLow > xHigh) {\n return null;\n }\n const yLow = Math.max(Math.min(rect1[1], rect1[3]), Math.min(rect2[1], rect2[3]));\n const yHigh = Math.min(Math.max(rect1[1], rect1[3]), Math.max(rect2[1], rect2[3]));\n if (yLow > yHigh) {\n return null;\n }\n return [xLow, yLow, xHigh, yHigh];\n }\n static #getExtremumOnCurve(x0, x1, x2, x3, y0, y1, y2, y3, t, minMax) {\n if (t <= 0 || t >= 1) {\n return;\n }\n const mt = 1 - t;\n const tt = t * t;\n const ttt = tt * t;\n const x = mt * (mt * (mt * x0 + 3 * t * x1) + 3 * tt * x2) + ttt * x3;\n const y = mt * (mt * (mt * y0 + 3 * t * y1) + 3 * tt * y2) + ttt * y3;\n minMax[0] = Math.min(minMax[0], x);\n minMax[1] = Math.min(minMax[1], y);\n minMax[2] = Math.max(minMax[2], x);\n minMax[3] = Math.max(minMax[3], y);\n }\n static #getExtremum(x0, x1, x2, x3, y0, y1, y2, y3, a, b, c, minMax) {\n if (Math.abs(a) < 1e-12) {\n if (Math.abs(b) >= 1e-12) {\n this.#getExtremumOnCurve(x0, x1, x2, x3, y0, y1, y2, y3, -c / b, minMax);\n }\n return;\n }\n const delta = b ** 2 - 4 * c * a;\n if (delta < 0) {\n return;\n }\n const sqrtDelta = Math.sqrt(delta);\n const a2 = 2 * a;\n this.#getExtremumOnCurve(x0, x1, x2, x3, y0, y1, y2, y3, (-b + sqrtDelta) / a2, minMax);\n this.#getExtremumOnCurve(x0, x1, x2, x3, y0, y1, y2, y3, (-b - sqrtDelta) / a2, minMax);\n }\n static bezierBoundingBox(x0, y0, x1, y1, x2, y2, x3, y3, minMax) {\n if (minMax) {\n minMax[0] = Math.min(minMax[0], x0, x3);\n minMax[1] = Math.min(minMax[1], y0, y3);\n minMax[2] = Math.max(minMax[2], x0, x3);\n minMax[3] = Math.max(minMax[3], y0, y3);\n } else {\n minMax = [Math.min(x0, x3), Math.min(y0, y3), Math.max(x0, x3), Math.max(y0, y3)];\n }\n this.#getExtremum(x0, x1, x2, x3, y0, y1, y2, y3, 3 * (-x0 + 3 * (x1 - x2) + x3), 6 * (x0 - 2 * x1 + x2), 3 * (x1 - x0), minMax);\n this.#getExtremum(x0, x1, x2, x3, y0, y1, y2, y3, 3 * (-y0 + 3 * (y1 - y2) + y3), 6 * (y0 - 2 * y1 + y2), 3 * (y1 - y0), minMax);\n return minMax;\n }\n}\nconst PDFStringTranslateTable = (/* unused pure expression or super */ null && ([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x2d8, 0x2c7, 0x2c6, 0x2d9, 0x2dd, 0x2db, 0x2da, 0x2dc, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x2022, 0x2020, 0x2021, 0x2026, 0x2014, 0x2013, 0x192, 0x2044, 0x2039, 0x203a, 0x2212, 0x2030, 0x201e, 0x201c, 0x201d, 0x2018, 0x2019, 0x201a, 0x2122, 0xfb01, 0xfb02, 0x141, 0x152, 0x160, 0x178, 0x17d, 0x131, 0x142, 0x153, 0x161, 0x17e, 0, 0x20ac]));\nfunction stringToPDFString(str) {\n if (str[0] >= \"\\xEF\") {\n let encoding;\n if (str[0] === \"\\xFE\" && str[1] === \"\\xFF\") {\n encoding = \"utf-16be\";\n if (str.length % 2 === 1) {\n str = str.slice(0, -1);\n }\n } else if (str[0] === \"\\xFF\" && str[1] === \"\\xFE\") {\n encoding = \"utf-16le\";\n if (str.length % 2 === 1) {\n str = str.slice(0, -1);\n }\n } else if (str[0] === \"\\xEF\" && str[1] === \"\\xBB\" && str[2] === \"\\xBF\") {\n encoding = \"utf-8\";\n }\n if (encoding) {\n try {\n const decoder = new TextDecoder(encoding, {\n fatal: true\n });\n const buffer = stringToBytes(str);\n const decoded = decoder.decode(buffer);\n if (!decoded.includes(\"\\x1b\")) {\n return decoded;\n }\n return decoded.replaceAll(/\\x1b[^\\x1b]*(?:\\x1b|$)/g, \"\");\n } catch (ex) {\n warn(`stringToPDFString: \"${ex}\".`);\n }\n }\n }\n const strBuf = [];\n for (let i = 0, ii = str.length; i < ii; i++) {\n const charCode = str.charCodeAt(i);\n if (charCode === 0x1b) {\n while (++i < ii && str.charCodeAt(i) !== 0x1b) {}\n continue;\n }\n const code = PDFStringTranslateTable[charCode];\n strBuf.push(code ? String.fromCharCode(code) : str.charAt(i));\n }\n return strBuf.join(\"\");\n}\nfunction stringToUTF8String(str) {\n return decodeURIComponent(escape(str));\n}\nfunction utf8StringToString(str) {\n return unescape(encodeURIComponent(str));\n}\nfunction isArrayEqual(arr1, arr2) {\n if (arr1.length !== arr2.length) {\n return false;\n }\n for (let i = 0, ii = arr1.length; i < ii; i++) {\n if (arr1[i] !== arr2[i]) {\n return false;\n }\n }\n return true;\n}\nfunction getModificationDate(date = new Date()) {\n const buffer = [date.getUTCFullYear().toString(), (date.getUTCMonth() + 1).toString().padStart(2, \"0\"), date.getUTCDate().toString().padStart(2, \"0\"), date.getUTCHours().toString().padStart(2, \"0\"), date.getUTCMinutes().toString().padStart(2, \"0\"), date.getUTCSeconds().toString().padStart(2, \"0\")];\n return buffer.join(\"\");\n}\nlet NormalizeRegex = null;\nlet NormalizationMap = null;\nfunction normalizeUnicode(str) {\n if (!NormalizeRegex) {\n NormalizeRegex = /([\\u00a0\\u00b5\\u037e\\u0eb3\\u2000-\\u200a\\u202f\\u2126\\ufb00-\\ufb04\\ufb06\\ufb20-\\ufb36\\ufb38-\\ufb3c\\ufb3e\\ufb40-\\ufb41\\ufb43-\\ufb44\\ufb46-\\ufba1\\ufba4-\\ufba9\\ufbae-\\ufbb1\\ufbd3-\\ufbdc\\ufbde-\\ufbe7\\ufbea-\\ufbf8\\ufbfc-\\ufbfd\\ufc00-\\ufc5d\\ufc64-\\ufcf1\\ufcf5-\\ufd3d\\ufd88\\ufdf4\\ufdfa-\\ufdfb\\ufe71\\ufe77\\ufe79\\ufe7b\\ufe7d]+)|(\\ufb05+)/gu;\n NormalizationMap = new Map([[\"ſt\", \"ſt\"]]);\n }\n return str.replaceAll(NormalizeRegex, (_, p1, p2) => p1 ? p1.normalize(\"NFKC\") : NormalizationMap.get(p2));\n}\nfunction getUuid() {\n if (typeof crypto !== \"undefined\" && typeof crypto?.randomUUID === \"function\") {\n return crypto.randomUUID();\n }\n const buf = new Uint8Array(32);\n if (typeof crypto !== \"undefined\" && typeof crypto?.getRandomValues === \"function\") {\n crypto.getRandomValues(buf);\n } else {\n for (let i = 0; i < 32; i++) {\n buf[i] = Math.floor(Math.random() * 255);\n }\n }\n return bytesToString(buf);\n}\nconst AnnotationPrefix = \"pdfjs_internal_id_\";\nconst FontRenderOps = {\n BEZIER_CURVE_TO: 0,\n MOVE_TO: 1,\n LINE_TO: 2,\n QUADRATIC_CURVE_TO: 3,\n RESTORE: 4,\n SAVE: 5,\n SCALE: 6,\n TRANSFORM: 7,\n TRANSLATE: 8\n};\n\n;// CONCATENATED MODULE: ./src/display/base_factory.js\n\nclass BaseFilterFactory {\n constructor() {\n if (this.constructor === BaseFilterFactory) {\n unreachable(\"Cannot initialize BaseFilterFactory.\");\n }\n }\n addFilter(maps) {\n return \"none\";\n }\n addHCMFilter(fgColor, bgColor) {\n return \"none\";\n }\n addAlphaFilter(map) {\n return \"none\";\n }\n addLuminosityFilter(map) {\n return \"none\";\n }\n addHighlightHCMFilter(filterName, fgColor, bgColor, newFgColor, newBgColor) {\n return \"none\";\n }\n destroy(keepHCM = false) {}\n}\nclass BaseCanvasFactory {\n #enableHWA = false;\n constructor({\n enableHWA = false\n } = {}) {\n if (this.constructor === BaseCanvasFactory) {\n unreachable(\"Cannot initialize BaseCanvasFactory.\");\n }\n this.#enableHWA = enableHWA;\n }\n create(width, height) {\n if (width <= 0 || height <= 0) {\n throw new Error(\"Invalid canvas size\");\n }\n const canvas = this._createCanvas(width, height);\n return {\n canvas,\n context: canvas.getContext(\"2d\", {\n willReadFrequently: !this.#enableHWA\n })\n };\n }\n reset(canvasAndContext, width, height) {\n if (!canvasAndContext.canvas) {\n throw new Error(\"Canvas is not specified\");\n }\n if (width <= 0 || height <= 0) {\n throw new Error(\"Invalid canvas size\");\n }\n canvasAndContext.canvas.width = width;\n canvasAndContext.canvas.height = height;\n }\n destroy(canvasAndContext) {\n if (!canvasAndContext.canvas) {\n throw new Error(\"Canvas is not specified\");\n }\n canvasAndContext.canvas.width = 0;\n canvasAndContext.canvas.height = 0;\n canvasAndContext.canvas = null;\n canvasAndContext.context = null;\n }\n _createCanvas(width, height) {\n unreachable(\"Abstract method `_createCanvas` called.\");\n }\n}\nclass BaseCMapReaderFactory {\n constructor({\n baseUrl = null,\n isCompressed = true\n }) {\n if (this.constructor === BaseCMapReaderFactory) {\n unreachable(\"Cannot initialize BaseCMapReaderFactory.\");\n }\n this.baseUrl = baseUrl;\n this.isCompressed = isCompressed;\n }\n async fetch({\n name\n }) {\n if (!this.baseUrl) {\n throw new Error('The CMap \"baseUrl\" parameter must be specified, ensure that ' + 'the \"cMapUrl\" and \"cMapPacked\" API parameters are provided.');\n }\n if (!name) {\n throw new Error(\"CMap name must be specified.\");\n }\n const url = this.baseUrl + name + (this.isCompressed ? \".bcmap\" : \"\");\n const compressionType = this.isCompressed ? CMapCompressionType.BINARY : CMapCompressionType.NONE;\n return this._fetchData(url, compressionType).catch(reason => {\n throw new Error(`Unable to load ${this.isCompressed ? \"binary \" : \"\"}CMap at: ${url}`);\n });\n }\n _fetchData(url, compressionType) {\n unreachable(\"Abstract method `_fetchData` called.\");\n }\n}\nclass BaseStandardFontDataFactory {\n constructor({\n baseUrl = null\n }) {\n if (this.constructor === BaseStandardFontDataFactory) {\n unreachable(\"Cannot initialize BaseStandardFontDataFactory.\");\n }\n this.baseUrl = baseUrl;\n }\n async fetch({\n filename\n }) {\n if (!this.baseUrl) {\n throw new Error('The standard font \"baseUrl\" parameter must be specified, ensure that ' + 'the \"standardFontDataUrl\" API parameter is provided.');\n }\n if (!filename) {\n throw new Error(\"Font filename must be specified.\");\n }\n const url = `${this.baseUrl}${filename}`;\n return this._fetchData(url).catch(reason => {\n throw new Error(`Unable to load font data at: ${url}`);\n });\n }\n _fetchData(url) {\n unreachable(\"Abstract method `_fetchData` called.\");\n }\n}\nclass BaseSVGFactory {\n constructor() {\n if (this.constructor === BaseSVGFactory) {\n unreachable(\"Cannot initialize BaseSVGFactory.\");\n }\n }\n create(width, height, skipDimensions = false) {\n if (width <= 0 || height <= 0) {\n throw new Error(\"Invalid SVG dimensions\");\n }\n const svg = this._createSVG(\"svg:svg\");\n svg.setAttribute(\"version\", \"1.1\");\n if (!skipDimensions) {\n svg.setAttribute(\"width\", `${width}px`);\n svg.setAttribute(\"height\", `${height}px`);\n }\n svg.setAttribute(\"preserveAspectRatio\", \"none\");\n svg.setAttribute(\"viewBox\", `0 0 ${width} ${height}`);\n return svg;\n }\n createElement(type) {\n if (typeof type !== \"string\") {\n throw new Error(\"Invalid SVG element type\");\n }\n return this._createSVG(type);\n }\n _createSVG(type) {\n unreachable(\"Abstract method `_createSVG` called.\");\n }\n}\n\n;// CONCATENATED MODULE: ./src/display/display_utils.js\n\n\nconst SVG_NS = \"http://www.w3.org/2000/svg\";\nclass PixelsPerInch {\n static CSS = 96.0;\n static PDF = 72.0;\n static PDF_TO_CSS_UNITS = this.CSS / this.PDF;\n}\nclass DOMFilterFactory extends BaseFilterFactory {\n #_cache;\n #_defs;\n #docId;\n #document;\n #_hcmCache;\n #id = 0;\n constructor({\n docId,\n ownerDocument = globalThis.document\n } = {}) {\n super();\n this.#docId = docId;\n this.#document = ownerDocument;\n }\n get #cache() {\n return this.#_cache ||= new Map();\n }\n get #hcmCache() {\n return this.#_hcmCache ||= new Map();\n }\n get #defs() {\n if (!this.#_defs) {\n const div = this.#document.createElement(\"div\");\n const {\n style\n } = div;\n style.visibility = \"hidden\";\n style.contain = \"strict\";\n style.width = style.height = 0;\n style.position = \"absolute\";\n style.top = style.left = 0;\n style.zIndex = -1;\n const svg = this.#document.createElementNS(SVG_NS, \"svg\");\n svg.setAttribute(\"width\", 0);\n svg.setAttribute(\"height\", 0);\n this.#_defs = this.#document.createElementNS(SVG_NS, \"defs\");\n div.append(svg);\n svg.append(this.#_defs);\n this.#document.body.append(div);\n }\n return this.#_defs;\n }\n #createTables(maps) {\n if (maps.length === 1) {\n const mapR = maps[0];\n const buffer = new Array(256);\n for (let i = 0; i < 256; i++) {\n buffer[i] = mapR[i] / 255;\n }\n const table = buffer.join(\",\");\n return [table, table, table];\n }\n const [mapR, mapG, mapB] = maps;\n const bufferR = new Array(256);\n const bufferG = new Array(256);\n const bufferB = new Array(256);\n for (let i = 0; i < 256; i++) {\n bufferR[i] = mapR[i] / 255;\n bufferG[i] = mapG[i] / 255;\n bufferB[i] = mapB[i] / 255;\n }\n return [bufferR.join(\",\"), bufferG.join(\",\"), bufferB.join(\",\")];\n }\n addFilter(maps) {\n if (!maps) {\n return \"none\";\n }\n let value = this.#cache.get(maps);\n if (value) {\n return value;\n }\n const [tableR, tableG, tableB] = this.#createTables(maps);\n const key = maps.length === 1 ? tableR : `${tableR}${tableG}${tableB}`;\n value = this.#cache.get(key);\n if (value) {\n this.#cache.set(maps, value);\n return value;\n }\n const id = `g_${this.#docId}_transfer_map_${this.#id++}`;\n const url = `url(#${id})`;\n this.#cache.set(maps, url);\n this.#cache.set(key, url);\n const filter = this.#createFilter(id);\n this.#addTransferMapConversion(tableR, tableG, tableB, filter);\n return url;\n }\n addHCMFilter(fgColor, bgColor) {\n const key = `${fgColor}-${bgColor}`;\n const filterName = \"base\";\n let info = this.#hcmCache.get(filterName);\n if (info?.key === key) {\n return info.url;\n }\n if (info) {\n info.filter?.remove();\n info.key = key;\n info.url = \"none\";\n info.filter = null;\n } else {\n info = {\n key,\n url: \"none\",\n filter: null\n };\n this.#hcmCache.set(filterName, info);\n }\n if (!fgColor || !bgColor) {\n return info.url;\n }\n const fgRGB = this.#getRGB(fgColor);\n fgColor = Util.makeHexColor(...fgRGB);\n const bgRGB = this.#getRGB(bgColor);\n bgColor = Util.makeHexColor(...bgRGB);\n this.#defs.style.color = \"\";\n if (fgColor === \"#000000\" && bgColor === \"#ffffff\" || fgColor === bgColor) {\n return info.url;\n }\n const map = new Array(256);\n for (let i = 0; i <= 255; i++) {\n const x = i / 255;\n map[i] = x <= 0.03928 ? x / 12.92 : ((x + 0.055) / 1.055) ** 2.4;\n }\n const table = map.join(\",\");\n const id = `g_${this.#docId}_hcm_filter`;\n const filter = info.filter = this.#createFilter(id);\n this.#addTransferMapConversion(table, table, table, filter);\n this.#addGrayConversion(filter);\n const getSteps = (c, n) => {\n const start = fgRGB[c] / 255;\n const end = bgRGB[c] / 255;\n const arr = new Array(n + 1);\n for (let i = 0; i <= n; i++) {\n arr[i] = start + i / n * (end - start);\n }\n return arr.join(\",\");\n };\n this.#addTransferMapConversion(getSteps(0, 5), getSteps(1, 5), getSteps(2, 5), filter);\n info.url = `url(#${id})`;\n return info.url;\n }\n addAlphaFilter(map) {\n let value = this.#cache.get(map);\n if (value) {\n return value;\n }\n const [tableA] = this.#createTables([map]);\n const key = `alpha_${tableA}`;\n value = this.#cache.get(key);\n if (value) {\n this.#cache.set(map, value);\n return value;\n }\n const id = `g_${this.#docId}_alpha_map_${this.#id++}`;\n const url = `url(#${id})`;\n this.#cache.set(map, url);\n this.#cache.set(key, url);\n const filter = this.#createFilter(id);\n this.#addTransferMapAlphaConversion(tableA, filter);\n return url;\n }\n addLuminosityFilter(map) {\n let value = this.#cache.get(map || \"luminosity\");\n if (value) {\n return value;\n }\n let tableA, key;\n if (map) {\n [tableA] = this.#createTables([map]);\n key = `luminosity_${tableA}`;\n } else {\n key = \"luminosity\";\n }\n value = this.#cache.get(key);\n if (value) {\n this.#cache.set(map, value);\n return value;\n }\n const id = `g_${this.#docId}_luminosity_map_${this.#id++}`;\n const url = `url(#${id})`;\n this.#cache.set(map, url);\n this.#cache.set(key, url);\n const filter = this.#createFilter(id);\n this.#addLuminosityConversion(filter);\n if (map) {\n this.#addTransferMapAlphaConversion(tableA, filter);\n }\n return url;\n }\n addHighlightHCMFilter(filterName, fgColor, bgColor, newFgColor, newBgColor) {\n const key = `${fgColor}-${bgColor}-${newFgColor}-${newBgColor}`;\n let info = this.#hcmCache.get(filterName);\n if (info?.key === key) {\n return info.url;\n }\n if (info) {\n info.filter?.remove();\n info.key = key;\n info.url = \"none\";\n info.filter = null;\n } else {\n info = {\n key,\n url: \"none\",\n filter: null\n };\n this.#hcmCache.set(filterName, info);\n }\n if (!fgColor || !bgColor) {\n return info.url;\n }\n const [fgRGB, bgRGB] = [fgColor, bgColor].map(this.#getRGB.bind(this));\n let fgGray = Math.round(0.2126 * fgRGB[0] + 0.7152 * fgRGB[1] + 0.0722 * fgRGB[2]);\n let bgGray = Math.round(0.2126 * bgRGB[0] + 0.7152 * bgRGB[1] + 0.0722 * bgRGB[2]);\n let [newFgRGB, newBgRGB] = [newFgColor, newBgColor].map(this.#getRGB.bind(this));\n if (bgGray < fgGray) {\n [fgGray, bgGray, newFgRGB, newBgRGB] = [bgGray, fgGray, newBgRGB, newFgRGB];\n }\n this.#defs.style.color = \"\";\n const getSteps = (fg, bg, n) => {\n const arr = new Array(256);\n const step = (bgGray - fgGray) / n;\n const newStart = fg / 255;\n const newStep = (bg - fg) / (255 * n);\n let prev = 0;\n for (let i = 0; i <= n; i++) {\n const k = Math.round(fgGray + i * step);\n const value = newStart + i * newStep;\n for (let j = prev; j <= k; j++) {\n arr[j] = value;\n }\n prev = k + 1;\n }\n for (let i = prev; i < 256; i++) {\n arr[i] = arr[prev - 1];\n }\n return arr.join(\",\");\n };\n const id = `g_${this.#docId}_hcm_${filterName}_filter`;\n const filter = info.filter = this.#createFilter(id);\n this.#addGrayConversion(filter);\n this.#addTransferMapConversion(getSteps(newFgRGB[0], newBgRGB[0], 5), getSteps(newFgRGB[1], newBgRGB[1], 5), getSteps(newFgRGB[2], newBgRGB[2], 5), filter);\n info.url = `url(#${id})`;\n return info.url;\n }\n destroy(keepHCM = false) {\n if (keepHCM && this.#hcmCache.size !== 0) {\n return;\n }\n if (this.#_defs) {\n this.#_defs.parentNode.parentNode.remove();\n this.#_defs = null;\n }\n if (this.#_cache) {\n this.#_cache.clear();\n this.#_cache = null;\n }\n this.#id = 0;\n }\n #addLuminosityConversion(filter) {\n const feColorMatrix = this.#document.createElementNS(SVG_NS, \"feColorMatrix\");\n feColorMatrix.setAttribute(\"type\", \"matrix\");\n feColorMatrix.setAttribute(\"values\", \"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.3 0.59 0.11 0 0\");\n filter.append(feColorMatrix);\n }\n #addGrayConversion(filter) {\n const feColorMatrix = this.#document.createElementNS(SVG_NS, \"feColorMatrix\");\n feColorMatrix.setAttribute(\"type\", \"matrix\");\n feColorMatrix.setAttribute(\"values\", \"0.2126 0.7152 0.0722 0 0 0.2126 0.7152 0.0722 0 0 0.2126 0.7152 0.0722 0 0 0 0 0 1 0\");\n filter.append(feColorMatrix);\n }\n #createFilter(id) {\n const filter = this.#document.createElementNS(SVG_NS, \"filter\");\n filter.setAttribute(\"color-interpolation-filters\", \"sRGB\");\n filter.setAttribute(\"id\", id);\n this.#defs.append(filter);\n return filter;\n }\n #appendFeFunc(feComponentTransfer, func, table) {\n const feFunc = this.#document.createElementNS(SVG_NS, func);\n feFunc.setAttribute(\"type\", \"discrete\");\n feFunc.setAttribute(\"tableValues\", table);\n feComponentTransfer.append(feFunc);\n }\n #addTransferMapConversion(rTable, gTable, bTable, filter) {\n const feComponentTransfer = this.#document.createElementNS(SVG_NS, \"feComponentTransfer\");\n filter.append(feComponentTransfer);\n this.#appendFeFunc(feComponentTransfer, \"feFuncR\", rTable);\n this.#appendFeFunc(feComponentTransfer, \"feFuncG\", gTable);\n this.#appendFeFunc(feComponentTransfer, \"feFuncB\", bTable);\n }\n #addTransferMapAlphaConversion(aTable, filter) {\n const feComponentTransfer = this.#document.createElementNS(SVG_NS, \"feComponentTransfer\");\n filter.append(feComponentTransfer);\n this.#appendFeFunc(feComponentTransfer, \"feFuncA\", aTable);\n }\n #getRGB(color) {\n this.#defs.style.color = color;\n return getRGB(getComputedStyle(this.#defs).getPropertyValue(\"color\"));\n }\n}\nclass DOMCanvasFactory extends BaseCanvasFactory {\n constructor({\n ownerDocument = globalThis.document,\n enableHWA = false\n } = {}) {\n super({\n enableHWA\n });\n this._document = ownerDocument;\n }\n _createCanvas(width, height) {\n const canvas = this._document.createElement(\"canvas\");\n canvas.width = width;\n canvas.height = height;\n return canvas;\n }\n}\nasync function fetchData(url, type = \"text\") {\n if (isValidFetchUrl(url, document.baseURI)) {\n const response = await fetch(url);\n if (!response.ok) {\n throw new Error(response.statusText);\n }\n switch (type) {\n case \"arraybuffer\":\n return response.arrayBuffer();\n case \"blob\":\n return response.blob();\n case \"json\":\n return response.json();\n }\n return response.text();\n }\n return new Promise((resolve, reject) => {\n const request = new XMLHttpRequest();\n request.open(\"GET\", url, true);\n request.responseType = type;\n request.onreadystatechange = () => {\n if (request.readyState !== XMLHttpRequest.DONE) {\n return;\n }\n if (request.status === 200 || request.status === 0) {\n switch (type) {\n case \"arraybuffer\":\n case \"blob\":\n case \"json\":\n resolve(request.response);\n return;\n }\n resolve(request.responseText);\n return;\n }\n reject(new Error(request.statusText));\n };\n request.send(null);\n });\n}\nclass DOMCMapReaderFactory extends BaseCMapReaderFactory {\n _fetchData(url, compressionType) {\n return fetchData(url, this.isCompressed ? \"arraybuffer\" : \"text\").then(data => ({\n cMapData: data instanceof ArrayBuffer ? new Uint8Array(data) : stringToBytes(data),\n compressionType\n }));\n }\n}\nclass DOMStandardFontDataFactory extends BaseStandardFontDataFactory {\n _fetchData(url) {\n return fetchData(url, \"arraybuffer\").then(data => new Uint8Array(data));\n }\n}\nclass DOMSVGFactory extends BaseSVGFactory {\n _createSVG(type) {\n return document.createElementNS(SVG_NS, type);\n }\n}\nclass PageViewport {\n constructor({\n viewBox,\n scale,\n rotation,\n offsetX = 0,\n offsetY = 0,\n dontFlip = false\n }) {\n this.viewBox = viewBox;\n this.scale = scale;\n this.rotation = rotation;\n this.offsetX = offsetX;\n this.offsetY = offsetY;\n const centerX = (viewBox[2] + viewBox[0]) / 2;\n const centerY = (viewBox[3] + viewBox[1]) / 2;\n let rotateA, rotateB, rotateC, rotateD;\n rotation %= 360;\n if (rotation < 0) {\n rotation += 360;\n }\n switch (rotation) {\n case 180:\n rotateA = -1;\n rotateB = 0;\n rotateC = 0;\n rotateD = 1;\n break;\n case 90:\n rotateA = 0;\n rotateB = 1;\n rotateC = 1;\n rotateD = 0;\n break;\n case 270:\n rotateA = 0;\n rotateB = -1;\n rotateC = -1;\n rotateD = 0;\n break;\n case 0:\n rotateA = 1;\n rotateB = 0;\n rotateC = 0;\n rotateD = -1;\n break;\n default:\n throw new Error(\"PageViewport: Invalid rotation, must be a multiple of 90 degrees.\");\n }\n if (dontFlip) {\n rotateC = -rotateC;\n rotateD = -rotateD;\n }\n let offsetCanvasX, offsetCanvasY;\n let width, height;\n if (rotateA === 0) {\n offsetCanvasX = Math.abs(centerY - viewBox[1]) * scale + offsetX;\n offsetCanvasY = Math.abs(centerX - viewBox[0]) * scale + offsetY;\n width = (viewBox[3] - viewBox[1]) * scale;\n height = (viewBox[2] - viewBox[0]) * scale;\n } else {\n offsetCanvasX = Math.abs(centerX - viewBox[0]) * scale + offsetX;\n offsetCanvasY = Math.abs(centerY - viewBox[1]) * scale + offsetY;\n width = (viewBox[2] - viewBox[0]) * scale;\n height = (viewBox[3] - viewBox[1]) * scale;\n }\n this.transform = [rotateA * scale, rotateB * scale, rotateC * scale, rotateD * scale, offsetCanvasX - rotateA * scale * centerX - rotateC * scale * centerY, offsetCanvasY - rotateB * scale * centerX - rotateD * scale * centerY];\n this.width = width;\n this.height = height;\n }\n get rawDims() {\n const {\n viewBox\n } = this;\n return shadow(this, \"rawDims\", {\n pageWidth: viewBox[2] - viewBox[0],\n pageHeight: viewBox[3] - viewBox[1],\n pageX: viewBox[0],\n pageY: viewBox[1]\n });\n }\n clone({\n scale = this.scale,\n rotation = this.rotation,\n offsetX = this.offsetX,\n offsetY = this.offsetY,\n dontFlip = false\n } = {}) {\n return new PageViewport({\n viewBox: this.viewBox.slice(),\n scale,\n rotation,\n offsetX,\n offsetY,\n dontFlip\n });\n }\n convertToViewportPoint(x, y) {\n return Util.applyTransform([x, y], this.transform);\n }\n convertToViewportRectangle(rect) {\n const topLeft = Util.applyTransform([rect[0], rect[1]], this.transform);\n const bottomRight = Util.applyTransform([rect[2], rect[3]], this.transform);\n return [topLeft[0], topLeft[1], bottomRight[0], bottomRight[1]];\n }\n convertToPdfPoint(x, y) {\n return Util.applyInverseTransform([x, y], this.transform);\n }\n}\nclass RenderingCancelledException extends BaseException {\n constructor(msg, extraDelay = 0) {\n super(msg, \"RenderingCancelledException\");\n this.extraDelay = extraDelay;\n }\n}\nfunction isDataScheme(url) {\n const ii = url.length;\n let i = 0;\n while (i < ii && url[i].trim() === \"\") {\n i++;\n }\n return url.substring(i, i + 5).toLowerCase() === \"data:\";\n}\nfunction isPdfFile(filename) {\n return typeof filename === \"string\" && /\\.pdf$/i.test(filename);\n}\nfunction getFilenameFromUrl(url) {\n [url] = url.split(/[#?]/, 1);\n return url.substring(url.lastIndexOf(\"/\") + 1);\n}\nfunction getPdfFilenameFromUrl(url, defaultFilename = \"document.pdf\") {\n if (typeof url !== \"string\") {\n return defaultFilename;\n }\n if (isDataScheme(url)) {\n warn('getPdfFilenameFromUrl: ignore \"data:\"-URL for performance reasons.');\n return defaultFilename;\n }\n const reURI = /^(?:(?:[^:]+:)?\\/\\/[^/]+)?([^?#]*)(\\?[^#]*)?(#.*)?$/;\n const reFilename = /[^/?#=]+\\.pdf\\b(?!.*\\.pdf\\b)/i;\n const splitURI = reURI.exec(url);\n let suggestedFilename = reFilename.exec(splitURI[1]) || reFilename.exec(splitURI[2]) || reFilename.exec(splitURI[3]);\n if (suggestedFilename) {\n suggestedFilename = suggestedFilename[0];\n if (suggestedFilename.includes(\"%\")) {\n try {\n suggestedFilename = reFilename.exec(decodeURIComponent(suggestedFilename))[0];\n } catch {}\n }\n }\n return suggestedFilename || defaultFilename;\n}\nclass StatTimer {\n started = Object.create(null);\n times = [];\n time(name) {\n if (name in this.started) {\n warn(`Timer is already running for ${name}`);\n }\n this.started[name] = Date.now();\n }\n timeEnd(name) {\n if (!(name in this.started)) {\n warn(`Timer has not been started for ${name}`);\n }\n this.times.push({\n name,\n start: this.started[name],\n end: Date.now()\n });\n delete this.started[name];\n }\n toString() {\n const outBuf = [];\n let longest = 0;\n for (const {\n name\n } of this.times) {\n longest = Math.max(name.length, longest);\n }\n for (const {\n name,\n start,\n end\n } of this.times) {\n outBuf.push(`${name.padEnd(longest)} ${end - start}ms\\n`);\n }\n return outBuf.join(\"\");\n }\n}\nfunction isValidFetchUrl(url, baseUrl) {\n try {\n const {\n protocol\n } = baseUrl ? new URL(url, baseUrl) : new URL(url);\n return protocol === \"http:\" || protocol === \"https:\";\n } catch {\n return false;\n }\n}\nfunction noContextMenu(e) {\n e.preventDefault();\n}\nfunction deprecated(details) {\n console.log(\"Deprecated API usage: \" + details);\n}\nlet pdfDateStringRegex;\nclass PDFDateString {\n static toDateObject(input) {\n if (!input || typeof input !== \"string\") {\n return null;\n }\n pdfDateStringRegex ||= new RegExp(\"^D:\" + \"(\\\\d{4})\" + \"(\\\\d{2})?\" + \"(\\\\d{2})?\" + \"(\\\\d{2})?\" + \"(\\\\d{2})?\" + \"(\\\\d{2})?\" + \"([Z|+|-])?\" + \"(\\\\d{2})?\" + \"'?\" + \"(\\\\d{2})?\" + \"'?\");\n const matches = pdfDateStringRegex.exec(input);\n if (!matches) {\n return null;\n }\n const year = parseInt(matches[1], 10);\n let month = parseInt(matches[2], 10);\n month = month >= 1 && month <= 12 ? month - 1 : 0;\n let day = parseInt(matches[3], 10);\n day = day >= 1 && day <= 31 ? day : 1;\n let hour = parseInt(matches[4], 10);\n hour = hour >= 0 && hour <= 23 ? hour : 0;\n let minute = parseInt(matches[5], 10);\n minute = minute >= 0 && minute <= 59 ? minute : 0;\n let second = parseInt(matches[6], 10);\n second = second >= 0 && second <= 59 ? second : 0;\n const universalTimeRelation = matches[7] || \"Z\";\n let offsetHour = parseInt(matches[8], 10);\n offsetHour = offsetHour >= 0 && offsetHour <= 23 ? offsetHour : 0;\n let offsetMinute = parseInt(matches[9], 10) || 0;\n offsetMinute = offsetMinute >= 0 && offsetMinute <= 59 ? offsetMinute : 0;\n if (universalTimeRelation === \"-\") {\n hour += offsetHour;\n minute += offsetMinute;\n } else if (universalTimeRelation === \"+\") {\n hour -= offsetHour;\n minute -= offsetMinute;\n }\n return new Date(Date.UTC(year, month, day, hour, minute, second));\n }\n}\nfunction getXfaPageViewport(xfaPage, {\n scale = 1,\n rotation = 0\n}) {\n const {\n width,\n height\n } = xfaPage.attributes.style;\n const viewBox = [0, 0, parseInt(width), parseInt(height)];\n return new PageViewport({\n viewBox,\n scale,\n rotation\n });\n}\nfunction getRGB(color) {\n if (color.startsWith(\"#\")) {\n const colorRGB = parseInt(color.slice(1), 16);\n return [(colorRGB & 0xff0000) >> 16, (colorRGB & 0x00ff00) >> 8, colorRGB & 0x0000ff];\n }\n if (color.startsWith(\"rgb(\")) {\n return color.slice(4, -1).split(\",\").map(x => parseInt(x));\n }\n if (color.startsWith(\"rgba(\")) {\n return color.slice(5, -1).split(\",\").map(x => parseInt(x)).slice(0, 3);\n }\n warn(`Not a valid color format: \"${color}\"`);\n return [0, 0, 0];\n}\nfunction getColorValues(colors) {\n const span = document.createElement(\"span\");\n span.style.visibility = \"hidden\";\n document.body.append(span);\n for (const name of colors.keys()) {\n span.style.color = name;\n const computedColor = window.getComputedStyle(span).color;\n colors.set(name, getRGB(computedColor));\n }\n span.remove();\n}\nfunction getCurrentTransform(ctx) {\n const {\n a,\n b,\n c,\n d,\n e,\n f\n } = ctx.getTransform();\n return [a, b, c, d, e, f];\n}\nfunction getCurrentTransformInverse(ctx) {\n const {\n a,\n b,\n c,\n d,\n e,\n f\n } = ctx.getTransform().invertSelf();\n return [a, b, c, d, e, f];\n}\nfunction setLayerDimensions(div, viewport, mustFlip = false, mustRotate = true) {\n if (viewport instanceof PageViewport) {\n const {\n pageWidth,\n pageHeight\n } = viewport.rawDims;\n const {\n style\n } = div;\n const useRound = util_FeatureTest.isCSSRoundSupported;\n const w = `var(--scale-factor) * ${pageWidth}px`,\n h = `var(--scale-factor) * ${pageHeight}px`;\n const widthStr = useRound ? `round(${w}, 1px)` : `calc(${w})`,\n heightStr = useRound ? `round(${h}, 1px)` : `calc(${h})`;\n if (!mustFlip || viewport.rotation % 180 === 0) {\n style.width = widthStr;\n style.height = heightStr;\n } else {\n style.width = heightStr;\n style.height = widthStr;\n }\n }\n if (mustRotate) {\n div.setAttribute(\"data-main-rotation\", viewport.rotation);\n }\n}\n\n;// CONCATENATED MODULE: ./src/display/editor/toolbar.js\n\nclass EditorToolbar {\n #toolbar = null;\n #colorPicker = null;\n #editor;\n #buttons = null;\n constructor(editor) {\n this.#editor = editor;\n }\n render() {\n const editToolbar = this.#toolbar = document.createElement(\"div\");\n editToolbar.className = \"editToolbar\";\n editToolbar.setAttribute(\"role\", \"toolbar\");\n const signal = this.#editor._uiManager._signal;\n editToolbar.addEventListener(\"contextmenu\", noContextMenu, {\n signal\n });\n editToolbar.addEventListener(\"pointerdown\", EditorToolbar.#pointerDown, {\n signal\n });\n const buttons = this.#buttons = document.createElement(\"div\");\n buttons.className = \"buttons\";\n editToolbar.append(buttons);\n const position = this.#editor.toolbarPosition;\n if (position) {\n const {\n style\n } = editToolbar;\n const x = this.#editor._uiManager.direction === \"ltr\" ? 1 - position[0] : position[0];\n style.insetInlineEnd = `${100 * x}%`;\n style.top = `calc(${100 * position[1]}% + var(--editor-toolbar-vert-offset))`;\n }\n this.#addDeleteButton();\n return editToolbar;\n }\n static #pointerDown(e) {\n e.stopPropagation();\n }\n #focusIn(e) {\n this.#editor._focusEventsAllowed = false;\n e.preventDefault();\n e.stopPropagation();\n }\n #focusOut(e) {\n this.#editor._focusEventsAllowed = true;\n e.preventDefault();\n e.stopPropagation();\n }\n #addListenersToElement(element) {\n const signal = this.#editor._uiManager._signal;\n element.addEventListener(\"focusin\", this.#focusIn.bind(this), {\n capture: true,\n signal\n });\n element.addEventListener(\"focusout\", this.#focusOut.bind(this), {\n capture: true,\n signal\n });\n element.addEventListener(\"contextmenu\", noContextMenu, {\n signal\n });\n }\n hide() {\n this.#toolbar.classList.add(\"hidden\");\n this.#colorPicker?.hideDropdown();\n }\n show() {\n this.#toolbar.classList.remove(\"hidden\");\n }\n #addDeleteButton() {\n const button = document.createElement(\"button\");\n button.className = \"delete\";\n button.tabIndex = 0;\n button.setAttribute(\"data-l10n-id\", `pdfjs-editor-remove-${this.#editor.editorType}-button`);\n this.#addListenersToElement(button);\n button.addEventListener(\"click\", e => {\n this.#editor._uiManager.delete();\n }, {\n signal: this.#editor._uiManager._signal\n });\n this.#buttons.append(button);\n }\n get #divider() {\n const divider = document.createElement(\"div\");\n divider.className = \"divider\";\n return divider;\n }\n addAltTextButton(button) {\n this.#addListenersToElement(button);\n this.#buttons.prepend(button, this.#divider);\n }\n addColorPicker(colorPicker) {\n this.#colorPicker = colorPicker;\n const button = colorPicker.renderButton();\n this.#addListenersToElement(button);\n this.#buttons.prepend(button, this.#divider);\n }\n remove() {\n this.#toolbar.remove();\n this.#colorPicker?.destroy();\n this.#colorPicker = null;\n }\n}\nclass HighlightToolbar {\n #buttons = null;\n #toolbar = null;\n #uiManager;\n constructor(uiManager) {\n this.#uiManager = uiManager;\n }\n #render() {\n const editToolbar = this.#toolbar = document.createElement(\"div\");\n editToolbar.className = \"editToolbar\";\n editToolbar.setAttribute(\"role\", \"toolbar\");\n editToolbar.addEventListener(\"contextmenu\", noContextMenu, {\n signal: this.#uiManager._signal\n });\n const buttons = this.#buttons = document.createElement(\"div\");\n buttons.className = \"buttons\";\n editToolbar.append(buttons);\n this.#addHighlightButton();\n return editToolbar;\n }\n #getLastPoint(boxes, isLTR) {\n let lastY = 0;\n let lastX = 0;\n for (const box of boxes) {\n const y = box.y + box.height;\n if (y < lastY) {\n continue;\n }\n const x = box.x + (isLTR ? box.width : 0);\n if (y > lastY) {\n lastX = x;\n lastY = y;\n continue;\n }\n if (isLTR) {\n if (x > lastX) {\n lastX = x;\n }\n } else if (x < lastX) {\n lastX = x;\n }\n }\n return [isLTR ? 1 - lastX : lastX, lastY];\n }\n show(parent, boxes, isLTR) {\n const [x, y] = this.#getLastPoint(boxes, isLTR);\n const {\n style\n } = this.#toolbar ||= this.#render();\n parent.append(this.#toolbar);\n style.insetInlineEnd = `${100 * x}%`;\n style.top = `calc(${100 * y}% + var(--editor-toolbar-vert-offset))`;\n }\n hide() {\n this.#toolbar.remove();\n }\n #addHighlightButton() {\n const button = document.createElement(\"button\");\n button.className = \"highlightButton\";\n button.tabIndex = 0;\n button.setAttribute(\"data-l10n-id\", `pdfjs-highlight-floating-button1`);\n const span = document.createElement(\"span\");\n button.append(span);\n span.className = \"visuallyHidden\";\n span.setAttribute(\"data-l10n-id\", \"pdfjs-highlight-floating-button-label\");\n const signal = this.#uiManager._signal;\n button.addEventListener(\"contextmenu\", noContextMenu, {\n signal\n });\n button.addEventListener(\"click\", () => {\n this.#uiManager.highlightSelection(\"floating_button\");\n }, {\n signal\n });\n this.#buttons.append(button);\n }\n}\n\n;// CONCATENATED MODULE: ./src/display/editor/tools.js\n\n\n\nfunction bindEvents(obj, element, names) {\n for (const name of names) {\n element.addEventListener(name, obj[name].bind(obj));\n }\n}\nfunction opacityToHex(opacity) {\n return Math.round(Math.min(255, Math.max(1, 255 * opacity))).toString(16).padStart(2, \"0\");\n}\nclass IdManager {\n #id = 0;\n get id() {\n return `${AnnotationEditorPrefix}${this.#id++}`;\n }\n}\nclass ImageManager {\n #baseId = getUuid();\n #id = 0;\n #cache = null;\n static get _isSVGFittingCanvas() {\n const svg = `data:image/svg+xml;charset=UTF-8,<svg viewBox=\"0 0 1 1\" width=\"1\" height=\"1\" xmlns=\"http://www.w3.org/2000/svg\"><rect width=\"1\" height=\"1\" style=\"fill:red;\"/></svg>`;\n const canvas = new OffscreenCanvas(1, 3);\n const ctx = canvas.getContext(\"2d\", {\n willReadFrequently: true\n });\n const image = new Image();\n image.src = svg;\n const promise = image.decode().then(() => {\n ctx.drawImage(image, 0, 0, 1, 1, 0, 0, 1, 3);\n return new Uint32Array(ctx.getImageData(0, 0, 1, 1).data.buffer)[0] === 0;\n });\n return shadow(this, \"_isSVGFittingCanvas\", promise);\n }\n async #get(key, rawData) {\n this.#cache ||= new Map();\n let data = this.#cache.get(key);\n if (data === null) {\n return null;\n }\n if (data?.bitmap) {\n data.refCounter += 1;\n return data;\n }\n try {\n data ||= {\n bitmap: null,\n id: `image_${this.#baseId}_${this.#id++}`,\n refCounter: 0,\n isSvg: false\n };\n let image;\n if (typeof rawData === \"string\") {\n data.url = rawData;\n image = await fetchData(rawData, \"blob\");\n } else {\n image = data.file = rawData;\n }\n if (image.type === \"image/svg+xml\") {\n const mustRemoveAspectRatioPromise = ImageManager._isSVGFittingCanvas;\n const fileReader = new FileReader();\n const imageElement = new Image();\n const imagePromise = new Promise((resolve, reject) => {\n imageElement.onload = () => {\n data.bitmap = imageElement;\n data.isSvg = true;\n resolve();\n };\n fileReader.onload = async () => {\n const url = data.svgUrl = fileReader.result;\n imageElement.src = (await mustRemoveAspectRatioPromise) ? `${url}#svgView(preserveAspectRatio(none))` : url;\n };\n imageElement.onerror = fileReader.onerror = reject;\n });\n fileReader.readAsDataURL(image);\n await imagePromise;\n } else {\n data.bitmap = await createImageBitmap(image);\n }\n data.refCounter = 1;\n } catch (e) {\n console.error(e);\n data = null;\n }\n this.#cache.set(key, data);\n if (data) {\n this.#cache.set(data.id, data);\n }\n return data;\n }\n async getFromFile(file) {\n const {\n lastModified,\n name,\n size,\n type\n } = file;\n return this.#get(`${lastModified}_${name}_${size}_${type}`, file);\n }\n async getFromUrl(url) {\n return this.#get(url, url);\n }\n async getFromId(id) {\n this.#cache ||= new Map();\n const data = this.#cache.get(id);\n if (!data) {\n return null;\n }\n if (data.bitmap) {\n data.refCounter += 1;\n return data;\n }\n if (data.file) {\n return this.getFromFile(data.file);\n }\n return this.getFromUrl(data.url);\n }\n getSvgUrl(id) {\n const data = this.#cache.get(id);\n if (!data?.isSvg) {\n return null;\n }\n return data.svgUrl;\n }\n deleteId(id) {\n this.#cache ||= new Map();\n const data = this.#cache.get(id);\n if (!data) {\n return;\n }\n data.refCounter -= 1;\n if (data.refCounter !== 0) {\n return;\n }\n data.bitmap = null;\n }\n isValidId(id) {\n return id.startsWith(`image_${this.#baseId}_`);\n }\n}\nclass CommandManager {\n #commands = [];\n #locked = false;\n #maxSize;\n #position = -1;\n constructor(maxSize = 128) {\n this.#maxSize = maxSize;\n }\n add({\n cmd,\n undo,\n post,\n mustExec,\n type = NaN,\n overwriteIfSameType = false,\n keepUndo = false\n }) {\n if (mustExec) {\n cmd();\n }\n if (this.#locked) {\n return;\n }\n const save = {\n cmd,\n undo,\n post,\n type\n };\n if (this.#position === -1) {\n if (this.#commands.length > 0) {\n this.#commands.length = 0;\n }\n this.#position = 0;\n this.#commands.push(save);\n return;\n }\n if (overwriteIfSameType && this.#commands[this.#position].type === type) {\n if (keepUndo) {\n save.undo = this.#commands[this.#position].undo;\n }\n this.#commands[this.#position] = save;\n return;\n }\n const next = this.#position + 1;\n if (next === this.#maxSize) {\n this.#commands.splice(0, 1);\n } else {\n this.#position = next;\n if (next < this.#commands.length) {\n this.#commands.splice(next);\n }\n }\n this.#commands.push(save);\n }\n undo() {\n if (this.#position === -1) {\n return;\n }\n this.#locked = true;\n const {\n undo,\n post\n } = this.#commands[this.#position];\n undo();\n post?.();\n this.#locked = false;\n this.#position -= 1;\n }\n redo() {\n if (this.#position < this.#commands.length - 1) {\n this.#position += 1;\n this.#locked = true;\n const {\n cmd,\n post\n } = this.#commands[this.#position];\n cmd();\n post?.();\n this.#locked = false;\n }\n }\n hasSomethingToUndo() {\n return this.#position !== -1;\n }\n hasSomethingToRedo() {\n return this.#position < this.#commands.length - 1;\n }\n destroy() {\n this.#commands = null;\n }\n}\nclass KeyboardManager {\n constructor(callbacks) {\n this.buffer = [];\n this.callbacks = new Map();\n this.allKeys = new Set();\n const {\n isMac\n } = util_FeatureTest.platform;\n for (const [keys, callback, options = {}] of callbacks) {\n for (const key of keys) {\n const isMacKey = key.startsWith(\"mac+\");\n if (isMac && isMacKey) {\n this.callbacks.set(key.slice(4), {\n callback,\n options\n });\n this.allKeys.add(key.split(\"+\").at(-1));\n } else if (!isMac && !isMacKey) {\n this.callbacks.set(key, {\n callback,\n options\n });\n this.allKeys.add(key.split(\"+\").at(-1));\n }\n }\n }\n }\n #serialize(event) {\n if (event.altKey) {\n this.buffer.push(\"alt\");\n }\n if (event.ctrlKey) {\n this.buffer.push(\"ctrl\");\n }\n if (event.metaKey) {\n this.buffer.push(\"meta\");\n }\n if (event.shiftKey) {\n this.buffer.push(\"shift\");\n }\n this.buffer.push(event.key);\n const str = this.buffer.join(\"+\");\n this.buffer.length = 0;\n return str;\n }\n exec(self, event) {\n if (!this.allKeys.has(event.key)) {\n return;\n }\n const info = this.callbacks.get(this.#serialize(event));\n if (!info) {\n return;\n }\n const {\n callback,\n options: {\n bubbles = false,\n args = [],\n checker = null\n }\n } = info;\n if (checker && !checker(self, event)) {\n return;\n }\n callback.bind(self, ...args, event)();\n if (!bubbles) {\n event.stopPropagation();\n event.preventDefault();\n }\n }\n}\nclass ColorManager {\n static _colorsMapping = new Map([[\"CanvasText\", [0, 0, 0]], [\"Canvas\", [255, 255, 255]]]);\n get _colors() {\n const colors = new Map([[\"CanvasText\", null], [\"Canvas\", null]]);\n getColorValues(colors);\n return shadow(this, \"_colors\", colors);\n }\n convert(color) {\n const rgb = getRGB(color);\n if (!window.matchMedia(\"(forced-colors: active)\").matches) {\n return rgb;\n }\n for (const [name, RGB] of this._colors) {\n if (RGB.every((x, i) => x === rgb[i])) {\n return ColorManager._colorsMapping.get(name);\n }\n }\n return rgb;\n }\n getHexCode(name) {\n const rgb = this._colors.get(name);\n if (!rgb) {\n return name;\n }\n return Util.makeHexColor(...rgb);\n }\n}\nclass AnnotationEditorUIManager {\n #abortController = new AbortController();\n #activeEditor = null;\n #allEditors = new Map();\n #allLayers = new Map();\n #altTextManager = null;\n #annotationStorage = null;\n #changedExistingAnnotations = null;\n #commandManager = new CommandManager();\n #currentPageIndex = 0;\n #deletedAnnotationsElementIds = new Set();\n #draggingEditors = null;\n #editorTypes = null;\n #editorsToRescale = new Set();\n #enableHighlightFloatingButton = false;\n #filterFactory = null;\n #focusMainContainerTimeoutId = null;\n #highlightColors = null;\n #highlightWhenShiftUp = false;\n #highlightToolbar = null;\n #idManager = new IdManager();\n #isEnabled = false;\n #isWaiting = false;\n #lastActiveElement = null;\n #mainHighlightColorPicker = null;\n #mlManager = null;\n #mode = AnnotationEditorType.NONE;\n #selectedEditors = new Set();\n #selectedTextNode = null;\n #pageColors = null;\n #showAllStates = null;\n #boundBlur = this.blur.bind(this);\n #boundFocus = this.focus.bind(this);\n #boundCopy = this.copy.bind(this);\n #boundCut = this.cut.bind(this);\n #boundPaste = this.paste.bind(this);\n #boundKeydown = this.keydown.bind(this);\n #boundKeyup = this.keyup.bind(this);\n #boundOnEditingAction = this.onEditingAction.bind(this);\n #boundOnPageChanging = this.onPageChanging.bind(this);\n #boundOnScaleChanging = this.onScaleChanging.bind(this);\n #boundOnRotationChanging = this.onRotationChanging.bind(this);\n #previousStates = {\n isEditing: false,\n isEmpty: true,\n hasSomethingToUndo: false,\n hasSomethingToRedo: false,\n hasSelectedEditor: false,\n hasSelectedText: false\n };\n #translation = [0, 0];\n #translationTimeoutId = null;\n #container = null;\n #viewer = null;\n static TRANSLATE_SMALL = 1;\n static TRANSLATE_BIG = 10;\n static get _keyboardManager() {\n const proto = AnnotationEditorUIManager.prototype;\n const arrowChecker = self => self.#container.contains(document.activeElement) && document.activeElement.tagName !== \"BUTTON\" && self.hasSomethingToControl();\n const textInputChecker = (_self, {\n target: el\n }) => {\n if (el instanceof HTMLInputElement) {\n const {\n type\n } = el;\n return type !== \"text\" && type !== \"number\";\n }\n return true;\n };\n const small = this.TRANSLATE_SMALL;\n const big = this.TRANSLATE_BIG;\n return shadow(this, \"_keyboardManager\", new KeyboardManager([[[\"ctrl+a\", \"mac+meta+a\"], proto.selectAll, {\n checker: textInputChecker\n }], [[\"ctrl+z\", \"mac+meta+z\"], proto.undo, {\n checker: textInputChecker\n }], [[\"ctrl+y\", \"ctrl+shift+z\", \"mac+meta+shift+z\", \"ctrl+shift+Z\", \"mac+meta+shift+Z\"], proto.redo, {\n checker: textInputChecker\n }], [[\"Backspace\", \"alt+Backspace\", \"ctrl+Backspace\", \"shift+Backspace\", \"mac+Backspace\", \"mac+alt+Backspace\", \"mac+ctrl+Backspace\", \"Delete\", \"ctrl+Delete\", \"shift+Delete\", \"mac+Delete\"], proto.delete, {\n checker: textInputChecker\n }], [[\"Enter\", \"mac+Enter\"], proto.addNewEditorFromKeyboard, {\n checker: (self, {\n target: el\n }) => !(el instanceof HTMLButtonElement) && self.#container.contains(el) && !self.isEnterHandled\n }], [[\" \", \"mac+ \"], proto.addNewEditorFromKeyboard, {\n checker: (self, {\n target: el\n }) => !(el instanceof HTMLButtonElement) && self.#container.contains(document.activeElement)\n }], [[\"Escape\", \"mac+Escape\"], proto.unselectAll], [[\"ArrowLeft\", \"mac+ArrowLeft\"], proto.translateSelectedEditors, {\n args: [-small, 0],\n checker: arrowChecker\n }], [[\"ctrl+ArrowLeft\", \"mac+shift+ArrowLeft\"], proto.translateSelectedEditors, {\n args: [-big, 0],\n checker: arrowChecker\n }], [[\"ArrowRight\", \"mac+ArrowRight\"], proto.translateSelectedEditors, {\n args: [small, 0],\n checker: arrowChecker\n }], [[\"ctrl+ArrowRight\", \"mac+shift+ArrowRight\"], proto.translateSelectedEditors, {\n args: [big, 0],\n checker: arrowChecker\n }], [[\"ArrowUp\", \"mac+ArrowUp\"], proto.translateSelectedEditors, {\n args: [0, -small],\n checker: arrowChecker\n }], [[\"ctrl+ArrowUp\", \"mac+shift+ArrowUp\"], proto.translateSelectedEditors, {\n args: [0, -big],\n checker: arrowChecker\n }], [[\"ArrowDown\", \"mac+ArrowDown\"], proto.translateSelectedEditors, {\n args: [0, small],\n checker: arrowChecker\n }], [[\"ctrl+ArrowDown\", \"mac+shift+ArrowDown\"], proto.translateSelectedEditors, {\n args: [0, big],\n checker: arrowChecker\n }]]));\n }\n constructor(container, viewer, altTextManager, eventBus, pdfDocument, pageColors, highlightColors, enableHighlightFloatingButton, mlManager) {\n this._signal = this.#abortController.signal;\n this.#container = container;\n this.#viewer = viewer;\n this.#altTextManager = altTextManager;\n this._eventBus = eventBus;\n this._eventBus._on(\"editingaction\", this.#boundOnEditingAction);\n this._eventBus._on(\"pagechanging\", this.#boundOnPageChanging);\n this._eventBus._on(\"scalechanging\", this.#boundOnScaleChanging);\n this._eventBus._on(\"rotationchanging\", this.#boundOnRotationChanging);\n this.#addSelectionListener();\n this.#addDragAndDropListeners();\n this.#addKeyboardManager();\n this.#annotationStorage = pdfDocument.annotationStorage;\n this.#filterFactory = pdfDocument.filterFactory;\n this.#pageColors = pageColors;\n this.#highlightColors = highlightColors || null;\n this.#enableHighlightFloatingButton = enableHighlightFloatingButton;\n this.#mlManager = mlManager || null;\n this.viewParameters = {\n realScale: PixelsPerInch.PDF_TO_CSS_UNITS,\n rotation: 0\n };\n this.isShiftKeyDown = false;\n }\n destroy() {\n this.#abortController?.abort();\n this.#abortController = null;\n this._signal = null;\n this._eventBus._off(\"editingaction\", this.#boundOnEditingAction);\n this._eventBus._off(\"pagechanging\", this.#boundOnPageChanging);\n this._eventBus._off(\"scalechanging\", this.#boundOnScaleChanging);\n this._eventBus._off(\"rotationchanging\", this.#boundOnRotationChanging);\n for (const layer of this.#allLayers.values()) {\n layer.destroy();\n }\n this.#allLayers.clear();\n this.#allEditors.clear();\n this.#editorsToRescale.clear();\n this.#activeEditor = null;\n this.#selectedEditors.clear();\n this.#commandManager.destroy();\n this.#altTextManager?.destroy();\n this.#highlightToolbar?.hide();\n this.#highlightToolbar = null;\n if (this.#focusMainContainerTimeoutId) {\n clearTimeout(this.#focusMainContainerTimeoutId);\n this.#focusMainContainerTimeoutId = null;\n }\n if (this.#translationTimeoutId) {\n clearTimeout(this.#translationTimeoutId);\n this.#translationTimeoutId = null;\n }\n }\n async mlGuess(data) {\n return this.#mlManager?.guess(data) || null;\n }\n get hasMLManager() {\n return !!this.#mlManager;\n }\n get hcmFilter() {\n return shadow(this, \"hcmFilter\", this.#pageColors ? this.#filterFactory.addHCMFilter(this.#pageColors.foreground, this.#pageColors.background) : \"none\");\n }\n get direction() {\n return shadow(this, \"direction\", getComputedStyle(this.#container).direction);\n }\n get highlightColors() {\n return shadow(this, \"highlightColors\", this.#highlightColors ? new Map(this.#highlightColors.split(\",\").map(pair => pair.split(\"=\").map(x => x.trim()))) : null);\n }\n get highlightColorNames() {\n return shadow(this, \"highlightColorNames\", this.highlightColors ? new Map(Array.from(this.highlightColors, e => e.reverse())) : null);\n }\n setMainHighlightColorPicker(colorPicker) {\n this.#mainHighlightColorPicker = colorPicker;\n }\n editAltText(editor) {\n this.#altTextManager?.editAltText(this, editor);\n }\n onPageChanging({\n pageNumber\n }) {\n this.#currentPageIndex = pageNumber - 1;\n }\n focusMainContainer() {\n this.#container.focus();\n }\n findParent(x, y) {\n for (const layer of this.#allLayers.values()) {\n const {\n x: layerX,\n y: layerY,\n width,\n height\n } = layer.div.getBoundingClientRect();\n if (x >= layerX && x <= layerX + width && y >= layerY && y <= layerY + height) {\n return layer;\n }\n }\n return null;\n }\n disableUserSelect(value = false) {\n this.#viewer.classList.toggle(\"noUserSelect\", value);\n }\n addShouldRescale(editor) {\n this.#editorsToRescale.add(editor);\n }\n removeShouldRescale(editor) {\n this.#editorsToRescale.delete(editor);\n }\n onScaleChanging({\n scale\n }) {\n this.commitOrRemove();\n this.viewParameters.realScale = scale * PixelsPerInch.PDF_TO_CSS_UNITS;\n for (const editor of this.#editorsToRescale) {\n editor.onScaleChanging();\n }\n }\n onRotationChanging({\n pagesRotation\n }) {\n this.commitOrRemove();\n this.viewParameters.rotation = pagesRotation;\n }\n #getAnchorElementForSelection({\n anchorNode\n }) {\n return anchorNode.nodeType === Node.TEXT_NODE ? anchorNode.parentElement : anchorNode;\n }\n highlightSelection(methodOfCreation = \"\") {\n const selection = document.getSelection();\n if (!selection || selection.isCollapsed) {\n return;\n }\n const {\n anchorNode,\n anchorOffset,\n focusNode,\n focusOffset\n } = selection;\n const text = selection.toString();\n const anchorElement = this.#getAnchorElementForSelection(selection);\n const textLayer = anchorElement.closest(\".textLayer\");\n const boxes = this.getSelectionBoxes(textLayer);\n if (!boxes) {\n return;\n }\n selection.empty();\n if (this.#mode === AnnotationEditorType.NONE) {\n this._eventBus.dispatch(\"showannotationeditorui\", {\n source: this,\n mode: AnnotationEditorType.HIGHLIGHT\n });\n this.showAllEditors(\"highlight\", true, true);\n }\n for (const layer of this.#allLayers.values()) {\n if (layer.hasTextLayer(textLayer)) {\n layer.createAndAddNewEditor({\n x: 0,\n y: 0\n }, false, {\n methodOfCreation,\n boxes,\n anchorNode,\n anchorOffset,\n focusNode,\n focusOffset,\n text\n });\n break;\n }\n }\n }\n #displayHighlightToolbar() {\n const selection = document.getSelection();\n if (!selection || selection.isCollapsed) {\n return;\n }\n const anchorElement = this.#getAnchorElementForSelection(selection);\n const textLayer = anchorElement.closest(\".textLayer\");\n const boxes = this.getSelectionBoxes(textLayer);\n if (!boxes) {\n return;\n }\n this.#highlightToolbar ||= new HighlightToolbar(this);\n this.#highlightToolbar.show(textLayer, boxes, this.direction === \"ltr\");\n }\n addToAnnotationStorage(editor) {\n if (!editor.isEmpty() && this.#annotationStorage && !this.#annotationStorage.has(editor.id)) {\n this.#annotationStorage.setValue(editor.id, editor);\n }\n }\n #selectionChange() {\n const selection = document.getSelection();\n if (!selection || selection.isCollapsed) {\n if (this.#selectedTextNode) {\n this.#highlightToolbar?.hide();\n this.#selectedTextNode = null;\n this.#dispatchUpdateStates({\n hasSelectedText: false\n });\n }\n return;\n }\n const {\n anchorNode\n } = selection;\n if (anchorNode === this.#selectedTextNode) {\n return;\n }\n const anchorElement = this.#getAnchorElementForSelection(selection);\n const textLayer = anchorElement.closest(\".textLayer\");\n if (!textLayer) {\n if (this.#selectedTextNode) {\n this.#highlightToolbar?.hide();\n this.#selectedTextNode = null;\n this.#dispatchUpdateStates({\n hasSelectedText: false\n });\n }\n return;\n }\n this.#highlightToolbar?.hide();\n this.#selectedTextNode = anchorNode;\n this.#dispatchUpdateStates({\n hasSelectedText: true\n });\n if (this.#mode !== AnnotationEditorType.HIGHLIGHT && this.#mode !== AnnotationEditorType.NONE) {\n return;\n }\n if (this.#mode === AnnotationEditorType.HIGHLIGHT) {\n this.showAllEditors(\"highlight\", true, true);\n }\n this.#highlightWhenShiftUp = this.isShiftKeyDown;\n if (!this.isShiftKeyDown) {\n const signal = this._signal;\n const pointerup = e => {\n if (e.type === \"pointerup\" && e.button !== 0) {\n return;\n }\n window.removeEventListener(\"pointerup\", pointerup);\n window.removeEventListener(\"blur\", pointerup);\n if (e.type === \"pointerup\") {\n this.#onSelectEnd(\"main_toolbar\");\n }\n };\n window.addEventListener(\"pointerup\", pointerup, {\n signal\n });\n window.addEventListener(\"blur\", pointerup, {\n signal\n });\n }\n }\n #onSelectEnd(methodOfCreation = \"\") {\n if (this.#mode === AnnotationEditorType.HIGHLIGHT) {\n this.highlightSelection(methodOfCreation);\n } else if (this.#enableHighlightFloatingButton) {\n this.#displayHighlightToolbar();\n }\n }\n #addSelectionListener() {\n document.addEventListener(\"selectionchange\", this.#selectionChange.bind(this), {\n signal: this._signal\n });\n }\n #addFocusManager() {\n const signal = this._signal;\n window.addEventListener(\"focus\", this.#boundFocus, {\n signal\n });\n window.addEventListener(\"blur\", this.#boundBlur, {\n signal\n });\n }\n #removeFocusManager() {\n window.removeEventListener(\"focus\", this.#boundFocus);\n window.removeEventListener(\"blur\", this.#boundBlur);\n }\n blur() {\n this.isShiftKeyDown = false;\n if (this.#highlightWhenShiftUp) {\n this.#highlightWhenShiftUp = false;\n this.#onSelectEnd(\"main_toolbar\");\n }\n if (!this.hasSelection) {\n return;\n }\n const {\n activeElement\n } = document;\n for (const editor of this.#selectedEditors) {\n if (editor.div.contains(activeElement)) {\n this.#lastActiveElement = [editor, activeElement];\n editor._focusEventsAllowed = false;\n break;\n }\n }\n }\n focus() {\n if (!this.#lastActiveElement) {\n return;\n }\n const [lastEditor, lastActiveElement] = this.#lastActiveElement;\n this.#lastActiveElement = null;\n lastActiveElement.addEventListener(\"focusin\", () => {\n lastEditor._focusEventsAllowed = true;\n }, {\n once: true,\n signal: this._signal\n });\n lastActiveElement.focus();\n }\n #addKeyboardManager() {\n const signal = this._signal;\n window.addEventListener(\"keydown\", this.#boundKeydown, {\n signal\n });\n window.addEventListener(\"keyup\", this.#boundKeyup, {\n signal\n });\n }\n #removeKeyboardManager() {\n window.removeEventListener(\"keydown\", this.#boundKeydown);\n window.removeEventListener(\"keyup\", this.#boundKeyup);\n }\n #addCopyPasteListeners() {\n const signal = this._signal;\n document.addEventListener(\"copy\", this.#boundCopy, {\n signal\n });\n document.addEventListener(\"cut\", this.#boundCut, {\n signal\n });\n document.addEventListener(\"paste\", this.#boundPaste, {\n signal\n });\n }\n #removeCopyPasteListeners() {\n document.removeEventListener(\"copy\", this.#boundCopy);\n document.removeEventListener(\"cut\", this.#boundCut);\n document.removeEventListener(\"paste\", this.#boundPaste);\n }\n #addDragAndDropListeners() {\n const signal = this._signal;\n document.addEventListener(\"dragover\", this.dragOver.bind(this), {\n signal\n });\n document.addEventListener(\"drop\", this.drop.bind(this), {\n signal\n });\n }\n addEditListeners() {\n this.#addKeyboardManager();\n this.#addCopyPasteListeners();\n }\n removeEditListeners() {\n this.#removeKeyboardManager();\n this.#removeCopyPasteListeners();\n }\n dragOver(event) {\n for (const {\n type\n } of event.dataTransfer.items) {\n for (const editorType of this.#editorTypes) {\n if (editorType.isHandlingMimeForPasting(type)) {\n event.dataTransfer.dropEffect = \"copy\";\n event.preventDefault();\n return;\n }\n }\n }\n }\n drop(event) {\n for (const item of event.dataTransfer.items) {\n for (const editorType of this.#editorTypes) {\n if (editorType.isHandlingMimeForPasting(item.type)) {\n editorType.paste(item, this.currentLayer);\n event.preventDefault();\n return;\n }\n }\n }\n }\n copy(event) {\n event.preventDefault();\n this.#activeEditor?.commitOrRemove();\n if (!this.hasSelection) {\n return;\n }\n const editors = [];\n for (const editor of this.#selectedEditors) {\n const serialized = editor.serialize(true);\n if (serialized) {\n editors.push(serialized);\n }\n }\n if (editors.length === 0) {\n return;\n }\n event.clipboardData.setData(\"application/pdfjs\", JSON.stringify(editors));\n }\n cut(event) {\n this.copy(event);\n this.delete();\n }\n paste(event) {\n event.preventDefault();\n const {\n clipboardData\n } = event;\n for (const item of clipboardData.items) {\n for (const editorType of this.#editorTypes) {\n if (editorType.isHandlingMimeForPasting(item.type)) {\n editorType.paste(item, this.currentLayer);\n return;\n }\n }\n }\n let data = clipboardData.getData(\"application/pdfjs\");\n if (!data) {\n return;\n }\n try {\n data = JSON.parse(data);\n } catch (ex) {\n warn(`paste: \"${ex.message}\".`);\n return;\n }\n if (!Array.isArray(data)) {\n return;\n }\n this.unselectAll();\n const layer = this.currentLayer;\n try {\n const newEditors = [];\n for (const editor of data) {\n const deserializedEditor = layer.deserialize(editor);\n if (!deserializedEditor) {\n return;\n }\n newEditors.push(deserializedEditor);\n }\n const cmd = () => {\n for (const editor of newEditors) {\n this.#addEditorToLayer(editor);\n }\n this.#selectEditors(newEditors);\n };\n const undo = () => {\n for (const editor of newEditors) {\n editor.remove();\n }\n };\n this.addCommands({\n cmd,\n undo,\n mustExec: true\n });\n } catch (ex) {\n warn(`paste: \"${ex.message}\".`);\n }\n }\n keydown(event) {\n if (!this.isShiftKeyDown && event.key === \"Shift\") {\n this.isShiftKeyDown = true;\n }\n if (this.#mode !== AnnotationEditorType.NONE && !this.isEditorHandlingKeyboard) {\n AnnotationEditorUIManager._keyboardManager.exec(this, event);\n }\n }\n keyup(event) {\n if (this.isShiftKeyDown && event.key === \"Shift\") {\n this.isShiftKeyDown = false;\n if (this.#highlightWhenShiftUp) {\n this.#highlightWhenShiftUp = false;\n this.#onSelectEnd(\"main_toolbar\");\n }\n }\n }\n onEditingAction({\n name\n }) {\n switch (name) {\n case \"undo\":\n case \"redo\":\n case \"delete\":\n case \"selectAll\":\n this[name]();\n break;\n case \"highlightSelection\":\n this.highlightSelection(\"context_menu\");\n break;\n }\n }\n #dispatchUpdateStates(details) {\n const hasChanged = Object.entries(details).some(([key, value]) => this.#previousStates[key] !== value);\n if (hasChanged) {\n this._eventBus.dispatch(\"annotationeditorstateschanged\", {\n source: this,\n details: Object.assign(this.#previousStates, details)\n });\n if (this.#mode === AnnotationEditorType.HIGHLIGHT && details.hasSelectedEditor === false) {\n this.#dispatchUpdateUI([[AnnotationEditorParamsType.HIGHLIGHT_FREE, true]]);\n }\n }\n }\n #dispatchUpdateUI(details) {\n this._eventBus.dispatch(\"annotationeditorparamschanged\", {\n source: this,\n details\n });\n }\n setEditingState(isEditing) {\n if (isEditing) {\n this.#addFocusManager();\n this.#addCopyPasteListeners();\n this.#dispatchUpdateStates({\n isEditing: this.#mode !== AnnotationEditorType.NONE,\n isEmpty: this.#isEmpty(),\n hasSomethingToUndo: this.#commandManager.hasSomethingToUndo(),\n hasSomethingToRedo: this.#commandManager.hasSomethingToRedo(),\n hasSelectedEditor: false\n });\n } else {\n this.#removeFocusManager();\n this.#removeCopyPasteListeners();\n this.#dispatchUpdateStates({\n isEditing: false\n });\n this.disableUserSelect(false);\n }\n }\n registerEditorTypes(types) {\n if (this.#editorTypes) {\n return;\n }\n this.#editorTypes = types;\n for (const editorType of this.#editorTypes) {\n this.#dispatchUpdateUI(editorType.defaultPropertiesToUpdate);\n }\n }\n getId() {\n return this.#idManager.id;\n }\n get currentLayer() {\n return this.#allLayers.get(this.#currentPageIndex);\n }\n getLayer(pageIndex) {\n return this.#allLayers.get(pageIndex);\n }\n get currentPageIndex() {\n return this.#currentPageIndex;\n }\n addLayer(layer) {\n this.#allLayers.set(layer.pageIndex, layer);\n if (this.#isEnabled) {\n layer.enable();\n } else {\n layer.disable();\n }\n }\n removeLayer(layer) {\n this.#allLayers.delete(layer.pageIndex);\n }\n updateMode(mode, editId = null, isFromKeyboard = false) {\n if (this.#mode === mode) {\n return;\n }\n this.#mode = mode;\n if (mode === AnnotationEditorType.NONE) {\n this.setEditingState(false);\n this.#disableAll();\n return;\n }\n this.setEditingState(true);\n this.#enableAll();\n this.unselectAll();\n for (const layer of this.#allLayers.values()) {\n layer.updateMode(mode);\n }\n if (!editId && isFromKeyboard) {\n this.addNewEditorFromKeyboard();\n return;\n }\n if (!editId) {\n return;\n }\n for (const editor of this.#allEditors.values()) {\n if (editor.annotationElementId === editId) {\n this.setSelected(editor);\n editor.enterInEditMode();\n break;\n }\n }\n }\n addNewEditorFromKeyboard() {\n if (this.currentLayer.canCreateNewEmptyEditor()) {\n this.currentLayer.addNewEditor();\n }\n }\n updateToolbar(mode) {\n if (mode === this.#mode) {\n return;\n }\n this._eventBus.dispatch(\"switchannotationeditormode\", {\n source: this,\n mode\n });\n }\n updateParams(type, value) {\n if (!this.#editorTypes) {\n return;\n }\n switch (type) {\n case AnnotationEditorParamsType.CREATE:\n this.currentLayer.addNewEditor();\n return;\n case AnnotationEditorParamsType.HIGHLIGHT_DEFAULT_COLOR:\n this.#mainHighlightColorPicker?.updateColor(value);\n break;\n case AnnotationEditorParamsType.HIGHLIGHT_SHOW_ALL:\n this._eventBus.dispatch(\"reporttelemetry\", {\n source: this,\n details: {\n type: \"editing\",\n data: {\n type: \"highlight\",\n action: \"toggle_visibility\"\n }\n }\n });\n (this.#showAllStates ||= new Map()).set(type, value);\n this.showAllEditors(\"highlight\", value);\n break;\n }\n for (const editor of this.#selectedEditors) {\n editor.updateParams(type, value);\n }\n for (const editorType of this.#editorTypes) {\n editorType.updateDefaultParams(type, value);\n }\n }\n showAllEditors(type, visible, updateButton = false) {\n for (const editor of this.#allEditors.values()) {\n if (editor.editorType === type) {\n editor.show(visible);\n }\n }\n const state = this.#showAllStates?.get(AnnotationEditorParamsType.HIGHLIGHT_SHOW_ALL) ?? true;\n if (state !== visible) {\n this.#dispatchUpdateUI([[AnnotationEditorParamsType.HIGHLIGHT_SHOW_ALL, visible]]);\n }\n }\n enableWaiting(mustWait = false) {\n if (this.#isWaiting === mustWait) {\n return;\n }\n this.#isWaiting = mustWait;\n for (const layer of this.#allLayers.values()) {\n if (mustWait) {\n layer.disableClick();\n } else {\n layer.enableClick();\n }\n layer.div.classList.toggle(\"waiting\", mustWait);\n }\n }\n #enableAll() {\n if (!this.#isEnabled) {\n this.#isEnabled = true;\n for (const layer of this.#allLayers.values()) {\n layer.enable();\n }\n for (const editor of this.#allEditors.values()) {\n editor.enable();\n }\n }\n }\n #disableAll() {\n this.unselectAll();\n if (this.#isEnabled) {\n this.#isEnabled = false;\n for (const layer of this.#allLayers.values()) {\n layer.disable();\n }\n for (const editor of this.#allEditors.values()) {\n editor.disable();\n }\n }\n }\n getEditors(pageIndex) {\n const editors = [];\n for (const editor of this.#allEditors.values()) {\n if (editor.pageIndex === pageIndex) {\n editors.push(editor);\n }\n }\n return editors;\n }\n getEditor(id) {\n return this.#allEditors.get(id);\n }\n addEditor(editor) {\n this.#allEditors.set(editor.id, editor);\n }\n removeEditor(editor) {\n if (editor.div.contains(document.activeElement)) {\n if (this.#focusMainContainerTimeoutId) {\n clearTimeout(this.#focusMainContainerTimeoutId);\n }\n this.#focusMainContainerTimeoutId = setTimeout(() => {\n this.focusMainContainer();\n this.#focusMainContainerTimeoutId = null;\n }, 0);\n }\n this.#allEditors.delete(editor.id);\n this.unselect(editor);\n if (!editor.annotationElementId || !this.#deletedAnnotationsElementIds.has(editor.annotationElementId)) {\n this.#annotationStorage?.remove(editor.id);\n }\n }\n addDeletedAnnotationElement(editor) {\n this.#deletedAnnotationsElementIds.add(editor.annotationElementId);\n this.addChangedExistingAnnotation(editor);\n editor.deleted = true;\n }\n isDeletedAnnotationElement(annotationElementId) {\n return this.#deletedAnnotationsElementIds.has(annotationElementId);\n }\n removeDeletedAnnotationElement(editor) {\n this.#deletedAnnotationsElementIds.delete(editor.annotationElementId);\n this.removeChangedExistingAnnotation(editor);\n editor.deleted = false;\n }\n #addEditorToLayer(editor) {\n const layer = this.#allLayers.get(editor.pageIndex);\n if (layer) {\n layer.addOrRebuild(editor);\n } else {\n this.addEditor(editor);\n this.addToAnnotationStorage(editor);\n }\n }\n setActiveEditor(editor) {\n if (this.#activeEditor === editor) {\n return;\n }\n this.#activeEditor = editor;\n if (editor) {\n this.#dispatchUpdateUI(editor.propertiesToUpdate);\n }\n }\n get #lastSelectedEditor() {\n let ed = null;\n for (ed of this.#selectedEditors) {}\n return ed;\n }\n updateUI(editor) {\n if (this.#lastSelectedEditor === editor) {\n this.#dispatchUpdateUI(editor.propertiesToUpdate);\n }\n }\n toggleSelected(editor) {\n if (this.#selectedEditors.has(editor)) {\n this.#selectedEditors.delete(editor);\n editor.unselect();\n this.#dispatchUpdateStates({\n hasSelectedEditor: this.hasSelection\n });\n return;\n }\n this.#selectedEditors.add(editor);\n editor.select();\n this.#dispatchUpdateUI(editor.propertiesToUpdate);\n this.#dispatchUpdateStates({\n hasSelectedEditor: true\n });\n }\n setSelected(editor) {\n for (const ed of this.#selectedEditors) {\n if (ed !== editor) {\n ed.unselect();\n }\n }\n this.#selectedEditors.clear();\n this.#selectedEditors.add(editor);\n editor.select();\n this.#dispatchUpdateUI(editor.propertiesToUpdate);\n this.#dispatchUpdateStates({\n hasSelectedEditor: true\n });\n }\n isSelected(editor) {\n return this.#selectedEditors.has(editor);\n }\n get firstSelectedEditor() {\n return this.#selectedEditors.values().next().value;\n }\n unselect(editor) {\n editor.unselect();\n this.#selectedEditors.delete(editor);\n this.#dispatchUpdateStates({\n hasSelectedEditor: this.hasSelection\n });\n }\n get hasSelection() {\n return this.#selectedEditors.size !== 0;\n }\n get isEnterHandled() {\n return this.#selectedEditors.size === 1 && this.firstSelectedEditor.isEnterHandled;\n }\n undo() {\n this.#commandManager.undo();\n this.#dispatchUpdateStates({\n hasSomethingToUndo: this.#commandManager.hasSomethingToUndo(),\n hasSomethingToRedo: true,\n isEmpty: this.#isEmpty()\n });\n }\n redo() {\n this.#commandManager.redo();\n this.#dispatchUpdateStates({\n hasSomethingToUndo: true,\n hasSomethingToRedo: this.#commandManager.hasSomethingToRedo(),\n isEmpty: this.#isEmpty()\n });\n }\n addCommands(params) {\n this.#commandManager.add(params);\n this.#dispatchUpdateStates({\n hasSomethingToUndo: true,\n hasSomethingToRedo: false,\n isEmpty: this.#isEmpty()\n });\n }\n #isEmpty() {\n if (this.#allEditors.size === 0) {\n return true;\n }\n if (this.#allEditors.size === 1) {\n for (const editor of this.#allEditors.values()) {\n return editor.isEmpty();\n }\n }\n return false;\n }\n delete() {\n this.commitOrRemove();\n if (!this.hasSelection) {\n return;\n }\n const editors = [...this.#selectedEditors];\n const cmd = () => {\n for (const editor of editors) {\n editor.remove();\n }\n };\n const undo = () => {\n for (const editor of editors) {\n this.#addEditorToLayer(editor);\n }\n };\n this.addCommands({\n cmd,\n undo,\n mustExec: true\n });\n }\n commitOrRemove() {\n this.#activeEditor?.commitOrRemove();\n }\n hasSomethingToControl() {\n return this.#activeEditor || this.hasSelection;\n }\n #selectEditors(editors) {\n for (const editor of this.#selectedEditors) {\n editor.unselect();\n }\n this.#selectedEditors.clear();\n for (const editor of editors) {\n if (editor.isEmpty()) {\n continue;\n }\n this.#selectedEditors.add(editor);\n editor.select();\n }\n this.#dispatchUpdateStates({\n hasSelectedEditor: this.hasSelection\n });\n }\n selectAll() {\n for (const editor of this.#selectedEditors) {\n editor.commit();\n }\n this.#selectEditors(this.#allEditors.values());\n }\n unselectAll() {\n if (this.#activeEditor) {\n this.#activeEditor.commitOrRemove();\n if (this.#mode !== AnnotationEditorType.NONE) {\n return;\n }\n }\n if (!this.hasSelection) {\n return;\n }\n for (const editor of this.#selectedEditors) {\n editor.unselect();\n }\n this.#selectedEditors.clear();\n this.#dispatchUpdateStates({\n hasSelectedEditor: false\n });\n }\n translateSelectedEditors(x, y, noCommit = false) {\n if (!noCommit) {\n this.commitOrRemove();\n }\n if (!this.hasSelection) {\n return;\n }\n this.#translation[0] += x;\n this.#translation[1] += y;\n const [totalX, totalY] = this.#translation;\n const editors = [...this.#selectedEditors];\n const TIME_TO_WAIT = 1000;\n if (this.#translationTimeoutId) {\n clearTimeout(this.#translationTimeoutId);\n }\n this.#translationTimeoutId = setTimeout(() => {\n this.#translationTimeoutId = null;\n this.#translation[0] = this.#translation[1] = 0;\n this.addCommands({\n cmd: () => {\n for (const editor of editors) {\n if (this.#allEditors.has(editor.id)) {\n editor.translateInPage(totalX, totalY);\n }\n }\n },\n undo: () => {\n for (const editor of editors) {\n if (this.#allEditors.has(editor.id)) {\n editor.translateInPage(-totalX, -totalY);\n }\n }\n },\n mustExec: false\n });\n }, TIME_TO_WAIT);\n for (const editor of editors) {\n editor.translateInPage(x, y);\n }\n }\n setUpDragSession() {\n if (!this.hasSelection) {\n return;\n }\n this.disableUserSelect(true);\n this.#draggingEditors = new Map();\n for (const editor of this.#selectedEditors) {\n this.#draggingEditors.set(editor, {\n savedX: editor.x,\n savedY: editor.y,\n savedPageIndex: editor.pageIndex,\n newX: 0,\n newY: 0,\n newPageIndex: -1\n });\n }\n }\n endDragSession() {\n if (!this.#draggingEditors) {\n return false;\n }\n this.disableUserSelect(false);\n const map = this.#draggingEditors;\n this.#draggingEditors = null;\n let mustBeAddedInUndoStack = false;\n for (const [{\n x,\n y,\n pageIndex\n }, value] of map) {\n value.newX = x;\n value.newY = y;\n value.newPageIndex = pageIndex;\n mustBeAddedInUndoStack ||= x !== value.savedX || y !== value.savedY || pageIndex !== value.savedPageIndex;\n }\n if (!mustBeAddedInUndoStack) {\n return false;\n }\n const move = (editor, x, y, pageIndex) => {\n if (this.#allEditors.has(editor.id)) {\n const parent = this.#allLayers.get(pageIndex);\n if (parent) {\n editor._setParentAndPosition(parent, x, y);\n } else {\n editor.pageIndex = pageIndex;\n editor.x = x;\n editor.y = y;\n }\n }\n };\n this.addCommands({\n cmd: () => {\n for (const [editor, {\n newX,\n newY,\n newPageIndex\n }] of map) {\n move(editor, newX, newY, newPageIndex);\n }\n },\n undo: () => {\n for (const [editor, {\n savedX,\n savedY,\n savedPageIndex\n }] of map) {\n move(editor, savedX, savedY, savedPageIndex);\n }\n },\n mustExec: true\n });\n return true;\n }\n dragSelectedEditors(tx, ty) {\n if (!this.#draggingEditors) {\n return;\n }\n for (const editor of this.#draggingEditors.keys()) {\n editor.drag(tx, ty);\n }\n }\n rebuild(editor) {\n if (editor.parent === null) {\n const parent = this.getLayer(editor.pageIndex);\n if (parent) {\n parent.changeParent(editor);\n parent.addOrRebuild(editor);\n } else {\n this.addEditor(editor);\n this.addToAnnotationStorage(editor);\n editor.rebuild();\n }\n } else {\n editor.parent.addOrRebuild(editor);\n }\n }\n get isEditorHandlingKeyboard() {\n return this.getActive()?.shouldGetKeyboardEvents() || this.#selectedEditors.size === 1 && this.firstSelectedEditor.shouldGetKeyboardEvents();\n }\n isActive(editor) {\n return this.#activeEditor === editor;\n }\n getActive() {\n return this.#activeEditor;\n }\n getMode() {\n return this.#mode;\n }\n get imageManager() {\n return shadow(this, \"imageManager\", new ImageManager());\n }\n getSelectionBoxes(textLayer) {\n if (!textLayer) {\n return null;\n }\n const selection = document.getSelection();\n for (let i = 0, ii = selection.rangeCount; i < ii; i++) {\n if (!textLayer.contains(selection.getRangeAt(i).commonAncestorContainer)) {\n return null;\n }\n }\n const {\n x: layerX,\n y: layerY,\n width: parentWidth,\n height: parentHeight\n } = textLayer.getBoundingClientRect();\n let rotator;\n switch (textLayer.getAttribute(\"data-main-rotation\")) {\n case \"90\":\n rotator = (x, y, w, h) => ({\n x: (y - layerY) / parentHeight,\n y: 1 - (x + w - layerX) / parentWidth,\n width: h / parentHeight,\n height: w / parentWidth\n });\n break;\n case \"180\":\n rotator = (x, y, w, h) => ({\n x: 1 - (x + w - layerX) / parentWidth,\n y: 1 - (y + h - layerY) / parentHeight,\n width: w / parentWidth,\n height: h / parentHeight\n });\n break;\n case \"270\":\n rotator = (x, y, w, h) => ({\n x: 1 - (y + h - layerY) / parentHeight,\n y: (x - layerX) / parentWidth,\n width: h / parentHeight,\n height: w / parentWidth\n });\n break;\n default:\n rotator = (x, y, w, h) => ({\n x: (x - layerX) / parentWidth,\n y: (y - layerY) / parentHeight,\n width: w / parentWidth,\n height: h / parentHeight\n });\n break;\n }\n const boxes = [];\n for (let i = 0, ii = selection.rangeCount; i < ii; i++) {\n const range = selection.getRangeAt(i);\n if (range.collapsed) {\n continue;\n }\n for (const {\n x,\n y,\n width,\n height\n } of range.getClientRects()) {\n if (width === 0 || height === 0) {\n continue;\n }\n boxes.push(rotator(x, y, width, height));\n }\n }\n return boxes.length === 0 ? null : boxes;\n }\n addChangedExistingAnnotation({\n annotationElementId,\n id\n }) {\n (this.#changedExistingAnnotations ||= new Map()).set(annotationElementId, id);\n }\n removeChangedExistingAnnotation({\n annotationElementId\n }) {\n this.#changedExistingAnnotations?.delete(annotationElementId);\n }\n renderAnnotationElement(annotation) {\n const editorId = this.#changedExistingAnnotations?.get(annotation.data.id);\n if (!editorId) {\n return;\n }\n const editor = this.#annotationStorage.getRawValue(editorId);\n if (!editor) {\n return;\n }\n if (this.#mode === AnnotationEditorType.NONE && !editor.hasBeenModified) {\n return;\n }\n editor.renderAnnotationElement(annotation);\n }\n}\n\n;// CONCATENATED MODULE: ./src/display/editor/alt_text.js\n\nclass AltText {\n #altText = \"\";\n #altTextDecorative = false;\n #altTextButton = null;\n #altTextTooltip = null;\n #altTextTooltipTimeout = null;\n #altTextWasFromKeyBoard = false;\n #editor = null;\n static _l10nPromise = null;\n constructor(editor) {\n this.#editor = editor;\n }\n static initialize(l10nPromise) {\n AltText._l10nPromise ||= l10nPromise;\n }\n async render() {\n const altText = this.#altTextButton = document.createElement(\"button\");\n altText.className = \"altText\";\n const msg = await AltText._l10nPromise.get(\"pdfjs-editor-alt-text-button-label\");\n altText.textContent = msg;\n altText.setAttribute(\"aria-label\", msg);\n altText.tabIndex = \"0\";\n const signal = this.#editor._uiManager._signal;\n altText.addEventListener(\"contextmenu\", noContextMenu, {\n signal\n });\n altText.addEventListener(\"pointerdown\", event => event.stopPropagation(), {\n signal\n });\n const onClick = event => {\n event.preventDefault();\n this.#editor._uiManager.editAltText(this.#editor);\n };\n altText.addEventListener(\"click\", onClick, {\n capture: true,\n signal\n });\n altText.addEventListener(\"keydown\", event => {\n if (event.target === altText && event.key === \"Enter\") {\n this.#altTextWasFromKeyBoard = true;\n onClick(event);\n }\n }, {\n signal\n });\n await this.#setState();\n return altText;\n }\n finish() {\n if (!this.#altTextButton) {\n return;\n }\n this.#altTextButton.focus({\n focusVisible: this.#altTextWasFromKeyBoard\n });\n this.#altTextWasFromKeyBoard = false;\n }\n isEmpty() {\n return !this.#altText && !this.#altTextDecorative;\n }\n get data() {\n return {\n altText: this.#altText,\n decorative: this.#altTextDecorative\n };\n }\n set data({\n altText,\n decorative\n }) {\n if (this.#altText === altText && this.#altTextDecorative === decorative) {\n return;\n }\n this.#altText = altText;\n this.#altTextDecorative = decorative;\n this.#setState();\n }\n toggle(enabled = false) {\n if (!this.#altTextButton) {\n return;\n }\n if (!enabled && this.#altTextTooltipTimeout) {\n clearTimeout(this.#altTextTooltipTimeout);\n this.#altTextTooltipTimeout = null;\n }\n this.#altTextButton.disabled = !enabled;\n }\n destroy() {\n this.#altTextButton?.remove();\n this.#altTextButton = null;\n this.#altTextTooltip = null;\n }\n async #setState() {\n const button = this.#altTextButton;\n if (!button) {\n return;\n }\n if (!this.#altText && !this.#altTextDecorative) {\n button.classList.remove(\"done\");\n this.#altTextTooltip?.remove();\n return;\n }\n button.classList.add(\"done\");\n AltText._l10nPromise.get(\"pdfjs-editor-alt-text-edit-button-label\").then(msg => {\n button.setAttribute(\"aria-label\", msg);\n });\n let tooltip = this.#altTextTooltip;\n if (!tooltip) {\n this.#altTextTooltip = tooltip = document.createElement(\"span\");\n tooltip.className = \"tooltip\";\n tooltip.setAttribute(\"role\", \"tooltip\");\n const id = tooltip.id = `alt-text-tooltip-${this.#editor.id}`;\n button.setAttribute(\"aria-describedby\", id);\n const DELAY_TO_SHOW_TOOLTIP = 100;\n const signal = this.#editor._uiManager._signal;\n signal.addEventListener(\"abort\", () => {\n clearTimeout(this.#altTextTooltipTimeout);\n this.#altTextTooltipTimeout = null;\n }, {\n once: true\n });\n button.addEventListener(\"mouseenter\", () => {\n this.#altTextTooltipTimeout = setTimeout(() => {\n this.#altTextTooltipTimeout = null;\n this.#altTextTooltip.classList.add(\"show\");\n this.#editor._reportTelemetry({\n action: \"alt_text_tooltip\"\n });\n }, DELAY_TO_SHOW_TOOLTIP);\n }, {\n signal\n });\n button.addEventListener(\"mouseleave\", () => {\n if (this.#altTextTooltipTimeout) {\n clearTimeout(this.#altTextTooltipTimeout);\n this.#altTextTooltipTimeout = null;\n }\n this.#altTextTooltip?.classList.remove(\"show\");\n }, {\n signal\n });\n }\n tooltip.innerText = this.#altTextDecorative ? await AltText._l10nPromise.get(\"pdfjs-editor-alt-text-decorative-tooltip\") : this.#altText;\n if (!tooltip.parentNode) {\n button.append(tooltip);\n }\n const element = this.#editor.getImageForAltText();\n element?.setAttribute(\"aria-describedby\", tooltip.id);\n }\n}\n\n;// CONCATENATED MODULE: ./src/display/editor/editor.js\n\n\n\n\n\nclass AnnotationEditor {\n #accessibilityData = null;\n #allResizerDivs = null;\n #altText = null;\n #disabled = false;\n #keepAspectRatio = false;\n #resizersDiv = null;\n #savedDimensions = null;\n #boundFocusin = this.focusin.bind(this);\n #boundFocusout = this.focusout.bind(this);\n #editToolbar = null;\n #focusedResizerName = \"\";\n #hasBeenClicked = false;\n #initialPosition = null;\n #isEditing = false;\n #isInEditMode = false;\n #isResizerEnabledForKeyboard = false;\n #moveInDOMTimeout = null;\n #prevDragX = 0;\n #prevDragY = 0;\n #telemetryTimeouts = null;\n _initialOptions = Object.create(null);\n _isVisible = true;\n _uiManager = null;\n _focusEventsAllowed = true;\n _l10nPromise = null;\n #isDraggable = false;\n #zIndex = AnnotationEditor._zIndex++;\n static _borderLineWidth = -1;\n static _colorManager = new ColorManager();\n static _zIndex = 1;\n static _telemetryTimeout = 1000;\n static get _resizerKeyboardManager() {\n const resize = AnnotationEditor.prototype._resizeWithKeyboard;\n const small = AnnotationEditorUIManager.TRANSLATE_SMALL;\n const big = AnnotationEditorUIManager.TRANSLATE_BIG;\n return shadow(this, \"_resizerKeyboardManager\", new KeyboardManager([[[\"ArrowLeft\", \"mac+ArrowLeft\"], resize, {\n args: [-small, 0]\n }], [[\"ctrl+ArrowLeft\", \"mac+shift+ArrowLeft\"], resize, {\n args: [-big, 0]\n }], [[\"ArrowRight\", \"mac+ArrowRight\"], resize, {\n args: [small, 0]\n }], [[\"ctrl+ArrowRight\", \"mac+shift+ArrowRight\"], resize, {\n args: [big, 0]\n }], [[\"ArrowUp\", \"mac+ArrowUp\"], resize, {\n args: [0, -small]\n }], [[\"ctrl+ArrowUp\", \"mac+shift+ArrowUp\"], resize, {\n args: [0, -big]\n }], [[\"ArrowDown\", \"mac+ArrowDown\"], resize, {\n args: [0, small]\n }], [[\"ctrl+ArrowDown\", \"mac+shift+ArrowDown\"], resize, {\n args: [0, big]\n }], [[\"Escape\", \"mac+Escape\"], AnnotationEditor.prototype._stopResizingWithKeyboard]]));\n }\n constructor(parameters) {\n if (this.constructor === AnnotationEditor) {\n unreachable(\"Cannot initialize AnnotationEditor.\");\n }\n this.parent = parameters.parent;\n this.id = parameters.id;\n this.width = this.height = null;\n this.pageIndex = parameters.parent.pageIndex;\n this.name = parameters.name;\n this.div = null;\n this._uiManager = parameters.uiManager;\n this.annotationElementId = null;\n this._willKeepAspectRatio = false;\n this._initialOptions.isCentered = parameters.isCentered;\n this._structTreeParentId = null;\n const {\n rotation,\n rawDims: {\n pageWidth,\n pageHeight,\n pageX,\n pageY\n }\n } = this.parent.viewport;\n this.rotation = rotation;\n this.pageRotation = (360 + rotation - this._uiManager.viewParameters.rotation) % 360;\n this.pageDimensions = [pageWidth, pageHeight];\n this.pageTranslation = [pageX, pageY];\n const [width, height] = this.parentDimensions;\n this.x = parameters.x / width;\n this.y = parameters.y / height;\n this.isAttachedToDOM = false;\n this.deleted = false;\n }\n get editorType() {\n return Object.getPrototypeOf(this).constructor._type;\n }\n static get _defaultLineColor() {\n return shadow(this, \"_defaultLineColor\", this._colorManager.getHexCode(\"CanvasText\"));\n }\n static deleteAnnotationElement(editor) {\n const fakeEditor = new FakeEditor({\n id: editor.parent.getNextId(),\n parent: editor.parent,\n uiManager: editor._uiManager\n });\n fakeEditor.annotationElementId = editor.annotationElementId;\n fakeEditor.deleted = true;\n fakeEditor._uiManager.addToAnnotationStorage(fakeEditor);\n }\n static initialize(l10n, _uiManager, options) {\n AnnotationEditor._l10nPromise ||= new Map([\"pdfjs-editor-alt-text-button-label\", \"pdfjs-editor-alt-text-edit-button-label\", \"pdfjs-editor-alt-text-decorative-tooltip\", \"pdfjs-editor-resizer-label-topLeft\", \"pdfjs-editor-resizer-label-topMiddle\", \"pdfjs-editor-resizer-label-topRight\", \"pdfjs-editor-resizer-label-middleRight\", \"pdfjs-editor-resizer-label-bottomRight\", \"pdfjs-editor-resizer-label-bottomMiddle\", \"pdfjs-editor-resizer-label-bottomLeft\", \"pdfjs-editor-resizer-label-middleLeft\"].map(str => [str, l10n.get(str.replaceAll(/([A-Z])/g, c => `-${c.toLowerCase()}`))]));\n if (options?.strings) {\n for (const str of options.strings) {\n AnnotationEditor._l10nPromise.set(str, l10n.get(str));\n }\n }\n if (AnnotationEditor._borderLineWidth !== -1) {\n return;\n }\n const style = getComputedStyle(document.documentElement);\n AnnotationEditor._borderLineWidth = parseFloat(style.getPropertyValue(\"--outline-width\")) || 0;\n }\n static updateDefaultParams(_type, _value) {}\n static get defaultPropertiesToUpdate() {\n return [];\n }\n static isHandlingMimeForPasting(mime) {\n return false;\n }\n static paste(item, parent) {\n unreachable(\"Not implemented\");\n }\n get propertiesToUpdate() {\n return [];\n }\n get _isDraggable() {\n return this.#isDraggable;\n }\n set _isDraggable(value) {\n this.#isDraggable = value;\n this.div?.classList.toggle(\"draggable\", value);\n }\n get isEnterHandled() {\n return true;\n }\n center() {\n const [pageWidth, pageHeight] = this.pageDimensions;\n switch (this.parentRotation) {\n case 90:\n this.x -= this.height * pageHeight / (pageWidth * 2);\n this.y += this.width * pageWidth / (pageHeight * 2);\n break;\n case 180:\n this.x += this.width / 2;\n this.y += this.height / 2;\n break;\n case 270:\n this.x += this.height * pageHeight / (pageWidth * 2);\n this.y -= this.width * pageWidth / (pageHeight * 2);\n break;\n default:\n this.x -= this.width / 2;\n this.y -= this.height / 2;\n break;\n }\n this.fixAndSetPosition();\n }\n addCommands(params) {\n this._uiManager.addCommands(params);\n }\n get currentLayer() {\n return this._uiManager.currentLayer;\n }\n setInBackground() {\n this.div.style.zIndex = 0;\n }\n setInForeground() {\n this.div.style.zIndex = this.#zIndex;\n }\n setParent(parent) {\n if (parent !== null) {\n this.pageIndex = parent.pageIndex;\n this.pageDimensions = parent.pageDimensions;\n } else {\n this.#stopResizing();\n }\n this.parent = parent;\n }\n focusin(event) {\n if (!this._focusEventsAllowed) {\n return;\n }\n if (!this.#hasBeenClicked) {\n this.parent.setSelected(this);\n } else {\n this.#hasBeenClicked = false;\n }\n }\n focusout(event) {\n if (!this._focusEventsAllowed) {\n return;\n }\n if (!this.isAttachedToDOM) {\n return;\n }\n const target = event.relatedTarget;\n if (target?.closest(`#${this.id}`)) {\n return;\n }\n event.preventDefault();\n if (!this.parent?.isMultipleSelection) {\n this.commitOrRemove();\n }\n }\n commitOrRemove() {\n if (this.isEmpty()) {\n this.remove();\n } else {\n this.commit();\n }\n }\n commit() {\n this.addToAnnotationStorage();\n }\n addToAnnotationStorage() {\n this._uiManager.addToAnnotationStorage(this);\n }\n setAt(x, y, tx, ty) {\n const [width, height] = this.parentDimensions;\n [tx, ty] = this.screenToPageTranslation(tx, ty);\n this.x = (x + tx) / width;\n this.y = (y + ty) / height;\n this.fixAndSetPosition();\n }\n #translate([width, height], x, y) {\n [x, y] = this.screenToPageTranslation(x, y);\n this.x += x / width;\n this.y += y / height;\n this.fixAndSetPosition();\n }\n translate(x, y) {\n this.#translate(this.parentDimensions, x, y);\n }\n translateInPage(x, y) {\n this.#initialPosition ||= [this.x, this.y];\n this.#translate(this.pageDimensions, x, y);\n this.div.scrollIntoView({\n block: \"nearest\"\n });\n }\n drag(tx, ty) {\n this.#initialPosition ||= [this.x, this.y];\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.x += tx / parentWidth;\n this.y += ty / parentHeight;\n if (this.parent && (this.x < 0 || this.x > 1 || this.y < 0 || this.y > 1)) {\n const {\n x,\n y\n } = this.div.getBoundingClientRect();\n if (this.parent.findNewParent(this, x, y)) {\n this.x -= Math.floor(this.x);\n this.y -= Math.floor(this.y);\n }\n }\n let {\n x,\n y\n } = this;\n const [bx, by] = this.getBaseTranslation();\n x += bx;\n y += by;\n this.div.style.left = `${(100 * x).toFixed(2)}%`;\n this.div.style.top = `${(100 * y).toFixed(2)}%`;\n this.div.scrollIntoView({\n block: \"nearest\"\n });\n }\n get _hasBeenMoved() {\n return !!this.#initialPosition && (this.#initialPosition[0] !== this.x || this.#initialPosition[1] !== this.y);\n }\n getBaseTranslation() {\n const [parentWidth, parentHeight] = this.parentDimensions;\n const {\n _borderLineWidth\n } = AnnotationEditor;\n const x = _borderLineWidth / parentWidth;\n const y = _borderLineWidth / parentHeight;\n switch (this.rotation) {\n case 90:\n return [-x, y];\n case 180:\n return [x, y];\n case 270:\n return [x, -y];\n default:\n return [-x, -y];\n }\n }\n get _mustFixPosition() {\n return true;\n }\n fixAndSetPosition(rotation = this.rotation) {\n const [pageWidth, pageHeight] = this.pageDimensions;\n let {\n x,\n y,\n width,\n height\n } = this;\n width *= pageWidth;\n height *= pageHeight;\n x *= pageWidth;\n y *= pageHeight;\n if (this._mustFixPosition) {\n switch (rotation) {\n case 0:\n x = Math.max(0, Math.min(pageWidth - width, x));\n y = Math.max(0, Math.min(pageHeight - height, y));\n break;\n case 90:\n x = Math.max(0, Math.min(pageWidth - height, x));\n y = Math.min(pageHeight, Math.max(width, y));\n break;\n case 180:\n x = Math.min(pageWidth, Math.max(width, x));\n y = Math.min(pageHeight, Math.max(height, y));\n break;\n case 270:\n x = Math.min(pageWidth, Math.max(height, x));\n y = Math.max(0, Math.min(pageHeight - width, y));\n break;\n }\n }\n this.x = x /= pageWidth;\n this.y = y /= pageHeight;\n const [bx, by] = this.getBaseTranslation();\n x += bx;\n y += by;\n const {\n style\n } = this.div;\n style.left = `${(100 * x).toFixed(2)}%`;\n style.top = `${(100 * y).toFixed(2)}%`;\n this.moveInDOM();\n }\n static #rotatePoint(x, y, angle) {\n switch (angle) {\n case 90:\n return [y, -x];\n case 180:\n return [-x, -y];\n case 270:\n return [-y, x];\n default:\n return [x, y];\n }\n }\n screenToPageTranslation(x, y) {\n return AnnotationEditor.#rotatePoint(x, y, this.parentRotation);\n }\n pageTranslationToScreen(x, y) {\n return AnnotationEditor.#rotatePoint(x, y, 360 - this.parentRotation);\n }\n #getRotationMatrix(rotation) {\n switch (rotation) {\n case 90:\n {\n const [pageWidth, pageHeight] = this.pageDimensions;\n return [0, -pageWidth / pageHeight, pageHeight / pageWidth, 0];\n }\n case 180:\n return [-1, 0, 0, -1];\n case 270:\n {\n const [pageWidth, pageHeight] = this.pageDimensions;\n return [0, pageWidth / pageHeight, -pageHeight / pageWidth, 0];\n }\n default:\n return [1, 0, 0, 1];\n }\n }\n get parentScale() {\n return this._uiManager.viewParameters.realScale;\n }\n get parentRotation() {\n return (this._uiManager.viewParameters.rotation + this.pageRotation) % 360;\n }\n get parentDimensions() {\n const {\n parentScale,\n pageDimensions: [pageWidth, pageHeight]\n } = this;\n const scaledWidth = pageWidth * parentScale;\n const scaledHeight = pageHeight * parentScale;\n return util_FeatureTest.isCSSRoundSupported ? [Math.round(scaledWidth), Math.round(scaledHeight)] : [scaledWidth, scaledHeight];\n }\n setDims(width, height) {\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.div.style.width = `${(100 * width / parentWidth).toFixed(2)}%`;\n if (!this.#keepAspectRatio) {\n this.div.style.height = `${(100 * height / parentHeight).toFixed(2)}%`;\n }\n }\n fixDims() {\n const {\n style\n } = this.div;\n const {\n height,\n width\n } = style;\n const widthPercent = width.endsWith(\"%\");\n const heightPercent = !this.#keepAspectRatio && height.endsWith(\"%\");\n if (widthPercent && heightPercent) {\n return;\n }\n const [parentWidth, parentHeight] = this.parentDimensions;\n if (!widthPercent) {\n style.width = `${(100 * parseFloat(width) / parentWidth).toFixed(2)}%`;\n }\n if (!this.#keepAspectRatio && !heightPercent) {\n style.height = `${(100 * parseFloat(height) / parentHeight).toFixed(2)}%`;\n }\n }\n getInitialTranslation() {\n return [0, 0];\n }\n #createResizers() {\n if (this.#resizersDiv) {\n return;\n }\n this.#resizersDiv = document.createElement(\"div\");\n this.#resizersDiv.classList.add(\"resizers\");\n const classes = this._willKeepAspectRatio ? [\"topLeft\", \"topRight\", \"bottomRight\", \"bottomLeft\"] : [\"topLeft\", \"topMiddle\", \"topRight\", \"middleRight\", \"bottomRight\", \"bottomMiddle\", \"bottomLeft\", \"middleLeft\"];\n const signal = this._uiManager._signal;\n for (const name of classes) {\n const div = document.createElement(\"div\");\n this.#resizersDiv.append(div);\n div.classList.add(\"resizer\", name);\n div.setAttribute(\"data-resizer-name\", name);\n div.addEventListener(\"pointerdown\", this.#resizerPointerdown.bind(this, name), {\n signal\n });\n div.addEventListener(\"contextmenu\", noContextMenu, {\n signal\n });\n div.tabIndex = -1;\n }\n this.div.prepend(this.#resizersDiv);\n }\n #resizerPointerdown(name, event) {\n event.preventDefault();\n const {\n isMac\n } = util_FeatureTest.platform;\n if (event.button !== 0 || event.ctrlKey && isMac) {\n return;\n }\n this.#altText?.toggle(false);\n const boundResizerPointermove = this.#resizerPointermove.bind(this, name);\n const savedDraggable = this._isDraggable;\n this._isDraggable = false;\n const signal = this._uiManager._signal;\n const pointerMoveOptions = {\n passive: true,\n capture: true,\n signal\n };\n this.parent.togglePointerEvents(false);\n window.addEventListener(\"pointermove\", boundResizerPointermove, pointerMoveOptions);\n window.addEventListener(\"contextmenu\", noContextMenu, {\n signal\n });\n const savedX = this.x;\n const savedY = this.y;\n const savedWidth = this.width;\n const savedHeight = this.height;\n const savedParentCursor = this.parent.div.style.cursor;\n const savedCursor = this.div.style.cursor;\n this.div.style.cursor = this.parent.div.style.cursor = window.getComputedStyle(event.target).cursor;\n const pointerUpCallback = () => {\n this.parent.togglePointerEvents(true);\n this.#altText?.toggle(true);\n this._isDraggable = savedDraggable;\n window.removeEventListener(\"pointerup\", pointerUpCallback);\n window.removeEventListener(\"blur\", pointerUpCallback);\n window.removeEventListener(\"pointermove\", boundResizerPointermove, pointerMoveOptions);\n window.removeEventListener(\"contextmenu\", noContextMenu);\n this.parent.div.style.cursor = savedParentCursor;\n this.div.style.cursor = savedCursor;\n this.#addResizeToUndoStack(savedX, savedY, savedWidth, savedHeight);\n };\n window.addEventListener(\"pointerup\", pointerUpCallback, {\n signal\n });\n window.addEventListener(\"blur\", pointerUpCallback, {\n signal\n });\n }\n #addResizeToUndoStack(savedX, savedY, savedWidth, savedHeight) {\n const newX = this.x;\n const newY = this.y;\n const newWidth = this.width;\n const newHeight = this.height;\n if (newX === savedX && newY === savedY && newWidth === savedWidth && newHeight === savedHeight) {\n return;\n }\n this.addCommands({\n cmd: () => {\n this.width = newWidth;\n this.height = newHeight;\n this.x = newX;\n this.y = newY;\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.setDims(parentWidth * newWidth, parentHeight * newHeight);\n this.fixAndSetPosition();\n },\n undo: () => {\n this.width = savedWidth;\n this.height = savedHeight;\n this.x = savedX;\n this.y = savedY;\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.setDims(parentWidth * savedWidth, parentHeight * savedHeight);\n this.fixAndSetPosition();\n },\n mustExec: true\n });\n }\n #resizerPointermove(name, event) {\n const [parentWidth, parentHeight] = this.parentDimensions;\n const savedX = this.x;\n const savedY = this.y;\n const savedWidth = this.width;\n const savedHeight = this.height;\n const minWidth = AnnotationEditor.MIN_SIZE / parentWidth;\n const minHeight = AnnotationEditor.MIN_SIZE / parentHeight;\n const round = x => Math.round(x * 10000) / 10000;\n const rotationMatrix = this.#getRotationMatrix(this.rotation);\n const transf = (x, y) => [rotationMatrix[0] * x + rotationMatrix[2] * y, rotationMatrix[1] * x + rotationMatrix[3] * y];\n const invRotationMatrix = this.#getRotationMatrix(360 - this.rotation);\n const invTransf = (x, y) => [invRotationMatrix[0] * x + invRotationMatrix[2] * y, invRotationMatrix[1] * x + invRotationMatrix[3] * y];\n let getPoint;\n let getOpposite;\n let isDiagonal = false;\n let isHorizontal = false;\n switch (name) {\n case \"topLeft\":\n isDiagonal = true;\n getPoint = (w, h) => [0, 0];\n getOpposite = (w, h) => [w, h];\n break;\n case \"topMiddle\":\n getPoint = (w, h) => [w / 2, 0];\n getOpposite = (w, h) => [w / 2, h];\n break;\n case \"topRight\":\n isDiagonal = true;\n getPoint = (w, h) => [w, 0];\n getOpposite = (w, h) => [0, h];\n break;\n case \"middleRight\":\n isHorizontal = true;\n getPoint = (w, h) => [w, h / 2];\n getOpposite = (w, h) => [0, h / 2];\n break;\n case \"bottomRight\":\n isDiagonal = true;\n getPoint = (w, h) => [w, h];\n getOpposite = (w, h) => [0, 0];\n break;\n case \"bottomMiddle\":\n getPoint = (w, h) => [w / 2, h];\n getOpposite = (w, h) => [w / 2, 0];\n break;\n case \"bottomLeft\":\n isDiagonal = true;\n getPoint = (w, h) => [0, h];\n getOpposite = (w, h) => [w, 0];\n break;\n case \"middleLeft\":\n isHorizontal = true;\n getPoint = (w, h) => [0, h / 2];\n getOpposite = (w, h) => [w, h / 2];\n break;\n }\n const point = getPoint(savedWidth, savedHeight);\n const oppositePoint = getOpposite(savedWidth, savedHeight);\n let transfOppositePoint = transf(...oppositePoint);\n const oppositeX = round(savedX + transfOppositePoint[0]);\n const oppositeY = round(savedY + transfOppositePoint[1]);\n let ratioX = 1;\n let ratioY = 1;\n let [deltaX, deltaY] = this.screenToPageTranslation(event.movementX, event.movementY);\n [deltaX, deltaY] = invTransf(deltaX / parentWidth, deltaY / parentHeight);\n if (isDiagonal) {\n const oldDiag = Math.hypot(savedWidth, savedHeight);\n ratioX = ratioY = Math.max(Math.min(Math.hypot(oppositePoint[0] - point[0] - deltaX, oppositePoint[1] - point[1] - deltaY) / oldDiag, 1 / savedWidth, 1 / savedHeight), minWidth / savedWidth, minHeight / savedHeight);\n } else if (isHorizontal) {\n ratioX = Math.max(minWidth, Math.min(1, Math.abs(oppositePoint[0] - point[0] - deltaX))) / savedWidth;\n } else {\n ratioY = Math.max(minHeight, Math.min(1, Math.abs(oppositePoint[1] - point[1] - deltaY))) / savedHeight;\n }\n const newWidth = round(savedWidth * ratioX);\n const newHeight = round(savedHeight * ratioY);\n transfOppositePoint = transf(...getOpposite(newWidth, newHeight));\n const newX = oppositeX - transfOppositePoint[0];\n const newY = oppositeY - transfOppositePoint[1];\n this.width = newWidth;\n this.height = newHeight;\n this.x = newX;\n this.y = newY;\n this.setDims(parentWidth * newWidth, parentHeight * newHeight);\n this.fixAndSetPosition();\n }\n altTextFinish() {\n this.#altText?.finish();\n }\n async addEditToolbar() {\n if (this.#editToolbar || this.#isInEditMode) {\n return this.#editToolbar;\n }\n this.#editToolbar = new EditorToolbar(this);\n this.div.append(this.#editToolbar.render());\n if (this.#altText) {\n this.#editToolbar.addAltTextButton(await this.#altText.render());\n }\n return this.#editToolbar;\n }\n removeEditToolbar() {\n if (!this.#editToolbar) {\n return;\n }\n this.#editToolbar.remove();\n this.#editToolbar = null;\n this.#altText?.destroy();\n }\n getClientDimensions() {\n return this.div.getBoundingClientRect();\n }\n async addAltTextButton() {\n if (this.#altText) {\n return;\n }\n AltText.initialize(AnnotationEditor._l10nPromise);\n this.#altText = new AltText(this);\n if (this.#accessibilityData) {\n this.#altText.data = this.#accessibilityData;\n this.#accessibilityData = null;\n }\n await this.addEditToolbar();\n }\n get altTextData() {\n return this.#altText?.data;\n }\n set altTextData(data) {\n if (!this.#altText) {\n return;\n }\n this.#altText.data = data;\n }\n hasAltText() {\n return !this.#altText?.isEmpty();\n }\n render() {\n this.div = document.createElement(\"div\");\n this.div.setAttribute(\"data-editor-rotation\", (360 - this.rotation) % 360);\n this.div.className = this.name;\n this.div.setAttribute(\"id\", this.id);\n this.div.tabIndex = this.#disabled ? -1 : 0;\n if (!this._isVisible) {\n this.div.classList.add(\"hidden\");\n }\n this.setInForeground();\n const signal = this._uiManager._signal;\n this.div.addEventListener(\"focusin\", this.#boundFocusin, {\n signal\n });\n this.div.addEventListener(\"focusout\", this.#boundFocusout, {\n signal\n });\n const [parentWidth, parentHeight] = this.parentDimensions;\n if (this.parentRotation % 180 !== 0) {\n this.div.style.maxWidth = `${(100 * parentHeight / parentWidth).toFixed(2)}%`;\n this.div.style.maxHeight = `${(100 * parentWidth / parentHeight).toFixed(2)}%`;\n }\n const [tx, ty] = this.getInitialTranslation();\n this.translate(tx, ty);\n bindEvents(this, this.div, [\"pointerdown\"]);\n return this.div;\n }\n pointerdown(event) {\n const {\n isMac\n } = util_FeatureTest.platform;\n if (event.button !== 0 || event.ctrlKey && isMac) {\n event.preventDefault();\n return;\n }\n this.#hasBeenClicked = true;\n if (this._isDraggable) {\n this.#setUpDragSession(event);\n return;\n }\n this.#selectOnPointerEvent(event);\n }\n #selectOnPointerEvent(event) {\n const {\n isMac\n } = util_FeatureTest.platform;\n if (event.ctrlKey && !isMac || event.shiftKey || event.metaKey && isMac) {\n this.parent.toggleSelected(this);\n } else {\n this.parent.setSelected(this);\n }\n }\n #setUpDragSession(event) {\n const isSelected = this._uiManager.isSelected(this);\n this._uiManager.setUpDragSession();\n let pointerMoveOptions, pointerMoveCallback;\n const signal = this._uiManager._signal;\n if (isSelected) {\n this.div.classList.add(\"moving\");\n pointerMoveOptions = {\n passive: true,\n capture: true,\n signal\n };\n this.#prevDragX = event.clientX;\n this.#prevDragY = event.clientY;\n pointerMoveCallback = e => {\n const {\n clientX: x,\n clientY: y\n } = e;\n const [tx, ty] = this.screenToPageTranslation(x - this.#prevDragX, y - this.#prevDragY);\n this.#prevDragX = x;\n this.#prevDragY = y;\n this._uiManager.dragSelectedEditors(tx, ty);\n };\n window.addEventListener(\"pointermove\", pointerMoveCallback, pointerMoveOptions);\n }\n const pointerUpCallback = () => {\n window.removeEventListener(\"pointerup\", pointerUpCallback);\n window.removeEventListener(\"blur\", pointerUpCallback);\n if (isSelected) {\n this.div.classList.remove(\"moving\");\n window.removeEventListener(\"pointermove\", pointerMoveCallback, pointerMoveOptions);\n }\n this.#hasBeenClicked = false;\n if (!this._uiManager.endDragSession()) {\n this.#selectOnPointerEvent(event);\n }\n };\n window.addEventListener(\"pointerup\", pointerUpCallback, {\n signal\n });\n window.addEventListener(\"blur\", pointerUpCallback, {\n signal\n });\n }\n moveInDOM() {\n if (this.#moveInDOMTimeout) {\n clearTimeout(this.#moveInDOMTimeout);\n }\n this.#moveInDOMTimeout = setTimeout(() => {\n this.#moveInDOMTimeout = null;\n this.parent?.moveEditorInDOM(this);\n }, 0);\n }\n _setParentAndPosition(parent, x, y) {\n parent.changeParent(this);\n this.x = x;\n this.y = y;\n this.fixAndSetPosition();\n }\n getRect(tx, ty, rotation = this.rotation) {\n const scale = this.parentScale;\n const [pageWidth, pageHeight] = this.pageDimensions;\n const [pageX, pageY] = this.pageTranslation;\n const shiftX = tx / scale;\n const shiftY = ty / scale;\n const x = this.x * pageWidth;\n const y = this.y * pageHeight;\n const width = this.width * pageWidth;\n const height = this.height * pageHeight;\n switch (rotation) {\n case 0:\n return [x + shiftX + pageX, pageHeight - y - shiftY - height + pageY, x + shiftX + width + pageX, pageHeight - y - shiftY + pageY];\n case 90:\n return [x + shiftY + pageX, pageHeight - y + shiftX + pageY, x + shiftY + height + pageX, pageHeight - y + shiftX + width + pageY];\n case 180:\n return [x - shiftX - width + pageX, pageHeight - y + shiftY + pageY, x - shiftX + pageX, pageHeight - y + shiftY + height + pageY];\n case 270:\n return [x - shiftY - height + pageX, pageHeight - y - shiftX - width + pageY, x - shiftY + pageX, pageHeight - y - shiftX + pageY];\n default:\n throw new Error(\"Invalid rotation\");\n }\n }\n getRectInCurrentCoords(rect, pageHeight) {\n const [x1, y1, x2, y2] = rect;\n const width = x2 - x1;\n const height = y2 - y1;\n switch (this.rotation) {\n case 0:\n return [x1, pageHeight - y2, width, height];\n case 90:\n return [x1, pageHeight - y1, height, width];\n case 180:\n return [x2, pageHeight - y1, width, height];\n case 270:\n return [x2, pageHeight - y2, height, width];\n default:\n throw new Error(\"Invalid rotation\");\n }\n }\n onceAdded() {}\n isEmpty() {\n return false;\n }\n enableEditMode() {\n this.#isInEditMode = true;\n }\n disableEditMode() {\n this.#isInEditMode = false;\n }\n isInEditMode() {\n return this.#isInEditMode;\n }\n shouldGetKeyboardEvents() {\n return this.#isResizerEnabledForKeyboard;\n }\n needsToBeRebuilt() {\n return this.div && !this.isAttachedToDOM;\n }\n rebuild() {\n const signal = this._uiManager._signal;\n this.div?.addEventListener(\"focusin\", this.#boundFocusin, {\n signal\n });\n this.div?.addEventListener(\"focusout\", this.#boundFocusout, {\n signal\n });\n }\n rotate(_angle) {}\n serialize(isForCopying = false, context = null) {\n unreachable(\"An editor must be serializable\");\n }\n static deserialize(data, parent, uiManager) {\n const editor = new this.prototype.constructor({\n parent,\n id: parent.getNextId(),\n uiManager\n });\n editor.rotation = data.rotation;\n editor.#accessibilityData = data.accessibilityData;\n const [pageWidth, pageHeight] = editor.pageDimensions;\n const [x, y, width, height] = editor.getRectInCurrentCoords(data.rect, pageHeight);\n editor.x = x / pageWidth;\n editor.y = y / pageHeight;\n editor.width = width / pageWidth;\n editor.height = height / pageHeight;\n return editor;\n }\n get hasBeenModified() {\n return !!this.annotationElementId && (this.deleted || this.serialize() !== null);\n }\n remove() {\n this.div.removeEventListener(\"focusin\", this.#boundFocusin);\n this.div.removeEventListener(\"focusout\", this.#boundFocusout);\n if (!this.isEmpty()) {\n this.commit();\n }\n if (this.parent) {\n this.parent.remove(this);\n } else {\n this._uiManager.removeEditor(this);\n }\n if (this.#moveInDOMTimeout) {\n clearTimeout(this.#moveInDOMTimeout);\n this.#moveInDOMTimeout = null;\n }\n this.#stopResizing();\n this.removeEditToolbar();\n if (this.#telemetryTimeouts) {\n for (const timeout of this.#telemetryTimeouts.values()) {\n clearTimeout(timeout);\n }\n this.#telemetryTimeouts = null;\n }\n this.parent = null;\n }\n get isResizable() {\n return false;\n }\n makeResizable() {\n if (this.isResizable) {\n this.#createResizers();\n this.#resizersDiv.classList.remove(\"hidden\");\n bindEvents(this, this.div, [\"keydown\"]);\n }\n }\n get toolbarPosition() {\n return null;\n }\n keydown(event) {\n if (!this.isResizable || event.target !== this.div || event.key !== \"Enter\") {\n return;\n }\n this._uiManager.setSelected(this);\n this.#savedDimensions = {\n savedX: this.x,\n savedY: this.y,\n savedWidth: this.width,\n savedHeight: this.height\n };\n const children = this.#resizersDiv.children;\n if (!this.#allResizerDivs) {\n this.#allResizerDivs = Array.from(children);\n const boundResizerKeydown = this.#resizerKeydown.bind(this);\n const boundResizerBlur = this.#resizerBlur.bind(this);\n const signal = this._uiManager._signal;\n for (const div of this.#allResizerDivs) {\n const name = div.getAttribute(\"data-resizer-name\");\n div.setAttribute(\"role\", \"spinbutton\");\n div.addEventListener(\"keydown\", boundResizerKeydown, {\n signal\n });\n div.addEventListener(\"blur\", boundResizerBlur, {\n signal\n });\n div.addEventListener(\"focus\", this.#resizerFocus.bind(this, name), {\n signal\n });\n AnnotationEditor._l10nPromise.get(`pdfjs-editor-resizer-label-${name}`).then(msg => div.setAttribute(\"aria-label\", msg));\n }\n }\n const first = this.#allResizerDivs[0];\n let firstPosition = 0;\n for (const div of children) {\n if (div === first) {\n break;\n }\n firstPosition++;\n }\n const nextFirstPosition = (360 - this.rotation + this.parentRotation) % 360 / 90 * (this.#allResizerDivs.length / 4);\n if (nextFirstPosition !== firstPosition) {\n if (nextFirstPosition < firstPosition) {\n for (let i = 0; i < firstPosition - nextFirstPosition; i++) {\n this.#resizersDiv.append(this.#resizersDiv.firstChild);\n }\n } else if (nextFirstPosition > firstPosition) {\n for (let i = 0; i < nextFirstPosition - firstPosition; i++) {\n this.#resizersDiv.firstChild.before(this.#resizersDiv.lastChild);\n }\n }\n let i = 0;\n for (const child of children) {\n const div = this.#allResizerDivs[i++];\n const name = div.getAttribute(\"data-resizer-name\");\n AnnotationEditor._l10nPromise.get(`pdfjs-editor-resizer-label-${name}`).then(msg => child.setAttribute(\"aria-label\", msg));\n }\n }\n this.#setResizerTabIndex(0);\n this.#isResizerEnabledForKeyboard = true;\n this.#resizersDiv.firstChild.focus({\n focusVisible: true\n });\n event.preventDefault();\n event.stopImmediatePropagation();\n }\n #resizerKeydown(event) {\n AnnotationEditor._resizerKeyboardManager.exec(this, event);\n }\n #resizerBlur(event) {\n if (this.#isResizerEnabledForKeyboard && event.relatedTarget?.parentNode !== this.#resizersDiv) {\n this.#stopResizing();\n }\n }\n #resizerFocus(name) {\n this.#focusedResizerName = this.#isResizerEnabledForKeyboard ? name : \"\";\n }\n #setResizerTabIndex(value) {\n if (!this.#allResizerDivs) {\n return;\n }\n for (const div of this.#allResizerDivs) {\n div.tabIndex = value;\n }\n }\n _resizeWithKeyboard(x, y) {\n if (!this.#isResizerEnabledForKeyboard) {\n return;\n }\n this.#resizerPointermove(this.#focusedResizerName, {\n movementX: x,\n movementY: y\n });\n }\n #stopResizing() {\n this.#isResizerEnabledForKeyboard = false;\n this.#setResizerTabIndex(-1);\n if (this.#savedDimensions) {\n const {\n savedX,\n savedY,\n savedWidth,\n savedHeight\n } = this.#savedDimensions;\n this.#addResizeToUndoStack(savedX, savedY, savedWidth, savedHeight);\n this.#savedDimensions = null;\n }\n }\n _stopResizingWithKeyboard() {\n this.#stopResizing();\n this.div.focus();\n }\n select() {\n this.makeResizable();\n this.div?.classList.add(\"selectedEditor\");\n if (!this.#editToolbar) {\n this.addEditToolbar().then(() => {\n if (this.div?.classList.contains(\"selectedEditor\")) {\n this.#editToolbar?.show();\n }\n });\n return;\n }\n this.#editToolbar?.show();\n }\n unselect() {\n this.#resizersDiv?.classList.add(\"hidden\");\n this.div?.classList.remove(\"selectedEditor\");\n if (this.div?.contains(document.activeElement)) {\n this._uiManager.currentLayer.div.focus({\n preventScroll: true\n });\n }\n this.#editToolbar?.hide();\n }\n updateParams(type, value) {}\n disableEditing() {}\n enableEditing() {}\n enterInEditMode() {}\n getImageForAltText() {\n return null;\n }\n get contentDiv() {\n return this.div;\n }\n get isEditing() {\n return this.#isEditing;\n }\n set isEditing(value) {\n this.#isEditing = value;\n if (!this.parent) {\n return;\n }\n if (value) {\n this.parent.setSelected(this);\n this.parent.setActiveEditor(this);\n } else {\n this.parent.setActiveEditor(null);\n }\n }\n setAspectRatio(width, height) {\n this.#keepAspectRatio = true;\n const aspectRatio = width / height;\n const {\n style\n } = this.div;\n style.aspectRatio = aspectRatio;\n style.height = \"auto\";\n }\n static get MIN_SIZE() {\n return 16;\n }\n static canCreateNewEmptyEditor() {\n return true;\n }\n get telemetryInitialData() {\n return {\n action: \"added\"\n };\n }\n get telemetryFinalData() {\n return null;\n }\n _reportTelemetry(data, mustWait = false) {\n if (mustWait) {\n this.#telemetryTimeouts ||= new Map();\n const {\n action\n } = data;\n let timeout = this.#telemetryTimeouts.get(action);\n if (timeout) {\n clearTimeout(timeout);\n }\n timeout = setTimeout(() => {\n this._reportTelemetry(data);\n this.#telemetryTimeouts.delete(action);\n if (this.#telemetryTimeouts.size === 0) {\n this.#telemetryTimeouts = null;\n }\n }, AnnotationEditor._telemetryTimeout);\n this.#telemetryTimeouts.set(action, timeout);\n return;\n }\n data.type ||= this.editorType;\n this._uiManager._eventBus.dispatch(\"reporttelemetry\", {\n source: this,\n details: {\n type: \"editing\",\n data\n }\n });\n }\n show(visible = this._isVisible) {\n this.div.classList.toggle(\"hidden\", !visible);\n this._isVisible = visible;\n }\n enable() {\n if (this.div) {\n this.div.tabIndex = 0;\n }\n this.#disabled = false;\n }\n disable() {\n if (this.div) {\n this.div.tabIndex = -1;\n }\n this.#disabled = true;\n }\n renderAnnotationElement(annotation) {\n let content = annotation.container.querySelector(\".annotationContent\");\n if (!content) {\n content = document.createElement(\"div\");\n content.classList.add(\"annotationContent\", this.editorType);\n annotation.container.prepend(content);\n } else if (content.nodeName === \"CANVAS\") {\n const canvas = content;\n content = document.createElement(\"div\");\n content.classList.add(\"annotationContent\", this.editorType);\n canvas.before(content);\n }\n return content;\n }\n resetAnnotationElement(annotation) {\n const {\n firstChild\n } = annotation.container;\n if (firstChild.nodeName === \"DIV\" && firstChild.classList.contains(\"annotationContent\")) {\n firstChild.remove();\n }\n }\n}\nclass FakeEditor extends AnnotationEditor {\n constructor(params) {\n super(params);\n this.annotationElementId = params.annotationElementId;\n this.deleted = true;\n }\n serialize() {\n return {\n id: this.annotationElementId,\n deleted: true,\n pageIndex: this.pageIndex\n };\n }\n}\n\n;// CONCATENATED MODULE: ./src/shared/murmurhash3.js\nconst SEED = 0xc3d2e1f0;\nconst MASK_HIGH = 0xffff0000;\nconst MASK_LOW = 0xffff;\nclass MurmurHash3_64 {\n constructor(seed) {\n this.h1 = seed ? seed & 0xffffffff : SEED;\n this.h2 = seed ? seed & 0xffffffff : SEED;\n }\n update(input) {\n let data, length;\n if (typeof input === \"string\") {\n data = new Uint8Array(input.length * 2);\n length = 0;\n for (let i = 0, ii = input.length; i < ii; i++) {\n const code = input.charCodeAt(i);\n if (code <= 0xff) {\n data[length++] = code;\n } else {\n data[length++] = code >>> 8;\n data[length++] = code & 0xff;\n }\n }\n } else if (ArrayBuffer.isView(input)) {\n data = input.slice();\n length = data.byteLength;\n } else {\n throw new Error(\"Invalid data format, must be a string or TypedArray.\");\n }\n const blockCounts = length >> 2;\n const tailLength = length - blockCounts * 4;\n const dataUint32 = new Uint32Array(data.buffer, 0, blockCounts);\n let k1 = 0,\n k2 = 0;\n let h1 = this.h1,\n h2 = this.h2;\n const C1 = 0xcc9e2d51,\n C2 = 0x1b873593;\n const C1_LOW = C1 & MASK_LOW,\n C2_LOW = C2 & MASK_LOW;\n for (let i = 0; i < blockCounts; i++) {\n if (i & 1) {\n k1 = dataUint32[i];\n k1 = k1 * C1 & MASK_HIGH | k1 * C1_LOW & MASK_LOW;\n k1 = k1 << 15 | k1 >>> 17;\n k1 = k1 * C2 & MASK_HIGH | k1 * C2_LOW & MASK_LOW;\n h1 ^= k1;\n h1 = h1 << 13 | h1 >>> 19;\n h1 = h1 * 5 + 0xe6546b64;\n } else {\n k2 = dataUint32[i];\n k2 = k2 * C1 & MASK_HIGH | k2 * C1_LOW & MASK_LOW;\n k2 = k2 << 15 | k2 >>> 17;\n k2 = k2 * C2 & MASK_HIGH | k2 * C2_LOW & MASK_LOW;\n h2 ^= k2;\n h2 = h2 << 13 | h2 >>> 19;\n h2 = h2 * 5 + 0xe6546b64;\n }\n }\n k1 = 0;\n switch (tailLength) {\n case 3:\n k1 ^= data[blockCounts * 4 + 2] << 16;\n case 2:\n k1 ^= data[blockCounts * 4 + 1] << 8;\n case 1:\n k1 ^= data[blockCounts * 4];\n k1 = k1 * C1 & MASK_HIGH | k1 * C1_LOW & MASK_LOW;\n k1 = k1 << 15 | k1 >>> 17;\n k1 = k1 * C2 & MASK_HIGH | k1 * C2_LOW & MASK_LOW;\n if (blockCounts & 1) {\n h1 ^= k1;\n } else {\n h2 ^= k1;\n }\n }\n this.h1 = h1;\n this.h2 = h2;\n }\n hexdigest() {\n let h1 = this.h1,\n h2 = this.h2;\n h1 ^= h2 >>> 1;\n h1 = h1 * 0xed558ccd & MASK_HIGH | h1 * 0x8ccd & MASK_LOW;\n h2 = h2 * 0xff51afd7 & MASK_HIGH | ((h2 << 16 | h1 >>> 16) * 0xafd7ed55 & MASK_HIGH) >>> 16;\n h1 ^= h2 >>> 1;\n h1 = h1 * 0x1a85ec53 & MASK_HIGH | h1 * 0xec53 & MASK_LOW;\n h2 = h2 * 0xc4ceb9fe & MASK_HIGH | ((h2 << 16 | h1 >>> 16) * 0xb9fe1a85 & MASK_HIGH) >>> 16;\n h1 ^= h2 >>> 1;\n return (h1 >>> 0).toString(16).padStart(8, \"0\") + (h2 >>> 0).toString(16).padStart(8, \"0\");\n }\n}\n\n;// CONCATENATED MODULE: ./src/display/annotation_storage.js\n\n\n\nconst SerializableEmpty = Object.freeze({\n map: null,\n hash: \"\",\n transfer: undefined\n});\nclass AnnotationStorage {\n #modified = false;\n #storage = new Map();\n constructor() {\n this.onSetModified = null;\n this.onResetModified = null;\n this.onAnnotationEditor = null;\n }\n getValue(key, defaultValue) {\n const value = this.#storage.get(key);\n if (value === undefined) {\n return defaultValue;\n }\n return Object.assign(defaultValue, value);\n }\n getRawValue(key) {\n return this.#storage.get(key);\n }\n remove(key) {\n this.#storage.delete(key);\n if (this.#storage.size === 0) {\n this.resetModified();\n }\n if (typeof this.onAnnotationEditor === \"function\") {\n for (const value of this.#storage.values()) {\n if (value instanceof AnnotationEditor) {\n return;\n }\n }\n this.onAnnotationEditor(null);\n }\n }\n setValue(key, value) {\n const obj = this.#storage.get(key);\n let modified = false;\n if (obj !== undefined) {\n for (const [entry, val] of Object.entries(value)) {\n if (obj[entry] !== val) {\n modified = true;\n obj[entry] = val;\n }\n }\n } else {\n modified = true;\n this.#storage.set(key, value);\n }\n if (modified) {\n this.#setModified();\n }\n if (value instanceof AnnotationEditor && typeof this.onAnnotationEditor === \"function\") {\n this.onAnnotationEditor(value.constructor._type);\n }\n }\n has(key) {\n return this.#storage.has(key);\n }\n getAll() {\n return this.#storage.size > 0 ? objectFromMap(this.#storage) : null;\n }\n setAll(obj) {\n for (const [key, val] of Object.entries(obj)) {\n this.setValue(key, val);\n }\n }\n get size() {\n return this.#storage.size;\n }\n #setModified() {\n if (!this.#modified) {\n this.#modified = true;\n if (typeof this.onSetModified === \"function\") {\n this.onSetModified();\n }\n }\n }\n resetModified() {\n if (this.#modified) {\n this.#modified = false;\n if (typeof this.onResetModified === \"function\") {\n this.onResetModified();\n }\n }\n }\n get print() {\n return new PrintAnnotationStorage(this);\n }\n get serializable() {\n if (this.#storage.size === 0) {\n return SerializableEmpty;\n }\n const map = new Map(),\n hash = new MurmurHash3_64(),\n transfer = [];\n const context = Object.create(null);\n let hasBitmap = false;\n for (const [key, val] of this.#storage) {\n const serialized = val instanceof AnnotationEditor ? val.serialize(false, context) : val;\n if (serialized) {\n map.set(key, serialized);\n hash.update(`${key}:${JSON.stringify(serialized)}`);\n hasBitmap ||= !!serialized.bitmap;\n }\n }\n if (hasBitmap) {\n for (const value of map.values()) {\n if (value.bitmap) {\n transfer.push(value.bitmap);\n }\n }\n }\n return map.size > 0 ? {\n map,\n hash: hash.hexdigest(),\n transfer\n } : SerializableEmpty;\n }\n get editorStats() {\n let stats = null;\n const typeToEditor = new Map();\n for (const value of this.#storage.values()) {\n if (!(value instanceof AnnotationEditor)) {\n continue;\n }\n const editorStats = value.telemetryFinalData;\n if (!editorStats) {\n continue;\n }\n const {\n type\n } = editorStats;\n if (!typeToEditor.has(type)) {\n typeToEditor.set(type, Object.getPrototypeOf(value).constructor);\n }\n stats ||= Object.create(null);\n const map = stats[type] ||= new Map();\n for (const [key, val] of Object.entries(editorStats)) {\n if (key === \"type\") {\n continue;\n }\n let counters = map.get(key);\n if (!counters) {\n counters = new Map();\n map.set(key, counters);\n }\n const count = counters.get(val) ?? 0;\n counters.set(val, count + 1);\n }\n }\n for (const [type, editor] of typeToEditor) {\n stats[type] = editor.computeTelemetryFinalData(stats[type]);\n }\n return stats;\n }\n}\nclass PrintAnnotationStorage extends AnnotationStorage {\n #serializable;\n constructor(parent) {\n super();\n const {\n map,\n hash,\n transfer\n } = parent.serializable;\n const clone = structuredClone(map, transfer ? {\n transfer\n } : null);\n this.#serializable = {\n map: clone,\n hash,\n transfer\n };\n }\n get print() {\n unreachable(\"Should not call PrintAnnotationStorage.print\");\n }\n get serializable() {\n return this.#serializable;\n }\n}\n\n;// CONCATENATED MODULE: ./src/display/font_loader.js\n\nclass FontLoader {\n #systemFonts = new Set();\n constructor({\n ownerDocument = globalThis.document,\n styleElement = null\n }) {\n this._document = ownerDocument;\n this.nativeFontFaces = new Set();\n this.styleElement = null;\n this.loadingRequests = [];\n this.loadTestFontId = 0;\n }\n addNativeFontFace(nativeFontFace) {\n this.nativeFontFaces.add(nativeFontFace);\n this._document.fonts.add(nativeFontFace);\n }\n removeNativeFontFace(nativeFontFace) {\n this.nativeFontFaces.delete(nativeFontFace);\n this._document.fonts.delete(nativeFontFace);\n }\n insertRule(rule) {\n if (!this.styleElement) {\n this.styleElement = this._document.createElement(\"style\");\n this._document.documentElement.getElementsByTagName(\"head\")[0].append(this.styleElement);\n }\n const styleSheet = this.styleElement.sheet;\n styleSheet.insertRule(rule, styleSheet.cssRules.length);\n }\n clear() {\n for (const nativeFontFace of this.nativeFontFaces) {\n this._document.fonts.delete(nativeFontFace);\n }\n this.nativeFontFaces.clear();\n this.#systemFonts.clear();\n if (this.styleElement) {\n this.styleElement.remove();\n this.styleElement = null;\n }\n }\n async loadSystemFont({\n systemFontInfo: info,\n _inspectFont\n }) {\n if (!info || this.#systemFonts.has(info.loadedName)) {\n return;\n }\n assert(!this.disableFontFace, \"loadSystemFont shouldn't be called when `disableFontFace` is set.\");\n if (this.isFontLoadingAPISupported) {\n const {\n loadedName,\n src,\n style\n } = info;\n const fontFace = new FontFace(loadedName, src, style);\n this.addNativeFontFace(fontFace);\n try {\n await fontFace.load();\n this.#systemFonts.add(loadedName);\n _inspectFont?.(info);\n } catch {\n warn(`Cannot load system font: ${info.baseFontName}, installing it could help to improve PDF rendering.`);\n this.removeNativeFontFace(fontFace);\n }\n return;\n }\n unreachable(\"Not implemented: loadSystemFont without the Font Loading API.\");\n }\n async bind(font) {\n if (font.attached || font.missingFile && !font.systemFontInfo) {\n return;\n }\n font.attached = true;\n if (font.systemFontInfo) {\n await this.loadSystemFont(font);\n return;\n }\n if (this.isFontLoadingAPISupported) {\n const nativeFontFace = font.createNativeFontFace();\n if (nativeFontFace) {\n this.addNativeFontFace(nativeFontFace);\n try {\n await nativeFontFace.loaded;\n } catch (ex) {\n warn(`Failed to load font '${nativeFontFace.family}': '${ex}'.`);\n font.disableFontFace = true;\n throw ex;\n }\n }\n return;\n }\n const rule = font.createFontFaceRule();\n if (rule) {\n this.insertRule(rule);\n if (this.isSyncFontLoadingSupported) {\n return;\n }\n await new Promise(resolve => {\n const request = this._queueLoadingCallback(resolve);\n this._prepareFontLoadEvent(font, request);\n });\n }\n }\n get isFontLoadingAPISupported() {\n const hasFonts = !!this._document?.fonts;\n return shadow(this, \"isFontLoadingAPISupported\", hasFonts);\n }\n get isSyncFontLoadingSupported() {\n let supported = false;\n if (isNodeJS) {\n supported = true;\n } else if (typeof navigator !== \"undefined\" && typeof navigator?.userAgent === \"string\" && /Mozilla\\/5.0.*?rv:\\d+.*? Gecko/.test(navigator.userAgent)) {\n supported = true;\n }\n return shadow(this, \"isSyncFontLoadingSupported\", supported);\n }\n _queueLoadingCallback(callback) {\n function completeRequest() {\n assert(!request.done, \"completeRequest() cannot be called twice.\");\n request.done = true;\n while (loadingRequests.length > 0 && loadingRequests[0].done) {\n const otherRequest = loadingRequests.shift();\n setTimeout(otherRequest.callback, 0);\n }\n }\n const {\n loadingRequests\n } = this;\n const request = {\n done: false,\n complete: completeRequest,\n callback\n };\n loadingRequests.push(request);\n return request;\n }\n get _loadTestFont() {\n const testFont = atob(\"T1RUTwALAIAAAwAwQ0ZGIDHtZg4AAAOYAAAAgUZGVE1lkzZwAAAEHAAAABxHREVGABQA\" + \"FQAABDgAAAAeT1MvMlYNYwkAAAEgAAAAYGNtYXABDQLUAAACNAAAAUJoZWFk/xVFDQAA\" + \"ALwAAAA2aGhlYQdkA+oAAAD0AAAAJGhtdHgD6AAAAAAEWAAAAAZtYXhwAAJQAAAAARgA\" + \"AAAGbmFtZVjmdH4AAAGAAAAAsXBvc3T/hgAzAAADeAAAACAAAQAAAAEAALZRFsRfDzz1\" + \"AAsD6AAAAADOBOTLAAAAAM4KHDwAAAAAA+gDIQAAAAgAAgAAAAAAAAABAAADIQAAAFoD\" + \"6AAAAAAD6AABAAAAAAAAAAAAAAAAAAAAAQAAUAAAAgAAAAQD6AH0AAUAAAKKArwAAACM\" + \"AooCvAAAAeAAMQECAAACAAYJAAAAAAAAAAAAAQAAAAAAAAAAAAAAAFBmRWQAwAAuAC4D\" + \"IP84AFoDIQAAAAAAAQAAAAAAAAAAACAAIAABAAAADgCuAAEAAAAAAAAAAQAAAAEAAAAA\" + \"AAEAAQAAAAEAAAAAAAIAAQAAAAEAAAAAAAMAAQAAAAEAAAAAAAQAAQAAAAEAAAAAAAUA\" + \"AQAAAAEAAAAAAAYAAQAAAAMAAQQJAAAAAgABAAMAAQQJAAEAAgABAAMAAQQJAAIAAgAB\" + \"AAMAAQQJAAMAAgABAAMAAQQJAAQAAgABAAMAAQQJAAUAAgABAAMAAQQJAAYAAgABWABY\" + \"AAAAAAAAAwAAAAMAAAAcAAEAAAAAADwAAwABAAAAHAAEACAAAAAEAAQAAQAAAC7//wAA\" + \"AC7////TAAEAAAAAAAABBgAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\" + \"AAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\" + \"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\" + \"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\" + \"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\" + \"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAD/gwAyAAAAAQAAAAAAAAAAAAAAAAAA\" + \"AAABAAQEAAEBAQJYAAEBASH4DwD4GwHEAvgcA/gXBIwMAYuL+nz5tQXkD5j3CBLnEQAC\" + \"AQEBIVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYAAABAQAADwACAQEEE/t3\" + \"Dov6fAH6fAT+fPp8+nwHDosMCvm1Cvm1DAz6fBQAAAAAAAABAAAAAMmJbzEAAAAAzgTj\" + \"FQAAAADOBOQpAAEAAAAAAAAADAAUAAQAAAABAAAAAgABAAAAAAAAAAAD6AAAAAAAAA==\");\n return shadow(this, \"_loadTestFont\", testFont);\n }\n _prepareFontLoadEvent(font, request) {\n function int32(data, offset) {\n return data.charCodeAt(offset) << 24 | data.charCodeAt(offset + 1) << 16 | data.charCodeAt(offset + 2) << 8 | data.charCodeAt(offset + 3) & 0xff;\n }\n function spliceString(s, offset, remove, insert) {\n const chunk1 = s.substring(0, offset);\n const chunk2 = s.substring(offset + remove);\n return chunk1 + insert + chunk2;\n }\n let i, ii;\n const canvas = this._document.createElement(\"canvas\");\n canvas.width = 1;\n canvas.height = 1;\n const ctx = canvas.getContext(\"2d\");\n let called = 0;\n function isFontReady(name, callback) {\n if (++called > 30) {\n warn(\"Load test font never loaded.\");\n callback();\n return;\n }\n ctx.font = \"30px \" + name;\n ctx.fillText(\".\", 0, 20);\n const imageData = ctx.getImageData(0, 0, 1, 1);\n if (imageData.data[3] > 0) {\n callback();\n return;\n }\n setTimeout(isFontReady.bind(null, name, callback));\n }\n const loadTestFontId = `lt${Date.now()}${this.loadTestFontId++}`;\n let data = this._loadTestFont;\n const COMMENT_OFFSET = 976;\n data = spliceString(data, COMMENT_OFFSET, loadTestFontId.length, loadTestFontId);\n const CFF_CHECKSUM_OFFSET = 16;\n const XXXX_VALUE = 0x58585858;\n let checksum = int32(data, CFF_CHECKSUM_OFFSET);\n for (i = 0, ii = loadTestFontId.length - 3; i < ii; i += 4) {\n checksum = checksum - XXXX_VALUE + int32(loadTestFontId, i) | 0;\n }\n if (i < loadTestFontId.length) {\n checksum = checksum - XXXX_VALUE + int32(loadTestFontId + \"XXX\", i) | 0;\n }\n data = spliceString(data, CFF_CHECKSUM_OFFSET, 4, string32(checksum));\n const url = `url(data:font/opentype;base64,${btoa(data)});`;\n const rule = `@font-face {font-family:\"${loadTestFontId}\";src:${url}}`;\n this.insertRule(rule);\n const div = this._document.createElement(\"div\");\n div.style.visibility = \"hidden\";\n div.style.width = div.style.height = \"10px\";\n div.style.position = \"absolute\";\n div.style.top = div.style.left = \"0px\";\n for (const name of [font.loadedName, loadTestFontId]) {\n const span = this._document.createElement(\"span\");\n span.textContent = \"Hi\";\n span.style.fontFamily = name;\n div.append(span);\n }\n this._document.body.append(div);\n isFontReady(loadTestFontId, () => {\n div.remove();\n request.complete();\n });\n }\n}\nclass FontFaceObject {\n constructor(translatedData, {\n disableFontFace = false,\n inspectFont = null\n }) {\n this.compiledGlyphs = Object.create(null);\n for (const i in translatedData) {\n this[i] = translatedData[i];\n }\n this.disableFontFace = disableFontFace === true;\n this._inspectFont = inspectFont;\n }\n createNativeFontFace() {\n if (!this.data || this.disableFontFace) {\n return null;\n }\n let nativeFontFace;\n if (!this.cssFontInfo) {\n nativeFontFace = new FontFace(this.loadedName, this.data, {});\n } else {\n const css = {\n weight: this.cssFontInfo.fontWeight\n };\n if (this.cssFontInfo.italicAngle) {\n css.style = `oblique ${this.cssFontInfo.italicAngle}deg`;\n }\n nativeFontFace = new FontFace(this.cssFontInfo.fontFamily, this.data, css);\n }\n this._inspectFont?.(this);\n return nativeFontFace;\n }\n createFontFaceRule() {\n if (!this.data || this.disableFontFace) {\n return null;\n }\n const data = bytesToString(this.data);\n const url = `url(data:${this.mimetype};base64,${btoa(data)});`;\n let rule;\n if (!this.cssFontInfo) {\n rule = `@font-face {font-family:\"${this.loadedName}\";src:${url}}`;\n } else {\n let css = `font-weight: ${this.cssFontInfo.fontWeight};`;\n if (this.cssFontInfo.italicAngle) {\n css += `font-style: oblique ${this.cssFontInfo.italicAngle}deg;`;\n }\n rule = `@font-face {font-family:\"${this.cssFontInfo.fontFamily}\";${css}src:${url}}`;\n }\n this._inspectFont?.(this, url);\n return rule;\n }\n getPathGenerator(objs, character) {\n if (this.compiledGlyphs[character] !== undefined) {\n return this.compiledGlyphs[character];\n }\n let cmds;\n try {\n cmds = objs.get(this.loadedName + \"_path_\" + character);\n } catch (ex) {\n warn(`getPathGenerator - ignoring character: \"${ex}\".`);\n }\n if (!Array.isArray(cmds) || cmds.length === 0) {\n return this.compiledGlyphs[character] = function (c, size) {};\n }\n const commands = [];\n for (let i = 0, ii = cmds.length; i < ii;) {\n switch (cmds[i++]) {\n case FontRenderOps.BEZIER_CURVE_TO:\n {\n const [a, b, c, d, e, f] = cmds.slice(i, i + 6);\n commands.push(ctx => ctx.bezierCurveTo(a, b, c, d, e, f));\n i += 6;\n }\n break;\n case FontRenderOps.MOVE_TO:\n {\n const [a, b] = cmds.slice(i, i + 2);\n commands.push(ctx => ctx.moveTo(a, b));\n i += 2;\n }\n break;\n case FontRenderOps.LINE_TO:\n {\n const [a, b] = cmds.slice(i, i + 2);\n commands.push(ctx => ctx.lineTo(a, b));\n i += 2;\n }\n break;\n case FontRenderOps.QUADRATIC_CURVE_TO:\n {\n const [a, b, c, d] = cmds.slice(i, i + 4);\n commands.push(ctx => ctx.quadraticCurveTo(a, b, c, d));\n i += 4;\n }\n break;\n case FontRenderOps.RESTORE:\n commands.push(ctx => ctx.restore());\n break;\n case FontRenderOps.SAVE:\n commands.push(ctx => ctx.save());\n break;\n case FontRenderOps.SCALE:\n assert(commands.length === 2, \"Scale command is only valid at the third position.\");\n break;\n case FontRenderOps.TRANSFORM:\n {\n const [a, b, c, d, e, f] = cmds.slice(i, i + 6);\n commands.push(ctx => ctx.transform(a, b, c, d, e, f));\n i += 6;\n }\n break;\n case FontRenderOps.TRANSLATE:\n {\n const [a, b] = cmds.slice(i, i + 2);\n commands.push(ctx => ctx.translate(a, b));\n i += 2;\n }\n break;\n }\n }\n return this.compiledGlyphs[character] = function glyphDrawer(ctx, size) {\n commands[0](ctx);\n commands[1](ctx);\n ctx.scale(size, -size);\n for (let i = 2, ii = commands.length; i < ii; i++) {\n commands[i](ctx);\n }\n };\n }\n}\n\n;// CONCATENATED MODULE: ./src/display/node_utils.js\n\n\nif (isNodeJS) {\n var packageCapability = Promise.withResolvers();\n var packageMap = null;\n const loadPackages = async () => {\n const fs = await import( /*webpackIgnore: true*/\"fs\"),\n http = await import( /*webpackIgnore: true*/\"http\"),\n https = await import( /*webpackIgnore: true*/\"https\"),\n url = await import( /*webpackIgnore: true*/\"url\");\n let canvas, path2d;\n return new Map(Object.entries({\n fs,\n http,\n https,\n url,\n canvas,\n path2d\n }));\n };\n loadPackages().then(map => {\n packageMap = map;\n packageCapability.resolve();\n }, reason => {\n warn(`loadPackages: ${reason}`);\n packageMap = new Map();\n packageCapability.resolve();\n });\n}\nclass NodePackages {\n static get promise() {\n return packageCapability.promise;\n }\n static get(name) {\n return packageMap?.get(name);\n }\n}\nconst node_utils_fetchData = function (url) {\n const fs = NodePackages.get(\"fs\");\n return fs.promises.readFile(url).then(data => new Uint8Array(data));\n};\nclass NodeFilterFactory extends BaseFilterFactory {}\nclass NodeCanvasFactory extends BaseCanvasFactory {\n _createCanvas(width, height) {\n const canvas = NodePackages.get(\"canvas\");\n return canvas.createCanvas(width, height);\n }\n}\nclass NodeCMapReaderFactory extends BaseCMapReaderFactory {\n _fetchData(url, compressionType) {\n return node_utils_fetchData(url).then(data => ({\n cMapData: data,\n compressionType\n }));\n }\n}\nclass NodeStandardFontDataFactory extends BaseStandardFontDataFactory {\n _fetchData(url) {\n return node_utils_fetchData(url);\n }\n}\n\n;// CONCATENATED MODULE: ./src/display/pattern_helper.js\n\n\nconst PathType = {\n FILL: \"Fill\",\n STROKE: \"Stroke\",\n SHADING: \"Shading\"\n};\nfunction applyBoundingBox(ctx, bbox) {\n if (!bbox) {\n return;\n }\n const width = bbox[2] - bbox[0];\n const height = bbox[3] - bbox[1];\n const region = new Path2D();\n region.rect(bbox[0], bbox[1], width, height);\n ctx.clip(region);\n}\nclass BaseShadingPattern {\n constructor() {\n if (this.constructor === BaseShadingPattern) {\n unreachable(\"Cannot initialize BaseShadingPattern.\");\n }\n }\n getPattern() {\n unreachable(\"Abstract method `getPattern` called.\");\n }\n}\nclass RadialAxialShadingPattern extends BaseShadingPattern {\n constructor(IR) {\n super();\n this._type = IR[1];\n this._bbox = IR[2];\n this._colorStops = IR[3];\n this._p0 = IR[4];\n this._p1 = IR[5];\n this._r0 = IR[6];\n this._r1 = IR[7];\n this.matrix = null;\n }\n _createGradient(ctx) {\n let grad;\n if (this._type === \"axial\") {\n grad = ctx.createLinearGradient(this._p0[0], this._p0[1], this._p1[0], this._p1[1]);\n } else if (this._type === \"radial\") {\n grad = ctx.createRadialGradient(this._p0[0], this._p0[1], this._r0, this._p1[0], this._p1[1], this._r1);\n }\n for (const colorStop of this._colorStops) {\n grad.addColorStop(colorStop[0], colorStop[1]);\n }\n return grad;\n }\n getPattern(ctx, owner, inverse, pathType) {\n let pattern;\n if (pathType === PathType.STROKE || pathType === PathType.FILL) {\n const ownerBBox = owner.current.getClippedPathBoundingBox(pathType, getCurrentTransform(ctx)) || [0, 0, 0, 0];\n const width = Math.ceil(ownerBBox[2] - ownerBBox[0]) || 1;\n const height = Math.ceil(ownerBBox[3] - ownerBBox[1]) || 1;\n const tmpCanvas = owner.cachedCanvases.getCanvas(\"pattern\", width, height, true);\n const tmpCtx = tmpCanvas.context;\n tmpCtx.clearRect(0, 0, tmpCtx.canvas.width, tmpCtx.canvas.height);\n tmpCtx.beginPath();\n tmpCtx.rect(0, 0, tmpCtx.canvas.width, tmpCtx.canvas.height);\n tmpCtx.translate(-ownerBBox[0], -ownerBBox[1]);\n inverse = Util.transform(inverse, [1, 0, 0, 1, ownerBBox[0], ownerBBox[1]]);\n tmpCtx.transform(...owner.baseTransform);\n if (this.matrix) {\n tmpCtx.transform(...this.matrix);\n }\n applyBoundingBox(tmpCtx, this._bbox);\n tmpCtx.fillStyle = this._createGradient(tmpCtx);\n tmpCtx.fill();\n pattern = ctx.createPattern(tmpCanvas.canvas, \"no-repeat\");\n const domMatrix = new DOMMatrix(inverse);\n pattern.setTransform(domMatrix);\n } else {\n applyBoundingBox(ctx, this._bbox);\n pattern = this._createGradient(ctx);\n }\n return pattern;\n }\n}\nfunction drawTriangle(data, context, p1, p2, p3, c1, c2, c3) {\n const coords = context.coords,\n colors = context.colors;\n const bytes = data.data,\n rowSize = data.width * 4;\n let tmp;\n if (coords[p1 + 1] > coords[p2 + 1]) {\n tmp = p1;\n p1 = p2;\n p2 = tmp;\n tmp = c1;\n c1 = c2;\n c2 = tmp;\n }\n if (coords[p2 + 1] > coords[p3 + 1]) {\n tmp = p2;\n p2 = p3;\n p3 = tmp;\n tmp = c2;\n c2 = c3;\n c3 = tmp;\n }\n if (coords[p1 + 1] > coords[p2 + 1]) {\n tmp = p1;\n p1 = p2;\n p2 = tmp;\n tmp = c1;\n c1 = c2;\n c2 = tmp;\n }\n const x1 = (coords[p1] + context.offsetX) * context.scaleX;\n const y1 = (coords[p1 + 1] + context.offsetY) * context.scaleY;\n const x2 = (coords[p2] + context.offsetX) * context.scaleX;\n const y2 = (coords[p2 + 1] + context.offsetY) * context.scaleY;\n const x3 = (coords[p3] + context.offsetX) * context.scaleX;\n const y3 = (coords[p3 + 1] + context.offsetY) * context.scaleY;\n if (y1 >= y3) {\n return;\n }\n const c1r = colors[c1],\n c1g = colors[c1 + 1],\n c1b = colors[c1 + 2];\n const c2r = colors[c2],\n c2g = colors[c2 + 1],\n c2b = colors[c2 + 2];\n const c3r = colors[c3],\n c3g = colors[c3 + 1],\n c3b = colors[c3 + 2];\n const minY = Math.round(y1),\n maxY = Math.round(y3);\n let xa, car, cag, cab;\n let xb, cbr, cbg, cbb;\n for (let y = minY; y <= maxY; y++) {\n if (y < y2) {\n const k = y < y1 ? 0 : (y1 - y) / (y1 - y2);\n xa = x1 - (x1 - x2) * k;\n car = c1r - (c1r - c2r) * k;\n cag = c1g - (c1g - c2g) * k;\n cab = c1b - (c1b - c2b) * k;\n } else {\n let k;\n if (y > y3) {\n k = 1;\n } else if (y2 === y3) {\n k = 0;\n } else {\n k = (y2 - y) / (y2 - y3);\n }\n xa = x2 - (x2 - x3) * k;\n car = c2r - (c2r - c3r) * k;\n cag = c2g - (c2g - c3g) * k;\n cab = c2b - (c2b - c3b) * k;\n }\n let k;\n if (y < y1) {\n k = 0;\n } else if (y > y3) {\n k = 1;\n } else {\n k = (y1 - y) / (y1 - y3);\n }\n xb = x1 - (x1 - x3) * k;\n cbr = c1r - (c1r - c3r) * k;\n cbg = c1g - (c1g - c3g) * k;\n cbb = c1b - (c1b - c3b) * k;\n const x1_ = Math.round(Math.min(xa, xb));\n const x2_ = Math.round(Math.max(xa, xb));\n let j = rowSize * y + x1_ * 4;\n for (let x = x1_; x <= x2_; x++) {\n k = (xa - x) / (xa - xb);\n if (k < 0) {\n k = 0;\n } else if (k > 1) {\n k = 1;\n }\n bytes[j++] = car - (car - cbr) * k | 0;\n bytes[j++] = cag - (cag - cbg) * k | 0;\n bytes[j++] = cab - (cab - cbb) * k | 0;\n bytes[j++] = 255;\n }\n }\n}\nfunction drawFigure(data, figure, context) {\n const ps = figure.coords;\n const cs = figure.colors;\n let i, ii;\n switch (figure.type) {\n case \"lattice\":\n const verticesPerRow = figure.verticesPerRow;\n const rows = Math.floor(ps.length / verticesPerRow) - 1;\n const cols = verticesPerRow - 1;\n for (i = 0; i < rows; i++) {\n let q = i * verticesPerRow;\n for (let j = 0; j < cols; j++, q++) {\n drawTriangle(data, context, ps[q], ps[q + 1], ps[q + verticesPerRow], cs[q], cs[q + 1], cs[q + verticesPerRow]);\n drawTriangle(data, context, ps[q + verticesPerRow + 1], ps[q + 1], ps[q + verticesPerRow], cs[q + verticesPerRow + 1], cs[q + 1], cs[q + verticesPerRow]);\n }\n }\n break;\n case \"triangles\":\n for (i = 0, ii = ps.length; i < ii; i += 3) {\n drawTriangle(data, context, ps[i], ps[i + 1], ps[i + 2], cs[i], cs[i + 1], cs[i + 2]);\n }\n break;\n default:\n throw new Error(\"illegal figure\");\n }\n}\nclass MeshShadingPattern extends BaseShadingPattern {\n constructor(IR) {\n super();\n this._coords = IR[2];\n this._colors = IR[3];\n this._figures = IR[4];\n this._bounds = IR[5];\n this._bbox = IR[7];\n this._background = IR[8];\n this.matrix = null;\n }\n _createMeshCanvas(combinedScale, backgroundColor, cachedCanvases) {\n const EXPECTED_SCALE = 1.1;\n const MAX_PATTERN_SIZE = 3000;\n const BORDER_SIZE = 2;\n const offsetX = Math.floor(this._bounds[0]);\n const offsetY = Math.floor(this._bounds[1]);\n const boundsWidth = Math.ceil(this._bounds[2]) - offsetX;\n const boundsHeight = Math.ceil(this._bounds[3]) - offsetY;\n const width = Math.min(Math.ceil(Math.abs(boundsWidth * combinedScale[0] * EXPECTED_SCALE)), MAX_PATTERN_SIZE);\n const height = Math.min(Math.ceil(Math.abs(boundsHeight * combinedScale[1] * EXPECTED_SCALE)), MAX_PATTERN_SIZE);\n const scaleX = boundsWidth / width;\n const scaleY = boundsHeight / height;\n const context = {\n coords: this._coords,\n colors: this._colors,\n offsetX: -offsetX,\n offsetY: -offsetY,\n scaleX: 1 / scaleX,\n scaleY: 1 / scaleY\n };\n const paddedWidth = width + BORDER_SIZE * 2;\n const paddedHeight = height + BORDER_SIZE * 2;\n const tmpCanvas = cachedCanvases.getCanvas(\"mesh\", paddedWidth, paddedHeight, false);\n const tmpCtx = tmpCanvas.context;\n const data = tmpCtx.createImageData(width, height);\n if (backgroundColor) {\n const bytes = data.data;\n for (let i = 0, ii = bytes.length; i < ii; i += 4) {\n bytes[i] = backgroundColor[0];\n bytes[i + 1] = backgroundColor[1];\n bytes[i + 2] = backgroundColor[2];\n bytes[i + 3] = 255;\n }\n }\n for (const figure of this._figures) {\n drawFigure(data, figure, context);\n }\n tmpCtx.putImageData(data, BORDER_SIZE, BORDER_SIZE);\n const canvas = tmpCanvas.canvas;\n return {\n canvas,\n offsetX: offsetX - BORDER_SIZE * scaleX,\n offsetY: offsetY - BORDER_SIZE * scaleY,\n scaleX,\n scaleY\n };\n }\n getPattern(ctx, owner, inverse, pathType) {\n applyBoundingBox(ctx, this._bbox);\n let scale;\n if (pathType === PathType.SHADING) {\n scale = Util.singularValueDecompose2dScale(getCurrentTransform(ctx));\n } else {\n scale = Util.singularValueDecompose2dScale(owner.baseTransform);\n if (this.matrix) {\n const matrixScale = Util.singularValueDecompose2dScale(this.matrix);\n scale = [scale[0] * matrixScale[0], scale[1] * matrixScale[1]];\n }\n }\n const temporaryPatternCanvas = this._createMeshCanvas(scale, pathType === PathType.SHADING ? null : this._background, owner.cachedCanvases);\n if (pathType !== PathType.SHADING) {\n ctx.setTransform(...owner.baseTransform);\n if (this.matrix) {\n ctx.transform(...this.matrix);\n }\n }\n ctx.translate(temporaryPatternCanvas.offsetX, temporaryPatternCanvas.offsetY);\n ctx.scale(temporaryPatternCanvas.scaleX, temporaryPatternCanvas.scaleY);\n return ctx.createPattern(temporaryPatternCanvas.canvas, \"no-repeat\");\n }\n}\nclass DummyShadingPattern extends BaseShadingPattern {\n getPattern() {\n return \"hotpink\";\n }\n}\nfunction getShadingPattern(IR) {\n switch (IR[0]) {\n case \"RadialAxial\":\n return new RadialAxialShadingPattern(IR);\n case \"Mesh\":\n return new MeshShadingPattern(IR);\n case \"Dummy\":\n return new DummyShadingPattern();\n }\n throw new Error(`Unknown IR type: ${IR[0]}`);\n}\nconst PaintType = {\n COLORED: 1,\n UNCOLORED: 2\n};\nclass TilingPattern {\n static MAX_PATTERN_SIZE = 3000;\n constructor(IR, color, ctx, canvasGraphicsFactory, baseTransform) {\n this.operatorList = IR[2];\n this.matrix = IR[3];\n this.bbox = IR[4];\n this.xstep = IR[5];\n this.ystep = IR[6];\n this.paintType = IR[7];\n this.tilingType = IR[8];\n this.color = color;\n this.ctx = ctx;\n this.canvasGraphicsFactory = canvasGraphicsFactory;\n this.baseTransform = baseTransform;\n }\n createPatternCanvas(owner) {\n const operatorList = this.operatorList;\n const bbox = this.bbox;\n const xstep = this.xstep;\n const ystep = this.ystep;\n const paintType = this.paintType;\n const tilingType = this.tilingType;\n const color = this.color;\n const canvasGraphicsFactory = this.canvasGraphicsFactory;\n info(\"TilingType: \" + tilingType);\n const x0 = bbox[0],\n y0 = bbox[1],\n x1 = bbox[2],\n y1 = bbox[3];\n const matrixScale = Util.singularValueDecompose2dScale(this.matrix);\n const curMatrixScale = Util.singularValueDecompose2dScale(this.baseTransform);\n const combinedScale = [matrixScale[0] * curMatrixScale[0], matrixScale[1] * curMatrixScale[1]];\n const dimx = this.getSizeAndScale(xstep, this.ctx.canvas.width, combinedScale[0]);\n const dimy = this.getSizeAndScale(ystep, this.ctx.canvas.height, combinedScale[1]);\n const tmpCanvas = owner.cachedCanvases.getCanvas(\"pattern\", dimx.size, dimy.size, true);\n const tmpCtx = tmpCanvas.context;\n const graphics = canvasGraphicsFactory.createCanvasGraphics(tmpCtx);\n graphics.groupLevel = owner.groupLevel;\n this.setFillAndStrokeStyleToContext(graphics, paintType, color);\n let adjustedX0 = x0;\n let adjustedY0 = y0;\n let adjustedX1 = x1;\n let adjustedY1 = y1;\n if (x0 < 0) {\n adjustedX0 = 0;\n adjustedX1 += Math.abs(x0);\n }\n if (y0 < 0) {\n adjustedY0 = 0;\n adjustedY1 += Math.abs(y0);\n }\n tmpCtx.translate(-(dimx.scale * adjustedX0), -(dimy.scale * adjustedY0));\n graphics.transform(dimx.scale, 0, 0, dimy.scale, 0, 0);\n tmpCtx.save();\n this.clipBbox(graphics, adjustedX0, adjustedY0, adjustedX1, adjustedY1);\n graphics.baseTransform = getCurrentTransform(graphics.ctx);\n graphics.executeOperatorList(operatorList);\n graphics.endDrawing();\n return {\n canvas: tmpCanvas.canvas,\n scaleX: dimx.scale,\n scaleY: dimy.scale,\n offsetX: adjustedX0,\n offsetY: adjustedY0\n };\n }\n getSizeAndScale(step, realOutputSize, scale) {\n step = Math.abs(step);\n const maxSize = Math.max(TilingPattern.MAX_PATTERN_SIZE, realOutputSize);\n let size = Math.ceil(step * scale);\n if (size >= maxSize) {\n size = maxSize;\n } else {\n scale = size / step;\n }\n return {\n scale,\n size\n };\n }\n clipBbox(graphics, x0, y0, x1, y1) {\n const bboxWidth = x1 - x0;\n const bboxHeight = y1 - y0;\n graphics.ctx.rect(x0, y0, bboxWidth, bboxHeight);\n graphics.current.updateRectMinMax(getCurrentTransform(graphics.ctx), [x0, y0, x1, y1]);\n graphics.clip();\n graphics.endPath();\n }\n setFillAndStrokeStyleToContext(graphics, paintType, color) {\n const context = graphics.ctx,\n current = graphics.current;\n switch (paintType) {\n case PaintType.COLORED:\n const ctx = this.ctx;\n context.fillStyle = ctx.fillStyle;\n context.strokeStyle = ctx.strokeStyle;\n current.fillColor = ctx.fillStyle;\n current.strokeColor = ctx.strokeStyle;\n break;\n case PaintType.UNCOLORED:\n const cssColor = Util.makeHexColor(color[0], color[1], color[2]);\n context.fillStyle = cssColor;\n context.strokeStyle = cssColor;\n current.fillColor = cssColor;\n current.strokeColor = cssColor;\n break;\n default:\n throw new FormatError(`Unsupported paint type: ${paintType}`);\n }\n }\n getPattern(ctx, owner, inverse, pathType) {\n let matrix = inverse;\n if (pathType !== PathType.SHADING) {\n matrix = Util.transform(matrix, owner.baseTransform);\n if (this.matrix) {\n matrix = Util.transform(matrix, this.matrix);\n }\n }\n const temporaryPatternCanvas = this.createPatternCanvas(owner);\n let domMatrix = new DOMMatrix(matrix);\n domMatrix = domMatrix.translate(temporaryPatternCanvas.offsetX, temporaryPatternCanvas.offsetY);\n domMatrix = domMatrix.scale(1 / temporaryPatternCanvas.scaleX, 1 / temporaryPatternCanvas.scaleY);\n const pattern = ctx.createPattern(temporaryPatternCanvas.canvas, \"repeat\");\n pattern.setTransform(domMatrix);\n return pattern;\n }\n}\n\n;// CONCATENATED MODULE: ./src/shared/image_utils.js\n\nfunction convertToRGBA(params) {\n switch (params.kind) {\n case ImageKind.GRAYSCALE_1BPP:\n return convertBlackAndWhiteToRGBA(params);\n case ImageKind.RGB_24BPP:\n return convertRGBToRGBA(params);\n }\n return null;\n}\nfunction convertBlackAndWhiteToRGBA({\n src,\n srcPos = 0,\n dest,\n width,\n height,\n nonBlackColor = 0xffffffff,\n inverseDecode = false\n}) {\n const black = util_FeatureTest.isLittleEndian ? 0xff000000 : 0x000000ff;\n const [zeroMapping, oneMapping] = inverseDecode ? [nonBlackColor, black] : [black, nonBlackColor];\n const widthInSource = width >> 3;\n const widthRemainder = width & 7;\n const srcLength = src.length;\n dest = new Uint32Array(dest.buffer);\n let destPos = 0;\n for (let i = 0; i < height; i++) {\n for (const max = srcPos + widthInSource; srcPos < max; srcPos++) {\n const elem = srcPos < srcLength ? src[srcPos] : 255;\n dest[destPos++] = elem & 0b10000000 ? oneMapping : zeroMapping;\n dest[destPos++] = elem & 0b1000000 ? oneMapping : zeroMapping;\n dest[destPos++] = elem & 0b100000 ? oneMapping : zeroMapping;\n dest[destPos++] = elem & 0b10000 ? oneMapping : zeroMapping;\n dest[destPos++] = elem & 0b1000 ? oneMapping : zeroMapping;\n dest[destPos++] = elem & 0b100 ? oneMapping : zeroMapping;\n dest[destPos++] = elem & 0b10 ? oneMapping : zeroMapping;\n dest[destPos++] = elem & 0b1 ? oneMapping : zeroMapping;\n }\n if (widthRemainder === 0) {\n continue;\n }\n const elem = srcPos < srcLength ? src[srcPos++] : 255;\n for (let j = 0; j < widthRemainder; j++) {\n dest[destPos++] = elem & 1 << 7 - j ? oneMapping : zeroMapping;\n }\n }\n return {\n srcPos,\n destPos\n };\n}\nfunction convertRGBToRGBA({\n src,\n srcPos = 0,\n dest,\n destPos = 0,\n width,\n height\n}) {\n let i = 0;\n const len32 = src.length >> 2;\n const src32 = new Uint32Array(src.buffer, srcPos, len32);\n if (FeatureTest.isLittleEndian) {\n for (; i < len32 - 2; i += 3, destPos += 4) {\n const s1 = src32[i];\n const s2 = src32[i + 1];\n const s3 = src32[i + 2];\n dest[destPos] = s1 | 0xff000000;\n dest[destPos + 1] = s1 >>> 24 | s2 << 8 | 0xff000000;\n dest[destPos + 2] = s2 >>> 16 | s3 << 16 | 0xff000000;\n dest[destPos + 3] = s3 >>> 8 | 0xff000000;\n }\n for (let j = i * 4, jj = src.length; j < jj; j += 3) {\n dest[destPos++] = src[j] | src[j + 1] << 8 | src[j + 2] << 16 | 0xff000000;\n }\n } else {\n for (; i < len32 - 2; i += 3, destPos += 4) {\n const s1 = src32[i];\n const s2 = src32[i + 1];\n const s3 = src32[i + 2];\n dest[destPos] = s1 | 0xff;\n dest[destPos + 1] = s1 << 24 | s2 >>> 8 | 0xff;\n dest[destPos + 2] = s2 << 16 | s3 >>> 16 | 0xff;\n dest[destPos + 3] = s3 << 8 | 0xff;\n }\n for (let j = i * 4, jj = src.length; j < jj; j += 3) {\n dest[destPos++] = src[j] << 24 | src[j + 1] << 16 | src[j + 2] << 8 | 0xff;\n }\n }\n return {\n srcPos,\n destPos\n };\n}\nfunction grayToRGBA(src, dest) {\n if (FeatureTest.isLittleEndian) {\n for (let i = 0, ii = src.length; i < ii; i++) {\n dest[i] = src[i] * 0x10101 | 0xff000000;\n }\n } else {\n for (let i = 0, ii = src.length; i < ii; i++) {\n dest[i] = src[i] * 0x1010100 | 0x000000ff;\n }\n }\n}\n\n;// CONCATENATED MODULE: ./src/display/canvas.js\n\n\n\n\nconst MIN_FONT_SIZE = 16;\nconst MAX_FONT_SIZE = 100;\nconst EXECUTION_TIME = 15;\nconst EXECUTION_STEPS = 10;\nconst MAX_SIZE_TO_COMPILE = 1000;\nconst FULL_CHUNK_HEIGHT = 16;\nfunction mirrorContextOperations(ctx, destCtx) {\n if (ctx._removeMirroring) {\n throw new Error(\"Context is already forwarding operations.\");\n }\n ctx.__originalSave = ctx.save;\n ctx.__originalRestore = ctx.restore;\n ctx.__originalRotate = ctx.rotate;\n ctx.__originalScale = ctx.scale;\n ctx.__originalTranslate = ctx.translate;\n ctx.__originalTransform = ctx.transform;\n ctx.__originalSetTransform = ctx.setTransform;\n ctx.__originalResetTransform = ctx.resetTransform;\n ctx.__originalClip = ctx.clip;\n ctx.__originalMoveTo = ctx.moveTo;\n ctx.__originalLineTo = ctx.lineTo;\n ctx.__originalBezierCurveTo = ctx.bezierCurveTo;\n ctx.__originalRect = ctx.rect;\n ctx.__originalClosePath = ctx.closePath;\n ctx.__originalBeginPath = ctx.beginPath;\n ctx._removeMirroring = () => {\n ctx.save = ctx.__originalSave;\n ctx.restore = ctx.__originalRestore;\n ctx.rotate = ctx.__originalRotate;\n ctx.scale = ctx.__originalScale;\n ctx.translate = ctx.__originalTranslate;\n ctx.transform = ctx.__originalTransform;\n ctx.setTransform = ctx.__originalSetTransform;\n ctx.resetTransform = ctx.__originalResetTransform;\n ctx.clip = ctx.__originalClip;\n ctx.moveTo = ctx.__originalMoveTo;\n ctx.lineTo = ctx.__originalLineTo;\n ctx.bezierCurveTo = ctx.__originalBezierCurveTo;\n ctx.rect = ctx.__originalRect;\n ctx.closePath = ctx.__originalClosePath;\n ctx.beginPath = ctx.__originalBeginPath;\n delete ctx._removeMirroring;\n };\n ctx.save = function ctxSave() {\n destCtx.save();\n this.__originalSave();\n };\n ctx.restore = function ctxRestore() {\n destCtx.restore();\n this.__originalRestore();\n };\n ctx.translate = function ctxTranslate(x, y) {\n destCtx.translate(x, y);\n this.__originalTranslate(x, y);\n };\n ctx.scale = function ctxScale(x, y) {\n destCtx.scale(x, y);\n this.__originalScale(x, y);\n };\n ctx.transform = function ctxTransform(a, b, c, d, e, f) {\n destCtx.transform(a, b, c, d, e, f);\n this.__originalTransform(a, b, c, d, e, f);\n };\n ctx.setTransform = function ctxSetTransform(a, b, c, d, e, f) {\n destCtx.setTransform(a, b, c, d, e, f);\n this.__originalSetTransform(a, b, c, d, e, f);\n };\n ctx.resetTransform = function ctxResetTransform() {\n destCtx.resetTransform();\n this.__originalResetTransform();\n };\n ctx.rotate = function ctxRotate(angle) {\n destCtx.rotate(angle);\n this.__originalRotate(angle);\n };\n ctx.clip = function ctxRotate(rule) {\n destCtx.clip(rule);\n this.__originalClip(rule);\n };\n ctx.moveTo = function (x, y) {\n destCtx.moveTo(x, y);\n this.__originalMoveTo(x, y);\n };\n ctx.lineTo = function (x, y) {\n destCtx.lineTo(x, y);\n this.__originalLineTo(x, y);\n };\n ctx.bezierCurveTo = function (cp1x, cp1y, cp2x, cp2y, x, y) {\n destCtx.bezierCurveTo(cp1x, cp1y, cp2x, cp2y, x, y);\n this.__originalBezierCurveTo(cp1x, cp1y, cp2x, cp2y, x, y);\n };\n ctx.rect = function (x, y, width, height) {\n destCtx.rect(x, y, width, height);\n this.__originalRect(x, y, width, height);\n };\n ctx.closePath = function () {\n destCtx.closePath();\n this.__originalClosePath();\n };\n ctx.beginPath = function () {\n destCtx.beginPath();\n this.__originalBeginPath();\n };\n}\nclass CachedCanvases {\n constructor(canvasFactory) {\n this.canvasFactory = canvasFactory;\n this.cache = Object.create(null);\n }\n getCanvas(id, width, height) {\n let canvasEntry;\n if (this.cache[id] !== undefined) {\n canvasEntry = this.cache[id];\n this.canvasFactory.reset(canvasEntry, width, height);\n } else {\n canvasEntry = this.canvasFactory.create(width, height);\n this.cache[id] = canvasEntry;\n }\n return canvasEntry;\n }\n delete(id) {\n delete this.cache[id];\n }\n clear() {\n for (const id in this.cache) {\n const canvasEntry = this.cache[id];\n this.canvasFactory.destroy(canvasEntry);\n delete this.cache[id];\n }\n }\n}\nfunction drawImageAtIntegerCoords(ctx, srcImg, srcX, srcY, srcW, srcH, destX, destY, destW, destH) {\n const [a, b, c, d, tx, ty] = getCurrentTransform(ctx);\n if (b === 0 && c === 0) {\n const tlX = destX * a + tx;\n const rTlX = Math.round(tlX);\n const tlY = destY * d + ty;\n const rTlY = Math.round(tlY);\n const brX = (destX + destW) * a + tx;\n const rWidth = Math.abs(Math.round(brX) - rTlX) || 1;\n const brY = (destY + destH) * d + ty;\n const rHeight = Math.abs(Math.round(brY) - rTlY) || 1;\n ctx.setTransform(Math.sign(a), 0, 0, Math.sign(d), rTlX, rTlY);\n ctx.drawImage(srcImg, srcX, srcY, srcW, srcH, 0, 0, rWidth, rHeight);\n ctx.setTransform(a, b, c, d, tx, ty);\n return [rWidth, rHeight];\n }\n if (a === 0 && d === 0) {\n const tlX = destY * c + tx;\n const rTlX = Math.round(tlX);\n const tlY = destX * b + ty;\n const rTlY = Math.round(tlY);\n const brX = (destY + destH) * c + tx;\n const rWidth = Math.abs(Math.round(brX) - rTlX) || 1;\n const brY = (destX + destW) * b + ty;\n const rHeight = Math.abs(Math.round(brY) - rTlY) || 1;\n ctx.setTransform(0, Math.sign(b), Math.sign(c), 0, rTlX, rTlY);\n ctx.drawImage(srcImg, srcX, srcY, srcW, srcH, 0, 0, rHeight, rWidth);\n ctx.setTransform(a, b, c, d, tx, ty);\n return [rHeight, rWidth];\n }\n ctx.drawImage(srcImg, srcX, srcY, srcW, srcH, destX, destY, destW, destH);\n const scaleX = Math.hypot(a, b);\n const scaleY = Math.hypot(c, d);\n return [scaleX * destW, scaleY * destH];\n}\nfunction compileType3Glyph(imgData) {\n const {\n width,\n height\n } = imgData;\n if (width > MAX_SIZE_TO_COMPILE || height > MAX_SIZE_TO_COMPILE) {\n return null;\n }\n const POINT_TO_PROCESS_LIMIT = 1000;\n const POINT_TYPES = new Uint8Array([0, 2, 4, 0, 1, 0, 5, 4, 8, 10, 0, 8, 0, 2, 1, 0]);\n const width1 = width + 1;\n let points = new Uint8Array(width1 * (height + 1));\n let i, j, j0;\n const lineSize = width + 7 & ~7;\n let data = new Uint8Array(lineSize * height),\n pos = 0;\n for (const elem of imgData.data) {\n let mask = 128;\n while (mask > 0) {\n data[pos++] = elem & mask ? 0 : 255;\n mask >>= 1;\n }\n }\n let count = 0;\n pos = 0;\n if (data[pos] !== 0) {\n points[0] = 1;\n ++count;\n }\n for (j = 1; j < width; j++) {\n if (data[pos] !== data[pos + 1]) {\n points[j] = data[pos] ? 2 : 1;\n ++count;\n }\n pos++;\n }\n if (data[pos] !== 0) {\n points[j] = 2;\n ++count;\n }\n for (i = 1; i < height; i++) {\n pos = i * lineSize;\n j0 = i * width1;\n if (data[pos - lineSize] !== data[pos]) {\n points[j0] = data[pos] ? 1 : 8;\n ++count;\n }\n let sum = (data[pos] ? 4 : 0) + (data[pos - lineSize] ? 8 : 0);\n for (j = 1; j < width; j++) {\n sum = (sum >> 2) + (data[pos + 1] ? 4 : 0) + (data[pos - lineSize + 1] ? 8 : 0);\n if (POINT_TYPES[sum]) {\n points[j0 + j] = POINT_TYPES[sum];\n ++count;\n }\n pos++;\n }\n if (data[pos - lineSize] !== data[pos]) {\n points[j0 + j] = data[pos] ? 2 : 4;\n ++count;\n }\n if (count > POINT_TO_PROCESS_LIMIT) {\n return null;\n }\n }\n pos = lineSize * (height - 1);\n j0 = i * width1;\n if (data[pos] !== 0) {\n points[j0] = 8;\n ++count;\n }\n for (j = 1; j < width; j++) {\n if (data[pos] !== data[pos + 1]) {\n points[j0 + j] = data[pos] ? 4 : 8;\n ++count;\n }\n pos++;\n }\n if (data[pos] !== 0) {\n points[j0 + j] = 4;\n ++count;\n }\n if (count > POINT_TO_PROCESS_LIMIT) {\n return null;\n }\n const steps = new Int32Array([0, width1, -1, 0, -width1, 0, 0, 0, 1]);\n const path = new Path2D();\n for (i = 0; count && i <= height; i++) {\n let p = i * width1;\n const end = p + width;\n while (p < end && !points[p]) {\n p++;\n }\n if (p === end) {\n continue;\n }\n path.moveTo(p % width1, i);\n const p0 = p;\n let type = points[p];\n do {\n const step = steps[type];\n do {\n p += step;\n } while (!points[p]);\n const pp = points[p];\n if (pp !== 5 && pp !== 10) {\n type = pp;\n points[p] = 0;\n } else {\n type = pp & 0x33 * type >> 4;\n points[p] &= type >> 2 | type << 2;\n }\n path.lineTo(p % width1, p / width1 | 0);\n if (!points[p]) {\n --count;\n }\n } while (p0 !== p);\n --i;\n }\n data = null;\n points = null;\n const drawOutline = function (c) {\n c.save();\n c.scale(1 / width, -1 / height);\n c.translate(0, -height);\n c.fill(path);\n c.beginPath();\n c.restore();\n };\n return drawOutline;\n}\nclass CanvasExtraState {\n constructor(width, height) {\n this.alphaIsShape = false;\n this.fontSize = 0;\n this.fontSizeScale = 1;\n this.textMatrix = IDENTITY_MATRIX;\n this.textMatrixScale = 1;\n this.fontMatrix = FONT_IDENTITY_MATRIX;\n this.leading = 0;\n this.x = 0;\n this.y = 0;\n this.lineX = 0;\n this.lineY = 0;\n this.charSpacing = 0;\n this.wordSpacing = 0;\n this.textHScale = 1;\n this.textRenderingMode = TextRenderingMode.FILL;\n this.textRise = 0;\n this.fillColor = \"#000000\";\n this.strokeColor = \"#000000\";\n this.patternFill = false;\n this.fillAlpha = 1;\n this.strokeAlpha = 1;\n this.lineWidth = 1;\n this.activeSMask = null;\n this.transferMaps = \"none\";\n this.startNewPathAndClipBox([0, 0, width, height]);\n }\n clone() {\n const clone = Object.create(this);\n clone.clipBox = this.clipBox.slice();\n return clone;\n }\n setCurrentPoint(x, y) {\n this.x = x;\n this.y = y;\n }\n updatePathMinMax(transform, x, y) {\n [x, y] = Util.applyTransform([x, y], transform);\n this.minX = Math.min(this.minX, x);\n this.minY = Math.min(this.minY, y);\n this.maxX = Math.max(this.maxX, x);\n this.maxY = Math.max(this.maxY, y);\n }\n updateRectMinMax(transform, rect) {\n const p1 = Util.applyTransform(rect, transform);\n const p2 = Util.applyTransform(rect.slice(2), transform);\n const p3 = Util.applyTransform([rect[0], rect[3]], transform);\n const p4 = Util.applyTransform([rect[2], rect[1]], transform);\n this.minX = Math.min(this.minX, p1[0], p2[0], p3[0], p4[0]);\n this.minY = Math.min(this.minY, p1[1], p2[1], p3[1], p4[1]);\n this.maxX = Math.max(this.maxX, p1[0], p2[0], p3[0], p4[0]);\n this.maxY = Math.max(this.maxY, p1[1], p2[1], p3[1], p4[1]);\n }\n updateScalingPathMinMax(transform, minMax) {\n Util.scaleMinMax(transform, minMax);\n this.minX = Math.min(this.minX, minMax[0]);\n this.minY = Math.min(this.minY, minMax[1]);\n this.maxX = Math.max(this.maxX, minMax[2]);\n this.maxY = Math.max(this.maxY, minMax[3]);\n }\n updateCurvePathMinMax(transform, x0, y0, x1, y1, x2, y2, x3, y3, minMax) {\n const box = Util.bezierBoundingBox(x0, y0, x1, y1, x2, y2, x3, y3, minMax);\n if (minMax) {\n return;\n }\n this.updateRectMinMax(transform, box);\n }\n getPathBoundingBox(pathType = PathType.FILL, transform = null) {\n const box = [this.minX, this.minY, this.maxX, this.maxY];\n if (pathType === PathType.STROKE) {\n if (!transform) {\n unreachable(\"Stroke bounding box must include transform.\");\n }\n const scale = Util.singularValueDecompose2dScale(transform);\n const xStrokePad = scale[0] * this.lineWidth / 2;\n const yStrokePad = scale[1] * this.lineWidth / 2;\n box[0] -= xStrokePad;\n box[1] -= yStrokePad;\n box[2] += xStrokePad;\n box[3] += yStrokePad;\n }\n return box;\n }\n updateClipFromPath() {\n const intersect = Util.intersect(this.clipBox, this.getPathBoundingBox());\n this.startNewPathAndClipBox(intersect || [0, 0, 0, 0]);\n }\n isEmptyClip() {\n return this.minX === Infinity;\n }\n startNewPathAndClipBox(box) {\n this.clipBox = box;\n this.minX = Infinity;\n this.minY = Infinity;\n this.maxX = 0;\n this.maxY = 0;\n }\n getClippedPathBoundingBox(pathType = PathType.FILL, transform = null) {\n return Util.intersect(this.clipBox, this.getPathBoundingBox(pathType, transform));\n }\n}\nfunction putBinaryImageData(ctx, imgData) {\n if (typeof ImageData !== \"undefined\" && imgData instanceof ImageData) {\n ctx.putImageData(imgData, 0, 0);\n return;\n }\n const height = imgData.height,\n width = imgData.width;\n const partialChunkHeight = height % FULL_CHUNK_HEIGHT;\n const fullChunks = (height - partialChunkHeight) / FULL_CHUNK_HEIGHT;\n const totalChunks = partialChunkHeight === 0 ? fullChunks : fullChunks + 1;\n const chunkImgData = ctx.createImageData(width, FULL_CHUNK_HEIGHT);\n let srcPos = 0,\n destPos;\n const src = imgData.data;\n const dest = chunkImgData.data;\n let i, j, thisChunkHeight, elemsInThisChunk;\n if (imgData.kind === util_ImageKind.GRAYSCALE_1BPP) {\n const srcLength = src.byteLength;\n const dest32 = new Uint32Array(dest.buffer, 0, dest.byteLength >> 2);\n const dest32DataLength = dest32.length;\n const fullSrcDiff = width + 7 >> 3;\n const white = 0xffffffff;\n const black = util_FeatureTest.isLittleEndian ? 0xff000000 : 0x000000ff;\n for (i = 0; i < totalChunks; i++) {\n thisChunkHeight = i < fullChunks ? FULL_CHUNK_HEIGHT : partialChunkHeight;\n destPos = 0;\n for (j = 0; j < thisChunkHeight; j++) {\n const srcDiff = srcLength - srcPos;\n let k = 0;\n const kEnd = srcDiff > fullSrcDiff ? width : srcDiff * 8 - 7;\n const kEndUnrolled = kEnd & ~7;\n let mask = 0;\n let srcByte = 0;\n for (; k < kEndUnrolled; k += 8) {\n srcByte = src[srcPos++];\n dest32[destPos++] = srcByte & 128 ? white : black;\n dest32[destPos++] = srcByte & 64 ? white : black;\n dest32[destPos++] = srcByte & 32 ? white : black;\n dest32[destPos++] = srcByte & 16 ? white : black;\n dest32[destPos++] = srcByte & 8 ? white : black;\n dest32[destPos++] = srcByte & 4 ? white : black;\n dest32[destPos++] = srcByte & 2 ? white : black;\n dest32[destPos++] = srcByte & 1 ? white : black;\n }\n for (; k < kEnd; k++) {\n if (mask === 0) {\n srcByte = src[srcPos++];\n mask = 128;\n }\n dest32[destPos++] = srcByte & mask ? white : black;\n mask >>= 1;\n }\n }\n while (destPos < dest32DataLength) {\n dest32[destPos++] = 0;\n }\n ctx.putImageData(chunkImgData, 0, i * FULL_CHUNK_HEIGHT);\n }\n } else if (imgData.kind === util_ImageKind.RGBA_32BPP) {\n j = 0;\n elemsInThisChunk = width * FULL_CHUNK_HEIGHT * 4;\n for (i = 0; i < fullChunks; i++) {\n dest.set(src.subarray(srcPos, srcPos + elemsInThisChunk));\n srcPos += elemsInThisChunk;\n ctx.putImageData(chunkImgData, 0, j);\n j += FULL_CHUNK_HEIGHT;\n }\n if (i < totalChunks) {\n elemsInThisChunk = width * partialChunkHeight * 4;\n dest.set(src.subarray(srcPos, srcPos + elemsInThisChunk));\n ctx.putImageData(chunkImgData, 0, j);\n }\n } else if (imgData.kind === util_ImageKind.RGB_24BPP) {\n thisChunkHeight = FULL_CHUNK_HEIGHT;\n elemsInThisChunk = width * thisChunkHeight;\n for (i = 0; i < totalChunks; i++) {\n if (i >= fullChunks) {\n thisChunkHeight = partialChunkHeight;\n elemsInThisChunk = width * thisChunkHeight;\n }\n destPos = 0;\n for (j = elemsInThisChunk; j--;) {\n dest[destPos++] = src[srcPos++];\n dest[destPos++] = src[srcPos++];\n dest[destPos++] = src[srcPos++];\n dest[destPos++] = 255;\n }\n ctx.putImageData(chunkImgData, 0, i * FULL_CHUNK_HEIGHT);\n }\n } else {\n throw new Error(`bad image kind: ${imgData.kind}`);\n }\n}\nfunction putBinaryImageMask(ctx, imgData) {\n if (imgData.bitmap) {\n ctx.drawImage(imgData.bitmap, 0, 0);\n return;\n }\n const height = imgData.height,\n width = imgData.width;\n const partialChunkHeight = height % FULL_CHUNK_HEIGHT;\n const fullChunks = (height - partialChunkHeight) / FULL_CHUNK_HEIGHT;\n const totalChunks = partialChunkHeight === 0 ? fullChunks : fullChunks + 1;\n const chunkImgData = ctx.createImageData(width, FULL_CHUNK_HEIGHT);\n let srcPos = 0;\n const src = imgData.data;\n const dest = chunkImgData.data;\n for (let i = 0; i < totalChunks; i++) {\n const thisChunkHeight = i < fullChunks ? FULL_CHUNK_HEIGHT : partialChunkHeight;\n ({\n srcPos\n } = convertBlackAndWhiteToRGBA({\n src,\n srcPos,\n dest,\n width,\n height: thisChunkHeight,\n nonBlackColor: 0\n }));\n ctx.putImageData(chunkImgData, 0, i * FULL_CHUNK_HEIGHT);\n }\n}\nfunction copyCtxState(sourceCtx, destCtx) {\n const properties = [\"strokeStyle\", \"fillStyle\", \"fillRule\", \"globalAlpha\", \"lineWidth\", \"lineCap\", \"lineJoin\", \"miterLimit\", \"globalCompositeOperation\", \"font\", \"filter\"];\n for (const property of properties) {\n if (sourceCtx[property] !== undefined) {\n destCtx[property] = sourceCtx[property];\n }\n }\n if (sourceCtx.setLineDash !== undefined) {\n destCtx.setLineDash(sourceCtx.getLineDash());\n destCtx.lineDashOffset = sourceCtx.lineDashOffset;\n }\n}\nfunction resetCtxToDefault(ctx) {\n ctx.strokeStyle = ctx.fillStyle = \"#000000\";\n ctx.fillRule = \"nonzero\";\n ctx.globalAlpha = 1;\n ctx.lineWidth = 1;\n ctx.lineCap = \"butt\";\n ctx.lineJoin = \"miter\";\n ctx.miterLimit = 10;\n ctx.globalCompositeOperation = \"source-over\";\n ctx.font = \"10px sans-serif\";\n if (ctx.setLineDash !== undefined) {\n ctx.setLineDash([]);\n ctx.lineDashOffset = 0;\n }\n if (!isNodeJS) {\n const {\n filter\n } = ctx;\n if (filter !== \"none\" && filter !== \"\") {\n ctx.filter = \"none\";\n }\n }\n}\nfunction getImageSmoothingEnabled(transform, interpolate) {\n if (interpolate) {\n return true;\n }\n const scale = Util.singularValueDecompose2dScale(transform);\n scale[0] = Math.fround(scale[0]);\n scale[1] = Math.fround(scale[1]);\n const actualScale = Math.fround((globalThis.devicePixelRatio || 1) * PixelsPerInch.PDF_TO_CSS_UNITS);\n return scale[0] <= actualScale && scale[1] <= actualScale;\n}\nconst LINE_CAP_STYLES = [\"butt\", \"round\", \"square\"];\nconst LINE_JOIN_STYLES = [\"miter\", \"round\", \"bevel\"];\nconst NORMAL_CLIP = {};\nconst EO_CLIP = {};\nclass CanvasGraphics {\n constructor(canvasCtx, commonObjs, objs, canvasFactory, filterFactory, {\n optionalContentConfig,\n markedContentStack = null\n }, annotationCanvasMap, pageColors) {\n this.ctx = canvasCtx;\n this.current = new CanvasExtraState(this.ctx.canvas.width, this.ctx.canvas.height);\n this.stateStack = [];\n this.pendingClip = null;\n this.pendingEOFill = false;\n this.res = null;\n this.xobjs = null;\n this.commonObjs = commonObjs;\n this.objs = objs;\n this.canvasFactory = canvasFactory;\n this.filterFactory = filterFactory;\n this.groupStack = [];\n this.processingType3 = null;\n this.baseTransform = null;\n this.baseTransformStack = [];\n this.groupLevel = 0;\n this.smaskStack = [];\n this.smaskCounter = 0;\n this.tempSMask = null;\n this.suspendedCtx = null;\n this.contentVisible = true;\n this.markedContentStack = markedContentStack || [];\n this.optionalContentConfig = optionalContentConfig;\n this.cachedCanvases = new CachedCanvases(this.canvasFactory);\n this.cachedPatterns = new Map();\n this.annotationCanvasMap = annotationCanvasMap;\n this.viewportScale = 1;\n this.outputScaleX = 1;\n this.outputScaleY = 1;\n this.pageColors = pageColors;\n this._cachedScaleForStroking = [-1, 0];\n this._cachedGetSinglePixelWidth = null;\n this._cachedBitmapsMap = new Map();\n }\n getObject(data, fallback = null) {\n if (typeof data === \"string\") {\n return data.startsWith(\"g_\") ? this.commonObjs.get(data) : this.objs.get(data);\n }\n return fallback;\n }\n beginDrawing({\n transform,\n viewport,\n transparency = false,\n background = null\n }) {\n const width = this.ctx.canvas.width;\n const height = this.ctx.canvas.height;\n const savedFillStyle = this.ctx.fillStyle;\n this.ctx.fillStyle = background || \"#ffffff\";\n this.ctx.fillRect(0, 0, width, height);\n this.ctx.fillStyle = savedFillStyle;\n if (transparency) {\n const transparentCanvas = this.cachedCanvases.getCanvas(\"transparent\", width, height);\n this.compositeCtx = this.ctx;\n this.transparentCanvas = transparentCanvas.canvas;\n this.ctx = transparentCanvas.context;\n this.ctx.save();\n this.ctx.transform(...getCurrentTransform(this.compositeCtx));\n }\n this.ctx.save();\n resetCtxToDefault(this.ctx);\n if (transform) {\n this.ctx.transform(...transform);\n this.outputScaleX = transform[0];\n this.outputScaleY = transform[0];\n }\n this.ctx.transform(...viewport.transform);\n this.viewportScale = viewport.scale;\n this.baseTransform = getCurrentTransform(this.ctx);\n }\n executeOperatorList(operatorList, executionStartIdx, continueCallback, stepper) {\n const argsArray = operatorList.argsArray;\n const fnArray = operatorList.fnArray;\n let i = executionStartIdx || 0;\n const argsArrayLen = argsArray.length;\n if (argsArrayLen === i) {\n return i;\n }\n const chunkOperations = argsArrayLen - i > EXECUTION_STEPS && typeof continueCallback === \"function\";\n const endTime = chunkOperations ? Date.now() + EXECUTION_TIME : 0;\n let steps = 0;\n const commonObjs = this.commonObjs;\n const objs = this.objs;\n let fnId;\n while (true) {\n if (stepper !== undefined && i === stepper.nextBreakPoint) {\n stepper.breakIt(i, continueCallback);\n return i;\n }\n fnId = fnArray[i];\n if (fnId !== OPS.dependency) {\n this[fnId].apply(this, argsArray[i]);\n } else {\n for (const depObjId of argsArray[i]) {\n const objsPool = depObjId.startsWith(\"g_\") ? commonObjs : objs;\n if (!objsPool.has(depObjId)) {\n objsPool.get(depObjId, continueCallback);\n return i;\n }\n }\n }\n i++;\n if (i === argsArrayLen) {\n return i;\n }\n if (chunkOperations && ++steps > EXECUTION_STEPS) {\n if (Date.now() > endTime) {\n continueCallback();\n return i;\n }\n steps = 0;\n }\n }\n }\n #restoreInitialState() {\n while (this.stateStack.length || this.inSMaskMode) {\n this.restore();\n }\n this.ctx.restore();\n if (this.transparentCanvas) {\n this.ctx = this.compositeCtx;\n this.ctx.save();\n this.ctx.setTransform(1, 0, 0, 1, 0, 0);\n this.ctx.drawImage(this.transparentCanvas, 0, 0);\n this.ctx.restore();\n this.transparentCanvas = null;\n }\n }\n endDrawing() {\n this.#restoreInitialState();\n this.cachedCanvases.clear();\n this.cachedPatterns.clear();\n for (const cache of this._cachedBitmapsMap.values()) {\n for (const canvas of cache.values()) {\n if (typeof HTMLCanvasElement !== \"undefined\" && canvas instanceof HTMLCanvasElement) {\n canvas.width = canvas.height = 0;\n }\n }\n cache.clear();\n }\n this._cachedBitmapsMap.clear();\n this.#drawFilter();\n }\n #drawFilter() {\n if (this.pageColors) {\n const hcmFilterId = this.filterFactory.addHCMFilter(this.pageColors.foreground, this.pageColors.background);\n if (hcmFilterId !== \"none\") {\n const savedFilter = this.ctx.filter;\n this.ctx.filter = hcmFilterId;\n this.ctx.drawImage(this.ctx.canvas, 0, 0);\n this.ctx.filter = savedFilter;\n }\n }\n }\n _scaleImage(img, inverseTransform) {\n const width = img.width;\n const height = img.height;\n let widthScale = Math.max(Math.hypot(inverseTransform[0], inverseTransform[1]), 1);\n let heightScale = Math.max(Math.hypot(inverseTransform[2], inverseTransform[3]), 1);\n let paintWidth = width,\n paintHeight = height;\n let tmpCanvasId = \"prescale1\";\n let tmpCanvas, tmpCtx;\n while (widthScale > 2 && paintWidth > 1 || heightScale > 2 && paintHeight > 1) {\n let newWidth = paintWidth,\n newHeight = paintHeight;\n if (widthScale > 2 && paintWidth > 1) {\n newWidth = paintWidth >= 16384 ? Math.floor(paintWidth / 2) - 1 || 1 : Math.ceil(paintWidth / 2);\n widthScale /= paintWidth / newWidth;\n }\n if (heightScale > 2 && paintHeight > 1) {\n newHeight = paintHeight >= 16384 ? Math.floor(paintHeight / 2) - 1 || 1 : Math.ceil(paintHeight) / 2;\n heightScale /= paintHeight / newHeight;\n }\n tmpCanvas = this.cachedCanvases.getCanvas(tmpCanvasId, newWidth, newHeight);\n tmpCtx = tmpCanvas.context;\n tmpCtx.clearRect(0, 0, newWidth, newHeight);\n tmpCtx.drawImage(img, 0, 0, paintWidth, paintHeight, 0, 0, newWidth, newHeight);\n img = tmpCanvas.canvas;\n paintWidth = newWidth;\n paintHeight = newHeight;\n tmpCanvasId = tmpCanvasId === \"prescale1\" ? \"prescale2\" : \"prescale1\";\n }\n return {\n img,\n paintWidth,\n paintHeight\n };\n }\n _createMaskCanvas(img) {\n const ctx = this.ctx;\n const {\n width,\n height\n } = img;\n const fillColor = this.current.fillColor;\n const isPatternFill = this.current.patternFill;\n const currentTransform = getCurrentTransform(ctx);\n let cache, cacheKey, scaled, maskCanvas;\n if ((img.bitmap || img.data) && img.count > 1) {\n const mainKey = img.bitmap || img.data.buffer;\n cacheKey = JSON.stringify(isPatternFill ? currentTransform : [currentTransform.slice(0, 4), fillColor]);\n cache = this._cachedBitmapsMap.get(mainKey);\n if (!cache) {\n cache = new Map();\n this._cachedBitmapsMap.set(mainKey, cache);\n }\n const cachedImage = cache.get(cacheKey);\n if (cachedImage && !isPatternFill) {\n const offsetX = Math.round(Math.min(currentTransform[0], currentTransform[2]) + currentTransform[4]);\n const offsetY = Math.round(Math.min(currentTransform[1], currentTransform[3]) + currentTransform[5]);\n return {\n canvas: cachedImage,\n offsetX,\n offsetY\n };\n }\n scaled = cachedImage;\n }\n if (!scaled) {\n maskCanvas = this.cachedCanvases.getCanvas(\"maskCanvas\", width, height);\n putBinaryImageMask(maskCanvas.context, img);\n }\n let maskToCanvas = Util.transform(currentTransform, [1 / width, 0, 0, -1 / height, 0, 0]);\n maskToCanvas = Util.transform(maskToCanvas, [1, 0, 0, 1, 0, -height]);\n const [minX, minY, maxX, maxY] = Util.getAxialAlignedBoundingBox([0, 0, width, height], maskToCanvas);\n const drawnWidth = Math.round(maxX - minX) || 1;\n const drawnHeight = Math.round(maxY - minY) || 1;\n const fillCanvas = this.cachedCanvases.getCanvas(\"fillCanvas\", drawnWidth, drawnHeight);\n const fillCtx = fillCanvas.context;\n const offsetX = minX;\n const offsetY = minY;\n fillCtx.translate(-offsetX, -offsetY);\n fillCtx.transform(...maskToCanvas);\n if (!scaled) {\n scaled = this._scaleImage(maskCanvas.canvas, getCurrentTransformInverse(fillCtx));\n scaled = scaled.img;\n if (cache && isPatternFill) {\n cache.set(cacheKey, scaled);\n }\n }\n fillCtx.imageSmoothingEnabled = getImageSmoothingEnabled(getCurrentTransform(fillCtx), img.interpolate);\n drawImageAtIntegerCoords(fillCtx, scaled, 0, 0, scaled.width, scaled.height, 0, 0, width, height);\n fillCtx.globalCompositeOperation = \"source-in\";\n const inverse = Util.transform(getCurrentTransformInverse(fillCtx), [1, 0, 0, 1, -offsetX, -offsetY]);\n fillCtx.fillStyle = isPatternFill ? fillColor.getPattern(ctx, this, inverse, PathType.FILL) : fillColor;\n fillCtx.fillRect(0, 0, width, height);\n if (cache && !isPatternFill) {\n this.cachedCanvases.delete(\"fillCanvas\");\n cache.set(cacheKey, fillCanvas.canvas);\n }\n return {\n canvas: fillCanvas.canvas,\n offsetX: Math.round(offsetX),\n offsetY: Math.round(offsetY)\n };\n }\n setLineWidth(width) {\n if (width !== this.current.lineWidth) {\n this._cachedScaleForStroking[0] = -1;\n }\n this.current.lineWidth = width;\n this.ctx.lineWidth = width;\n }\n setLineCap(style) {\n this.ctx.lineCap = LINE_CAP_STYLES[style];\n }\n setLineJoin(style) {\n this.ctx.lineJoin = LINE_JOIN_STYLES[style];\n }\n setMiterLimit(limit) {\n this.ctx.miterLimit = limit;\n }\n setDash(dashArray, dashPhase) {\n const ctx = this.ctx;\n if (ctx.setLineDash !== undefined) {\n ctx.setLineDash(dashArray);\n ctx.lineDashOffset = dashPhase;\n }\n }\n setRenderingIntent(intent) {}\n setFlatness(flatness) {}\n setGState(states) {\n for (const [key, value] of states) {\n switch (key) {\n case \"LW\":\n this.setLineWidth(value);\n break;\n case \"LC\":\n this.setLineCap(value);\n break;\n case \"LJ\":\n this.setLineJoin(value);\n break;\n case \"ML\":\n this.setMiterLimit(value);\n break;\n case \"D\":\n this.setDash(value[0], value[1]);\n break;\n case \"RI\":\n this.setRenderingIntent(value);\n break;\n case \"FL\":\n this.setFlatness(value);\n break;\n case \"Font\":\n this.setFont(value[0], value[1]);\n break;\n case \"CA\":\n this.current.strokeAlpha = value;\n break;\n case \"ca\":\n this.current.fillAlpha = value;\n this.ctx.globalAlpha = value;\n break;\n case \"BM\":\n this.ctx.globalCompositeOperation = value;\n break;\n case \"SMask\":\n this.current.activeSMask = value ? this.tempSMask : null;\n this.tempSMask = null;\n this.checkSMaskState();\n break;\n case \"TR\":\n this.ctx.filter = this.current.transferMaps = this.filterFactory.addFilter(value);\n break;\n }\n }\n }\n get inSMaskMode() {\n return !!this.suspendedCtx;\n }\n checkSMaskState() {\n const inSMaskMode = this.inSMaskMode;\n if (this.current.activeSMask && !inSMaskMode) {\n this.beginSMaskMode();\n } else if (!this.current.activeSMask && inSMaskMode) {\n this.endSMaskMode();\n }\n }\n beginSMaskMode() {\n if (this.inSMaskMode) {\n throw new Error(\"beginSMaskMode called while already in smask mode\");\n }\n const drawnWidth = this.ctx.canvas.width;\n const drawnHeight = this.ctx.canvas.height;\n const cacheId = \"smaskGroupAt\" + this.groupLevel;\n const scratchCanvas = this.cachedCanvases.getCanvas(cacheId, drawnWidth, drawnHeight);\n this.suspendedCtx = this.ctx;\n this.ctx = scratchCanvas.context;\n const ctx = this.ctx;\n ctx.setTransform(...getCurrentTransform(this.suspendedCtx));\n copyCtxState(this.suspendedCtx, ctx);\n mirrorContextOperations(ctx, this.suspendedCtx);\n this.setGState([[\"BM\", \"source-over\"], [\"ca\", 1], [\"CA\", 1]]);\n }\n endSMaskMode() {\n if (!this.inSMaskMode) {\n throw new Error(\"endSMaskMode called while not in smask mode\");\n }\n this.ctx._removeMirroring();\n copyCtxState(this.ctx, this.suspendedCtx);\n this.ctx = this.suspendedCtx;\n this.suspendedCtx = null;\n }\n compose(dirtyBox) {\n if (!this.current.activeSMask) {\n return;\n }\n if (!dirtyBox) {\n dirtyBox = [0, 0, this.ctx.canvas.width, this.ctx.canvas.height];\n } else {\n dirtyBox[0] = Math.floor(dirtyBox[0]);\n dirtyBox[1] = Math.floor(dirtyBox[1]);\n dirtyBox[2] = Math.ceil(dirtyBox[2]);\n dirtyBox[3] = Math.ceil(dirtyBox[3]);\n }\n const smask = this.current.activeSMask;\n const suspendedCtx = this.suspendedCtx;\n this.composeSMask(suspendedCtx, smask, this.ctx, dirtyBox);\n this.ctx.save();\n this.ctx.setTransform(1, 0, 0, 1, 0, 0);\n this.ctx.clearRect(0, 0, this.ctx.canvas.width, this.ctx.canvas.height);\n this.ctx.restore();\n }\n composeSMask(ctx, smask, layerCtx, layerBox) {\n const layerOffsetX = layerBox[0];\n const layerOffsetY = layerBox[1];\n const layerWidth = layerBox[2] - layerOffsetX;\n const layerHeight = layerBox[3] - layerOffsetY;\n if (layerWidth === 0 || layerHeight === 0) {\n return;\n }\n this.genericComposeSMask(smask.context, layerCtx, layerWidth, layerHeight, smask.subtype, smask.backdrop, smask.transferMap, layerOffsetX, layerOffsetY, smask.offsetX, smask.offsetY);\n ctx.save();\n ctx.globalAlpha = 1;\n ctx.globalCompositeOperation = \"source-over\";\n ctx.setTransform(1, 0, 0, 1, 0, 0);\n ctx.drawImage(layerCtx.canvas, 0, 0);\n ctx.restore();\n }\n genericComposeSMask(maskCtx, layerCtx, width, height, subtype, backdrop, transferMap, layerOffsetX, layerOffsetY, maskOffsetX, maskOffsetY) {\n let maskCanvas = maskCtx.canvas;\n let maskX = layerOffsetX - maskOffsetX;\n let maskY = layerOffsetY - maskOffsetY;\n if (backdrop) {\n if (maskX < 0 || maskY < 0 || maskX + width > maskCanvas.width || maskY + height > maskCanvas.height) {\n const canvas = this.cachedCanvases.getCanvas(\"maskExtension\", width, height);\n const ctx = canvas.context;\n ctx.drawImage(maskCanvas, -maskX, -maskY);\n if (backdrop.some(c => c !== 0)) {\n ctx.globalCompositeOperation = \"destination-atop\";\n ctx.fillStyle = Util.makeHexColor(...backdrop);\n ctx.fillRect(0, 0, width, height);\n ctx.globalCompositeOperation = \"source-over\";\n }\n maskCanvas = canvas.canvas;\n maskX = maskY = 0;\n } else if (backdrop.some(c => c !== 0)) {\n maskCtx.save();\n maskCtx.globalAlpha = 1;\n maskCtx.setTransform(1, 0, 0, 1, 0, 0);\n const clip = new Path2D();\n clip.rect(maskX, maskY, width, height);\n maskCtx.clip(clip);\n maskCtx.globalCompositeOperation = \"destination-atop\";\n maskCtx.fillStyle = Util.makeHexColor(...backdrop);\n maskCtx.fillRect(maskX, maskY, width, height);\n maskCtx.restore();\n }\n }\n layerCtx.save();\n layerCtx.globalAlpha = 1;\n layerCtx.setTransform(1, 0, 0, 1, 0, 0);\n if (subtype === \"Alpha\" && transferMap) {\n layerCtx.filter = this.filterFactory.addAlphaFilter(transferMap);\n } else if (subtype === \"Luminosity\") {\n layerCtx.filter = this.filterFactory.addLuminosityFilter(transferMap);\n }\n const clip = new Path2D();\n clip.rect(layerOffsetX, layerOffsetY, width, height);\n layerCtx.clip(clip);\n layerCtx.globalCompositeOperation = \"destination-in\";\n layerCtx.drawImage(maskCanvas, maskX, maskY, width, height, layerOffsetX, layerOffsetY, width, height);\n layerCtx.restore();\n }\n save() {\n if (this.inSMaskMode) {\n copyCtxState(this.ctx, this.suspendedCtx);\n this.suspendedCtx.save();\n } else {\n this.ctx.save();\n }\n const old = this.current;\n this.stateStack.push(old);\n this.current = old.clone();\n }\n restore() {\n if (this.stateStack.length === 0 && this.inSMaskMode) {\n this.endSMaskMode();\n }\n if (this.stateStack.length !== 0) {\n this.current = this.stateStack.pop();\n if (this.inSMaskMode) {\n this.suspendedCtx.restore();\n copyCtxState(this.suspendedCtx, this.ctx);\n } else {\n this.ctx.restore();\n }\n this.checkSMaskState();\n this.pendingClip = null;\n this._cachedScaleForStroking[0] = -1;\n this._cachedGetSinglePixelWidth = null;\n }\n }\n transform(a, b, c, d, e, f) {\n this.ctx.transform(a, b, c, d, e, f);\n this._cachedScaleForStroking[0] = -1;\n this._cachedGetSinglePixelWidth = null;\n }\n constructPath(ops, args, minMax) {\n const ctx = this.ctx;\n const current = this.current;\n let x = current.x,\n y = current.y;\n let startX, startY;\n const currentTransform = getCurrentTransform(ctx);\n const isScalingMatrix = currentTransform[0] === 0 && currentTransform[3] === 0 || currentTransform[1] === 0 && currentTransform[2] === 0;\n const minMaxForBezier = isScalingMatrix ? minMax.slice(0) : null;\n for (let i = 0, j = 0, ii = ops.length; i < ii; i++) {\n switch (ops[i] | 0) {\n case OPS.rectangle:\n x = args[j++];\n y = args[j++];\n const width = args[j++];\n const height = args[j++];\n const xw = x + width;\n const yh = y + height;\n ctx.moveTo(x, y);\n if (width === 0 || height === 0) {\n ctx.lineTo(xw, yh);\n } else {\n ctx.lineTo(xw, y);\n ctx.lineTo(xw, yh);\n ctx.lineTo(x, yh);\n }\n if (!isScalingMatrix) {\n current.updateRectMinMax(currentTransform, [x, y, xw, yh]);\n }\n ctx.closePath();\n break;\n case OPS.moveTo:\n x = args[j++];\n y = args[j++];\n ctx.moveTo(x, y);\n if (!isScalingMatrix) {\n current.updatePathMinMax(currentTransform, x, y);\n }\n break;\n case OPS.lineTo:\n x = args[j++];\n y = args[j++];\n ctx.lineTo(x, y);\n if (!isScalingMatrix) {\n current.updatePathMinMax(currentTransform, x, y);\n }\n break;\n case OPS.curveTo:\n startX = x;\n startY = y;\n x = args[j + 4];\n y = args[j + 5];\n ctx.bezierCurveTo(args[j], args[j + 1], args[j + 2], args[j + 3], x, y);\n current.updateCurvePathMinMax(currentTransform, startX, startY, args[j], args[j + 1], args[j + 2], args[j + 3], x, y, minMaxForBezier);\n j += 6;\n break;\n case OPS.curveTo2:\n startX = x;\n startY = y;\n ctx.bezierCurveTo(x, y, args[j], args[j + 1], args[j + 2], args[j + 3]);\n current.updateCurvePathMinMax(currentTransform, startX, startY, x, y, args[j], args[j + 1], args[j + 2], args[j + 3], minMaxForBezier);\n x = args[j + 2];\n y = args[j + 3];\n j += 4;\n break;\n case OPS.curveTo3:\n startX = x;\n startY = y;\n x = args[j + 2];\n y = args[j + 3];\n ctx.bezierCurveTo(args[j], args[j + 1], x, y, x, y);\n current.updateCurvePathMinMax(currentTransform, startX, startY, args[j], args[j + 1], x, y, x, y, minMaxForBezier);\n j += 4;\n break;\n case OPS.closePath:\n ctx.closePath();\n break;\n }\n }\n if (isScalingMatrix) {\n current.updateScalingPathMinMax(currentTransform, minMaxForBezier);\n }\n current.setCurrentPoint(x, y);\n }\n closePath() {\n this.ctx.closePath();\n }\n stroke(consumePath = true) {\n const ctx = this.ctx;\n const strokeColor = this.current.strokeColor;\n ctx.globalAlpha = this.current.strokeAlpha;\n if (this.contentVisible) {\n if (typeof strokeColor === \"object\" && strokeColor?.getPattern) {\n ctx.save();\n ctx.strokeStyle = strokeColor.getPattern(ctx, this, getCurrentTransformInverse(ctx), PathType.STROKE);\n this.rescaleAndStroke(false);\n ctx.restore();\n } else {\n this.rescaleAndStroke(true);\n }\n }\n if (consumePath) {\n this.consumePath(this.current.getClippedPathBoundingBox());\n }\n ctx.globalAlpha = this.current.fillAlpha;\n }\n closeStroke() {\n this.closePath();\n this.stroke();\n }\n fill(consumePath = true) {\n const ctx = this.ctx;\n const fillColor = this.current.fillColor;\n const isPatternFill = this.current.patternFill;\n let needRestore = false;\n if (isPatternFill) {\n ctx.save();\n ctx.fillStyle = fillColor.getPattern(ctx, this, getCurrentTransformInverse(ctx), PathType.FILL);\n needRestore = true;\n }\n const intersect = this.current.getClippedPathBoundingBox();\n if (this.contentVisible && intersect !== null) {\n if (this.pendingEOFill) {\n ctx.fill(\"evenodd\");\n this.pendingEOFill = false;\n } else {\n ctx.fill();\n }\n }\n if (needRestore) {\n ctx.restore();\n }\n if (consumePath) {\n this.consumePath(intersect);\n }\n }\n eoFill() {\n this.pendingEOFill = true;\n this.fill();\n }\n fillStroke() {\n this.fill(false);\n this.stroke(false);\n this.consumePath();\n }\n eoFillStroke() {\n this.pendingEOFill = true;\n this.fillStroke();\n }\n closeFillStroke() {\n this.closePath();\n this.fillStroke();\n }\n closeEOFillStroke() {\n this.pendingEOFill = true;\n this.closePath();\n this.fillStroke();\n }\n endPath() {\n this.consumePath();\n }\n clip() {\n this.pendingClip = NORMAL_CLIP;\n }\n eoClip() {\n this.pendingClip = EO_CLIP;\n }\n beginText() {\n this.current.textMatrix = IDENTITY_MATRIX;\n this.current.textMatrixScale = 1;\n this.current.x = this.current.lineX = 0;\n this.current.y = this.current.lineY = 0;\n }\n endText() {\n const paths = this.pendingTextPaths;\n const ctx = this.ctx;\n if (paths === undefined) {\n ctx.beginPath();\n return;\n }\n ctx.save();\n ctx.beginPath();\n for (const path of paths) {\n ctx.setTransform(...path.transform);\n ctx.translate(path.x, path.y);\n path.addToPath(ctx, path.fontSize);\n }\n ctx.restore();\n ctx.clip();\n ctx.beginPath();\n delete this.pendingTextPaths;\n }\n setCharSpacing(spacing) {\n this.current.charSpacing = spacing;\n }\n setWordSpacing(spacing) {\n this.current.wordSpacing = spacing;\n }\n setHScale(scale) {\n this.current.textHScale = scale / 100;\n }\n setLeading(leading) {\n this.current.leading = -leading;\n }\n setFont(fontRefName, size) {\n const fontObj = this.commonObjs.get(fontRefName);\n const current = this.current;\n if (!fontObj) {\n throw new Error(`Can't find font for ${fontRefName}`);\n }\n current.fontMatrix = fontObj.fontMatrix || FONT_IDENTITY_MATRIX;\n if (current.fontMatrix[0] === 0 || current.fontMatrix[3] === 0) {\n warn(\"Invalid font matrix for font \" + fontRefName);\n }\n if (size < 0) {\n size = -size;\n current.fontDirection = -1;\n } else {\n current.fontDirection = 1;\n }\n this.current.font = fontObj;\n this.current.fontSize = size;\n if (fontObj.isType3Font) {\n return;\n }\n const name = fontObj.loadedName || \"sans-serif\";\n const typeface = fontObj.systemFontInfo?.css || `\"${name}\", ${fontObj.fallbackName}`;\n let bold = \"normal\";\n if (fontObj.black) {\n bold = \"900\";\n } else if (fontObj.bold) {\n bold = \"bold\";\n }\n const italic = fontObj.italic ? \"italic\" : \"normal\";\n let browserFontSize = size;\n if (size < MIN_FONT_SIZE) {\n browserFontSize = MIN_FONT_SIZE;\n } else if (size > MAX_FONT_SIZE) {\n browserFontSize = MAX_FONT_SIZE;\n }\n this.current.fontSizeScale = size / browserFontSize;\n this.ctx.font = `${italic} ${bold} ${browserFontSize}px ${typeface}`;\n }\n setTextRenderingMode(mode) {\n this.current.textRenderingMode = mode;\n }\n setTextRise(rise) {\n this.current.textRise = rise;\n }\n moveText(x, y) {\n this.current.x = this.current.lineX += x;\n this.current.y = this.current.lineY += y;\n }\n setLeadingMoveText(x, y) {\n this.setLeading(-y);\n this.moveText(x, y);\n }\n setTextMatrix(a, b, c, d, e, f) {\n this.current.textMatrix = [a, b, c, d, e, f];\n this.current.textMatrixScale = Math.hypot(a, b);\n this.current.x = this.current.lineX = 0;\n this.current.y = this.current.lineY = 0;\n }\n nextLine() {\n this.moveText(0, this.current.leading);\n }\n paintChar(character, x, y, patternTransform) {\n const ctx = this.ctx;\n const current = this.current;\n const font = current.font;\n const textRenderingMode = current.textRenderingMode;\n const fontSize = current.fontSize / current.fontSizeScale;\n const fillStrokeMode = textRenderingMode & TextRenderingMode.FILL_STROKE_MASK;\n const isAddToPathSet = !!(textRenderingMode & TextRenderingMode.ADD_TO_PATH_FLAG);\n const patternFill = current.patternFill && !font.missingFile;\n let addToPath;\n if (font.disableFontFace || isAddToPathSet || patternFill) {\n addToPath = font.getPathGenerator(this.commonObjs, character);\n }\n if (font.disableFontFace || patternFill) {\n ctx.save();\n ctx.translate(x, y);\n ctx.beginPath();\n addToPath(ctx, fontSize);\n if (patternTransform) {\n ctx.setTransform(...patternTransform);\n }\n if (fillStrokeMode === TextRenderingMode.FILL || fillStrokeMode === TextRenderingMode.FILL_STROKE) {\n ctx.fill();\n }\n if (fillStrokeMode === TextRenderingMode.STROKE || fillStrokeMode === TextRenderingMode.FILL_STROKE) {\n ctx.stroke();\n }\n ctx.restore();\n } else {\n if (fillStrokeMode === TextRenderingMode.FILL || fillStrokeMode === TextRenderingMode.FILL_STROKE) {\n ctx.fillText(character, x, y);\n }\n if (fillStrokeMode === TextRenderingMode.STROKE || fillStrokeMode === TextRenderingMode.FILL_STROKE) {\n ctx.strokeText(character, x, y);\n }\n }\n if (isAddToPathSet) {\n const paths = this.pendingTextPaths ||= [];\n paths.push({\n transform: getCurrentTransform(ctx),\n x,\n y,\n fontSize,\n addToPath\n });\n }\n }\n get isFontSubpixelAAEnabled() {\n const {\n context: ctx\n } = this.cachedCanvases.getCanvas(\"isFontSubpixelAAEnabled\", 10, 10);\n ctx.scale(1.5, 1);\n ctx.fillText(\"I\", 0, 10);\n const data = ctx.getImageData(0, 0, 10, 10).data;\n let enabled = false;\n for (let i = 3; i < data.length; i += 4) {\n if (data[i] > 0 && data[i] < 255) {\n enabled = true;\n break;\n }\n }\n return shadow(this, \"isFontSubpixelAAEnabled\", enabled);\n }\n showText(glyphs) {\n const current = this.current;\n const font = current.font;\n if (font.isType3Font) {\n return this.showType3Text(glyphs);\n }\n const fontSize = current.fontSize;\n if (fontSize === 0) {\n return undefined;\n }\n const ctx = this.ctx;\n const fontSizeScale = current.fontSizeScale;\n const charSpacing = current.charSpacing;\n const wordSpacing = current.wordSpacing;\n const fontDirection = current.fontDirection;\n const textHScale = current.textHScale * fontDirection;\n const glyphsLength = glyphs.length;\n const vertical = font.vertical;\n const spacingDir = vertical ? 1 : -1;\n const defaultVMetrics = font.defaultVMetrics;\n const widthAdvanceScale = fontSize * current.fontMatrix[0];\n const simpleFillText = current.textRenderingMode === TextRenderingMode.FILL && !font.disableFontFace && !current.patternFill;\n ctx.save();\n ctx.transform(...current.textMatrix);\n ctx.translate(current.x, current.y + current.textRise);\n if (fontDirection > 0) {\n ctx.scale(textHScale, -1);\n } else {\n ctx.scale(textHScale, 1);\n }\n let patternTransform;\n if (current.patternFill) {\n ctx.save();\n const pattern = current.fillColor.getPattern(ctx, this, getCurrentTransformInverse(ctx), PathType.FILL);\n patternTransform = getCurrentTransform(ctx);\n ctx.restore();\n ctx.fillStyle = pattern;\n }\n let lineWidth = current.lineWidth;\n const scale = current.textMatrixScale;\n if (scale === 0 || lineWidth === 0) {\n const fillStrokeMode = current.textRenderingMode & TextRenderingMode.FILL_STROKE_MASK;\n if (fillStrokeMode === TextRenderingMode.STROKE || fillStrokeMode === TextRenderingMode.FILL_STROKE) {\n lineWidth = this.getSinglePixelWidth();\n }\n } else {\n lineWidth /= scale;\n }\n if (fontSizeScale !== 1.0) {\n ctx.scale(fontSizeScale, fontSizeScale);\n lineWidth /= fontSizeScale;\n }\n ctx.lineWidth = lineWidth;\n if (font.isInvalidPDFjsFont) {\n const chars = [];\n let width = 0;\n for (const glyph of glyphs) {\n chars.push(glyph.unicode);\n width += glyph.width;\n }\n ctx.fillText(chars.join(\"\"), 0, 0);\n current.x += width * widthAdvanceScale * textHScale;\n ctx.restore();\n this.compose();\n return undefined;\n }\n let x = 0,\n i;\n for (i = 0; i < glyphsLength; ++i) {\n const glyph = glyphs[i];\n if (typeof glyph === \"number\") {\n x += spacingDir * glyph * fontSize / 1000;\n continue;\n }\n let restoreNeeded = false;\n const spacing = (glyph.isSpace ? wordSpacing : 0) + charSpacing;\n const character = glyph.fontChar;\n const accent = glyph.accent;\n let scaledX, scaledY;\n let width = glyph.width;\n if (vertical) {\n const vmetric = glyph.vmetric || defaultVMetrics;\n const vx = -(glyph.vmetric ? vmetric[1] : width * 0.5) * widthAdvanceScale;\n const vy = vmetric[2] * widthAdvanceScale;\n width = vmetric ? -vmetric[0] : width;\n scaledX = vx / fontSizeScale;\n scaledY = (x + vy) / fontSizeScale;\n } else {\n scaledX = x / fontSizeScale;\n scaledY = 0;\n }\n if (font.remeasure && width > 0) {\n const measuredWidth = ctx.measureText(character).width * 1000 / fontSize * fontSizeScale;\n if (width < measuredWidth && this.isFontSubpixelAAEnabled) {\n const characterScaleX = width / measuredWidth;\n restoreNeeded = true;\n ctx.save();\n ctx.scale(characterScaleX, 1);\n scaledX /= characterScaleX;\n } else if (width !== measuredWidth) {\n scaledX += (width - measuredWidth) / 2000 * fontSize / fontSizeScale;\n }\n }\n if (this.contentVisible && (glyph.isInFont || font.missingFile)) {\n if (simpleFillText && !accent) {\n ctx.fillText(character, scaledX, scaledY);\n } else {\n this.paintChar(character, scaledX, scaledY, patternTransform);\n if (accent) {\n const scaledAccentX = scaledX + fontSize * accent.offset.x / fontSizeScale;\n const scaledAccentY = scaledY - fontSize * accent.offset.y / fontSizeScale;\n this.paintChar(accent.fontChar, scaledAccentX, scaledAccentY, patternTransform);\n }\n }\n }\n const charWidth = vertical ? width * widthAdvanceScale - spacing * fontDirection : width * widthAdvanceScale + spacing * fontDirection;\n x += charWidth;\n if (restoreNeeded) {\n ctx.restore();\n }\n }\n if (vertical) {\n current.y -= x;\n } else {\n current.x += x * textHScale;\n }\n ctx.restore();\n this.compose();\n return undefined;\n }\n showType3Text(glyphs) {\n const ctx = this.ctx;\n const current = this.current;\n const font = current.font;\n const fontSize = current.fontSize;\n const fontDirection = current.fontDirection;\n const spacingDir = font.vertical ? 1 : -1;\n const charSpacing = current.charSpacing;\n const wordSpacing = current.wordSpacing;\n const textHScale = current.textHScale * fontDirection;\n const fontMatrix = current.fontMatrix || FONT_IDENTITY_MATRIX;\n const glyphsLength = glyphs.length;\n const isTextInvisible = current.textRenderingMode === TextRenderingMode.INVISIBLE;\n let i, glyph, width, spacingLength;\n if (isTextInvisible || fontSize === 0) {\n return;\n }\n this._cachedScaleForStroking[0] = -1;\n this._cachedGetSinglePixelWidth = null;\n ctx.save();\n ctx.transform(...current.textMatrix);\n ctx.translate(current.x, current.y);\n ctx.scale(textHScale, fontDirection);\n for (i = 0; i < glyphsLength; ++i) {\n glyph = glyphs[i];\n if (typeof glyph === \"number\") {\n spacingLength = spacingDir * glyph * fontSize / 1000;\n this.ctx.translate(spacingLength, 0);\n current.x += spacingLength * textHScale;\n continue;\n }\n const spacing = (glyph.isSpace ? wordSpacing : 0) + charSpacing;\n const operatorList = font.charProcOperatorList[glyph.operatorListId];\n if (!operatorList) {\n warn(`Type3 character \"${glyph.operatorListId}\" is not available.`);\n continue;\n }\n if (this.contentVisible) {\n this.processingType3 = glyph;\n this.save();\n ctx.scale(fontSize, fontSize);\n ctx.transform(...fontMatrix);\n this.executeOperatorList(operatorList);\n this.restore();\n }\n const transformed = Util.applyTransform([glyph.width, 0], fontMatrix);\n width = transformed[0] * fontSize + spacing;\n ctx.translate(width, 0);\n current.x += width * textHScale;\n }\n ctx.restore();\n this.processingType3 = null;\n }\n setCharWidth(xWidth, yWidth) {}\n setCharWidthAndBounds(xWidth, yWidth, llx, lly, urx, ury) {\n this.ctx.rect(llx, lly, urx - llx, ury - lly);\n this.ctx.clip();\n this.endPath();\n }\n getColorN_Pattern(IR) {\n let pattern;\n if (IR[0] === \"TilingPattern\") {\n const color = IR[1];\n const baseTransform = this.baseTransform || getCurrentTransform(this.ctx);\n const canvasGraphicsFactory = {\n createCanvasGraphics: ctx => new CanvasGraphics(ctx, this.commonObjs, this.objs, this.canvasFactory, this.filterFactory, {\n optionalContentConfig: this.optionalContentConfig,\n markedContentStack: this.markedContentStack\n })\n };\n pattern = new TilingPattern(IR, color, this.ctx, canvasGraphicsFactory, baseTransform);\n } else {\n pattern = this._getPattern(IR[1], IR[2]);\n }\n return pattern;\n }\n setStrokeColorN() {\n this.current.strokeColor = this.getColorN_Pattern(arguments);\n }\n setFillColorN() {\n this.current.fillColor = this.getColorN_Pattern(arguments);\n this.current.patternFill = true;\n }\n setStrokeRGBColor(r, g, b) {\n const color = Util.makeHexColor(r, g, b);\n this.ctx.strokeStyle = color;\n this.current.strokeColor = color;\n }\n setFillRGBColor(r, g, b) {\n const color = Util.makeHexColor(r, g, b);\n this.ctx.fillStyle = color;\n this.current.fillColor = color;\n this.current.patternFill = false;\n }\n _getPattern(objId, matrix = null) {\n let pattern;\n if (this.cachedPatterns.has(objId)) {\n pattern = this.cachedPatterns.get(objId);\n } else {\n pattern = getShadingPattern(this.getObject(objId));\n this.cachedPatterns.set(objId, pattern);\n }\n if (matrix) {\n pattern.matrix = matrix;\n }\n return pattern;\n }\n shadingFill(objId) {\n if (!this.contentVisible) {\n return;\n }\n const ctx = this.ctx;\n this.save();\n const pattern = this._getPattern(objId);\n ctx.fillStyle = pattern.getPattern(ctx, this, getCurrentTransformInverse(ctx), PathType.SHADING);\n const inv = getCurrentTransformInverse(ctx);\n if (inv) {\n const {\n width,\n height\n } = ctx.canvas;\n const [x0, y0, x1, y1] = Util.getAxialAlignedBoundingBox([0, 0, width, height], inv);\n this.ctx.fillRect(x0, y0, x1 - x0, y1 - y0);\n } else {\n this.ctx.fillRect(-1e10, -1e10, 2e10, 2e10);\n }\n this.compose(this.current.getClippedPathBoundingBox());\n this.restore();\n }\n beginInlineImage() {\n unreachable(\"Should not call beginInlineImage\");\n }\n beginImageData() {\n unreachable(\"Should not call beginImageData\");\n }\n paintFormXObjectBegin(matrix, bbox) {\n if (!this.contentVisible) {\n return;\n }\n this.save();\n this.baseTransformStack.push(this.baseTransform);\n if (matrix) {\n this.transform(...matrix);\n }\n this.baseTransform = getCurrentTransform(this.ctx);\n if (bbox) {\n const width = bbox[2] - bbox[0];\n const height = bbox[3] - bbox[1];\n this.ctx.rect(bbox[0], bbox[1], width, height);\n this.current.updateRectMinMax(getCurrentTransform(this.ctx), bbox);\n this.clip();\n this.endPath();\n }\n }\n paintFormXObjectEnd() {\n if (!this.contentVisible) {\n return;\n }\n this.restore();\n this.baseTransform = this.baseTransformStack.pop();\n }\n beginGroup(group) {\n if (!this.contentVisible) {\n return;\n }\n this.save();\n if (this.inSMaskMode) {\n this.endSMaskMode();\n this.current.activeSMask = null;\n }\n const currentCtx = this.ctx;\n if (!group.isolated) {\n info(\"TODO: Support non-isolated groups.\");\n }\n if (group.knockout) {\n warn(\"Knockout groups not supported.\");\n }\n const currentTransform = getCurrentTransform(currentCtx);\n if (group.matrix) {\n currentCtx.transform(...group.matrix);\n }\n if (!group.bbox) {\n throw new Error(\"Bounding box is required.\");\n }\n let bounds = Util.getAxialAlignedBoundingBox(group.bbox, getCurrentTransform(currentCtx));\n const canvasBounds = [0, 0, currentCtx.canvas.width, currentCtx.canvas.height];\n bounds = Util.intersect(bounds, canvasBounds) || [0, 0, 0, 0];\n const offsetX = Math.floor(bounds[0]);\n const offsetY = Math.floor(bounds[1]);\n const drawnWidth = Math.max(Math.ceil(bounds[2]) - offsetX, 1);\n const drawnHeight = Math.max(Math.ceil(bounds[3]) - offsetY, 1);\n this.current.startNewPathAndClipBox([0, 0, drawnWidth, drawnHeight]);\n let cacheId = \"groupAt\" + this.groupLevel;\n if (group.smask) {\n cacheId += \"_smask_\" + this.smaskCounter++ % 2;\n }\n const scratchCanvas = this.cachedCanvases.getCanvas(cacheId, drawnWidth, drawnHeight);\n const groupCtx = scratchCanvas.context;\n groupCtx.translate(-offsetX, -offsetY);\n groupCtx.transform(...currentTransform);\n if (group.smask) {\n this.smaskStack.push({\n canvas: scratchCanvas.canvas,\n context: groupCtx,\n offsetX,\n offsetY,\n subtype: group.smask.subtype,\n backdrop: group.smask.backdrop,\n transferMap: group.smask.transferMap || null,\n startTransformInverse: null\n });\n } else {\n currentCtx.setTransform(1, 0, 0, 1, 0, 0);\n currentCtx.translate(offsetX, offsetY);\n currentCtx.save();\n }\n copyCtxState(currentCtx, groupCtx);\n this.ctx = groupCtx;\n this.setGState([[\"BM\", \"source-over\"], [\"ca\", 1], [\"CA\", 1]]);\n this.groupStack.push(currentCtx);\n this.groupLevel++;\n }\n endGroup(group) {\n if (!this.contentVisible) {\n return;\n }\n this.groupLevel--;\n const groupCtx = this.ctx;\n const ctx = this.groupStack.pop();\n this.ctx = ctx;\n this.ctx.imageSmoothingEnabled = false;\n if (group.smask) {\n this.tempSMask = this.smaskStack.pop();\n this.restore();\n } else {\n this.ctx.restore();\n const currentMtx = getCurrentTransform(this.ctx);\n this.restore();\n this.ctx.save();\n this.ctx.setTransform(...currentMtx);\n const dirtyBox = Util.getAxialAlignedBoundingBox([0, 0, groupCtx.canvas.width, groupCtx.canvas.height], currentMtx);\n this.ctx.drawImage(groupCtx.canvas, 0, 0);\n this.ctx.restore();\n this.compose(dirtyBox);\n }\n }\n beginAnnotation(id, rect, transform, matrix, hasOwnCanvas) {\n this.#restoreInitialState();\n resetCtxToDefault(this.ctx);\n this.ctx.save();\n this.save();\n if (this.baseTransform) {\n this.ctx.setTransform(...this.baseTransform);\n }\n if (rect) {\n const width = rect[2] - rect[0];\n const height = rect[3] - rect[1];\n if (hasOwnCanvas && this.annotationCanvasMap) {\n transform = transform.slice();\n transform[4] -= rect[0];\n transform[5] -= rect[1];\n rect = rect.slice();\n rect[0] = rect[1] = 0;\n rect[2] = width;\n rect[3] = height;\n const [scaleX, scaleY] = Util.singularValueDecompose2dScale(getCurrentTransform(this.ctx));\n const {\n viewportScale\n } = this;\n const canvasWidth = Math.ceil(width * this.outputScaleX * viewportScale);\n const canvasHeight = Math.ceil(height * this.outputScaleY * viewportScale);\n this.annotationCanvas = this.canvasFactory.create(canvasWidth, canvasHeight);\n const {\n canvas,\n context\n } = this.annotationCanvas;\n this.annotationCanvasMap.set(id, canvas);\n this.annotationCanvas.savedCtx = this.ctx;\n this.ctx = context;\n this.ctx.save();\n this.ctx.setTransform(scaleX, 0, 0, -scaleY, 0, height * scaleY);\n resetCtxToDefault(this.ctx);\n } else {\n resetCtxToDefault(this.ctx);\n this.ctx.rect(rect[0], rect[1], width, height);\n this.ctx.clip();\n this.endPath();\n }\n }\n this.current = new CanvasExtraState(this.ctx.canvas.width, this.ctx.canvas.height);\n this.transform(...transform);\n this.transform(...matrix);\n }\n endAnnotation() {\n if (this.annotationCanvas) {\n this.ctx.restore();\n this.#drawFilter();\n this.ctx = this.annotationCanvas.savedCtx;\n delete this.annotationCanvas.savedCtx;\n delete this.annotationCanvas;\n }\n }\n paintImageMaskXObject(img) {\n if (!this.contentVisible) {\n return;\n }\n const count = img.count;\n img = this.getObject(img.data, img);\n img.count = count;\n const ctx = this.ctx;\n const glyph = this.processingType3;\n if (glyph) {\n if (glyph.compiled === undefined) {\n glyph.compiled = compileType3Glyph(img);\n }\n if (glyph.compiled) {\n glyph.compiled(ctx);\n return;\n }\n }\n const mask = this._createMaskCanvas(img);\n const maskCanvas = mask.canvas;\n ctx.save();\n ctx.setTransform(1, 0, 0, 1, 0, 0);\n ctx.drawImage(maskCanvas, mask.offsetX, mask.offsetY);\n ctx.restore();\n this.compose();\n }\n paintImageMaskXObjectRepeat(img, scaleX, skewX = 0, skewY = 0, scaleY, positions) {\n if (!this.contentVisible) {\n return;\n }\n img = this.getObject(img.data, img);\n const ctx = this.ctx;\n ctx.save();\n const currentTransform = getCurrentTransform(ctx);\n ctx.transform(scaleX, skewX, skewY, scaleY, 0, 0);\n const mask = this._createMaskCanvas(img);\n ctx.setTransform(1, 0, 0, 1, mask.offsetX - currentTransform[4], mask.offsetY - currentTransform[5]);\n for (let i = 0, ii = positions.length; i < ii; i += 2) {\n const trans = Util.transform(currentTransform, [scaleX, skewX, skewY, scaleY, positions[i], positions[i + 1]]);\n const [x, y] = Util.applyTransform([0, 0], trans);\n ctx.drawImage(mask.canvas, x, y);\n }\n ctx.restore();\n this.compose();\n }\n paintImageMaskXObjectGroup(images) {\n if (!this.contentVisible) {\n return;\n }\n const ctx = this.ctx;\n const fillColor = this.current.fillColor;\n const isPatternFill = this.current.patternFill;\n for (const image of images) {\n const {\n data,\n width,\n height,\n transform\n } = image;\n const maskCanvas = this.cachedCanvases.getCanvas(\"maskCanvas\", width, height);\n const maskCtx = maskCanvas.context;\n maskCtx.save();\n const img = this.getObject(data, image);\n putBinaryImageMask(maskCtx, img);\n maskCtx.globalCompositeOperation = \"source-in\";\n maskCtx.fillStyle = isPatternFill ? fillColor.getPattern(maskCtx, this, getCurrentTransformInverse(ctx), PathType.FILL) : fillColor;\n maskCtx.fillRect(0, 0, width, height);\n maskCtx.restore();\n ctx.save();\n ctx.transform(...transform);\n ctx.scale(1, -1);\n drawImageAtIntegerCoords(ctx, maskCanvas.canvas, 0, 0, width, height, 0, -1, 1, 1);\n ctx.restore();\n }\n this.compose();\n }\n paintImageXObject(objId) {\n if (!this.contentVisible) {\n return;\n }\n const imgData = this.getObject(objId);\n if (!imgData) {\n warn(\"Dependent image isn't ready yet\");\n return;\n }\n this.paintInlineImageXObject(imgData);\n }\n paintImageXObjectRepeat(objId, scaleX, scaleY, positions) {\n if (!this.contentVisible) {\n return;\n }\n const imgData = this.getObject(objId);\n if (!imgData) {\n warn(\"Dependent image isn't ready yet\");\n return;\n }\n const width = imgData.width;\n const height = imgData.height;\n const map = [];\n for (let i = 0, ii = positions.length; i < ii; i += 2) {\n map.push({\n transform: [scaleX, 0, 0, scaleY, positions[i], positions[i + 1]],\n x: 0,\n y: 0,\n w: width,\n h: height\n });\n }\n this.paintInlineImageXObjectGroup(imgData, map);\n }\n applyTransferMapsToCanvas(ctx) {\n if (this.current.transferMaps !== \"none\") {\n ctx.filter = this.current.transferMaps;\n ctx.drawImage(ctx.canvas, 0, 0);\n ctx.filter = \"none\";\n }\n return ctx.canvas;\n }\n applyTransferMapsToBitmap(imgData) {\n if (this.current.transferMaps === \"none\") {\n return imgData.bitmap;\n }\n const {\n bitmap,\n width,\n height\n } = imgData;\n const tmpCanvas = this.cachedCanvases.getCanvas(\"inlineImage\", width, height);\n const tmpCtx = tmpCanvas.context;\n tmpCtx.filter = this.current.transferMaps;\n tmpCtx.drawImage(bitmap, 0, 0);\n tmpCtx.filter = \"none\";\n return tmpCanvas.canvas;\n }\n paintInlineImageXObject(imgData) {\n if (!this.contentVisible) {\n return;\n }\n const width = imgData.width;\n const height = imgData.height;\n const ctx = this.ctx;\n this.save();\n if (!isNodeJS) {\n const {\n filter\n } = ctx;\n if (filter !== \"none\" && filter !== \"\") {\n ctx.filter = \"none\";\n }\n }\n ctx.scale(1 / width, -1 / height);\n let imgToPaint;\n if (imgData.bitmap) {\n imgToPaint = this.applyTransferMapsToBitmap(imgData);\n } else if (typeof HTMLElement === \"function\" && imgData instanceof HTMLElement || !imgData.data) {\n imgToPaint = imgData;\n } else {\n const tmpCanvas = this.cachedCanvases.getCanvas(\"inlineImage\", width, height);\n const tmpCtx = tmpCanvas.context;\n putBinaryImageData(tmpCtx, imgData);\n imgToPaint = this.applyTransferMapsToCanvas(tmpCtx);\n }\n const scaled = this._scaleImage(imgToPaint, getCurrentTransformInverse(ctx));\n ctx.imageSmoothingEnabled = getImageSmoothingEnabled(getCurrentTransform(ctx), imgData.interpolate);\n drawImageAtIntegerCoords(ctx, scaled.img, 0, 0, scaled.paintWidth, scaled.paintHeight, 0, -height, width, height);\n this.compose();\n this.restore();\n }\n paintInlineImageXObjectGroup(imgData, map) {\n if (!this.contentVisible) {\n return;\n }\n const ctx = this.ctx;\n let imgToPaint;\n if (imgData.bitmap) {\n imgToPaint = imgData.bitmap;\n } else {\n const w = imgData.width;\n const h = imgData.height;\n const tmpCanvas = this.cachedCanvases.getCanvas(\"inlineImage\", w, h);\n const tmpCtx = tmpCanvas.context;\n putBinaryImageData(tmpCtx, imgData);\n imgToPaint = this.applyTransferMapsToCanvas(tmpCtx);\n }\n for (const entry of map) {\n ctx.save();\n ctx.transform(...entry.transform);\n ctx.scale(1, -1);\n drawImageAtIntegerCoords(ctx, imgToPaint, entry.x, entry.y, entry.w, entry.h, 0, -1, 1, 1);\n ctx.restore();\n }\n this.compose();\n }\n paintSolidColorImageMask() {\n if (!this.contentVisible) {\n return;\n }\n this.ctx.fillRect(0, 0, 1, 1);\n this.compose();\n }\n markPoint(tag) {}\n markPointProps(tag, properties) {}\n beginMarkedContent(tag) {\n this.markedContentStack.push({\n visible: true\n });\n }\n beginMarkedContentProps(tag, properties) {\n if (tag === \"OC\") {\n this.markedContentStack.push({\n visible: this.optionalContentConfig.isVisible(properties)\n });\n } else {\n this.markedContentStack.push({\n visible: true\n });\n }\n this.contentVisible = this.isContentVisible();\n }\n endMarkedContent() {\n this.markedContentStack.pop();\n this.contentVisible = this.isContentVisible();\n }\n beginCompat() {}\n endCompat() {}\n consumePath(clipBox) {\n const isEmpty = this.current.isEmptyClip();\n if (this.pendingClip) {\n this.current.updateClipFromPath();\n }\n if (!this.pendingClip) {\n this.compose(clipBox);\n }\n const ctx = this.ctx;\n if (this.pendingClip) {\n if (!isEmpty) {\n if (this.pendingClip === EO_CLIP) {\n ctx.clip(\"evenodd\");\n } else {\n ctx.clip();\n }\n }\n this.pendingClip = null;\n }\n this.current.startNewPathAndClipBox(this.current.clipBox);\n ctx.beginPath();\n }\n getSinglePixelWidth() {\n if (!this._cachedGetSinglePixelWidth) {\n const m = getCurrentTransform(this.ctx);\n if (m[1] === 0 && m[2] === 0) {\n this._cachedGetSinglePixelWidth = 1 / Math.min(Math.abs(m[0]), Math.abs(m[3]));\n } else {\n const absDet = Math.abs(m[0] * m[3] - m[2] * m[1]);\n const normX = Math.hypot(m[0], m[2]);\n const normY = Math.hypot(m[1], m[3]);\n this._cachedGetSinglePixelWidth = Math.max(normX, normY) / absDet;\n }\n }\n return this._cachedGetSinglePixelWidth;\n }\n getScaleForStroking() {\n if (this._cachedScaleForStroking[0] === -1) {\n const {\n lineWidth\n } = this.current;\n const {\n a,\n b,\n c,\n d\n } = this.ctx.getTransform();\n let scaleX, scaleY;\n if (b === 0 && c === 0) {\n const normX = Math.abs(a);\n const normY = Math.abs(d);\n if (normX === normY) {\n if (lineWidth === 0) {\n scaleX = scaleY = 1 / normX;\n } else {\n const scaledLineWidth = normX * lineWidth;\n scaleX = scaleY = scaledLineWidth < 1 ? 1 / scaledLineWidth : 1;\n }\n } else if (lineWidth === 0) {\n scaleX = 1 / normX;\n scaleY = 1 / normY;\n } else {\n const scaledXLineWidth = normX * lineWidth;\n const scaledYLineWidth = normY * lineWidth;\n scaleX = scaledXLineWidth < 1 ? 1 / scaledXLineWidth : 1;\n scaleY = scaledYLineWidth < 1 ? 1 / scaledYLineWidth : 1;\n }\n } else {\n const absDet = Math.abs(a * d - b * c);\n const normX = Math.hypot(a, b);\n const normY = Math.hypot(c, d);\n if (lineWidth === 0) {\n scaleX = normY / absDet;\n scaleY = normX / absDet;\n } else {\n const baseArea = lineWidth * absDet;\n scaleX = normY > baseArea ? normY / baseArea : 1;\n scaleY = normX > baseArea ? normX / baseArea : 1;\n }\n }\n this._cachedScaleForStroking[0] = scaleX;\n this._cachedScaleForStroking[1] = scaleY;\n }\n return this._cachedScaleForStroking;\n }\n rescaleAndStroke(saveRestore) {\n const {\n ctx\n } = this;\n const {\n lineWidth\n } = this.current;\n const [scaleX, scaleY] = this.getScaleForStroking();\n ctx.lineWidth = lineWidth || 1;\n if (scaleX === 1 && scaleY === 1) {\n ctx.stroke();\n return;\n }\n const dashes = ctx.getLineDash();\n if (saveRestore) {\n ctx.save();\n }\n ctx.scale(scaleX, scaleY);\n if (dashes.length > 0) {\n const scale = Math.max(scaleX, scaleY);\n ctx.setLineDash(dashes.map(x => x / scale));\n ctx.lineDashOffset /= scale;\n }\n ctx.stroke();\n if (saveRestore) {\n ctx.restore();\n }\n }\n isContentVisible() {\n for (let i = this.markedContentStack.length - 1; i >= 0; i--) {\n if (!this.markedContentStack[i].visible) {\n return false;\n }\n }\n return true;\n }\n}\nfor (const op in OPS) {\n if (CanvasGraphics.prototype[op] !== undefined) {\n CanvasGraphics.prototype[OPS[op]] = CanvasGraphics.prototype[op];\n }\n}\n\n;// CONCATENATED MODULE: ./src/display/worker_options.js\nclass GlobalWorkerOptions {\n static #port = null;\n static #src = \"\";\n static get workerPort() {\n return this.#port;\n }\n static set workerPort(val) {\n if (!(typeof Worker !== \"undefined\" && val instanceof Worker) && val !== null) {\n throw new Error(\"Invalid `workerPort` type.\");\n }\n this.#port = val;\n }\n static get workerSrc() {\n return this.#src;\n }\n static set workerSrc(val) {\n if (typeof val !== \"string\") {\n throw new Error(\"Invalid `workerSrc` type.\");\n }\n this.#src = val;\n }\n}\n\n;// CONCATENATED MODULE: ./src/shared/message_handler.js\n\nconst CallbackKind = {\n UNKNOWN: 0,\n DATA: 1,\n ERROR: 2\n};\nconst StreamKind = {\n UNKNOWN: 0,\n CANCEL: 1,\n CANCEL_COMPLETE: 2,\n CLOSE: 3,\n ENQUEUE: 4,\n ERROR: 5,\n PULL: 6,\n PULL_COMPLETE: 7,\n START_COMPLETE: 8\n};\nfunction wrapReason(reason) {\n if (!(reason instanceof Error || typeof reason === \"object\" && reason !== null)) {\n unreachable('wrapReason: Expected \"reason\" to be a (possibly cloned) Error.');\n }\n switch (reason.name) {\n case \"AbortException\":\n return new AbortException(reason.message);\n case \"MissingPDFException\":\n return new MissingPDFException(reason.message);\n case \"PasswordException\":\n return new PasswordException(reason.message, reason.code);\n case \"UnexpectedResponseException\":\n return new UnexpectedResponseException(reason.message, reason.status);\n case \"UnknownErrorException\":\n return new UnknownErrorException(reason.message, reason.details);\n default:\n return new UnknownErrorException(reason.message, reason.toString());\n }\n}\nclass MessageHandler {\n constructor(sourceName, targetName, comObj) {\n this.sourceName = sourceName;\n this.targetName = targetName;\n this.comObj = comObj;\n this.callbackId = 1;\n this.streamId = 1;\n this.streamSinks = Object.create(null);\n this.streamControllers = Object.create(null);\n this.callbackCapabilities = Object.create(null);\n this.actionHandler = Object.create(null);\n this._onComObjOnMessage = event => {\n const data = event.data;\n if (data.targetName !== this.sourceName) {\n return;\n }\n if (data.stream) {\n this.#processStreamMessage(data);\n return;\n }\n if (data.callback) {\n const callbackId = data.callbackId;\n const capability = this.callbackCapabilities[callbackId];\n if (!capability) {\n throw new Error(`Cannot resolve callback ${callbackId}`);\n }\n delete this.callbackCapabilities[callbackId];\n if (data.callback === CallbackKind.DATA) {\n capability.resolve(data.data);\n } else if (data.callback === CallbackKind.ERROR) {\n capability.reject(wrapReason(data.reason));\n } else {\n throw new Error(\"Unexpected callback case\");\n }\n return;\n }\n const action = this.actionHandler[data.action];\n if (!action) {\n throw new Error(`Unknown action from worker: ${data.action}`);\n }\n if (data.callbackId) {\n const cbSourceName = this.sourceName;\n const cbTargetName = data.sourceName;\n new Promise(function (resolve) {\n resolve(action(data.data));\n }).then(function (result) {\n comObj.postMessage({\n sourceName: cbSourceName,\n targetName: cbTargetName,\n callback: CallbackKind.DATA,\n callbackId: data.callbackId,\n data: result\n });\n }, function (reason) {\n comObj.postMessage({\n sourceName: cbSourceName,\n targetName: cbTargetName,\n callback: CallbackKind.ERROR,\n callbackId: data.callbackId,\n reason: wrapReason(reason)\n });\n });\n return;\n }\n if (data.streamId) {\n this.#createStreamSink(data);\n return;\n }\n action(data.data);\n };\n comObj.addEventListener(\"message\", this._onComObjOnMessage);\n }\n on(actionName, handler) {\n const ah = this.actionHandler;\n if (ah[actionName]) {\n throw new Error(`There is already an actionName called \"${actionName}\"`);\n }\n ah[actionName] = handler;\n }\n send(actionName, data, transfers) {\n this.comObj.postMessage({\n sourceName: this.sourceName,\n targetName: this.targetName,\n action: actionName,\n data\n }, transfers);\n }\n sendWithPromise(actionName, data, transfers) {\n const callbackId = this.callbackId++;\n const capability = Promise.withResolvers();\n this.callbackCapabilities[callbackId] = capability;\n try {\n this.comObj.postMessage({\n sourceName: this.sourceName,\n targetName: this.targetName,\n action: actionName,\n callbackId,\n data\n }, transfers);\n } catch (ex) {\n capability.reject(ex);\n }\n return capability.promise;\n }\n sendWithStream(actionName, data, queueingStrategy, transfers) {\n const streamId = this.streamId++,\n sourceName = this.sourceName,\n targetName = this.targetName,\n comObj = this.comObj;\n return new ReadableStream({\n start: controller => {\n const startCapability = Promise.withResolvers();\n this.streamControllers[streamId] = {\n controller,\n startCall: startCapability,\n pullCall: null,\n cancelCall: null,\n isClosed: false\n };\n comObj.postMessage({\n sourceName,\n targetName,\n action: actionName,\n streamId,\n data,\n desiredSize: controller.desiredSize\n }, transfers);\n return startCapability.promise;\n },\n pull: controller => {\n const pullCapability = Promise.withResolvers();\n this.streamControllers[streamId].pullCall = pullCapability;\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.PULL,\n streamId,\n desiredSize: controller.desiredSize\n });\n return pullCapability.promise;\n },\n cancel: reason => {\n assert(reason instanceof Error, \"cancel must have a valid reason\");\n const cancelCapability = Promise.withResolvers();\n this.streamControllers[streamId].cancelCall = cancelCapability;\n this.streamControllers[streamId].isClosed = true;\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.CANCEL,\n streamId,\n reason: wrapReason(reason)\n });\n return cancelCapability.promise;\n }\n }, queueingStrategy);\n }\n #createStreamSink(data) {\n const streamId = data.streamId,\n sourceName = this.sourceName,\n targetName = data.sourceName,\n comObj = this.comObj;\n const self = this,\n action = this.actionHandler[data.action];\n const streamSink = {\n enqueue(chunk, size = 1, transfers) {\n if (this.isCancelled) {\n return;\n }\n const lastDesiredSize = this.desiredSize;\n this.desiredSize -= size;\n if (lastDesiredSize > 0 && this.desiredSize <= 0) {\n this.sinkCapability = Promise.withResolvers();\n this.ready = this.sinkCapability.promise;\n }\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.ENQUEUE,\n streamId,\n chunk\n }, transfers);\n },\n close() {\n if (this.isCancelled) {\n return;\n }\n this.isCancelled = true;\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.CLOSE,\n streamId\n });\n delete self.streamSinks[streamId];\n },\n error(reason) {\n assert(reason instanceof Error, \"error must have a valid reason\");\n if (this.isCancelled) {\n return;\n }\n this.isCancelled = true;\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.ERROR,\n streamId,\n reason: wrapReason(reason)\n });\n },\n sinkCapability: Promise.withResolvers(),\n onPull: null,\n onCancel: null,\n isCancelled: false,\n desiredSize: data.desiredSize,\n ready: null\n };\n streamSink.sinkCapability.resolve();\n streamSink.ready = streamSink.sinkCapability.promise;\n this.streamSinks[streamId] = streamSink;\n new Promise(function (resolve) {\n resolve(action(data.data, streamSink));\n }).then(function () {\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.START_COMPLETE,\n streamId,\n success: true\n });\n }, function (reason) {\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.START_COMPLETE,\n streamId,\n reason: wrapReason(reason)\n });\n });\n }\n #processStreamMessage(data) {\n const streamId = data.streamId,\n sourceName = this.sourceName,\n targetName = data.sourceName,\n comObj = this.comObj;\n const streamController = this.streamControllers[streamId],\n streamSink = this.streamSinks[streamId];\n switch (data.stream) {\n case StreamKind.START_COMPLETE:\n if (data.success) {\n streamController.startCall.resolve();\n } else {\n streamController.startCall.reject(wrapReason(data.reason));\n }\n break;\n case StreamKind.PULL_COMPLETE:\n if (data.success) {\n streamController.pullCall.resolve();\n } else {\n streamController.pullCall.reject(wrapReason(data.reason));\n }\n break;\n case StreamKind.PULL:\n if (!streamSink) {\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.PULL_COMPLETE,\n streamId,\n success: true\n });\n break;\n }\n if (streamSink.desiredSize <= 0 && data.desiredSize > 0) {\n streamSink.sinkCapability.resolve();\n }\n streamSink.desiredSize = data.desiredSize;\n new Promise(function (resolve) {\n resolve(streamSink.onPull?.());\n }).then(function () {\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.PULL_COMPLETE,\n streamId,\n success: true\n });\n }, function (reason) {\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.PULL_COMPLETE,\n streamId,\n reason: wrapReason(reason)\n });\n });\n break;\n case StreamKind.ENQUEUE:\n assert(streamController, \"enqueue should have stream controller\");\n if (streamController.isClosed) {\n break;\n }\n streamController.controller.enqueue(data.chunk);\n break;\n case StreamKind.CLOSE:\n assert(streamController, \"close should have stream controller\");\n if (streamController.isClosed) {\n break;\n }\n streamController.isClosed = true;\n streamController.controller.close();\n this.#deleteStreamController(streamController, streamId);\n break;\n case StreamKind.ERROR:\n assert(streamController, \"error should have stream controller\");\n streamController.controller.error(wrapReason(data.reason));\n this.#deleteStreamController(streamController, streamId);\n break;\n case StreamKind.CANCEL_COMPLETE:\n if (data.success) {\n streamController.cancelCall.resolve();\n } else {\n streamController.cancelCall.reject(wrapReason(data.reason));\n }\n this.#deleteStreamController(streamController, streamId);\n break;\n case StreamKind.CANCEL:\n if (!streamSink) {\n break;\n }\n new Promise(function (resolve) {\n resolve(streamSink.onCancel?.(wrapReason(data.reason)));\n }).then(function () {\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.CANCEL_COMPLETE,\n streamId,\n success: true\n });\n }, function (reason) {\n comObj.postMessage({\n sourceName,\n targetName,\n stream: StreamKind.CANCEL_COMPLETE,\n streamId,\n reason: wrapReason(reason)\n });\n });\n streamSink.sinkCapability.reject(wrapReason(data.reason));\n streamSink.isCancelled = true;\n delete this.streamSinks[streamId];\n break;\n default:\n throw new Error(\"Unexpected stream case\");\n }\n }\n async #deleteStreamController(streamController, streamId) {\n await Promise.allSettled([streamController.startCall?.promise, streamController.pullCall?.promise, streamController.cancelCall?.promise]);\n delete this.streamControllers[streamId];\n }\n destroy() {\n this.comObj.removeEventListener(\"message\", this._onComObjOnMessage);\n }\n}\n\n;// CONCATENATED MODULE: ./src/display/metadata.js\n\nclass Metadata {\n #metadataMap;\n #data;\n constructor({\n parsedData,\n rawData\n }) {\n this.#metadataMap = parsedData;\n this.#data = rawData;\n }\n getRaw() {\n return this.#data;\n }\n get(name) {\n return this.#metadataMap.get(name) ?? null;\n }\n getAll() {\n return objectFromMap(this.#metadataMap);\n }\n has(name) {\n return this.#metadataMap.has(name);\n }\n}\n\n;// CONCATENATED MODULE: ./src/display/optional_content_config.js\n\n\nconst INTERNAL = Symbol(\"INTERNAL\");\nclass OptionalContentGroup {\n #isDisplay = false;\n #isPrint = false;\n #userSet = false;\n #visible = true;\n constructor(renderingIntent, {\n name,\n intent,\n usage\n }) {\n this.#isDisplay = !!(renderingIntent & RenderingIntentFlag.DISPLAY);\n this.#isPrint = !!(renderingIntent & RenderingIntentFlag.PRINT);\n this.name = name;\n this.intent = intent;\n this.usage = usage;\n }\n get visible() {\n if (this.#userSet) {\n return this.#visible;\n }\n if (!this.#visible) {\n return false;\n }\n const {\n print,\n view\n } = this.usage;\n if (this.#isDisplay) {\n return view?.viewState !== \"OFF\";\n } else if (this.#isPrint) {\n return print?.printState !== \"OFF\";\n }\n return true;\n }\n _setVisible(internal, visible, userSet = false) {\n if (internal !== INTERNAL) {\n unreachable(\"Internal method `_setVisible` called.\");\n }\n this.#userSet = userSet;\n this.#visible = visible;\n }\n}\nclass OptionalContentConfig {\n #cachedGetHash = null;\n #groups = new Map();\n #initialHash = null;\n #order = null;\n constructor(data, renderingIntent = RenderingIntentFlag.DISPLAY) {\n this.renderingIntent = renderingIntent;\n this.name = null;\n this.creator = null;\n if (data === null) {\n return;\n }\n this.name = data.name;\n this.creator = data.creator;\n this.#order = data.order;\n for (const group of data.groups) {\n this.#groups.set(group.id, new OptionalContentGroup(renderingIntent, group));\n }\n if (data.baseState === \"OFF\") {\n for (const group of this.#groups.values()) {\n group._setVisible(INTERNAL, false);\n }\n }\n for (const on of data.on) {\n this.#groups.get(on)._setVisible(INTERNAL, true);\n }\n for (const off of data.off) {\n this.#groups.get(off)._setVisible(INTERNAL, false);\n }\n this.#initialHash = this.getHash();\n }\n #evaluateVisibilityExpression(array) {\n const length = array.length;\n if (length < 2) {\n return true;\n }\n const operator = array[0];\n for (let i = 1; i < length; i++) {\n const element = array[i];\n let state;\n if (Array.isArray(element)) {\n state = this.#evaluateVisibilityExpression(element);\n } else if (this.#groups.has(element)) {\n state = this.#groups.get(element).visible;\n } else {\n warn(`Optional content group not found: ${element}`);\n return true;\n }\n switch (operator) {\n case \"And\":\n if (!state) {\n return false;\n }\n break;\n case \"Or\":\n if (state) {\n return true;\n }\n break;\n case \"Not\":\n return !state;\n default:\n return true;\n }\n }\n return operator === \"And\";\n }\n isVisible(group) {\n if (this.#groups.size === 0) {\n return true;\n }\n if (!group) {\n info(\"Optional content group not defined.\");\n return true;\n }\n if (group.type === \"OCG\") {\n if (!this.#groups.has(group.id)) {\n warn(`Optional content group not found: ${group.id}`);\n return true;\n }\n return this.#groups.get(group.id).visible;\n } else if (group.type === \"OCMD\") {\n if (group.expression) {\n return this.#evaluateVisibilityExpression(group.expression);\n }\n if (!group.policy || group.policy === \"AnyOn\") {\n for (const id of group.ids) {\n if (!this.#groups.has(id)) {\n warn(`Optional content group not found: ${id}`);\n return true;\n }\n if (this.#groups.get(id).visible) {\n return true;\n }\n }\n return false;\n } else if (group.policy === \"AllOn\") {\n for (const id of group.ids) {\n if (!this.#groups.has(id)) {\n warn(`Optional content group not found: ${id}`);\n return true;\n }\n if (!this.#groups.get(id).visible) {\n return false;\n }\n }\n return true;\n } else if (group.policy === \"AnyOff\") {\n for (const id of group.ids) {\n if (!this.#groups.has(id)) {\n warn(`Optional content group not found: ${id}`);\n return true;\n }\n if (!this.#groups.get(id).visible) {\n return true;\n }\n }\n return false;\n } else if (group.policy === \"AllOff\") {\n for (const id of group.ids) {\n if (!this.#groups.has(id)) {\n warn(`Optional content group not found: ${id}`);\n return true;\n }\n if (this.#groups.get(id).visible) {\n return false;\n }\n }\n return true;\n }\n warn(`Unknown optional content policy ${group.policy}.`);\n return true;\n }\n warn(`Unknown group type ${group.type}.`);\n return true;\n }\n setVisibility(id, visible = true) {\n const group = this.#groups.get(id);\n if (!group) {\n warn(`Optional content group not found: ${id}`);\n return;\n }\n group._setVisible(INTERNAL, !!visible, true);\n this.#cachedGetHash = null;\n }\n setOCGState({\n state,\n preserveRB\n }) {\n let operator;\n for (const elem of state) {\n switch (elem) {\n case \"ON\":\n case \"OFF\":\n case \"Toggle\":\n operator = elem;\n continue;\n }\n const group = this.#groups.get(elem);\n if (!group) {\n continue;\n }\n switch (operator) {\n case \"ON\":\n group._setVisible(INTERNAL, true);\n break;\n case \"OFF\":\n group._setVisible(INTERNAL, false);\n break;\n case \"Toggle\":\n group._setVisible(INTERNAL, !group.visible);\n break;\n }\n }\n this.#cachedGetHash = null;\n }\n get hasInitialVisibility() {\n return this.#initialHash === null || this.getHash() === this.#initialHash;\n }\n getOrder() {\n if (!this.#groups.size) {\n return null;\n }\n if (this.#order) {\n return this.#order.slice();\n }\n return [...this.#groups.keys()];\n }\n getGroups() {\n return this.#groups.size > 0 ? objectFromMap(this.#groups) : null;\n }\n getGroup(id) {\n return this.#groups.get(id) || null;\n }\n getHash() {\n if (this.#cachedGetHash !== null) {\n return this.#cachedGetHash;\n }\n const hash = new MurmurHash3_64();\n for (const [id, group] of this.#groups) {\n hash.update(`${id}:${group.visible}`);\n }\n return this.#cachedGetHash = hash.hexdigest();\n }\n}\n\n;// CONCATENATED MODULE: ./src/display/transport_stream.js\n\n\nclass PDFDataTransportStream {\n constructor(pdfDataRangeTransport, {\n disableRange = false,\n disableStream = false\n }) {\n assert(pdfDataRangeTransport, 'PDFDataTransportStream - missing required \"pdfDataRangeTransport\" argument.');\n const {\n length,\n initialData,\n progressiveDone,\n contentDispositionFilename\n } = pdfDataRangeTransport;\n this._queuedChunks = [];\n this._progressiveDone = progressiveDone;\n this._contentDispositionFilename = contentDispositionFilename;\n if (initialData?.length > 0) {\n const buffer = initialData instanceof Uint8Array && initialData.byteLength === initialData.buffer.byteLength ? initialData.buffer : new Uint8Array(initialData).buffer;\n this._queuedChunks.push(buffer);\n }\n this._pdfDataRangeTransport = pdfDataRangeTransport;\n this._isStreamingSupported = !disableStream;\n this._isRangeSupported = !disableRange;\n this._contentLength = length;\n this._fullRequestReader = null;\n this._rangeReaders = [];\n pdfDataRangeTransport.addRangeListener((begin, chunk) => {\n this._onReceiveData({\n begin,\n chunk\n });\n });\n pdfDataRangeTransport.addProgressListener((loaded, total) => {\n this._onProgress({\n loaded,\n total\n });\n });\n pdfDataRangeTransport.addProgressiveReadListener(chunk => {\n this._onReceiveData({\n chunk\n });\n });\n pdfDataRangeTransport.addProgressiveDoneListener(() => {\n this._onProgressiveDone();\n });\n pdfDataRangeTransport.transportReady();\n }\n _onReceiveData({\n begin,\n chunk\n }) {\n const buffer = chunk instanceof Uint8Array && chunk.byteLength === chunk.buffer.byteLength ? chunk.buffer : new Uint8Array(chunk).buffer;\n if (begin === undefined) {\n if (this._fullRequestReader) {\n this._fullRequestReader._enqueue(buffer);\n } else {\n this._queuedChunks.push(buffer);\n }\n } else {\n const found = this._rangeReaders.some(function (rangeReader) {\n if (rangeReader._begin !== begin) {\n return false;\n }\n rangeReader._enqueue(buffer);\n return true;\n });\n assert(found, \"_onReceiveData - no `PDFDataTransportStreamRangeReader` instance found.\");\n }\n }\n get _progressiveDataLength() {\n return this._fullRequestReader?._loaded ?? 0;\n }\n _onProgress(evt) {\n if (evt.total === undefined) {\n this._rangeReaders[0]?.onProgress?.({\n loaded: evt.loaded\n });\n } else {\n this._fullRequestReader?.onProgress?.({\n loaded: evt.loaded,\n total: evt.total\n });\n }\n }\n _onProgressiveDone() {\n this._fullRequestReader?.progressiveDone();\n this._progressiveDone = true;\n }\n _removeRangeReader(reader) {\n const i = this._rangeReaders.indexOf(reader);\n if (i >= 0) {\n this._rangeReaders.splice(i, 1);\n }\n }\n getFullReader() {\n assert(!this._fullRequestReader, \"PDFDataTransportStream.getFullReader can only be called once.\");\n const queuedChunks = this._queuedChunks;\n this._queuedChunks = null;\n return new PDFDataTransportStreamReader(this, queuedChunks, this._progressiveDone, this._contentDispositionFilename);\n }\n getRangeReader(begin, end) {\n if (end <= this._progressiveDataLength) {\n return null;\n }\n const reader = new PDFDataTransportStreamRangeReader(this, begin, end);\n this._pdfDataRangeTransport.requestDataRange(begin, end);\n this._rangeReaders.push(reader);\n return reader;\n }\n cancelAllRequests(reason) {\n this._fullRequestReader?.cancel(reason);\n for (const reader of this._rangeReaders.slice(0)) {\n reader.cancel(reason);\n }\n this._pdfDataRangeTransport.abort();\n }\n}\nclass PDFDataTransportStreamReader {\n constructor(stream, queuedChunks, progressiveDone = false, contentDispositionFilename = null) {\n this._stream = stream;\n this._done = progressiveDone || false;\n this._filename = isPdfFile(contentDispositionFilename) ? contentDispositionFilename : null;\n this._queuedChunks = queuedChunks || [];\n this._loaded = 0;\n for (const chunk of this._queuedChunks) {\n this._loaded += chunk.byteLength;\n }\n this._requests = [];\n this._headersReady = Promise.resolve();\n stream._fullRequestReader = this;\n this.onProgress = null;\n }\n _enqueue(chunk) {\n if (this._done) {\n return;\n }\n if (this._requests.length > 0) {\n const requestCapability = this._requests.shift();\n requestCapability.resolve({\n value: chunk,\n done: false\n });\n } else {\n this._queuedChunks.push(chunk);\n }\n this._loaded += chunk.byteLength;\n }\n get headersReady() {\n return this._headersReady;\n }\n get filename() {\n return this._filename;\n }\n get isRangeSupported() {\n return this._stream._isRangeSupported;\n }\n get isStreamingSupported() {\n return this._stream._isStreamingSupported;\n }\n get contentLength() {\n return this._stream._contentLength;\n }\n async read() {\n if (this._queuedChunks.length > 0) {\n const chunk = this._queuedChunks.shift();\n return {\n value: chunk,\n done: false\n };\n }\n if (this._done) {\n return {\n value: undefined,\n done: true\n };\n }\n const requestCapability = Promise.withResolvers();\n this._requests.push(requestCapability);\n return requestCapability.promise;\n }\n cancel(reason) {\n this._done = true;\n for (const requestCapability of this._requests) {\n requestCapability.resolve({\n value: undefined,\n done: true\n });\n }\n this._requests.length = 0;\n }\n progressiveDone() {\n if (this._done) {\n return;\n }\n this._done = true;\n }\n}\nclass PDFDataTransportStreamRangeReader {\n constructor(stream, begin, end) {\n this._stream = stream;\n this._begin = begin;\n this._end = end;\n this._queuedChunk = null;\n this._requests = [];\n this._done = false;\n this.onProgress = null;\n }\n _enqueue(chunk) {\n if (this._done) {\n return;\n }\n if (this._requests.length === 0) {\n this._queuedChunk = chunk;\n } else {\n const requestsCapability = this._requests.shift();\n requestsCapability.resolve({\n value: chunk,\n done: false\n });\n for (const requestCapability of this._requests) {\n requestCapability.resolve({\n value: undefined,\n done: true\n });\n }\n this._requests.length = 0;\n }\n this._done = true;\n this._stream._removeRangeReader(this);\n }\n get isStreamingSupported() {\n return false;\n }\n async read() {\n if (this._queuedChunk) {\n const chunk = this._queuedChunk;\n this._queuedChunk = null;\n return {\n value: chunk,\n done: false\n };\n }\n if (this._done) {\n return {\n value: undefined,\n done: true\n };\n }\n const requestCapability = Promise.withResolvers();\n this._requests.push(requestCapability);\n return requestCapability.promise;\n }\n cancel(reason) {\n this._done = true;\n for (const requestCapability of this._requests) {\n requestCapability.resolve({\n value: undefined,\n done: true\n });\n }\n this._requests.length = 0;\n this._stream._removeRangeReader(this);\n }\n}\n\n;// CONCATENATED MODULE: ./src/display/content_disposition.js\n\nfunction getFilenameFromContentDispositionHeader(contentDisposition) {\n let needsEncodingFixup = true;\n let tmp = toParamRegExp(\"filename\\\\*\", \"i\").exec(contentDisposition);\n if (tmp) {\n tmp = tmp[1];\n let filename = rfc2616unquote(tmp);\n filename = unescape(filename);\n filename = rfc5987decode(filename);\n filename = rfc2047decode(filename);\n return fixupEncoding(filename);\n }\n tmp = rfc2231getparam(contentDisposition);\n if (tmp) {\n const filename = rfc2047decode(tmp);\n return fixupEncoding(filename);\n }\n tmp = toParamRegExp(\"filename\", \"i\").exec(contentDisposition);\n if (tmp) {\n tmp = tmp[1];\n let filename = rfc2616unquote(tmp);\n filename = rfc2047decode(filename);\n return fixupEncoding(filename);\n }\n function toParamRegExp(attributePattern, flags) {\n return new RegExp(\"(?:^|;)\\\\s*\" + attributePattern + \"\\\\s*=\\\\s*\" + \"(\" + '[^\";\\\\s][^;\\\\s]*' + \"|\" + '\"(?:[^\"\\\\\\\\]|\\\\\\\\\"?)+\"?' + \")\", flags);\n }\n function textdecode(encoding, value) {\n if (encoding) {\n if (!/^[\\x00-\\xFF]+$/.test(value)) {\n return value;\n }\n try {\n const decoder = new TextDecoder(encoding, {\n fatal: true\n });\n const buffer = stringToBytes(value);\n value = decoder.decode(buffer);\n needsEncodingFixup = false;\n } catch {}\n }\n return value;\n }\n function fixupEncoding(value) {\n if (needsEncodingFixup && /[\\x80-\\xff]/.test(value)) {\n value = textdecode(\"utf-8\", value);\n if (needsEncodingFixup) {\n value = textdecode(\"iso-8859-1\", value);\n }\n }\n return value;\n }\n function rfc2231getparam(contentDispositionStr) {\n const matches = [];\n let match;\n const iter = toParamRegExp(\"filename\\\\*((?!0\\\\d)\\\\d+)(\\\\*?)\", \"ig\");\n while ((match = iter.exec(contentDispositionStr)) !== null) {\n let [, n, quot, part] = match;\n n = parseInt(n, 10);\n if (n in matches) {\n if (n === 0) {\n break;\n }\n continue;\n }\n matches[n] = [quot, part];\n }\n const parts = [];\n for (let n = 0; n < matches.length; ++n) {\n if (!(n in matches)) {\n break;\n }\n let [quot, part] = matches[n];\n part = rfc2616unquote(part);\n if (quot) {\n part = unescape(part);\n if (n === 0) {\n part = rfc5987decode(part);\n }\n }\n parts.push(part);\n }\n return parts.join(\"\");\n }\n function rfc2616unquote(value) {\n if (value.startsWith('\"')) {\n const parts = value.slice(1).split('\\\\\"');\n for (let i = 0; i < parts.length; ++i) {\n const quotindex = parts[i].indexOf('\"');\n if (quotindex !== -1) {\n parts[i] = parts[i].slice(0, quotindex);\n parts.length = i + 1;\n }\n parts[i] = parts[i].replaceAll(/\\\\(.)/g, \"$1\");\n }\n value = parts.join('\"');\n }\n return value;\n }\n function rfc5987decode(extvalue) {\n const encodingend = extvalue.indexOf(\"'\");\n if (encodingend === -1) {\n return extvalue;\n }\n const encoding = extvalue.slice(0, encodingend);\n const langvalue = extvalue.slice(encodingend + 1);\n const value = langvalue.replace(/^[^']*'/, \"\");\n return textdecode(encoding, value);\n }\n function rfc2047decode(value) {\n if (!value.startsWith(\"=?\") || /[\\x00-\\x19\\x80-\\xff]/.test(value)) {\n return value;\n }\n return value.replaceAll(/=\\?([\\w-]*)\\?([QqBb])\\?((?:[^?]|\\?(?!=))*)\\?=/g, function (matches, charset, encoding, text) {\n if (encoding === \"q\" || encoding === \"Q\") {\n text = text.replaceAll(\"_\", \" \");\n text = text.replaceAll(/=([0-9a-fA-F]{2})/g, function (match, hex) {\n return String.fromCharCode(parseInt(hex, 16));\n });\n return textdecode(charset, text);\n }\n try {\n text = atob(text);\n } catch {}\n return textdecode(charset, text);\n });\n }\n return \"\";\n}\n\n;// CONCATENATED MODULE: ./src/display/network_utils.js\n\n\n\nfunction validateRangeRequestCapabilities({\n getResponseHeader,\n isHttp,\n rangeChunkSize,\n disableRange\n}) {\n const returnValues = {\n allowRangeRequests: false,\n suggestedLength: undefined\n };\n const length = parseInt(getResponseHeader(\"Content-Length\"), 10);\n if (!Number.isInteger(length)) {\n return returnValues;\n }\n returnValues.suggestedLength = length;\n if (length <= 2 * rangeChunkSize) {\n return returnValues;\n }\n if (disableRange || !isHttp) {\n return returnValues;\n }\n if (getResponseHeader(\"Accept-Ranges\") !== \"bytes\") {\n return returnValues;\n }\n const contentEncoding = getResponseHeader(\"Content-Encoding\") || \"identity\";\n if (contentEncoding !== \"identity\") {\n return returnValues;\n }\n returnValues.allowRangeRequests = true;\n return returnValues;\n}\nfunction extractFilenameFromHeader(getResponseHeader) {\n const contentDisposition = getResponseHeader(\"Content-Disposition\");\n if (contentDisposition) {\n let filename = getFilenameFromContentDispositionHeader(contentDisposition);\n if (filename.includes(\"%\")) {\n try {\n filename = decodeURIComponent(filename);\n } catch {}\n }\n if (isPdfFile(filename)) {\n return filename;\n }\n }\n return null;\n}\nfunction createResponseStatusError(status, url) {\n if (status === 404 || status === 0 && url.startsWith(\"file:\")) {\n return new MissingPDFException('Missing PDF \"' + url + '\".');\n }\n return new UnexpectedResponseException(`Unexpected server response (${status}) while retrieving PDF \"${url}\".`, status);\n}\nfunction validateResponseStatus(status) {\n return status === 200 || status === 206;\n}\n\n;// CONCATENATED MODULE: ./src/display/fetch_stream.js\n\n\nfunction createFetchOptions(headers, withCredentials, abortController) {\n return {\n method: \"GET\",\n headers,\n signal: abortController.signal,\n mode: \"cors\",\n credentials: withCredentials ? \"include\" : \"same-origin\",\n redirect: \"follow\"\n };\n}\nfunction createHeaders(httpHeaders) {\n const headers = new Headers();\n for (const property in httpHeaders) {\n const value = httpHeaders[property];\n if (value === undefined) {\n continue;\n }\n headers.append(property, value);\n }\n return headers;\n}\nfunction getArrayBuffer(val) {\n if (val instanceof Uint8Array) {\n return val.buffer;\n }\n if (val instanceof ArrayBuffer) {\n return val;\n }\n warn(`getArrayBuffer - unexpected data format: ${val}`);\n return new Uint8Array(val).buffer;\n}\nclass PDFFetchStream {\n constructor(source) {\n this.source = source;\n this.isHttp = /^https?:/i.test(source.url);\n this.httpHeaders = this.isHttp && source.httpHeaders || {};\n this._fullRequestReader = null;\n this._rangeRequestReaders = [];\n }\n get _progressiveDataLength() {\n return this._fullRequestReader?._loaded ?? 0;\n }\n getFullReader() {\n assert(!this._fullRequestReader, \"PDFFetchStream.getFullReader can only be called once.\");\n this._fullRequestReader = new PDFFetchStreamReader(this);\n return this._fullRequestReader;\n }\n getRangeReader(begin, end) {\n if (end <= this._progressiveDataLength) {\n return null;\n }\n const reader = new PDFFetchStreamRangeReader(this, begin, end);\n this._rangeRequestReaders.push(reader);\n return reader;\n }\n cancelAllRequests(reason) {\n this._fullRequestReader?.cancel(reason);\n for (const reader of this._rangeRequestReaders.slice(0)) {\n reader.cancel(reason);\n }\n }\n}\nclass PDFFetchStreamReader {\n constructor(stream) {\n this._stream = stream;\n this._reader = null;\n this._loaded = 0;\n this._filename = null;\n const source = stream.source;\n this._withCredentials = source.withCredentials || false;\n this._contentLength = source.length;\n this._headersCapability = Promise.withResolvers();\n this._disableRange = source.disableRange || false;\n this._rangeChunkSize = source.rangeChunkSize;\n if (!this._rangeChunkSize && !this._disableRange) {\n this._disableRange = true;\n }\n this._abortController = new AbortController();\n this._isStreamingSupported = !source.disableStream;\n this._isRangeSupported = !source.disableRange;\n this._headers = createHeaders(this._stream.httpHeaders);\n const url = source.url;\n fetch(url, createFetchOptions(this._headers, this._withCredentials, this._abortController)).then(response => {\n if (!validateResponseStatus(response.status)) {\n throw createResponseStatusError(response.status, url);\n }\n this._reader = response.body.getReader();\n this._headersCapability.resolve();\n const getResponseHeader = name => response.headers.get(name);\n const {\n allowRangeRequests,\n suggestedLength\n } = validateRangeRequestCapabilities({\n getResponseHeader,\n isHttp: this._stream.isHttp,\n rangeChunkSize: this._rangeChunkSize,\n disableRange: this._disableRange\n });\n this._isRangeSupported = allowRangeRequests;\n this._contentLength = suggestedLength || this._contentLength;\n this._filename = extractFilenameFromHeader(getResponseHeader);\n if (!this._isStreamingSupported && this._isRangeSupported) {\n this.cancel(new AbortException(\"Streaming is disabled.\"));\n }\n }).catch(this._headersCapability.reject);\n this.onProgress = null;\n }\n get headersReady() {\n return this._headersCapability.promise;\n }\n get filename() {\n return this._filename;\n }\n get contentLength() {\n return this._contentLength;\n }\n get isRangeSupported() {\n return this._isRangeSupported;\n }\n get isStreamingSupported() {\n return this._isStreamingSupported;\n }\n async read() {\n await this._headersCapability.promise;\n const {\n value,\n done\n } = await this._reader.read();\n if (done) {\n return {\n value,\n done\n };\n }\n this._loaded += value.byteLength;\n this.onProgress?.({\n loaded: this._loaded,\n total: this._contentLength\n });\n return {\n value: getArrayBuffer(value),\n done: false\n };\n }\n cancel(reason) {\n this._reader?.cancel(reason);\n this._abortController.abort();\n }\n}\nclass PDFFetchStreamRangeReader {\n constructor(stream, begin, end) {\n this._stream = stream;\n this._reader = null;\n this._loaded = 0;\n const source = stream.source;\n this._withCredentials = source.withCredentials || false;\n this._readCapability = Promise.withResolvers();\n this._isStreamingSupported = !source.disableStream;\n this._abortController = new AbortController();\n this._headers = createHeaders(this._stream.httpHeaders);\n this._headers.append(\"Range\", `bytes=${begin}-${end - 1}`);\n const url = source.url;\n fetch(url, createFetchOptions(this._headers, this._withCredentials, this._abortController)).then(response => {\n if (!validateResponseStatus(response.status)) {\n throw createResponseStatusError(response.status, url);\n }\n this._readCapability.resolve();\n this._reader = response.body.getReader();\n }).catch(this._readCapability.reject);\n this.onProgress = null;\n }\n get isStreamingSupported() {\n return this._isStreamingSupported;\n }\n async read() {\n await this._readCapability.promise;\n const {\n value,\n done\n } = await this._reader.read();\n if (done) {\n return {\n value,\n done\n };\n }\n this._loaded += value.byteLength;\n this.onProgress?.({\n loaded: this._loaded\n });\n return {\n value: getArrayBuffer(value),\n done: false\n };\n }\n cancel(reason) {\n this._reader?.cancel(reason);\n this._abortController.abort();\n }\n}\n\n;// CONCATENATED MODULE: ./src/display/network.js\n\n\nconst OK_RESPONSE = 200;\nconst PARTIAL_CONTENT_RESPONSE = 206;\nfunction network_getArrayBuffer(xhr) {\n const data = xhr.response;\n if (typeof data !== \"string\") {\n return data;\n }\n return stringToBytes(data).buffer;\n}\nclass NetworkManager {\n constructor(url, args = {}) {\n this.url = url;\n this.isHttp = /^https?:/i.test(url);\n this.httpHeaders = this.isHttp && args.httpHeaders || Object.create(null);\n this.withCredentials = args.withCredentials || false;\n this.currXhrId = 0;\n this.pendingRequests = Object.create(null);\n }\n requestRange(begin, end, listeners) {\n const args = {\n begin,\n end\n };\n for (const prop in listeners) {\n args[prop] = listeners[prop];\n }\n return this.request(args);\n }\n requestFull(listeners) {\n return this.request(listeners);\n }\n request(args) {\n const xhr = new XMLHttpRequest();\n const xhrId = this.currXhrId++;\n const pendingRequest = this.pendingRequests[xhrId] = {\n xhr\n };\n xhr.open(\"GET\", this.url);\n xhr.withCredentials = this.withCredentials;\n for (const property in this.httpHeaders) {\n const value = this.httpHeaders[property];\n if (value === undefined) {\n continue;\n }\n xhr.setRequestHeader(property, value);\n }\n if (this.isHttp && \"begin\" in args && \"end\" in args) {\n xhr.setRequestHeader(\"Range\", `bytes=${args.begin}-${args.end - 1}`);\n pendingRequest.expectedStatus = PARTIAL_CONTENT_RESPONSE;\n } else {\n pendingRequest.expectedStatus = OK_RESPONSE;\n }\n xhr.responseType = \"arraybuffer\";\n if (args.onError) {\n xhr.onerror = function (evt) {\n args.onError(xhr.status);\n };\n }\n xhr.onreadystatechange = this.onStateChange.bind(this, xhrId);\n xhr.onprogress = this.onProgress.bind(this, xhrId);\n pendingRequest.onHeadersReceived = args.onHeadersReceived;\n pendingRequest.onDone = args.onDone;\n pendingRequest.onError = args.onError;\n pendingRequest.onProgress = args.onProgress;\n xhr.send(null);\n return xhrId;\n }\n onProgress(xhrId, evt) {\n const pendingRequest = this.pendingRequests[xhrId];\n if (!pendingRequest) {\n return;\n }\n pendingRequest.onProgress?.(evt);\n }\n onStateChange(xhrId, evt) {\n const pendingRequest = this.pendingRequests[xhrId];\n if (!pendingRequest) {\n return;\n }\n const xhr = pendingRequest.xhr;\n if (xhr.readyState >= 2 && pendingRequest.onHeadersReceived) {\n pendingRequest.onHeadersReceived();\n delete pendingRequest.onHeadersReceived;\n }\n if (xhr.readyState !== 4) {\n return;\n }\n if (!(xhrId in this.pendingRequests)) {\n return;\n }\n delete this.pendingRequests[xhrId];\n if (xhr.status === 0 && this.isHttp) {\n pendingRequest.onError?.(xhr.status);\n return;\n }\n const xhrStatus = xhr.status || OK_RESPONSE;\n const ok_response_on_range_request = xhrStatus === OK_RESPONSE && pendingRequest.expectedStatus === PARTIAL_CONTENT_RESPONSE;\n if (!ok_response_on_range_request && xhrStatus !== pendingRequest.expectedStatus) {\n pendingRequest.onError?.(xhr.status);\n return;\n }\n const chunk = network_getArrayBuffer(xhr);\n if (xhrStatus === PARTIAL_CONTENT_RESPONSE) {\n const rangeHeader = xhr.getResponseHeader(\"Content-Range\");\n const matches = /bytes (\\d+)-(\\d+)\\/(\\d+)/.exec(rangeHeader);\n pendingRequest.onDone({\n begin: parseInt(matches[1], 10),\n chunk\n });\n } else if (chunk) {\n pendingRequest.onDone({\n begin: 0,\n chunk\n });\n } else {\n pendingRequest.onError?.(xhr.status);\n }\n }\n getRequestXhr(xhrId) {\n return this.pendingRequests[xhrId].xhr;\n }\n isPendingRequest(xhrId) {\n return xhrId in this.pendingRequests;\n }\n abortRequest(xhrId) {\n const xhr = this.pendingRequests[xhrId].xhr;\n delete this.pendingRequests[xhrId];\n xhr.abort();\n }\n}\nclass PDFNetworkStream {\n constructor(source) {\n this._source = source;\n this._manager = new NetworkManager(source.url, {\n httpHeaders: source.httpHeaders,\n withCredentials: source.withCredentials\n });\n this._rangeChunkSize = source.rangeChunkSize;\n this._fullRequestReader = null;\n this._rangeRequestReaders = [];\n }\n _onRangeRequestReaderClosed(reader) {\n const i = this._rangeRequestReaders.indexOf(reader);\n if (i >= 0) {\n this._rangeRequestReaders.splice(i, 1);\n }\n }\n getFullReader() {\n assert(!this._fullRequestReader, \"PDFNetworkStream.getFullReader can only be called once.\");\n this._fullRequestReader = new PDFNetworkStreamFullRequestReader(this._manager, this._source);\n return this._fullRequestReader;\n }\n getRangeReader(begin, end) {\n const reader = new PDFNetworkStreamRangeRequestReader(this._manager, begin, end);\n reader.onClosed = this._onRangeRequestReaderClosed.bind(this);\n this._rangeRequestReaders.push(reader);\n return reader;\n }\n cancelAllRequests(reason) {\n this._fullRequestReader?.cancel(reason);\n for (const reader of this._rangeRequestReaders.slice(0)) {\n reader.cancel(reason);\n }\n }\n}\nclass PDFNetworkStreamFullRequestReader {\n constructor(manager, source) {\n this._manager = manager;\n const args = {\n onHeadersReceived: this._onHeadersReceived.bind(this),\n onDone: this._onDone.bind(this),\n onError: this._onError.bind(this),\n onProgress: this._onProgress.bind(this)\n };\n this._url = source.url;\n this._fullRequestId = manager.requestFull(args);\n this._headersReceivedCapability = Promise.withResolvers();\n this._disableRange = source.disableRange || false;\n this._contentLength = source.length;\n this._rangeChunkSize = source.rangeChunkSize;\n if (!this._rangeChunkSize && !this._disableRange) {\n this._disableRange = true;\n }\n this._isStreamingSupported = false;\n this._isRangeSupported = false;\n this._cachedChunks = [];\n this._requests = [];\n this._done = false;\n this._storedError = undefined;\n this._filename = null;\n this.onProgress = null;\n }\n _onHeadersReceived() {\n const fullRequestXhrId = this._fullRequestId;\n const fullRequestXhr = this._manager.getRequestXhr(fullRequestXhrId);\n const getResponseHeader = name => fullRequestXhr.getResponseHeader(name);\n const {\n allowRangeRequests,\n suggestedLength\n } = validateRangeRequestCapabilities({\n getResponseHeader,\n isHttp: this._manager.isHttp,\n rangeChunkSize: this._rangeChunkSize,\n disableRange: this._disableRange\n });\n if (allowRangeRequests) {\n this._isRangeSupported = true;\n }\n this._contentLength = suggestedLength || this._contentLength;\n this._filename = extractFilenameFromHeader(getResponseHeader);\n if (this._isRangeSupported) {\n this._manager.abortRequest(fullRequestXhrId);\n }\n this._headersReceivedCapability.resolve();\n }\n _onDone(data) {\n if (data) {\n if (this._requests.length > 0) {\n const requestCapability = this._requests.shift();\n requestCapability.resolve({\n value: data.chunk,\n done: false\n });\n } else {\n this._cachedChunks.push(data.chunk);\n }\n }\n this._done = true;\n if (this._cachedChunks.length > 0) {\n return;\n }\n for (const requestCapability of this._requests) {\n requestCapability.resolve({\n value: undefined,\n done: true\n });\n }\n this._requests.length = 0;\n }\n _onError(status) {\n this._storedError = createResponseStatusError(status, this._url);\n this._headersReceivedCapability.reject(this._storedError);\n for (const requestCapability of this._requests) {\n requestCapability.reject(this._storedError);\n }\n this._requests.length = 0;\n this._cachedChunks.length = 0;\n }\n _onProgress(evt) {\n this.onProgress?.({\n loaded: evt.loaded,\n total: evt.lengthComputable ? evt.total : this._contentLength\n });\n }\n get filename() {\n return this._filename;\n }\n get isRangeSupported() {\n return this._isRangeSupported;\n }\n get isStreamingSupported() {\n return this._isStreamingSupported;\n }\n get contentLength() {\n return this._contentLength;\n }\n get headersReady() {\n return this._headersReceivedCapability.promise;\n }\n async read() {\n if (this._storedError) {\n throw this._storedError;\n }\n if (this._cachedChunks.length > 0) {\n const chunk = this._cachedChunks.shift();\n return {\n value: chunk,\n done: false\n };\n }\n if (this._done) {\n return {\n value: undefined,\n done: true\n };\n }\n const requestCapability = Promise.withResolvers();\n this._requests.push(requestCapability);\n return requestCapability.promise;\n }\n cancel(reason) {\n this._done = true;\n this._headersReceivedCapability.reject(reason);\n for (const requestCapability of this._requests) {\n requestCapability.resolve({\n value: undefined,\n done: true\n });\n }\n this._requests.length = 0;\n if (this._manager.isPendingRequest(this._fullRequestId)) {\n this._manager.abortRequest(this._fullRequestId);\n }\n this._fullRequestReader = null;\n }\n}\nclass PDFNetworkStreamRangeRequestReader {\n constructor(manager, begin, end) {\n this._manager = manager;\n const args = {\n onDone: this._onDone.bind(this),\n onError: this._onError.bind(this),\n onProgress: this._onProgress.bind(this)\n };\n this._url = manager.url;\n this._requestId = manager.requestRange(begin, end, args);\n this._requests = [];\n this._queuedChunk = null;\n this._done = false;\n this._storedError = undefined;\n this.onProgress = null;\n this.onClosed = null;\n }\n _close() {\n this.onClosed?.(this);\n }\n _onDone(data) {\n const chunk = data.chunk;\n if (this._requests.length > 0) {\n const requestCapability = this._requests.shift();\n requestCapability.resolve({\n value: chunk,\n done: false\n });\n } else {\n this._queuedChunk = chunk;\n }\n this._done = true;\n for (const requestCapability of this._requests) {\n requestCapability.resolve({\n value: undefined,\n done: true\n });\n }\n this._requests.length = 0;\n this._close();\n }\n _onError(status) {\n this._storedError = createResponseStatusError(status, this._url);\n for (const requestCapability of this._requests) {\n requestCapability.reject(this._storedError);\n }\n this._requests.length = 0;\n this._queuedChunk = null;\n }\n _onProgress(evt) {\n if (!this.isStreamingSupported) {\n this.onProgress?.({\n loaded: evt.loaded\n });\n }\n }\n get isStreamingSupported() {\n return false;\n }\n async read() {\n if (this._storedError) {\n throw this._storedError;\n }\n if (this._queuedChunk !== null) {\n const chunk = this._queuedChunk;\n this._queuedChunk = null;\n return {\n value: chunk,\n done: false\n };\n }\n if (this._done) {\n return {\n value: undefined,\n done: true\n };\n }\n const requestCapability = Promise.withResolvers();\n this._requests.push(requestCapability);\n return requestCapability.promise;\n }\n cancel(reason) {\n this._done = true;\n for (const requestCapability of this._requests) {\n requestCapability.resolve({\n value: undefined,\n done: true\n });\n }\n this._requests.length = 0;\n if (this._manager.isPendingRequest(this._requestId)) {\n this._manager.abortRequest(this._requestId);\n }\n this._close();\n }\n}\n\n;// CONCATENATED MODULE: ./src/display/node_stream.js\n\n\n\nconst fileUriRegex = /^file:\\/\\/\\/[a-zA-Z]:\\//;\nfunction parseUrl(sourceUrl) {\n const url = NodePackages.get(\"url\");\n const parsedUrl = url.parse(sourceUrl);\n if (parsedUrl.protocol === \"file:\" || parsedUrl.host) {\n return parsedUrl;\n }\n if (/^[a-z]:[/\\\\]/i.test(sourceUrl)) {\n return url.parse(`file:///${sourceUrl}`);\n }\n if (!parsedUrl.host) {\n parsedUrl.protocol = \"file:\";\n }\n return parsedUrl;\n}\nclass PDFNodeStream {\n constructor(source) {\n this.source = source;\n this.url = parseUrl(source.url);\n this.isHttp = this.url.protocol === \"http:\" || this.url.protocol === \"https:\";\n this.isFsUrl = this.url.protocol === \"file:\";\n this.httpHeaders = this.isHttp && source.httpHeaders || {};\n this._fullRequestReader = null;\n this._rangeRequestReaders = [];\n }\n get _progressiveDataLength() {\n return this._fullRequestReader?._loaded ?? 0;\n }\n getFullReader() {\n assert(!this._fullRequestReader, \"PDFNodeStream.getFullReader can only be called once.\");\n this._fullRequestReader = this.isFsUrl ? new PDFNodeStreamFsFullReader(this) : new PDFNodeStreamFullReader(this);\n return this._fullRequestReader;\n }\n getRangeReader(start, end) {\n if (end <= this._progressiveDataLength) {\n return null;\n }\n const rangeReader = this.isFsUrl ? new PDFNodeStreamFsRangeReader(this, start, end) : new PDFNodeStreamRangeReader(this, start, end);\n this._rangeRequestReaders.push(rangeReader);\n return rangeReader;\n }\n cancelAllRequests(reason) {\n this._fullRequestReader?.cancel(reason);\n for (const reader of this._rangeRequestReaders.slice(0)) {\n reader.cancel(reason);\n }\n }\n}\nclass BaseFullReader {\n constructor(stream) {\n this._url = stream.url;\n this._done = false;\n this._storedError = null;\n this.onProgress = null;\n const source = stream.source;\n this._contentLength = source.length;\n this._loaded = 0;\n this._filename = null;\n this._disableRange = source.disableRange || false;\n this._rangeChunkSize = source.rangeChunkSize;\n if (!this._rangeChunkSize && !this._disableRange) {\n this._disableRange = true;\n }\n this._isStreamingSupported = !source.disableStream;\n this._isRangeSupported = !source.disableRange;\n this._readableStream = null;\n this._readCapability = Promise.withResolvers();\n this._headersCapability = Promise.withResolvers();\n }\n get headersReady() {\n return this._headersCapability.promise;\n }\n get filename() {\n return this._filename;\n }\n get contentLength() {\n return this._contentLength;\n }\n get isRangeSupported() {\n return this._isRangeSupported;\n }\n get isStreamingSupported() {\n return this._isStreamingSupported;\n }\n async read() {\n await this._readCapability.promise;\n if (this._done) {\n return {\n value: undefined,\n done: true\n };\n }\n if (this._storedError) {\n throw this._storedError;\n }\n const chunk = this._readableStream.read();\n if (chunk === null) {\n this._readCapability = Promise.withResolvers();\n return this.read();\n }\n this._loaded += chunk.length;\n this.onProgress?.({\n loaded: this._loaded,\n total: this._contentLength\n });\n const buffer = new Uint8Array(chunk).buffer;\n return {\n value: buffer,\n done: false\n };\n }\n cancel(reason) {\n if (!this._readableStream) {\n this._error(reason);\n return;\n }\n this._readableStream.destroy(reason);\n }\n _error(reason) {\n this._storedError = reason;\n this._readCapability.resolve();\n }\n _setReadableStream(readableStream) {\n this._readableStream = readableStream;\n readableStream.on(\"readable\", () => {\n this._readCapability.resolve();\n });\n readableStream.on(\"end\", () => {\n readableStream.destroy();\n this._done = true;\n this._readCapability.resolve();\n });\n readableStream.on(\"error\", reason => {\n this._error(reason);\n });\n if (!this._isStreamingSupported && this._isRangeSupported) {\n this._error(new AbortException(\"streaming is disabled\"));\n }\n if (this._storedError) {\n this._readableStream.destroy(this._storedError);\n }\n }\n}\nclass BaseRangeReader {\n constructor(stream) {\n this._url = stream.url;\n this._done = false;\n this._storedError = null;\n this.onProgress = null;\n this._loaded = 0;\n this._readableStream = null;\n this._readCapability = Promise.withResolvers();\n const source = stream.source;\n this._isStreamingSupported = !source.disableStream;\n }\n get isStreamingSupported() {\n return this._isStreamingSupported;\n }\n async read() {\n await this._readCapability.promise;\n if (this._done) {\n return {\n value: undefined,\n done: true\n };\n }\n if (this._storedError) {\n throw this._storedError;\n }\n const chunk = this._readableStream.read();\n if (chunk === null) {\n this._readCapability = Promise.withResolvers();\n return this.read();\n }\n this._loaded += chunk.length;\n this.onProgress?.({\n loaded: this._loaded\n });\n const buffer = new Uint8Array(chunk).buffer;\n return {\n value: buffer,\n done: false\n };\n }\n cancel(reason) {\n if (!this._readableStream) {\n this._error(reason);\n return;\n }\n this._readableStream.destroy(reason);\n }\n _error(reason) {\n this._storedError = reason;\n this._readCapability.resolve();\n }\n _setReadableStream(readableStream) {\n this._readableStream = readableStream;\n readableStream.on(\"readable\", () => {\n this._readCapability.resolve();\n });\n readableStream.on(\"end\", () => {\n readableStream.destroy();\n this._done = true;\n this._readCapability.resolve();\n });\n readableStream.on(\"error\", reason => {\n this._error(reason);\n });\n if (this._storedError) {\n this._readableStream.destroy(this._storedError);\n }\n }\n}\nfunction createRequestOptions(parsedUrl, headers) {\n return {\n protocol: parsedUrl.protocol,\n auth: parsedUrl.auth,\n host: parsedUrl.hostname,\n port: parsedUrl.port,\n path: parsedUrl.path,\n method: \"GET\",\n headers\n };\n}\nclass PDFNodeStreamFullReader extends BaseFullReader {\n constructor(stream) {\n super(stream);\n const handleResponse = response => {\n if (response.statusCode === 404) {\n const error = new MissingPDFException(`Missing PDF \"${this._url}\".`);\n this._storedError = error;\n this._headersCapability.reject(error);\n return;\n }\n this._headersCapability.resolve();\n this._setReadableStream(response);\n const getResponseHeader = name => this._readableStream.headers[name.toLowerCase()];\n const {\n allowRangeRequests,\n suggestedLength\n } = validateRangeRequestCapabilities({\n getResponseHeader,\n isHttp: stream.isHttp,\n rangeChunkSize: this._rangeChunkSize,\n disableRange: this._disableRange\n });\n this._isRangeSupported = allowRangeRequests;\n this._contentLength = suggestedLength || this._contentLength;\n this._filename = extractFilenameFromHeader(getResponseHeader);\n };\n this._request = null;\n if (this._url.protocol === \"http:\") {\n const http = NodePackages.get(\"http\");\n this._request = http.request(createRequestOptions(this._url, stream.httpHeaders), handleResponse);\n } else {\n const https = NodePackages.get(\"https\");\n this._request = https.request(createRequestOptions(this._url, stream.httpHeaders), handleResponse);\n }\n this._request.on(\"error\", reason => {\n this._storedError = reason;\n this._headersCapability.reject(reason);\n });\n this._request.end();\n }\n}\nclass PDFNodeStreamRangeReader extends BaseRangeReader {\n constructor(stream, start, end) {\n super(stream);\n this._httpHeaders = {};\n for (const property in stream.httpHeaders) {\n const value = stream.httpHeaders[property];\n if (value === undefined) {\n continue;\n }\n this._httpHeaders[property] = value;\n }\n this._httpHeaders.Range = `bytes=${start}-${end - 1}`;\n const handleResponse = response => {\n if (response.statusCode === 404) {\n const error = new MissingPDFException(`Missing PDF \"${this._url}\".`);\n this._storedError = error;\n return;\n }\n this._setReadableStream(response);\n };\n this._request = null;\n if (this._url.protocol === \"http:\") {\n const http = NodePackages.get(\"http\");\n this._request = http.request(createRequestOptions(this._url, this._httpHeaders), handleResponse);\n } else {\n const https = NodePackages.get(\"https\");\n this._request = https.request(createRequestOptions(this._url, this._httpHeaders), handleResponse);\n }\n this._request.on(\"error\", reason => {\n this._storedError = reason;\n });\n this._request.end();\n }\n}\nclass PDFNodeStreamFsFullReader extends BaseFullReader {\n constructor(stream) {\n super(stream);\n let path = decodeURIComponent(this._url.path);\n if (fileUriRegex.test(this._url.href)) {\n path = path.replace(/^\\//, \"\");\n }\n const fs = NodePackages.get(\"fs\");\n fs.promises.lstat(path).then(stat => {\n this._contentLength = stat.size;\n this._setReadableStream(fs.createReadStream(path));\n this._headersCapability.resolve();\n }, error => {\n if (error.code === \"ENOENT\") {\n error = new MissingPDFException(`Missing PDF \"${path}\".`);\n }\n this._storedError = error;\n this._headersCapability.reject(error);\n });\n }\n}\nclass PDFNodeStreamFsRangeReader extends BaseRangeReader {\n constructor(stream, start, end) {\n super(stream);\n let path = decodeURIComponent(this._url.path);\n if (fileUriRegex.test(this._url.href)) {\n path = path.replace(/^\\//, \"\");\n }\n const fs = NodePackages.get(\"fs\");\n this._setReadableStream(fs.createReadStream(path, {\n start,\n end: end - 1\n }));\n }\n}\n\n;// CONCATENATED MODULE: ./src/display/text_layer.js\n\n\nconst MAX_TEXT_DIVS_TO_RENDER = 100000;\nconst DEFAULT_FONT_SIZE = 30;\nconst DEFAULT_FONT_ASCENT = 0.8;\nclass TextLayer {\n #capability = Promise.withResolvers();\n #container = null;\n #disableProcessItems = false;\n #fontInspectorEnabled = !!globalThis.FontInspector?.enabled;\n #lang = null;\n #layoutTextParams = null;\n #pageHeight = 0;\n #pageWidth = 0;\n #reader = null;\n #rootContainer = null;\n #rotation = 0;\n #scale = 0;\n #styleCache = Object.create(null);\n #textContentItemsStr = [];\n #textContentSource = null;\n #textDivs = [];\n #textDivProperties = new WeakMap();\n #transform = null;\n static #ascentCache = new Map();\n static #canvasContexts = new Map();\n static #minFontSize = null;\n static #pendingTextLayers = new Set();\n constructor({\n textContentSource,\n container,\n viewport\n }) {\n if (textContentSource instanceof ReadableStream) {\n this.#textContentSource = textContentSource;\n } else if (typeof textContentSource === \"object\") {\n this.#textContentSource = new ReadableStream({\n start(controller) {\n controller.enqueue(textContentSource);\n controller.close();\n }\n });\n } else {\n throw new Error('No \"textContentSource\" parameter specified.');\n }\n this.#container = this.#rootContainer = container;\n this.#scale = viewport.scale * (globalThis.devicePixelRatio || 1);\n this.#rotation = viewport.rotation;\n this.#layoutTextParams = {\n prevFontSize: null,\n prevFontFamily: null,\n div: null,\n properties: null,\n ctx: null\n };\n const {\n pageWidth,\n pageHeight,\n pageX,\n pageY\n } = viewport.rawDims;\n this.#transform = [1, 0, 0, -1, -pageX, pageY + pageHeight];\n this.#pageWidth = pageWidth;\n this.#pageHeight = pageHeight;\n TextLayer.#ensureMinFontSizeComputed();\n setLayerDimensions(container, viewport);\n this.#capability.promise.catch(() => {}).then(() => {\n TextLayer.#pendingTextLayers.delete(this);\n this.#layoutTextParams = null;\n this.#styleCache = null;\n });\n }\n render() {\n const pump = () => {\n this.#reader.read().then(({\n value,\n done\n }) => {\n if (done) {\n this.#capability.resolve();\n return;\n }\n this.#lang ??= value.lang;\n Object.assign(this.#styleCache, value.styles);\n this.#processItems(value.items);\n pump();\n }, this.#capability.reject);\n };\n this.#reader = this.#textContentSource.getReader();\n TextLayer.#pendingTextLayers.add(this);\n pump();\n return this.#capability.promise;\n }\n update({\n viewport,\n onBefore = null\n }) {\n const scale = viewport.scale * (globalThis.devicePixelRatio || 1);\n const rotation = viewport.rotation;\n if (rotation !== this.#rotation) {\n onBefore?.();\n this.#rotation = rotation;\n setLayerDimensions(this.#rootContainer, {\n rotation\n });\n }\n if (scale !== this.#scale) {\n onBefore?.();\n this.#scale = scale;\n const params = {\n prevFontSize: null,\n prevFontFamily: null,\n div: null,\n properties: null,\n ctx: TextLayer.#getCtx(this.#lang)\n };\n for (const div of this.#textDivs) {\n params.properties = this.#textDivProperties.get(div);\n params.div = div;\n this.#layout(params);\n }\n }\n }\n cancel() {\n const abortEx = new AbortException(\"TextLayer task cancelled.\");\n this.#reader?.cancel(abortEx).catch(() => {});\n this.#reader = null;\n this.#capability.reject(abortEx);\n }\n get textDivs() {\n return this.#textDivs;\n }\n get textContentItemsStr() {\n return this.#textContentItemsStr;\n }\n #processItems(items) {\n if (this.#disableProcessItems) {\n return;\n }\n this.#layoutTextParams.ctx ??= TextLayer.#getCtx(this.#lang);\n const textDivs = this.#textDivs,\n textContentItemsStr = this.#textContentItemsStr;\n for (const item of items) {\n if (textDivs.length > MAX_TEXT_DIVS_TO_RENDER) {\n warn(\"Ignoring additional textDivs for performance reasons.\");\n this.#disableProcessItems = true;\n return;\n }\n if (item.str === undefined) {\n if (item.type === \"beginMarkedContentProps\" || item.type === \"beginMarkedContent\") {\n const parent = this.#container;\n this.#container = document.createElement(\"span\");\n this.#container.classList.add(\"markedContent\");\n if (item.id !== null) {\n this.#container.setAttribute(\"id\", `${item.id}`);\n }\n parent.append(this.#container);\n } else if (item.type === \"endMarkedContent\") {\n this.#container = this.#container.parentNode;\n }\n continue;\n }\n textContentItemsStr.push(item.str);\n this.#appendText(item);\n }\n }\n #appendText(geom) {\n const textDiv = document.createElement(\"span\");\n const textDivProperties = {\n angle: 0,\n canvasWidth: 0,\n hasText: geom.str !== \"\",\n hasEOL: geom.hasEOL,\n fontSize: 0\n };\n this.#textDivs.push(textDiv);\n const tx = Util.transform(this.#transform, geom.transform);\n let angle = Math.atan2(tx[1], tx[0]);\n const style = this.#styleCache[geom.fontName];\n if (style.vertical) {\n angle += Math.PI / 2;\n }\n const fontFamily = this.#fontInspectorEnabled && style.fontSubstitution || style.fontFamily;\n const fontHeight = Math.hypot(tx[2], tx[3]);\n const fontAscent = fontHeight * TextLayer.#getAscent(fontFamily, this.#lang);\n let left, top;\n if (angle === 0) {\n left = tx[4];\n top = tx[5] - fontAscent;\n } else {\n left = tx[4] + fontAscent * Math.sin(angle);\n top = tx[5] - fontAscent * Math.cos(angle);\n }\n const scaleFactorStr = \"calc(var(--scale-factor)*\";\n const divStyle = textDiv.style;\n if (this.#container === this.#rootContainer) {\n divStyle.left = `${(100 * left / this.#pageWidth).toFixed(2)}%`;\n divStyle.top = `${(100 * top / this.#pageHeight).toFixed(2)}%`;\n } else {\n divStyle.left = `${scaleFactorStr}${left.toFixed(2)}px)`;\n divStyle.top = `${scaleFactorStr}${top.toFixed(2)}px)`;\n }\n divStyle.fontSize = `${scaleFactorStr}${(TextLayer.#minFontSize * fontHeight).toFixed(2)}px)`;\n divStyle.fontFamily = fontFamily;\n textDivProperties.fontSize = fontHeight;\n textDiv.setAttribute(\"role\", \"presentation\");\n textDiv.textContent = geom.str;\n textDiv.dir = geom.dir;\n if (this.#fontInspectorEnabled) {\n textDiv.dataset.fontName = style.fontSubstitutionLoadedName || geom.fontName;\n }\n if (angle !== 0) {\n textDivProperties.angle = angle * (180 / Math.PI);\n }\n let shouldScaleText = false;\n if (geom.str.length > 1) {\n shouldScaleText = true;\n } else if (geom.str !== \" \" && geom.transform[0] !== geom.transform[3]) {\n const absScaleX = Math.abs(geom.transform[0]),\n absScaleY = Math.abs(geom.transform[3]);\n if (absScaleX !== absScaleY && Math.max(absScaleX, absScaleY) / Math.min(absScaleX, absScaleY) > 1.5) {\n shouldScaleText = true;\n }\n }\n if (shouldScaleText) {\n textDivProperties.canvasWidth = style.vertical ? geom.height : geom.width;\n }\n this.#textDivProperties.set(textDiv, textDivProperties);\n this.#layoutTextParams.div = textDiv;\n this.#layoutTextParams.properties = textDivProperties;\n this.#layout(this.#layoutTextParams);\n if (textDivProperties.hasText) {\n this.#container.append(textDiv);\n }\n if (textDivProperties.hasEOL) {\n const br = document.createElement(\"br\");\n br.setAttribute(\"role\", \"presentation\");\n this.#container.append(br);\n }\n }\n #layout(params) {\n const {\n div,\n properties,\n ctx,\n prevFontSize,\n prevFontFamily\n } = params;\n const {\n style\n } = div;\n let transform = \"\";\n if (TextLayer.#minFontSize > 1) {\n transform = `scale(${1 / TextLayer.#minFontSize})`;\n }\n if (properties.canvasWidth !== 0 && properties.hasText) {\n const {\n fontFamily\n } = style;\n const {\n canvasWidth,\n fontSize\n } = properties;\n if (prevFontSize !== fontSize || prevFontFamily !== fontFamily) {\n ctx.font = `${fontSize * this.#scale}px ${fontFamily}`;\n params.prevFontSize = fontSize;\n params.prevFontFamily = fontFamily;\n }\n const {\n width\n } = ctx.measureText(div.textContent);\n if (width > 0) {\n transform = `scaleX(${canvasWidth * this.#scale / width}) ${transform}`;\n }\n }\n if (properties.angle !== 0) {\n transform = `rotate(${properties.angle}deg) ${transform}`;\n }\n if (transform.length > 0) {\n style.transform = transform;\n }\n }\n static cleanup() {\n if (this.#pendingTextLayers.size > 0) {\n return;\n }\n this.#ascentCache.clear();\n for (const {\n canvas\n } of this.#canvasContexts.values()) {\n canvas.remove();\n }\n this.#canvasContexts.clear();\n }\n static #getCtx(lang = null) {\n let canvasContext = this.#canvasContexts.get(lang ||= \"\");\n if (!canvasContext) {\n const canvas = document.createElement(\"canvas\");\n canvas.className = \"hiddenCanvasElement\";\n canvas.lang = lang;\n document.body.append(canvas);\n canvasContext = canvas.getContext(\"2d\", {\n alpha: false,\n willReadFrequently: true\n });\n this.#canvasContexts.set(lang, canvasContext);\n }\n return canvasContext;\n }\n static #ensureMinFontSizeComputed() {\n if (this.#minFontSize !== null) {\n return;\n }\n const div = document.createElement(\"div\");\n div.style.opacity = 0;\n div.style.lineHeight = 1;\n div.style.fontSize = \"1px\";\n div.textContent = \"X\";\n document.body.append(div);\n this.#minFontSize = div.getBoundingClientRect().height;\n div.remove();\n }\n static #getAscent(fontFamily, lang) {\n const cachedAscent = this.#ascentCache.get(fontFamily);\n if (cachedAscent) {\n return cachedAscent;\n }\n const ctx = this.#getCtx(lang);\n const savedFont = ctx.font;\n ctx.canvas.width = ctx.canvas.height = DEFAULT_FONT_SIZE;\n ctx.font = `${DEFAULT_FONT_SIZE}px ${fontFamily}`;\n const metrics = ctx.measureText(\"\");\n let ascent = metrics.fontBoundingBoxAscent;\n let descent = Math.abs(metrics.fontBoundingBoxDescent);\n if (ascent) {\n const ratio = ascent / (ascent + descent);\n this.#ascentCache.set(fontFamily, ratio);\n ctx.canvas.width = ctx.canvas.height = 0;\n ctx.font = savedFont;\n return ratio;\n }\n ctx.strokeStyle = \"red\";\n ctx.clearRect(0, 0, DEFAULT_FONT_SIZE, DEFAULT_FONT_SIZE);\n ctx.strokeText(\"g\", 0, 0);\n let pixels = ctx.getImageData(0, 0, DEFAULT_FONT_SIZE, DEFAULT_FONT_SIZE).data;\n descent = 0;\n for (let i = pixels.length - 1 - 3; i >= 0; i -= 4) {\n if (pixels[i] > 0) {\n descent = Math.ceil(i / 4 / DEFAULT_FONT_SIZE);\n break;\n }\n }\n ctx.clearRect(0, 0, DEFAULT_FONT_SIZE, DEFAULT_FONT_SIZE);\n ctx.strokeText(\"A\", 0, DEFAULT_FONT_SIZE);\n pixels = ctx.getImageData(0, 0, DEFAULT_FONT_SIZE, DEFAULT_FONT_SIZE).data;\n ascent = 0;\n for (let i = 0, ii = pixels.length; i < ii; i += 4) {\n if (pixels[i] > 0) {\n ascent = DEFAULT_FONT_SIZE - Math.floor(i / 4 / DEFAULT_FONT_SIZE);\n break;\n }\n }\n ctx.canvas.width = ctx.canvas.height = 0;\n ctx.font = savedFont;\n const ratio = ascent ? ascent / (ascent + descent) : DEFAULT_FONT_ASCENT;\n this.#ascentCache.set(fontFamily, ratio);\n return ratio;\n }\n}\nfunction renderTextLayer() {\n deprecated(\"`renderTextLayer`, please use `TextLayer` instead.\");\n const {\n textContentSource,\n container,\n viewport,\n ...rest\n } = arguments[0];\n const restKeys = Object.keys(rest);\n if (restKeys.length > 0) {\n warn(\"Ignoring `renderTextLayer` parameters: \" + restKeys.join(\", \"));\n }\n const textLayer = new TextLayer({\n textContentSource,\n container,\n viewport\n });\n const {\n textDivs,\n textContentItemsStr\n } = textLayer;\n const promise = textLayer.render();\n return {\n promise,\n textDivs,\n textContentItemsStr\n };\n}\nfunction updateTextLayer() {\n deprecated(\"`updateTextLayer`, please use `TextLayer` instead.\");\n}\n\n;// CONCATENATED MODULE: ./src/display/xfa_text.js\nclass XfaText {\n static textContent(xfa) {\n const items = [];\n const output = {\n items,\n styles: Object.create(null)\n };\n function walk(node) {\n if (!node) {\n return;\n }\n let str = null;\n const name = node.name;\n if (name === \"#text\") {\n str = node.value;\n } else if (!XfaText.shouldBuildText(name)) {\n return;\n } else if (node?.attributes?.textContent) {\n str = node.attributes.textContent;\n } else if (node.value) {\n str = node.value;\n }\n if (str !== null) {\n items.push({\n str\n });\n }\n if (!node.children) {\n return;\n }\n for (const child of node.children) {\n walk(child);\n }\n }\n walk(xfa);\n return output;\n }\n static shouldBuildText(name) {\n return !(name === \"textarea\" || name === \"input\" || name === \"option\" || name === \"select\");\n }\n}\n\n;// CONCATENATED MODULE: ./src/display/api.js\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst DEFAULT_RANGE_CHUNK_SIZE = 65536;\nconst RENDERING_CANCELLED_TIMEOUT = 100;\nconst DELAYED_CLEANUP_TIMEOUT = 5000;\nconst DefaultCanvasFactory = isNodeJS ? NodeCanvasFactory : DOMCanvasFactory;\nconst DefaultCMapReaderFactory = isNodeJS ? NodeCMapReaderFactory : DOMCMapReaderFactory;\nconst DefaultFilterFactory = isNodeJS ? NodeFilterFactory : DOMFilterFactory;\nconst DefaultStandardFontDataFactory = isNodeJS ? NodeStandardFontDataFactory : DOMStandardFontDataFactory;\nfunction getDocument(src = {}) {\n if (typeof src === \"string\" || src instanceof URL) {\n src = {\n url: src\n };\n } else if (src instanceof ArrayBuffer || ArrayBuffer.isView(src)) {\n src = {\n data: src\n };\n }\n const task = new PDFDocumentLoadingTask();\n const {\n docId\n } = task;\n const url = src.url ? getUrlProp(src.url) : null;\n const data = src.data ? getDataProp(src.data) : null;\n const httpHeaders = src.httpHeaders || null;\n const withCredentials = src.withCredentials === true;\n const password = src.password ?? null;\n const rangeTransport = src.range instanceof PDFDataRangeTransport ? src.range : null;\n const rangeChunkSize = Number.isInteger(src.rangeChunkSize) && src.rangeChunkSize > 0 ? src.rangeChunkSize : DEFAULT_RANGE_CHUNK_SIZE;\n let worker = src.worker instanceof PDFWorker ? src.worker : null;\n const verbosity = src.verbosity;\n const docBaseUrl = typeof src.docBaseUrl === \"string\" && !isDataScheme(src.docBaseUrl) ? src.docBaseUrl : null;\n const cMapUrl = typeof src.cMapUrl === \"string\" ? src.cMapUrl : null;\n const cMapPacked = src.cMapPacked !== false;\n const CMapReaderFactory = src.CMapReaderFactory || DefaultCMapReaderFactory;\n const standardFontDataUrl = typeof src.standardFontDataUrl === \"string\" ? src.standardFontDataUrl : null;\n const StandardFontDataFactory = src.StandardFontDataFactory || DefaultStandardFontDataFactory;\n const ignoreErrors = src.stopAtErrors !== true;\n const maxImageSize = Number.isInteger(src.maxImageSize) && src.maxImageSize > -1 ? src.maxImageSize : -1;\n const isEvalSupported = src.isEvalSupported !== false;\n const isOffscreenCanvasSupported = typeof src.isOffscreenCanvasSupported === \"boolean\" ? src.isOffscreenCanvasSupported : !isNodeJS;\n const canvasMaxAreaInBytes = Number.isInteger(src.canvasMaxAreaInBytes) ? src.canvasMaxAreaInBytes : -1;\n const disableFontFace = typeof src.disableFontFace === \"boolean\" ? src.disableFontFace : isNodeJS;\n const fontExtraProperties = src.fontExtraProperties === true;\n const enableXfa = src.enableXfa === true;\n const ownerDocument = src.ownerDocument || globalThis.document;\n const disableRange = src.disableRange === true;\n const disableStream = src.disableStream === true;\n const disableAutoFetch = src.disableAutoFetch === true;\n const pdfBug = src.pdfBug === true;\n const enableHWA = src.enableHWA === true;\n const length = rangeTransport ? rangeTransport.length : src.length ?? NaN;\n const useSystemFonts = typeof src.useSystemFonts === \"boolean\" ? src.useSystemFonts : !isNodeJS && !disableFontFace;\n const useWorkerFetch = typeof src.useWorkerFetch === \"boolean\" ? src.useWorkerFetch : CMapReaderFactory === DOMCMapReaderFactory && StandardFontDataFactory === DOMStandardFontDataFactory && cMapUrl && standardFontDataUrl && isValidFetchUrl(cMapUrl, document.baseURI) && isValidFetchUrl(standardFontDataUrl, document.baseURI);\n const canvasFactory = src.canvasFactory || new DefaultCanvasFactory({\n ownerDocument,\n enableHWA\n });\n const filterFactory = src.filterFactory || new DefaultFilterFactory({\n docId,\n ownerDocument\n });\n const styleElement = null;\n setVerbosityLevel(verbosity);\n const transportFactory = {\n canvasFactory,\n filterFactory\n };\n if (!useWorkerFetch) {\n transportFactory.cMapReaderFactory = new CMapReaderFactory({\n baseUrl: cMapUrl,\n isCompressed: cMapPacked\n });\n transportFactory.standardFontDataFactory = new StandardFontDataFactory({\n baseUrl: standardFontDataUrl\n });\n }\n if (!worker) {\n const workerParams = {\n verbosity,\n port: GlobalWorkerOptions.workerPort\n };\n worker = workerParams.port ? PDFWorker.fromPort(workerParams) : new PDFWorker(workerParams);\n task._worker = worker;\n }\n const docParams = {\n docId,\n apiVersion: \"4.4.168\",\n data,\n password,\n disableAutoFetch,\n rangeChunkSize,\n length,\n docBaseUrl,\n enableXfa,\n evaluatorOptions: {\n maxImageSize,\n disableFontFace,\n ignoreErrors,\n isEvalSupported,\n isOffscreenCanvasSupported,\n canvasMaxAreaInBytes,\n fontExtraProperties,\n useSystemFonts,\n cMapUrl: useWorkerFetch ? cMapUrl : null,\n standardFontDataUrl: useWorkerFetch ? standardFontDataUrl : null\n }\n };\n const transportParams = {\n disableFontFace,\n fontExtraProperties,\n ownerDocument,\n pdfBug,\n styleElement,\n loadingParams: {\n disableAutoFetch,\n enableXfa\n }\n };\n worker.promise.then(function () {\n if (task.destroyed) {\n throw new Error(\"Loading aborted\");\n }\n if (worker.destroyed) {\n throw new Error(\"Worker was destroyed\");\n }\n const workerIdPromise = worker.messageHandler.sendWithPromise(\"GetDocRequest\", docParams, data ? [data.buffer] : null);\n let networkStream;\n if (rangeTransport) {\n networkStream = new PDFDataTransportStream(rangeTransport, {\n disableRange,\n disableStream\n });\n } else if (!data) {\n if (!url) {\n throw new Error(\"getDocument - no `url` parameter provided.\");\n }\n const createPDFNetworkStream = params => {\n if (isNodeJS) {\n const isFetchSupported = function () {\n return typeof fetch !== \"undefined\" && typeof Response !== \"undefined\" && \"body\" in Response.prototype;\n };\n return isFetchSupported() && isValidFetchUrl(params.url) ? new PDFFetchStream(params) : new PDFNodeStream(params);\n }\n return isValidFetchUrl(params.url) ? new PDFFetchStream(params) : new PDFNetworkStream(params);\n };\n networkStream = createPDFNetworkStream({\n url,\n length,\n httpHeaders,\n withCredentials,\n rangeChunkSize,\n disableRange,\n disableStream\n });\n }\n return workerIdPromise.then(workerId => {\n if (task.destroyed) {\n throw new Error(\"Loading aborted\");\n }\n if (worker.destroyed) {\n throw new Error(\"Worker was destroyed\");\n }\n const messageHandler = new MessageHandler(docId, workerId, worker.port);\n const transport = new WorkerTransport(messageHandler, task, networkStream, transportParams, transportFactory);\n task._transport = transport;\n messageHandler.send(\"Ready\", null);\n });\n }).catch(task._capability.reject);\n return task;\n}\nfunction getUrlProp(val) {\n if (val instanceof URL) {\n return val.href;\n }\n try {\n return new URL(val, window.location).href;\n } catch {\n if (isNodeJS && typeof val === \"string\") {\n return val;\n }\n }\n throw new Error(\"Invalid PDF url data: \" + \"either string or URL-object is expected in the url property.\");\n}\nfunction getDataProp(val) {\n if (isNodeJS && typeof Buffer !== \"undefined\" && val instanceof Buffer) {\n throw new Error(\"Please provide binary data as `Uint8Array`, rather than `Buffer`.\");\n }\n if (val instanceof Uint8Array && val.byteLength === val.buffer.byteLength) {\n return val;\n }\n if (typeof val === \"string\") {\n return stringToBytes(val);\n }\n if (val instanceof ArrayBuffer || ArrayBuffer.isView(val) || typeof val === \"object\" && !isNaN(val?.length)) {\n return new Uint8Array(val);\n }\n throw new Error(\"Invalid PDF binary data: either TypedArray, \" + \"string, or array-like object is expected in the data property.\");\n}\nfunction isRefProxy(ref) {\n return typeof ref === \"object\" && Number.isInteger(ref?.num) && ref.num >= 0 && Number.isInteger(ref?.gen) && ref.gen >= 0;\n}\nclass PDFDocumentLoadingTask {\n static #docId = 0;\n constructor() {\n this._capability = Promise.withResolvers();\n this._transport = null;\n this._worker = null;\n this.docId = `d${PDFDocumentLoadingTask.#docId++}`;\n this.destroyed = false;\n this.onPassword = null;\n this.onProgress = null;\n }\n get promise() {\n return this._capability.promise;\n }\n async destroy() {\n this.destroyed = true;\n try {\n if (this._worker?.port) {\n this._worker._pendingDestroy = true;\n }\n await this._transport?.destroy();\n } catch (ex) {\n if (this._worker?.port) {\n delete this._worker._pendingDestroy;\n }\n throw ex;\n }\n this._transport = null;\n if (this._worker) {\n this._worker.destroy();\n this._worker = null;\n }\n }\n}\nclass PDFDataRangeTransport {\n constructor(length, initialData, progressiveDone = false, contentDispositionFilename = null) {\n this.length = length;\n this.initialData = initialData;\n this.progressiveDone = progressiveDone;\n this.contentDispositionFilename = contentDispositionFilename;\n this._rangeListeners = [];\n this._progressListeners = [];\n this._progressiveReadListeners = [];\n this._progressiveDoneListeners = [];\n this._readyCapability = Promise.withResolvers();\n }\n addRangeListener(listener) {\n this._rangeListeners.push(listener);\n }\n addProgressListener(listener) {\n this._progressListeners.push(listener);\n }\n addProgressiveReadListener(listener) {\n this._progressiveReadListeners.push(listener);\n }\n addProgressiveDoneListener(listener) {\n this._progressiveDoneListeners.push(listener);\n }\n onDataRange(begin, chunk) {\n for (const listener of this._rangeListeners) {\n listener(begin, chunk);\n }\n }\n onDataProgress(loaded, total) {\n this._readyCapability.promise.then(() => {\n for (const listener of this._progressListeners) {\n listener(loaded, total);\n }\n });\n }\n onDataProgressiveRead(chunk) {\n this._readyCapability.promise.then(() => {\n for (const listener of this._progressiveReadListeners) {\n listener(chunk);\n }\n });\n }\n onDataProgressiveDone() {\n this._readyCapability.promise.then(() => {\n for (const listener of this._progressiveDoneListeners) {\n listener();\n }\n });\n }\n transportReady() {\n this._readyCapability.resolve();\n }\n requestDataRange(begin, end) {\n unreachable(\"Abstract method PDFDataRangeTransport.requestDataRange\");\n }\n abort() {}\n}\nclass PDFDocumentProxy {\n constructor(pdfInfo, transport) {\n this._pdfInfo = pdfInfo;\n this._transport = transport;\n }\n get annotationStorage() {\n return this._transport.annotationStorage;\n }\n get filterFactory() {\n return this._transport.filterFactory;\n }\n get numPages() {\n return this._pdfInfo.numPages;\n }\n get fingerprints() {\n return this._pdfInfo.fingerprints;\n }\n get isPureXfa() {\n return shadow(this, \"isPureXfa\", !!this._transport._htmlForXfa);\n }\n get allXfaHtml() {\n return this._transport._htmlForXfa;\n }\n getPage(pageNumber) {\n return this._transport.getPage(pageNumber);\n }\n getPageIndex(ref) {\n return this._transport.getPageIndex(ref);\n }\n getDestinations() {\n return this._transport.getDestinations();\n }\n getDestination(id) {\n return this._transport.getDestination(id);\n }\n getPageLabels() {\n return this._transport.getPageLabels();\n }\n getPageLayout() {\n return this._transport.getPageLayout();\n }\n getPageMode() {\n return this._transport.getPageMode();\n }\n getViewerPreferences() {\n return this._transport.getViewerPreferences();\n }\n getOpenAction() {\n return this._transport.getOpenAction();\n }\n getAttachments() {\n return this._transport.getAttachments();\n }\n getJSActions() {\n return this._transport.getDocJSActions();\n }\n getOutline() {\n return this._transport.getOutline();\n }\n getOptionalContentConfig({\n intent = \"display\"\n } = {}) {\n const {\n renderingIntent\n } = this._transport.getRenderingIntent(intent);\n return this._transport.getOptionalContentConfig(renderingIntent);\n }\n getPermissions() {\n return this._transport.getPermissions();\n }\n getMetadata() {\n return this._transport.getMetadata();\n }\n getMarkInfo() {\n return this._transport.getMarkInfo();\n }\n getData() {\n return this._transport.getData();\n }\n saveDocument() {\n return this._transport.saveDocument();\n }\n getDownloadInfo() {\n return this._transport.downloadInfoCapability.promise;\n }\n cleanup(keepLoadedFonts = false) {\n return this._transport.startCleanup(keepLoadedFonts || this.isPureXfa);\n }\n destroy() {\n return this.loadingTask.destroy();\n }\n cachedPageNumber(ref) {\n return this._transport.cachedPageNumber(ref);\n }\n get loadingParams() {\n return this._transport.loadingParams;\n }\n get loadingTask() {\n return this._transport.loadingTask;\n }\n getFieldObjects() {\n return this._transport.getFieldObjects();\n }\n hasJSActions() {\n return this._transport.hasJSActions();\n }\n getCalculationOrderIds() {\n return this._transport.getCalculationOrderIds();\n }\n}\nclass PDFPageProxy {\n #delayedCleanupTimeout = null;\n #pendingCleanup = false;\n constructor(pageIndex, pageInfo, transport, pdfBug = false) {\n this._pageIndex = pageIndex;\n this._pageInfo = pageInfo;\n this._transport = transport;\n this._stats = pdfBug ? new StatTimer() : null;\n this._pdfBug = pdfBug;\n this.commonObjs = transport.commonObjs;\n this.objs = new PDFObjects();\n this._maybeCleanupAfterRender = false;\n this._intentStates = new Map();\n this.destroyed = false;\n }\n get pageNumber() {\n return this._pageIndex + 1;\n }\n get rotate() {\n return this._pageInfo.rotate;\n }\n get ref() {\n return this._pageInfo.ref;\n }\n get userUnit() {\n return this._pageInfo.userUnit;\n }\n get view() {\n return this._pageInfo.view;\n }\n getViewport({\n scale,\n rotation = this.rotate,\n offsetX = 0,\n offsetY = 0,\n dontFlip = false\n } = {}) {\n return new PageViewport({\n viewBox: this.view,\n scale,\n rotation,\n offsetX,\n offsetY,\n dontFlip\n });\n }\n getAnnotations({\n intent = \"display\"\n } = {}) {\n const {\n renderingIntent\n } = this._transport.getRenderingIntent(intent);\n return this._transport.getAnnotations(this._pageIndex, renderingIntent);\n }\n getJSActions() {\n return this._transport.getPageJSActions(this._pageIndex);\n }\n get filterFactory() {\n return this._transport.filterFactory;\n }\n get isPureXfa() {\n return shadow(this, \"isPureXfa\", !!this._transport._htmlForXfa);\n }\n async getXfa() {\n return this._transport._htmlForXfa?.children[this._pageIndex] || null;\n }\n render({\n canvasContext,\n viewport,\n intent = \"display\",\n annotationMode = AnnotationMode.ENABLE,\n transform = null,\n background = null,\n optionalContentConfigPromise = null,\n annotationCanvasMap = null,\n pageColors = null,\n printAnnotationStorage = null\n }) {\n this._stats?.time(\"Overall\");\n const intentArgs = this._transport.getRenderingIntent(intent, annotationMode, printAnnotationStorage);\n const {\n renderingIntent,\n cacheKey\n } = intentArgs;\n this.#pendingCleanup = false;\n this.#abortDelayedCleanup();\n optionalContentConfigPromise ||= this._transport.getOptionalContentConfig(renderingIntent);\n let intentState = this._intentStates.get(cacheKey);\n if (!intentState) {\n intentState = Object.create(null);\n this._intentStates.set(cacheKey, intentState);\n }\n if (intentState.streamReaderCancelTimeout) {\n clearTimeout(intentState.streamReaderCancelTimeout);\n intentState.streamReaderCancelTimeout = null;\n }\n const intentPrint = !!(renderingIntent & RenderingIntentFlag.PRINT);\n if (!intentState.displayReadyCapability) {\n intentState.displayReadyCapability = Promise.withResolvers();\n intentState.operatorList = {\n fnArray: [],\n argsArray: [],\n lastChunk: false,\n separateAnnots: null\n };\n this._stats?.time(\"Page Request\");\n this._pumpOperatorList(intentArgs);\n }\n const complete = error => {\n intentState.renderTasks.delete(internalRenderTask);\n if (this._maybeCleanupAfterRender || intentPrint) {\n this.#pendingCleanup = true;\n }\n this.#tryCleanup(!intentPrint);\n if (error) {\n internalRenderTask.capability.reject(error);\n this._abortOperatorList({\n intentState,\n reason: error instanceof Error ? error : new Error(error)\n });\n } else {\n internalRenderTask.capability.resolve();\n }\n if (this._stats) {\n this._stats.timeEnd(\"Rendering\");\n this._stats.timeEnd(\"Overall\");\n if (globalThis.Stats?.enabled) {\n globalThis.Stats.add(this.pageNumber, this._stats);\n }\n }\n };\n const internalRenderTask = new InternalRenderTask({\n callback: complete,\n params: {\n canvasContext,\n viewport,\n transform,\n background\n },\n objs: this.objs,\n commonObjs: this.commonObjs,\n annotationCanvasMap,\n operatorList: intentState.operatorList,\n pageIndex: this._pageIndex,\n canvasFactory: this._transport.canvasFactory,\n filterFactory: this._transport.filterFactory,\n useRequestAnimationFrame: !intentPrint,\n pdfBug: this._pdfBug,\n pageColors\n });\n (intentState.renderTasks ||= new Set()).add(internalRenderTask);\n const renderTask = internalRenderTask.task;\n Promise.all([intentState.displayReadyCapability.promise, optionalContentConfigPromise]).then(([transparency, optionalContentConfig]) => {\n if (this.destroyed) {\n complete();\n return;\n }\n this._stats?.time(\"Rendering\");\n if (!(optionalContentConfig.renderingIntent & renderingIntent)) {\n throw new Error(\"Must use the same `intent`-argument when calling the `PDFPageProxy.render` \" + \"and `PDFDocumentProxy.getOptionalContentConfig` methods.\");\n }\n internalRenderTask.initializeGraphics({\n transparency,\n optionalContentConfig\n });\n internalRenderTask.operatorListChanged();\n }).catch(complete);\n return renderTask;\n }\n getOperatorList({\n intent = \"display\",\n annotationMode = AnnotationMode.ENABLE,\n printAnnotationStorage = null\n } = {}) {\n function operatorListChanged() {\n if (intentState.operatorList.lastChunk) {\n intentState.opListReadCapability.resolve(intentState.operatorList);\n intentState.renderTasks.delete(opListTask);\n }\n }\n const intentArgs = this._transport.getRenderingIntent(intent, annotationMode, printAnnotationStorage, true);\n let intentState = this._intentStates.get(intentArgs.cacheKey);\n if (!intentState) {\n intentState = Object.create(null);\n this._intentStates.set(intentArgs.cacheKey, intentState);\n }\n let opListTask;\n if (!intentState.opListReadCapability) {\n opListTask = Object.create(null);\n opListTask.operatorListChanged = operatorListChanged;\n intentState.opListReadCapability = Promise.withResolvers();\n (intentState.renderTasks ||= new Set()).add(opListTask);\n intentState.operatorList = {\n fnArray: [],\n argsArray: [],\n lastChunk: false,\n separateAnnots: null\n };\n this._stats?.time(\"Page Request\");\n this._pumpOperatorList(intentArgs);\n }\n return intentState.opListReadCapability.promise;\n }\n streamTextContent({\n includeMarkedContent = false,\n disableNormalization = false\n } = {}) {\n const TEXT_CONTENT_CHUNK_SIZE = 100;\n return this._transport.messageHandler.sendWithStream(\"GetTextContent\", {\n pageIndex: this._pageIndex,\n includeMarkedContent: includeMarkedContent === true,\n disableNormalization: disableNormalization === true\n }, {\n highWaterMark: TEXT_CONTENT_CHUNK_SIZE,\n size(textContent) {\n return textContent.items.length;\n }\n });\n }\n getTextContent(params = {}) {\n if (this._transport._htmlForXfa) {\n return this.getXfa().then(xfa => XfaText.textContent(xfa));\n }\n const readableStream = this.streamTextContent(params);\n return new Promise(function (resolve, reject) {\n function pump() {\n reader.read().then(function ({\n value,\n done\n }) {\n if (done) {\n resolve(textContent);\n return;\n }\n textContent.lang ??= value.lang;\n Object.assign(textContent.styles, value.styles);\n textContent.items.push(...value.items);\n pump();\n }, reject);\n }\n const reader = readableStream.getReader();\n const textContent = {\n items: [],\n styles: Object.create(null),\n lang: null\n };\n pump();\n });\n }\n getStructTree() {\n return this._transport.getStructTree(this._pageIndex);\n }\n _destroy() {\n this.destroyed = true;\n const waitOn = [];\n for (const intentState of this._intentStates.values()) {\n this._abortOperatorList({\n intentState,\n reason: new Error(\"Page was destroyed.\"),\n force: true\n });\n if (intentState.opListReadCapability) {\n continue;\n }\n for (const internalRenderTask of intentState.renderTasks) {\n waitOn.push(internalRenderTask.completed);\n internalRenderTask.cancel();\n }\n }\n this.objs.clear();\n this.#pendingCleanup = false;\n this.#abortDelayedCleanup();\n return Promise.all(waitOn);\n }\n cleanup(resetStats = false) {\n this.#pendingCleanup = true;\n const success = this.#tryCleanup(false);\n if (resetStats && success) {\n this._stats &&= new StatTimer();\n }\n return success;\n }\n #tryCleanup(delayed = false) {\n this.#abortDelayedCleanup();\n if (!this.#pendingCleanup || this.destroyed) {\n return false;\n }\n if (delayed) {\n this.#delayedCleanupTimeout = setTimeout(() => {\n this.#delayedCleanupTimeout = null;\n this.#tryCleanup(false);\n }, DELAYED_CLEANUP_TIMEOUT);\n return false;\n }\n for (const {\n renderTasks,\n operatorList\n } of this._intentStates.values()) {\n if (renderTasks.size > 0 || !operatorList.lastChunk) {\n return false;\n }\n }\n this._intentStates.clear();\n this.objs.clear();\n this.#pendingCleanup = false;\n return true;\n }\n #abortDelayedCleanup() {\n if (this.#delayedCleanupTimeout) {\n clearTimeout(this.#delayedCleanupTimeout);\n this.#delayedCleanupTimeout = null;\n }\n }\n _startRenderPage(transparency, cacheKey) {\n const intentState = this._intentStates.get(cacheKey);\n if (!intentState) {\n return;\n }\n this._stats?.timeEnd(\"Page Request\");\n intentState.displayReadyCapability?.resolve(transparency);\n }\n _renderPageChunk(operatorListChunk, intentState) {\n for (let i = 0, ii = operatorListChunk.length; i < ii; i++) {\n intentState.operatorList.fnArray.push(operatorListChunk.fnArray[i]);\n intentState.operatorList.argsArray.push(operatorListChunk.argsArray[i]);\n }\n intentState.operatorList.lastChunk = operatorListChunk.lastChunk;\n intentState.operatorList.separateAnnots = operatorListChunk.separateAnnots;\n for (const internalRenderTask of intentState.renderTasks) {\n internalRenderTask.operatorListChanged();\n }\n if (operatorListChunk.lastChunk) {\n this.#tryCleanup(true);\n }\n }\n _pumpOperatorList({\n renderingIntent,\n cacheKey,\n annotationStorageSerializable\n }) {\n const {\n map,\n transfer\n } = annotationStorageSerializable;\n const readableStream = this._transport.messageHandler.sendWithStream(\"GetOperatorList\", {\n pageIndex: this._pageIndex,\n intent: renderingIntent,\n cacheKey,\n annotationStorage: map\n }, transfer);\n const reader = readableStream.getReader();\n const intentState = this._intentStates.get(cacheKey);\n intentState.streamReader = reader;\n const pump = () => {\n reader.read().then(({\n value,\n done\n }) => {\n if (done) {\n intentState.streamReader = null;\n return;\n }\n if (this._transport.destroyed) {\n return;\n }\n this._renderPageChunk(value, intentState);\n pump();\n }, reason => {\n intentState.streamReader = null;\n if (this._transport.destroyed) {\n return;\n }\n if (intentState.operatorList) {\n intentState.operatorList.lastChunk = true;\n for (const internalRenderTask of intentState.renderTasks) {\n internalRenderTask.operatorListChanged();\n }\n this.#tryCleanup(true);\n }\n if (intentState.displayReadyCapability) {\n intentState.displayReadyCapability.reject(reason);\n } else if (intentState.opListReadCapability) {\n intentState.opListReadCapability.reject(reason);\n } else {\n throw reason;\n }\n });\n };\n pump();\n }\n _abortOperatorList({\n intentState,\n reason,\n force = false\n }) {\n if (!intentState.streamReader) {\n return;\n }\n if (intentState.streamReaderCancelTimeout) {\n clearTimeout(intentState.streamReaderCancelTimeout);\n intentState.streamReaderCancelTimeout = null;\n }\n if (!force) {\n if (intentState.renderTasks.size > 0) {\n return;\n }\n if (reason instanceof RenderingCancelledException) {\n let delay = RENDERING_CANCELLED_TIMEOUT;\n if (reason.extraDelay > 0 && reason.extraDelay < 1000) {\n delay += reason.extraDelay;\n }\n intentState.streamReaderCancelTimeout = setTimeout(() => {\n intentState.streamReaderCancelTimeout = null;\n this._abortOperatorList({\n intentState,\n reason,\n force: true\n });\n }, delay);\n return;\n }\n }\n intentState.streamReader.cancel(new AbortException(reason.message)).catch(() => {});\n intentState.streamReader = null;\n if (this._transport.destroyed) {\n return;\n }\n for (const [curCacheKey, curIntentState] of this._intentStates) {\n if (curIntentState === intentState) {\n this._intentStates.delete(curCacheKey);\n break;\n }\n }\n this.cleanup();\n }\n get stats() {\n return this._stats;\n }\n}\nclass LoopbackPort {\n #listeners = new Set();\n #deferred = Promise.resolve();\n postMessage(obj, transfer) {\n const event = {\n data: structuredClone(obj, transfer ? {\n transfer\n } : null)\n };\n this.#deferred.then(() => {\n for (const listener of this.#listeners) {\n listener.call(this, event);\n }\n });\n }\n addEventListener(name, listener) {\n this.#listeners.add(listener);\n }\n removeEventListener(name, listener) {\n this.#listeners.delete(listener);\n }\n terminate() {\n this.#listeners.clear();\n }\n}\nconst PDFWorkerUtil = {\n isWorkerDisabled: false,\n fakeWorkerId: 0\n};\n{\n if (isNodeJS) {\n PDFWorkerUtil.isWorkerDisabled = true;\n GlobalWorkerOptions.workerSrc ||= \"./pdf.worker.mjs\";\n }\n PDFWorkerUtil.isSameOrigin = function (baseUrl, otherUrl) {\n let base;\n try {\n base = new URL(baseUrl);\n if (!base.origin || base.origin === \"null\") {\n return false;\n }\n } catch {\n return false;\n }\n const other = new URL(otherUrl, base);\n return base.origin === other.origin;\n };\n PDFWorkerUtil.createCDNWrapper = function (url) {\n const wrapper = `await import(\"${url}\");`;\n return URL.createObjectURL(new Blob([wrapper], {\n type: \"text/javascript\"\n }));\n };\n}\nclass PDFWorker {\n static #workerPorts;\n constructor({\n name = null,\n port = null,\n verbosity = getVerbosityLevel()\n } = {}) {\n this.name = name;\n this.destroyed = false;\n this.verbosity = verbosity;\n this._readyCapability = Promise.withResolvers();\n this._port = null;\n this._webWorker = null;\n this._messageHandler = null;\n if (port) {\n if (PDFWorker.#workerPorts?.has(port)) {\n throw new Error(\"Cannot use more than one PDFWorker per port.\");\n }\n (PDFWorker.#workerPorts ||= new WeakMap()).set(port, this);\n this._initializeFromPort(port);\n return;\n }\n this._initialize();\n }\n get promise() {\n if (isNodeJS) {\n return Promise.all([NodePackages.promise, this._readyCapability.promise]);\n }\n return this._readyCapability.promise;\n }\n #resolve() {\n this._readyCapability.resolve();\n this._messageHandler.send(\"configure\", {\n verbosity: this.verbosity\n });\n }\n get port() {\n return this._port;\n }\n get messageHandler() {\n return this._messageHandler;\n }\n _initializeFromPort(port) {\n this._port = port;\n this._messageHandler = new MessageHandler(\"main\", \"worker\", port);\n this._messageHandler.on(\"ready\", function () {});\n this.#resolve();\n }\n _initialize() {\n if (PDFWorkerUtil.isWorkerDisabled || PDFWorker.#mainThreadWorkerMessageHandler) {\n this._setupFakeWorker();\n return;\n }\n let {\n workerSrc\n } = PDFWorker;\n try {\n if (!PDFWorkerUtil.isSameOrigin(window.location.href, workerSrc)) {\n workerSrc = PDFWorkerUtil.createCDNWrapper(new URL(workerSrc, window.location).href);\n }\n const worker = new Worker(workerSrc, {\n type: \"module\"\n });\n const messageHandler = new MessageHandler(\"main\", \"worker\", worker);\n const terminateEarly = () => {\n ac.abort();\n messageHandler.destroy();\n worker.terminate();\n if (this.destroyed) {\n this._readyCapability.reject(new Error(\"Worker was destroyed\"));\n } else {\n this._setupFakeWorker();\n }\n };\n const ac = new AbortController();\n worker.addEventListener(\"error\", () => {\n if (!this._webWorker) {\n terminateEarly();\n }\n }, {\n signal: ac.signal\n });\n messageHandler.on(\"test\", data => {\n ac.abort();\n if (this.destroyed || !data) {\n terminateEarly();\n return;\n }\n this._messageHandler = messageHandler;\n this._port = worker;\n this._webWorker = worker;\n this.#resolve();\n });\n messageHandler.on(\"ready\", data => {\n ac.abort();\n if (this.destroyed) {\n terminateEarly();\n return;\n }\n try {\n sendTest();\n } catch {\n this._setupFakeWorker();\n }\n });\n const sendTest = () => {\n const testObj = new Uint8Array();\n messageHandler.send(\"test\", testObj, [testObj.buffer]);\n };\n sendTest();\n return;\n } catch {\n info(\"The worker has been disabled.\");\n }\n this._setupFakeWorker();\n }\n _setupFakeWorker() {\n if (!PDFWorkerUtil.isWorkerDisabled) {\n warn(\"Setting up fake worker.\");\n PDFWorkerUtil.isWorkerDisabled = true;\n }\n PDFWorker._setupFakeWorkerGlobal.then(WorkerMessageHandler => {\n if (this.destroyed) {\n this._readyCapability.reject(new Error(\"Worker was destroyed\"));\n return;\n }\n const port = new LoopbackPort();\n this._port = port;\n const id = `fake${PDFWorkerUtil.fakeWorkerId++}`;\n const workerHandler = new MessageHandler(id + \"_worker\", id, port);\n WorkerMessageHandler.setup(workerHandler, port);\n this._messageHandler = new MessageHandler(id, id + \"_worker\", port);\n this.#resolve();\n }).catch(reason => {\n this._readyCapability.reject(new Error(`Setting up fake worker failed: \"${reason.message}\".`));\n });\n }\n destroy() {\n this.destroyed = true;\n if (this._webWorker) {\n this._webWorker.terminate();\n this._webWorker = null;\n }\n PDFWorker.#workerPorts?.delete(this._port);\n this._port = null;\n if (this._messageHandler) {\n this._messageHandler.destroy();\n this._messageHandler = null;\n }\n }\n static fromPort(params) {\n if (!params?.port) {\n throw new Error(\"PDFWorker.fromPort - invalid method signature.\");\n }\n const cachedPort = this.#workerPorts?.get(params.port);\n if (cachedPort) {\n if (cachedPort._pendingDestroy) {\n throw new Error(\"PDFWorker.fromPort - the worker is being destroyed.\\n\" + \"Please remember to await `PDFDocumentLoadingTask.destroy()`-calls.\");\n }\n return cachedPort;\n }\n return new PDFWorker(params);\n }\n static get workerSrc() {\n if (GlobalWorkerOptions.workerSrc) {\n return GlobalWorkerOptions.workerSrc;\n }\n throw new Error('No \"GlobalWorkerOptions.workerSrc\" specified.');\n }\n static get #mainThreadWorkerMessageHandler() {\n try {\n return globalThis.pdfjsWorker?.WorkerMessageHandler || null;\n } catch {\n return null;\n }\n }\n static get _setupFakeWorkerGlobal() {\n const loader = async () => {\n if (this.#mainThreadWorkerMessageHandler) {\n return this.#mainThreadWorkerMessageHandler;\n }\n const worker = await import( /*webpackIgnore: true*/this.workerSrc);\n return worker.WorkerMessageHandler;\n };\n return shadow(this, \"_setupFakeWorkerGlobal\", loader());\n }\n}\nclass WorkerTransport {\n #methodPromises = new Map();\n #pageCache = new Map();\n #pagePromises = new Map();\n #pageRefCache = new Map();\n #passwordCapability = null;\n constructor(messageHandler, loadingTask, networkStream, params, factory) {\n this.messageHandler = messageHandler;\n this.loadingTask = loadingTask;\n this.commonObjs = new PDFObjects();\n this.fontLoader = new FontLoader({\n ownerDocument: params.ownerDocument,\n styleElement: params.styleElement\n });\n this.loadingParams = params.loadingParams;\n this._params = params;\n this.canvasFactory = factory.canvasFactory;\n this.filterFactory = factory.filterFactory;\n this.cMapReaderFactory = factory.cMapReaderFactory;\n this.standardFontDataFactory = factory.standardFontDataFactory;\n this.destroyed = false;\n this.destroyCapability = null;\n this._networkStream = networkStream;\n this._fullReader = null;\n this._lastProgress = null;\n this.downloadInfoCapability = Promise.withResolvers();\n this.setupMessageHandler();\n }\n #cacheSimpleMethod(name, data = null) {\n const cachedPromise = this.#methodPromises.get(name);\n if (cachedPromise) {\n return cachedPromise;\n }\n const promise = this.messageHandler.sendWithPromise(name, data);\n this.#methodPromises.set(name, promise);\n return promise;\n }\n get annotationStorage() {\n return shadow(this, \"annotationStorage\", new AnnotationStorage());\n }\n getRenderingIntent(intent, annotationMode = AnnotationMode.ENABLE, printAnnotationStorage = null, isOpList = false) {\n let renderingIntent = RenderingIntentFlag.DISPLAY;\n let annotationStorageSerializable = SerializableEmpty;\n switch (intent) {\n case \"any\":\n renderingIntent = RenderingIntentFlag.ANY;\n break;\n case \"display\":\n break;\n case \"print\":\n renderingIntent = RenderingIntentFlag.PRINT;\n break;\n default:\n warn(`getRenderingIntent - invalid intent: ${intent}`);\n }\n switch (annotationMode) {\n case AnnotationMode.DISABLE:\n renderingIntent += RenderingIntentFlag.ANNOTATIONS_DISABLE;\n break;\n case AnnotationMode.ENABLE:\n break;\n case AnnotationMode.ENABLE_FORMS:\n renderingIntent += RenderingIntentFlag.ANNOTATIONS_FORMS;\n break;\n case AnnotationMode.ENABLE_STORAGE:\n renderingIntent += RenderingIntentFlag.ANNOTATIONS_STORAGE;\n const annotationStorage = renderingIntent & RenderingIntentFlag.PRINT && printAnnotationStorage instanceof PrintAnnotationStorage ? printAnnotationStorage : this.annotationStorage;\n annotationStorageSerializable = annotationStorage.serializable;\n break;\n default:\n warn(`getRenderingIntent - invalid annotationMode: ${annotationMode}`);\n }\n if (isOpList) {\n renderingIntent += RenderingIntentFlag.OPLIST;\n }\n return {\n renderingIntent,\n cacheKey: `${renderingIntent}_${annotationStorageSerializable.hash}`,\n annotationStorageSerializable\n };\n }\n destroy() {\n if (this.destroyCapability) {\n return this.destroyCapability.promise;\n }\n this.destroyed = true;\n this.destroyCapability = Promise.withResolvers();\n this.#passwordCapability?.reject(new Error(\"Worker was destroyed during onPassword callback\"));\n const waitOn = [];\n for (const page of this.#pageCache.values()) {\n waitOn.push(page._destroy());\n }\n this.#pageCache.clear();\n this.#pagePromises.clear();\n this.#pageRefCache.clear();\n if (this.hasOwnProperty(\"annotationStorage\")) {\n this.annotationStorage.resetModified();\n }\n const terminated = this.messageHandler.sendWithPromise(\"Terminate\", null);\n waitOn.push(terminated);\n Promise.all(waitOn).then(() => {\n this.commonObjs.clear();\n this.fontLoader.clear();\n this.#methodPromises.clear();\n this.filterFactory.destroy();\n TextLayer.cleanup();\n this._networkStream?.cancelAllRequests(new AbortException(\"Worker was terminated.\"));\n if (this.messageHandler) {\n this.messageHandler.destroy();\n this.messageHandler = null;\n }\n this.destroyCapability.resolve();\n }, this.destroyCapability.reject);\n return this.destroyCapability.promise;\n }\n setupMessageHandler() {\n const {\n messageHandler,\n loadingTask\n } = this;\n messageHandler.on(\"GetReader\", (data, sink) => {\n assert(this._networkStream, \"GetReader - no `IPDFStream` instance available.\");\n this._fullReader = this._networkStream.getFullReader();\n this._fullReader.onProgress = evt => {\n this._lastProgress = {\n loaded: evt.loaded,\n total: evt.total\n };\n };\n sink.onPull = () => {\n this._fullReader.read().then(function ({\n value,\n done\n }) {\n if (done) {\n sink.close();\n return;\n }\n assert(value instanceof ArrayBuffer, \"GetReader - expected an ArrayBuffer.\");\n sink.enqueue(new Uint8Array(value), 1, [value]);\n }).catch(reason => {\n sink.error(reason);\n });\n };\n sink.onCancel = reason => {\n this._fullReader.cancel(reason);\n sink.ready.catch(readyReason => {\n if (this.destroyed) {\n return;\n }\n throw readyReason;\n });\n };\n });\n messageHandler.on(\"ReaderHeadersReady\", data => {\n const headersCapability = Promise.withResolvers();\n const fullReader = this._fullReader;\n fullReader.headersReady.then(() => {\n if (!fullReader.isStreamingSupported || !fullReader.isRangeSupported) {\n if (this._lastProgress) {\n loadingTask.onProgress?.(this._lastProgress);\n }\n fullReader.onProgress = evt => {\n loadingTask.onProgress?.({\n loaded: evt.loaded,\n total: evt.total\n });\n };\n }\n headersCapability.resolve({\n isStreamingSupported: fullReader.isStreamingSupported,\n isRangeSupported: fullReader.isRangeSupported,\n contentLength: fullReader.contentLength\n });\n }, headersCapability.reject);\n return headersCapability.promise;\n });\n messageHandler.on(\"GetRangeReader\", (data, sink) => {\n assert(this._networkStream, \"GetRangeReader - no `IPDFStream` instance available.\");\n const rangeReader = this._networkStream.getRangeReader(data.begin, data.end);\n if (!rangeReader) {\n sink.close();\n return;\n }\n sink.onPull = () => {\n rangeReader.read().then(function ({\n value,\n done\n }) {\n if (done) {\n sink.close();\n return;\n }\n assert(value instanceof ArrayBuffer, \"GetRangeReader - expected an ArrayBuffer.\");\n sink.enqueue(new Uint8Array(value), 1, [value]);\n }).catch(reason => {\n sink.error(reason);\n });\n };\n sink.onCancel = reason => {\n rangeReader.cancel(reason);\n sink.ready.catch(readyReason => {\n if (this.destroyed) {\n return;\n }\n throw readyReason;\n });\n };\n });\n messageHandler.on(\"GetDoc\", ({\n pdfInfo\n }) => {\n this._numPages = pdfInfo.numPages;\n this._htmlForXfa = pdfInfo.htmlForXfa;\n delete pdfInfo.htmlForXfa;\n loadingTask._capability.resolve(new PDFDocumentProxy(pdfInfo, this));\n });\n messageHandler.on(\"DocException\", function (ex) {\n let reason;\n switch (ex.name) {\n case \"PasswordException\":\n reason = new PasswordException(ex.message, ex.code);\n break;\n case \"InvalidPDFException\":\n reason = new InvalidPDFException(ex.message);\n break;\n case \"MissingPDFException\":\n reason = new MissingPDFException(ex.message);\n break;\n case \"UnexpectedResponseException\":\n reason = new UnexpectedResponseException(ex.message, ex.status);\n break;\n case \"UnknownErrorException\":\n reason = new UnknownErrorException(ex.message, ex.details);\n break;\n default:\n unreachable(\"DocException - expected a valid Error.\");\n }\n loadingTask._capability.reject(reason);\n });\n messageHandler.on(\"PasswordRequest\", exception => {\n this.#passwordCapability = Promise.withResolvers();\n if (loadingTask.onPassword) {\n const updatePassword = password => {\n if (password instanceof Error) {\n this.#passwordCapability.reject(password);\n } else {\n this.#passwordCapability.resolve({\n password\n });\n }\n };\n try {\n loadingTask.onPassword(updatePassword, exception.code);\n } catch (ex) {\n this.#passwordCapability.reject(ex);\n }\n } else {\n this.#passwordCapability.reject(new PasswordException(exception.message, exception.code));\n }\n return this.#passwordCapability.promise;\n });\n messageHandler.on(\"DataLoaded\", data => {\n loadingTask.onProgress?.({\n loaded: data.length,\n total: data.length\n });\n this.downloadInfoCapability.resolve(data);\n });\n messageHandler.on(\"StartRenderPage\", data => {\n if (this.destroyed) {\n return;\n }\n const page = this.#pageCache.get(data.pageIndex);\n page._startRenderPage(data.transparency, data.cacheKey);\n });\n messageHandler.on(\"commonobj\", ([id, type, exportedData]) => {\n if (this.destroyed) {\n return null;\n }\n if (this.commonObjs.has(id)) {\n return null;\n }\n switch (type) {\n case \"Font\":\n const {\n disableFontFace,\n fontExtraProperties,\n pdfBug\n } = this._params;\n if (\"error\" in exportedData) {\n const exportedError = exportedData.error;\n warn(`Error during font loading: ${exportedError}`);\n this.commonObjs.resolve(id, exportedError);\n break;\n }\n const inspectFont = pdfBug && globalThis.FontInspector?.enabled ? (font, url) => globalThis.FontInspector.fontAdded(font, url) : null;\n const font = new FontFaceObject(exportedData, {\n disableFontFace,\n inspectFont\n });\n this.fontLoader.bind(font).catch(() => messageHandler.sendWithPromise(\"FontFallback\", {\n id\n })).finally(() => {\n if (!fontExtraProperties && font.data) {\n font.data = null;\n }\n this.commonObjs.resolve(id, font);\n });\n break;\n case \"CopyLocalImage\":\n const {\n imageRef\n } = exportedData;\n assert(imageRef, \"The imageRef must be defined.\");\n for (const pageProxy of this.#pageCache.values()) {\n for (const [, data] of pageProxy.objs) {\n if (data?.ref !== imageRef) {\n continue;\n }\n if (!data.dataLen) {\n return null;\n }\n this.commonObjs.resolve(id, structuredClone(data));\n return data.dataLen;\n }\n }\n break;\n case \"FontPath\":\n case \"Image\":\n case \"Pattern\":\n this.commonObjs.resolve(id, exportedData);\n break;\n default:\n throw new Error(`Got unknown common object type ${type}`);\n }\n return null;\n });\n messageHandler.on(\"obj\", ([id, pageIndex, type, imageData]) => {\n if (this.destroyed) {\n return;\n }\n const pageProxy = this.#pageCache.get(pageIndex);\n if (pageProxy.objs.has(id)) {\n return;\n }\n if (pageProxy._intentStates.size === 0) {\n imageData?.bitmap?.close();\n return;\n }\n switch (type) {\n case \"Image\":\n pageProxy.objs.resolve(id, imageData);\n if (imageData?.dataLen > MAX_IMAGE_SIZE_TO_CACHE) {\n pageProxy._maybeCleanupAfterRender = true;\n }\n break;\n case \"Pattern\":\n pageProxy.objs.resolve(id, imageData);\n break;\n default:\n throw new Error(`Got unknown object type ${type}`);\n }\n });\n messageHandler.on(\"DocProgress\", data => {\n if (this.destroyed) {\n return;\n }\n loadingTask.onProgress?.({\n loaded: data.loaded,\n total: data.total\n });\n });\n messageHandler.on(\"FetchBuiltInCMap\", data => {\n if (this.destroyed) {\n return Promise.reject(new Error(\"Worker was destroyed.\"));\n }\n if (!this.cMapReaderFactory) {\n return Promise.reject(new Error(\"CMapReaderFactory not initialized, see the `useWorkerFetch` parameter.\"));\n }\n return this.cMapReaderFactory.fetch(data);\n });\n messageHandler.on(\"FetchStandardFontData\", data => {\n if (this.destroyed) {\n return Promise.reject(new Error(\"Worker was destroyed.\"));\n }\n if (!this.standardFontDataFactory) {\n return Promise.reject(new Error(\"StandardFontDataFactory not initialized, see the `useWorkerFetch` parameter.\"));\n }\n return this.standardFontDataFactory.fetch(data);\n });\n }\n getData() {\n return this.messageHandler.sendWithPromise(\"GetData\", null);\n }\n saveDocument() {\n if (this.annotationStorage.size <= 0) {\n warn(\"saveDocument called while `annotationStorage` is empty, \" + \"please use the getData-method instead.\");\n }\n const {\n map,\n transfer\n } = this.annotationStorage.serializable;\n return this.messageHandler.sendWithPromise(\"SaveDocument\", {\n isPureXfa: !!this._htmlForXfa,\n numPages: this._numPages,\n annotationStorage: map,\n filename: this._fullReader?.filename ?? null\n }, transfer).finally(() => {\n this.annotationStorage.resetModified();\n });\n }\n getPage(pageNumber) {\n if (!Number.isInteger(pageNumber) || pageNumber <= 0 || pageNumber > this._numPages) {\n return Promise.reject(new Error(\"Invalid page request.\"));\n }\n const pageIndex = pageNumber - 1,\n cachedPromise = this.#pagePromises.get(pageIndex);\n if (cachedPromise) {\n return cachedPromise;\n }\n const promise = this.messageHandler.sendWithPromise(\"GetPage\", {\n pageIndex\n }).then(pageInfo => {\n if (this.destroyed) {\n throw new Error(\"Transport destroyed\");\n }\n if (pageInfo.refStr) {\n this.#pageRefCache.set(pageInfo.refStr, pageNumber);\n }\n const page = new PDFPageProxy(pageIndex, pageInfo, this, this._params.pdfBug);\n this.#pageCache.set(pageIndex, page);\n return page;\n });\n this.#pagePromises.set(pageIndex, promise);\n return promise;\n }\n getPageIndex(ref) {\n if (!isRefProxy(ref)) {\n return Promise.reject(new Error(\"Invalid pageIndex request.\"));\n }\n return this.messageHandler.sendWithPromise(\"GetPageIndex\", {\n num: ref.num,\n gen: ref.gen\n });\n }\n getAnnotations(pageIndex, intent) {\n return this.messageHandler.sendWithPromise(\"GetAnnotations\", {\n pageIndex,\n intent\n });\n }\n getFieldObjects() {\n return this.#cacheSimpleMethod(\"GetFieldObjects\");\n }\n hasJSActions() {\n return this.#cacheSimpleMethod(\"HasJSActions\");\n }\n getCalculationOrderIds() {\n return this.messageHandler.sendWithPromise(\"GetCalculationOrderIds\", null);\n }\n getDestinations() {\n return this.messageHandler.sendWithPromise(\"GetDestinations\", null);\n }\n getDestination(id) {\n if (typeof id !== \"string\") {\n return Promise.reject(new Error(\"Invalid destination request.\"));\n }\n return this.messageHandler.sendWithPromise(\"GetDestination\", {\n id\n });\n }\n getPageLabels() {\n return this.messageHandler.sendWithPromise(\"GetPageLabels\", null);\n }\n getPageLayout() {\n return this.messageHandler.sendWithPromise(\"GetPageLayout\", null);\n }\n getPageMode() {\n return this.messageHandler.sendWithPromise(\"GetPageMode\", null);\n }\n getViewerPreferences() {\n return this.messageHandler.sendWithPromise(\"GetViewerPreferences\", null);\n }\n getOpenAction() {\n return this.messageHandler.sendWithPromise(\"GetOpenAction\", null);\n }\n getAttachments() {\n return this.messageHandler.sendWithPromise(\"GetAttachments\", null);\n }\n getDocJSActions() {\n return this.#cacheSimpleMethod(\"GetDocJSActions\");\n }\n getPageJSActions(pageIndex) {\n return this.messageHandler.sendWithPromise(\"GetPageJSActions\", {\n pageIndex\n });\n }\n getStructTree(pageIndex) {\n return this.messageHandler.sendWithPromise(\"GetStructTree\", {\n pageIndex\n });\n }\n getOutline() {\n return this.messageHandler.sendWithPromise(\"GetOutline\", null);\n }\n getOptionalContentConfig(renderingIntent) {\n return this.#cacheSimpleMethod(\"GetOptionalContentConfig\").then(data => new OptionalContentConfig(data, renderingIntent));\n }\n getPermissions() {\n return this.messageHandler.sendWithPromise(\"GetPermissions\", null);\n }\n getMetadata() {\n const name = \"GetMetadata\",\n cachedPromise = this.#methodPromises.get(name);\n if (cachedPromise) {\n return cachedPromise;\n }\n const promise = this.messageHandler.sendWithPromise(name, null).then(results => ({\n info: results[0],\n metadata: results[1] ? new Metadata(results[1]) : null,\n contentDispositionFilename: this._fullReader?.filename ?? null,\n contentLength: this._fullReader?.contentLength ?? null\n }));\n this.#methodPromises.set(name, promise);\n return promise;\n }\n getMarkInfo() {\n return this.messageHandler.sendWithPromise(\"GetMarkInfo\", null);\n }\n async startCleanup(keepLoadedFonts = false) {\n if (this.destroyed) {\n return;\n }\n await this.messageHandler.sendWithPromise(\"Cleanup\", null);\n for (const page of this.#pageCache.values()) {\n const cleanupSuccessful = page.cleanup();\n if (!cleanupSuccessful) {\n throw new Error(`startCleanup: Page ${page.pageNumber} is currently rendering.`);\n }\n }\n this.commonObjs.clear();\n if (!keepLoadedFonts) {\n this.fontLoader.clear();\n }\n this.#methodPromises.clear();\n this.filterFactory.destroy(true);\n TextLayer.cleanup();\n }\n cachedPageNumber(ref) {\n if (!isRefProxy(ref)) {\n return null;\n }\n const refStr = ref.gen === 0 ? `${ref.num}R` : `${ref.num}R${ref.gen}`;\n return this.#pageRefCache.get(refStr) ?? null;\n }\n}\nconst INITIAL_DATA = Symbol(\"INITIAL_DATA\");\nclass PDFObjects {\n #objs = Object.create(null);\n #ensureObj(objId) {\n return this.#objs[objId] ||= {\n ...Promise.withResolvers(),\n data: INITIAL_DATA\n };\n }\n get(objId, callback = null) {\n if (callback) {\n const obj = this.#ensureObj(objId);\n obj.promise.then(() => callback(obj.data));\n return null;\n }\n const obj = this.#objs[objId];\n if (!obj || obj.data === INITIAL_DATA) {\n throw new Error(`Requesting object that isn't resolved yet ${objId}.`);\n }\n return obj.data;\n }\n has(objId) {\n const obj = this.#objs[objId];\n return !!obj && obj.data !== INITIAL_DATA;\n }\n resolve(objId, data = null) {\n const obj = this.#ensureObj(objId);\n obj.data = data;\n obj.resolve();\n }\n clear() {\n for (const objId in this.#objs) {\n const {\n data\n } = this.#objs[objId];\n data?.bitmap?.close();\n }\n this.#objs = Object.create(null);\n }\n *[Symbol.iterator]() {\n for (const objId in this.#objs) {\n const {\n data\n } = this.#objs[objId];\n if (data === INITIAL_DATA) {\n continue;\n }\n yield [objId, data];\n }\n }\n}\nclass RenderTask {\n #internalRenderTask = null;\n constructor(internalRenderTask) {\n this.#internalRenderTask = internalRenderTask;\n this.onContinue = null;\n }\n get promise() {\n return this.#internalRenderTask.capability.promise;\n }\n cancel(extraDelay = 0) {\n this.#internalRenderTask.cancel(null, extraDelay);\n }\n get separateAnnots() {\n const {\n separateAnnots\n } = this.#internalRenderTask.operatorList;\n if (!separateAnnots) {\n return false;\n }\n const {\n annotationCanvasMap\n } = this.#internalRenderTask;\n return separateAnnots.form || separateAnnots.canvas && annotationCanvasMap?.size > 0;\n }\n}\nclass InternalRenderTask {\n #rAF = null;\n static #canvasInUse = new WeakSet();\n constructor({\n callback,\n params,\n objs,\n commonObjs,\n annotationCanvasMap,\n operatorList,\n pageIndex,\n canvasFactory,\n filterFactory,\n useRequestAnimationFrame = false,\n pdfBug = false,\n pageColors = null\n }) {\n this.callback = callback;\n this.params = params;\n this.objs = objs;\n this.commonObjs = commonObjs;\n this.annotationCanvasMap = annotationCanvasMap;\n this.operatorListIdx = null;\n this.operatorList = operatorList;\n this._pageIndex = pageIndex;\n this.canvasFactory = canvasFactory;\n this.filterFactory = filterFactory;\n this._pdfBug = pdfBug;\n this.pageColors = pageColors;\n this.running = false;\n this.graphicsReadyCallback = null;\n this.graphicsReady = false;\n this._useRequestAnimationFrame = useRequestAnimationFrame === true && typeof window !== \"undefined\";\n this.cancelled = false;\n this.capability = Promise.withResolvers();\n this.task = new RenderTask(this);\n this._cancelBound = this.cancel.bind(this);\n this._continueBound = this._continue.bind(this);\n this._scheduleNextBound = this._scheduleNext.bind(this);\n this._nextBound = this._next.bind(this);\n this._canvas = params.canvasContext.canvas;\n }\n get completed() {\n return this.capability.promise.catch(function () {});\n }\n initializeGraphics({\n transparency = false,\n optionalContentConfig\n }) {\n if (this.cancelled) {\n return;\n }\n if (this._canvas) {\n if (InternalRenderTask.#canvasInUse.has(this._canvas)) {\n throw new Error(\"Cannot use the same canvas during multiple render() operations. \" + \"Use different canvas or ensure previous operations were \" + \"cancelled or completed.\");\n }\n InternalRenderTask.#canvasInUse.add(this._canvas);\n }\n if (this._pdfBug && globalThis.StepperManager?.enabled) {\n this.stepper = globalThis.StepperManager.create(this._pageIndex);\n this.stepper.init(this.operatorList);\n this.stepper.nextBreakPoint = this.stepper.getNextBreakPoint();\n }\n const {\n canvasContext,\n viewport,\n transform,\n background\n } = this.params;\n this.gfx = new CanvasGraphics(canvasContext, this.commonObjs, this.objs, this.canvasFactory, this.filterFactory, {\n optionalContentConfig\n }, this.annotationCanvasMap, this.pageColors);\n this.gfx.beginDrawing({\n transform,\n viewport,\n transparency,\n background\n });\n this.operatorListIdx = 0;\n this.graphicsReady = true;\n this.graphicsReadyCallback?.();\n }\n cancel(error = null, extraDelay = 0) {\n this.running = false;\n this.cancelled = true;\n this.gfx?.endDrawing();\n if (this.#rAF) {\n window.cancelAnimationFrame(this.#rAF);\n this.#rAF = null;\n }\n InternalRenderTask.#canvasInUse.delete(this._canvas);\n this.callback(error || new RenderingCancelledException(`Rendering cancelled, page ${this._pageIndex + 1}`, extraDelay));\n }\n operatorListChanged() {\n if (!this.graphicsReady) {\n this.graphicsReadyCallback ||= this._continueBound;\n return;\n }\n this.stepper?.updateOperatorList(this.operatorList);\n if (this.running) {\n return;\n }\n this._continue();\n }\n _continue() {\n this.running = true;\n if (this.cancelled) {\n return;\n }\n if (this.task.onContinue) {\n this.task.onContinue(this._scheduleNextBound);\n } else {\n this._scheduleNext();\n }\n }\n _scheduleNext() {\n if (this._useRequestAnimationFrame) {\n this.#rAF = window.requestAnimationFrame(() => {\n this.#rAF = null;\n this._nextBound().catch(this._cancelBound);\n });\n } else {\n Promise.resolve().then(this._nextBound).catch(this._cancelBound);\n }\n }\n async _next() {\n if (this.cancelled) {\n return;\n }\n this.operatorListIdx = this.gfx.executeOperatorList(this.operatorList, this.operatorListIdx, this._continueBound, this.stepper);\n if (this.operatorListIdx === this.operatorList.argsArray.length) {\n this.running = false;\n if (this.operatorList.lastChunk) {\n this.gfx.endDrawing();\n InternalRenderTask.#canvasInUse.delete(this._canvas);\n this.callback();\n }\n }\n }\n}\nconst version = \"4.4.168\";\nconst build = \"19fbc8998\";\n\n;// CONCATENATED MODULE: ./src/shared/scripting_utils.js\nfunction makeColorComp(n) {\n return Math.floor(Math.max(0, Math.min(1, n)) * 255).toString(16).padStart(2, \"0\");\n}\nfunction scaleAndClamp(x) {\n return Math.max(0, Math.min(255, 255 * x));\n}\nclass ColorConverters {\n static CMYK_G([c, y, m, k]) {\n return [\"G\", 1 - Math.min(1, 0.3 * c + 0.59 * m + 0.11 * y + k)];\n }\n static G_CMYK([g]) {\n return [\"CMYK\", 0, 0, 0, 1 - g];\n }\n static G_RGB([g]) {\n return [\"RGB\", g, g, g];\n }\n static G_rgb([g]) {\n g = scaleAndClamp(g);\n return [g, g, g];\n }\n static G_HTML([g]) {\n const G = makeColorComp(g);\n return `#${G}${G}${G}`;\n }\n static RGB_G([r, g, b]) {\n return [\"G\", 0.3 * r + 0.59 * g + 0.11 * b];\n }\n static RGB_rgb(color) {\n return color.map(scaleAndClamp);\n }\n static RGB_HTML(color) {\n return `#${color.map(makeColorComp).join(\"\")}`;\n }\n static T_HTML() {\n return \"#00000000\";\n }\n static T_rgb() {\n return [null];\n }\n static CMYK_RGB([c, y, m, k]) {\n return [\"RGB\", 1 - Math.min(1, c + k), 1 - Math.min(1, m + k), 1 - Math.min(1, y + k)];\n }\n static CMYK_rgb([c, y, m, k]) {\n return [scaleAndClamp(1 - Math.min(1, c + k)), scaleAndClamp(1 - Math.min(1, m + k)), scaleAndClamp(1 - Math.min(1, y + k))];\n }\n static CMYK_HTML(components) {\n const rgb = this.CMYK_RGB(components).slice(1);\n return this.RGB_HTML(rgb);\n }\n static RGB_CMYK([r, g, b]) {\n const c = 1 - r;\n const m = 1 - g;\n const y = 1 - b;\n const k = Math.min(c, m, y);\n return [\"CMYK\", c, m, y, k];\n }\n}\n\n;// CONCATENATED MODULE: ./src/display/xfa_layer.js\n\nclass XfaLayer {\n static setupStorage(html, id, element, storage, intent) {\n const storedData = storage.getValue(id, {\n value: null\n });\n switch (element.name) {\n case \"textarea\":\n if (storedData.value !== null) {\n html.textContent = storedData.value;\n }\n if (intent === \"print\") {\n break;\n }\n html.addEventListener(\"input\", event => {\n storage.setValue(id, {\n value: event.target.value\n });\n });\n break;\n case \"input\":\n if (element.attributes.type === \"radio\" || element.attributes.type === \"checkbox\") {\n if (storedData.value === element.attributes.xfaOn) {\n html.setAttribute(\"checked\", true);\n } else if (storedData.value === element.attributes.xfaOff) {\n html.removeAttribute(\"checked\");\n }\n if (intent === \"print\") {\n break;\n }\n html.addEventListener(\"change\", event => {\n storage.setValue(id, {\n value: event.target.checked ? event.target.getAttribute(\"xfaOn\") : event.target.getAttribute(\"xfaOff\")\n });\n });\n } else {\n if (storedData.value !== null) {\n html.setAttribute(\"value\", storedData.value);\n }\n if (intent === \"print\") {\n break;\n }\n html.addEventListener(\"input\", event => {\n storage.setValue(id, {\n value: event.target.value\n });\n });\n }\n break;\n case \"select\":\n if (storedData.value !== null) {\n html.setAttribute(\"value\", storedData.value);\n for (const option of element.children) {\n if (option.attributes.value === storedData.value) {\n option.attributes.selected = true;\n } else if (option.attributes.hasOwnProperty(\"selected\")) {\n delete option.attributes.selected;\n }\n }\n }\n html.addEventListener(\"input\", event => {\n const options = event.target.options;\n const value = options.selectedIndex === -1 ? \"\" : options[options.selectedIndex].value;\n storage.setValue(id, {\n value\n });\n });\n break;\n }\n }\n static setAttributes({\n html,\n element,\n storage = null,\n intent,\n linkService\n }) {\n const {\n attributes\n } = element;\n const isHTMLAnchorElement = html instanceof HTMLAnchorElement;\n if (attributes.type === \"radio\") {\n attributes.name = `${attributes.name}-${intent}`;\n }\n for (const [key, value] of Object.entries(attributes)) {\n if (value === null || value === undefined) {\n continue;\n }\n switch (key) {\n case \"class\":\n if (value.length) {\n html.setAttribute(key, value.join(\" \"));\n }\n break;\n case \"dataId\":\n break;\n case \"id\":\n html.setAttribute(\"data-element-id\", value);\n break;\n case \"style\":\n Object.assign(html.style, value);\n break;\n case \"textContent\":\n html.textContent = value;\n break;\n default:\n if (!isHTMLAnchorElement || key !== \"href\" && key !== \"newWindow\") {\n html.setAttribute(key, value);\n }\n }\n }\n if (isHTMLAnchorElement) {\n linkService.addLinkAttributes(html, attributes.href, attributes.newWindow);\n }\n if (storage && attributes.dataId) {\n this.setupStorage(html, attributes.dataId, element, storage);\n }\n }\n static render(parameters) {\n const storage = parameters.annotationStorage;\n const linkService = parameters.linkService;\n const root = parameters.xfaHtml;\n const intent = parameters.intent || \"display\";\n const rootHtml = document.createElement(root.name);\n if (root.attributes) {\n this.setAttributes({\n html: rootHtml,\n element: root,\n intent,\n linkService\n });\n }\n const isNotForRichText = intent !== \"richText\";\n const rootDiv = parameters.div;\n rootDiv.append(rootHtml);\n if (parameters.viewport) {\n const transform = `matrix(${parameters.viewport.transform.join(\",\")})`;\n rootDiv.style.transform = transform;\n }\n if (isNotForRichText) {\n rootDiv.setAttribute(\"class\", \"xfaLayer xfaFont\");\n }\n const textDivs = [];\n if (root.children.length === 0) {\n if (root.value) {\n const node = document.createTextNode(root.value);\n rootHtml.append(node);\n if (isNotForRichText && XfaText.shouldBuildText(root.name)) {\n textDivs.push(node);\n }\n }\n return {\n textDivs\n };\n }\n const stack = [[root, -1, rootHtml]];\n while (stack.length > 0) {\n const [parent, i, html] = stack.at(-1);\n if (i + 1 === parent.children.length) {\n stack.pop();\n continue;\n }\n const child = parent.children[++stack.at(-1)[1]];\n if (child === null) {\n continue;\n }\n const {\n name\n } = child;\n if (name === \"#text\") {\n const node = document.createTextNode(child.value);\n textDivs.push(node);\n html.append(node);\n continue;\n }\n const childHtml = child?.attributes?.xmlns ? document.createElementNS(child.attributes.xmlns, name) : document.createElement(name);\n html.append(childHtml);\n if (child.attributes) {\n this.setAttributes({\n html: childHtml,\n element: child,\n storage,\n intent,\n linkService\n });\n }\n if (child.children?.length > 0) {\n stack.push([child, -1, childHtml]);\n } else if (child.value) {\n const node = document.createTextNode(child.value);\n if (isNotForRichText && XfaText.shouldBuildText(name)) {\n textDivs.push(node);\n }\n childHtml.append(node);\n }\n }\n for (const el of rootDiv.querySelectorAll(\".xfaNonInteractive input, .xfaNonInteractive textarea\")) {\n el.setAttribute(\"readOnly\", true);\n }\n return {\n textDivs\n };\n }\n static update(parameters) {\n const transform = `matrix(${parameters.viewport.transform.join(\",\")})`;\n parameters.div.style.transform = transform;\n parameters.div.hidden = false;\n }\n}\n\n;// CONCATENATED MODULE: ./src/display/annotation_layer.js\n\n\n\n\n\nconst DEFAULT_TAB_INDEX = 1000;\nconst annotation_layer_DEFAULT_FONT_SIZE = 9;\nconst GetElementsByNameSet = new WeakSet();\nfunction getRectDims(rect) {\n return {\n width: rect[2] - rect[0],\n height: rect[3] - rect[1]\n };\n}\nclass AnnotationElementFactory {\n static create(parameters) {\n const subtype = parameters.data.annotationType;\n switch (subtype) {\n case AnnotationType.LINK:\n return new LinkAnnotationElement(parameters);\n case AnnotationType.TEXT:\n return new TextAnnotationElement(parameters);\n case AnnotationType.WIDGET:\n const fieldType = parameters.data.fieldType;\n switch (fieldType) {\n case \"Tx\":\n return new TextWidgetAnnotationElement(parameters);\n case \"Btn\":\n if (parameters.data.radioButton) {\n return new RadioButtonWidgetAnnotationElement(parameters);\n } else if (parameters.data.checkBox) {\n return new CheckboxWidgetAnnotationElement(parameters);\n }\n return new PushButtonWidgetAnnotationElement(parameters);\n case \"Ch\":\n return new ChoiceWidgetAnnotationElement(parameters);\n case \"Sig\":\n return new SignatureWidgetAnnotationElement(parameters);\n }\n return new WidgetAnnotationElement(parameters);\n case AnnotationType.POPUP:\n return new PopupAnnotationElement(parameters);\n case AnnotationType.FREETEXT:\n return new FreeTextAnnotationElement(parameters);\n case AnnotationType.LINE:\n return new LineAnnotationElement(parameters);\n case AnnotationType.SQUARE:\n return new SquareAnnotationElement(parameters);\n case AnnotationType.CIRCLE:\n return new CircleAnnotationElement(parameters);\n case AnnotationType.POLYLINE:\n return new PolylineAnnotationElement(parameters);\n case AnnotationType.CARET:\n return new CaretAnnotationElement(parameters);\n case AnnotationType.INK:\n return new InkAnnotationElement(parameters);\n case AnnotationType.POLYGON:\n return new PolygonAnnotationElement(parameters);\n case AnnotationType.HIGHLIGHT:\n return new HighlightAnnotationElement(parameters);\n case AnnotationType.UNDERLINE:\n return new UnderlineAnnotationElement(parameters);\n case AnnotationType.SQUIGGLY:\n return new SquigglyAnnotationElement(parameters);\n case AnnotationType.STRIKEOUT:\n return new StrikeOutAnnotationElement(parameters);\n case AnnotationType.STAMP:\n return new StampAnnotationElement(parameters);\n case AnnotationType.FILEATTACHMENT:\n return new FileAttachmentAnnotationElement(parameters);\n default:\n return new AnnotationElement(parameters);\n }\n }\n}\nclass AnnotationElement {\n #updates = null;\n #hasBorder = false;\n #popupElement = null;\n constructor(parameters, {\n isRenderable = false,\n ignoreBorder = false,\n createQuadrilaterals = false\n } = {}) {\n this.isRenderable = isRenderable;\n this.data = parameters.data;\n this.layer = parameters.layer;\n this.linkService = parameters.linkService;\n this.downloadManager = parameters.downloadManager;\n this.imageResourcesPath = parameters.imageResourcesPath;\n this.renderForms = parameters.renderForms;\n this.svgFactory = parameters.svgFactory;\n this.annotationStorage = parameters.annotationStorage;\n this.enableScripting = parameters.enableScripting;\n this.hasJSActions = parameters.hasJSActions;\n this._fieldObjects = parameters.fieldObjects;\n this.parent = parameters.parent;\n if (isRenderable) {\n this.container = this._createContainer(ignoreBorder);\n }\n if (createQuadrilaterals) {\n this._createQuadrilaterals();\n }\n }\n static _hasPopupData({\n titleObj,\n contentsObj,\n richText\n }) {\n return !!(titleObj?.str || contentsObj?.str || richText?.str);\n }\n get hasPopupData() {\n return AnnotationElement._hasPopupData(this.data);\n }\n updateEdited(params) {\n if (!this.container) {\n return;\n }\n this.#updates ||= {\n rect: this.data.rect.slice(0)\n };\n const {\n rect\n } = params;\n if (rect) {\n this.#setRectEdited(rect);\n }\n this.#popupElement?.popup.updateEdited(params);\n }\n resetEdited() {\n if (!this.#updates) {\n return;\n }\n this.#setRectEdited(this.#updates.rect);\n this.#popupElement?.popup.resetEdited();\n this.#updates = null;\n }\n #setRectEdited(rect) {\n const {\n container: {\n style\n },\n data: {\n rect: currentRect,\n rotation\n },\n parent: {\n viewport: {\n rawDims: {\n pageWidth,\n pageHeight,\n pageX,\n pageY\n }\n }\n }\n } = this;\n currentRect?.splice(0, 4, ...rect);\n const {\n width,\n height\n } = getRectDims(rect);\n style.left = `${100 * (rect[0] - pageX) / pageWidth}%`;\n style.top = `${100 * (pageHeight - rect[3] + pageY) / pageHeight}%`;\n if (rotation === 0) {\n style.width = `${100 * width / pageWidth}%`;\n style.height = `${100 * height / pageHeight}%`;\n } else {\n this.setRotation(rotation);\n }\n }\n _createContainer(ignoreBorder) {\n const {\n data,\n parent: {\n page,\n viewport\n }\n } = this;\n const container = document.createElement(\"section\");\n container.setAttribute(\"data-annotation-id\", data.id);\n if (!(this instanceof WidgetAnnotationElement)) {\n container.tabIndex = DEFAULT_TAB_INDEX;\n }\n const {\n style\n } = container;\n style.zIndex = this.parent.zIndex++;\n if (data.popupRef) {\n container.setAttribute(\"aria-haspopup\", \"dialog\");\n }\n if (data.alternativeText) {\n container.title = data.alternativeText;\n }\n if (data.noRotate) {\n container.classList.add(\"norotate\");\n }\n if (!data.rect || this instanceof PopupAnnotationElement) {\n const {\n rotation\n } = data;\n if (!data.hasOwnCanvas && rotation !== 0) {\n this.setRotation(rotation, container);\n }\n return container;\n }\n const {\n width,\n height\n } = getRectDims(data.rect);\n if (!ignoreBorder && data.borderStyle.width > 0) {\n style.borderWidth = `${data.borderStyle.width}px`;\n const horizontalRadius = data.borderStyle.horizontalCornerRadius;\n const verticalRadius = data.borderStyle.verticalCornerRadius;\n if (horizontalRadius > 0 || verticalRadius > 0) {\n const radius = `calc(${horizontalRadius}px * var(--scale-factor)) / calc(${verticalRadius}px * var(--scale-factor))`;\n style.borderRadius = radius;\n } else if (this instanceof RadioButtonWidgetAnnotationElement) {\n const radius = `calc(${width}px * var(--scale-factor)) / calc(${height}px * var(--scale-factor))`;\n style.borderRadius = radius;\n }\n switch (data.borderStyle.style) {\n case AnnotationBorderStyleType.SOLID:\n style.borderStyle = \"solid\";\n break;\n case AnnotationBorderStyleType.DASHED:\n style.borderStyle = \"dashed\";\n break;\n case AnnotationBorderStyleType.BEVELED:\n warn(\"Unimplemented border style: beveled\");\n break;\n case AnnotationBorderStyleType.INSET:\n warn(\"Unimplemented border style: inset\");\n break;\n case AnnotationBorderStyleType.UNDERLINE:\n style.borderBottomStyle = \"solid\";\n break;\n default:\n break;\n }\n const borderColor = data.borderColor || null;\n if (borderColor) {\n this.#hasBorder = true;\n style.borderColor = Util.makeHexColor(borderColor[0] | 0, borderColor[1] | 0, borderColor[2] | 0);\n } else {\n style.borderWidth = 0;\n }\n }\n const rect = Util.normalizeRect([data.rect[0], page.view[3] - data.rect[1] + page.view[1], data.rect[2], page.view[3] - data.rect[3] + page.view[1]]);\n const {\n pageWidth,\n pageHeight,\n pageX,\n pageY\n } = viewport.rawDims;\n style.left = `${100 * (rect[0] - pageX) / pageWidth}%`;\n style.top = `${100 * (rect[1] - pageY) / pageHeight}%`;\n const {\n rotation\n } = data;\n if (data.hasOwnCanvas || rotation === 0) {\n style.width = `${100 * width / pageWidth}%`;\n style.height = `${100 * height / pageHeight}%`;\n } else {\n this.setRotation(rotation, container);\n }\n return container;\n }\n setRotation(angle, container = this.container) {\n if (!this.data.rect) {\n return;\n }\n const {\n pageWidth,\n pageHeight\n } = this.parent.viewport.rawDims;\n const {\n width,\n height\n } = getRectDims(this.data.rect);\n let elementWidth, elementHeight;\n if (angle % 180 === 0) {\n elementWidth = 100 * width / pageWidth;\n elementHeight = 100 * height / pageHeight;\n } else {\n elementWidth = 100 * height / pageWidth;\n elementHeight = 100 * width / pageHeight;\n }\n container.style.width = `${elementWidth}%`;\n container.style.height = `${elementHeight}%`;\n container.setAttribute(\"data-main-rotation\", (360 - angle) % 360);\n }\n get _commonActions() {\n const setColor = (jsName, styleName, event) => {\n const color = event.detail[jsName];\n const colorType = color[0];\n const colorArray = color.slice(1);\n event.target.style[styleName] = ColorConverters[`${colorType}_HTML`](colorArray);\n this.annotationStorage.setValue(this.data.id, {\n [styleName]: ColorConverters[`${colorType}_rgb`](colorArray)\n });\n };\n return shadow(this, \"_commonActions\", {\n display: event => {\n const {\n display\n } = event.detail;\n const hidden = display % 2 === 1;\n this.container.style.visibility = hidden ? \"hidden\" : \"visible\";\n this.annotationStorage.setValue(this.data.id, {\n noView: hidden,\n noPrint: display === 1 || display === 2\n });\n },\n print: event => {\n this.annotationStorage.setValue(this.data.id, {\n noPrint: !event.detail.print\n });\n },\n hidden: event => {\n const {\n hidden\n } = event.detail;\n this.container.style.visibility = hidden ? \"hidden\" : \"visible\";\n this.annotationStorage.setValue(this.data.id, {\n noPrint: hidden,\n noView: hidden\n });\n },\n focus: event => {\n setTimeout(() => event.target.focus({\n preventScroll: false\n }), 0);\n },\n userName: event => {\n event.target.title = event.detail.userName;\n },\n readonly: event => {\n event.target.disabled = event.detail.readonly;\n },\n required: event => {\n this._setRequired(event.target, event.detail.required);\n },\n bgColor: event => {\n setColor(\"bgColor\", \"backgroundColor\", event);\n },\n fillColor: event => {\n setColor(\"fillColor\", \"backgroundColor\", event);\n },\n fgColor: event => {\n setColor(\"fgColor\", \"color\", event);\n },\n textColor: event => {\n setColor(\"textColor\", \"color\", event);\n },\n borderColor: event => {\n setColor(\"borderColor\", \"borderColor\", event);\n },\n strokeColor: event => {\n setColor(\"strokeColor\", \"borderColor\", event);\n },\n rotation: event => {\n const angle = event.detail.rotation;\n this.setRotation(angle);\n this.annotationStorage.setValue(this.data.id, {\n rotation: angle\n });\n }\n });\n }\n _dispatchEventFromSandbox(actions, jsEvent) {\n const commonActions = this._commonActions;\n for (const name of Object.keys(jsEvent.detail)) {\n const action = actions[name] || commonActions[name];\n action?.(jsEvent);\n }\n }\n _setDefaultPropertiesFromJS(element) {\n if (!this.enableScripting) {\n return;\n }\n const storedData = this.annotationStorage.getRawValue(this.data.id);\n if (!storedData) {\n return;\n }\n const commonActions = this._commonActions;\n for (const [actionName, detail] of Object.entries(storedData)) {\n const action = commonActions[actionName];\n if (action) {\n const eventProxy = {\n detail: {\n [actionName]: detail\n },\n target: element\n };\n action(eventProxy);\n delete storedData[actionName];\n }\n }\n }\n _createQuadrilaterals() {\n if (!this.container) {\n return;\n }\n const {\n quadPoints\n } = this.data;\n if (!quadPoints) {\n return;\n }\n const [rectBlX, rectBlY, rectTrX, rectTrY] = this.data.rect.map(x => Math.fround(x));\n if (quadPoints.length === 8) {\n const [trX, trY, blX, blY] = quadPoints.subarray(2, 6);\n if (rectTrX === trX && rectTrY === trY && rectBlX === blX && rectBlY === blY) {\n return;\n }\n }\n const {\n style\n } = this.container;\n let svgBuffer;\n if (this.#hasBorder) {\n const {\n borderColor,\n borderWidth\n } = style;\n style.borderWidth = 0;\n svgBuffer = [\"url('data:image/svg+xml;utf8,\", `<svg xmlns=\"http://www.w3.org/2000/svg\"`, ` preserveAspectRatio=\"none\" viewBox=\"0 0 1 1\">`, `<g fill=\"transparent\" stroke=\"${borderColor}\" stroke-width=\"${borderWidth}\">`];\n this.container.classList.add(\"hasBorder\");\n }\n const width = rectTrX - rectBlX;\n const height = rectTrY - rectBlY;\n const {\n svgFactory\n } = this;\n const svg = svgFactory.createElement(\"svg\");\n svg.classList.add(\"quadrilateralsContainer\");\n svg.setAttribute(\"width\", 0);\n svg.setAttribute(\"height\", 0);\n const defs = svgFactory.createElement(\"defs\");\n svg.append(defs);\n const clipPath = svgFactory.createElement(\"clipPath\");\n const id = `clippath_${this.data.id}`;\n clipPath.setAttribute(\"id\", id);\n clipPath.setAttribute(\"clipPathUnits\", \"objectBoundingBox\");\n defs.append(clipPath);\n for (let i = 2, ii = quadPoints.length; i < ii; i += 8) {\n const trX = quadPoints[i];\n const trY = quadPoints[i + 1];\n const blX = quadPoints[i + 2];\n const blY = quadPoints[i + 3];\n const rect = svgFactory.createElement(\"rect\");\n const x = (blX - rectBlX) / width;\n const y = (rectTrY - trY) / height;\n const rectWidth = (trX - blX) / width;\n const rectHeight = (trY - blY) / height;\n rect.setAttribute(\"x\", x);\n rect.setAttribute(\"y\", y);\n rect.setAttribute(\"width\", rectWidth);\n rect.setAttribute(\"height\", rectHeight);\n clipPath.append(rect);\n svgBuffer?.push(`<rect vector-effect=\"non-scaling-stroke\" x=\"${x}\" y=\"${y}\" width=\"${rectWidth}\" height=\"${rectHeight}\"/>`);\n }\n if (this.#hasBorder) {\n svgBuffer.push(`</g></svg>')`);\n style.backgroundImage = svgBuffer.join(\"\");\n }\n this.container.append(svg);\n this.container.style.clipPath = `url(#${id})`;\n }\n _createPopup() {\n const {\n container,\n data\n } = this;\n container.setAttribute(\"aria-haspopup\", \"dialog\");\n const popup = this.#popupElement = new PopupAnnotationElement({\n data: {\n color: data.color,\n titleObj: data.titleObj,\n modificationDate: data.modificationDate,\n contentsObj: data.contentsObj,\n richText: data.richText,\n parentRect: data.rect,\n borderStyle: 0,\n id: `popup_${data.id}`,\n rotation: data.rotation\n },\n parent: this.parent,\n elements: [this]\n });\n this.parent.div.append(popup.render());\n }\n render() {\n unreachable(\"Abstract method `AnnotationElement.render` called\");\n }\n _getElementsByName(name, skipId = null) {\n const fields = [];\n if (this._fieldObjects) {\n const fieldObj = this._fieldObjects[name];\n if (fieldObj) {\n for (const {\n page,\n id,\n exportValues\n } of fieldObj) {\n if (page === -1) {\n continue;\n }\n if (id === skipId) {\n continue;\n }\n const exportValue = typeof exportValues === \"string\" ? exportValues : null;\n const domElement = document.querySelector(`[data-element-id=\"${id}\"]`);\n if (domElement && !GetElementsByNameSet.has(domElement)) {\n warn(`_getElementsByName - element not allowed: ${id}`);\n continue;\n }\n fields.push({\n id,\n exportValue,\n domElement\n });\n }\n }\n return fields;\n }\n for (const domElement of document.getElementsByName(name)) {\n const {\n exportValue\n } = domElement;\n const id = domElement.getAttribute(\"data-element-id\");\n if (id === skipId) {\n continue;\n }\n if (!GetElementsByNameSet.has(domElement)) {\n continue;\n }\n fields.push({\n id,\n exportValue,\n domElement\n });\n }\n return fields;\n }\n show() {\n if (this.container) {\n this.container.hidden = false;\n }\n this.popup?.maybeShow();\n }\n hide() {\n if (this.container) {\n this.container.hidden = true;\n }\n this.popup?.forceHide();\n }\n getElementsToTriggerPopup() {\n return this.container;\n }\n addHighlightArea() {\n const triggers = this.getElementsToTriggerPopup();\n if (Array.isArray(triggers)) {\n for (const element of triggers) {\n element.classList.add(\"highlightArea\");\n }\n } else {\n triggers.classList.add(\"highlightArea\");\n }\n }\n get _isEditable() {\n return false;\n }\n _editOnDoubleClick() {\n if (!this._isEditable) {\n return;\n }\n const {\n annotationEditorType: mode,\n data: {\n id: editId\n }\n } = this;\n this.container.addEventListener(\"dblclick\", () => {\n this.linkService.eventBus?.dispatch(\"switchannotationeditormode\", {\n source: this,\n mode,\n editId\n });\n });\n }\n}\nclass LinkAnnotationElement extends AnnotationElement {\n constructor(parameters, options = null) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: !!options?.ignoreBorder,\n createQuadrilaterals: true\n });\n this.isTooltipOnly = parameters.data.isTooltipOnly;\n }\n render() {\n const {\n data,\n linkService\n } = this;\n const link = document.createElement(\"a\");\n link.setAttribute(\"data-element-id\", data.id);\n let isBound = false;\n if (data.url) {\n linkService.addLinkAttributes(link, data.url, data.newWindow);\n isBound = true;\n } else if (data.action) {\n this._bindNamedAction(link, data.action);\n isBound = true;\n } else if (data.attachment) {\n this.#bindAttachment(link, data.attachment, data.attachmentDest);\n isBound = true;\n } else if (data.setOCGState) {\n this.#bindSetOCGState(link, data.setOCGState);\n isBound = true;\n } else if (data.dest) {\n this._bindLink(link, data.dest);\n isBound = true;\n } else {\n if (data.actions && (data.actions.Action || data.actions[\"Mouse Up\"] || data.actions[\"Mouse Down\"]) && this.enableScripting && this.hasJSActions) {\n this._bindJSAction(link, data);\n isBound = true;\n }\n if (data.resetForm) {\n this._bindResetFormAction(link, data.resetForm);\n isBound = true;\n } else if (this.isTooltipOnly && !isBound) {\n this._bindLink(link, \"\");\n isBound = true;\n }\n }\n this.container.classList.add(\"linkAnnotation\");\n if (isBound) {\n this.container.append(link);\n }\n return this.container;\n }\n #setInternalLink() {\n this.container.setAttribute(\"data-internal-link\", \"\");\n }\n _bindLink(link, destination) {\n link.href = this.linkService.getDestinationHash(destination);\n link.onclick = () => {\n if (destination) {\n this.linkService.goToDestination(destination);\n }\n return false;\n };\n if (destination || destination === \"\") {\n this.#setInternalLink();\n }\n }\n _bindNamedAction(link, action) {\n link.href = this.linkService.getAnchorUrl(\"\");\n link.onclick = () => {\n this.linkService.executeNamedAction(action);\n return false;\n };\n this.#setInternalLink();\n }\n #bindAttachment(link, attachment, dest = null) {\n link.href = this.linkService.getAnchorUrl(\"\");\n if (attachment.description) {\n link.title = attachment.description;\n }\n link.onclick = () => {\n this.downloadManager?.openOrDownloadData(attachment.content, attachment.filename, dest);\n return false;\n };\n this.#setInternalLink();\n }\n #bindSetOCGState(link, action) {\n link.href = this.linkService.getAnchorUrl(\"\");\n link.onclick = () => {\n this.linkService.executeSetOCGState(action);\n return false;\n };\n this.#setInternalLink();\n }\n _bindJSAction(link, data) {\n link.href = this.linkService.getAnchorUrl(\"\");\n const map = new Map([[\"Action\", \"onclick\"], [\"Mouse Up\", \"onmouseup\"], [\"Mouse Down\", \"onmousedown\"]]);\n for (const name of Object.keys(data.actions)) {\n const jsName = map.get(name);\n if (!jsName) {\n continue;\n }\n link[jsName] = () => {\n this.linkService.eventBus?.dispatch(\"dispatcheventinsandbox\", {\n source: this,\n detail: {\n id: data.id,\n name\n }\n });\n return false;\n };\n }\n if (!link.onclick) {\n link.onclick = () => false;\n }\n this.#setInternalLink();\n }\n _bindResetFormAction(link, resetForm) {\n const otherClickAction = link.onclick;\n if (!otherClickAction) {\n link.href = this.linkService.getAnchorUrl(\"\");\n }\n this.#setInternalLink();\n if (!this._fieldObjects) {\n warn(`_bindResetFormAction - \"resetForm\" action not supported, ` + \"ensure that the `fieldObjects` parameter is provided.\");\n if (!otherClickAction) {\n link.onclick = () => false;\n }\n return;\n }\n link.onclick = () => {\n otherClickAction?.();\n const {\n fields: resetFormFields,\n refs: resetFormRefs,\n include\n } = resetForm;\n const allFields = [];\n if (resetFormFields.length !== 0 || resetFormRefs.length !== 0) {\n const fieldIds = new Set(resetFormRefs);\n for (const fieldName of resetFormFields) {\n const fields = this._fieldObjects[fieldName] || [];\n for (const {\n id\n } of fields) {\n fieldIds.add(id);\n }\n }\n for (const fields of Object.values(this._fieldObjects)) {\n for (const field of fields) {\n if (fieldIds.has(field.id) === include) {\n allFields.push(field);\n }\n }\n }\n } else {\n for (const fields of Object.values(this._fieldObjects)) {\n allFields.push(...fields);\n }\n }\n const storage = this.annotationStorage;\n const allIds = [];\n for (const field of allFields) {\n const {\n id\n } = field;\n allIds.push(id);\n switch (field.type) {\n case \"text\":\n {\n const value = field.defaultValue || \"\";\n storage.setValue(id, {\n value\n });\n break;\n }\n case \"checkbox\":\n case \"radiobutton\":\n {\n const value = field.defaultValue === field.exportValues;\n storage.setValue(id, {\n value\n });\n break;\n }\n case \"combobox\":\n case \"listbox\":\n {\n const value = field.defaultValue || \"\";\n storage.setValue(id, {\n value\n });\n break;\n }\n default:\n continue;\n }\n const domElement = document.querySelector(`[data-element-id=\"${id}\"]`);\n if (!domElement) {\n continue;\n } else if (!GetElementsByNameSet.has(domElement)) {\n warn(`_bindResetFormAction - element not allowed: ${id}`);\n continue;\n }\n domElement.dispatchEvent(new Event(\"resetform\"));\n }\n if (this.enableScripting) {\n this.linkService.eventBus?.dispatch(\"dispatcheventinsandbox\", {\n source: this,\n detail: {\n id: \"app\",\n ids: allIds,\n name: \"ResetForm\"\n }\n });\n }\n return false;\n };\n }\n}\nclass TextAnnotationElement extends AnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: true\n });\n }\n render() {\n this.container.classList.add(\"textAnnotation\");\n const image = document.createElement(\"img\");\n image.src = this.imageResourcesPath + \"annotation-\" + this.data.name.toLowerCase() + \".svg\";\n image.setAttribute(\"data-l10n-id\", \"pdfjs-text-annotation-type\");\n image.setAttribute(\"data-l10n-args\", JSON.stringify({\n type: this.data.name\n }));\n if (!this.data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n this.container.append(image);\n return this.container;\n }\n}\nclass WidgetAnnotationElement extends AnnotationElement {\n render() {\n return this.container;\n }\n showElementAndHideCanvas(element) {\n if (this.data.hasOwnCanvas) {\n if (element.previousSibling?.nodeName === \"CANVAS\") {\n element.previousSibling.hidden = true;\n }\n element.hidden = false;\n }\n }\n _getKeyModifier(event) {\n return util_FeatureTest.platform.isMac ? event.metaKey : event.ctrlKey;\n }\n _setEventListener(element, elementData, baseName, eventName, valueGetter) {\n if (baseName.includes(\"mouse\")) {\n element.addEventListener(baseName, event => {\n this.linkService.eventBus?.dispatch(\"dispatcheventinsandbox\", {\n source: this,\n detail: {\n id: this.data.id,\n name: eventName,\n value: valueGetter(event),\n shift: event.shiftKey,\n modifier: this._getKeyModifier(event)\n }\n });\n });\n } else {\n element.addEventListener(baseName, event => {\n if (baseName === \"blur\") {\n if (!elementData.focused || !event.relatedTarget) {\n return;\n }\n elementData.focused = false;\n } else if (baseName === \"focus\") {\n if (elementData.focused) {\n return;\n }\n elementData.focused = true;\n }\n if (!valueGetter) {\n return;\n }\n this.linkService.eventBus?.dispatch(\"dispatcheventinsandbox\", {\n source: this,\n detail: {\n id: this.data.id,\n name: eventName,\n value: valueGetter(event)\n }\n });\n });\n }\n }\n _setEventListeners(element, elementData, names, getter) {\n for (const [baseName, eventName] of names) {\n if (eventName === \"Action\" || this.data.actions?.[eventName]) {\n if (eventName === \"Focus\" || eventName === \"Blur\") {\n elementData ||= {\n focused: false\n };\n }\n this._setEventListener(element, elementData, baseName, eventName, getter);\n if (eventName === \"Focus\" && !this.data.actions?.Blur) {\n this._setEventListener(element, elementData, \"blur\", \"Blur\", null);\n } else if (eventName === \"Blur\" && !this.data.actions?.Focus) {\n this._setEventListener(element, elementData, \"focus\", \"Focus\", null);\n }\n }\n }\n }\n _setBackgroundColor(element) {\n const color = this.data.backgroundColor || null;\n element.style.backgroundColor = color === null ? \"transparent\" : Util.makeHexColor(color[0], color[1], color[2]);\n }\n _setTextStyle(element) {\n const TEXT_ALIGNMENT = [\"left\", \"center\", \"right\"];\n const {\n fontColor\n } = this.data.defaultAppearanceData;\n const fontSize = this.data.defaultAppearanceData.fontSize || annotation_layer_DEFAULT_FONT_SIZE;\n const style = element.style;\n let computedFontSize;\n const BORDER_SIZE = 2;\n const roundToOneDecimal = x => Math.round(10 * x) / 10;\n if (this.data.multiLine) {\n const height = Math.abs(this.data.rect[3] - this.data.rect[1] - BORDER_SIZE);\n const numberOfLines = Math.round(height / (LINE_FACTOR * fontSize)) || 1;\n const lineHeight = height / numberOfLines;\n computedFontSize = Math.min(fontSize, roundToOneDecimal(lineHeight / LINE_FACTOR));\n } else {\n const height = Math.abs(this.data.rect[3] - this.data.rect[1] - BORDER_SIZE);\n computedFontSize = Math.min(fontSize, roundToOneDecimal(height / LINE_FACTOR));\n }\n style.fontSize = `calc(${computedFontSize}px * var(--scale-factor))`;\n style.color = Util.makeHexColor(fontColor[0], fontColor[1], fontColor[2]);\n if (this.data.textAlignment !== null) {\n style.textAlign = TEXT_ALIGNMENT[this.data.textAlignment];\n }\n }\n _setRequired(element, isRequired) {\n if (isRequired) {\n element.setAttribute(\"required\", true);\n } else {\n element.removeAttribute(\"required\");\n }\n element.setAttribute(\"aria-required\", isRequired);\n }\n}\nclass TextWidgetAnnotationElement extends WidgetAnnotationElement {\n constructor(parameters) {\n const isRenderable = parameters.renderForms || parameters.data.hasOwnCanvas || !parameters.data.hasAppearance && !!parameters.data.fieldValue;\n super(parameters, {\n isRenderable\n });\n }\n setPropertyOnSiblings(base, key, value, keyInStorage) {\n const storage = this.annotationStorage;\n for (const element of this._getElementsByName(base.name, base.id)) {\n if (element.domElement) {\n element.domElement[key] = value;\n }\n storage.setValue(element.id, {\n [keyInStorage]: value\n });\n }\n }\n render() {\n const storage = this.annotationStorage;\n const id = this.data.id;\n this.container.classList.add(\"textWidgetAnnotation\");\n let element = null;\n if (this.renderForms) {\n const storedData = storage.getValue(id, {\n value: this.data.fieldValue\n });\n let textContent = storedData.value || \"\";\n const maxLen = storage.getValue(id, {\n charLimit: this.data.maxLen\n }).charLimit;\n if (maxLen && textContent.length > maxLen) {\n textContent = textContent.slice(0, maxLen);\n }\n let fieldFormattedValues = storedData.formattedValue || this.data.textContent?.join(\"\\n\") || null;\n if (fieldFormattedValues && this.data.comb) {\n fieldFormattedValues = fieldFormattedValues.replaceAll(/\\s+/g, \"\");\n }\n const elementData = {\n userValue: textContent,\n formattedValue: fieldFormattedValues,\n lastCommittedValue: null,\n commitKey: 1,\n focused: false\n };\n if (this.data.multiLine) {\n element = document.createElement(\"textarea\");\n element.textContent = fieldFormattedValues ?? textContent;\n if (this.data.doNotScroll) {\n element.style.overflowY = \"hidden\";\n }\n } else {\n element = document.createElement(\"input\");\n element.type = \"text\";\n element.setAttribute(\"value\", fieldFormattedValues ?? textContent);\n if (this.data.doNotScroll) {\n element.style.overflowX = \"hidden\";\n }\n }\n if (this.data.hasOwnCanvas) {\n element.hidden = true;\n }\n GetElementsByNameSet.add(element);\n element.setAttribute(\"data-element-id\", id);\n element.disabled = this.data.readOnly;\n element.name = this.data.fieldName;\n element.tabIndex = DEFAULT_TAB_INDEX;\n this._setRequired(element, this.data.required);\n if (maxLen) {\n element.maxLength = maxLen;\n }\n element.addEventListener(\"input\", event => {\n storage.setValue(id, {\n value: event.target.value\n });\n this.setPropertyOnSiblings(element, \"value\", event.target.value, \"value\");\n elementData.formattedValue = null;\n });\n element.addEventListener(\"resetform\", event => {\n const defaultValue = this.data.defaultFieldValue ?? \"\";\n element.value = elementData.userValue = defaultValue;\n elementData.formattedValue = null;\n });\n let blurListener = event => {\n const {\n formattedValue\n } = elementData;\n if (formattedValue !== null && formattedValue !== undefined) {\n event.target.value = formattedValue;\n }\n event.target.scrollLeft = 0;\n };\n if (this.enableScripting && this.hasJSActions) {\n element.addEventListener(\"focus\", event => {\n if (elementData.focused) {\n return;\n }\n const {\n target\n } = event;\n if (elementData.userValue) {\n target.value = elementData.userValue;\n }\n elementData.lastCommittedValue = target.value;\n elementData.commitKey = 1;\n if (!this.data.actions?.Focus) {\n elementData.focused = true;\n }\n });\n element.addEventListener(\"updatefromsandbox\", jsEvent => {\n this.showElementAndHideCanvas(jsEvent.target);\n const actions = {\n value(event) {\n elementData.userValue = event.detail.value ?? \"\";\n storage.setValue(id, {\n value: elementData.userValue.toString()\n });\n event.target.value = elementData.userValue;\n },\n formattedValue(event) {\n const {\n formattedValue\n } = event.detail;\n elementData.formattedValue = formattedValue;\n if (formattedValue !== null && formattedValue !== undefined && event.target !== document.activeElement) {\n event.target.value = formattedValue;\n }\n storage.setValue(id, {\n formattedValue\n });\n },\n selRange(event) {\n event.target.setSelectionRange(...event.detail.selRange);\n },\n charLimit: event => {\n const {\n charLimit\n } = event.detail;\n const {\n target\n } = event;\n if (charLimit === 0) {\n target.removeAttribute(\"maxLength\");\n return;\n }\n target.setAttribute(\"maxLength\", charLimit);\n let value = elementData.userValue;\n if (!value || value.length <= charLimit) {\n return;\n }\n value = value.slice(0, charLimit);\n target.value = elementData.userValue = value;\n storage.setValue(id, {\n value\n });\n this.linkService.eventBus?.dispatch(\"dispatcheventinsandbox\", {\n source: this,\n detail: {\n id,\n name: \"Keystroke\",\n value,\n willCommit: true,\n commitKey: 1,\n selStart: target.selectionStart,\n selEnd: target.selectionEnd\n }\n });\n }\n };\n this._dispatchEventFromSandbox(actions, jsEvent);\n });\n element.addEventListener(\"keydown\", event => {\n elementData.commitKey = 1;\n let commitKey = -1;\n if (event.key === \"Escape\") {\n commitKey = 0;\n } else if (event.key === \"Enter\" && !this.data.multiLine) {\n commitKey = 2;\n } else if (event.key === \"Tab\") {\n elementData.commitKey = 3;\n }\n if (commitKey === -1) {\n return;\n }\n const {\n value\n } = event.target;\n if (elementData.lastCommittedValue === value) {\n return;\n }\n elementData.lastCommittedValue = value;\n elementData.userValue = value;\n this.linkService.eventBus?.dispatch(\"dispatcheventinsandbox\", {\n source: this,\n detail: {\n id,\n name: \"Keystroke\",\n value,\n willCommit: true,\n commitKey,\n selStart: event.target.selectionStart,\n selEnd: event.target.selectionEnd\n }\n });\n });\n const _blurListener = blurListener;\n blurListener = null;\n element.addEventListener(\"blur\", event => {\n if (!elementData.focused || !event.relatedTarget) {\n return;\n }\n if (!this.data.actions?.Blur) {\n elementData.focused = false;\n }\n const {\n value\n } = event.target;\n elementData.userValue = value;\n if (elementData.lastCommittedValue !== value) {\n this.linkService.eventBus?.dispatch(\"dispatcheventinsandbox\", {\n source: this,\n detail: {\n id,\n name: \"Keystroke\",\n value,\n willCommit: true,\n commitKey: elementData.commitKey,\n selStart: event.target.selectionStart,\n selEnd: event.target.selectionEnd\n }\n });\n }\n _blurListener(event);\n });\n if (this.data.actions?.Keystroke) {\n element.addEventListener(\"beforeinput\", event => {\n elementData.lastCommittedValue = null;\n const {\n data,\n target\n } = event;\n const {\n value,\n selectionStart,\n selectionEnd\n } = target;\n let selStart = selectionStart,\n selEnd = selectionEnd;\n switch (event.inputType) {\n case \"deleteWordBackward\":\n {\n const match = value.substring(0, selectionStart).match(/\\w*[^\\w]*$/);\n if (match) {\n selStart -= match[0].length;\n }\n break;\n }\n case \"deleteWordForward\":\n {\n const match = value.substring(selectionStart).match(/^[^\\w]*\\w*/);\n if (match) {\n selEnd += match[0].length;\n }\n break;\n }\n case \"deleteContentBackward\":\n if (selectionStart === selectionEnd) {\n selStart -= 1;\n }\n break;\n case \"deleteContentForward\":\n if (selectionStart === selectionEnd) {\n selEnd += 1;\n }\n break;\n }\n event.preventDefault();\n this.linkService.eventBus?.dispatch(\"dispatcheventinsandbox\", {\n source: this,\n detail: {\n id,\n name: \"Keystroke\",\n value,\n change: data || \"\",\n willCommit: false,\n selStart,\n selEnd\n }\n });\n });\n }\n this._setEventListeners(element, elementData, [[\"focus\", \"Focus\"], [\"blur\", \"Blur\"], [\"mousedown\", \"Mouse Down\"], [\"mouseenter\", \"Mouse Enter\"], [\"mouseleave\", \"Mouse Exit\"], [\"mouseup\", \"Mouse Up\"]], event => event.target.value);\n }\n if (blurListener) {\n element.addEventListener(\"blur\", blurListener);\n }\n if (this.data.comb) {\n const fieldWidth = this.data.rect[2] - this.data.rect[0];\n const combWidth = fieldWidth / maxLen;\n element.classList.add(\"comb\");\n element.style.letterSpacing = `calc(${combWidth}px * var(--scale-factor) - 1ch)`;\n }\n } else {\n element = document.createElement(\"div\");\n element.textContent = this.data.fieldValue;\n element.style.verticalAlign = \"middle\";\n element.style.display = \"table-cell\";\n if (this.data.hasOwnCanvas) {\n element.hidden = true;\n }\n }\n this._setTextStyle(element);\n this._setBackgroundColor(element);\n this._setDefaultPropertiesFromJS(element);\n this.container.append(element);\n return this.container;\n }\n}\nclass SignatureWidgetAnnotationElement extends WidgetAnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: !!parameters.data.hasOwnCanvas\n });\n }\n}\nclass CheckboxWidgetAnnotationElement extends WidgetAnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: parameters.renderForms\n });\n }\n render() {\n const storage = this.annotationStorage;\n const data = this.data;\n const id = data.id;\n let value = storage.getValue(id, {\n value: data.exportValue === data.fieldValue\n }).value;\n if (typeof value === \"string\") {\n value = value !== \"Off\";\n storage.setValue(id, {\n value\n });\n }\n this.container.classList.add(\"buttonWidgetAnnotation\", \"checkBox\");\n const element = document.createElement(\"input\");\n GetElementsByNameSet.add(element);\n element.setAttribute(\"data-element-id\", id);\n element.disabled = data.readOnly;\n this._setRequired(element, this.data.required);\n element.type = \"checkbox\";\n element.name = data.fieldName;\n if (value) {\n element.setAttribute(\"checked\", true);\n }\n element.setAttribute(\"exportValue\", data.exportValue);\n element.tabIndex = DEFAULT_TAB_INDEX;\n element.addEventListener(\"change\", event => {\n const {\n name,\n checked\n } = event.target;\n for (const checkbox of this._getElementsByName(name, id)) {\n const curChecked = checked && checkbox.exportValue === data.exportValue;\n if (checkbox.domElement) {\n checkbox.domElement.checked = curChecked;\n }\n storage.setValue(checkbox.id, {\n value: curChecked\n });\n }\n storage.setValue(id, {\n value: checked\n });\n });\n element.addEventListener(\"resetform\", event => {\n const defaultValue = data.defaultFieldValue || \"Off\";\n event.target.checked = defaultValue === data.exportValue;\n });\n if (this.enableScripting && this.hasJSActions) {\n element.addEventListener(\"updatefromsandbox\", jsEvent => {\n const actions = {\n value(event) {\n event.target.checked = event.detail.value !== \"Off\";\n storage.setValue(id, {\n value: event.target.checked\n });\n }\n };\n this._dispatchEventFromSandbox(actions, jsEvent);\n });\n this._setEventListeners(element, null, [[\"change\", \"Validate\"], [\"change\", \"Action\"], [\"focus\", \"Focus\"], [\"blur\", \"Blur\"], [\"mousedown\", \"Mouse Down\"], [\"mouseenter\", \"Mouse Enter\"], [\"mouseleave\", \"Mouse Exit\"], [\"mouseup\", \"Mouse Up\"]], event => event.target.checked);\n }\n this._setBackgroundColor(element);\n this._setDefaultPropertiesFromJS(element);\n this.container.append(element);\n return this.container;\n }\n}\nclass RadioButtonWidgetAnnotationElement extends WidgetAnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: parameters.renderForms\n });\n }\n render() {\n this.container.classList.add(\"buttonWidgetAnnotation\", \"radioButton\");\n const storage = this.annotationStorage;\n const data = this.data;\n const id = data.id;\n let value = storage.getValue(id, {\n value: data.fieldValue === data.buttonValue\n }).value;\n if (typeof value === \"string\") {\n value = value !== data.buttonValue;\n storage.setValue(id, {\n value\n });\n }\n if (value) {\n for (const radio of this._getElementsByName(data.fieldName, id)) {\n storage.setValue(radio.id, {\n value: false\n });\n }\n }\n const element = document.createElement(\"input\");\n GetElementsByNameSet.add(element);\n element.setAttribute(\"data-element-id\", id);\n element.disabled = data.readOnly;\n this._setRequired(element, this.data.required);\n element.type = \"radio\";\n element.name = data.fieldName;\n if (value) {\n element.setAttribute(\"checked\", true);\n }\n element.tabIndex = DEFAULT_TAB_INDEX;\n element.addEventListener(\"change\", event => {\n const {\n name,\n checked\n } = event.target;\n for (const radio of this._getElementsByName(name, id)) {\n storage.setValue(radio.id, {\n value: false\n });\n }\n storage.setValue(id, {\n value: checked\n });\n });\n element.addEventListener(\"resetform\", event => {\n const defaultValue = data.defaultFieldValue;\n event.target.checked = defaultValue !== null && defaultValue !== undefined && defaultValue === data.buttonValue;\n });\n if (this.enableScripting && this.hasJSActions) {\n const pdfButtonValue = data.buttonValue;\n element.addEventListener(\"updatefromsandbox\", jsEvent => {\n const actions = {\n value: event => {\n const checked = pdfButtonValue === event.detail.value;\n for (const radio of this._getElementsByName(event.target.name)) {\n const curChecked = checked && radio.id === id;\n if (radio.domElement) {\n radio.domElement.checked = curChecked;\n }\n storage.setValue(radio.id, {\n value: curChecked\n });\n }\n }\n };\n this._dispatchEventFromSandbox(actions, jsEvent);\n });\n this._setEventListeners(element, null, [[\"change\", \"Validate\"], [\"change\", \"Action\"], [\"focus\", \"Focus\"], [\"blur\", \"Blur\"], [\"mousedown\", \"Mouse Down\"], [\"mouseenter\", \"Mouse Enter\"], [\"mouseleave\", \"Mouse Exit\"], [\"mouseup\", \"Mouse Up\"]], event => event.target.checked);\n }\n this._setBackgroundColor(element);\n this._setDefaultPropertiesFromJS(element);\n this.container.append(element);\n return this.container;\n }\n}\nclass PushButtonWidgetAnnotationElement extends LinkAnnotationElement {\n constructor(parameters) {\n super(parameters, {\n ignoreBorder: parameters.data.hasAppearance\n });\n }\n render() {\n const container = super.render();\n container.classList.add(\"buttonWidgetAnnotation\", \"pushButton\");\n const linkElement = container.lastChild;\n if (this.enableScripting && this.hasJSActions && linkElement) {\n this._setDefaultPropertiesFromJS(linkElement);\n linkElement.addEventListener(\"updatefromsandbox\", jsEvent => {\n this._dispatchEventFromSandbox({}, jsEvent);\n });\n }\n return container;\n }\n}\nclass ChoiceWidgetAnnotationElement extends WidgetAnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: parameters.renderForms\n });\n }\n render() {\n this.container.classList.add(\"choiceWidgetAnnotation\");\n const storage = this.annotationStorage;\n const id = this.data.id;\n const storedData = storage.getValue(id, {\n value: this.data.fieldValue\n });\n const selectElement = document.createElement(\"select\");\n GetElementsByNameSet.add(selectElement);\n selectElement.setAttribute(\"data-element-id\", id);\n selectElement.disabled = this.data.readOnly;\n this._setRequired(selectElement, this.data.required);\n selectElement.name = this.data.fieldName;\n selectElement.tabIndex = DEFAULT_TAB_INDEX;\n let addAnEmptyEntry = this.data.combo && this.data.options.length > 0;\n if (!this.data.combo) {\n selectElement.size = this.data.options.length;\n if (this.data.multiSelect) {\n selectElement.multiple = true;\n }\n }\n selectElement.addEventListener(\"resetform\", event => {\n const defaultValue = this.data.defaultFieldValue;\n for (const option of selectElement.options) {\n option.selected = option.value === defaultValue;\n }\n });\n for (const option of this.data.options) {\n const optionElement = document.createElement(\"option\");\n optionElement.textContent = option.displayValue;\n optionElement.value = option.exportValue;\n if (storedData.value.includes(option.exportValue)) {\n optionElement.setAttribute(\"selected\", true);\n addAnEmptyEntry = false;\n }\n selectElement.append(optionElement);\n }\n let removeEmptyEntry = null;\n if (addAnEmptyEntry) {\n const noneOptionElement = document.createElement(\"option\");\n noneOptionElement.value = \" \";\n noneOptionElement.setAttribute(\"hidden\", true);\n noneOptionElement.setAttribute(\"selected\", true);\n selectElement.prepend(noneOptionElement);\n removeEmptyEntry = () => {\n noneOptionElement.remove();\n selectElement.removeEventListener(\"input\", removeEmptyEntry);\n removeEmptyEntry = null;\n };\n selectElement.addEventListener(\"input\", removeEmptyEntry);\n }\n const getValue = isExport => {\n const name = isExport ? \"value\" : \"textContent\";\n const {\n options,\n multiple\n } = selectElement;\n if (!multiple) {\n return options.selectedIndex === -1 ? null : options[options.selectedIndex][name];\n }\n return Array.prototype.filter.call(options, option => option.selected).map(option => option[name]);\n };\n let selectedValues = getValue(false);\n const getItems = event => {\n const options = event.target.options;\n return Array.prototype.map.call(options, option => ({\n displayValue: option.textContent,\n exportValue: option.value\n }));\n };\n if (this.enableScripting && this.hasJSActions) {\n selectElement.addEventListener(\"updatefromsandbox\", jsEvent => {\n const actions = {\n value(event) {\n removeEmptyEntry?.();\n const value = event.detail.value;\n const values = new Set(Array.isArray(value) ? value : [value]);\n for (const option of selectElement.options) {\n option.selected = values.has(option.value);\n }\n storage.setValue(id, {\n value: getValue(true)\n });\n selectedValues = getValue(false);\n },\n multipleSelection(event) {\n selectElement.multiple = true;\n },\n remove(event) {\n const options = selectElement.options;\n const index = event.detail.remove;\n options[index].selected = false;\n selectElement.remove(index);\n if (options.length > 0) {\n const i = Array.prototype.findIndex.call(options, option => option.selected);\n if (i === -1) {\n options[0].selected = true;\n }\n }\n storage.setValue(id, {\n value: getValue(true),\n items: getItems(event)\n });\n selectedValues = getValue(false);\n },\n clear(event) {\n while (selectElement.length !== 0) {\n selectElement.remove(0);\n }\n storage.setValue(id, {\n value: null,\n items: []\n });\n selectedValues = getValue(false);\n },\n insert(event) {\n const {\n index,\n displayValue,\n exportValue\n } = event.detail.insert;\n const selectChild = selectElement.children[index];\n const optionElement = document.createElement(\"option\");\n optionElement.textContent = displayValue;\n optionElement.value = exportValue;\n if (selectChild) {\n selectChild.before(optionElement);\n } else {\n selectElement.append(optionElement);\n }\n storage.setValue(id, {\n value: getValue(true),\n items: getItems(event)\n });\n selectedValues = getValue(false);\n },\n items(event) {\n const {\n items\n } = event.detail;\n while (selectElement.length !== 0) {\n selectElement.remove(0);\n }\n for (const item of items) {\n const {\n displayValue,\n exportValue\n } = item;\n const optionElement = document.createElement(\"option\");\n optionElement.textContent = displayValue;\n optionElement.value = exportValue;\n selectElement.append(optionElement);\n }\n if (selectElement.options.length > 0) {\n selectElement.options[0].selected = true;\n }\n storage.setValue(id, {\n value: getValue(true),\n items: getItems(event)\n });\n selectedValues = getValue(false);\n },\n indices(event) {\n const indices = new Set(event.detail.indices);\n for (const option of event.target.options) {\n option.selected = indices.has(option.index);\n }\n storage.setValue(id, {\n value: getValue(true)\n });\n selectedValues = getValue(false);\n },\n editable(event) {\n event.target.disabled = !event.detail.editable;\n }\n };\n this._dispatchEventFromSandbox(actions, jsEvent);\n });\n selectElement.addEventListener(\"input\", event => {\n const exportValue = getValue(true);\n const change = getValue(false);\n storage.setValue(id, {\n value: exportValue\n });\n event.preventDefault();\n this.linkService.eventBus?.dispatch(\"dispatcheventinsandbox\", {\n source: this,\n detail: {\n id,\n name: \"Keystroke\",\n value: selectedValues,\n change,\n changeEx: exportValue,\n willCommit: false,\n commitKey: 1,\n keyDown: false\n }\n });\n });\n this._setEventListeners(selectElement, null, [[\"focus\", \"Focus\"], [\"blur\", \"Blur\"], [\"mousedown\", \"Mouse Down\"], [\"mouseenter\", \"Mouse Enter\"], [\"mouseleave\", \"Mouse Exit\"], [\"mouseup\", \"Mouse Up\"], [\"input\", \"Action\"], [\"input\", \"Validate\"]], event => event.target.value);\n } else {\n selectElement.addEventListener(\"input\", function (event) {\n storage.setValue(id, {\n value: getValue(true)\n });\n });\n }\n if (this.data.combo) {\n this._setTextStyle(selectElement);\n } else {}\n this._setBackgroundColor(selectElement);\n this._setDefaultPropertiesFromJS(selectElement);\n this.container.append(selectElement);\n return this.container;\n }\n}\nclass PopupAnnotationElement extends AnnotationElement {\n constructor(parameters) {\n const {\n data,\n elements\n } = parameters;\n super(parameters, {\n isRenderable: AnnotationElement._hasPopupData(data)\n });\n this.elements = elements;\n this.popup = null;\n }\n render() {\n this.container.classList.add(\"popupAnnotation\");\n const popup = this.popup = new PopupElement({\n container: this.container,\n color: this.data.color,\n titleObj: this.data.titleObj,\n modificationDate: this.data.modificationDate,\n contentsObj: this.data.contentsObj,\n richText: this.data.richText,\n rect: this.data.rect,\n parentRect: this.data.parentRect || null,\n parent: this.parent,\n elements: this.elements,\n open: this.data.open\n });\n const elementIds = [];\n for (const element of this.elements) {\n element.popup = popup;\n elementIds.push(element.data.id);\n element.addHighlightArea();\n }\n this.container.setAttribute(\"aria-controls\", elementIds.map(id => `${AnnotationPrefix}${id}`).join(\",\"));\n return this.container;\n }\n}\nclass PopupElement {\n #boundKeyDown = this.#keyDown.bind(this);\n #boundHide = this.#hide.bind(this);\n #boundShow = this.#show.bind(this);\n #boundToggle = this.#toggle.bind(this);\n #color = null;\n #container = null;\n #contentsObj = null;\n #dateObj = null;\n #elements = null;\n #parent = null;\n #parentRect = null;\n #pinned = false;\n #popup = null;\n #position = null;\n #rect = null;\n #richText = null;\n #titleObj = null;\n #updates = null;\n #wasVisible = false;\n constructor({\n container,\n color,\n elements,\n titleObj,\n modificationDate,\n contentsObj,\n richText,\n parent,\n rect,\n parentRect,\n open\n }) {\n this.#container = container;\n this.#titleObj = titleObj;\n this.#contentsObj = contentsObj;\n this.#richText = richText;\n this.#parent = parent;\n this.#color = color;\n this.#rect = rect;\n this.#parentRect = parentRect;\n this.#elements = elements;\n this.#dateObj = PDFDateString.toDateObject(modificationDate);\n this.trigger = elements.flatMap(e => e.getElementsToTriggerPopup());\n for (const element of this.trigger) {\n element.addEventListener(\"click\", this.#boundToggle);\n element.addEventListener(\"mouseenter\", this.#boundShow);\n element.addEventListener(\"mouseleave\", this.#boundHide);\n element.classList.add(\"popupTriggerArea\");\n }\n for (const element of elements) {\n element.container?.addEventListener(\"keydown\", this.#boundKeyDown);\n }\n this.#container.hidden = true;\n if (open) {\n this.#toggle();\n }\n }\n render() {\n if (this.#popup) {\n return;\n }\n const popup = this.#popup = document.createElement(\"div\");\n popup.className = \"popup\";\n if (this.#color) {\n const baseColor = popup.style.outlineColor = Util.makeHexColor(...this.#color);\n if (CSS.supports(\"background-color\", \"color-mix(in srgb, red 30%, white)\")) {\n popup.style.backgroundColor = `color-mix(in srgb, ${baseColor} 30%, white)`;\n } else {\n const BACKGROUND_ENLIGHT = 0.7;\n popup.style.backgroundColor = Util.makeHexColor(...this.#color.map(c => Math.floor(BACKGROUND_ENLIGHT * (255 - c) + c)));\n }\n }\n const header = document.createElement(\"span\");\n header.className = \"header\";\n const title = document.createElement(\"h1\");\n header.append(title);\n ({\n dir: title.dir,\n str: title.textContent\n } = this.#titleObj);\n popup.append(header);\n if (this.#dateObj) {\n const modificationDate = document.createElement(\"span\");\n modificationDate.classList.add(\"popupDate\");\n modificationDate.setAttribute(\"data-l10n-id\", \"pdfjs-annotation-date-string\");\n modificationDate.setAttribute(\"data-l10n-args\", JSON.stringify({\n date: this.#dateObj.toLocaleDateString(),\n time: this.#dateObj.toLocaleTimeString()\n }));\n header.append(modificationDate);\n }\n const html = this.#html;\n if (html) {\n XfaLayer.render({\n xfaHtml: html,\n intent: \"richText\",\n div: popup\n });\n popup.lastChild.classList.add(\"richText\", \"popupContent\");\n } else {\n const contents = this._formatContents(this.#contentsObj);\n popup.append(contents);\n }\n this.#container.append(popup);\n }\n get #html() {\n const richText = this.#richText;\n const contentsObj = this.#contentsObj;\n if (richText?.str && (!contentsObj?.str || contentsObj.str === richText.str)) {\n return this.#richText.html || null;\n }\n return null;\n }\n get #fontSize() {\n return this.#html?.attributes?.style?.fontSize || 0;\n }\n get #fontColor() {\n return this.#html?.attributes?.style?.color || null;\n }\n #makePopupContent(text) {\n const popupLines = [];\n const popupContent = {\n str: text,\n html: {\n name: \"div\",\n attributes: {\n dir: \"auto\"\n },\n children: [{\n name: \"p\",\n children: popupLines\n }]\n }\n };\n const lineAttributes = {\n style: {\n color: this.#fontColor,\n fontSize: this.#fontSize ? `calc(${this.#fontSize}px * var(--scale-factor))` : \"\"\n }\n };\n for (const line of text.split(\"\\n\")) {\n popupLines.push({\n name: \"span\",\n value: line,\n attributes: lineAttributes\n });\n }\n return popupContent;\n }\n _formatContents({\n str,\n dir\n }) {\n const p = document.createElement(\"p\");\n p.classList.add(\"popupContent\");\n p.dir = dir;\n const lines = str.split(/(?:\\r\\n?|\\n)/);\n for (let i = 0, ii = lines.length; i < ii; ++i) {\n const line = lines[i];\n p.append(document.createTextNode(line));\n if (i < ii - 1) {\n p.append(document.createElement(\"br\"));\n }\n }\n return p;\n }\n #keyDown(event) {\n if (event.altKey || event.shiftKey || event.ctrlKey || event.metaKey) {\n return;\n }\n if (event.key === \"Enter\" || event.key === \"Escape\" && this.#pinned) {\n this.#toggle();\n }\n }\n updateEdited({\n rect,\n popupContent\n }) {\n this.#updates ||= {\n contentsObj: this.#contentsObj,\n richText: this.#richText\n };\n if (rect) {\n this.#position = null;\n }\n if (popupContent) {\n this.#richText = this.#makePopupContent(popupContent);\n this.#contentsObj = null;\n }\n this.#popup?.remove();\n this.#popup = null;\n }\n resetEdited() {\n if (!this.#updates) {\n return;\n }\n ({\n contentsObj: this.#contentsObj,\n richText: this.#richText\n } = this.#updates);\n this.#updates = null;\n this.#popup?.remove();\n this.#popup = null;\n this.#position = null;\n }\n #setPosition() {\n if (this.#position !== null) {\n return;\n }\n const {\n page: {\n view\n },\n viewport: {\n rawDims: {\n pageWidth,\n pageHeight,\n pageX,\n pageY\n }\n }\n } = this.#parent;\n let useParentRect = !!this.#parentRect;\n let rect = useParentRect ? this.#parentRect : this.#rect;\n for (const element of this.#elements) {\n if (!rect || Util.intersect(element.data.rect, rect) !== null) {\n rect = element.data.rect;\n useParentRect = true;\n break;\n }\n }\n const normalizedRect = Util.normalizeRect([rect[0], view[3] - rect[1] + view[1], rect[2], view[3] - rect[3] + view[1]]);\n const HORIZONTAL_SPACE_AFTER_ANNOTATION = 5;\n const parentWidth = useParentRect ? rect[2] - rect[0] + HORIZONTAL_SPACE_AFTER_ANNOTATION : 0;\n const popupLeft = normalizedRect[0] + parentWidth;\n const popupTop = normalizedRect[1];\n this.#position = [100 * (popupLeft - pageX) / pageWidth, 100 * (popupTop - pageY) / pageHeight];\n const {\n style\n } = this.#container;\n style.left = `${this.#position[0]}%`;\n style.top = `${this.#position[1]}%`;\n }\n #toggle() {\n this.#pinned = !this.#pinned;\n if (this.#pinned) {\n this.#show();\n this.#container.addEventListener(\"click\", this.#boundToggle);\n this.#container.addEventListener(\"keydown\", this.#boundKeyDown);\n } else {\n this.#hide();\n this.#container.removeEventListener(\"click\", this.#boundToggle);\n this.#container.removeEventListener(\"keydown\", this.#boundKeyDown);\n }\n }\n #show() {\n if (!this.#popup) {\n this.render();\n }\n if (!this.isVisible) {\n this.#setPosition();\n this.#container.hidden = false;\n this.#container.style.zIndex = parseInt(this.#container.style.zIndex) + 1000;\n } else if (this.#pinned) {\n this.#container.classList.add(\"focused\");\n }\n }\n #hide() {\n this.#container.classList.remove(\"focused\");\n if (this.#pinned || !this.isVisible) {\n return;\n }\n this.#container.hidden = true;\n this.#container.style.zIndex = parseInt(this.#container.style.zIndex) - 1000;\n }\n forceHide() {\n this.#wasVisible = this.isVisible;\n if (!this.#wasVisible) {\n return;\n }\n this.#container.hidden = true;\n }\n maybeShow() {\n if (!this.#wasVisible) {\n return;\n }\n if (!this.#popup) {\n this.#show();\n }\n this.#wasVisible = false;\n this.#container.hidden = false;\n }\n get isVisible() {\n return this.#container.hidden === false;\n }\n}\nclass FreeTextAnnotationElement extends AnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true\n });\n this.textContent = parameters.data.textContent;\n this.textPosition = parameters.data.textPosition;\n this.annotationEditorType = AnnotationEditorType.FREETEXT;\n }\n render() {\n this.container.classList.add(\"freeTextAnnotation\");\n if (this.textContent) {\n const content = document.createElement(\"div\");\n content.classList.add(\"annotationTextContent\");\n content.setAttribute(\"role\", \"comment\");\n for (const line of this.textContent) {\n const lineSpan = document.createElement(\"span\");\n lineSpan.textContent = line;\n content.append(lineSpan);\n }\n this.container.append(content);\n }\n if (!this.data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n this._editOnDoubleClick();\n return this.container;\n }\n get _isEditable() {\n return this.data.hasOwnCanvas;\n }\n}\nclass LineAnnotationElement extends AnnotationElement {\n #line = null;\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true\n });\n }\n render() {\n this.container.classList.add(\"lineAnnotation\");\n const data = this.data;\n const {\n width,\n height\n } = getRectDims(data.rect);\n const svg = this.svgFactory.create(width, height, true);\n const line = this.#line = this.svgFactory.createElement(\"svg:line\");\n line.setAttribute(\"x1\", data.rect[2] - data.lineCoordinates[0]);\n line.setAttribute(\"y1\", data.rect[3] - data.lineCoordinates[1]);\n line.setAttribute(\"x2\", data.rect[2] - data.lineCoordinates[2]);\n line.setAttribute(\"y2\", data.rect[3] - data.lineCoordinates[3]);\n line.setAttribute(\"stroke-width\", data.borderStyle.width || 1);\n line.setAttribute(\"stroke\", \"transparent\");\n line.setAttribute(\"fill\", \"transparent\");\n svg.append(line);\n this.container.append(svg);\n if (!data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n return this.container;\n }\n getElementsToTriggerPopup() {\n return this.#line;\n }\n addHighlightArea() {\n this.container.classList.add(\"highlightArea\");\n }\n}\nclass SquareAnnotationElement extends AnnotationElement {\n #square = null;\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true\n });\n }\n render() {\n this.container.classList.add(\"squareAnnotation\");\n const data = this.data;\n const {\n width,\n height\n } = getRectDims(data.rect);\n const svg = this.svgFactory.create(width, height, true);\n const borderWidth = data.borderStyle.width;\n const square = this.#square = this.svgFactory.createElement(\"svg:rect\");\n square.setAttribute(\"x\", borderWidth / 2);\n square.setAttribute(\"y\", borderWidth / 2);\n square.setAttribute(\"width\", width - borderWidth);\n square.setAttribute(\"height\", height - borderWidth);\n square.setAttribute(\"stroke-width\", borderWidth || 1);\n square.setAttribute(\"stroke\", \"transparent\");\n square.setAttribute(\"fill\", \"transparent\");\n svg.append(square);\n this.container.append(svg);\n if (!data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n return this.container;\n }\n getElementsToTriggerPopup() {\n return this.#square;\n }\n addHighlightArea() {\n this.container.classList.add(\"highlightArea\");\n }\n}\nclass CircleAnnotationElement extends AnnotationElement {\n #circle = null;\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true\n });\n }\n render() {\n this.container.classList.add(\"circleAnnotation\");\n const data = this.data;\n const {\n width,\n height\n } = getRectDims(data.rect);\n const svg = this.svgFactory.create(width, height, true);\n const borderWidth = data.borderStyle.width;\n const circle = this.#circle = this.svgFactory.createElement(\"svg:ellipse\");\n circle.setAttribute(\"cx\", width / 2);\n circle.setAttribute(\"cy\", height / 2);\n circle.setAttribute(\"rx\", width / 2 - borderWidth / 2);\n circle.setAttribute(\"ry\", height / 2 - borderWidth / 2);\n circle.setAttribute(\"stroke-width\", borderWidth || 1);\n circle.setAttribute(\"stroke\", \"transparent\");\n circle.setAttribute(\"fill\", \"transparent\");\n svg.append(circle);\n this.container.append(svg);\n if (!data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n return this.container;\n }\n getElementsToTriggerPopup() {\n return this.#circle;\n }\n addHighlightArea() {\n this.container.classList.add(\"highlightArea\");\n }\n}\nclass PolylineAnnotationElement extends AnnotationElement {\n #polyline = null;\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true\n });\n this.containerClassName = \"polylineAnnotation\";\n this.svgElementName = \"svg:polyline\";\n }\n render() {\n this.container.classList.add(this.containerClassName);\n const {\n data: {\n rect,\n vertices,\n borderStyle,\n popupRef\n }\n } = this;\n if (!vertices) {\n return this.container;\n }\n const {\n width,\n height\n } = getRectDims(rect);\n const svg = this.svgFactory.create(width, height, true);\n let points = [];\n for (let i = 0, ii = vertices.length; i < ii; i += 2) {\n const x = vertices[i] - rect[0];\n const y = rect[3] - vertices[i + 1];\n points.push(`${x},${y}`);\n }\n points = points.join(\" \");\n const polyline = this.#polyline = this.svgFactory.createElement(this.svgElementName);\n polyline.setAttribute(\"points\", points);\n polyline.setAttribute(\"stroke-width\", borderStyle.width || 1);\n polyline.setAttribute(\"stroke\", \"transparent\");\n polyline.setAttribute(\"fill\", \"transparent\");\n svg.append(polyline);\n this.container.append(svg);\n if (!popupRef && this.hasPopupData) {\n this._createPopup();\n }\n return this.container;\n }\n getElementsToTriggerPopup() {\n return this.#polyline;\n }\n addHighlightArea() {\n this.container.classList.add(\"highlightArea\");\n }\n}\nclass PolygonAnnotationElement extends PolylineAnnotationElement {\n constructor(parameters) {\n super(parameters);\n this.containerClassName = \"polygonAnnotation\";\n this.svgElementName = \"svg:polygon\";\n }\n}\nclass CaretAnnotationElement extends AnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true\n });\n }\n render() {\n this.container.classList.add(\"caretAnnotation\");\n if (!this.data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n return this.container;\n }\n}\nclass InkAnnotationElement extends AnnotationElement {\n #polylines = [];\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true\n });\n this.containerClassName = \"inkAnnotation\";\n this.svgElementName = \"svg:polyline\";\n this.annotationEditorType = AnnotationEditorType.INK;\n }\n render() {\n this.container.classList.add(this.containerClassName);\n const {\n data: {\n rect,\n inkLists,\n borderStyle,\n popupRef\n }\n } = this;\n const {\n width,\n height\n } = getRectDims(rect);\n const svg = this.svgFactory.create(width, height, true);\n for (const inkList of inkLists) {\n let points = [];\n for (let i = 0, ii = inkList.length; i < ii; i += 2) {\n const x = inkList[i] - rect[0];\n const y = rect[3] - inkList[i + 1];\n points.push(`${x},${y}`);\n }\n points = points.join(\" \");\n const polyline = this.svgFactory.createElement(this.svgElementName);\n this.#polylines.push(polyline);\n polyline.setAttribute(\"points\", points);\n polyline.setAttribute(\"stroke-width\", borderStyle.width || 1);\n polyline.setAttribute(\"stroke\", \"transparent\");\n polyline.setAttribute(\"fill\", \"transparent\");\n if (!popupRef && this.hasPopupData) {\n this._createPopup();\n }\n svg.append(polyline);\n }\n this.container.append(svg);\n return this.container;\n }\n getElementsToTriggerPopup() {\n return this.#polylines;\n }\n addHighlightArea() {\n this.container.classList.add(\"highlightArea\");\n }\n}\nclass HighlightAnnotationElement extends AnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true,\n createQuadrilaterals: true\n });\n }\n render() {\n if (!this.data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n this.container.classList.add(\"highlightAnnotation\");\n return this.container;\n }\n}\nclass UnderlineAnnotationElement extends AnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true,\n createQuadrilaterals: true\n });\n }\n render() {\n if (!this.data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n this.container.classList.add(\"underlineAnnotation\");\n return this.container;\n }\n}\nclass SquigglyAnnotationElement extends AnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true,\n createQuadrilaterals: true\n });\n }\n render() {\n if (!this.data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n this.container.classList.add(\"squigglyAnnotation\");\n return this.container;\n }\n}\nclass StrikeOutAnnotationElement extends AnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true,\n createQuadrilaterals: true\n });\n }\n render() {\n if (!this.data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n this.container.classList.add(\"strikeoutAnnotation\");\n return this.container;\n }\n}\nclass StampAnnotationElement extends AnnotationElement {\n constructor(parameters) {\n super(parameters, {\n isRenderable: true,\n ignoreBorder: true\n });\n }\n render() {\n this.container.classList.add(\"stampAnnotation\");\n if (!this.data.popupRef && this.hasPopupData) {\n this._createPopup();\n }\n return this.container;\n }\n}\nclass FileAttachmentAnnotationElement extends AnnotationElement {\n #trigger = null;\n constructor(parameters) {\n super(parameters, {\n isRenderable: true\n });\n const {\n file\n } = this.data;\n this.filename = file.filename;\n this.content = file.content;\n this.linkService.eventBus?.dispatch(\"fileattachmentannotation\", {\n source: this,\n ...file\n });\n }\n render() {\n this.container.classList.add(\"fileAttachmentAnnotation\");\n const {\n container,\n data\n } = this;\n let trigger;\n if (data.hasAppearance || data.fillAlpha === 0) {\n trigger = document.createElement(\"div\");\n } else {\n trigger = document.createElement(\"img\");\n trigger.src = `${this.imageResourcesPath}annotation-${/paperclip/i.test(data.name) ? \"paperclip\" : \"pushpin\"}.svg`;\n if (data.fillAlpha && data.fillAlpha < 1) {\n trigger.style = `filter: opacity(${Math.round(data.fillAlpha * 100)}%);`;\n }\n }\n trigger.addEventListener(\"dblclick\", this.#download.bind(this));\n this.#trigger = trigger;\n const {\n isMac\n } = util_FeatureTest.platform;\n container.addEventListener(\"keydown\", evt => {\n if (evt.key === \"Enter\" && (isMac ? evt.metaKey : evt.ctrlKey)) {\n this.#download();\n }\n });\n if (!data.popupRef && this.hasPopupData) {\n this._createPopup();\n } else {\n trigger.classList.add(\"popupTriggerArea\");\n }\n container.append(trigger);\n return container;\n }\n getElementsToTriggerPopup() {\n return this.#trigger;\n }\n addHighlightArea() {\n this.container.classList.add(\"highlightArea\");\n }\n #download() {\n this.downloadManager?.openOrDownloadData(this.content, this.filename);\n }\n}\nclass AnnotationLayer {\n #accessibilityManager = null;\n #annotationCanvasMap = null;\n #editableAnnotations = new Map();\n constructor({\n div,\n accessibilityManager,\n annotationCanvasMap,\n annotationEditorUIManager,\n page,\n viewport\n }) {\n this.div = div;\n this.#accessibilityManager = accessibilityManager;\n this.#annotationCanvasMap = annotationCanvasMap;\n this.page = page;\n this.viewport = viewport;\n this.zIndex = 0;\n this._annotationEditorUIManager = annotationEditorUIManager;\n }\n #appendElement(element, id) {\n const contentElement = element.firstChild || element;\n contentElement.id = `${AnnotationPrefix}${id}`;\n this.div.append(element);\n this.#accessibilityManager?.moveElementInDOM(this.div, element, contentElement, false);\n }\n async render(params) {\n const {\n annotations\n } = params;\n const layer = this.div;\n setLayerDimensions(layer, this.viewport);\n const popupToElements = new Map();\n const elementParams = {\n data: null,\n layer,\n linkService: params.linkService,\n downloadManager: params.downloadManager,\n imageResourcesPath: params.imageResourcesPath || \"\",\n renderForms: params.renderForms !== false,\n svgFactory: new DOMSVGFactory(),\n annotationStorage: params.annotationStorage || new AnnotationStorage(),\n enableScripting: params.enableScripting === true,\n hasJSActions: params.hasJSActions,\n fieldObjects: params.fieldObjects,\n parent: this,\n elements: null\n };\n for (const data of annotations) {\n if (data.noHTML) {\n continue;\n }\n const isPopupAnnotation = data.annotationType === AnnotationType.POPUP;\n if (!isPopupAnnotation) {\n const {\n width,\n height\n } = getRectDims(data.rect);\n if (width <= 0 || height <= 0) {\n continue;\n }\n } else {\n const elements = popupToElements.get(data.id);\n if (!elements) {\n continue;\n }\n elementParams.elements = elements;\n }\n elementParams.data = data;\n const element = AnnotationElementFactory.create(elementParams);\n if (!element.isRenderable) {\n continue;\n }\n if (!isPopupAnnotation && data.popupRef) {\n const elements = popupToElements.get(data.popupRef);\n if (!elements) {\n popupToElements.set(data.popupRef, [element]);\n } else {\n elements.push(element);\n }\n }\n const rendered = element.render();\n if (data.hidden) {\n rendered.style.visibility = \"hidden\";\n }\n this.#appendElement(rendered, data.id);\n if (element.annotationEditorType > 0) {\n this.#editableAnnotations.set(element.data.id, element);\n this._annotationEditorUIManager?.renderAnnotationElement(element);\n }\n }\n this.#setAnnotationCanvasMap();\n }\n update({\n viewport\n }) {\n const layer = this.div;\n this.viewport = viewport;\n setLayerDimensions(layer, {\n rotation: viewport.rotation\n });\n this.#setAnnotationCanvasMap();\n layer.hidden = false;\n }\n #setAnnotationCanvasMap() {\n if (!this.#annotationCanvasMap) {\n return;\n }\n const layer = this.div;\n for (const [id, canvas] of this.#annotationCanvasMap) {\n const element = layer.querySelector(`[data-annotation-id=\"${id}\"]`);\n if (!element) {\n continue;\n }\n canvas.className = \"annotationContent\";\n const {\n firstChild\n } = element;\n if (!firstChild) {\n element.append(canvas);\n } else if (firstChild.nodeName === \"CANVAS\") {\n firstChild.replaceWith(canvas);\n } else if (!firstChild.classList.contains(\"annotationContent\")) {\n firstChild.before(canvas);\n } else {\n firstChild.after(canvas);\n }\n }\n this.#annotationCanvasMap.clear();\n }\n getEditableAnnotations() {\n return Array.from(this.#editableAnnotations.values());\n }\n getEditableAnnotation(id) {\n return this.#editableAnnotations.get(id);\n }\n}\n\n;// CONCATENATED MODULE: ./src/display/editor/freetext.js\n\n\n\n\nconst EOL_PATTERN = /\\r\\n?|\\n/g;\nclass FreeTextEditor extends AnnotationEditor {\n #boundEditorDivBlur = this.editorDivBlur.bind(this);\n #boundEditorDivFocus = this.editorDivFocus.bind(this);\n #boundEditorDivInput = this.editorDivInput.bind(this);\n #boundEditorDivKeydown = this.editorDivKeydown.bind(this);\n #boundEditorDivPaste = this.editorDivPaste.bind(this);\n #color;\n #content = \"\";\n #editorDivId = `${this.id}-editor`;\n #fontSize;\n #initialData = null;\n static _freeTextDefaultContent = \"\";\n static _internalPadding = 0;\n static _defaultColor = null;\n static _defaultFontSize = 10;\n static get _keyboardManager() {\n const proto = FreeTextEditor.prototype;\n const arrowChecker = self => self.isEmpty();\n const small = AnnotationEditorUIManager.TRANSLATE_SMALL;\n const big = AnnotationEditorUIManager.TRANSLATE_BIG;\n return shadow(this, \"_keyboardManager\", new KeyboardManager([[[\"ctrl+s\", \"mac+meta+s\", \"ctrl+p\", \"mac+meta+p\"], proto.commitOrRemove, {\n bubbles: true\n }], [[\"ctrl+Enter\", \"mac+meta+Enter\", \"Escape\", \"mac+Escape\"], proto.commitOrRemove], [[\"ArrowLeft\", \"mac+ArrowLeft\"], proto._translateEmpty, {\n args: [-small, 0],\n checker: arrowChecker\n }], [[\"ctrl+ArrowLeft\", \"mac+shift+ArrowLeft\"], proto._translateEmpty, {\n args: [-big, 0],\n checker: arrowChecker\n }], [[\"ArrowRight\", \"mac+ArrowRight\"], proto._translateEmpty, {\n args: [small, 0],\n checker: arrowChecker\n }], [[\"ctrl+ArrowRight\", \"mac+shift+ArrowRight\"], proto._translateEmpty, {\n args: [big, 0],\n checker: arrowChecker\n }], [[\"ArrowUp\", \"mac+ArrowUp\"], proto._translateEmpty, {\n args: [0, -small],\n checker: arrowChecker\n }], [[\"ctrl+ArrowUp\", \"mac+shift+ArrowUp\"], proto._translateEmpty, {\n args: [0, -big],\n checker: arrowChecker\n }], [[\"ArrowDown\", \"mac+ArrowDown\"], proto._translateEmpty, {\n args: [0, small],\n checker: arrowChecker\n }], [[\"ctrl+ArrowDown\", \"mac+shift+ArrowDown\"], proto._translateEmpty, {\n args: [0, big],\n checker: arrowChecker\n }]]));\n }\n static _type = \"freetext\";\n static _editorType = AnnotationEditorType.FREETEXT;\n constructor(params) {\n super({\n ...params,\n name: \"freeTextEditor\"\n });\n this.#color = params.color || FreeTextEditor._defaultColor || AnnotationEditor._defaultLineColor;\n this.#fontSize = params.fontSize || FreeTextEditor._defaultFontSize;\n }\n static initialize(l10n, uiManager) {\n AnnotationEditor.initialize(l10n, uiManager, {\n strings: [\"pdfjs-free-text-default-content\"]\n });\n const style = getComputedStyle(document.documentElement);\n this._internalPadding = parseFloat(style.getPropertyValue(\"--freetext-padding\"));\n }\n static updateDefaultParams(type, value) {\n switch (type) {\n case AnnotationEditorParamsType.FREETEXT_SIZE:\n FreeTextEditor._defaultFontSize = value;\n break;\n case AnnotationEditorParamsType.FREETEXT_COLOR:\n FreeTextEditor._defaultColor = value;\n break;\n }\n }\n updateParams(type, value) {\n switch (type) {\n case AnnotationEditorParamsType.FREETEXT_SIZE:\n this.#updateFontSize(value);\n break;\n case AnnotationEditorParamsType.FREETEXT_COLOR:\n this.#updateColor(value);\n break;\n }\n }\n static get defaultPropertiesToUpdate() {\n return [[AnnotationEditorParamsType.FREETEXT_SIZE, FreeTextEditor._defaultFontSize], [AnnotationEditorParamsType.FREETEXT_COLOR, FreeTextEditor._defaultColor || AnnotationEditor._defaultLineColor]];\n }\n get propertiesToUpdate() {\n return [[AnnotationEditorParamsType.FREETEXT_SIZE, this.#fontSize], [AnnotationEditorParamsType.FREETEXT_COLOR, this.#color]];\n }\n #updateFontSize(fontSize) {\n const setFontsize = size => {\n this.editorDiv.style.fontSize = `calc(${size}px * var(--scale-factor))`;\n this.translate(0, -(size - this.#fontSize) * this.parentScale);\n this.#fontSize = size;\n this.#setEditorDimensions();\n };\n const savedFontsize = this.#fontSize;\n this.addCommands({\n cmd: setFontsize.bind(this, fontSize),\n undo: setFontsize.bind(this, savedFontsize),\n post: this._uiManager.updateUI.bind(this._uiManager, this),\n mustExec: true,\n type: AnnotationEditorParamsType.FREETEXT_SIZE,\n overwriteIfSameType: true,\n keepUndo: true\n });\n }\n #updateColor(color) {\n const setColor = col => {\n this.#color = this.editorDiv.style.color = col;\n };\n const savedColor = this.#color;\n this.addCommands({\n cmd: setColor.bind(this, color),\n undo: setColor.bind(this, savedColor),\n post: this._uiManager.updateUI.bind(this._uiManager, this),\n mustExec: true,\n type: AnnotationEditorParamsType.FREETEXT_COLOR,\n overwriteIfSameType: true,\n keepUndo: true\n });\n }\n _translateEmpty(x, y) {\n this._uiManager.translateSelectedEditors(x, y, true);\n }\n getInitialTranslation() {\n const scale = this.parentScale;\n return [-FreeTextEditor._internalPadding * scale, -(FreeTextEditor._internalPadding + this.#fontSize) * scale];\n }\n rebuild() {\n if (!this.parent) {\n return;\n }\n super.rebuild();\n if (this.div === null) {\n return;\n }\n if (!this.isAttachedToDOM) {\n this.parent.add(this);\n }\n }\n enableEditMode() {\n if (this.isInEditMode()) {\n return;\n }\n this.parent.setEditingState(false);\n this.parent.updateToolbar(AnnotationEditorType.FREETEXT);\n super.enableEditMode();\n this.overlayDiv.classList.remove(\"enabled\");\n this.editorDiv.contentEditable = true;\n this._isDraggable = false;\n this.div.removeAttribute(\"aria-activedescendant\");\n const signal = this._uiManager._signal;\n this.editorDiv.addEventListener(\"keydown\", this.#boundEditorDivKeydown, {\n signal\n });\n this.editorDiv.addEventListener(\"focus\", this.#boundEditorDivFocus, {\n signal\n });\n this.editorDiv.addEventListener(\"blur\", this.#boundEditorDivBlur, {\n signal\n });\n this.editorDiv.addEventListener(\"input\", this.#boundEditorDivInput, {\n signal\n });\n this.editorDiv.addEventListener(\"paste\", this.#boundEditorDivPaste, {\n signal\n });\n }\n disableEditMode() {\n if (!this.isInEditMode()) {\n return;\n }\n this.parent.setEditingState(true);\n super.disableEditMode();\n this.overlayDiv.classList.add(\"enabled\");\n this.editorDiv.contentEditable = false;\n this.div.setAttribute(\"aria-activedescendant\", this.#editorDivId);\n this._isDraggable = true;\n this.editorDiv.removeEventListener(\"keydown\", this.#boundEditorDivKeydown);\n this.editorDiv.removeEventListener(\"focus\", this.#boundEditorDivFocus);\n this.editorDiv.removeEventListener(\"blur\", this.#boundEditorDivBlur);\n this.editorDiv.removeEventListener(\"input\", this.#boundEditorDivInput);\n this.editorDiv.removeEventListener(\"paste\", this.#boundEditorDivPaste);\n this.div.focus({\n preventScroll: true\n });\n this.isEditing = false;\n this.parent.div.classList.add(\"freetextEditing\");\n }\n focusin(event) {\n if (!this._focusEventsAllowed) {\n return;\n }\n super.focusin(event);\n if (event.target !== this.editorDiv) {\n this.editorDiv.focus();\n }\n }\n onceAdded() {\n if (this.width) {\n return;\n }\n this.enableEditMode();\n this.editorDiv.focus();\n if (this._initialOptions?.isCentered) {\n this.center();\n }\n this._initialOptions = null;\n }\n isEmpty() {\n return !this.editorDiv || this.editorDiv.innerText.trim() === \"\";\n }\n remove() {\n this.isEditing = false;\n if (this.parent) {\n this.parent.setEditingState(true);\n this.parent.div.classList.add(\"freetextEditing\");\n }\n super.remove();\n }\n #extractText() {\n const buffer = [];\n this.editorDiv.normalize();\n for (const child of this.editorDiv.childNodes) {\n buffer.push(FreeTextEditor.#getNodeContent(child));\n }\n return buffer.join(\"\\n\");\n }\n #setEditorDimensions() {\n const [parentWidth, parentHeight] = this.parentDimensions;\n let rect;\n if (this.isAttachedToDOM) {\n rect = this.div.getBoundingClientRect();\n } else {\n const {\n currentLayer,\n div\n } = this;\n const savedDisplay = div.style.display;\n const savedVisibility = div.classList.contains(\"hidden\");\n div.classList.remove(\"hidden\");\n div.style.display = \"hidden\";\n currentLayer.div.append(this.div);\n rect = div.getBoundingClientRect();\n div.remove();\n div.style.display = savedDisplay;\n div.classList.toggle(\"hidden\", savedVisibility);\n }\n if (this.rotation % 180 === this.parentRotation % 180) {\n this.width = rect.width / parentWidth;\n this.height = rect.height / parentHeight;\n } else {\n this.width = rect.height / parentWidth;\n this.height = rect.width / parentHeight;\n }\n this.fixAndSetPosition();\n }\n commit() {\n if (!this.isInEditMode()) {\n return;\n }\n super.commit();\n this.disableEditMode();\n const savedText = this.#content;\n const newText = this.#content = this.#extractText().trimEnd();\n if (savedText === newText) {\n return;\n }\n const setText = text => {\n this.#content = text;\n if (!text) {\n this.remove();\n return;\n }\n this.#setContent();\n this._uiManager.rebuild(this);\n this.#setEditorDimensions();\n };\n this.addCommands({\n cmd: () => {\n setText(newText);\n },\n undo: () => {\n setText(savedText);\n },\n mustExec: false\n });\n this.#setEditorDimensions();\n }\n shouldGetKeyboardEvents() {\n return this.isInEditMode();\n }\n enterInEditMode() {\n this.enableEditMode();\n this.editorDiv.focus();\n }\n dblclick(event) {\n this.enterInEditMode();\n }\n keydown(event) {\n if (event.target === this.div && event.key === \"Enter\") {\n this.enterInEditMode();\n event.preventDefault();\n }\n }\n editorDivKeydown(event) {\n FreeTextEditor._keyboardManager.exec(this, event);\n }\n editorDivFocus(event) {\n this.isEditing = true;\n }\n editorDivBlur(event) {\n this.isEditing = false;\n }\n editorDivInput(event) {\n this.parent.div.classList.toggle(\"freetextEditing\", this.isEmpty());\n }\n disableEditing() {\n this.editorDiv.setAttribute(\"role\", \"comment\");\n this.editorDiv.removeAttribute(\"aria-multiline\");\n }\n enableEditing() {\n this.editorDiv.setAttribute(\"role\", \"textbox\");\n this.editorDiv.setAttribute(\"aria-multiline\", true);\n }\n render() {\n if (this.div) {\n return this.div;\n }\n let baseX, baseY;\n if (this.width) {\n baseX = this.x;\n baseY = this.y;\n }\n super.render();\n this.editorDiv = document.createElement(\"div\");\n this.editorDiv.className = \"internal\";\n this.editorDiv.setAttribute(\"id\", this.#editorDivId);\n this.editorDiv.setAttribute(\"data-l10n-id\", \"pdfjs-free-text\");\n this.enableEditing();\n AnnotationEditor._l10nPromise.get(\"pdfjs-free-text-default-content\").then(msg => this.editorDiv?.setAttribute(\"default-content\", msg));\n this.editorDiv.contentEditable = true;\n const {\n style\n } = this.editorDiv;\n style.fontSize = `calc(${this.#fontSize}px * var(--scale-factor))`;\n style.color = this.#color;\n this.div.append(this.editorDiv);\n this.overlayDiv = document.createElement(\"div\");\n this.overlayDiv.classList.add(\"overlay\", \"enabled\");\n this.div.append(this.overlayDiv);\n bindEvents(this, this.div, [\"dblclick\", \"keydown\"]);\n if (this.width) {\n const [parentWidth, parentHeight] = this.parentDimensions;\n if (this.annotationElementId) {\n const {\n position\n } = this.#initialData;\n let [tx, ty] = this.getInitialTranslation();\n [tx, ty] = this.pageTranslationToScreen(tx, ty);\n const [pageWidth, pageHeight] = this.pageDimensions;\n const [pageX, pageY] = this.pageTranslation;\n let posX, posY;\n switch (this.rotation) {\n case 0:\n posX = baseX + (position[0] - pageX) / pageWidth;\n posY = baseY + this.height - (position[1] - pageY) / pageHeight;\n break;\n case 90:\n posX = baseX + (position[0] - pageX) / pageWidth;\n posY = baseY - (position[1] - pageY) / pageHeight;\n [tx, ty] = [ty, -tx];\n break;\n case 180:\n posX = baseX - this.width + (position[0] - pageX) / pageWidth;\n posY = baseY - (position[1] - pageY) / pageHeight;\n [tx, ty] = [-tx, -ty];\n break;\n case 270:\n posX = baseX + (position[0] - pageX - this.height * pageHeight) / pageWidth;\n posY = baseY + (position[1] - pageY - this.width * pageWidth) / pageHeight;\n [tx, ty] = [-ty, tx];\n break;\n }\n this.setAt(posX * parentWidth, posY * parentHeight, tx, ty);\n } else {\n this.setAt(baseX * parentWidth, baseY * parentHeight, this.width * parentWidth, this.height * parentHeight);\n }\n this.#setContent();\n this._isDraggable = true;\n this.editorDiv.contentEditable = false;\n } else {\n this._isDraggable = false;\n this.editorDiv.contentEditable = true;\n }\n return this.div;\n }\n static #getNodeContent(node) {\n return (node.nodeType === Node.TEXT_NODE ? node.nodeValue : node.innerText).replaceAll(EOL_PATTERN, \"\");\n }\n editorDivPaste(event) {\n const clipboardData = event.clipboardData || window.clipboardData;\n const {\n types\n } = clipboardData;\n if (types.length === 1 && types[0] === \"text/plain\") {\n return;\n }\n event.preventDefault();\n const paste = FreeTextEditor.#deserializeContent(clipboardData.getData(\"text\") || \"\").replaceAll(EOL_PATTERN, \"\\n\");\n if (!paste) {\n return;\n }\n const selection = window.getSelection();\n if (!selection.rangeCount) {\n return;\n }\n this.editorDiv.normalize();\n selection.deleteFromDocument();\n const range = selection.getRangeAt(0);\n if (!paste.includes(\"\\n\")) {\n range.insertNode(document.createTextNode(paste));\n this.editorDiv.normalize();\n selection.collapseToStart();\n return;\n }\n const {\n startContainer,\n startOffset\n } = range;\n const bufferBefore = [];\n const bufferAfter = [];\n if (startContainer.nodeType === Node.TEXT_NODE) {\n const parent = startContainer.parentElement;\n bufferAfter.push(startContainer.nodeValue.slice(startOffset).replaceAll(EOL_PATTERN, \"\"));\n if (parent !== this.editorDiv) {\n let buffer = bufferBefore;\n for (const child of this.editorDiv.childNodes) {\n if (child === parent) {\n buffer = bufferAfter;\n continue;\n }\n buffer.push(FreeTextEditor.#getNodeContent(child));\n }\n }\n bufferBefore.push(startContainer.nodeValue.slice(0, startOffset).replaceAll(EOL_PATTERN, \"\"));\n } else if (startContainer === this.editorDiv) {\n let buffer = bufferBefore;\n let i = 0;\n for (const child of this.editorDiv.childNodes) {\n if (i++ === startOffset) {\n buffer = bufferAfter;\n }\n buffer.push(FreeTextEditor.#getNodeContent(child));\n }\n }\n this.#content = `${bufferBefore.join(\"\\n\")}${paste}${bufferAfter.join(\"\\n\")}`;\n this.#setContent();\n const newRange = new Range();\n let beforeLength = bufferBefore.reduce((acc, line) => acc + line.length, 0);\n for (const {\n firstChild\n } of this.editorDiv.childNodes) {\n if (firstChild.nodeType === Node.TEXT_NODE) {\n const length = firstChild.nodeValue.length;\n if (beforeLength <= length) {\n newRange.setStart(firstChild, beforeLength);\n newRange.setEnd(firstChild, beforeLength);\n break;\n }\n beforeLength -= length;\n }\n }\n selection.removeAllRanges();\n selection.addRange(newRange);\n }\n #setContent() {\n this.editorDiv.replaceChildren();\n if (!this.#content) {\n return;\n }\n for (const line of this.#content.split(\"\\n\")) {\n const div = document.createElement(\"div\");\n div.append(line ? document.createTextNode(line) : document.createElement(\"br\"));\n this.editorDiv.append(div);\n }\n }\n #serializeContent() {\n return this.#content.replaceAll(\"\\xa0\", \" \");\n }\n static #deserializeContent(content) {\n return content.replaceAll(\" \", \"\\xa0\");\n }\n get contentDiv() {\n return this.editorDiv;\n }\n static deserialize(data, parent, uiManager) {\n let initialData = null;\n if (data instanceof FreeTextAnnotationElement) {\n const {\n data: {\n defaultAppearanceData: {\n fontSize,\n fontColor\n },\n rect,\n rotation,\n id\n },\n textContent,\n textPosition,\n parent: {\n page: {\n pageNumber\n }\n }\n } = data;\n if (!textContent || textContent.length === 0) {\n return null;\n }\n initialData = data = {\n annotationType: AnnotationEditorType.FREETEXT,\n color: Array.from(fontColor),\n fontSize,\n value: textContent.join(\"\\n\"),\n position: textPosition,\n pageIndex: pageNumber - 1,\n rect: rect.slice(0),\n rotation,\n id,\n deleted: false\n };\n }\n const editor = super.deserialize(data, parent, uiManager);\n editor.#fontSize = data.fontSize;\n editor.#color = Util.makeHexColor(...data.color);\n editor.#content = FreeTextEditor.#deserializeContent(data.value);\n editor.annotationElementId = data.id || null;\n editor.#initialData = initialData;\n return editor;\n }\n serialize(isForCopying = false) {\n if (this.isEmpty()) {\n return null;\n }\n if (this.deleted) {\n return {\n pageIndex: this.pageIndex,\n id: this.annotationElementId,\n deleted: true\n };\n }\n const padding = FreeTextEditor._internalPadding * this.parentScale;\n const rect = this.getRect(padding, padding);\n const color = AnnotationEditor._colorManager.convert(this.isAttachedToDOM ? getComputedStyle(this.editorDiv).color : this.#color);\n const serialized = {\n annotationType: AnnotationEditorType.FREETEXT,\n color,\n fontSize: this.#fontSize,\n value: this.#serializeContent(),\n pageIndex: this.pageIndex,\n rect,\n rotation: this.rotation,\n structTreeParentId: this._structTreeParentId\n };\n if (isForCopying) {\n return serialized;\n }\n if (this.annotationElementId && !this.#hasElementChanged(serialized)) {\n return null;\n }\n serialized.id = this.annotationElementId;\n return serialized;\n }\n #hasElementChanged(serialized) {\n const {\n value,\n fontSize,\n color,\n pageIndex\n } = this.#initialData;\n return this._hasBeenMoved || serialized.value !== value || serialized.fontSize !== fontSize || serialized.color.some((c, i) => c !== color[i]) || serialized.pageIndex !== pageIndex;\n }\n renderAnnotationElement(annotation) {\n const content = super.renderAnnotationElement(annotation);\n if (this.deleted) {\n return content;\n }\n const {\n style\n } = content;\n style.fontSize = `calc(${this.#fontSize}px * var(--scale-factor))`;\n style.color = this.#color;\n content.replaceChildren();\n for (const line of this.#content.split(\"\\n\")) {\n const div = document.createElement(\"div\");\n div.append(line ? document.createTextNode(line) : document.createElement(\"br\"));\n content.append(div);\n }\n const padding = FreeTextEditor._internalPadding * this.parentScale;\n annotation.updateEdited({\n rect: this.getRect(padding, padding),\n popupContent: this.#content\n });\n return content;\n }\n resetAnnotationElement(annotation) {\n super.resetAnnotationElement(annotation);\n annotation.resetEdited();\n }\n}\n\n;// CONCATENATED MODULE: ./src/display/editor/outliner.js\n\nclass Outliner {\n #box;\n #verticalEdges = [];\n #intervals = [];\n constructor(boxes, borderWidth = 0, innerMargin = 0, isLTR = true) {\n let minX = Infinity;\n let maxX = -Infinity;\n let minY = Infinity;\n let maxY = -Infinity;\n const NUMBER_OF_DIGITS = 4;\n const EPSILON = 10 ** -NUMBER_OF_DIGITS;\n for (const {\n x,\n y,\n width,\n height\n } of boxes) {\n const x1 = Math.floor((x - borderWidth) / EPSILON) * EPSILON;\n const x2 = Math.ceil((x + width + borderWidth) / EPSILON) * EPSILON;\n const y1 = Math.floor((y - borderWidth) / EPSILON) * EPSILON;\n const y2 = Math.ceil((y + height + borderWidth) / EPSILON) * EPSILON;\n const left = [x1, y1, y2, true];\n const right = [x2, y1, y2, false];\n this.#verticalEdges.push(left, right);\n minX = Math.min(minX, x1);\n maxX = Math.max(maxX, x2);\n minY = Math.min(minY, y1);\n maxY = Math.max(maxY, y2);\n }\n const bboxWidth = maxX - minX + 2 * innerMargin;\n const bboxHeight = maxY - minY + 2 * innerMargin;\n const shiftedMinX = minX - innerMargin;\n const shiftedMinY = minY - innerMargin;\n const lastEdge = this.#verticalEdges.at(isLTR ? -1 : -2);\n const lastPoint = [lastEdge[0], lastEdge[2]];\n for (const edge of this.#verticalEdges) {\n const [x, y1, y2] = edge;\n edge[0] = (x - shiftedMinX) / bboxWidth;\n edge[1] = (y1 - shiftedMinY) / bboxHeight;\n edge[2] = (y2 - shiftedMinY) / bboxHeight;\n }\n this.#box = {\n x: shiftedMinX,\n y: shiftedMinY,\n width: bboxWidth,\n height: bboxHeight,\n lastPoint\n };\n }\n getOutlines() {\n this.#verticalEdges.sort((a, b) => a[0] - b[0] || a[1] - b[1] || a[2] - b[2]);\n const outlineVerticalEdges = [];\n for (const edge of this.#verticalEdges) {\n if (edge[3]) {\n outlineVerticalEdges.push(...this.#breakEdge(edge));\n this.#insert(edge);\n } else {\n this.#remove(edge);\n outlineVerticalEdges.push(...this.#breakEdge(edge));\n }\n }\n return this.#getOutlines(outlineVerticalEdges);\n }\n #getOutlines(outlineVerticalEdges) {\n const edges = [];\n const allEdges = new Set();\n for (const edge of outlineVerticalEdges) {\n const [x, y1, y2] = edge;\n edges.push([x, y1, edge], [x, y2, edge]);\n }\n edges.sort((a, b) => a[1] - b[1] || a[0] - b[0]);\n for (let i = 0, ii = edges.length; i < ii; i += 2) {\n const edge1 = edges[i][2];\n const edge2 = edges[i + 1][2];\n edge1.push(edge2);\n edge2.push(edge1);\n allEdges.add(edge1);\n allEdges.add(edge2);\n }\n const outlines = [];\n let outline;\n while (allEdges.size > 0) {\n const edge = allEdges.values().next().value;\n let [x, y1, y2, edge1, edge2] = edge;\n allEdges.delete(edge);\n let lastPointX = x;\n let lastPointY = y1;\n outline = [x, y2];\n outlines.push(outline);\n while (true) {\n let e;\n if (allEdges.has(edge1)) {\n e = edge1;\n } else if (allEdges.has(edge2)) {\n e = edge2;\n } else {\n break;\n }\n allEdges.delete(e);\n [x, y1, y2, edge1, edge2] = e;\n if (lastPointX !== x) {\n outline.push(lastPointX, lastPointY, x, lastPointY === y1 ? y1 : y2);\n lastPointX = x;\n }\n lastPointY = lastPointY === y1 ? y2 : y1;\n }\n outline.push(lastPointX, lastPointY);\n }\n return new HighlightOutline(outlines, this.#box);\n }\n #binarySearch(y) {\n const array = this.#intervals;\n let start = 0;\n let end = array.length - 1;\n while (start <= end) {\n const middle = start + end >> 1;\n const y1 = array[middle][0];\n if (y1 === y) {\n return middle;\n }\n if (y1 < y) {\n start = middle + 1;\n } else {\n end = middle - 1;\n }\n }\n return end + 1;\n }\n #insert([, y1, y2]) {\n const index = this.#binarySearch(y1);\n this.#intervals.splice(index, 0, [y1, y2]);\n }\n #remove([, y1, y2]) {\n const index = this.#binarySearch(y1);\n for (let i = index; i < this.#intervals.length; i++) {\n const [start, end] = this.#intervals[i];\n if (start !== y1) {\n break;\n }\n if (start === y1 && end === y2) {\n this.#intervals.splice(i, 1);\n return;\n }\n }\n for (let i = index - 1; i >= 0; i--) {\n const [start, end] = this.#intervals[i];\n if (start !== y1) {\n break;\n }\n if (start === y1 && end === y2) {\n this.#intervals.splice(i, 1);\n return;\n }\n }\n }\n #breakEdge(edge) {\n const [x, y1, y2] = edge;\n const results = [[x, y1, y2]];\n const index = this.#binarySearch(y2);\n for (let i = 0; i < index; i++) {\n const [start, end] = this.#intervals[i];\n for (let j = 0, jj = results.length; j < jj; j++) {\n const [, y3, y4] = results[j];\n if (end <= y3 || y4 <= start) {\n continue;\n }\n if (y3 >= start) {\n if (y4 > end) {\n results[j][1] = end;\n } else {\n if (jj === 1) {\n return [];\n }\n results.splice(j, 1);\n j--;\n jj--;\n }\n continue;\n }\n results[j][2] = start;\n if (y4 > end) {\n results.push([x, end, y4]);\n }\n }\n }\n return results;\n }\n}\nclass Outline {\n toSVGPath() {\n throw new Error(\"Abstract method `toSVGPath` must be implemented.\");\n }\n get box() {\n throw new Error(\"Abstract getter `box` must be implemented.\");\n }\n serialize(_bbox, _rotation) {\n throw new Error(\"Abstract method `serialize` must be implemented.\");\n }\n get free() {\n return this instanceof FreeHighlightOutline;\n }\n}\nclass HighlightOutline extends Outline {\n #box;\n #outlines;\n constructor(outlines, box) {\n super();\n this.#outlines = outlines;\n this.#box = box;\n }\n toSVGPath() {\n const buffer = [];\n for (const polygon of this.#outlines) {\n let [prevX, prevY] = polygon;\n buffer.push(`M${prevX} ${prevY}`);\n for (let i = 2; i < polygon.length; i += 2) {\n const x = polygon[i];\n const y = polygon[i + 1];\n if (x === prevX) {\n buffer.push(`V${y}`);\n prevY = y;\n } else if (y === prevY) {\n buffer.push(`H${x}`);\n prevX = x;\n }\n }\n buffer.push(\"Z\");\n }\n return buffer.join(\" \");\n }\n serialize([blX, blY, trX, trY], _rotation) {\n const outlines = [];\n const width = trX - blX;\n const height = trY - blY;\n for (const outline of this.#outlines) {\n const points = new Array(outline.length);\n for (let i = 0; i < outline.length; i += 2) {\n points[i] = blX + outline[i] * width;\n points[i + 1] = trY - outline[i + 1] * height;\n }\n outlines.push(points);\n }\n return outlines;\n }\n get box() {\n return this.#box;\n }\n}\nclass FreeOutliner {\n #box;\n #bottom = [];\n #innerMargin;\n #isLTR;\n #top = [];\n #last = new Float64Array(18);\n #lastX;\n #lastY;\n #min;\n #min_dist;\n #scaleFactor;\n #thickness;\n #points = [];\n static #MIN_DIST = 8;\n static #MIN_DIFF = 2;\n static #MIN = FreeOutliner.#MIN_DIST + FreeOutliner.#MIN_DIFF;\n constructor({\n x,\n y\n }, box, scaleFactor, thickness, isLTR, innerMargin = 0) {\n this.#box = box;\n this.#thickness = thickness * scaleFactor;\n this.#isLTR = isLTR;\n this.#last.set([NaN, NaN, NaN, NaN, x, y], 6);\n this.#innerMargin = innerMargin;\n this.#min_dist = FreeOutliner.#MIN_DIST * scaleFactor;\n this.#min = FreeOutliner.#MIN * scaleFactor;\n this.#scaleFactor = scaleFactor;\n this.#points.push(x, y);\n }\n get free() {\n return true;\n }\n isEmpty() {\n return isNaN(this.#last[8]);\n }\n #getLastCoords() {\n const lastTop = this.#last.subarray(4, 6);\n const lastBottom = this.#last.subarray(16, 18);\n const [x, y, width, height] = this.#box;\n return [(this.#lastX + (lastTop[0] - lastBottom[0]) / 2 - x) / width, (this.#lastY + (lastTop[1] - lastBottom[1]) / 2 - y) / height, (this.#lastX + (lastBottom[0] - lastTop[0]) / 2 - x) / width, (this.#lastY + (lastBottom[1] - lastTop[1]) / 2 - y) / height];\n }\n add({\n x,\n y\n }) {\n this.#lastX = x;\n this.#lastY = y;\n const [layerX, layerY, layerWidth, layerHeight] = this.#box;\n let [x1, y1, x2, y2] = this.#last.subarray(8, 12);\n const diffX = x - x2;\n const diffY = y - y2;\n const d = Math.hypot(diffX, diffY);\n if (d < this.#min) {\n return false;\n }\n const diffD = d - this.#min_dist;\n const K = diffD / d;\n const shiftX = K * diffX;\n const shiftY = K * diffY;\n let x0 = x1;\n let y0 = y1;\n x1 = x2;\n y1 = y2;\n x2 += shiftX;\n y2 += shiftY;\n this.#points?.push(x, y);\n const nX = -shiftY / diffD;\n const nY = shiftX / diffD;\n const thX = nX * this.#thickness;\n const thY = nY * this.#thickness;\n this.#last.set(this.#last.subarray(2, 8), 0);\n this.#last.set([x2 + thX, y2 + thY], 4);\n this.#last.set(this.#last.subarray(14, 18), 12);\n this.#last.set([x2 - thX, y2 - thY], 16);\n if (isNaN(this.#last[6])) {\n if (this.#top.length === 0) {\n this.#last.set([x1 + thX, y1 + thY], 2);\n this.#top.push(NaN, NaN, NaN, NaN, (x1 + thX - layerX) / layerWidth, (y1 + thY - layerY) / layerHeight);\n this.#last.set([x1 - thX, y1 - thY], 14);\n this.#bottom.push(NaN, NaN, NaN, NaN, (x1 - thX - layerX) / layerWidth, (y1 - thY - layerY) / layerHeight);\n }\n this.#last.set([x0, y0, x1, y1, x2, y2], 6);\n return !this.isEmpty();\n }\n this.#last.set([x0, y0, x1, y1, x2, y2], 6);\n const angle = Math.abs(Math.atan2(y0 - y1, x0 - x1) - Math.atan2(shiftY, shiftX));\n if (angle < Math.PI / 2) {\n [x1, y1, x2, y2] = this.#last.subarray(2, 6);\n this.#top.push(NaN, NaN, NaN, NaN, ((x1 + x2) / 2 - layerX) / layerWidth, ((y1 + y2) / 2 - layerY) / layerHeight);\n [x1, y1, x0, y0] = this.#last.subarray(14, 18);\n this.#bottom.push(NaN, NaN, NaN, NaN, ((x0 + x1) / 2 - layerX) / layerWidth, ((y0 + y1) / 2 - layerY) / layerHeight);\n return true;\n }\n [x0, y0, x1, y1, x2, y2] = this.#last.subarray(0, 6);\n this.#top.push(((x0 + 5 * x1) / 6 - layerX) / layerWidth, ((y0 + 5 * y1) / 6 - layerY) / layerHeight, ((5 * x1 + x2) / 6 - layerX) / layerWidth, ((5 * y1 + y2) / 6 - layerY) / layerHeight, ((x1 + x2) / 2 - layerX) / layerWidth, ((y1 + y2) / 2 - layerY) / layerHeight);\n [x2, y2, x1, y1, x0, y0] = this.#last.subarray(12, 18);\n this.#bottom.push(((x0 + 5 * x1) / 6 - layerX) / layerWidth, ((y0 + 5 * y1) / 6 - layerY) / layerHeight, ((5 * x1 + x2) / 6 - layerX) / layerWidth, ((5 * y1 + y2) / 6 - layerY) / layerHeight, ((x1 + x2) / 2 - layerX) / layerWidth, ((y1 + y2) / 2 - layerY) / layerHeight);\n return true;\n }\n toSVGPath() {\n if (this.isEmpty()) {\n return \"\";\n }\n const top = this.#top;\n const bottom = this.#bottom;\n const lastTop = this.#last.subarray(4, 6);\n const lastBottom = this.#last.subarray(16, 18);\n const [x, y, width, height] = this.#box;\n const [lastTopX, lastTopY, lastBottomX, lastBottomY] = this.#getLastCoords();\n if (isNaN(this.#last[6]) && !this.isEmpty()) {\n return `M${(this.#last[2] - x) / width} ${(this.#last[3] - y) / height} L${(this.#last[4] - x) / width} ${(this.#last[5] - y) / height} L${lastTopX} ${lastTopY} L${lastBottomX} ${lastBottomY} L${(this.#last[16] - x) / width} ${(this.#last[17] - y) / height} L${(this.#last[14] - x) / width} ${(this.#last[15] - y) / height} Z`;\n }\n const buffer = [];\n buffer.push(`M${top[4]} ${top[5]}`);\n for (let i = 6; i < top.length; i += 6) {\n if (isNaN(top[i])) {\n buffer.push(`L${top[i + 4]} ${top[i + 5]}`);\n } else {\n buffer.push(`C${top[i]} ${top[i + 1]} ${top[i + 2]} ${top[i + 3]} ${top[i + 4]} ${top[i + 5]}`);\n }\n }\n buffer.push(`L${(lastTop[0] - x) / width} ${(lastTop[1] - y) / height} L${lastTopX} ${lastTopY} L${lastBottomX} ${lastBottomY} L${(lastBottom[0] - x) / width} ${(lastBottom[1] - y) / height}`);\n for (let i = bottom.length - 6; i >= 6; i -= 6) {\n if (isNaN(bottom[i])) {\n buffer.push(`L${bottom[i + 4]} ${bottom[i + 5]}`);\n } else {\n buffer.push(`C${bottom[i]} ${bottom[i + 1]} ${bottom[i + 2]} ${bottom[i + 3]} ${bottom[i + 4]} ${bottom[i + 5]}`);\n }\n }\n buffer.push(`L${bottom[4]} ${bottom[5]} Z`);\n return buffer.join(\" \");\n }\n getOutlines() {\n const top = this.#top;\n const bottom = this.#bottom;\n const last = this.#last;\n const lastTop = last.subarray(4, 6);\n const lastBottom = last.subarray(16, 18);\n const [layerX, layerY, layerWidth, layerHeight] = this.#box;\n const points = new Float64Array((this.#points?.length ?? 0) + 2);\n for (let i = 0, ii = points.length - 2; i < ii; i += 2) {\n points[i] = (this.#points[i] - layerX) / layerWidth;\n points[i + 1] = (this.#points[i + 1] - layerY) / layerHeight;\n }\n points[points.length - 2] = (this.#lastX - layerX) / layerWidth;\n points[points.length - 1] = (this.#lastY - layerY) / layerHeight;\n const [lastTopX, lastTopY, lastBottomX, lastBottomY] = this.#getLastCoords();\n if (isNaN(last[6]) && !this.isEmpty()) {\n const outline = new Float64Array(36);\n outline.set([NaN, NaN, NaN, NaN, (last[2] - layerX) / layerWidth, (last[3] - layerY) / layerHeight, NaN, NaN, NaN, NaN, (last[4] - layerX) / layerWidth, (last[5] - layerY) / layerHeight, NaN, NaN, NaN, NaN, lastTopX, lastTopY, NaN, NaN, NaN, NaN, lastBottomX, lastBottomY, NaN, NaN, NaN, NaN, (last[16] - layerX) / layerWidth, (last[17] - layerY) / layerHeight, NaN, NaN, NaN, NaN, (last[14] - layerX) / layerWidth, (last[15] - layerY) / layerHeight], 0);\n return new FreeHighlightOutline(outline, points, this.#box, this.#scaleFactor, this.#innerMargin, this.#isLTR);\n }\n const outline = new Float64Array(this.#top.length + 24 + this.#bottom.length);\n let N = top.length;\n for (let i = 0; i < N; i += 2) {\n if (isNaN(top[i])) {\n outline[i] = outline[i + 1] = NaN;\n continue;\n }\n outline[i] = top[i];\n outline[i + 1] = top[i + 1];\n }\n outline.set([NaN, NaN, NaN, NaN, (lastTop[0] - layerX) / layerWidth, (lastTop[1] - layerY) / layerHeight, NaN, NaN, NaN, NaN, lastTopX, lastTopY, NaN, NaN, NaN, NaN, lastBottomX, lastBottomY, NaN, NaN, NaN, NaN, (lastBottom[0] - layerX) / layerWidth, (lastBottom[1] - layerY) / layerHeight], N);\n N += 24;\n for (let i = bottom.length - 6; i >= 6; i -= 6) {\n for (let j = 0; j < 6; j += 2) {\n if (isNaN(bottom[i + j])) {\n outline[N] = outline[N + 1] = NaN;\n N += 2;\n continue;\n }\n outline[N] = bottom[i + j];\n outline[N + 1] = bottom[i + j + 1];\n N += 2;\n }\n }\n outline.set([NaN, NaN, NaN, NaN, bottom[4], bottom[5]], N);\n return new FreeHighlightOutline(outline, points, this.#box, this.#scaleFactor, this.#innerMargin, this.#isLTR);\n }\n}\nclass FreeHighlightOutline extends Outline {\n #box;\n #bbox = null;\n #innerMargin;\n #isLTR;\n #points;\n #scaleFactor;\n #outline;\n constructor(outline, points, box, scaleFactor, innerMargin, isLTR) {\n super();\n this.#outline = outline;\n this.#points = points;\n this.#box = box;\n this.#scaleFactor = scaleFactor;\n this.#innerMargin = innerMargin;\n this.#isLTR = isLTR;\n this.#computeMinMax(isLTR);\n const {\n x,\n y,\n width,\n height\n } = this.#bbox;\n for (let i = 0, ii = outline.length; i < ii; i += 2) {\n outline[i] = (outline[i] - x) / width;\n outline[i + 1] = (outline[i + 1] - y) / height;\n }\n for (let i = 0, ii = points.length; i < ii; i += 2) {\n points[i] = (points[i] - x) / width;\n points[i + 1] = (points[i + 1] - y) / height;\n }\n }\n toSVGPath() {\n const buffer = [`M${this.#outline[4]} ${this.#outline[5]}`];\n for (let i = 6, ii = this.#outline.length; i < ii; i += 6) {\n if (isNaN(this.#outline[i])) {\n buffer.push(`L${this.#outline[i + 4]} ${this.#outline[i + 5]}`);\n continue;\n }\n buffer.push(`C${this.#outline[i]} ${this.#outline[i + 1]} ${this.#outline[i + 2]} ${this.#outline[i + 3]} ${this.#outline[i + 4]} ${this.#outline[i + 5]}`);\n }\n buffer.push(\"Z\");\n return buffer.join(\" \");\n }\n serialize([blX, blY, trX, trY], rotation) {\n const width = trX - blX;\n const height = trY - blY;\n let outline;\n let points;\n switch (rotation) {\n case 0:\n outline = this.#rescale(this.#outline, blX, trY, width, -height);\n points = this.#rescale(this.#points, blX, trY, width, -height);\n break;\n case 90:\n outline = this.#rescaleAndSwap(this.#outline, blX, blY, width, height);\n points = this.#rescaleAndSwap(this.#points, blX, blY, width, height);\n break;\n case 180:\n outline = this.#rescale(this.#outline, trX, blY, -width, height);\n points = this.#rescale(this.#points, trX, blY, -width, height);\n break;\n case 270:\n outline = this.#rescaleAndSwap(this.#outline, trX, trY, -width, -height);\n points = this.#rescaleAndSwap(this.#points, trX, trY, -width, -height);\n break;\n }\n return {\n outline: Array.from(outline),\n points: [Array.from(points)]\n };\n }\n #rescale(src, tx, ty, sx, sy) {\n const dest = new Float64Array(src.length);\n for (let i = 0, ii = src.length; i < ii; i += 2) {\n dest[i] = tx + src[i] * sx;\n dest[i + 1] = ty + src[i + 1] * sy;\n }\n return dest;\n }\n #rescaleAndSwap(src, tx, ty, sx, sy) {\n const dest = new Float64Array(src.length);\n for (let i = 0, ii = src.length; i < ii; i += 2) {\n dest[i] = tx + src[i + 1] * sx;\n dest[i + 1] = ty + src[i] * sy;\n }\n return dest;\n }\n #computeMinMax(isLTR) {\n const outline = this.#outline;\n let lastX = outline[4];\n let lastY = outline[5];\n let minX = lastX;\n let minY = lastY;\n let maxX = lastX;\n let maxY = lastY;\n let lastPointX = lastX;\n let lastPointY = lastY;\n const ltrCallback = isLTR ? Math.max : Math.min;\n for (let i = 6, ii = outline.length; i < ii; i += 6) {\n if (isNaN(outline[i])) {\n minX = Math.min(minX, outline[i + 4]);\n minY = Math.min(minY, outline[i + 5]);\n maxX = Math.max(maxX, outline[i + 4]);\n maxY = Math.max(maxY, outline[i + 5]);\n if (lastPointY < outline[i + 5]) {\n lastPointX = outline[i + 4];\n lastPointY = outline[i + 5];\n } else if (lastPointY === outline[i + 5]) {\n lastPointX = ltrCallback(lastPointX, outline[i + 4]);\n }\n } else {\n const bbox = Util.bezierBoundingBox(lastX, lastY, ...outline.slice(i, i + 6));\n minX = Math.min(minX, bbox[0]);\n minY = Math.min(minY, bbox[1]);\n maxX = Math.max(maxX, bbox[2]);\n maxY = Math.max(maxY, bbox[3]);\n if (lastPointY < bbox[3]) {\n lastPointX = bbox[2];\n lastPointY = bbox[3];\n } else if (lastPointY === bbox[3]) {\n lastPointX = ltrCallback(lastPointX, bbox[2]);\n }\n }\n lastX = outline[i + 4];\n lastY = outline[i + 5];\n }\n const x = minX - this.#innerMargin,\n y = minY - this.#innerMargin,\n width = maxX - minX + 2 * this.#innerMargin,\n height = maxY - minY + 2 * this.#innerMargin;\n this.#bbox = {\n x,\n y,\n width,\n height,\n lastPoint: [lastPointX, lastPointY]\n };\n }\n get box() {\n return this.#bbox;\n }\n getNewOutline(thickness, innerMargin) {\n const {\n x,\n y,\n width,\n height\n } = this.#bbox;\n const [layerX, layerY, layerWidth, layerHeight] = this.#box;\n const sx = width * layerWidth;\n const sy = height * layerHeight;\n const tx = x * layerWidth + layerX;\n const ty = y * layerHeight + layerY;\n const outliner = new FreeOutliner({\n x: this.#points[0] * sx + tx,\n y: this.#points[1] * sy + ty\n }, this.#box, this.#scaleFactor, thickness, this.#isLTR, innerMargin ?? this.#innerMargin);\n for (let i = 2; i < this.#points.length; i += 2) {\n outliner.add({\n x: this.#points[i] * sx + tx,\n y: this.#points[i + 1] * sy + ty\n });\n }\n return outliner.getOutlines();\n }\n}\n\n;// CONCATENATED MODULE: ./src/display/editor/color_picker.js\n\n\n\nclass ColorPicker {\n #boundKeyDown = this.#keyDown.bind(this);\n #boundPointerDown = this.#pointerDown.bind(this);\n #button = null;\n #buttonSwatch = null;\n #defaultColor;\n #dropdown = null;\n #dropdownWasFromKeyboard = false;\n #isMainColorPicker = false;\n #editor = null;\n #eventBus;\n #uiManager = null;\n #type;\n static get _keyboardManager() {\n return shadow(this, \"_keyboardManager\", new KeyboardManager([[[\"Escape\", \"mac+Escape\"], ColorPicker.prototype._hideDropdownFromKeyboard], [[\" \", \"mac+ \"], ColorPicker.prototype._colorSelectFromKeyboard], [[\"ArrowDown\", \"ArrowRight\", \"mac+ArrowDown\", \"mac+ArrowRight\"], ColorPicker.prototype._moveToNext], [[\"ArrowUp\", \"ArrowLeft\", \"mac+ArrowUp\", \"mac+ArrowLeft\"], ColorPicker.prototype._moveToPrevious], [[\"Home\", \"mac+Home\"], ColorPicker.prototype._moveToBeginning], [[\"End\", \"mac+End\"], ColorPicker.prototype._moveToEnd]]));\n }\n constructor({\n editor = null,\n uiManager = null\n }) {\n if (editor) {\n this.#isMainColorPicker = false;\n this.#type = AnnotationEditorParamsType.HIGHLIGHT_COLOR;\n this.#editor = editor;\n } else {\n this.#isMainColorPicker = true;\n this.#type = AnnotationEditorParamsType.HIGHLIGHT_DEFAULT_COLOR;\n }\n this.#uiManager = editor?._uiManager || uiManager;\n this.#eventBus = this.#uiManager._eventBus;\n this.#defaultColor = editor?.color || this.#uiManager?.highlightColors.values().next().value || \"#FFFF98\";\n }\n renderButton() {\n const button = this.#button = document.createElement(\"button\");\n button.className = \"colorPicker\";\n button.tabIndex = \"0\";\n button.setAttribute(\"data-l10n-id\", \"pdfjs-editor-colorpicker-button\");\n button.setAttribute(\"aria-haspopup\", true);\n const signal = this.#uiManager._signal;\n button.addEventListener(\"click\", this.#openDropdown.bind(this), {\n signal\n });\n button.addEventListener(\"keydown\", this.#boundKeyDown, {\n signal\n });\n const swatch = this.#buttonSwatch = document.createElement(\"span\");\n swatch.className = \"swatch\";\n swatch.setAttribute(\"aria-hidden\", true);\n swatch.style.backgroundColor = this.#defaultColor;\n button.append(swatch);\n return button;\n }\n renderMainDropdown() {\n const dropdown = this.#dropdown = this.#getDropdownRoot();\n dropdown.setAttribute(\"aria-orientation\", \"horizontal\");\n dropdown.setAttribute(\"aria-labelledby\", \"highlightColorPickerLabel\");\n return dropdown;\n }\n #getDropdownRoot() {\n const div = document.createElement(\"div\");\n const signal = this.#uiManager._signal;\n div.addEventListener(\"contextmenu\", noContextMenu, {\n signal\n });\n div.className = \"dropdown\";\n div.role = \"listbox\";\n div.setAttribute(\"aria-multiselectable\", false);\n div.setAttribute(\"aria-orientation\", \"vertical\");\n div.setAttribute(\"data-l10n-id\", \"pdfjs-editor-colorpicker-dropdown\");\n for (const [name, color] of this.#uiManager.highlightColors) {\n const button = document.createElement(\"button\");\n button.tabIndex = \"0\";\n button.role = \"option\";\n button.setAttribute(\"data-color\", color);\n button.title = name;\n button.setAttribute(\"data-l10n-id\", `pdfjs-editor-colorpicker-${name}`);\n const swatch = document.createElement(\"span\");\n button.append(swatch);\n swatch.className = \"swatch\";\n swatch.style.backgroundColor = color;\n button.setAttribute(\"aria-selected\", color === this.#defaultColor);\n button.addEventListener(\"click\", this.#colorSelect.bind(this, color), {\n signal\n });\n div.append(button);\n }\n div.addEventListener(\"keydown\", this.#boundKeyDown, {\n signal\n });\n return div;\n }\n #colorSelect(color, event) {\n event.stopPropagation();\n this.#eventBus.dispatch(\"switchannotationeditorparams\", {\n source: this,\n type: this.#type,\n value: color\n });\n }\n _colorSelectFromKeyboard(event) {\n if (event.target === this.#button) {\n this.#openDropdown(event);\n return;\n }\n const color = event.target.getAttribute(\"data-color\");\n if (!color) {\n return;\n }\n this.#colorSelect(color, event);\n }\n _moveToNext(event) {\n if (!this.#isDropdownVisible) {\n this.#openDropdown(event);\n return;\n }\n if (event.target === this.#button) {\n this.#dropdown.firstChild?.focus();\n return;\n }\n event.target.nextSibling?.focus();\n }\n _moveToPrevious(event) {\n if (event.target === this.#dropdown?.firstChild || event.target === this.#button) {\n if (this.#isDropdownVisible) {\n this._hideDropdownFromKeyboard();\n }\n return;\n }\n if (!this.#isDropdownVisible) {\n this.#openDropdown(event);\n }\n event.target.previousSibling?.focus();\n }\n _moveToBeginning(event) {\n if (!this.#isDropdownVisible) {\n this.#openDropdown(event);\n return;\n }\n this.#dropdown.firstChild?.focus();\n }\n _moveToEnd(event) {\n if (!this.#isDropdownVisible) {\n this.#openDropdown(event);\n return;\n }\n this.#dropdown.lastChild?.focus();\n }\n #keyDown(event) {\n ColorPicker._keyboardManager.exec(this, event);\n }\n #openDropdown(event) {\n if (this.#isDropdownVisible) {\n this.hideDropdown();\n return;\n }\n this.#dropdownWasFromKeyboard = event.detail === 0;\n window.addEventListener(\"pointerdown\", this.#boundPointerDown, {\n signal: this.#uiManager._signal\n });\n if (this.#dropdown) {\n this.#dropdown.classList.remove(\"hidden\");\n return;\n }\n const root = this.#dropdown = this.#getDropdownRoot();\n this.#button.append(root);\n }\n #pointerDown(event) {\n if (this.#dropdown?.contains(event.target)) {\n return;\n }\n this.hideDropdown();\n }\n hideDropdown() {\n this.#dropdown?.classList.add(\"hidden\");\n window.removeEventListener(\"pointerdown\", this.#boundPointerDown);\n }\n get #isDropdownVisible() {\n return this.#dropdown && !this.#dropdown.classList.contains(\"hidden\");\n }\n _hideDropdownFromKeyboard() {\n if (this.#isMainColorPicker) {\n return;\n }\n if (!this.#isDropdownVisible) {\n this.#editor?.unselect();\n return;\n }\n this.hideDropdown();\n this.#button.focus({\n preventScroll: true,\n focusVisible: this.#dropdownWasFromKeyboard\n });\n }\n updateColor(color) {\n if (this.#buttonSwatch) {\n this.#buttonSwatch.style.backgroundColor = color;\n }\n if (!this.#dropdown) {\n return;\n }\n const i = this.#uiManager.highlightColors.values();\n for (const child of this.#dropdown.children) {\n child.setAttribute(\"aria-selected\", i.next().value === color);\n }\n }\n destroy() {\n this.#button?.remove();\n this.#button = null;\n this.#buttonSwatch = null;\n this.#dropdown?.remove();\n this.#dropdown = null;\n }\n}\n\n;// CONCATENATED MODULE: ./src/display/editor/highlight.js\n\n\n\n\n\n\nclass HighlightEditor extends AnnotationEditor {\n #anchorNode = null;\n #anchorOffset = 0;\n #boxes;\n #clipPathId = null;\n #colorPicker = null;\n #focusOutlines = null;\n #focusNode = null;\n #focusOffset = 0;\n #highlightDiv = null;\n #highlightOutlines = null;\n #id = null;\n #isFreeHighlight = false;\n #boundKeydown = this.#keydown.bind(this);\n #lastPoint = null;\n #opacity;\n #outlineId = null;\n #text = \"\";\n #thickness;\n #methodOfCreation = \"\";\n static _defaultColor = null;\n static _defaultOpacity = 1;\n static _defaultThickness = 12;\n static _l10nPromise;\n static _type = \"highlight\";\n static _editorType = AnnotationEditorType.HIGHLIGHT;\n static _freeHighlightId = -1;\n static _freeHighlight = null;\n static _freeHighlightClipId = \"\";\n static get _keyboardManager() {\n const proto = HighlightEditor.prototype;\n return shadow(this, \"_keyboardManager\", new KeyboardManager([[[\"ArrowLeft\", \"mac+ArrowLeft\"], proto._moveCaret, {\n args: [0]\n }], [[\"ArrowRight\", \"mac+ArrowRight\"], proto._moveCaret, {\n args: [1]\n }], [[\"ArrowUp\", \"mac+ArrowUp\"], proto._moveCaret, {\n args: [2]\n }], [[\"ArrowDown\", \"mac+ArrowDown\"], proto._moveCaret, {\n args: [3]\n }]]));\n }\n constructor(params) {\n super({\n ...params,\n name: \"highlightEditor\"\n });\n this.color = params.color || HighlightEditor._defaultColor;\n this.#thickness = params.thickness || HighlightEditor._defaultThickness;\n this.#opacity = params.opacity || HighlightEditor._defaultOpacity;\n this.#boxes = params.boxes || null;\n this.#methodOfCreation = params.methodOfCreation || \"\";\n this.#text = params.text || \"\";\n this._isDraggable = false;\n if (params.highlightId > -1) {\n this.#isFreeHighlight = true;\n this.#createFreeOutlines(params);\n this.#addToDrawLayer();\n } else {\n this.#anchorNode = params.anchorNode;\n this.#anchorOffset = params.anchorOffset;\n this.#focusNode = params.focusNode;\n this.#focusOffset = params.focusOffset;\n this.#createOutlines();\n this.#addToDrawLayer();\n this.rotate(this.rotation);\n }\n }\n get telemetryInitialData() {\n return {\n action: \"added\",\n type: this.#isFreeHighlight ? \"free_highlight\" : \"highlight\",\n color: this._uiManager.highlightColorNames.get(this.color),\n thickness: this.#thickness,\n methodOfCreation: this.#methodOfCreation\n };\n }\n get telemetryFinalData() {\n return {\n type: \"highlight\",\n color: this._uiManager.highlightColorNames.get(this.color)\n };\n }\n static computeTelemetryFinalData(data) {\n return {\n numberOfColors: data.get(\"color\").size\n };\n }\n #createOutlines() {\n const outliner = new Outliner(this.#boxes, 0.001);\n this.#highlightOutlines = outliner.getOutlines();\n ({\n x: this.x,\n y: this.y,\n width: this.width,\n height: this.height\n } = this.#highlightOutlines.box);\n const outlinerForOutline = new Outliner(this.#boxes, 0.0025, 0.001, this._uiManager.direction === \"ltr\");\n this.#focusOutlines = outlinerForOutline.getOutlines();\n const {\n lastPoint\n } = this.#focusOutlines.box;\n this.#lastPoint = [(lastPoint[0] - this.x) / this.width, (lastPoint[1] - this.y) / this.height];\n }\n #createFreeOutlines({\n highlightOutlines,\n highlightId,\n clipPathId\n }) {\n this.#highlightOutlines = highlightOutlines;\n const extraThickness = 1.5;\n this.#focusOutlines = highlightOutlines.getNewOutline(this.#thickness / 2 + extraThickness, 0.0025);\n if (highlightId >= 0) {\n this.#id = highlightId;\n this.#clipPathId = clipPathId;\n this.parent.drawLayer.finalizeLine(highlightId, highlightOutlines);\n this.#outlineId = this.parent.drawLayer.highlightOutline(this.#focusOutlines);\n } else if (this.parent) {\n const angle = this.parent.viewport.rotation;\n this.parent.drawLayer.updateLine(this.#id, highlightOutlines);\n this.parent.drawLayer.updateBox(this.#id, HighlightEditor.#rotateBbox(this.#highlightOutlines.box, (angle - this.rotation + 360) % 360));\n this.parent.drawLayer.updateLine(this.#outlineId, this.#focusOutlines);\n this.parent.drawLayer.updateBox(this.#outlineId, HighlightEditor.#rotateBbox(this.#focusOutlines.box, angle));\n }\n const {\n x,\n y,\n width,\n height\n } = highlightOutlines.box;\n switch (this.rotation) {\n case 0:\n this.x = x;\n this.y = y;\n this.width = width;\n this.height = height;\n break;\n case 90:\n {\n const [pageWidth, pageHeight] = this.parentDimensions;\n this.x = y;\n this.y = 1 - x;\n this.width = width * pageHeight / pageWidth;\n this.height = height * pageWidth / pageHeight;\n break;\n }\n case 180:\n this.x = 1 - x;\n this.y = 1 - y;\n this.width = width;\n this.height = height;\n break;\n case 270:\n {\n const [pageWidth, pageHeight] = this.parentDimensions;\n this.x = 1 - y;\n this.y = x;\n this.width = width * pageHeight / pageWidth;\n this.height = height * pageWidth / pageHeight;\n break;\n }\n }\n const {\n lastPoint\n } = this.#focusOutlines.box;\n this.#lastPoint = [(lastPoint[0] - x) / width, (lastPoint[1] - y) / height];\n }\n static initialize(l10n, uiManager) {\n AnnotationEditor.initialize(l10n, uiManager);\n HighlightEditor._defaultColor ||= uiManager.highlightColors?.values().next().value || \"#fff066\";\n }\n static updateDefaultParams(type, value) {\n switch (type) {\n case AnnotationEditorParamsType.HIGHLIGHT_DEFAULT_COLOR:\n HighlightEditor._defaultColor = value;\n break;\n case AnnotationEditorParamsType.HIGHLIGHT_THICKNESS:\n HighlightEditor._defaultThickness = value;\n break;\n }\n }\n translateInPage(x, y) {}\n get toolbarPosition() {\n return this.#lastPoint;\n }\n updateParams(type, value) {\n switch (type) {\n case AnnotationEditorParamsType.HIGHLIGHT_COLOR:\n this.#updateColor(value);\n break;\n case AnnotationEditorParamsType.HIGHLIGHT_THICKNESS:\n this.#updateThickness(value);\n break;\n }\n }\n static get defaultPropertiesToUpdate() {\n return [[AnnotationEditorParamsType.HIGHLIGHT_DEFAULT_COLOR, HighlightEditor._defaultColor], [AnnotationEditorParamsType.HIGHLIGHT_THICKNESS, HighlightEditor._defaultThickness]];\n }\n get propertiesToUpdate() {\n return [[AnnotationEditorParamsType.HIGHLIGHT_COLOR, this.color || HighlightEditor._defaultColor], [AnnotationEditorParamsType.HIGHLIGHT_THICKNESS, this.#thickness || HighlightEditor._defaultThickness], [AnnotationEditorParamsType.HIGHLIGHT_FREE, this.#isFreeHighlight]];\n }\n #updateColor(color) {\n const setColor = col => {\n this.color = col;\n this.parent?.drawLayer.changeColor(this.#id, col);\n this.#colorPicker?.updateColor(col);\n };\n const savedColor = this.color;\n this.addCommands({\n cmd: setColor.bind(this, color),\n undo: setColor.bind(this, savedColor),\n post: this._uiManager.updateUI.bind(this._uiManager, this),\n mustExec: true,\n type: AnnotationEditorParamsType.HIGHLIGHT_COLOR,\n overwriteIfSameType: true,\n keepUndo: true\n });\n this._reportTelemetry({\n action: \"color_changed\",\n color: this._uiManager.highlightColorNames.get(color)\n }, true);\n }\n #updateThickness(thickness) {\n const savedThickness = this.#thickness;\n const setThickness = th => {\n this.#thickness = th;\n this.#changeThickness(th);\n };\n this.addCommands({\n cmd: setThickness.bind(this, thickness),\n undo: setThickness.bind(this, savedThickness),\n post: this._uiManager.updateUI.bind(this._uiManager, this),\n mustExec: true,\n type: AnnotationEditorParamsType.INK_THICKNESS,\n overwriteIfSameType: true,\n keepUndo: true\n });\n this._reportTelemetry({\n action: \"thickness_changed\",\n thickness\n }, true);\n }\n async addEditToolbar() {\n const toolbar = await super.addEditToolbar();\n if (!toolbar) {\n return null;\n }\n if (this._uiManager.highlightColors) {\n this.#colorPicker = new ColorPicker({\n editor: this\n });\n toolbar.addColorPicker(this.#colorPicker);\n }\n return toolbar;\n }\n disableEditing() {\n super.disableEditing();\n this.div.classList.toggle(\"disabled\", true);\n }\n enableEditing() {\n super.enableEditing();\n this.div.classList.toggle(\"disabled\", false);\n }\n fixAndSetPosition() {\n return super.fixAndSetPosition(this.#getRotation());\n }\n getBaseTranslation() {\n return [0, 0];\n }\n getRect(tx, ty) {\n return super.getRect(tx, ty, this.#getRotation());\n }\n onceAdded() {\n this.parent.addUndoableEditor(this);\n this.div.focus();\n }\n remove() {\n this.#cleanDrawLayer();\n this._reportTelemetry({\n action: \"deleted\"\n });\n super.remove();\n }\n rebuild() {\n if (!this.parent) {\n return;\n }\n super.rebuild();\n if (this.div === null) {\n return;\n }\n this.#addToDrawLayer();\n if (!this.isAttachedToDOM) {\n this.parent.add(this);\n }\n }\n setParent(parent) {\n let mustBeSelected = false;\n if (this.parent && !parent) {\n this.#cleanDrawLayer();\n } else if (parent) {\n this.#addToDrawLayer(parent);\n mustBeSelected = !this.parent && this.div?.classList.contains(\"selectedEditor\");\n }\n super.setParent(parent);\n this.show(this._isVisible);\n if (mustBeSelected) {\n this.select();\n }\n }\n #changeThickness(thickness) {\n if (!this.#isFreeHighlight) {\n return;\n }\n this.#createFreeOutlines({\n highlightOutlines: this.#highlightOutlines.getNewOutline(thickness / 2)\n });\n this.fixAndSetPosition();\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.setDims(this.width * parentWidth, this.height * parentHeight);\n }\n #cleanDrawLayer() {\n if (this.#id === null || !this.parent) {\n return;\n }\n this.parent.drawLayer.remove(this.#id);\n this.#id = null;\n this.parent.drawLayer.remove(this.#outlineId);\n this.#outlineId = null;\n }\n #addToDrawLayer(parent = this.parent) {\n if (this.#id !== null) {\n return;\n }\n ({\n id: this.#id,\n clipPathId: this.#clipPathId\n } = parent.drawLayer.highlight(this.#highlightOutlines, this.color, this.#opacity));\n this.#outlineId = parent.drawLayer.highlightOutline(this.#focusOutlines);\n if (this.#highlightDiv) {\n this.#highlightDiv.style.clipPath = this.#clipPathId;\n }\n }\n static #rotateBbox({\n x,\n y,\n width,\n height\n }, angle) {\n switch (angle) {\n case 90:\n return {\n x: 1 - y - height,\n y: x,\n width: height,\n height: width\n };\n case 180:\n return {\n x: 1 - x - width,\n y: 1 - y - height,\n width,\n height\n };\n case 270:\n return {\n x: y,\n y: 1 - x - width,\n width: height,\n height: width\n };\n }\n return {\n x,\n y,\n width,\n height\n };\n }\n rotate(angle) {\n const {\n drawLayer\n } = this.parent;\n let box;\n if (this.#isFreeHighlight) {\n angle = (angle - this.rotation + 360) % 360;\n box = HighlightEditor.#rotateBbox(this.#highlightOutlines.box, angle);\n } else {\n box = HighlightEditor.#rotateBbox(this, angle);\n }\n drawLayer.rotate(this.#id, angle);\n drawLayer.rotate(this.#outlineId, angle);\n drawLayer.updateBox(this.#id, box);\n drawLayer.updateBox(this.#outlineId, HighlightEditor.#rotateBbox(this.#focusOutlines.box, angle));\n }\n render() {\n if (this.div) {\n return this.div;\n }\n const div = super.render();\n if (this.#text) {\n div.setAttribute(\"aria-label\", this.#text);\n div.setAttribute(\"role\", \"mark\");\n }\n if (this.#isFreeHighlight) {\n div.classList.add(\"free\");\n } else {\n this.div.addEventListener(\"keydown\", this.#boundKeydown, {\n signal: this._uiManager._signal\n });\n }\n const highlightDiv = this.#highlightDiv = document.createElement(\"div\");\n div.append(highlightDiv);\n highlightDiv.setAttribute(\"aria-hidden\", \"true\");\n highlightDiv.className = \"internal\";\n highlightDiv.style.clipPath = this.#clipPathId;\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.setDims(this.width * parentWidth, this.height * parentHeight);\n bindEvents(this, this.#highlightDiv, [\"pointerover\", \"pointerleave\"]);\n this.enableEditing();\n return div;\n }\n pointerover() {\n this.parent.drawLayer.addClass(this.#outlineId, \"hovered\");\n }\n pointerleave() {\n this.parent.drawLayer.removeClass(this.#outlineId, \"hovered\");\n }\n #keydown(event) {\n HighlightEditor._keyboardManager.exec(this, event);\n }\n _moveCaret(direction) {\n this.parent.unselect(this);\n switch (direction) {\n case 0:\n case 2:\n this.#setCaret(true);\n break;\n case 1:\n case 3:\n this.#setCaret(false);\n break;\n }\n }\n #setCaret(start) {\n if (!this.#anchorNode) {\n return;\n }\n const selection = window.getSelection();\n if (start) {\n selection.setPosition(this.#anchorNode, this.#anchorOffset);\n } else {\n selection.setPosition(this.#focusNode, this.#focusOffset);\n }\n }\n select() {\n super.select();\n if (!this.#outlineId) {\n return;\n }\n this.parent?.drawLayer.removeClass(this.#outlineId, \"hovered\");\n this.parent?.drawLayer.addClass(this.#outlineId, \"selected\");\n }\n unselect() {\n super.unselect();\n if (!this.#outlineId) {\n return;\n }\n this.parent?.drawLayer.removeClass(this.#outlineId, \"selected\");\n if (!this.#isFreeHighlight) {\n this.#setCaret(false);\n }\n }\n get _mustFixPosition() {\n return !this.#isFreeHighlight;\n }\n show(visible = this._isVisible) {\n super.show(visible);\n if (this.parent) {\n this.parent.drawLayer.show(this.#id, visible);\n this.parent.drawLayer.show(this.#outlineId, visible);\n }\n }\n #getRotation() {\n return this.#isFreeHighlight ? this.rotation : 0;\n }\n #serializeBoxes() {\n if (this.#isFreeHighlight) {\n return null;\n }\n const [pageWidth, pageHeight] = this.pageDimensions;\n const boxes = this.#boxes;\n const quadPoints = new Float32Array(boxes.length * 8);\n let i = 0;\n for (const {\n x,\n y,\n width,\n height\n } of boxes) {\n const sx = x * pageWidth;\n const sy = (1 - y - height) * pageHeight;\n quadPoints[i] = quadPoints[i + 4] = sx;\n quadPoints[i + 1] = quadPoints[i + 3] = sy;\n quadPoints[i + 2] = quadPoints[i + 6] = sx + width * pageWidth;\n quadPoints[i + 5] = quadPoints[i + 7] = sy + height * pageHeight;\n i += 8;\n }\n return quadPoints;\n }\n #serializeOutlines(rect) {\n return this.#highlightOutlines.serialize(rect, this.#getRotation());\n }\n static startHighlighting(parent, isLTR, {\n target: textLayer,\n x,\n y\n }) {\n const {\n x: layerX,\n y: layerY,\n width: parentWidth,\n height: parentHeight\n } = textLayer.getBoundingClientRect();\n const pointerMove = e => {\n this.#highlightMove(parent, e);\n };\n const signal = parent._signal;\n const pointerDownOptions = {\n capture: true,\n passive: false,\n signal\n };\n const pointerDown = e => {\n e.preventDefault();\n e.stopPropagation();\n };\n const pointerUpCallback = e => {\n textLayer.removeEventListener(\"pointermove\", pointerMove);\n window.removeEventListener(\"blur\", pointerUpCallback);\n window.removeEventListener(\"pointerup\", pointerUpCallback);\n window.removeEventListener(\"pointerdown\", pointerDown, pointerDownOptions);\n window.removeEventListener(\"contextmenu\", noContextMenu);\n this.#endHighlight(parent, e);\n };\n window.addEventListener(\"blur\", pointerUpCallback, {\n signal\n });\n window.addEventListener(\"pointerup\", pointerUpCallback, {\n signal\n });\n window.addEventListener(\"pointerdown\", pointerDown, pointerDownOptions);\n window.addEventListener(\"contextmenu\", noContextMenu, {\n signal\n });\n textLayer.addEventListener(\"pointermove\", pointerMove, {\n signal\n });\n this._freeHighlight = new FreeOutliner({\n x,\n y\n }, [layerX, layerY, parentWidth, parentHeight], parent.scale, this._defaultThickness / 2, isLTR, 0.001);\n ({\n id: this._freeHighlightId,\n clipPathId: this._freeHighlightClipId\n } = parent.drawLayer.highlight(this._freeHighlight, this._defaultColor, this._defaultOpacity, true));\n }\n static #highlightMove(parent, event) {\n if (this._freeHighlight.add(event)) {\n parent.drawLayer.updatePath(this._freeHighlightId, this._freeHighlight);\n }\n }\n static #endHighlight(parent, event) {\n if (!this._freeHighlight.isEmpty()) {\n parent.createAndAddNewEditor(event, false, {\n highlightId: this._freeHighlightId,\n highlightOutlines: this._freeHighlight.getOutlines(),\n clipPathId: this._freeHighlightClipId,\n methodOfCreation: \"main_toolbar\"\n });\n } else {\n parent.drawLayer.removeFreeHighlight(this._freeHighlightId);\n }\n this._freeHighlightId = -1;\n this._freeHighlight = null;\n this._freeHighlightClipId = \"\";\n }\n static deserialize(data, parent, uiManager) {\n const editor = super.deserialize(data, parent, uiManager);\n const {\n rect: [blX, blY, trX, trY],\n color,\n quadPoints\n } = data;\n editor.color = Util.makeHexColor(...color);\n editor.#opacity = data.opacity;\n const [pageWidth, pageHeight] = editor.pageDimensions;\n editor.width = (trX - blX) / pageWidth;\n editor.height = (trY - blY) / pageHeight;\n const boxes = editor.#boxes = [];\n for (let i = 0; i < quadPoints.length; i += 8) {\n boxes.push({\n x: (quadPoints[4] - trX) / pageWidth,\n y: (trY - (1 - quadPoints[i + 5])) / pageHeight,\n width: (quadPoints[i + 2] - quadPoints[i]) / pageWidth,\n height: (quadPoints[i + 5] - quadPoints[i + 1]) / pageHeight\n });\n }\n editor.#createOutlines();\n return editor;\n }\n serialize(isForCopying = false) {\n if (this.isEmpty() || isForCopying) {\n return null;\n }\n const rect = this.getRect(0, 0);\n const color = AnnotationEditor._colorManager.convert(this.color);\n return {\n annotationType: AnnotationEditorType.HIGHLIGHT,\n color,\n opacity: this.#opacity,\n thickness: this.#thickness,\n quadPoints: this.#serializeBoxes(),\n outlines: this.#serializeOutlines(rect),\n pageIndex: this.pageIndex,\n rect,\n rotation: this.#getRotation(),\n structTreeParentId: this._structTreeParentId\n };\n }\n static canCreateNewEmptyEditor() {\n return false;\n }\n}\n\n;// CONCATENATED MODULE: ./src/display/editor/ink.js\n\n\n\n\n\nclass InkEditor extends AnnotationEditor {\n #baseHeight = 0;\n #baseWidth = 0;\n #boundCanvasPointermove = this.canvasPointermove.bind(this);\n #boundCanvasPointerleave = this.canvasPointerleave.bind(this);\n #boundCanvasPointerup = this.canvasPointerup.bind(this);\n #boundCanvasPointerdown = this.canvasPointerdown.bind(this);\n #canvasContextMenuTimeoutId = null;\n #currentPath2D = new Path2D();\n #disableEditing = false;\n #hasSomethingToDraw = false;\n #isCanvasInitialized = false;\n #observer = null;\n #realWidth = 0;\n #realHeight = 0;\n #requestFrameCallback = null;\n static _defaultColor = null;\n static _defaultOpacity = 1;\n static _defaultThickness = 1;\n static _type = \"ink\";\n static _editorType = AnnotationEditorType.INK;\n constructor(params) {\n super({\n ...params,\n name: \"inkEditor\"\n });\n this.color = params.color || null;\n this.thickness = params.thickness || null;\n this.opacity = params.opacity || null;\n this.paths = [];\n this.bezierPath2D = [];\n this.allRawPaths = [];\n this.currentPath = [];\n this.scaleFactor = 1;\n this.translationX = this.translationY = 0;\n this.x = 0;\n this.y = 0;\n this._willKeepAspectRatio = true;\n }\n static initialize(l10n, uiManager) {\n AnnotationEditor.initialize(l10n, uiManager);\n }\n static updateDefaultParams(type, value) {\n switch (type) {\n case AnnotationEditorParamsType.INK_THICKNESS:\n InkEditor._defaultThickness = value;\n break;\n case AnnotationEditorParamsType.INK_COLOR:\n InkEditor._defaultColor = value;\n break;\n case AnnotationEditorParamsType.INK_OPACITY:\n InkEditor._defaultOpacity = value / 100;\n break;\n }\n }\n updateParams(type, value) {\n switch (type) {\n case AnnotationEditorParamsType.INK_THICKNESS:\n this.#updateThickness(value);\n break;\n case AnnotationEditorParamsType.INK_COLOR:\n this.#updateColor(value);\n break;\n case AnnotationEditorParamsType.INK_OPACITY:\n this.#updateOpacity(value);\n break;\n }\n }\n static get defaultPropertiesToUpdate() {\n return [[AnnotationEditorParamsType.INK_THICKNESS, InkEditor._defaultThickness], [AnnotationEditorParamsType.INK_COLOR, InkEditor._defaultColor || AnnotationEditor._defaultLineColor], [AnnotationEditorParamsType.INK_OPACITY, Math.round(InkEditor._defaultOpacity * 100)]];\n }\n get propertiesToUpdate() {\n return [[AnnotationEditorParamsType.INK_THICKNESS, this.thickness || InkEditor._defaultThickness], [AnnotationEditorParamsType.INK_COLOR, this.color || InkEditor._defaultColor || AnnotationEditor._defaultLineColor], [AnnotationEditorParamsType.INK_OPACITY, Math.round(100 * (this.opacity ?? InkEditor._defaultOpacity))]];\n }\n #updateThickness(thickness) {\n const setThickness = th => {\n this.thickness = th;\n this.#fitToContent();\n };\n const savedThickness = this.thickness;\n this.addCommands({\n cmd: setThickness.bind(this, thickness),\n undo: setThickness.bind(this, savedThickness),\n post: this._uiManager.updateUI.bind(this._uiManager, this),\n mustExec: true,\n type: AnnotationEditorParamsType.INK_THICKNESS,\n overwriteIfSameType: true,\n keepUndo: true\n });\n }\n #updateColor(color) {\n const setColor = col => {\n this.color = col;\n this.#redraw();\n };\n const savedColor = this.color;\n this.addCommands({\n cmd: setColor.bind(this, color),\n undo: setColor.bind(this, savedColor),\n post: this._uiManager.updateUI.bind(this._uiManager, this),\n mustExec: true,\n type: AnnotationEditorParamsType.INK_COLOR,\n overwriteIfSameType: true,\n keepUndo: true\n });\n }\n #updateOpacity(opacity) {\n const setOpacity = op => {\n this.opacity = op;\n this.#redraw();\n };\n opacity /= 100;\n const savedOpacity = this.opacity;\n this.addCommands({\n cmd: setOpacity.bind(this, opacity),\n undo: setOpacity.bind(this, savedOpacity),\n post: this._uiManager.updateUI.bind(this._uiManager, this),\n mustExec: true,\n type: AnnotationEditorParamsType.INK_OPACITY,\n overwriteIfSameType: true,\n keepUndo: true\n });\n }\n rebuild() {\n if (!this.parent) {\n return;\n }\n super.rebuild();\n if (this.div === null) {\n return;\n }\n if (!this.canvas) {\n this.#createCanvas();\n this.#createObserver();\n }\n if (!this.isAttachedToDOM) {\n this.parent.add(this);\n this.#setCanvasDims();\n }\n this.#fitToContent();\n }\n remove() {\n if (this.canvas === null) {\n return;\n }\n if (!this.isEmpty()) {\n this.commit();\n }\n this.canvas.width = this.canvas.height = 0;\n this.canvas.remove();\n this.canvas = null;\n if (this.#canvasContextMenuTimeoutId) {\n clearTimeout(this.#canvasContextMenuTimeoutId);\n this.#canvasContextMenuTimeoutId = null;\n }\n this.#observer?.disconnect();\n this.#observer = null;\n super.remove();\n }\n setParent(parent) {\n if (!this.parent && parent) {\n this._uiManager.removeShouldRescale(this);\n } else if (this.parent && parent === null) {\n this._uiManager.addShouldRescale(this);\n }\n super.setParent(parent);\n }\n onScaleChanging() {\n const [parentWidth, parentHeight] = this.parentDimensions;\n const width = this.width * parentWidth;\n const height = this.height * parentHeight;\n this.setDimensions(width, height);\n }\n enableEditMode() {\n if (this.#disableEditing || this.canvas === null) {\n return;\n }\n super.enableEditMode();\n this._isDraggable = false;\n this.canvas.addEventListener(\"pointerdown\", this.#boundCanvasPointerdown, {\n signal: this._uiManager._signal\n });\n }\n disableEditMode() {\n if (!this.isInEditMode() || this.canvas === null) {\n return;\n }\n super.disableEditMode();\n this._isDraggable = !this.isEmpty();\n this.div.classList.remove(\"editing\");\n this.canvas.removeEventListener(\"pointerdown\", this.#boundCanvasPointerdown);\n }\n onceAdded() {\n this._isDraggable = !this.isEmpty();\n }\n isEmpty() {\n return this.paths.length === 0 || this.paths.length === 1 && this.paths[0].length === 0;\n }\n #getInitialBBox() {\n const {\n parentRotation,\n parentDimensions: [width, height]\n } = this;\n switch (parentRotation) {\n case 90:\n return [0, height, height, width];\n case 180:\n return [width, height, width, height];\n case 270:\n return [width, 0, height, width];\n default:\n return [0, 0, width, height];\n }\n }\n #setStroke() {\n const {\n ctx,\n color,\n opacity,\n thickness,\n parentScale,\n scaleFactor\n } = this;\n ctx.lineWidth = thickness * parentScale / scaleFactor;\n ctx.lineCap = \"round\";\n ctx.lineJoin = \"round\";\n ctx.miterLimit = 10;\n ctx.strokeStyle = `${color}${opacityToHex(opacity)}`;\n }\n #startDrawing(x, y) {\n const signal = this._uiManager._signal;\n this.canvas.addEventListener(\"contextmenu\", noContextMenu, {\n signal\n });\n this.canvas.addEventListener(\"pointerleave\", this.#boundCanvasPointerleave, {\n signal\n });\n this.canvas.addEventListener(\"pointermove\", this.#boundCanvasPointermove, {\n signal\n });\n this.canvas.addEventListener(\"pointerup\", this.#boundCanvasPointerup, {\n signal\n });\n this.canvas.removeEventListener(\"pointerdown\", this.#boundCanvasPointerdown);\n this.isEditing = true;\n if (!this.#isCanvasInitialized) {\n this.#isCanvasInitialized = true;\n this.#setCanvasDims();\n this.thickness ||= InkEditor._defaultThickness;\n this.color ||= InkEditor._defaultColor || AnnotationEditor._defaultLineColor;\n this.opacity ??= InkEditor._defaultOpacity;\n }\n this.currentPath.push([x, y]);\n this.#hasSomethingToDraw = false;\n this.#setStroke();\n this.#requestFrameCallback = () => {\n this.#drawPoints();\n if (this.#requestFrameCallback) {\n window.requestAnimationFrame(this.#requestFrameCallback);\n }\n };\n window.requestAnimationFrame(this.#requestFrameCallback);\n }\n #draw(x, y) {\n const [lastX, lastY] = this.currentPath.at(-1);\n if (this.currentPath.length > 1 && x === lastX && y === lastY) {\n return;\n }\n const currentPath = this.currentPath;\n let path2D = this.#currentPath2D;\n currentPath.push([x, y]);\n this.#hasSomethingToDraw = true;\n if (currentPath.length <= 2) {\n path2D.moveTo(...currentPath[0]);\n path2D.lineTo(x, y);\n return;\n }\n if (currentPath.length === 3) {\n this.#currentPath2D = path2D = new Path2D();\n path2D.moveTo(...currentPath[0]);\n }\n this.#makeBezierCurve(path2D, ...currentPath.at(-3), ...currentPath.at(-2), x, y);\n }\n #endPath() {\n if (this.currentPath.length === 0) {\n return;\n }\n const lastPoint = this.currentPath.at(-1);\n this.#currentPath2D.lineTo(...lastPoint);\n }\n #stopDrawing(x, y) {\n this.#requestFrameCallback = null;\n x = Math.min(Math.max(x, 0), this.canvas.width);\n y = Math.min(Math.max(y, 0), this.canvas.height);\n this.#draw(x, y);\n this.#endPath();\n let bezier;\n if (this.currentPath.length !== 1) {\n bezier = this.#generateBezierPoints();\n } else {\n const xy = [x, y];\n bezier = [[xy, xy.slice(), xy.slice(), xy]];\n }\n const path2D = this.#currentPath2D;\n const currentPath = this.currentPath;\n this.currentPath = [];\n this.#currentPath2D = new Path2D();\n const cmd = () => {\n this.allRawPaths.push(currentPath);\n this.paths.push(bezier);\n this.bezierPath2D.push(path2D);\n this._uiManager.rebuild(this);\n };\n const undo = () => {\n this.allRawPaths.pop();\n this.paths.pop();\n this.bezierPath2D.pop();\n if (this.paths.length === 0) {\n this.remove();\n } else {\n if (!this.canvas) {\n this.#createCanvas();\n this.#createObserver();\n }\n this.#fitToContent();\n }\n };\n this.addCommands({\n cmd,\n undo,\n mustExec: true\n });\n }\n #drawPoints() {\n if (!this.#hasSomethingToDraw) {\n return;\n }\n this.#hasSomethingToDraw = false;\n const thickness = Math.ceil(this.thickness * this.parentScale);\n const lastPoints = this.currentPath.slice(-3);\n const x = lastPoints.map(xy => xy[0]);\n const y = lastPoints.map(xy => xy[1]);\n const xMin = Math.min(...x) - thickness;\n const xMax = Math.max(...x) + thickness;\n const yMin = Math.min(...y) - thickness;\n const yMax = Math.max(...y) + thickness;\n const {\n ctx\n } = this;\n ctx.save();\n ctx.clearRect(0, 0, this.canvas.width, this.canvas.height);\n for (const path of this.bezierPath2D) {\n ctx.stroke(path);\n }\n ctx.stroke(this.#currentPath2D);\n ctx.restore();\n }\n #makeBezierCurve(path2D, x0, y0, x1, y1, x2, y2) {\n const prevX = (x0 + x1) / 2;\n const prevY = (y0 + y1) / 2;\n const x3 = (x1 + x2) / 2;\n const y3 = (y1 + y2) / 2;\n path2D.bezierCurveTo(prevX + 2 * (x1 - prevX) / 3, prevY + 2 * (y1 - prevY) / 3, x3 + 2 * (x1 - x3) / 3, y3 + 2 * (y1 - y3) / 3, x3, y3);\n }\n #generateBezierPoints() {\n const path = this.currentPath;\n if (path.length <= 2) {\n return [[path[0], path[0], path.at(-1), path.at(-1)]];\n }\n const bezierPoints = [];\n let i;\n let [x0, y0] = path[0];\n for (i = 1; i < path.length - 2; i++) {\n const [x1, y1] = path[i];\n const [x2, y2] = path[i + 1];\n const x3 = (x1 + x2) / 2;\n const y3 = (y1 + y2) / 2;\n const control1 = [x0 + 2 * (x1 - x0) / 3, y0 + 2 * (y1 - y0) / 3];\n const control2 = [x3 + 2 * (x1 - x3) / 3, y3 + 2 * (y1 - y3) / 3];\n bezierPoints.push([[x0, y0], control1, control2, [x3, y3]]);\n [x0, y0] = [x3, y3];\n }\n const [x1, y1] = path[i];\n const [x2, y2] = path[i + 1];\n const control1 = [x0 + 2 * (x1 - x0) / 3, y0 + 2 * (y1 - y0) / 3];\n const control2 = [x2 + 2 * (x1 - x2) / 3, y2 + 2 * (y1 - y2) / 3];\n bezierPoints.push([[x0, y0], control1, control2, [x2, y2]]);\n return bezierPoints;\n }\n #redraw() {\n if (this.isEmpty()) {\n this.#updateTransform();\n return;\n }\n this.#setStroke();\n const {\n canvas,\n ctx\n } = this;\n ctx.setTransform(1, 0, 0, 1, 0, 0);\n ctx.clearRect(0, 0, canvas.width, canvas.height);\n this.#updateTransform();\n for (const path of this.bezierPath2D) {\n ctx.stroke(path);\n }\n }\n commit() {\n if (this.#disableEditing) {\n return;\n }\n super.commit();\n this.isEditing = false;\n this.disableEditMode();\n this.setInForeground();\n this.#disableEditing = true;\n this.div.classList.add(\"disabled\");\n this.#fitToContent(true);\n this.select();\n this.parent.addInkEditorIfNeeded(true);\n this.moveInDOM();\n this.div.focus({\n preventScroll: true\n });\n }\n focusin(event) {\n if (!this._focusEventsAllowed) {\n return;\n }\n super.focusin(event);\n this.enableEditMode();\n }\n canvasPointerdown(event) {\n if (event.button !== 0 || !this.isInEditMode() || this.#disableEditing) {\n return;\n }\n this.setInForeground();\n event.preventDefault();\n if (!this.div.contains(document.activeElement)) {\n this.div.focus({\n preventScroll: true\n });\n }\n this.#startDrawing(event.offsetX, event.offsetY);\n }\n canvasPointermove(event) {\n event.preventDefault();\n this.#draw(event.offsetX, event.offsetY);\n }\n canvasPointerup(event) {\n event.preventDefault();\n this.#endDrawing(event);\n }\n canvasPointerleave(event) {\n this.#endDrawing(event);\n }\n #endDrawing(event) {\n this.canvas.removeEventListener(\"pointerleave\", this.#boundCanvasPointerleave);\n this.canvas.removeEventListener(\"pointermove\", this.#boundCanvasPointermove);\n this.canvas.removeEventListener(\"pointerup\", this.#boundCanvasPointerup);\n this.canvas.addEventListener(\"pointerdown\", this.#boundCanvasPointerdown, {\n signal: this._uiManager._signal\n });\n if (this.#canvasContextMenuTimeoutId) {\n clearTimeout(this.#canvasContextMenuTimeoutId);\n }\n this.#canvasContextMenuTimeoutId = setTimeout(() => {\n this.#canvasContextMenuTimeoutId = null;\n this.canvas.removeEventListener(\"contextmenu\", noContextMenu);\n }, 10);\n this.#stopDrawing(event.offsetX, event.offsetY);\n this.addToAnnotationStorage();\n this.setInBackground();\n }\n #createCanvas() {\n this.canvas = document.createElement(\"canvas\");\n this.canvas.width = this.canvas.height = 0;\n this.canvas.className = \"inkEditorCanvas\";\n this.canvas.setAttribute(\"data-l10n-id\", \"pdfjs-ink-canvas\");\n this.div.append(this.canvas);\n this.ctx = this.canvas.getContext(\"2d\");\n }\n #createObserver() {\n this.#observer = new ResizeObserver(entries => {\n const rect = entries[0].contentRect;\n if (rect.width && rect.height) {\n this.setDimensions(rect.width, rect.height);\n }\n });\n this.#observer.observe(this.div);\n this._uiManager._signal.addEventListener(\"abort\", () => {\n this.#observer?.disconnect();\n this.#observer = null;\n }, {\n once: true\n });\n }\n get isResizable() {\n return !this.isEmpty() && this.#disableEditing;\n }\n render() {\n if (this.div) {\n return this.div;\n }\n let baseX, baseY;\n if (this.width) {\n baseX = this.x;\n baseY = this.y;\n }\n super.render();\n this.div.setAttribute(\"data-l10n-id\", \"pdfjs-ink\");\n const [x, y, w, h] = this.#getInitialBBox();\n this.setAt(x, y, 0, 0);\n this.setDims(w, h);\n this.#createCanvas();\n if (this.width) {\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.setAspectRatio(this.width * parentWidth, this.height * parentHeight);\n this.setAt(baseX * parentWidth, baseY * parentHeight, this.width * parentWidth, this.height * parentHeight);\n this.#isCanvasInitialized = true;\n this.#setCanvasDims();\n this.setDims(this.width * parentWidth, this.height * parentHeight);\n this.#redraw();\n this.div.classList.add(\"disabled\");\n } else {\n this.div.classList.add(\"editing\");\n this.enableEditMode();\n }\n this.#createObserver();\n return this.div;\n }\n #setCanvasDims() {\n if (!this.#isCanvasInitialized) {\n return;\n }\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.canvas.width = Math.ceil(this.width * parentWidth);\n this.canvas.height = Math.ceil(this.height * parentHeight);\n this.#updateTransform();\n }\n setDimensions(width, height) {\n const roundedWidth = Math.round(width);\n const roundedHeight = Math.round(height);\n if (this.#realWidth === roundedWidth && this.#realHeight === roundedHeight) {\n return;\n }\n this.#realWidth = roundedWidth;\n this.#realHeight = roundedHeight;\n this.canvas.style.visibility = \"hidden\";\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.width = width / parentWidth;\n this.height = height / parentHeight;\n this.fixAndSetPosition();\n if (this.#disableEditing) {\n this.#setScaleFactor(width, height);\n }\n this.#setCanvasDims();\n this.#redraw();\n this.canvas.style.visibility = \"visible\";\n this.fixDims();\n }\n #setScaleFactor(width, height) {\n const padding = this.#getPadding();\n const scaleFactorW = (width - padding) / this.#baseWidth;\n const scaleFactorH = (height - padding) / this.#baseHeight;\n this.scaleFactor = Math.min(scaleFactorW, scaleFactorH);\n }\n #updateTransform() {\n const padding = this.#getPadding() / 2;\n this.ctx.setTransform(this.scaleFactor, 0, 0, this.scaleFactor, this.translationX * this.scaleFactor + padding, this.translationY * this.scaleFactor + padding);\n }\n static #buildPath2D(bezier) {\n const path2D = new Path2D();\n for (let i = 0, ii = bezier.length; i < ii; i++) {\n const [first, control1, control2, second] = bezier[i];\n if (i === 0) {\n path2D.moveTo(...first);\n }\n path2D.bezierCurveTo(control1[0], control1[1], control2[0], control2[1], second[0], second[1]);\n }\n return path2D;\n }\n static #toPDFCoordinates(points, rect, rotation) {\n const [blX, blY, trX, trY] = rect;\n switch (rotation) {\n case 0:\n for (let i = 0, ii = points.length; i < ii; i += 2) {\n points[i] += blX;\n points[i + 1] = trY - points[i + 1];\n }\n break;\n case 90:\n for (let i = 0, ii = points.length; i < ii; i += 2) {\n const x = points[i];\n points[i] = points[i + 1] + blX;\n points[i + 1] = x + blY;\n }\n break;\n case 180:\n for (let i = 0, ii = points.length; i < ii; i += 2) {\n points[i] = trX - points[i];\n points[i + 1] += blY;\n }\n break;\n case 270:\n for (let i = 0, ii = points.length; i < ii; i += 2) {\n const x = points[i];\n points[i] = trX - points[i + 1];\n points[i + 1] = trY - x;\n }\n break;\n default:\n throw new Error(\"Invalid rotation\");\n }\n return points;\n }\n static #fromPDFCoordinates(points, rect, rotation) {\n const [blX, blY, trX, trY] = rect;\n switch (rotation) {\n case 0:\n for (let i = 0, ii = points.length; i < ii; i += 2) {\n points[i] -= blX;\n points[i + 1] = trY - points[i + 1];\n }\n break;\n case 90:\n for (let i = 0, ii = points.length; i < ii; i += 2) {\n const x = points[i];\n points[i] = points[i + 1] - blY;\n points[i + 1] = x - blX;\n }\n break;\n case 180:\n for (let i = 0, ii = points.length; i < ii; i += 2) {\n points[i] = trX - points[i];\n points[i + 1] -= blY;\n }\n break;\n case 270:\n for (let i = 0, ii = points.length; i < ii; i += 2) {\n const x = points[i];\n points[i] = trY - points[i + 1];\n points[i + 1] = trX - x;\n }\n break;\n default:\n throw new Error(\"Invalid rotation\");\n }\n return points;\n }\n #serializePaths(s, tx, ty, rect) {\n const paths = [];\n const padding = this.thickness / 2;\n const shiftX = s * tx + padding;\n const shiftY = s * ty + padding;\n for (const bezier of this.paths) {\n const buffer = [];\n const points = [];\n for (let j = 0, jj = bezier.length; j < jj; j++) {\n const [first, control1, control2, second] = bezier[j];\n if (first[0] === second[0] && first[1] === second[1] && jj === 1) {\n const p0 = s * first[0] + shiftX;\n const p1 = s * first[1] + shiftY;\n buffer.push(p0, p1);\n points.push(p0, p1);\n break;\n }\n const p10 = s * first[0] + shiftX;\n const p11 = s * first[1] + shiftY;\n const p20 = s * control1[0] + shiftX;\n const p21 = s * control1[1] + shiftY;\n const p30 = s * control2[0] + shiftX;\n const p31 = s * control2[1] + shiftY;\n const p40 = s * second[0] + shiftX;\n const p41 = s * second[1] + shiftY;\n if (j === 0) {\n buffer.push(p10, p11);\n points.push(p10, p11);\n }\n buffer.push(p20, p21, p30, p31, p40, p41);\n points.push(p20, p21);\n if (j === jj - 1) {\n points.push(p40, p41);\n }\n }\n paths.push({\n bezier: InkEditor.#toPDFCoordinates(buffer, rect, this.rotation),\n points: InkEditor.#toPDFCoordinates(points, rect, this.rotation)\n });\n }\n return paths;\n }\n #getBbox() {\n let xMin = Infinity;\n let xMax = -Infinity;\n let yMin = Infinity;\n let yMax = -Infinity;\n for (const path of this.paths) {\n for (const [first, control1, control2, second] of path) {\n const bbox = Util.bezierBoundingBox(...first, ...control1, ...control2, ...second);\n xMin = Math.min(xMin, bbox[0]);\n yMin = Math.min(yMin, bbox[1]);\n xMax = Math.max(xMax, bbox[2]);\n yMax = Math.max(yMax, bbox[3]);\n }\n }\n return [xMin, yMin, xMax, yMax];\n }\n #getPadding() {\n return this.#disableEditing ? Math.ceil(this.thickness * this.parentScale) : 0;\n }\n #fitToContent(firstTime = false) {\n if (this.isEmpty()) {\n return;\n }\n if (!this.#disableEditing) {\n this.#redraw();\n return;\n }\n const bbox = this.#getBbox();\n const padding = this.#getPadding();\n this.#baseWidth = Math.max(AnnotationEditor.MIN_SIZE, bbox[2] - bbox[0]);\n this.#baseHeight = Math.max(AnnotationEditor.MIN_SIZE, bbox[3] - bbox[1]);\n const width = Math.ceil(padding + this.#baseWidth * this.scaleFactor);\n const height = Math.ceil(padding + this.#baseHeight * this.scaleFactor);\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.width = width / parentWidth;\n this.height = height / parentHeight;\n this.setAspectRatio(width, height);\n const prevTranslationX = this.translationX;\n const prevTranslationY = this.translationY;\n this.translationX = -bbox[0];\n this.translationY = -bbox[1];\n this.#setCanvasDims();\n this.#redraw();\n this.#realWidth = width;\n this.#realHeight = height;\n this.setDims(width, height);\n const unscaledPadding = firstTime ? padding / this.scaleFactor / 2 : 0;\n this.translate(prevTranslationX - this.translationX - unscaledPadding, prevTranslationY - this.translationY - unscaledPadding);\n }\n static deserialize(data, parent, uiManager) {\n if (data instanceof InkAnnotationElement) {\n return null;\n }\n const editor = super.deserialize(data, parent, uiManager);\n editor.thickness = data.thickness;\n editor.color = Util.makeHexColor(...data.color);\n editor.opacity = data.opacity;\n const [pageWidth, pageHeight] = editor.pageDimensions;\n const width = editor.width * pageWidth;\n const height = editor.height * pageHeight;\n const scaleFactor = editor.parentScale;\n const padding = data.thickness / 2;\n editor.#disableEditing = true;\n editor.#realWidth = Math.round(width);\n editor.#realHeight = Math.round(height);\n const {\n paths,\n rect,\n rotation\n } = data;\n for (let {\n bezier\n } of paths) {\n bezier = InkEditor.#fromPDFCoordinates(bezier, rect, rotation);\n const path = [];\n editor.paths.push(path);\n let p0 = scaleFactor * (bezier[0] - padding);\n let p1 = scaleFactor * (bezier[1] - padding);\n for (let i = 2, ii = bezier.length; i < ii; i += 6) {\n const p10 = scaleFactor * (bezier[i] - padding);\n const p11 = scaleFactor * (bezier[i + 1] - padding);\n const p20 = scaleFactor * (bezier[i + 2] - padding);\n const p21 = scaleFactor * (bezier[i + 3] - padding);\n const p30 = scaleFactor * (bezier[i + 4] - padding);\n const p31 = scaleFactor * (bezier[i + 5] - padding);\n path.push([[p0, p1], [p10, p11], [p20, p21], [p30, p31]]);\n p0 = p30;\n p1 = p31;\n }\n const path2D = this.#buildPath2D(path);\n editor.bezierPath2D.push(path2D);\n }\n const bbox = editor.#getBbox();\n editor.#baseWidth = Math.max(AnnotationEditor.MIN_SIZE, bbox[2] - bbox[0]);\n editor.#baseHeight = Math.max(AnnotationEditor.MIN_SIZE, bbox[3] - bbox[1]);\n editor.#setScaleFactor(width, height);\n return editor;\n }\n serialize() {\n if (this.isEmpty()) {\n return null;\n }\n const rect = this.getRect(0, 0);\n const color = AnnotationEditor._colorManager.convert(this.ctx.strokeStyle);\n return {\n annotationType: AnnotationEditorType.INK,\n color,\n thickness: this.thickness,\n opacity: this.opacity,\n paths: this.#serializePaths(this.scaleFactor / this.parentScale, this.translationX, this.translationY, rect),\n pageIndex: this.pageIndex,\n rect,\n rotation: this.rotation,\n structTreeParentId: this._structTreeParentId\n };\n }\n}\n\n;// CONCATENATED MODULE: ./src/display/editor/stamp.js\n\n\n\n\nclass StampEditor extends AnnotationEditor {\n #bitmap = null;\n #bitmapId = null;\n #bitmapPromise = null;\n #bitmapUrl = null;\n #bitmapFile = null;\n #bitmapFileName = \"\";\n #canvas = null;\n #observer = null;\n #resizeTimeoutId = null;\n #isSvg = false;\n #hasBeenAddedInUndoStack = false;\n static _type = \"stamp\";\n static _editorType = AnnotationEditorType.STAMP;\n constructor(params) {\n super({\n ...params,\n name: \"stampEditor\"\n });\n this.#bitmapUrl = params.bitmapUrl;\n this.#bitmapFile = params.bitmapFile;\n }\n static initialize(l10n, uiManager) {\n AnnotationEditor.initialize(l10n, uiManager);\n }\n static get supportedTypes() {\n const types = [\"apng\", \"avif\", \"bmp\", \"gif\", \"jpeg\", \"png\", \"svg+xml\", \"webp\", \"x-icon\"];\n return shadow(this, \"supportedTypes\", types.map(type => `image/${type}`));\n }\n static get supportedTypesStr() {\n return shadow(this, \"supportedTypesStr\", this.supportedTypes.join(\",\"));\n }\n static isHandlingMimeForPasting(mime) {\n return this.supportedTypes.includes(mime);\n }\n static paste(item, parent) {\n parent.pasteEditor(AnnotationEditorType.STAMP, {\n bitmapFile: item.getAsFile()\n });\n }\n #getBitmapFetched(data, fromId = false) {\n if (!data) {\n this.remove();\n return;\n }\n this.#bitmap = data.bitmap;\n if (!fromId) {\n this.#bitmapId = data.id;\n this.#isSvg = data.isSvg;\n }\n if (data.file) {\n this.#bitmapFileName = data.file.name;\n }\n this.#createCanvas();\n }\n #getBitmapDone() {\n this.#bitmapPromise = null;\n this._uiManager.enableWaiting(false);\n if (this.#canvas) {\n this.div.focus();\n }\n }\n #getBitmap() {\n if (this.#bitmapId) {\n this._uiManager.enableWaiting(true);\n this._uiManager.imageManager.getFromId(this.#bitmapId).then(data => this.#getBitmapFetched(data, true)).finally(() => this.#getBitmapDone());\n return;\n }\n if (this.#bitmapUrl) {\n const url = this.#bitmapUrl;\n this.#bitmapUrl = null;\n this._uiManager.enableWaiting(true);\n this.#bitmapPromise = this._uiManager.imageManager.getFromUrl(url).then(data => this.#getBitmapFetched(data)).finally(() => this.#getBitmapDone());\n return;\n }\n if (this.#bitmapFile) {\n const file = this.#bitmapFile;\n this.#bitmapFile = null;\n this._uiManager.enableWaiting(true);\n this.#bitmapPromise = this._uiManager.imageManager.getFromFile(file).then(data => this.#getBitmapFetched(data)).finally(() => this.#getBitmapDone());\n return;\n }\n const input = document.createElement(\"input\");\n input.type = \"file\";\n input.accept = StampEditor.supportedTypesStr;\n const signal = this._uiManager._signal;\n this.#bitmapPromise = new Promise(resolve => {\n input.addEventListener(\"change\", async () => {\n if (!input.files || input.files.length === 0) {\n this.remove();\n } else {\n this._uiManager.enableWaiting(true);\n const data = await this._uiManager.imageManager.getFromFile(input.files[0]);\n this.#getBitmapFetched(data);\n }\n resolve();\n }, {\n signal\n });\n input.addEventListener(\"cancel\", () => {\n this.remove();\n resolve();\n }, {\n signal\n });\n }).finally(() => this.#getBitmapDone());\n input.click();\n }\n remove() {\n if (this.#bitmapId) {\n this.#bitmap = null;\n this._uiManager.imageManager.deleteId(this.#bitmapId);\n this.#canvas?.remove();\n this.#canvas = null;\n this.#observer?.disconnect();\n this.#observer = null;\n if (this.#resizeTimeoutId) {\n clearTimeout(this.#resizeTimeoutId);\n this.#resizeTimeoutId = null;\n }\n }\n super.remove();\n }\n rebuild() {\n if (!this.parent) {\n if (this.#bitmapId) {\n this.#getBitmap();\n }\n return;\n }\n super.rebuild();\n if (this.div === null) {\n return;\n }\n if (this.#bitmapId && this.#canvas === null) {\n this.#getBitmap();\n }\n if (!this.isAttachedToDOM) {\n this.parent.add(this);\n }\n }\n onceAdded() {\n this._isDraggable = true;\n this.div.focus();\n }\n isEmpty() {\n return !(this.#bitmapPromise || this.#bitmap || this.#bitmapUrl || this.#bitmapFile || this.#bitmapId);\n }\n get isResizable() {\n return true;\n }\n render() {\n if (this.div) {\n return this.div;\n }\n let baseX, baseY;\n if (this.width) {\n baseX = this.x;\n baseY = this.y;\n }\n super.render();\n this.div.hidden = true;\n this.addAltTextButton();\n if (this.#bitmap) {\n this.#createCanvas();\n } else {\n this.#getBitmap();\n }\n if (this.width) {\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.setAt(baseX * parentWidth, baseY * parentHeight, this.width * parentWidth, this.height * parentHeight);\n }\n return this.div;\n }\n #createCanvas() {\n const {\n div\n } = this;\n let {\n width,\n height\n } = this.#bitmap;\n const [pageWidth, pageHeight] = this.pageDimensions;\n const MAX_RATIO = 0.75;\n if (this.width) {\n width = this.width * pageWidth;\n height = this.height * pageHeight;\n } else if (width > MAX_RATIO * pageWidth || height > MAX_RATIO * pageHeight) {\n const factor = Math.min(MAX_RATIO * pageWidth / width, MAX_RATIO * pageHeight / height);\n width *= factor;\n height *= factor;\n }\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.setDims(width * parentWidth / pageWidth, height * parentHeight / pageHeight);\n this._uiManager.enableWaiting(false);\n const canvas = this.#canvas = document.createElement(\"canvas\");\n div.append(canvas);\n div.hidden = false;\n this.#drawBitmap(width, height);\n this.#createObserver();\n if (!this.#hasBeenAddedInUndoStack) {\n this.parent.addUndoableEditor(this);\n this.#hasBeenAddedInUndoStack = true;\n }\n this._reportTelemetry({\n action: \"inserted_image\"\n });\n if (this.#bitmapFileName) {\n canvas.setAttribute(\"aria-label\", this.#bitmapFileName);\n }\n }\n #setDimensions(width, height) {\n const [parentWidth, parentHeight] = this.parentDimensions;\n this.width = width / parentWidth;\n this.height = height / parentHeight;\n this.setDims(width, height);\n if (this._initialOptions?.isCentered) {\n this.center();\n } else {\n this.fixAndSetPosition();\n }\n this._initialOptions = null;\n if (this.#resizeTimeoutId !== null) {\n clearTimeout(this.#resizeTimeoutId);\n }\n const TIME_TO_WAIT = 200;\n this.#resizeTimeoutId = setTimeout(() => {\n this.#resizeTimeoutId = null;\n this.#drawBitmap(width, height);\n }, TIME_TO_WAIT);\n }\n #scaleBitmap(width, height) {\n const {\n width: bitmapWidth,\n height: bitmapHeight\n } = this.#bitmap;\n let newWidth = bitmapWidth;\n let newHeight = bitmapHeight;\n let bitmap = this.#bitmap;\n while (newWidth > 2 * width || newHeight > 2 * height) {\n const prevWidth = newWidth;\n const prevHeight = newHeight;\n if (newWidth > 2 * width) {\n newWidth = newWidth >= 16384 ? Math.floor(newWidth / 2) - 1 : Math.ceil(newWidth / 2);\n }\n if (newHeight > 2 * height) {\n newHeight = newHeight >= 16384 ? Math.floor(newHeight / 2) - 1 : Math.ceil(newHeight / 2);\n }\n const offscreen = new OffscreenCanvas(newWidth, newHeight);\n const ctx = offscreen.getContext(\"2d\");\n ctx.drawImage(bitmap, 0, 0, prevWidth, prevHeight, 0, 0, newWidth, newHeight);\n bitmap = offscreen.transferToImageBitmap();\n }\n return bitmap;\n }\n #drawBitmap(width, height) {\n width = Math.ceil(width);\n height = Math.ceil(height);\n const canvas = this.#canvas;\n if (!canvas || canvas.width === width && canvas.height === height) {\n return;\n }\n canvas.width = width;\n canvas.height = height;\n const bitmap = this.#isSvg ? this.#bitmap : this.#scaleBitmap(width, height);\n if (this._uiManager.hasMLManager && !this.hasAltText()) {\n const offscreen = new OffscreenCanvas(width, height);\n const ctx = offscreen.getContext(\"2d\");\n ctx.drawImage(bitmap, 0, 0, bitmap.width, bitmap.height, 0, 0, width, height);\n this._uiManager.mlGuess({\n service: \"image-to-text\",\n request: {\n data: ctx.getImageData(0, 0, width, height).data,\n width,\n height,\n channels: 4\n }\n }).then(response => {\n const altText = response?.output || \"\";\n if (this.parent && altText && !this.hasAltText()) {\n this.altTextData = {\n altText,\n decorative: false\n };\n }\n });\n }\n const ctx = canvas.getContext(\"2d\");\n ctx.filter = this._uiManager.hcmFilter;\n ctx.drawImage(bitmap, 0, 0, bitmap.width, bitmap.height, 0, 0, width, height);\n }\n getImageForAltText() {\n return this.#canvas;\n }\n #serializeBitmap(toUrl) {\n if (toUrl) {\n if (this.#isSvg) {\n const url = this._uiManager.imageManager.getSvgUrl(this.#bitmapId);\n if (url) {\n return url;\n }\n }\n const canvas = document.createElement(\"canvas\");\n ({\n width: canvas.width,\n height: canvas.height\n } = this.#bitmap);\n const ctx = canvas.getContext(\"2d\");\n ctx.drawImage(this.#bitmap, 0, 0);\n return canvas.toDataURL();\n }\n if (this.#isSvg) {\n const [pageWidth, pageHeight] = this.pageDimensions;\n const width = Math.round(this.width * pageWidth * PixelsPerInch.PDF_TO_CSS_UNITS);\n const height = Math.round(this.height * pageHeight * PixelsPerInch.PDF_TO_CSS_UNITS);\n const offscreen = new OffscreenCanvas(width, height);\n const ctx = offscreen.getContext(\"2d\");\n ctx.drawImage(this.#bitmap, 0, 0, this.#bitmap.width, this.#bitmap.height, 0, 0, width, height);\n return offscreen.transferToImageBitmap();\n }\n return structuredClone(this.#bitmap);\n }\n #createObserver() {\n if (!this._uiManager._signal) {\n return;\n }\n this.#observer = new ResizeObserver(entries => {\n const rect = entries[0].contentRect;\n if (rect.width && rect.height) {\n this.#setDimensions(rect.width, rect.height);\n }\n });\n this.#observer.observe(this.div);\n this._uiManager._signal.addEventListener(\"abort\", () => {\n this.#observer?.disconnect();\n this.#observer = null;\n }, {\n once: true\n });\n }\n static deserialize(data, parent, uiManager) {\n if (data instanceof StampAnnotationElement) {\n return null;\n }\n const editor = super.deserialize(data, parent, uiManager);\n const {\n rect,\n bitmapUrl,\n bitmapId,\n isSvg,\n accessibilityData\n } = data;\n if (bitmapId && uiManager.imageManager.isValidId(bitmapId)) {\n editor.#bitmapId = bitmapId;\n } else {\n editor.#bitmapUrl = bitmapUrl;\n }\n editor.#isSvg = isSvg;\n const [parentWidth, parentHeight] = editor.pageDimensions;\n editor.width = (rect[2] - rect[0]) / parentWidth;\n editor.height = (rect[3] - rect[1]) / parentHeight;\n if (accessibilityData) {\n editor.altTextData = accessibilityData;\n }\n return editor;\n }\n serialize(isForCopying = false, context = null) {\n if (this.isEmpty()) {\n return null;\n }\n const serialized = {\n annotationType: AnnotationEditorType.STAMP,\n bitmapId: this.#bitmapId,\n pageIndex: this.pageIndex,\n rect: this.getRect(0, 0),\n rotation: this.rotation,\n isSvg: this.#isSvg,\n structTreeParentId: this._structTreeParentId\n };\n if (isForCopying) {\n serialized.bitmapUrl = this.#serializeBitmap(true);\n serialized.accessibilityData = this.altTextData;\n return serialized;\n }\n const {\n decorative,\n altText\n } = this.altTextData;\n if (!decorative && altText) {\n serialized.accessibilityData = {\n type: \"Figure\",\n alt: altText\n };\n }\n if (context === null) {\n return serialized;\n }\n context.stamps ||= new Map();\n const area = this.#isSvg ? (serialized.rect[2] - serialized.rect[0]) * (serialized.rect[3] - serialized.rect[1]) : null;\n if (!context.stamps.has(this.#bitmapId)) {\n context.stamps.set(this.#bitmapId, {\n area,\n serialized\n });\n serialized.bitmap = this.#serializeBitmap(false);\n } else if (this.#isSvg) {\n const prevData = context.stamps.get(this.#bitmapId);\n if (area > prevData.area) {\n prevData.area = area;\n prevData.serialized.bitmap.close();\n prevData.serialized.bitmap = this.#serializeBitmap(false);\n }\n }\n return serialized;\n }\n}\n\n;// CONCATENATED MODULE: ./src/display/editor/annotation_editor_layer.js\n\n\n\n\n\n\n\nclass AnnotationEditorLayer {\n #accessibilityManager;\n #allowClick = false;\n #annotationLayer = null;\n #boundPointerup = null;\n #boundPointerdown = null;\n #boundTextLayerPointerDown = null;\n #editorFocusTimeoutId = null;\n #editors = new Map();\n #hadPointerDown = false;\n #isCleaningUp = false;\n #isDisabling = false;\n #textLayer = null;\n #uiManager;\n static _initialized = false;\n static #editorTypes = new Map([FreeTextEditor, InkEditor, StampEditor, HighlightEditor].map(type => [type._editorType, type]));\n constructor({\n uiManager,\n pageIndex,\n div,\n accessibilityManager,\n annotationLayer,\n drawLayer,\n textLayer,\n viewport,\n l10n\n }) {\n const editorTypes = [...AnnotationEditorLayer.#editorTypes.values()];\n if (!AnnotationEditorLayer._initialized) {\n AnnotationEditorLayer._initialized = true;\n for (const editorType of editorTypes) {\n editorType.initialize(l10n, uiManager);\n }\n }\n uiManager.registerEditorTypes(editorTypes);\n this.#uiManager = uiManager;\n this.pageIndex = pageIndex;\n this.div = div;\n this.#accessibilityManager = accessibilityManager;\n this.#annotationLayer = annotationLayer;\n this.viewport = viewport;\n this.#textLayer = textLayer;\n this.drawLayer = drawLayer;\n this.#uiManager.addLayer(this);\n }\n get isEmpty() {\n return this.#editors.size === 0;\n }\n get isInvisible() {\n return this.isEmpty && this.#uiManager.getMode() === AnnotationEditorType.NONE;\n }\n updateToolbar(mode) {\n this.#uiManager.updateToolbar(mode);\n }\n updateMode(mode = this.#uiManager.getMode()) {\n this.#cleanup();\n switch (mode) {\n case AnnotationEditorType.NONE:\n this.disableTextSelection();\n this.togglePointerEvents(false);\n this.toggleAnnotationLayerPointerEvents(true);\n this.disableClick();\n return;\n case AnnotationEditorType.INK:\n this.addInkEditorIfNeeded(false);\n this.disableTextSelection();\n this.togglePointerEvents(true);\n this.disableClick();\n break;\n case AnnotationEditorType.HIGHLIGHT:\n this.enableTextSelection();\n this.togglePointerEvents(false);\n this.disableClick();\n break;\n default:\n this.disableTextSelection();\n this.togglePointerEvents(true);\n this.enableClick();\n }\n this.toggleAnnotationLayerPointerEvents(false);\n const {\n classList\n } = this.div;\n for (const editorType of AnnotationEditorLayer.#editorTypes.values()) {\n classList.toggle(`${editorType._type}Editing`, mode === editorType._editorType);\n }\n this.div.hidden = false;\n }\n hasTextLayer(textLayer) {\n return textLayer === this.#textLayer?.div;\n }\n addInkEditorIfNeeded(isCommitting) {\n if (this.#uiManager.getMode() !== AnnotationEditorType.INK) {\n return;\n }\n if (!isCommitting) {\n for (const editor of this.#editors.values()) {\n if (editor.isEmpty()) {\n editor.setInBackground();\n return;\n }\n }\n }\n const editor = this.createAndAddNewEditor({\n offsetX: 0,\n offsetY: 0\n }, false);\n editor.setInBackground();\n }\n setEditingState(isEditing) {\n this.#uiManager.setEditingState(isEditing);\n }\n addCommands(params) {\n this.#uiManager.addCommands(params);\n }\n togglePointerEvents(enabled = false) {\n this.div.classList.toggle(\"disabled\", !enabled);\n }\n toggleAnnotationLayerPointerEvents(enabled = false) {\n this.#annotationLayer?.div.classList.toggle(\"disabled\", !enabled);\n }\n enable() {\n this.div.tabIndex = 0;\n this.togglePointerEvents(true);\n const annotationElementIds = new Set();\n for (const editor of this.#editors.values()) {\n editor.enableEditing();\n editor.show(true);\n if (editor.annotationElementId) {\n this.#uiManager.removeChangedExistingAnnotation(editor);\n annotationElementIds.add(editor.annotationElementId);\n }\n }\n if (!this.#annotationLayer) {\n return;\n }\n const editables = this.#annotationLayer.getEditableAnnotations();\n for (const editable of editables) {\n editable.hide();\n if (this.#uiManager.isDeletedAnnotationElement(editable.data.id)) {\n continue;\n }\n if (annotationElementIds.has(editable.data.id)) {\n continue;\n }\n const editor = this.deserialize(editable);\n if (!editor) {\n continue;\n }\n this.addOrRebuild(editor);\n editor.enableEditing();\n }\n }\n disable() {\n this.#isDisabling = true;\n this.div.tabIndex = -1;\n this.togglePointerEvents(false);\n const changedAnnotations = new Map();\n const resetAnnotations = new Map();\n for (const editor of this.#editors.values()) {\n editor.disableEditing();\n if (!editor.annotationElementId) {\n continue;\n }\n if (editor.serialize() !== null) {\n changedAnnotations.set(editor.annotationElementId, editor);\n continue;\n } else {\n resetAnnotations.set(editor.annotationElementId, editor);\n }\n this.getEditableAnnotation(editor.annotationElementId)?.show();\n editor.remove();\n }\n if (this.#annotationLayer) {\n const editables = this.#annotationLayer.getEditableAnnotations();\n for (const editable of editables) {\n const {\n id\n } = editable.data;\n if (this.#uiManager.isDeletedAnnotationElement(id)) {\n continue;\n }\n let editor = resetAnnotations.get(id);\n if (editor) {\n editor.resetAnnotationElement(editable);\n editor.show(false);\n editable.show();\n continue;\n }\n editor = changedAnnotations.get(id);\n if (editor) {\n this.#uiManager.addChangedExistingAnnotation(editor);\n editor.renderAnnotationElement(editable);\n editor.show(false);\n }\n editable.show();\n }\n }\n this.#cleanup();\n if (this.isEmpty) {\n this.div.hidden = true;\n }\n const {\n classList\n } = this.div;\n for (const editorType of AnnotationEditorLayer.#editorTypes.values()) {\n classList.remove(`${editorType._type}Editing`);\n }\n this.disableTextSelection();\n this.toggleAnnotationLayerPointerEvents(true);\n this.#isDisabling = false;\n }\n getEditableAnnotation(id) {\n return this.#annotationLayer?.getEditableAnnotation(id) || null;\n }\n setActiveEditor(editor) {\n const currentActive = this.#uiManager.getActive();\n if (currentActive === editor) {\n return;\n }\n this.#uiManager.setActiveEditor(editor);\n }\n enableTextSelection() {\n this.div.tabIndex = -1;\n if (this.#textLayer?.div && !this.#boundTextLayerPointerDown) {\n this.#boundTextLayerPointerDown = this.#textLayerPointerDown.bind(this);\n this.#textLayer.div.addEventListener(\"pointerdown\", this.#boundTextLayerPointerDown, {\n signal: this.#uiManager._signal\n });\n this.#textLayer.div.classList.add(\"highlighting\");\n }\n }\n disableTextSelection() {\n this.div.tabIndex = 0;\n if (this.#textLayer?.div && this.#boundTextLayerPointerDown) {\n this.#textLayer.div.removeEventListener(\"pointerdown\", this.#boundTextLayerPointerDown);\n this.#boundTextLayerPointerDown = null;\n this.#textLayer.div.classList.remove(\"highlighting\");\n }\n }\n #textLayerPointerDown(event) {\n this.#uiManager.unselectAll();\n if (event.target === this.#textLayer.div) {\n const {\n isMac\n } = util_FeatureTest.platform;\n if (event.button !== 0 || event.ctrlKey && isMac) {\n return;\n }\n this.#uiManager.showAllEditors(\"highlight\", true, true);\n this.#textLayer.div.classList.add(\"free\");\n HighlightEditor.startHighlighting(this, this.#uiManager.direction === \"ltr\", event);\n this.#textLayer.div.addEventListener(\"pointerup\", () => {\n this.#textLayer.div.classList.remove(\"free\");\n }, {\n once: true,\n signal: this.#uiManager._signal\n });\n event.preventDefault();\n }\n }\n enableClick() {\n if (this.#boundPointerdown) {\n return;\n }\n const signal = this.#uiManager._signal;\n this.#boundPointerdown = this.pointerdown.bind(this);\n this.#boundPointerup = this.pointerup.bind(this);\n this.div.addEventListener(\"pointerdown\", this.#boundPointerdown, {\n signal\n });\n this.div.addEventListener(\"pointerup\", this.#boundPointerup, {\n signal\n });\n }\n disableClick() {\n if (!this.#boundPointerdown) {\n return;\n }\n this.div.removeEventListener(\"pointerdown\", this.#boundPointerdown);\n this.div.removeEventListener(\"pointerup\", this.#boundPointerup);\n this.#boundPointerdown = null;\n this.#boundPointerup = null;\n }\n attach(editor) {\n this.#editors.set(editor.id, editor);\n const {\n annotationElementId\n } = editor;\n if (annotationElementId && this.#uiManager.isDeletedAnnotationElement(annotationElementId)) {\n this.#uiManager.removeDeletedAnnotationElement(editor);\n }\n }\n detach(editor) {\n this.#editors.delete(editor.id);\n this.#accessibilityManager?.removePointerInTextLayer(editor.contentDiv);\n if (!this.#isDisabling && editor.annotationElementId) {\n this.#uiManager.addDeletedAnnotationElement(editor);\n }\n }\n remove(editor) {\n this.detach(editor);\n this.#uiManager.removeEditor(editor);\n editor.div.remove();\n editor.isAttachedToDOM = false;\n if (!this.#isCleaningUp) {\n this.addInkEditorIfNeeded(false);\n }\n }\n changeParent(editor) {\n if (editor.parent === this) {\n return;\n }\n if (editor.parent && editor.annotationElementId) {\n this.#uiManager.addDeletedAnnotationElement(editor.annotationElementId);\n AnnotationEditor.deleteAnnotationElement(editor);\n editor.annotationElementId = null;\n }\n this.attach(editor);\n editor.parent?.detach(editor);\n editor.setParent(this);\n if (editor.div && editor.isAttachedToDOM) {\n editor.div.remove();\n this.div.append(editor.div);\n }\n }\n add(editor) {\n if (editor.parent === this && editor.isAttachedToDOM) {\n return;\n }\n this.changeParent(editor);\n this.#uiManager.addEditor(editor);\n this.attach(editor);\n if (!editor.isAttachedToDOM) {\n const div = editor.render();\n this.div.append(div);\n editor.isAttachedToDOM = true;\n }\n editor.fixAndSetPosition();\n editor.onceAdded();\n this.#uiManager.addToAnnotationStorage(editor);\n editor._reportTelemetry(editor.telemetryInitialData);\n }\n moveEditorInDOM(editor) {\n if (!editor.isAttachedToDOM) {\n return;\n }\n const {\n activeElement\n } = document;\n if (editor.div.contains(activeElement) && !this.#editorFocusTimeoutId) {\n editor._focusEventsAllowed = false;\n this.#editorFocusTimeoutId = setTimeout(() => {\n this.#editorFocusTimeoutId = null;\n if (!editor.div.contains(document.activeElement)) {\n editor.div.addEventListener(\"focusin\", () => {\n editor._focusEventsAllowed = true;\n }, {\n once: true,\n signal: this.#uiManager._signal\n });\n activeElement.focus();\n } else {\n editor._focusEventsAllowed = true;\n }\n }, 0);\n }\n editor._structTreeParentId = this.#accessibilityManager?.moveElementInDOM(this.div, editor.div, editor.contentDiv, true);\n }\n addOrRebuild(editor) {\n if (editor.needsToBeRebuilt()) {\n editor.parent ||= this;\n editor.rebuild();\n editor.show();\n } else {\n this.add(editor);\n }\n }\n addUndoableEditor(editor) {\n const cmd = () => editor._uiManager.rebuild(editor);\n const undo = () => {\n editor.remove();\n };\n this.addCommands({\n cmd,\n undo,\n mustExec: false\n });\n }\n getNextId() {\n return this.#uiManager.getId();\n }\n get #currentEditorType() {\n return AnnotationEditorLayer.#editorTypes.get(this.#uiManager.getMode());\n }\n get _signal() {\n return this.#uiManager._signal;\n }\n #createNewEditor(params) {\n const editorType = this.#currentEditorType;\n return editorType ? new editorType.prototype.constructor(params) : null;\n }\n canCreateNewEmptyEditor() {\n return this.#currentEditorType?.canCreateNewEmptyEditor();\n }\n pasteEditor(mode, params) {\n this.#uiManager.updateToolbar(mode);\n this.#uiManager.updateMode(mode);\n const {\n offsetX,\n offsetY\n } = this.#getCenterPoint();\n const id = this.getNextId();\n const editor = this.#createNewEditor({\n parent: this,\n id,\n x: offsetX,\n y: offsetY,\n uiManager: this.#uiManager,\n isCentered: true,\n ...params\n });\n if (editor) {\n this.add(editor);\n }\n }\n deserialize(data) {\n return AnnotationEditorLayer.#editorTypes.get(data.annotationType ?? data.annotationEditorType)?.deserialize(data, this, this.#uiManager) || null;\n }\n createAndAddNewEditor(event, isCentered, data = {}) {\n const id = this.getNextId();\n const editor = this.#createNewEditor({\n parent: this,\n id,\n x: event.offsetX,\n y: event.offsetY,\n uiManager: this.#uiManager,\n isCentered,\n ...data\n });\n if (editor) {\n this.add(editor);\n }\n return editor;\n }\n #getCenterPoint() {\n const {\n x,\n y,\n width,\n height\n } = this.div.getBoundingClientRect();\n const tlX = Math.max(0, x);\n const tlY = Math.max(0, y);\n const brX = Math.min(window.innerWidth, x + width);\n const brY = Math.min(window.innerHeight, y + height);\n const centerX = (tlX + brX) / 2 - x;\n const centerY = (tlY + brY) / 2 - y;\n const [offsetX, offsetY] = this.viewport.rotation % 180 === 0 ? [centerX, centerY] : [centerY, centerX];\n return {\n offsetX,\n offsetY\n };\n }\n addNewEditor() {\n this.createAndAddNewEditor(this.#getCenterPoint(), true);\n }\n setSelected(editor) {\n this.#uiManager.setSelected(editor);\n }\n toggleSelected(editor) {\n this.#uiManager.toggleSelected(editor);\n }\n isSelected(editor) {\n return this.#uiManager.isSelected(editor);\n }\n unselect(editor) {\n this.#uiManager.unselect(editor);\n }\n pointerup(event) {\n const {\n isMac\n } = util_FeatureTest.platform;\n if (event.button !== 0 || event.ctrlKey && isMac) {\n return;\n }\n if (event.target !== this.div) {\n return;\n }\n if (!this.#hadPointerDown) {\n return;\n }\n this.#hadPointerDown = false;\n if (!this.#allowClick) {\n this.#allowClick = true;\n return;\n }\n if (this.#uiManager.getMode() === AnnotationEditorType.STAMP) {\n this.#uiManager.unselectAll();\n return;\n }\n this.createAndAddNewEditor(event, false);\n }\n pointerdown(event) {\n if (this.#uiManager.getMode() === AnnotationEditorType.HIGHLIGHT) {\n this.enableTextSelection();\n }\n if (this.#hadPointerDown) {\n this.#hadPointerDown = false;\n return;\n }\n const {\n isMac\n } = util_FeatureTest.platform;\n if (event.button !== 0 || event.ctrlKey && isMac) {\n return;\n }\n if (event.target !== this.div) {\n return;\n }\n this.#hadPointerDown = true;\n const editor = this.#uiManager.getActive();\n this.#allowClick = !editor || editor.isEmpty();\n }\n findNewParent(editor, x, y) {\n const layer = this.#uiManager.findParent(x, y);\n if (layer === null || layer === this) {\n return false;\n }\n layer.changeParent(editor);\n return true;\n }\n destroy() {\n if (this.#uiManager.getActive()?.parent === this) {\n this.#uiManager.commitOrRemove();\n this.#uiManager.setActiveEditor(null);\n }\n if (this.#editorFocusTimeoutId) {\n clearTimeout(this.#editorFocusTimeoutId);\n this.#editorFocusTimeoutId = null;\n }\n for (const editor of this.#editors.values()) {\n this.#accessibilityManager?.removePointerInTextLayer(editor.contentDiv);\n editor.setParent(null);\n editor.isAttachedToDOM = false;\n editor.div.remove();\n }\n this.div = null;\n this.#editors.clear();\n this.#uiManager.removeLayer(this);\n }\n #cleanup() {\n this.#isCleaningUp = true;\n for (const editor of this.#editors.values()) {\n if (editor.isEmpty()) {\n editor.remove();\n }\n }\n this.#isCleaningUp = false;\n }\n render({\n viewport\n }) {\n this.viewport = viewport;\n setLayerDimensions(this.div, viewport);\n for (const editor of this.#uiManager.getEditors(this.pageIndex)) {\n this.add(editor);\n editor.rebuild();\n }\n this.updateMode();\n }\n update({\n viewport\n }) {\n this.#uiManager.commitOrRemove();\n this.#cleanup();\n const oldRotation = this.viewport.rotation;\n const rotation = viewport.rotation;\n this.viewport = viewport;\n setLayerDimensions(this.div, {\n rotation\n });\n if (oldRotation !== rotation) {\n for (const editor of this.#editors.values()) {\n editor.rotate(rotation);\n }\n }\n this.addInkEditorIfNeeded(false);\n }\n get pageDimensions() {\n const {\n pageWidth,\n pageHeight\n } = this.viewport.rawDims;\n return [pageWidth, pageHeight];\n }\n get scale() {\n return this.#uiManager.viewParameters.realScale;\n }\n}\n\n;// CONCATENATED MODULE: ./src/display/draw_layer.js\n\n\nclass DrawLayer {\n #parent = null;\n #id = 0;\n #mapping = new Map();\n #toUpdate = new Map();\n constructor({\n pageIndex\n }) {\n this.pageIndex = pageIndex;\n }\n setParent(parent) {\n if (!this.#parent) {\n this.#parent = parent;\n return;\n }\n if (this.#parent !== parent) {\n if (this.#mapping.size > 0) {\n for (const root of this.#mapping.values()) {\n root.remove();\n parent.append(root);\n }\n }\n this.#parent = parent;\n }\n }\n static get _svgFactory() {\n return shadow(this, \"_svgFactory\", new DOMSVGFactory());\n }\n static #setBox(element, {\n x = 0,\n y = 0,\n width = 1,\n height = 1\n } = {}) {\n const {\n style\n } = element;\n style.top = `${100 * y}%`;\n style.left = `${100 * x}%`;\n style.width = `${100 * width}%`;\n style.height = `${100 * height}%`;\n }\n #createSVG(box) {\n const svg = DrawLayer._svgFactory.create(1, 1, true);\n this.#parent.append(svg);\n svg.setAttribute(\"aria-hidden\", true);\n DrawLayer.#setBox(svg, box);\n return svg;\n }\n #createClipPath(defs, pathId) {\n const clipPath = DrawLayer._svgFactory.createElement(\"clipPath\");\n defs.append(clipPath);\n const clipPathId = `clip_${pathId}`;\n clipPath.setAttribute(\"id\", clipPathId);\n clipPath.setAttribute(\"clipPathUnits\", \"objectBoundingBox\");\n const clipPathUse = DrawLayer._svgFactory.createElement(\"use\");\n clipPath.append(clipPathUse);\n clipPathUse.setAttribute(\"href\", `#${pathId}`);\n clipPathUse.classList.add(\"clip\");\n return clipPathId;\n }\n highlight(outlines, color, opacity, isPathUpdatable = false) {\n const id = this.#id++;\n const root = this.#createSVG(outlines.box);\n root.classList.add(\"highlight\");\n if (outlines.free) {\n root.classList.add(\"free\");\n }\n const defs = DrawLayer._svgFactory.createElement(\"defs\");\n root.append(defs);\n const path = DrawLayer._svgFactory.createElement(\"path\");\n defs.append(path);\n const pathId = `path_p${this.pageIndex}_${id}`;\n path.setAttribute(\"id\", pathId);\n path.setAttribute(\"d\", outlines.toSVGPath());\n if (isPathUpdatable) {\n this.#toUpdate.set(id, path);\n }\n const clipPathId = this.#createClipPath(defs, pathId);\n const use = DrawLayer._svgFactory.createElement(\"use\");\n root.append(use);\n root.setAttribute(\"fill\", color);\n root.setAttribute(\"fill-opacity\", opacity);\n use.setAttribute(\"href\", `#${pathId}`);\n this.#mapping.set(id, root);\n return {\n id,\n clipPathId: `url(#${clipPathId})`\n };\n }\n highlightOutline(outlines) {\n const id = this.#id++;\n const root = this.#createSVG(outlines.box);\n root.classList.add(\"highlightOutline\");\n const defs = DrawLayer._svgFactory.createElement(\"defs\");\n root.append(defs);\n const path = DrawLayer._svgFactory.createElement(\"path\");\n defs.append(path);\n const pathId = `path_p${this.pageIndex}_${id}`;\n path.setAttribute(\"id\", pathId);\n path.setAttribute(\"d\", outlines.toSVGPath());\n path.setAttribute(\"vector-effect\", \"non-scaling-stroke\");\n let maskId;\n if (outlines.free) {\n root.classList.add(\"free\");\n const mask = DrawLayer._svgFactory.createElement(\"mask\");\n defs.append(mask);\n maskId = `mask_p${this.pageIndex}_${id}`;\n mask.setAttribute(\"id\", maskId);\n mask.setAttribute(\"maskUnits\", \"objectBoundingBox\");\n const rect = DrawLayer._svgFactory.createElement(\"rect\");\n mask.append(rect);\n rect.setAttribute(\"width\", \"1\");\n rect.setAttribute(\"height\", \"1\");\n rect.setAttribute(\"fill\", \"white\");\n const use = DrawLayer._svgFactory.createElement(\"use\");\n mask.append(use);\n use.setAttribute(\"href\", `#${pathId}`);\n use.setAttribute(\"stroke\", \"none\");\n use.setAttribute(\"fill\", \"black\");\n use.setAttribute(\"fill-rule\", \"nonzero\");\n use.classList.add(\"mask\");\n }\n const use1 = DrawLayer._svgFactory.createElement(\"use\");\n root.append(use1);\n use1.setAttribute(\"href\", `#${pathId}`);\n if (maskId) {\n use1.setAttribute(\"mask\", `url(#${maskId})`);\n }\n const use2 = use1.cloneNode();\n root.append(use2);\n use1.classList.add(\"mainOutline\");\n use2.classList.add(\"secondaryOutline\");\n this.#mapping.set(id, root);\n return id;\n }\n finalizeLine(id, line) {\n const path = this.#toUpdate.get(id);\n this.#toUpdate.delete(id);\n this.updateBox(id, line.box);\n path.setAttribute(\"d\", line.toSVGPath());\n }\n updateLine(id, line) {\n const root = this.#mapping.get(id);\n const defs = root.firstChild;\n const path = defs.firstChild;\n path.setAttribute(\"d\", line.toSVGPath());\n }\n removeFreeHighlight(id) {\n this.remove(id);\n this.#toUpdate.delete(id);\n }\n updatePath(id, line) {\n this.#toUpdate.get(id).setAttribute(\"d\", line.toSVGPath());\n }\n updateBox(id, box) {\n DrawLayer.#setBox(this.#mapping.get(id), box);\n }\n show(id, visible) {\n this.#mapping.get(id).classList.toggle(\"hidden\", !visible);\n }\n rotate(id, angle) {\n this.#mapping.get(id).setAttribute(\"data-main-rotation\", angle);\n }\n changeColor(id, color) {\n this.#mapping.get(id).setAttribute(\"fill\", color);\n }\n changeOpacity(id, opacity) {\n this.#mapping.get(id).setAttribute(\"fill-opacity\", opacity);\n }\n addClass(id, className) {\n this.#mapping.get(id).classList.add(className);\n }\n removeClass(id, className) {\n this.#mapping.get(id).classList.remove(className);\n }\n remove(id) {\n if (this.#parent === null) {\n return;\n }\n this.#mapping.get(id).remove();\n this.#mapping.delete(id);\n }\n destroy() {\n this.#parent = null;\n for (const root of this.#mapping.values()) {\n root.remove();\n }\n this.#mapping.clear();\n }\n}\n\n;// CONCATENATED MODULE: ./src/pdf.js\n\n\n\n\n\n\n\n\n\n\n\n\nconst pdfjsVersion = \"4.4.168\";\nconst pdfjsBuild = \"19fbc8998\";\n\nvar __webpack_exports__AbortException = __webpack_exports__.AbortException;\nvar __webpack_exports__AnnotationEditorLayer = __webpack_exports__.AnnotationEditorLayer;\nvar __webpack_exports__AnnotationEditorParamsType = __webpack_exports__.AnnotationEditorParamsType;\nvar __webpack_exports__AnnotationEditorType = __webpack_exports__.AnnotationEditorType;\nvar __webpack_exports__AnnotationEditorUIManager = __webpack_exports__.AnnotationEditorUIManager;\nvar __webpack_exports__AnnotationLayer = __webpack_exports__.AnnotationLayer;\nvar __webpack_exports__AnnotationMode = __webpack_exports__.AnnotationMode;\nvar __webpack_exports__CMapCompressionType = __webpack_exports__.CMapCompressionType;\nvar __webpack_exports__ColorPicker = __webpack_exports__.ColorPicker;\nvar __webpack_exports__DOMSVGFactory = __webpack_exports__.DOMSVGFactory;\nvar __webpack_exports__DrawLayer = __webpack_exports__.DrawLayer;\nvar __webpack_exports__FeatureTest = __webpack_exports__.FeatureTest;\nvar __webpack_exports__GlobalWorkerOptions = __webpack_exports__.GlobalWorkerOptions;\nvar __webpack_exports__ImageKind = __webpack_exports__.ImageKind;\nvar __webpack_exports__InvalidPDFException = __webpack_exports__.InvalidPDFException;\nvar __webpack_exports__MissingPDFException = __webpack_exports__.MissingPDFException;\nvar __webpack_exports__OPS = __webpack_exports__.OPS;\nvar __webpack_exports__Outliner = __webpack_exports__.Outliner;\nvar __webpack_exports__PDFDataRangeTransport = __webpack_exports__.PDFDataRangeTransport;\nvar __webpack_exports__PDFDateString = __webpack_exports__.PDFDateString;\nvar __webpack_exports__PDFWorker = __webpack_exports__.PDFWorker;\nvar __webpack_exports__PasswordResponses = __webpack_exports__.PasswordResponses;\nvar __webpack_exports__PermissionFlag = __webpack_exports__.PermissionFlag;\nvar __webpack_exports__PixelsPerInch = __webpack_exports__.PixelsPerInch;\nvar __webpack_exports__RenderingCancelledException = __webpack_exports__.RenderingCancelledException;\nvar __webpack_exports__TextLayer = __webpack_exports__.TextLayer;\nvar __webpack_exports__UnexpectedResponseException = __webpack_exports__.UnexpectedResponseException;\nvar __webpack_exports__Util = __webpack_exports__.Util;\nvar __webpack_exports__VerbosityLevel = __webpack_exports__.VerbosityLevel;\nvar __webpack_exports__XfaLayer = __webpack_exports__.XfaLayer;\nvar __webpack_exports__build = __webpack_exports__.build;\nvar __webpack_exports__createValidAbsoluteUrl = __webpack_exports__.createValidAbsoluteUrl;\nvar __webpack_exports__fetchData = __webpack_exports__.fetchData;\nvar __webpack_exports__getDocument = __webpack_exports__.getDocument;\nvar __webpack_exports__getFilenameFromUrl = __webpack_exports__.getFilenameFromUrl;\nvar __webpack_exports__getPdfFilenameFromUrl = __webpack_exports__.getPdfFilenameFromUrl;\nvar __webpack_exports__getXfaPageViewport = __webpack_exports__.getXfaPageViewport;\nvar __webpack_exports__isDataScheme = __webpack_exports__.isDataScheme;\nvar __webpack_exports__isPdfFile = __webpack_exports__.isPdfFile;\nvar __webpack_exports__noContextMenu = __webpack_exports__.noContextMenu;\nvar __webpack_exports__normalizeUnicode = __webpack_exports__.normalizeUnicode;\nvar __webpack_exports__renderTextLayer = __webpack_exports__.renderTextLayer;\nvar __webpack_exports__setLayerDimensions = __webpack_exports__.setLayerDimensions;\nvar __webpack_exports__shadow = __webpack_exports__.shadow;\nvar __webpack_exports__updateTextLayer = __webpack_exports__.updateTextLayer;\nvar __webpack_exports__version = __webpack_exports__.version;\nexport { __webpack_exports__AbortException as AbortException, __webpack_exports__AnnotationEditorLayer as AnnotationEditorLayer, __webpack_exports__AnnotationEditorParamsType as AnnotationEditorParamsType, __webpack_exports__AnnotationEditorType as AnnotationEditorType, __webpack_exports__AnnotationEditorUIManager as AnnotationEditorUIManager, __webpack_exports__AnnotationLayer as AnnotationLayer, __webpack_exports__AnnotationMode as AnnotationMode, __webpack_exports__CMapCompressionType as CMapCompressionType, __webpack_exports__ColorPicker as ColorPicker, __webpack_exports__DOMSVGFactory as DOMSVGFactory, __webpack_exports__DrawLayer as DrawLayer, __webpack_exports__FeatureTest as FeatureTest, __webpack_exports__GlobalWorkerOptions as GlobalWorkerOptions, __webpack_exports__ImageKind as ImageKind, __webpack_exports__InvalidPDFException as InvalidPDFException, __webpack_exports__MissingPDFException as MissingPDFException, __webpack_exports__OPS as OPS, __webpack_exports__Outliner as Outliner, __webpack_exports__PDFDataRangeTransport as PDFDataRangeTransport, __webpack_exports__PDFDateString as PDFDateString, __webpack_exports__PDFWorker as PDFWorker, __webpack_exports__PasswordResponses as PasswordResponses, __webpack_exports__PermissionFlag as PermissionFlag, __webpack_exports__PixelsPerInch as PixelsPerInch, __webpack_exports__RenderingCancelledException as RenderingCancelledException, __webpack_exports__TextLayer as TextLayer, __webpack_exports__UnexpectedResponseException as UnexpectedResponseException, __webpack_exports__Util as Util, __webpack_exports__VerbosityLevel as VerbosityLevel, __webpack_exports__XfaLayer as XfaLayer, __webpack_exports__build as build, __webpack_exports__createValidAbsoluteUrl as createValidAbsoluteUrl, __webpack_exports__fetchData as fetchData, __webpack_exports__getDocument as getDocument, __webpack_exports__getFilenameFromUrl as getFilenameFromUrl, __webpack_exports__getPdfFilenameFromUrl as getPdfFilenameFromUrl, __webpack_exports__getXfaPageViewport as getXfaPageViewport, __webpack_exports__isDataScheme as isDataScheme, __webpack_exports__isPdfFile as isPdfFile, __webpack_exports__noContextMenu as noContextMenu, __webpack_exports__normalizeUnicode as normalizeUnicode, __webpack_exports__renderTextLayer as renderTextLayer, __webpack_exports__setLayerDimensions as setLayerDimensions, __webpack_exports__shadow as shadow, __webpack_exports__updateTextLayer as updateTextLayer, __webpack_exports__version as version };\n\n//# sourceMappingURL=pdf.mjs.map","var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\n// As defined on the list of supported events: https://reactjs.org/docs/events.html\nexport var clipboardEvents = ['onCopy', 'onCut', 'onPaste'];\nexport var compositionEvents = [\n 'onCompositionEnd',\n 'onCompositionStart',\n 'onCompositionUpdate',\n];\nexport var focusEvents = ['onFocus', 'onBlur'];\nexport var formEvents = ['onInput', 'onInvalid', 'onReset', 'onSubmit'];\nexport var imageEvents = ['onLoad', 'onError'];\nexport var keyboardEvents = ['onKeyDown', 'onKeyPress', 'onKeyUp'];\nexport var mediaEvents = [\n 'onAbort',\n 'onCanPlay',\n 'onCanPlayThrough',\n 'onDurationChange',\n 'onEmptied',\n 'onEncrypted',\n 'onEnded',\n 'onError',\n 'onLoadedData',\n 'onLoadedMetadata',\n 'onLoadStart',\n 'onPause',\n 'onPlay',\n 'onPlaying',\n 'onProgress',\n 'onRateChange',\n 'onSeeked',\n 'onSeeking',\n 'onStalled',\n 'onSuspend',\n 'onTimeUpdate',\n 'onVolumeChange',\n 'onWaiting',\n];\nexport var mouseEvents = [\n 'onClick',\n 'onContextMenu',\n 'onDoubleClick',\n 'onMouseDown',\n 'onMouseEnter',\n 'onMouseLeave',\n 'onMouseMove',\n 'onMouseOut',\n 'onMouseOver',\n 'onMouseUp',\n];\nexport var dragEvents = [\n 'onDrag',\n 'onDragEnd',\n 'onDragEnter',\n 'onDragExit',\n 'onDragLeave',\n 'onDragOver',\n 'onDragStart',\n 'onDrop',\n];\nexport var selectionEvents = ['onSelect'];\nexport var touchEvents = ['onTouchCancel', 'onTouchEnd', 'onTouchMove', 'onTouchStart'];\nexport var pointerEvents = [\n 'onPointerDown',\n 'onPointerMove',\n 'onPointerUp',\n 'onPointerCancel',\n 'onGotPointerCapture',\n 'onLostPointerCapture',\n 'onPointerEnter',\n 'onPointerLeave',\n 'onPointerOver',\n 'onPointerOut',\n];\nexport var uiEvents = ['onScroll'];\nexport var wheelEvents = ['onWheel'];\nexport var animationEvents = [\n 'onAnimationStart',\n 'onAnimationEnd',\n 'onAnimationIteration',\n];\nexport var transitionEvents = ['onTransitionEnd'];\nexport var otherEvents = ['onToggle'];\nexport var changeEvents = ['onChange'];\nexport var allEvents = __spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray([], clipboardEvents, true), compositionEvents, true), focusEvents, true), formEvents, true), imageEvents, true), keyboardEvents, true), mediaEvents, true), mouseEvents, true), dragEvents, true), selectionEvents, true), touchEvents, true), pointerEvents, true), uiEvents, true), wheelEvents, true), animationEvents, true), transitionEvents, true), changeEvents, true), otherEvents, true);\n/**\n * Returns an object with on-event callback props curried with provided args.\n * @param {Object} props Props passed to a component.\n * @param {Function=} getArgs A function that returns argument(s) on-event callbacks\n * shall be curried with.\n */\nexport default function makeEventProps(props, getArgs) {\n var eventProps = {};\n allEvents.forEach(function (eventName) {\n var eventHandler = props[eventName];\n if (!eventHandler) {\n return;\n }\n if (getArgs) {\n eventProps[eventName] = (function (event) {\n return eventHandler(event, getArgs(eventName));\n });\n }\n else {\n eventProps[eventName] = eventHandler;\n }\n });\n return eventProps;\n}\n","export default function makeCancellablePromise(promise) {\n var isCancelled = false;\n var wrappedPromise = new Promise(function (resolve, reject) {\n promise\n .then(function (value) { return !isCancelled && resolve(value); })\n .catch(function (error) { return !isCancelled && reject(error); });\n });\n return {\n promise: wrappedPromise,\n cancel: function () {\n isCancelled = true;\n },\n };\n}\n","function r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(f=r(e[t]))&&(n&&(n+=\" \"),n+=f)}else for(f in e)e[f]&&(n&&(n+=\" \"),n+=f);return n}export function clsx(){for(var e,t,f=0,n=\"\",o=arguments.length;f<o;f++)(e=arguments[f])&&(t=r(e))&&(n&&(n+=\" \"),n+=t);return n}export default clsx;","var isProduction = process.env.NODE_ENV === 'production';\nvar prefix = 'Invariant failed';\nfunction invariant(condition, message) {\n if (condition) {\n return;\n }\n if (isProduction) {\n throw new Error(prefix);\n }\n var provided = typeof message === 'function' ? message() : message;\n var value = provided ? \"\".concat(prefix, \": \").concat(provided) : prefix;\n throw new Error(value);\n}\n\nexport { invariant as default };\n","'use client';\nimport { createContext } from 'react';\nconst documentContext = createContext(null);\nexport default documentContext;\n","import { jsx as _jsx } from \"react/jsx-runtime\";\nexport default function Message({ children, type }) {\n return _jsx(\"div\", { className: `react-pdf__message react-pdf__message--${type}`, children: children });\n}\n","/* Copyright 2015 Mozilla Foundation\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport invariant from 'tiny-invariant';\nconst DEFAULT_LINK_REL = 'noopener noreferrer nofollow';\nexport default class LinkService {\n constructor() {\n this.externalLinkEnabled = true;\n this.externalLinkRel = undefined;\n this.externalLinkTarget = undefined;\n this.isInPresentationMode = false;\n this.pdfDocument = undefined;\n this.pdfViewer = undefined;\n }\n setDocument(pdfDocument) {\n this.pdfDocument = pdfDocument;\n }\n setViewer(pdfViewer) {\n this.pdfViewer = pdfViewer;\n }\n setExternalLinkRel(externalLinkRel) {\n this.externalLinkRel = externalLinkRel;\n }\n setExternalLinkTarget(externalLinkTarget) {\n this.externalLinkTarget = externalLinkTarget;\n }\n setHistory() {\n // Intentionally empty\n }\n get pagesCount() {\n return this.pdfDocument ? this.pdfDocument.numPages : 0;\n }\n get page() {\n invariant(this.pdfViewer, 'PDF viewer is not initialized.');\n return this.pdfViewer.currentPageNumber || 0;\n }\n set page(value) {\n invariant(this.pdfViewer, 'PDF viewer is not initialized.');\n this.pdfViewer.currentPageNumber = value;\n }\n get rotation() {\n return 0;\n }\n set rotation(_value) {\n // Intentionally empty\n }\n goToDestination(dest) {\n return new Promise((resolve) => {\n invariant(this.pdfDocument, 'PDF document not loaded.');\n invariant(dest, 'Destination is not specified.');\n if (typeof dest === 'string') {\n this.pdfDocument.getDestination(dest).then(resolve);\n }\n else if (Array.isArray(dest)) {\n resolve(dest);\n }\n else {\n dest.then(resolve);\n }\n }).then((explicitDest) => {\n invariant(Array.isArray(explicitDest), `\"${explicitDest}\" is not a valid destination array.`);\n const destRef = explicitDest[0];\n new Promise((resolve) => {\n invariant(this.pdfDocument, 'PDF document not loaded.');\n if (destRef instanceof Object) {\n this.pdfDocument\n .getPageIndex(destRef)\n .then((pageIndex) => {\n resolve(pageIndex);\n })\n .catch(() => {\n invariant(false, `\"${destRef}\" is not a valid page reference.`);\n });\n }\n else if (typeof destRef === 'number') {\n resolve(destRef);\n }\n else {\n invariant(false, `\"${destRef}\" is not a valid destination reference.`);\n }\n }).then((pageIndex) => {\n const pageNumber = pageIndex + 1;\n invariant(this.pdfViewer, 'PDF viewer is not initialized.');\n invariant(pageNumber >= 1 && pageNumber <= this.pagesCount, `\"${pageNumber}\" is not a valid page number.`);\n this.pdfViewer.scrollPageIntoView({\n dest: explicitDest,\n pageIndex,\n pageNumber,\n });\n });\n });\n }\n navigateTo(dest) {\n this.goToDestination(dest);\n }\n goToPage(pageNumber) {\n const pageIndex = pageNumber - 1;\n invariant(this.pdfViewer, 'PDF viewer is not initialized.');\n invariant(pageNumber >= 1 && pageNumber <= this.pagesCount, `\"${pageNumber}\" is not a valid page number.`);\n this.pdfViewer.scrollPageIntoView({\n pageIndex,\n pageNumber,\n });\n }\n addLinkAttributes(link, url, newWindow) {\n link.href = url;\n link.rel = this.externalLinkRel || DEFAULT_LINK_REL;\n link.target = newWindow ? '_blank' : this.externalLinkTarget || '';\n }\n getDestinationHash() {\n return '#';\n }\n getAnchorUrl() {\n return '#';\n }\n setHash() {\n // Intentionally empty\n }\n executeNamedAction() {\n // Intentionally empty\n }\n cachePageRef() {\n // Intentionally empty\n }\n isPageVisible() {\n return true;\n }\n isPageCached() {\n return true;\n }\n executeSetOCGState() {\n // Intentionally empty\n }\n}\n","// As defined in https://github.com/mozilla/pdf.js/blob/d9fac3459609a807be6506fb3441b5da4b154d14/src/shared/util.js#L371-L374\nconst PasswordResponses = {\n NEED_PASSWORD: 1,\n INCORRECT_PASSWORD: 2,\n};\nexport default PasswordResponses;\n","import invariant from 'tiny-invariant';\nimport warning from 'warning';\n/**\n * Checks if we're running in a browser environment.\n */\nexport const isBrowser = typeof window !== 'undefined';\n/**\n * Checks whether we're running from a local file system.\n */\nexport const isLocalFileSystem = isBrowser && window.location.protocol === 'file:';\n/**\n * Checks whether a variable is defined.\n *\n * @param {*} variable Variable to check\n */\nexport function isDefined(variable) {\n return typeof variable !== 'undefined';\n}\n/**\n * Checks whether a variable is defined and not null.\n *\n * @param {*} variable Variable to check\n */\nexport function isProvided(variable) {\n return isDefined(variable) && variable !== null;\n}\n/**\n * Checks whether a variable provided is a string.\n *\n * @param {*} variable Variable to check\n */\nexport function isString(variable) {\n return typeof variable === 'string';\n}\n/**\n * Checks whether a variable provided is an ArrayBuffer.\n *\n * @param {*} variable Variable to check\n */\nexport function isArrayBuffer(variable) {\n return variable instanceof ArrayBuffer;\n}\n/**\n * Checks whether a variable provided is a Blob.\n *\n * @param {*} variable Variable to check\n */\nexport function isBlob(variable) {\n invariant(isBrowser, 'isBlob can only be used in a browser environment');\n return variable instanceof Blob;\n}\n/**\n * Checks whether a variable provided is a data URI.\n *\n * @param {*} variable String to check\n */\nexport function isDataURI(variable) {\n return isString(variable) && /^data:/.test(variable);\n}\nexport function dataURItoByteString(dataURI) {\n invariant(isDataURI(dataURI), 'Invalid data URI.');\n const [headersString = '', dataString = ''] = dataURI.split(',');\n const headers = headersString.split(';');\n if (headers.indexOf('base64') !== -1) {\n return atob(dataString);\n }\n return unescape(dataString);\n}\nexport function getDevicePixelRatio() {\n return (isBrowser && window.devicePixelRatio) || 1;\n}\nconst allowFileAccessFromFilesTip = 'On Chromium based browsers, you can use --allow-file-access-from-files flag for debugging purposes.';\nexport function displayCORSWarning() {\n warning(!isLocalFileSystem, `Loading PDF as base64 strings/URLs may not work on protocols other than HTTP/HTTPS. ${allowFileAccessFromFilesTip}`);\n}\nexport function displayWorkerWarning() {\n warning(!isLocalFileSystem, `Loading PDF.js worker may not work on protocols other than HTTP/HTTPS. ${allowFileAccessFromFilesTip}`);\n}\nexport function cancelRunningTask(runningTask) {\n if (runningTask === null || runningTask === void 0 ? void 0 : runningTask.cancel)\n runningTask.cancel();\n}\nexport function makePageCallback(page, scale) {\n Object.defineProperty(page, 'width', {\n get() {\n return this.view[2] * scale;\n },\n configurable: true,\n });\n Object.defineProperty(page, 'height', {\n get() {\n return this.view[3] * scale;\n },\n configurable: true,\n });\n Object.defineProperty(page, 'originalWidth', {\n get() {\n return this.view[2];\n },\n configurable: true,\n });\n Object.defineProperty(page, 'originalHeight', {\n get() {\n return this.view[3];\n },\n configurable: true,\n });\n return page;\n}\nexport function isCancelException(error) {\n return error.name === 'RenderingCancelledException';\n}\nexport function loadFromFile(file) {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onload = () => {\n if (!reader.result) {\n return reject(new Error('Error while reading a file.'));\n }\n resolve(reader.result);\n };\n reader.onerror = (event) => {\n if (!event.target) {\n return reject(new Error('Error while reading a file.'));\n }\n const { error } = event.target;\n if (!error) {\n return reject(new Error('Error while reading a file.'));\n }\n switch (error.code) {\n case error.NOT_FOUND_ERR:\n return reject(new Error('Error while reading a file: File not found.'));\n case error.SECURITY_ERR:\n return reject(new Error('Error while reading a file: Security error.'));\n case error.ABORT_ERR:\n return reject(new Error('Error while reading a file: Aborted.'));\n default:\n return reject(new Error('Error while reading a file.'));\n }\n };\n reader.readAsArrayBuffer(file);\n });\n}\n","import { useReducer } from 'react';\nfunction reducer(state, action) {\n switch (action.type) {\n case 'RESOLVE':\n return { value: action.value, error: undefined };\n case 'REJECT':\n return { value: false, error: action.error };\n case 'RESET':\n return { value: undefined, error: undefined };\n default:\n return state;\n }\n}\nexport default function useResolver() {\n return useReducer((reducer), { value: undefined, error: undefined });\n}\n","'use client';\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { forwardRef, useCallback, useEffect, useImperativeHandle, useMemo, useRef } from 'react';\nimport makeEventProps from 'make-event-props';\nimport makeCancellable from 'make-cancellable-promise';\nimport clsx from 'clsx';\nimport invariant from 'tiny-invariant';\nimport warning from 'warning';\nimport { dequal } from 'dequal';\nimport * as pdfjs from 'pdfjs-dist';\nimport DocumentContext from './DocumentContext.js';\nimport Message from './Message.js';\nimport LinkService from './LinkService.js';\nimport PasswordResponses from './PasswordResponses.js';\nimport { cancelRunningTask, dataURItoByteString, displayCORSWarning, isArrayBuffer, isBlob, isBrowser, isDataURI, loadFromFile, } from './shared/utils.js';\nimport useResolver from './shared/hooks/useResolver.js';\nconst { PDFDataRangeTransport } = pdfjs;\nconst defaultOnPassword = (callback, reason) => {\n switch (reason) {\n case PasswordResponses.NEED_PASSWORD: {\n const password = prompt('Enter the password to open this PDF file.');\n callback(password);\n break;\n }\n case PasswordResponses.INCORRECT_PASSWORD: {\n const password = prompt('Invalid password. Please try again.');\n callback(password);\n break;\n }\n default:\n }\n};\nfunction isParameterObject(file) {\n return (typeof file === 'object' &&\n file !== null &&\n ('data' in file || 'range' in file || 'url' in file));\n}\n/**\n * Loads a document passed using `file` prop.\n */\nconst Document = forwardRef(function Document(_a, ref) {\n var { children, className, error = 'Failed to load PDF file.', externalLinkRel, externalLinkTarget, file, inputRef, imageResourcesPath, loading = 'Loading PDF…', noData = 'No PDF file specified.', onItemClick, onLoadError: onLoadErrorProps, onLoadProgress, onLoadSuccess: onLoadSuccessProps, onPassword = defaultOnPassword, onSourceError: onSourceErrorProps, onSourceSuccess: onSourceSuccessProps, options, renderMode, rotate } = _a, otherProps = __rest(_a, [\"children\", \"className\", \"error\", \"externalLinkRel\", \"externalLinkTarget\", \"file\", \"inputRef\", \"imageResourcesPath\", \"loading\", \"noData\", \"onItemClick\", \"onLoadError\", \"onLoadProgress\", \"onLoadSuccess\", \"onPassword\", \"onSourceError\", \"onSourceSuccess\", \"options\", \"renderMode\", \"rotate\"]);\n const [sourceState, sourceDispatch] = useResolver();\n const { value: source, error: sourceError } = sourceState;\n const [pdfState, pdfDispatch] = useResolver();\n const { value: pdf, error: pdfError } = pdfState;\n const linkService = useRef(new LinkService());\n const pages = useRef([]);\n const prevFile = useRef(undefined);\n const prevOptions = useRef(undefined);\n if (file && file !== prevFile.current && isParameterObject(file)) {\n warning(!dequal(file, prevFile.current), `File prop passed to <Document /> changed, but it's equal to previous one. This might result in unnecessary reloads. Consider memoizing the value passed to \"file\" prop.`);\n prevFile.current = file;\n }\n // Detect non-memoized changes in options prop\n if (options && options !== prevOptions.current) {\n warning(!dequal(options, prevOptions.current), `Options prop passed to <Document /> changed, but it's equal to previous one. This might result in unnecessary reloads. Consider memoizing the value passed to \"options\" prop.`);\n prevOptions.current = options;\n }\n const viewer = useRef({\n // Handling jumping to internal links target\n scrollPageIntoView: (args) => {\n const { dest, pageNumber, pageIndex = pageNumber - 1 } = args;\n // First, check if custom handling of onItemClick was provided\n if (onItemClick) {\n onItemClick({ dest, pageIndex, pageNumber });\n return;\n }\n // If not, try to look for target page within the <Document>.\n const page = pages.current[pageIndex];\n if (page) {\n // Scroll to the page automatically\n page.scrollIntoView();\n return;\n }\n warning(false, `An internal link leading to page ${pageNumber} was clicked, but neither <Document> was provided with onItemClick nor it was able to find the page within itself. Either provide onItemClick to <Document> and handle navigating by yourself or ensure that all pages are rendered within <Document>.`);\n },\n });\n useImperativeHandle(ref, () => ({\n linkService,\n pages,\n viewer,\n }), []);\n /**\n * Called when a document source is resolved correctly\n */\n function onSourceSuccess() {\n if (onSourceSuccessProps) {\n onSourceSuccessProps();\n }\n }\n /**\n * Called when a document source failed to be resolved correctly\n */\n function onSourceError() {\n if (!sourceError) {\n // Impossible, but TypeScript doesn't know that\n return;\n }\n warning(false, sourceError.toString());\n if (onSourceErrorProps) {\n onSourceErrorProps(sourceError);\n }\n }\n function resetSource() {\n sourceDispatch({ type: 'RESET' });\n }\n // biome-ignore lint/correctness/useExhaustiveDependencies: See https://github.com/biomejs/biome/issues/3080\n useEffect(resetSource, [file, sourceDispatch]);\n const findDocumentSource = useCallback(() => __awaiter(this, void 0, void 0, function* () {\n if (!file) {\n return null;\n }\n // File is a string\n if (typeof file === 'string') {\n if (isDataURI(file)) {\n const fileByteString = dataURItoByteString(file);\n return { data: fileByteString };\n }\n displayCORSWarning();\n return { url: file };\n }\n // File is PDFDataRangeTransport\n if (file instanceof PDFDataRangeTransport) {\n return { range: file };\n }\n // File is an ArrayBuffer\n if (isArrayBuffer(file)) {\n return { data: file };\n }\n /**\n * The cases below are browser-only.\n * If you're running on a non-browser environment, these cases will be of no use.\n */\n if (isBrowser) {\n // File is a Blob\n if (isBlob(file)) {\n const data = yield loadFromFile(file);\n return { data };\n }\n }\n // At this point, file must be an object\n invariant(typeof file === 'object', 'Invalid parameter in file, need either Uint8Array, string or a parameter object');\n invariant(isParameterObject(file), 'Invalid parameter object: need either .data, .range or .url');\n // File .url is a string\n if ('url' in file && typeof file.url === 'string') {\n if (isDataURI(file.url)) {\n const { url } = file, otherParams = __rest(file, [\"url\"]);\n const fileByteString = dataURItoByteString(url);\n return Object.assign({ data: fileByteString }, otherParams);\n }\n displayCORSWarning();\n }\n return file;\n }), [file]);\n useEffect(() => {\n const cancellable = makeCancellable(findDocumentSource());\n cancellable.promise\n .then((nextSource) => {\n sourceDispatch({ type: 'RESOLVE', value: nextSource });\n })\n .catch((error) => {\n sourceDispatch({ type: 'REJECT', error });\n });\n return () => {\n cancelRunningTask(cancellable);\n };\n }, [findDocumentSource, sourceDispatch]);\n // biome-ignore lint/correctness/useExhaustiveDependencies: Ommitted callbacks so they are not called every time they change\n useEffect(() => {\n if (typeof source === 'undefined') {\n return;\n }\n if (source === false) {\n onSourceError();\n return;\n }\n onSourceSuccess();\n }, [source]);\n /**\n * Called when a document is read successfully\n */\n function onLoadSuccess() {\n if (!pdf) {\n // Impossible, but TypeScript doesn't know that\n return;\n }\n if (onLoadSuccessProps) {\n onLoadSuccessProps(pdf);\n }\n pages.current = new Array(pdf.numPages);\n linkService.current.setDocument(pdf);\n }\n /**\n * Called when a document failed to read successfully\n */\n function onLoadError() {\n if (!pdfError) {\n // Impossible, but TypeScript doesn't know that\n return;\n }\n warning(false, pdfError.toString());\n if (onLoadErrorProps) {\n onLoadErrorProps(pdfError);\n }\n }\n // biome-ignore lint/correctness/useExhaustiveDependencies: useEffect intentionally triggered on source change\n useEffect(function resetDocument() {\n pdfDispatch({ type: 'RESET' });\n }, [pdfDispatch, source]);\n // biome-ignore lint/correctness/useExhaustiveDependencies: Ommitted callbacks so they are not called every time they change\n useEffect(function loadDocument() {\n if (!source) {\n return;\n }\n const documentInitParams = options\n ? Object.assign(Object.assign({}, source), options) : source;\n const destroyable = pdfjs.getDocument(documentInitParams);\n if (onLoadProgress) {\n destroyable.onProgress = onLoadProgress;\n }\n if (onPassword) {\n destroyable.onPassword = onPassword;\n }\n const loadingTask = destroyable;\n const loadingPromise = loadingTask.promise\n .then((nextPdf) => {\n pdfDispatch({ type: 'RESOLVE', value: nextPdf });\n })\n .catch((error) => {\n if (loadingTask.destroyed) {\n return;\n }\n pdfDispatch({ type: 'REJECT', error });\n });\n return () => {\n loadingPromise.finally(() => loadingTask.destroy());\n };\n }, [options, pdfDispatch, source]);\n // biome-ignore lint/correctness/useExhaustiveDependencies: Ommitted callbacks so they are not called every time they change\n useEffect(() => {\n if (typeof pdf === 'undefined') {\n return;\n }\n if (pdf === false) {\n onLoadError();\n return;\n }\n onLoadSuccess();\n }, [pdf]);\n useEffect(function setupLinkService() {\n linkService.current.setViewer(viewer.current);\n linkService.current.setExternalLinkRel(externalLinkRel);\n linkService.current.setExternalLinkTarget(externalLinkTarget);\n }, [externalLinkRel, externalLinkTarget]);\n const registerPage = useCallback((pageIndex, ref) => {\n pages.current[pageIndex] = ref;\n }, []);\n const unregisterPage = useCallback((pageIndex) => {\n delete pages.current[pageIndex];\n }, []);\n const childContext = useMemo(() => ({\n imageResourcesPath,\n linkService: linkService.current,\n onItemClick,\n pdf,\n registerPage,\n renderMode,\n rotate,\n unregisterPage,\n }), [imageResourcesPath, onItemClick, pdf, registerPage, renderMode, rotate, unregisterPage]);\n const eventProps = useMemo(() => makeEventProps(otherProps, () => pdf), \n // biome-ignore lint/correctness/useExhaustiveDependencies: FIXME\n [otherProps, pdf]);\n function renderChildren() {\n return _jsx(DocumentContext.Provider, { value: childContext, children: children });\n }\n function renderContent() {\n if (!file) {\n return _jsx(Message, { type: \"no-data\", children: typeof noData === 'function' ? noData() : noData });\n }\n if (pdf === undefined || pdf === null) {\n return (_jsx(Message, { type: \"loading\", children: typeof loading === 'function' ? loading() : loading }));\n }\n if (pdf === false) {\n return _jsx(Message, { type: \"error\", children: typeof error === 'function' ? error() : error });\n }\n return renderChildren();\n }\n return (_jsx(\"div\", Object.assign({ className: clsx('react-pdf__Document', className), \n // Assertion is needed for React 18 compatibility\n ref: inputRef, style: {\n ['--scale-factor']: '1',\n } }, eventProps, { children: renderContent() })));\n});\nexport default Document;\n","import { useContext } from 'react';\nimport DocumentContext from '../../DocumentContext.js';\nexport default function useDocumentContext() {\n return useContext(DocumentContext);\n}\n","/**\n * A function that merges React refs into one.\n * Supports both functions and ref objects created using createRef() and useRef().\n *\n * Usage:\n * ```tsx\n * <div ref={mergeRefs(ref1, ref2, ref3)} />\n * ```\n *\n * @param {(React.Ref<T> | undefined)[]} inputRefs Array of refs\n * @returns {React.Ref<T> | React.RefCallback<T>} Merged refs\n */\nexport default function mergeRefs() {\n var inputRefs = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n inputRefs[_i] = arguments[_i];\n }\n var filteredInputRefs = inputRefs.filter(Boolean);\n if (filteredInputRefs.length <= 1) {\n var firstRef = filteredInputRefs[0];\n return firstRef || null;\n }\n return function mergedRefs(ref) {\n filteredInputRefs.forEach(function (inputRef) {\n if (typeof inputRef === 'function') {\n inputRef(ref);\n }\n else if (inputRef) {\n inputRef.current = ref;\n }\n });\n };\n}\n","'use client';\nimport { createContext } from 'react';\nconst pageContext = createContext(null);\nexport default pageContext;\n","// From pdfjs-dist/lib/web/struct_tree_layer_builder.js\nexport const PDF_ROLE_TO_HTML_ROLE = {\n // Document level structure types\n Document: null, // There's a \"document\" role, but it doesn't make sense here.\n DocumentFragment: null,\n // Grouping level structure types\n Part: 'group',\n Sect: 'group', // XXX: There's a \"section\" role, but it's abstract.\n Div: 'group',\n Aside: 'note',\n NonStruct: 'none',\n // Block level structure types\n P: null,\n // H<n>,\n H: 'heading',\n Title: null,\n FENote: 'note',\n // Sub-block level structure type\n Sub: 'group',\n // General inline level structure types\n Lbl: null,\n Span: null,\n Em: null,\n Strong: null,\n Link: 'link',\n Annot: 'note',\n Form: 'form',\n // Ruby and Warichu structure types\n Ruby: null,\n RB: null,\n RT: null,\n RP: null,\n Warichu: null,\n WT: null,\n WP: null,\n // List standard structure types\n L: 'list',\n LI: 'listitem',\n LBody: null,\n // Table standard structure types\n Table: 'table',\n TR: 'row',\n TH: 'columnheader',\n TD: 'cell',\n THead: 'columnheader',\n TBody: null,\n TFoot: null,\n // Standard structure type Caption\n Caption: null,\n // Standard structure type Figure\n Figure: 'figure',\n // Standard structure type Formula\n Formula: null,\n // standard structure type Artifact\n Artifact: null,\n};\nexport const HEADING_PATTERN = /^H(\\d+)$/;\n","import { HEADING_PATTERN, PDF_ROLE_TO_HTML_ROLE } from './constants.js';\nexport function isPdfRole(role) {\n return role in PDF_ROLE_TO_HTML_ROLE;\n}\nexport function isStructTreeNode(node) {\n return 'children' in node;\n}\nexport function isStructTreeNodeWithOnlyContentChild(node) {\n if (!isStructTreeNode(node)) {\n return false;\n }\n return node.children.length === 1 && 0 in node.children && 'id' in node.children[0];\n}\nexport function getRoleAttributes(node) {\n const attributes = {};\n if (isStructTreeNode(node)) {\n const { role } = node;\n const matches = role.match(HEADING_PATTERN);\n if (matches) {\n attributes.role = 'heading';\n attributes['aria-level'] = Number(matches[1]);\n }\n else if (isPdfRole(role)) {\n const htmlRole = PDF_ROLE_TO_HTML_ROLE[role];\n if (htmlRole) {\n attributes.role = htmlRole;\n }\n }\n }\n return attributes;\n}\nexport function getBaseAttributes(node) {\n const attributes = {};\n if (isStructTreeNode(node)) {\n if (node.alt !== undefined) {\n attributes['aria-label'] = node.alt;\n }\n if (node.lang !== undefined) {\n attributes.lang = node.lang;\n }\n if (isStructTreeNodeWithOnlyContentChild(node)) {\n const [child] = node.children;\n if (child) {\n const childAttributes = getBaseAttributes(child);\n return Object.assign(Object.assign({}, attributes), childAttributes);\n }\n }\n }\n else {\n if ('id' in node) {\n attributes['aria-owns'] = node.id;\n }\n }\n return attributes;\n}\nexport function getAttributes(node) {\n if (!node) {\n return null;\n }\n return Object.assign(Object.assign({}, getRoleAttributes(node)), getBaseAttributes(node));\n}\n","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { useMemo } from 'react';\nimport { getAttributes, isStructTreeNode, isStructTreeNodeWithOnlyContentChild, } from './shared/structTreeUtils.js';\nexport default function StructTreeItem({ className, node, }) {\n const attributes = useMemo(() => getAttributes(node), [node]);\n const children = useMemo(() => {\n if (!isStructTreeNode(node)) {\n return null;\n }\n if (isStructTreeNodeWithOnlyContentChild(node)) {\n return null;\n }\n return node.children.map((child, index) => {\n return (\n // biome-ignore lint/suspicious/noArrayIndexKey: index is stable here\n _jsx(StructTreeItem, { node: child }, index));\n });\n }, [node]);\n return (_jsx(\"span\", Object.assign({ className: className }, attributes, { children: children })));\n}\n","import { useContext } from 'react';\nimport PageContext from '../../PageContext.js';\nexport default function usePageContext() {\n return useContext(PageContext);\n}\n","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { useEffect } from 'react';\nimport makeCancellable from 'make-cancellable-promise';\nimport invariant from 'tiny-invariant';\nimport warning from 'warning';\nimport StructTreeItem from './StructTreeItem.js';\nimport usePageContext from './shared/hooks/usePageContext.js';\nimport useResolver from './shared/hooks/useResolver.js';\nimport { cancelRunningTask } from './shared/utils.js';\nexport default function StructTree() {\n const pageContext = usePageContext();\n invariant(pageContext, 'Unable to find Page context.');\n const { onGetStructTreeError: onGetStructTreeErrorProps, onGetStructTreeSuccess: onGetStructTreeSuccessProps, } = pageContext;\n const [structTreeState, structTreeDispatch] = useResolver();\n const { value: structTree, error: structTreeError } = structTreeState;\n const { customTextRenderer, page } = pageContext;\n function onLoadSuccess() {\n if (!structTree) {\n // Impossible, but TypeScript doesn't know that\n return;\n }\n if (onGetStructTreeSuccessProps) {\n onGetStructTreeSuccessProps(structTree);\n }\n }\n function onLoadError() {\n if (!structTreeError) {\n // Impossible, but TypeScript doesn't know that\n return;\n }\n warning(false, structTreeError.toString());\n if (onGetStructTreeErrorProps) {\n onGetStructTreeErrorProps(structTreeError);\n }\n }\n // biome-ignore lint/correctness/useExhaustiveDependencies: useEffect intentionally triggered on page change\n useEffect(function resetStructTree() {\n structTreeDispatch({ type: 'RESET' });\n }, [structTreeDispatch, page]);\n useEffect(function loadStructTree() {\n if (customTextRenderer) {\n // TODO: Document why this is necessary\n return;\n }\n if (!page) {\n return;\n }\n const cancellable = makeCancellable(page.getStructTree());\n const runningTask = cancellable;\n cancellable.promise\n .then((nextStructTree) => {\n structTreeDispatch({ type: 'RESOLVE', value: nextStructTree });\n })\n .catch((error) => {\n structTreeDispatch({ type: 'REJECT', error });\n });\n return () => cancelRunningTask(runningTask);\n }, [customTextRenderer, page, structTreeDispatch]);\n // biome-ignore lint/correctness/useExhaustiveDependencies: Ommitted callbacks so they are not called every time they change\n useEffect(() => {\n if (structTree === undefined) {\n return;\n }\n if (structTree === false) {\n onLoadError();\n return;\n }\n onLoadSuccess();\n }, [structTree]);\n if (!structTree) {\n return null;\n }\n return _jsx(StructTreeItem, { className: \"react-pdf__Page__structTree structTree\", node: structTree });\n}\n","'use client';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { useCallback, useEffect, useMemo, useRef } from 'react';\nimport mergeRefs from 'merge-refs';\nimport invariant from 'tiny-invariant';\nimport warning from 'warning';\nimport * as pdfjs from 'pdfjs-dist';\nimport StructTree from '../StructTree.js';\nimport usePageContext from '../shared/hooks/usePageContext.js';\nimport { cancelRunningTask, getDevicePixelRatio, isCancelException, makePageCallback, } from '../shared/utils.js';\nconst ANNOTATION_MODE = pdfjs.AnnotationMode;\nexport default function Canvas(props) {\n const pageContext = usePageContext();\n invariant(pageContext, 'Unable to find Page context.');\n const mergedProps = Object.assign(Object.assign({}, pageContext), props);\n const { _className, canvasBackground, devicePixelRatio = getDevicePixelRatio(), onRenderError: onRenderErrorProps, onRenderSuccess: onRenderSuccessProps, page, renderForms, renderTextLayer, rotate, scale, } = mergedProps;\n const { canvasRef } = props;\n invariant(page, 'Attempted to render page canvas, but no page was specified.');\n const canvasElement = useRef(null);\n /**\n * Called when a page is rendered successfully.\n */\n function onRenderSuccess() {\n if (!page) {\n // Impossible, but TypeScript doesn't know that\n return;\n }\n if (onRenderSuccessProps) {\n onRenderSuccessProps(makePageCallback(page, scale));\n }\n }\n /**\n * Called when a page fails to render.\n */\n function onRenderError(error) {\n if (isCancelException(error)) {\n return;\n }\n warning(false, error.toString());\n if (onRenderErrorProps) {\n onRenderErrorProps(error);\n }\n }\n const renderViewport = useMemo(() => page.getViewport({ scale: scale * devicePixelRatio, rotation: rotate }), [devicePixelRatio, page, rotate, scale]);\n const viewport = useMemo(() => page.getViewport({ scale, rotation: rotate }), [page, rotate, scale]);\n // biome-ignore lint/correctness/useExhaustiveDependencies: Ommitted callbacks so they are not called every time they change\n useEffect(function drawPageOnCanvas() {\n if (!page) {\n return;\n }\n // Ensures the canvas will be re-rendered from scratch. Otherwise all form data will stay.\n page.cleanup();\n const { current: canvas } = canvasElement;\n if (!canvas) {\n return;\n }\n canvas.width = renderViewport.width;\n canvas.height = renderViewport.height;\n canvas.style.width = `${Math.floor(viewport.width)}px`;\n canvas.style.height = `${Math.floor(viewport.height)}px`;\n canvas.style.visibility = 'hidden';\n const renderContext = {\n annotationMode: renderForms ? ANNOTATION_MODE.ENABLE_FORMS : ANNOTATION_MODE.ENABLE,\n canvasContext: canvas.getContext('2d', { alpha: false }),\n viewport: renderViewport,\n };\n if (canvasBackground) {\n renderContext.background = canvasBackground;\n }\n const cancellable = page.render(renderContext);\n const runningTask = cancellable;\n cancellable.promise\n .then(() => {\n canvas.style.visibility = '';\n onRenderSuccess();\n })\n .catch(onRenderError);\n return () => cancelRunningTask(runningTask);\n }, [canvasBackground, page, renderForms, renderViewport, viewport]);\n const cleanup = useCallback(() => {\n const { current: canvas } = canvasElement;\n /**\n * Zeroing the width and height cause most browsers to release graphics\n * resources immediately, which can greatly reduce memory consumption.\n */\n if (canvas) {\n canvas.width = 0;\n canvas.height = 0;\n }\n }, []);\n useEffect(() => cleanup, [cleanup]);\n return (_jsx(\"canvas\", { className: `${_className}__canvas`, dir: \"ltr\", ref: mergeRefs(canvasRef, canvasElement), style: {\n display: 'block',\n userSelect: 'none',\n }, children: renderTextLayer ? _jsx(StructTree, {}) : null }));\n}\n","'use client';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { useCallback, useEffect, useLayoutEffect, useMemo, useRef } from 'react';\nimport makeCancellable from 'make-cancellable-promise';\nimport clsx from 'clsx';\nimport invariant from 'tiny-invariant';\nimport warning from 'warning';\nimport * as pdfjs from 'pdfjs-dist';\nimport usePageContext from '../shared/hooks/usePageContext.js';\nimport useResolver from '../shared/hooks/useResolver.js';\nimport { cancelRunningTask } from '../shared/utils.js';\nfunction isTextItem(item) {\n return 'str' in item;\n}\nexport default function TextLayer() {\n const pageContext = usePageContext();\n invariant(pageContext, 'Unable to find Page context.');\n const { customTextRenderer, onGetTextError, onGetTextSuccess, onRenderTextLayerError, onRenderTextLayerSuccess, page, pageIndex, pageNumber, rotate, scale, } = pageContext;\n invariant(page, 'Attempted to load page text content, but no page was specified.');\n const [textContentState, textContentDispatch] = useResolver();\n const { value: textContent, error: textContentError } = textContentState;\n const layerElement = useRef(null);\n const endElement = useRef(undefined);\n warning(Number.parseInt(window.getComputedStyle(document.body).getPropertyValue('--react-pdf-text-layer'), 10) === 1, 'TextLayer styles not found. Read more: https://github.com/wojtekmaj/react-pdf#support-for-text-layer');\n /**\n * Called when a page text content is read successfully\n */\n function onLoadSuccess() {\n if (!textContent) {\n // Impossible, but TypeScript doesn't know that\n return;\n }\n if (onGetTextSuccess) {\n onGetTextSuccess(textContent);\n }\n }\n /**\n * Called when a page text content failed to read successfully\n */\n function onLoadError() {\n if (!textContentError) {\n // Impossible, but TypeScript doesn't know that\n return;\n }\n warning(false, textContentError.toString());\n if (onGetTextError) {\n onGetTextError(textContentError);\n }\n }\n // biome-ignore lint/correctness/useExhaustiveDependencies: useEffect intentionally triggered on page change\n useEffect(function resetTextContent() {\n textContentDispatch({ type: 'RESET' });\n }, [page, textContentDispatch]);\n useEffect(function loadTextContent() {\n if (!page) {\n return;\n }\n const cancellable = makeCancellable(page.getTextContent());\n const runningTask = cancellable;\n cancellable.promise\n .then((nextTextContent) => {\n textContentDispatch({ type: 'RESOLVE', value: nextTextContent });\n })\n .catch((error) => {\n textContentDispatch({ type: 'REJECT', error });\n });\n return () => cancelRunningTask(runningTask);\n }, [page, textContentDispatch]);\n // biome-ignore lint/correctness/useExhaustiveDependencies: Ommitted callbacks so they are not called every time they change\n useEffect(() => {\n if (textContent === undefined) {\n return;\n }\n if (textContent === false) {\n onLoadError();\n return;\n }\n onLoadSuccess();\n }, [textContent]);\n /**\n * Called when a text layer is rendered successfully\n */\n const onRenderSuccess = useCallback(() => {\n if (onRenderTextLayerSuccess) {\n onRenderTextLayerSuccess();\n }\n }, [onRenderTextLayerSuccess]);\n /**\n * Called when a text layer failed to render successfully\n */\n const onRenderError = useCallback((error) => {\n warning(false, error.toString());\n if (onRenderTextLayerError) {\n onRenderTextLayerError(error);\n }\n }, [onRenderTextLayerError]);\n function onMouseDown() {\n const end = endElement.current;\n if (!end) {\n return;\n }\n end.classList.add('active');\n }\n function onMouseUp() {\n const end = endElement.current;\n if (!end) {\n return;\n }\n end.classList.remove('active');\n }\n const viewport = useMemo(() => page.getViewport({ scale, rotation: rotate }), [page, rotate, scale]);\n useLayoutEffect(function renderTextLayer() {\n if (!page || !textContent) {\n return;\n }\n const { current: layer } = layerElement;\n if (!layer) {\n return;\n }\n layer.innerHTML = '';\n const textContentSource = page.streamTextContent({ includeMarkedContent: true });\n const parameters = {\n container: layer,\n textContentSource,\n viewport,\n };\n const cancellable = new pdfjs.TextLayer(parameters);\n const runningTask = cancellable;\n cancellable\n .render()\n .then(() => {\n const end = document.createElement('div');\n end.className = 'endOfContent';\n layer.append(end);\n endElement.current = end;\n const layerChildren = layer.querySelectorAll('[role=\"presentation\"]');\n if (customTextRenderer) {\n let index = 0;\n textContent.items.forEach((item, itemIndex) => {\n if (!isTextItem(item)) {\n return;\n }\n const child = layerChildren[index];\n if (!child) {\n return;\n }\n const content = customTextRenderer(Object.assign({ pageIndex,\n pageNumber,\n itemIndex }, item));\n child.innerHTML = content;\n index += item.str && item.hasEOL ? 2 : 1;\n });\n }\n // Intentional immediate callback\n onRenderSuccess();\n })\n .catch(onRenderError);\n return () => cancelRunningTask(runningTask);\n }, [\n customTextRenderer,\n onRenderError,\n onRenderSuccess,\n page,\n pageIndex,\n pageNumber,\n textContent,\n viewport,\n ]);\n return (_jsx(\"div\", { className: clsx('react-pdf__Page__textContent', 'textLayer'), onMouseUp: onMouseUp, onMouseDown: onMouseDown, ref: layerElement }));\n}\n","'use client';\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nimport { useEffect, useMemo, useRef } from 'react';\nimport makeCancellable from 'make-cancellable-promise';\nimport clsx from 'clsx';\nimport invariant from 'tiny-invariant';\nimport warning from 'warning';\nimport * as pdfjs from 'pdfjs-dist';\nimport useDocumentContext from '../shared/hooks/useDocumentContext.js';\nimport usePageContext from '../shared/hooks/usePageContext.js';\nimport useResolver from '../shared/hooks/useResolver.js';\nimport { cancelRunningTask } from '../shared/utils.js';\nexport default function AnnotationLayer() {\n const documentContext = useDocumentContext();\n const pageContext = usePageContext();\n invariant(pageContext, 'Unable to find Page context.');\n const mergedProps = Object.assign(Object.assign({}, documentContext), pageContext);\n const { imageResourcesPath, linkService, onGetAnnotationsError: onGetAnnotationsErrorProps, onGetAnnotationsSuccess: onGetAnnotationsSuccessProps, onRenderAnnotationLayerError: onRenderAnnotationLayerErrorProps, onRenderAnnotationLayerSuccess: onRenderAnnotationLayerSuccessProps, page, pdf, renderForms, rotate, scale = 1, } = mergedProps;\n invariant(pdf, 'Attempted to load page annotations, but no document was specified. Wrap <Page /> in a <Document /> or pass explicit `pdf` prop.');\n invariant(page, 'Attempted to load page annotations, but no page was specified.');\n invariant(linkService, 'Attempted to load page annotations, but no linkService was specified.');\n const [annotationsState, annotationsDispatch] = useResolver();\n const { value: annotations, error: annotationsError } = annotationsState;\n const layerElement = useRef(null);\n warning(Number.parseInt(window.getComputedStyle(document.body).getPropertyValue('--react-pdf-annotation-layer'), 10) === 1, 'AnnotationLayer styles not found. Read more: https://github.com/wojtekmaj/react-pdf#support-for-annotations');\n function onLoadSuccess() {\n if (!annotations) {\n // Impossible, but TypeScript doesn't know that\n return;\n }\n if (onGetAnnotationsSuccessProps) {\n onGetAnnotationsSuccessProps(annotations);\n }\n }\n function onLoadError() {\n if (!annotationsError) {\n // Impossible, but TypeScript doesn't know that\n return;\n }\n warning(false, annotationsError.toString());\n if (onGetAnnotationsErrorProps) {\n onGetAnnotationsErrorProps(annotationsError);\n }\n }\n // biome-ignore lint/correctness/useExhaustiveDependencies: useEffect intentionally triggered on page change\n useEffect(function resetAnnotations() {\n annotationsDispatch({ type: 'RESET' });\n }, [annotationsDispatch, page]);\n useEffect(function loadAnnotations() {\n if (!page) {\n return;\n }\n const cancellable = makeCancellable(page.getAnnotations());\n const runningTask = cancellable;\n cancellable.promise\n .then((nextAnnotations) => {\n annotationsDispatch({ type: 'RESOLVE', value: nextAnnotations });\n })\n .catch((error) => {\n annotationsDispatch({ type: 'REJECT', error });\n });\n return () => {\n cancelRunningTask(runningTask);\n };\n }, [annotationsDispatch, page]);\n // biome-ignore lint/correctness/useExhaustiveDependencies: Ommitted callbacks so they are not called every time they change\n useEffect(() => {\n if (annotations === undefined) {\n return;\n }\n if (annotations === false) {\n onLoadError();\n return;\n }\n onLoadSuccess();\n }, [annotations]);\n function onRenderSuccess() {\n if (onRenderAnnotationLayerSuccessProps) {\n onRenderAnnotationLayerSuccessProps();\n }\n }\n function onRenderError(error) {\n warning(false, `${error}`);\n if (onRenderAnnotationLayerErrorProps) {\n onRenderAnnotationLayerErrorProps(error);\n }\n }\n const viewport = useMemo(() => page.getViewport({ scale, rotation: rotate }), [page, rotate, scale]);\n // biome-ignore lint/correctness/useExhaustiveDependencies: Ommitted callbacks so they are not called every time they change\n useEffect(function renderAnnotationLayer() {\n if (!pdf || !page || !linkService || !annotations) {\n return;\n }\n const { current: layer } = layerElement;\n if (!layer) {\n return;\n }\n const clonedViewport = viewport.clone({ dontFlip: true });\n const annotationLayerParameters = {\n accessibilityManager: null, // TODO: Implement this\n annotationCanvasMap: null, // TODO: Implement this\n annotationEditorUIManager: null, // TODO: Implement this\n div: layer,\n l10n: null, // TODO: Implement this\n page,\n viewport: clonedViewport,\n };\n const renderParameters = {\n annotations,\n annotationStorage: pdf.annotationStorage,\n div: layer,\n imageResourcesPath,\n linkService,\n page,\n renderForms,\n viewport: clonedViewport,\n };\n layer.innerHTML = '';\n try {\n new pdfjs.AnnotationLayer(annotationLayerParameters).render(renderParameters);\n // Intentional immediate callback\n onRenderSuccess();\n }\n catch (error) {\n onRenderError(error);\n }\n return () => {\n // TODO: Cancel running task?\n };\n }, [annotations, imageResourcesPath, linkService, page, pdf, renderForms, viewport]);\n return (_jsx(\"div\", { className: clsx('react-pdf__Page__annotations', 'annotationLayer'), ref: layerElement }));\n}\n","'use client';\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { useEffect, useMemo, useRef } from 'react';\nimport makeCancellable from 'make-cancellable-promise';\nimport makeEventProps from 'make-event-props';\nimport clsx from 'clsx';\nimport mergeRefs from 'merge-refs';\nimport invariant from 'tiny-invariant';\nimport warning from 'warning';\nimport PageContext from './PageContext.js';\nimport Message from './Message.js';\nimport Canvas from './Page/Canvas.js';\nimport TextLayer from './Page/TextLayer.js';\nimport AnnotationLayer from './Page/AnnotationLayer.js';\nimport { cancelRunningTask, isProvided, makePageCallback } from './shared/utils.js';\nimport useDocumentContext from './shared/hooks/useDocumentContext.js';\nimport useResolver from './shared/hooks/useResolver.js';\nconst defaultScale = 1;\n/**\n * Displays a page.\n *\n * Should be placed inside `<Document />`. Alternatively, it can have `pdf` prop passed, which can be obtained from `<Document />`'s `onLoadSuccess` callback function, however some advanced functions like linking between pages inside a document may not be working correctly.\n */\nexport default function Page(props) {\n const documentContext = useDocumentContext();\n const mergedProps = Object.assign(Object.assign({}, documentContext), props);\n const { _className = 'react-pdf__Page', _enableRegisterUnregisterPage = true, canvasBackground, canvasRef, children, className, customRenderer: CustomRenderer, customTextRenderer, devicePixelRatio, error = 'Failed to load the page.', height, inputRef, loading = 'Loading page…', noData = 'No page specified.', onGetAnnotationsError: onGetAnnotationsErrorProps, onGetAnnotationsSuccess: onGetAnnotationsSuccessProps, onGetStructTreeError: onGetStructTreeErrorProps, onGetStructTreeSuccess: onGetStructTreeSuccessProps, onGetTextError: onGetTextErrorProps, onGetTextSuccess: onGetTextSuccessProps, onLoadError: onLoadErrorProps, onLoadSuccess: onLoadSuccessProps, onRenderAnnotationLayerError: onRenderAnnotationLayerErrorProps, onRenderAnnotationLayerSuccess: onRenderAnnotationLayerSuccessProps, onRenderError: onRenderErrorProps, onRenderSuccess: onRenderSuccessProps, onRenderTextLayerError: onRenderTextLayerErrorProps, onRenderTextLayerSuccess: onRenderTextLayerSuccessProps, pageIndex: pageIndexProps, pageNumber: pageNumberProps, pdf, registerPage, renderAnnotationLayer: renderAnnotationLayerProps = true, renderForms = false, renderMode = 'canvas', renderTextLayer: renderTextLayerProps = true, rotate: rotateProps, scale: scaleProps = defaultScale, unregisterPage, width } = mergedProps, otherProps = __rest(mergedProps, [\"_className\", \"_enableRegisterUnregisterPage\", \"canvasBackground\", \"canvasRef\", \"children\", \"className\", \"customRenderer\", \"customTextRenderer\", \"devicePixelRatio\", \"error\", \"height\", \"inputRef\", \"loading\", \"noData\", \"onGetAnnotationsError\", \"onGetAnnotationsSuccess\", \"onGetStructTreeError\", \"onGetStructTreeSuccess\", \"onGetTextError\", \"onGetTextSuccess\", \"onLoadError\", \"onLoadSuccess\", \"onRenderAnnotationLayerError\", \"onRenderAnnotationLayerSuccess\", \"onRenderError\", \"onRenderSuccess\", \"onRenderTextLayerError\", \"onRenderTextLayerSuccess\", \"pageIndex\", \"pageNumber\", \"pdf\", \"registerPage\", \"renderAnnotationLayer\", \"renderForms\", \"renderMode\", \"renderTextLayer\", \"rotate\", \"scale\", \"unregisterPage\", \"width\"]);\n const [pageState, pageDispatch] = useResolver();\n const { value: page, error: pageError } = pageState;\n const pageElement = useRef(null);\n invariant(pdf, 'Attempted to load a page, but no document was specified. Wrap <Page /> in a <Document /> or pass explicit `pdf` prop.');\n const pageIndex = isProvided(pageNumberProps) ? pageNumberProps - 1 : (pageIndexProps !== null && pageIndexProps !== void 0 ? pageIndexProps : null);\n const pageNumber = pageNumberProps !== null && pageNumberProps !== void 0 ? pageNumberProps : (isProvided(pageIndexProps) ? pageIndexProps + 1 : null);\n const rotate = rotateProps !== null && rotateProps !== void 0 ? rotateProps : (page ? page.rotate : null);\n const scale = useMemo(() => {\n if (!page) {\n return null;\n }\n // Be default, we'll render page at 100% * scale width.\n let pageScale = 1;\n // Passing scale explicitly null would cause the page not to render\n const scaleWithDefault = scaleProps !== null && scaleProps !== void 0 ? scaleProps : defaultScale;\n // If width/height is defined, calculate the scale of the page so it could be of desired width.\n if (width || height) {\n const viewport = page.getViewport({ scale: 1, rotation: rotate });\n if (width) {\n pageScale = width / viewport.width;\n }\n else if (height) {\n pageScale = height / viewport.height;\n }\n }\n return scaleWithDefault * pageScale;\n }, [height, page, rotate, scaleProps, width]);\n // biome-ignore lint/correctness/useExhaustiveDependencies: useEffect intentionally triggered on pdf change\n useEffect(function hook() {\n return () => {\n if (!isProvided(pageIndex)) {\n // Impossible, but TypeScript doesn't know that\n return;\n }\n if (_enableRegisterUnregisterPage && unregisterPage) {\n unregisterPage(pageIndex);\n }\n };\n }, [_enableRegisterUnregisterPage, pdf, pageIndex, unregisterPage]);\n /**\n * Called when a page is loaded successfully\n */\n function onLoadSuccess() {\n if (onLoadSuccessProps) {\n if (!page || !scale) {\n // Impossible, but TypeScript doesn't know that\n return;\n }\n onLoadSuccessProps(makePageCallback(page, scale));\n }\n if (_enableRegisterUnregisterPage && registerPage) {\n if (!isProvided(pageIndex) || !pageElement.current) {\n // Impossible, but TypeScript doesn't know that\n return;\n }\n registerPage(pageIndex, pageElement.current);\n }\n }\n /**\n * Called when a page failed to load\n */\n function onLoadError() {\n if (!pageError) {\n // Impossible, but TypeScript doesn't know that\n return;\n }\n warning(false, pageError.toString());\n if (onLoadErrorProps) {\n onLoadErrorProps(pageError);\n }\n }\n // biome-ignore lint/correctness/useExhaustiveDependencies: useEffect intentionally triggered on pdf and pageIndex change\n useEffect(function resetPage() {\n pageDispatch({ type: 'RESET' });\n }, [pageDispatch, pdf, pageIndex]);\n useEffect(function loadPage() {\n if (!pdf || !pageNumber) {\n return;\n }\n const cancellable = makeCancellable(pdf.getPage(pageNumber));\n const runningTask = cancellable;\n cancellable.promise\n .then((nextPage) => {\n pageDispatch({ type: 'RESOLVE', value: nextPage });\n })\n .catch((error) => {\n pageDispatch({ type: 'REJECT', error });\n });\n return () => cancelRunningTask(runningTask);\n }, [pageDispatch, pdf, pageNumber]);\n // biome-ignore lint/correctness/useExhaustiveDependencies: Ommitted callbacks so they are not called every time they change\n useEffect(() => {\n if (page === undefined) {\n return;\n }\n if (page === false) {\n onLoadError();\n return;\n }\n onLoadSuccess();\n }, [page, scale]);\n const childContext = useMemo(() => \n // Technically there cannot be page without pageIndex, pageNumber, rotate and scale, but TypeScript doesn't know that\n page && isProvided(pageIndex) && pageNumber && isProvided(rotate) && isProvided(scale)\n ? {\n _className,\n canvasBackground,\n customTextRenderer,\n devicePixelRatio,\n onGetAnnotationsError: onGetAnnotationsErrorProps,\n onGetAnnotationsSuccess: onGetAnnotationsSuccessProps,\n onGetStructTreeError: onGetStructTreeErrorProps,\n onGetStructTreeSuccess: onGetStructTreeSuccessProps,\n onGetTextError: onGetTextErrorProps,\n onGetTextSuccess: onGetTextSuccessProps,\n onRenderAnnotationLayerError: onRenderAnnotationLayerErrorProps,\n onRenderAnnotationLayerSuccess: onRenderAnnotationLayerSuccessProps,\n onRenderError: onRenderErrorProps,\n onRenderSuccess: onRenderSuccessProps,\n onRenderTextLayerError: onRenderTextLayerErrorProps,\n onRenderTextLayerSuccess: onRenderTextLayerSuccessProps,\n page,\n pageIndex,\n pageNumber,\n renderForms,\n renderTextLayer: renderTextLayerProps,\n rotate,\n scale,\n }\n : null, [\n _className,\n canvasBackground,\n customTextRenderer,\n devicePixelRatio,\n onGetAnnotationsErrorProps,\n onGetAnnotationsSuccessProps,\n onGetStructTreeErrorProps,\n onGetStructTreeSuccessProps,\n onGetTextErrorProps,\n onGetTextSuccessProps,\n onRenderAnnotationLayerErrorProps,\n onRenderAnnotationLayerSuccessProps,\n onRenderErrorProps,\n onRenderSuccessProps,\n onRenderTextLayerErrorProps,\n onRenderTextLayerSuccessProps,\n page,\n pageIndex,\n pageNumber,\n renderForms,\n renderTextLayerProps,\n rotate,\n scale,\n ]);\n const eventProps = useMemo(() => makeEventProps(otherProps, () => page ? (scale ? makePageCallback(page, scale) : undefined) : page), \n // biome-ignore lint/correctness/useExhaustiveDependencies: FIXME\n [otherProps, page, scale]);\n const pageKey = `${pageIndex}@${scale}/${rotate}`;\n function renderMainLayer() {\n switch (renderMode) {\n case 'custom': {\n invariant(CustomRenderer, `renderMode was set to \"custom\", but no customRenderer was passed.`);\n return _jsx(CustomRenderer, {}, `${pageKey}_custom`);\n }\n case 'none':\n return null;\n case 'canvas':\n default:\n return _jsx(Canvas, { canvasRef: canvasRef }, `${pageKey}_canvas`);\n }\n }\n function renderTextLayer() {\n if (!renderTextLayerProps) {\n return null;\n }\n return _jsx(TextLayer, {}, `${pageKey}_text`);\n }\n function renderAnnotationLayer() {\n if (!renderAnnotationLayerProps) {\n return null;\n }\n return _jsx(AnnotationLayer, {}, `${pageKey}_annotations`);\n }\n function renderChildren() {\n return (_jsxs(PageContext.Provider, { value: childContext, children: [renderMainLayer(), renderTextLayer(), renderAnnotationLayer(), children] }));\n }\n function renderContent() {\n if (!pageNumber) {\n return _jsx(Message, { type: \"no-data\", children: typeof noData === 'function' ? noData() : noData });\n }\n if (pdf === null || page === undefined || page === null) {\n return (_jsx(Message, { type: \"loading\", children: typeof loading === 'function' ? loading() : loading }));\n }\n if (pdf === false || page === false) {\n return _jsx(Message, { type: \"error\", children: typeof error === 'function' ? error() : error });\n }\n return renderChildren();\n }\n return (_jsx(\"div\", Object.assign({ className: clsx(_className, className), \"data-page-number\": pageNumber, \n // Assertion is needed for React 18 compatibility\n ref: mergeRefs(inputRef, pageElement), style: {\n ['--scale-factor']: `${scale}`,\n backgroundColor: canvasBackground || 'white',\n position: 'relative',\n minWidth: 'min-content',\n minHeight: 'min-content',\n } }, eventProps, { children: renderContent() })));\n}\n","import * as pdfjs from 'pdfjs-dist';\nimport Document from './Document.js';\nimport Outline from './Outline.js';\nimport Page from './Page.js';\nimport Thumbnail from './Thumbnail.js';\nimport useDocumentContext from './shared/hooks/useDocumentContext.js';\nimport useOutlineContext from './shared/hooks/useOutlineContext.js';\nimport usePageContext from './shared/hooks/usePageContext.js';\nimport PasswordResponses from './PasswordResponses.js';\nimport { displayWorkerWarning } from './shared/utils.js';\ndisplayWorkerWarning();\npdfjs.GlobalWorkerOptions.workerSrc = 'pdf.worker.mjs';\nexport { pdfjs, Document, Outline, Page, Thumbnail, useDocumentContext, useOutlineContext, usePageContext, PasswordResponses, };\n","import { Box } from '@veracity/vui'\nimport { useEffect, useState } from 'react'\nimport { Document, Page, pdfjs } from 'react-pdf'\n\nimport 'react-pdf/dist/Page/AnnotationLayer.css'\nimport 'react-pdf/dist/Page/TextLayer.css'\n\npdfjs.GlobalWorkerOptions.workerSrc = `//unpkg.com/pdfjs-dist@${pdfjs.version}/build/pdf.worker.min.mjs`\n\ntype pdfProps = { id: string; report: any }\n\nconst ReactPDF = (props: pdfProps) => {\n const [numPages, setNumPages] = useState(null)\n const [pdfData, setPdfData] = useState(null)\n\n const onDocumentLoadSuccess = ({ numPages }): void => {\n setNumPages(numPages)\n }\n\n useEffect(() => {\n if (props.report) {\n setPdfData(`data:application/pdf;base64,${props.report}`)\n }\n }, [props.report])\n\n return (\n <Box column id={props.id} overflowX=\"hidden\" overflowY=\"auto\">\n <Box className=\"printArea pdf-viewer\" column>\n {pdfData && (\n <Document file={pdfData} onLoadSuccess={onDocumentLoadSuccess} renderMode=\"canvas\">\n {Array.from(new Array(numPages), (el, index) => (\n <Page key={`page_${index + 1}`} pageNumber={index + 1} width={1024} />\n ))}\n </Document>\n )}\n </Box>\n </Box>\n )\n}\n\nexport default ReactPDF\n","const PublicLabel = {\n exportFileTitle: 'Export to $fileType$ in progress',\n exportFileCompleteTitle: '$fileType$ is ready for download',\n exportFileErrorTitle: 'Error occurs during export',\n exportFileNoData: 'Export to file failed, please try again.',\n exportWrongConfig:\n 'The report export failed as it seems to be configureed incorrectly, please find support contact from the footer and contact the admin of the current VAP service for help.',\n exportBadRequest: 'Something wrong with the report export, please find support contact from the footer and contact the admin of the current VAP service for help.',\n exportFileContent: 'Your report $reportName$ is being exported to a $fileType$ file. This might take a few minutes.',\n exportFileCompleteContent: 'The report $reportName$ was exported to a $fileType$ file and is available for you to download.',\n exportFileCompleteNote:\n 'Please note: The links in the Power Point to the report can not be used. Suggest you copy the link path presented in your browser now. Then open the Power Point and change the link on every page/slide in the Power Point.'\n}\n\nexport default PublicLabel\n","import { styled,T } from '@veracity/vui'\n\nexport const BreadCrumbText = styled(T)`\n overflow: hidden;\n\twhite-space: nowrap;\n\ttext-overflow: ellipsis;\n`\n","import { Box, T } from '@veracity/vui'\nimport shallow from 'zustand/shallow'\n\nimport { useGlobalStore } from 'stores/global'\n\nimport { BreadCrumbText } from './styles'\nconst BreadCrumb = () => {\n\tconst { selectedEntity, selectedReport } = useGlobalStore(\n\t\tstate => ({\n\t\t\tselectedEntity: state.selectedEntity,\n\t\t\tselectedReport: state.selectedReport\n\t\t}),\n\t\tshallow\n\t)\n\n\treturn (\n\t\t<Box>\n\t\t\t{selectedEntity && <BreadCrumbText text={selectedEntity.name}></BreadCrumbText>}\n\t\t\t<Box mx=\"10px\">/</Box>\n\t\t\t{selectedReport && <BreadCrumbText text={selectedReport.name}></BreadCrumbText>}\n\t\t</Box>\n\t)\n}\n\nexport default BreadCrumb\n","import { styled } from '@veracity/vui'\n\nexport const ImageWrap = styled.div`\n\twidth: 100%;\n\theight: 100%;\n\tmargin: 0 auto;\n\toverflow: auto;\n\tpadding: 0.5rem 0;\n\tdisplay: flex;\n\tjustify-content: center;\n\talign-items: center;\n\timg {\n\t\tdisplay: block;\n\t\twidth: 100%;\n\t\tmargin: 0 auto;\n\t}\n`\n","import { ReportData } from 'libs/global'\nimport React, { useEffect, useState } from 'react'\n\nimport { useGlobalStore } from 'stores/global'\n\nimport { ImageWrap } from './styles'\n\ntype ReportProps = {\n\tprintDone: Function\n\tprintNow: boolean\n\treportData: ReportData\n}\n\nconst Image = (props: ReportProps) => {\n\tconst { reportData } = props\n\tconst [showImage, setShowImage] = useState(false)\n\n\tuseEffect(() => {\n\t\tif (reportData && reportData.fileBlob) {\n\t\t\tsetShowImage(true)\n\t\t}\n\t}, [props.reportData])\n\n\treturn (\n\t\t<div className=\"printArea\">\n\t\t\t<ImageWrap>{showImage && <img src={'data:image/bmp;base64,' + reportData.fileBlob.file} />}</ImageWrap>\n\t\t</div>\n\t)\n}\n\nexport default Image\n","// powerbi-client v2.21.1\n// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"powerbi-client\"] = factory();\n\telse\n\t\troot[\"powerbi-client\"] = factory();\n})(this, function() {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// define __esModule on exports\n/******/ \t__webpack_require__.r = function(exports) {\n/******/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/******/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/******/ \t\t}\n/******/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/******/ \t};\n/******/\n/******/ \t// create a fake namespace object\n/******/ \t// mode & 1: value is a module id, require it\n/******/ \t// mode & 2: merge all properties of value into the ns\n/******/ \t// mode & 4: return value when already ns object\n/******/ \t// mode & 8|1: behave like require\n/******/ \t__webpack_require__.t = function(value, mode) {\n/******/ \t\tif(mode & 1) value = __webpack_require__(value);\n/******/ \t\tif(mode & 8) return value;\n/******/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/******/ \t\tvar ns = Object.create(null);\n/******/ \t\t__webpack_require__.r(ns);\n/******/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/******/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/******/ \t\treturn ns;\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = \"./src/powerbi-client.ts\");\n/******/ })\n/************************************************************************/\n/******/ ({\n\n/***/ \"./node_modules/assert/assert.js\":\n/*!***************************************!*\\\n !*** ./node_modules/assert/assert.js ***!\n \\***************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(global) {\n\nvar objectAssign = __webpack_require__(/*! object-assign */ \"./node_modules/object-assign/index.js\");\n\n// compare and isBuffer taken from https://github.com/feross/buffer/blob/680e9e5e488f22aac27599a57dc844a6315928dd/index.js\n// original notice:\n\n/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh <feross@feross.org> <http://feross.org>\n * @license MIT\n */\nfunction compare(a, b) {\n if (a === b) {\n return 0;\n }\n\n var x = a.length;\n var y = b.length;\n\n for (var i = 0, len = Math.min(x, y); i < len; ++i) {\n if (a[i] !== b[i]) {\n x = a[i];\n y = b[i];\n break;\n }\n }\n\n if (x < y) {\n return -1;\n }\n if (y < x) {\n return 1;\n }\n return 0;\n}\nfunction isBuffer(b) {\n if (global.Buffer && typeof global.Buffer.isBuffer === 'function') {\n return global.Buffer.isBuffer(b);\n }\n return !!(b != null && b._isBuffer);\n}\n\n// based on node assert, original notice:\n// NB: The URL to the CommonJS spec is kept just for tradition.\n// node-assert has evolved a lot since then, both in API and behavior.\n\n// http://wiki.commonjs.org/wiki/Unit_Testing/1.0\n//\n// THIS IS NOT TESTED NOR LIKELY TO WORK OUTSIDE V8!\n//\n// Originally from narwhal.js (http://narwhaljs.org)\n// Copyright (c) 2009 Thomas Robinson <280north.com>\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the 'Software'), to\n// deal in the Software without restriction, including without limitation the\n// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or\n// sell copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN\n// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION\n// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nvar util = __webpack_require__(/*! util/ */ \"./node_modules/util/util.js\");\nvar hasOwn = Object.prototype.hasOwnProperty;\nvar pSlice = Array.prototype.slice;\nvar functionsHaveNames = (function () {\n return function foo() {}.name === 'foo';\n}());\nfunction pToString (obj) {\n return Object.prototype.toString.call(obj);\n}\nfunction isView(arrbuf) {\n if (isBuffer(arrbuf)) {\n return false;\n }\n if (typeof global.ArrayBuffer !== 'function') {\n return false;\n }\n if (typeof ArrayBuffer.isView === 'function') {\n return ArrayBuffer.isView(arrbuf);\n }\n if (!arrbuf) {\n return false;\n }\n if (arrbuf instanceof DataView) {\n return true;\n }\n if (arrbuf.buffer && arrbuf.buffer instanceof ArrayBuffer) {\n return true;\n }\n return false;\n}\n// 1. The assert module provides functions that throw\n// AssertionError's when particular conditions are not met. The\n// assert module must conform to the following interface.\n\nvar assert = module.exports = ok;\n\n// 2. The AssertionError is defined in assert.\n// new assert.AssertionError({ message: message,\n// actual: actual,\n// expected: expected })\n\nvar regex = /\\s*function\\s+([^\\(\\s]*)\\s*/;\n// based on https://github.com/ljharb/function.prototype.name/blob/adeeeec8bfcc6068b187d7d9fb3d5bb1d3a30899/implementation.js\nfunction getName(func) {\n if (!util.isFunction(func)) {\n return;\n }\n if (functionsHaveNames) {\n return func.name;\n }\n var str = func.toString();\n var match = str.match(regex);\n return match && match[1];\n}\nassert.AssertionError = function AssertionError(options) {\n this.name = 'AssertionError';\n this.actual = options.actual;\n this.expected = options.expected;\n this.operator = options.operator;\n if (options.message) {\n this.message = options.message;\n this.generatedMessage = false;\n } else {\n this.message = getMessage(this);\n this.generatedMessage = true;\n }\n var stackStartFunction = options.stackStartFunction || fail;\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, stackStartFunction);\n } else {\n // non v8 browsers so we can have a stacktrace\n var err = new Error();\n if (err.stack) {\n var out = err.stack;\n\n // try to strip useless frames\n var fn_name = getName(stackStartFunction);\n var idx = out.indexOf('\\n' + fn_name);\n if (idx >= 0) {\n // once we have located the function frame\n // we need to strip out everything before it (and its line)\n var next_line = out.indexOf('\\n', idx + 1);\n out = out.substring(next_line + 1);\n }\n\n this.stack = out;\n }\n }\n};\n\n// assert.AssertionError instanceof Error\nutil.inherits(assert.AssertionError, Error);\n\nfunction truncate(s, n) {\n if (typeof s === 'string') {\n return s.length < n ? s : s.slice(0, n);\n } else {\n return s;\n }\n}\nfunction inspect(something) {\n if (functionsHaveNames || !util.isFunction(something)) {\n return util.inspect(something);\n }\n var rawname = getName(something);\n var name = rawname ? ': ' + rawname : '';\n return '[Function' + name + ']';\n}\nfunction getMessage(self) {\n return truncate(inspect(self.actual), 128) + ' ' +\n self.operator + ' ' +\n truncate(inspect(self.expected), 128);\n}\n\n// At present only the three keys mentioned above are used and\n// understood by the spec. Implementations or sub modules can pass\n// other keys to the AssertionError's constructor - they will be\n// ignored.\n\n// 3. All of the following functions must throw an AssertionError\n// when a corresponding condition is not met, with a message that\n// may be undefined if not provided. All assertion methods provide\n// both the actual and expected values to the assertion error for\n// display purposes.\n\nfunction fail(actual, expected, message, operator, stackStartFunction) {\n throw new assert.AssertionError({\n message: message,\n actual: actual,\n expected: expected,\n operator: operator,\n stackStartFunction: stackStartFunction\n });\n}\n\n// EXTENSION! allows for well behaved errors defined elsewhere.\nassert.fail = fail;\n\n// 4. Pure assertion tests whether a value is truthy, as determined\n// by !!guard.\n// assert.ok(guard, message_opt);\n// This statement is equivalent to assert.equal(true, !!guard,\n// message_opt);. To test strictly for the value true, use\n// assert.strictEqual(true, guard, message_opt);.\n\nfunction ok(value, message) {\n if (!value) fail(value, true, message, '==', assert.ok);\n}\nassert.ok = ok;\n\n// 5. The equality assertion tests shallow, coercive equality with\n// ==.\n// assert.equal(actual, expected, message_opt);\n\nassert.equal = function equal(actual, expected, message) {\n if (actual != expected) fail(actual, expected, message, '==', assert.equal);\n};\n\n// 6. The non-equality assertion tests for whether two objects are not equal\n// with != assert.notEqual(actual, expected, message_opt);\n\nassert.notEqual = function notEqual(actual, expected, message) {\n if (actual == expected) {\n fail(actual, expected, message, '!=', assert.notEqual);\n }\n};\n\n// 7. The equivalence assertion tests a deep equality relation.\n// assert.deepEqual(actual, expected, message_opt);\n\nassert.deepEqual = function deepEqual(actual, expected, message) {\n if (!_deepEqual(actual, expected, false)) {\n fail(actual, expected, message, 'deepEqual', assert.deepEqual);\n }\n};\n\nassert.deepStrictEqual = function deepStrictEqual(actual, expected, message) {\n if (!_deepEqual(actual, expected, true)) {\n fail(actual, expected, message, 'deepStrictEqual', assert.deepStrictEqual);\n }\n};\n\nfunction _deepEqual(actual, expected, strict, memos) {\n // 7.1. All identical values are equivalent, as determined by ===.\n if (actual === expected) {\n return true;\n } else if (isBuffer(actual) && isBuffer(expected)) {\n return compare(actual, expected) === 0;\n\n // 7.2. If the expected value is a Date object, the actual value is\n // equivalent if it is also a Date object that refers to the same time.\n } else if (util.isDate(actual) && util.isDate(expected)) {\n return actual.getTime() === expected.getTime();\n\n // 7.3 If the expected value is a RegExp object, the actual value is\n // equivalent if it is also a RegExp object with the same source and\n // properties (`global`, `multiline`, `lastIndex`, `ignoreCase`).\n } else if (util.isRegExp(actual) && util.isRegExp(expected)) {\n return actual.source === expected.source &&\n actual.global === expected.global &&\n actual.multiline === expected.multiline &&\n actual.lastIndex === expected.lastIndex &&\n actual.ignoreCase === expected.ignoreCase;\n\n // 7.4. Other pairs that do not both pass typeof value == 'object',\n // equivalence is determined by ==.\n } else if ((actual === null || typeof actual !== 'object') &&\n (expected === null || typeof expected !== 'object')) {\n return strict ? actual === expected : actual == expected;\n\n // If both values are instances of typed arrays, wrap their underlying\n // ArrayBuffers in a Buffer each to increase performance\n // This optimization requires the arrays to have the same type as checked by\n // Object.prototype.toString (aka pToString). Never perform binary\n // comparisons for Float*Arrays, though, since e.g. +0 === -0 but their\n // bit patterns are not identical.\n } else if (isView(actual) && isView(expected) &&\n pToString(actual) === pToString(expected) &&\n !(actual instanceof Float32Array ||\n actual instanceof Float64Array)) {\n return compare(new Uint8Array(actual.buffer),\n new Uint8Array(expected.buffer)) === 0;\n\n // 7.5 For all other Object pairs, including Array objects, equivalence is\n // determined by having the same number of owned properties (as verified\n // with Object.prototype.hasOwnProperty.call), the same set of keys\n // (although not necessarily the same order), equivalent values for every\n // corresponding key, and an identical 'prototype' property. Note: this\n // accounts for both named and indexed properties on Arrays.\n } else if (isBuffer(actual) !== isBuffer(expected)) {\n return false;\n } else {\n memos = memos || {actual: [], expected: []};\n\n var actualIndex = memos.actual.indexOf(actual);\n if (actualIndex !== -1) {\n if (actualIndex === memos.expected.indexOf(expected)) {\n return true;\n }\n }\n\n memos.actual.push(actual);\n memos.expected.push(expected);\n\n return objEquiv(actual, expected, strict, memos);\n }\n}\n\nfunction isArguments(object) {\n return Object.prototype.toString.call(object) == '[object Arguments]';\n}\n\nfunction objEquiv(a, b, strict, actualVisitedObjects) {\n if (a === null || a === undefined || b === null || b === undefined)\n return false;\n // if one is a primitive, the other must be same\n if (util.isPrimitive(a) || util.isPrimitive(b))\n return a === b;\n if (strict && Object.getPrototypeOf(a) !== Object.getPrototypeOf(b))\n return false;\n var aIsArgs = isArguments(a);\n var bIsArgs = isArguments(b);\n if ((aIsArgs && !bIsArgs) || (!aIsArgs && bIsArgs))\n return false;\n if (aIsArgs) {\n a = pSlice.call(a);\n b = pSlice.call(b);\n return _deepEqual(a, b, strict);\n }\n var ka = objectKeys(a);\n var kb = objectKeys(b);\n var key, i;\n // having the same number of owned properties (keys incorporates\n // hasOwnProperty)\n if (ka.length !== kb.length)\n return false;\n //the same set of keys (although not necessarily the same order),\n ka.sort();\n kb.sort();\n //~~~cheap key test\n for (i = ka.length - 1; i >= 0; i--) {\n if (ka[i] !== kb[i])\n return false;\n }\n //equivalent values for every corresponding key, and\n //~~~possibly expensive deep test\n for (i = ka.length - 1; i >= 0; i--) {\n key = ka[i];\n if (!_deepEqual(a[key], b[key], strict, actualVisitedObjects))\n return false;\n }\n return true;\n}\n\n// 8. The non-equivalence assertion tests for any deep inequality.\n// assert.notDeepEqual(actual, expected, message_opt);\n\nassert.notDeepEqual = function notDeepEqual(actual, expected, message) {\n if (_deepEqual(actual, expected, false)) {\n fail(actual, expected, message, 'notDeepEqual', assert.notDeepEqual);\n }\n};\n\nassert.notDeepStrictEqual = notDeepStrictEqual;\nfunction notDeepStrictEqual(actual, expected, message) {\n if (_deepEqual(actual, expected, true)) {\n fail(actual, expected, message, 'notDeepStrictEqual', notDeepStrictEqual);\n }\n}\n\n\n// 9. The strict equality assertion tests strict equality, as determined by ===.\n// assert.strictEqual(actual, expected, message_opt);\n\nassert.strictEqual = function strictEqual(actual, expected, message) {\n if (actual !== expected) {\n fail(actual, expected, message, '===', assert.strictEqual);\n }\n};\n\n// 10. The strict non-equality assertion tests for strict inequality, as\n// determined by !==. assert.notStrictEqual(actual, expected, message_opt);\n\nassert.notStrictEqual = function notStrictEqual(actual, expected, message) {\n if (actual === expected) {\n fail(actual, expected, message, '!==', assert.notStrictEqual);\n }\n};\n\nfunction expectedException(actual, expected) {\n if (!actual || !expected) {\n return false;\n }\n\n if (Object.prototype.toString.call(expected) == '[object RegExp]') {\n return expected.test(actual);\n }\n\n try {\n if (actual instanceof expected) {\n return true;\n }\n } catch (e) {\n // Ignore. The instanceof check doesn't work for arrow functions.\n }\n\n if (Error.isPrototypeOf(expected)) {\n return false;\n }\n\n return expected.call({}, actual) === true;\n}\n\nfunction _tryBlock(block) {\n var error;\n try {\n block();\n } catch (e) {\n error = e;\n }\n return error;\n}\n\nfunction _throws(shouldThrow, block, expected, message) {\n var actual;\n\n if (typeof block !== 'function') {\n throw new TypeError('\"block\" argument must be a function');\n }\n\n if (typeof expected === 'string') {\n message = expected;\n expected = null;\n }\n\n actual = _tryBlock(block);\n\n message = (expected && expected.name ? ' (' + expected.name + ').' : '.') +\n (message ? ' ' + message : '.');\n\n if (shouldThrow && !actual) {\n fail(actual, expected, 'Missing expected exception' + message);\n }\n\n var userProvidedMessage = typeof message === 'string';\n var isUnwantedException = !shouldThrow && util.isError(actual);\n var isUnexpectedException = !shouldThrow && actual && !expected;\n\n if ((isUnwantedException &&\n userProvidedMessage &&\n expectedException(actual, expected)) ||\n isUnexpectedException) {\n fail(actual, expected, 'Got unwanted exception' + message);\n }\n\n if ((shouldThrow && actual && expected &&\n !expectedException(actual, expected)) || (!shouldThrow && actual)) {\n throw actual;\n }\n}\n\n// 11. Expected to throw an error:\n// assert.throws(block, Error_opt, message_opt);\n\nassert.throws = function(block, /*optional*/error, /*optional*/message) {\n _throws(true, block, error, message);\n};\n\n// EXTENSION! This is annoying to write outside this module.\nassert.doesNotThrow = function(block, /*optional*/error, /*optional*/message) {\n _throws(false, block, error, message);\n};\n\nassert.ifError = function(err) { if (err) throw err; };\n\n// Expose a strict only variant of assert\nfunction strict(value, message) {\n if (!value) fail(value, true, message, '==', strict);\n}\nassert.strict = objectAssign(strict, assert, {\n equal: assert.strictEqual,\n deepEqual: assert.deepStrictEqual,\n notEqual: assert.notStrictEqual,\n notDeepEqual: assert.notDeepStrictEqual\n});\nassert.strict.strict = assert.strict;\n\nvar objectKeys = Object.keys || function (obj) {\n var keys = [];\n for (var key in obj) {\n if (hasOwn.call(obj, key)) keys.push(key);\n }\n return keys;\n};\n\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../webpack/buildin/global.js */ \"./node_modules/webpack/buildin/global.js\")))\n\n/***/ }),\n\n/***/ \"./node_modules/http-post-message/dist/httpPostMessage.js\":\n/*!****************************************************************!*\\\n !*** ./node_modules/http-post-message/dist/httpPostMessage.js ***!\n \\****************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n/*! http-post-message v0.2.3 | (c) 2016 Microsoft Corporation MIT */\n(function webpackUniversalModuleDefinition(root, factory) {\n\tif(true)\n\t\tmodule.exports = factory();\n\telse {}\n})(this, function() {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId])\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\texports: {},\n/******/ \t\t\tid: moduleId,\n/******/ \t\t\tloaded: false\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.loaded = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(0);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ function(module, exports) {\n\n\t\"use strict\";\n\tvar HttpPostMessage = (function () {\n\t function HttpPostMessage(windowPostMessageProxy, defaultHeaders, defaultTargetWindow) {\n\t if (defaultHeaders === void 0) { defaultHeaders = {}; }\n\t this.defaultHeaders = defaultHeaders;\n\t this.defaultTargetWindow = defaultTargetWindow;\n\t this.windowPostMessageProxy = windowPostMessageProxy;\n\t }\n\t // TODO: See if it's possible to share tracking properties interface?\n\t // The responsibility of knowing how to configure windowPostMessageProxy for http should\n\t // live in this http class, but the configuration would need ITrackingProperties\n\t // interface which lives in WindowPostMessageProxy. Use <any> type as workaround\n\t HttpPostMessage.addTrackingProperties = function (message, trackingProperties) {\n\t message.headers = message.headers || {};\n\t if (trackingProperties && trackingProperties.id) {\n\t message.headers.id = trackingProperties.id;\n\t }\n\t return message;\n\t };\n\t HttpPostMessage.getTrackingProperties = function (message) {\n\t return {\n\t id: message.headers && message.headers.id\n\t };\n\t };\n\t HttpPostMessage.isErrorMessage = function (message) {\n\t if (typeof (message && message.statusCode) !== 'number') {\n\t return false;\n\t }\n\t return !(200 <= message.statusCode && message.statusCode < 300);\n\t };\n\t HttpPostMessage.prototype.get = function (url, headers, targetWindow) {\n\t if (headers === void 0) { headers = {}; }\n\t if (targetWindow === void 0) { targetWindow = this.defaultTargetWindow; }\n\t return this.send({\n\t method: \"GET\",\n\t url: url,\n\t headers: headers\n\t }, targetWindow);\n\t };\n\t HttpPostMessage.prototype.post = function (url, body, headers, targetWindow) {\n\t if (headers === void 0) { headers = {}; }\n\t if (targetWindow === void 0) { targetWindow = this.defaultTargetWindow; }\n\t return this.send({\n\t method: \"POST\",\n\t url: url,\n\t headers: headers,\n\t body: body\n\t }, targetWindow);\n\t };\n\t HttpPostMessage.prototype.put = function (url, body, headers, targetWindow) {\n\t if (headers === void 0) { headers = {}; }\n\t if (targetWindow === void 0) { targetWindow = this.defaultTargetWindow; }\n\t return this.send({\n\t method: \"PUT\",\n\t url: url,\n\t headers: headers,\n\t body: body\n\t }, targetWindow);\n\t };\n\t HttpPostMessage.prototype.patch = function (url, body, headers, targetWindow) {\n\t if (headers === void 0) { headers = {}; }\n\t if (targetWindow === void 0) { targetWindow = this.defaultTargetWindow; }\n\t return this.send({\n\t method: \"PATCH\",\n\t url: url,\n\t headers: headers,\n\t body: body\n\t }, targetWindow);\n\t };\n\t HttpPostMessage.prototype.delete = function (url, body, headers, targetWindow) {\n\t if (body === void 0) { body = null; }\n\t if (headers === void 0) { headers = {}; }\n\t if (targetWindow === void 0) { targetWindow = this.defaultTargetWindow; }\n\t return this.send({\n\t method: \"DELETE\",\n\t url: url,\n\t headers: headers,\n\t body: body\n\t }, targetWindow);\n\t };\n\t HttpPostMessage.prototype.send = function (request, targetWindow) {\n\t if (targetWindow === void 0) { targetWindow = this.defaultTargetWindow; }\n\t request.headers = this.assign({}, this.defaultHeaders, request.headers);\n\t if (!targetWindow) {\n\t throw new Error(\"target window is not provided. You must either provide the target window explicitly as argument to request, or specify default target window when constructing instance of this class.\");\n\t }\n\t return this.windowPostMessageProxy.postMessage(targetWindow, request);\n\t };\n\t /**\n\t * Object.assign() polyfill\n\t * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign\n\t */\n\t HttpPostMessage.prototype.assign = function (target) {\n\t var sources = [];\n\t for (var _i = 1; _i < arguments.length; _i++) {\n\t sources[_i - 1] = arguments[_i];\n\t }\n\t if (target === undefined || target === null) {\n\t throw new TypeError('Cannot convert undefined or null to object');\n\t }\n\t var output = Object(target);\n\t sources.forEach(function (source) {\n\t if (source !== undefined && source !== null) {\n\t for (var nextKey in source) {\n\t if (Object.prototype.hasOwnProperty.call(source, nextKey)) {\n\t output[nextKey] = source[nextKey];\n\t }\n\t }\n\t }\n\t });\n\t return output;\n\t };\n\t return HttpPostMessage;\n\t}());\n\texports.HttpPostMessage = HttpPostMessage;\n\n\n/***/ }\n/******/ ])\n});\n;\n//# sourceMappingURL=httpPostMessage.js.map\n\n/***/ }),\n\n/***/ \"./node_modules/object-assign/index.js\":\n/*!*********************************************!*\\\n !*** ./node_modules/object-assign/index.js ***!\n \\*********************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n\n\n/***/ }),\n\n/***/ \"./node_modules/powerbi-models/dist/models.js\":\n/*!****************************************************!*\\\n !*** ./node_modules/powerbi-models/dist/models.js ***!\n \\****************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n// powerbi-models v1.11.0\n// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n(function webpackUniversalModuleDefinition(root, factory) {\n\tif(true)\n\t\tmodule.exports = factory();\n\telse {}\n})(this, () => {\nreturn /******/ (() => { // webpackBootstrap\n/******/ \tvar __webpack_modules__ = ([\n/* 0 */\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.PageSelector = exports.Selector = exports.SortDirection = exports.LegendPosition = exports.TextAlignment = exports.CommonErrorCodes = exports.BookmarksPlayMode = exports.ExportDataType = exports.QnaMode = exports.PageNavigationPosition = exports.isPercentOfGrandTotal = exports.isColumnAggr = exports.isHierarchyLevelAggr = exports.isHierarchyLevel = exports.isColumn = exports.isMeasure = exports.getFilterType = exports.isBasicFilterWithKeys = exports.isFilterKeyColumnsTarget = exports.HierarchyFilter = exports.AdvancedFilter = exports.TupleFilter = exports.IdentityFilter = exports.BasicFilterWithKeys = exports.BasicFilter = exports.RelativeTimeFilter = exports.RelativeDateFilter = exports.TopNFilter = exports.IncludeExcludeFilter = exports.NotSupportedFilter = exports.Filter = exports.RelativeDateOperators = exports.RelativeDateFilterTimeUnit = exports.FilterType = exports.FiltersLevel = exports.FiltersOperations = exports.MenuLocation = exports.ContrastMode = exports.TokenType = exports.ViewMode = exports.Permissions = exports.SectionVisibility = exports.ReportAlignment = exports.HyperlinkClickBehavior = exports.LayoutType = exports.VisualContainerDisplayMode = exports.BackgroundType = exports.DisplayOption = exports.PageSizeType = exports.TraceType = void 0;\r\nexports.validateZoomLevel = exports.validateCustomTheme = exports.validateCommandsSettings = exports.validateVisualSettings = exports.validateVisualHeader = exports.validateExportDataRequest = exports.validateQnaInterpretInputData = exports.validateLoadQnaConfiguration = exports.validateSaveAsParameters = exports.validateUpdateFiltersRequest = exports.validateFilter = exports.validatePage = exports.validateTileLoad = exports.validateDashboardLoad = exports.validateCreateReport = exports.validatePaginatedReportLoad = exports.validateReportLoad = exports.validateMenuGroupExtension = exports.validateExtension = exports.validateCustomPageSize = exports.validateVisualizationsPane = exports.validateSyncSlicersPane = exports.validateSelectionPane = exports.validatePageNavigationPane = exports.validateFieldsPane = exports.validateFiltersPane = exports.validateBookmarksPane = exports.validatePanes = exports.validateSettings = exports.validateCaptureBookmarkRequest = exports.validateApplyBookmarkStateRequest = exports.validateApplyBookmarkByNameRequest = exports.validateAddBookmarkRequest = exports.validatePlayBookmarkRequest = exports.validateSlicerState = exports.validateSlicer = exports.validateVisualSelector = exports.isIExtensionArray = exports.isIExtensions = exports.isGroupedMenuExtension = exports.isFlatMenuExtension = exports.isReportFiltersArray = exports.isOnLoadFilters = exports.VisualDataRoleKindPreference = exports.VisualDataRoleKind = exports.CommandDisplayOption = exports.SlicerTargetSelector = exports.VisualTypeSelector = exports.VisualSelector = void 0;\r\nvar validator_1 = __webpack_require__(1);\r\nvar TraceType;\r\n(function (TraceType) {\r\n TraceType[TraceType[\"Information\"] = 0] = \"Information\";\r\n TraceType[TraceType[\"Verbose\"] = 1] = \"Verbose\";\r\n TraceType[TraceType[\"Warning\"] = 2] = \"Warning\";\r\n TraceType[TraceType[\"Error\"] = 3] = \"Error\";\r\n TraceType[TraceType[\"ExpectedError\"] = 4] = \"ExpectedError\";\r\n TraceType[TraceType[\"UnexpectedError\"] = 5] = \"UnexpectedError\";\r\n TraceType[TraceType[\"Fatal\"] = 6] = \"Fatal\";\r\n})(TraceType = exports.TraceType || (exports.TraceType = {}));\r\nvar PageSizeType;\r\n(function (PageSizeType) {\r\n PageSizeType[PageSizeType[\"Widescreen\"] = 0] = \"Widescreen\";\r\n PageSizeType[PageSizeType[\"Standard\"] = 1] = \"Standard\";\r\n PageSizeType[PageSizeType[\"Cortana\"] = 2] = \"Cortana\";\r\n PageSizeType[PageSizeType[\"Letter\"] = 3] = \"Letter\";\r\n PageSizeType[PageSizeType[\"Custom\"] = 4] = \"Custom\";\r\n PageSizeType[PageSizeType[\"Mobile\"] = 5] = \"Mobile\";\r\n})(PageSizeType = exports.PageSizeType || (exports.PageSizeType = {}));\r\nvar DisplayOption;\r\n(function (DisplayOption) {\r\n DisplayOption[DisplayOption[\"FitToPage\"] = 0] = \"FitToPage\";\r\n DisplayOption[DisplayOption[\"FitToWidth\"] = 1] = \"FitToWidth\";\r\n DisplayOption[DisplayOption[\"ActualSize\"] = 2] = \"ActualSize\";\r\n})(DisplayOption = exports.DisplayOption || (exports.DisplayOption = {}));\r\nvar BackgroundType;\r\n(function (BackgroundType) {\r\n BackgroundType[BackgroundType[\"Default\"] = 0] = \"Default\";\r\n BackgroundType[BackgroundType[\"Transparent\"] = 1] = \"Transparent\";\r\n})(BackgroundType = exports.BackgroundType || (exports.BackgroundType = {}));\r\nvar VisualContainerDisplayMode;\r\n(function (VisualContainerDisplayMode) {\r\n VisualContainerDisplayMode[VisualContainerDisplayMode[\"Visible\"] = 0] = \"Visible\";\r\n VisualContainerDisplayMode[VisualContainerDisplayMode[\"Hidden\"] = 1] = \"Hidden\";\r\n})(VisualContainerDisplayMode = exports.VisualContainerDisplayMode || (exports.VisualContainerDisplayMode = {}));\r\nvar LayoutType;\r\n(function (LayoutType) {\r\n LayoutType[LayoutType[\"Master\"] = 0] = \"Master\";\r\n LayoutType[LayoutType[\"Custom\"] = 1] = \"Custom\";\r\n LayoutType[LayoutType[\"MobilePortrait\"] = 2] = \"MobilePortrait\";\r\n LayoutType[LayoutType[\"MobileLandscape\"] = 3] = \"MobileLandscape\";\r\n})(LayoutType = exports.LayoutType || (exports.LayoutType = {}));\r\nvar HyperlinkClickBehavior;\r\n(function (HyperlinkClickBehavior) {\r\n HyperlinkClickBehavior[HyperlinkClickBehavior[\"Navigate\"] = 0] = \"Navigate\";\r\n HyperlinkClickBehavior[HyperlinkClickBehavior[\"NavigateAndRaiseEvent\"] = 1] = \"NavigateAndRaiseEvent\";\r\n HyperlinkClickBehavior[HyperlinkClickBehavior[\"RaiseEvent\"] = 2] = \"RaiseEvent\";\r\n})(HyperlinkClickBehavior = exports.HyperlinkClickBehavior || (exports.HyperlinkClickBehavior = {}));\r\nvar ReportAlignment;\r\n(function (ReportAlignment) {\r\n ReportAlignment[ReportAlignment[\"Left\"] = 0] = \"Left\";\r\n ReportAlignment[ReportAlignment[\"Center\"] = 1] = \"Center\";\r\n ReportAlignment[ReportAlignment[\"Right\"] = 2] = \"Right\";\r\n ReportAlignment[ReportAlignment[\"None\"] = 3] = \"None\";\r\n})(ReportAlignment = exports.ReportAlignment || (exports.ReportAlignment = {}));\r\nvar SectionVisibility;\r\n(function (SectionVisibility) {\r\n SectionVisibility[SectionVisibility[\"AlwaysVisible\"] = 0] = \"AlwaysVisible\";\r\n SectionVisibility[SectionVisibility[\"HiddenInViewMode\"] = 1] = \"HiddenInViewMode\";\r\n})(SectionVisibility = exports.SectionVisibility || (exports.SectionVisibility = {}));\r\nvar Permissions;\r\n(function (Permissions) {\r\n Permissions[Permissions[\"Read\"] = 0] = \"Read\";\r\n Permissions[Permissions[\"ReadWrite\"] = 1] = \"ReadWrite\";\r\n Permissions[Permissions[\"Copy\"] = 2] = \"Copy\";\r\n Permissions[Permissions[\"Create\"] = 4] = \"Create\";\r\n Permissions[Permissions[\"All\"] = 7] = \"All\";\r\n})(Permissions = exports.Permissions || (exports.Permissions = {}));\r\nvar ViewMode;\r\n(function (ViewMode) {\r\n ViewMode[ViewMode[\"View\"] = 0] = \"View\";\r\n ViewMode[ViewMode[\"Edit\"] = 1] = \"Edit\";\r\n})(ViewMode = exports.ViewMode || (exports.ViewMode = {}));\r\nvar TokenType;\r\n(function (TokenType) {\r\n TokenType[TokenType[\"Aad\"] = 0] = \"Aad\";\r\n TokenType[TokenType[\"Embed\"] = 1] = \"Embed\";\r\n})(TokenType = exports.TokenType || (exports.TokenType = {}));\r\nvar ContrastMode;\r\n(function (ContrastMode) {\r\n ContrastMode[ContrastMode[\"None\"] = 0] = \"None\";\r\n ContrastMode[ContrastMode[\"HighContrast1\"] = 1] = \"HighContrast1\";\r\n ContrastMode[ContrastMode[\"HighContrast2\"] = 2] = \"HighContrast2\";\r\n ContrastMode[ContrastMode[\"HighContrastBlack\"] = 3] = \"HighContrastBlack\";\r\n ContrastMode[ContrastMode[\"HighContrastWhite\"] = 4] = \"HighContrastWhite\";\r\n})(ContrastMode = exports.ContrastMode || (exports.ContrastMode = {}));\r\nvar MenuLocation;\r\n(function (MenuLocation) {\r\n MenuLocation[MenuLocation[\"Bottom\"] = 0] = \"Bottom\";\r\n MenuLocation[MenuLocation[\"Top\"] = 1] = \"Top\";\r\n})(MenuLocation = exports.MenuLocation || (exports.MenuLocation = {}));\r\nvar FiltersOperations;\r\n(function (FiltersOperations) {\r\n FiltersOperations[FiltersOperations[\"RemoveAll\"] = 0] = \"RemoveAll\";\r\n FiltersOperations[FiltersOperations[\"ReplaceAll\"] = 1] = \"ReplaceAll\";\r\n FiltersOperations[FiltersOperations[\"Add\"] = 2] = \"Add\";\r\n FiltersOperations[FiltersOperations[\"Replace\"] = 3] = \"Replace\";\r\n})(FiltersOperations = exports.FiltersOperations || (exports.FiltersOperations = {}));\r\nvar FiltersLevel;\r\n(function (FiltersLevel) {\r\n FiltersLevel[FiltersLevel[\"Report\"] = 0] = \"Report\";\r\n FiltersLevel[FiltersLevel[\"Page\"] = 1] = \"Page\";\r\n FiltersLevel[FiltersLevel[\"Visual\"] = 2] = \"Visual\";\r\n})(FiltersLevel = exports.FiltersLevel || (exports.FiltersLevel = {}));\r\nvar FilterType;\r\n(function (FilterType) {\r\n FilterType[FilterType[\"Advanced\"] = 0] = \"Advanced\";\r\n FilterType[FilterType[\"Basic\"] = 1] = \"Basic\";\r\n FilterType[FilterType[\"Unknown\"] = 2] = \"Unknown\";\r\n FilterType[FilterType[\"IncludeExclude\"] = 3] = \"IncludeExclude\";\r\n FilterType[FilterType[\"RelativeDate\"] = 4] = \"RelativeDate\";\r\n FilterType[FilterType[\"TopN\"] = 5] = \"TopN\";\r\n FilterType[FilterType[\"Tuple\"] = 6] = \"Tuple\";\r\n FilterType[FilterType[\"RelativeTime\"] = 7] = \"RelativeTime\";\r\n FilterType[FilterType[\"Identity\"] = 8] = \"Identity\";\r\n FilterType[FilterType[\"Hierarchy\"] = 9] = \"Hierarchy\";\r\n})(FilterType = exports.FilterType || (exports.FilterType = {}));\r\nvar RelativeDateFilterTimeUnit;\r\n(function (RelativeDateFilterTimeUnit) {\r\n RelativeDateFilterTimeUnit[RelativeDateFilterTimeUnit[\"Days\"] = 0] = \"Days\";\r\n RelativeDateFilterTimeUnit[RelativeDateFilterTimeUnit[\"Weeks\"] = 1] = \"Weeks\";\r\n RelativeDateFilterTimeUnit[RelativeDateFilterTimeUnit[\"CalendarWeeks\"] = 2] = \"CalendarWeeks\";\r\n RelativeDateFilterTimeUnit[RelativeDateFilterTimeUnit[\"Months\"] = 3] = \"Months\";\r\n RelativeDateFilterTimeUnit[RelativeDateFilterTimeUnit[\"CalendarMonths\"] = 4] = \"CalendarMonths\";\r\n RelativeDateFilterTimeUnit[RelativeDateFilterTimeUnit[\"Years\"] = 5] = \"Years\";\r\n RelativeDateFilterTimeUnit[RelativeDateFilterTimeUnit[\"CalendarYears\"] = 6] = \"CalendarYears\";\r\n RelativeDateFilterTimeUnit[RelativeDateFilterTimeUnit[\"Minutes\"] = 7] = \"Minutes\";\r\n RelativeDateFilterTimeUnit[RelativeDateFilterTimeUnit[\"Hours\"] = 8] = \"Hours\";\r\n})(RelativeDateFilterTimeUnit = exports.RelativeDateFilterTimeUnit || (exports.RelativeDateFilterTimeUnit = {}));\r\nvar RelativeDateOperators;\r\n(function (RelativeDateOperators) {\r\n RelativeDateOperators[RelativeDateOperators[\"InLast\"] = 0] = \"InLast\";\r\n RelativeDateOperators[RelativeDateOperators[\"InThis\"] = 1] = \"InThis\";\r\n RelativeDateOperators[RelativeDateOperators[\"InNext\"] = 2] = \"InNext\";\r\n})(RelativeDateOperators = exports.RelativeDateOperators || (exports.RelativeDateOperators = {}));\r\nvar Filter = /** @class */ (function () {\r\n function Filter(target, filterType) {\r\n this.target = target;\r\n this.filterType = filterType;\r\n }\r\n Filter.prototype.toJSON = function () {\r\n var filter = {\r\n $schema: this.schemaUrl,\r\n target: this.target,\r\n filterType: this.filterType\r\n };\r\n // Add displaySettings only when defined\r\n if (this.displaySettings !== undefined) {\r\n filter.displaySettings = this.displaySettings;\r\n }\r\n return filter;\r\n };\r\n return Filter;\r\n}());\r\nexports.Filter = Filter;\r\nvar NotSupportedFilter = /** @class */ (function (_super) {\r\n __extends(NotSupportedFilter, _super);\r\n function NotSupportedFilter(target, message, notSupportedTypeName) {\r\n var _this = _super.call(this, target, FilterType.Unknown) || this;\r\n _this.message = message;\r\n _this.notSupportedTypeName = notSupportedTypeName;\r\n _this.schemaUrl = NotSupportedFilter.schemaUrl;\r\n return _this;\r\n }\r\n NotSupportedFilter.prototype.toJSON = function () {\r\n var filter = _super.prototype.toJSON.call(this);\r\n filter.message = this.message;\r\n filter.notSupportedTypeName = this.notSupportedTypeName;\r\n return filter;\r\n };\r\n NotSupportedFilter.schemaUrl = \"http://powerbi.com/product/schema#notSupported\";\r\n return NotSupportedFilter;\r\n}(Filter));\r\nexports.NotSupportedFilter = NotSupportedFilter;\r\nvar IncludeExcludeFilter = /** @class */ (function (_super) {\r\n __extends(IncludeExcludeFilter, _super);\r\n function IncludeExcludeFilter(target, isExclude, values) {\r\n var _this = _super.call(this, target, FilterType.IncludeExclude) || this;\r\n _this.values = values;\r\n _this.isExclude = isExclude;\r\n _this.schemaUrl = IncludeExcludeFilter.schemaUrl;\r\n return _this;\r\n }\r\n IncludeExcludeFilter.prototype.toJSON = function () {\r\n var filter = _super.prototype.toJSON.call(this);\r\n filter.isExclude = this.isExclude;\r\n filter.values = this.values;\r\n return filter;\r\n };\r\n IncludeExcludeFilter.schemaUrl = \"http://powerbi.com/product/schema#includeExclude\";\r\n return IncludeExcludeFilter;\r\n}(Filter));\r\nexports.IncludeExcludeFilter = IncludeExcludeFilter;\r\nvar TopNFilter = /** @class */ (function (_super) {\r\n __extends(TopNFilter, _super);\r\n function TopNFilter(target, operator, itemCount, orderBy) {\r\n var _this = _super.call(this, target, FilterType.TopN) || this;\r\n _this.operator = operator;\r\n _this.itemCount = itemCount;\r\n _this.schemaUrl = TopNFilter.schemaUrl;\r\n _this.orderBy = orderBy;\r\n return _this;\r\n }\r\n TopNFilter.prototype.toJSON = function () {\r\n var filter = _super.prototype.toJSON.call(this);\r\n filter.operator = this.operator;\r\n filter.itemCount = this.itemCount;\r\n filter.orderBy = this.orderBy;\r\n return filter;\r\n };\r\n TopNFilter.schemaUrl = \"http://powerbi.com/product/schema#topN\";\r\n return TopNFilter;\r\n}(Filter));\r\nexports.TopNFilter = TopNFilter;\r\nvar RelativeDateFilter = /** @class */ (function (_super) {\r\n __extends(RelativeDateFilter, _super);\r\n function RelativeDateFilter(target, operator, timeUnitsCount, timeUnitType, includeToday) {\r\n var _this = _super.call(this, target, FilterType.RelativeDate) || this;\r\n _this.operator = operator;\r\n _this.timeUnitsCount = timeUnitsCount;\r\n _this.timeUnitType = timeUnitType;\r\n _this.includeToday = includeToday;\r\n _this.schemaUrl = RelativeDateFilter.schemaUrl;\r\n return _this;\r\n }\r\n RelativeDateFilter.prototype.toJSON = function () {\r\n var filter = _super.prototype.toJSON.call(this);\r\n filter.operator = this.operator;\r\n filter.timeUnitsCount = this.timeUnitsCount;\r\n filter.timeUnitType = this.timeUnitType;\r\n filter.includeToday = this.includeToday;\r\n return filter;\r\n };\r\n RelativeDateFilter.schemaUrl = \"http://powerbi.com/product/schema#relativeDate\";\r\n return RelativeDateFilter;\r\n}(Filter));\r\nexports.RelativeDateFilter = RelativeDateFilter;\r\nvar RelativeTimeFilter = /** @class */ (function (_super) {\r\n __extends(RelativeTimeFilter, _super);\r\n function RelativeTimeFilter(target, operator, timeUnitsCount, timeUnitType) {\r\n var _this = _super.call(this, target, FilterType.RelativeTime) || this;\r\n _this.operator = operator;\r\n _this.timeUnitsCount = timeUnitsCount;\r\n _this.timeUnitType = timeUnitType;\r\n _this.schemaUrl = RelativeTimeFilter.schemaUrl;\r\n return _this;\r\n }\r\n RelativeTimeFilter.prototype.toJSON = function () {\r\n var filter = _super.prototype.toJSON.call(this);\r\n filter.operator = this.operator;\r\n filter.timeUnitsCount = this.timeUnitsCount;\r\n filter.timeUnitType = this.timeUnitType;\r\n return filter;\r\n };\r\n RelativeTimeFilter.schemaUrl = \"http://powerbi.com/product/schema#relativeTime\";\r\n return RelativeTimeFilter;\r\n}(Filter));\r\nexports.RelativeTimeFilter = RelativeTimeFilter;\r\nvar BasicFilter = /** @class */ (function (_super) {\r\n __extends(BasicFilter, _super);\r\n function BasicFilter(target, operator) {\r\n var values = [];\r\n for (var _i = 2; _i < arguments.length; _i++) {\r\n values[_i - 2] = arguments[_i];\r\n }\r\n var _this = _super.call(this, target, FilterType.Basic) || this;\r\n _this.operator = operator;\r\n _this.schemaUrl = BasicFilter.schemaUrl;\r\n if (values.length === 0 && operator !== \"All\") {\r\n throw new Error(\"values must be a non-empty array unless your operator is \\\"All\\\".\");\r\n }\r\n /**\r\n * Accept values as array instead of as individual arguments\r\n * new BasicFilter('a', 'b', 1, 2);\r\n * new BasicFilter('a', 'b', [1,2]);\r\n */\r\n if (Array.isArray(values[0])) {\r\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\r\n _this.values = values[0];\r\n }\r\n else {\r\n _this.values = values;\r\n }\r\n return _this;\r\n }\r\n BasicFilter.prototype.toJSON = function () {\r\n var filter = _super.prototype.toJSON.call(this);\r\n filter.operator = this.operator;\r\n filter.values = this.values;\r\n filter.requireSingleSelection = !!this.requireSingleSelection;\r\n return filter;\r\n };\r\n BasicFilter.schemaUrl = \"http://powerbi.com/product/schema#basic\";\r\n return BasicFilter;\r\n}(Filter));\r\nexports.BasicFilter = BasicFilter;\r\nvar BasicFilterWithKeys = /** @class */ (function (_super) {\r\n __extends(BasicFilterWithKeys, _super);\r\n function BasicFilterWithKeys(target, operator, values, keyValues) {\r\n var _this = _super.call(this, target, operator, values) || this;\r\n _this.keyValues = keyValues;\r\n _this.target = target;\r\n var numberOfKeys = target.keys ? target.keys.length : 0;\r\n if (numberOfKeys > 0 && !keyValues) {\r\n throw new Error(\"You should pass the values to be filtered for each key. You passed: no values and \".concat(numberOfKeys, \" keys\"));\r\n }\r\n if (numberOfKeys === 0 && keyValues && keyValues.length > 0) {\r\n throw new Error(\"You passed key values but your target object doesn't contain the keys to be filtered\");\r\n }\r\n for (var _i = 0, _a = _this.keyValues; _i < _a.length; _i++) {\r\n var keyValue = _a[_i];\r\n if (keyValue) {\r\n var lengthOfArray = keyValue.length;\r\n if (lengthOfArray !== numberOfKeys) {\r\n throw new Error(\"Each tuple of key values should contain a value for each of the keys. You passed: \".concat(lengthOfArray, \" values and \").concat(numberOfKeys, \" keys\"));\r\n }\r\n }\r\n }\r\n return _this;\r\n }\r\n BasicFilterWithKeys.prototype.toJSON = function () {\r\n var filter = _super.prototype.toJSON.call(this);\r\n filter.keyValues = this.keyValues;\r\n return filter;\r\n };\r\n return BasicFilterWithKeys;\r\n}(BasicFilter));\r\nexports.BasicFilterWithKeys = BasicFilterWithKeys;\r\nvar IdentityFilter = /** @class */ (function (_super) {\r\n __extends(IdentityFilter, _super);\r\n function IdentityFilter(target, operator) {\r\n var _this = _super.call(this, target, FilterType.Identity) || this;\r\n _this.operator = operator;\r\n _this.schemaUrl = IdentityFilter.schemaUrl;\r\n return _this;\r\n }\r\n IdentityFilter.prototype.toJSON = function () {\r\n var filter = _super.prototype.toJSON.call(this);\r\n filter.operator = this.operator;\r\n filter.target = this.target;\r\n return filter;\r\n };\r\n IdentityFilter.schemaUrl = \"http://powerbi.com/product/schema#identity\";\r\n return IdentityFilter;\r\n}(Filter));\r\nexports.IdentityFilter = IdentityFilter;\r\nvar TupleFilter = /** @class */ (function (_super) {\r\n __extends(TupleFilter, _super);\r\n function TupleFilter(target, operator, values) {\r\n var _this = _super.call(this, target, FilterType.Tuple) || this;\r\n _this.operator = operator;\r\n _this.schemaUrl = TupleFilter.schemaUrl;\r\n _this.values = values;\r\n return _this;\r\n }\r\n TupleFilter.prototype.toJSON = function () {\r\n var filter = _super.prototype.toJSON.call(this);\r\n filter.operator = this.operator;\r\n filter.values = this.values;\r\n filter.target = this.target;\r\n return filter;\r\n };\r\n TupleFilter.schemaUrl = \"http://powerbi.com/product/schema#tuple\";\r\n return TupleFilter;\r\n}(Filter));\r\nexports.TupleFilter = TupleFilter;\r\nvar AdvancedFilter = /** @class */ (function (_super) {\r\n __extends(AdvancedFilter, _super);\r\n function AdvancedFilter(target, logicalOperator) {\r\n var conditions = [];\r\n for (var _i = 2; _i < arguments.length; _i++) {\r\n conditions[_i - 2] = arguments[_i];\r\n }\r\n var _this = _super.call(this, target, FilterType.Advanced) || this;\r\n _this.schemaUrl = AdvancedFilter.schemaUrl;\r\n // Guard statements\r\n if (typeof logicalOperator !== \"string\" || logicalOperator.length === 0) {\r\n // TODO: It would be nicer to list out the possible logical operators.\r\n throw new Error(\"logicalOperator must be a valid operator, You passed: \".concat(logicalOperator));\r\n }\r\n _this.logicalOperator = logicalOperator;\r\n var extractedConditions;\r\n /**\r\n * Accept conditions as array instead of as individual arguments\r\n * new AdvancedFilter('a', 'b', \"And\", { value: 1, operator: \"Equals\" }, { value: 2, operator: \"IsGreaterThan\" });\r\n * new AdvancedFilter('a', 'b', \"And\", [{ value: 1, operator: \"Equals\" }, { value: 2, operator: \"IsGreaterThan\" }]);\r\n */\r\n if (Array.isArray(conditions[0])) {\r\n // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion\r\n extractedConditions = conditions[0];\r\n }\r\n else {\r\n extractedConditions = conditions;\r\n }\r\n if (extractedConditions.length > 2) {\r\n throw new Error(\"AdvancedFilters may not have more than two conditions. You passed: \".concat(conditions.length));\r\n }\r\n if (extractedConditions.length === 1 && logicalOperator !== \"And\") {\r\n throw new Error(\"Logical Operator must be \\\"And\\\" when there is only one condition provided\");\r\n }\r\n _this.conditions = extractedConditions;\r\n return _this;\r\n }\r\n AdvancedFilter.prototype.toJSON = function () {\r\n var filter = _super.prototype.toJSON.call(this);\r\n filter.logicalOperator = this.logicalOperator;\r\n filter.conditions = this.conditions;\r\n return filter;\r\n };\r\n AdvancedFilter.schemaUrl = \"http://powerbi.com/product/schema#advanced\";\r\n return AdvancedFilter;\r\n}(Filter));\r\nexports.AdvancedFilter = AdvancedFilter;\r\nvar HierarchyFilter = /** @class */ (function (_super) {\r\n __extends(HierarchyFilter, _super);\r\n function HierarchyFilter(target, hierarchyData) {\r\n var _this = _super.call(this, target, FilterType.Hierarchy) || this;\r\n _this.schemaUrl = HierarchyFilter.schemaUrl;\r\n _this.hierarchyData = hierarchyData;\r\n return _this;\r\n }\r\n HierarchyFilter.prototype.toJSON = function () {\r\n var filter = _super.prototype.toJSON.call(this);\r\n filter.hierarchyData = this.hierarchyData;\r\n filter.target = this.target;\r\n return filter;\r\n };\r\n HierarchyFilter.schemaUrl = \"http://powerbi.com/product/schema#hierarchy\";\r\n return HierarchyFilter;\r\n}(Filter));\r\nexports.HierarchyFilter = HierarchyFilter;\r\nfunction isFilterKeyColumnsTarget(target) {\r\n return isColumn(target) && !!target.keys;\r\n}\r\nexports.isFilterKeyColumnsTarget = isFilterKeyColumnsTarget;\r\nfunction isBasicFilterWithKeys(filter) {\r\n return getFilterType(filter) === FilterType.Basic && !!filter.keyValues;\r\n}\r\nexports.isBasicFilterWithKeys = isBasicFilterWithKeys;\r\nfunction getFilterType(filter) {\r\n if (filter.filterType) {\r\n return filter.filterType;\r\n }\r\n var basicFilter = filter;\r\n var advancedFilter = filter;\r\n if ((typeof basicFilter.operator === \"string\")\r\n && (Array.isArray(basicFilter.values))) {\r\n return FilterType.Basic;\r\n }\r\n else if ((typeof advancedFilter.logicalOperator === \"string\")\r\n && (Array.isArray(advancedFilter.conditions))) {\r\n return FilterType.Advanced;\r\n }\r\n else {\r\n return FilterType.Unknown;\r\n }\r\n}\r\nexports.getFilterType = getFilterType;\r\nfunction isMeasure(arg) {\r\n return arg.table !== undefined && arg.measure !== undefined;\r\n}\r\nexports.isMeasure = isMeasure;\r\nfunction isColumn(arg) {\r\n return !!(arg.table && arg.column && !arg.aggregationFunction);\r\n}\r\nexports.isColumn = isColumn;\r\nfunction isHierarchyLevel(arg) {\r\n return !!(arg.table && arg.hierarchy && arg.hierarchyLevel && !arg.aggregationFunction);\r\n}\r\nexports.isHierarchyLevel = isHierarchyLevel;\r\nfunction isHierarchyLevelAggr(arg) {\r\n return !!(arg.table && arg.hierarchy && arg.hierarchyLevel && arg.aggregationFunction);\r\n}\r\nexports.isHierarchyLevelAggr = isHierarchyLevelAggr;\r\nfunction isColumnAggr(arg) {\r\n return !!(arg.table && arg.column && arg.aggregationFunction);\r\n}\r\nexports.isColumnAggr = isColumnAggr;\r\nfunction isPercentOfGrandTotal(arg) {\r\n return !!arg.percentOfGrandTotal;\r\n}\r\nexports.isPercentOfGrandTotal = isPercentOfGrandTotal;\r\nvar PageNavigationPosition;\r\n(function (PageNavigationPosition) {\r\n PageNavigationPosition[PageNavigationPosition[\"Bottom\"] = 0] = \"Bottom\";\r\n PageNavigationPosition[PageNavigationPosition[\"Left\"] = 1] = \"Left\";\r\n})(PageNavigationPosition = exports.PageNavigationPosition || (exports.PageNavigationPosition = {}));\r\nvar QnaMode;\r\n(function (QnaMode) {\r\n QnaMode[QnaMode[\"Interactive\"] = 0] = \"Interactive\";\r\n QnaMode[QnaMode[\"ResultOnly\"] = 1] = \"ResultOnly\";\r\n})(QnaMode = exports.QnaMode || (exports.QnaMode = {}));\r\nvar ExportDataType;\r\n(function (ExportDataType) {\r\n ExportDataType[ExportDataType[\"Summarized\"] = 0] = \"Summarized\";\r\n ExportDataType[ExportDataType[\"Underlying\"] = 1] = \"Underlying\";\r\n})(ExportDataType = exports.ExportDataType || (exports.ExportDataType = {}));\r\nvar BookmarksPlayMode;\r\n(function (BookmarksPlayMode) {\r\n BookmarksPlayMode[BookmarksPlayMode[\"Off\"] = 0] = \"Off\";\r\n BookmarksPlayMode[BookmarksPlayMode[\"Presentation\"] = 1] = \"Presentation\";\r\n})(BookmarksPlayMode = exports.BookmarksPlayMode || (exports.BookmarksPlayMode = {}));\r\n// This is not an enum because enum strings require\r\n// us to upgrade typeScript version and change SDK build definition\r\nexports.CommonErrorCodes = {\r\n TokenExpired: 'TokenExpired',\r\n NotFound: 'PowerBIEntityNotFound',\r\n InvalidParameters: 'Invalid parameters',\r\n LoadReportFailed: 'LoadReportFailed',\r\n NotAuthorized: 'PowerBINotAuthorizedException',\r\n FailedToLoadModel: 'ExplorationContainer_FailedToLoadModel_DefaultDetails',\r\n};\r\nexports.TextAlignment = {\r\n Left: 'left',\r\n Center: 'center',\r\n Right: 'right',\r\n};\r\nexports.LegendPosition = {\r\n Top: 'Top',\r\n Bottom: 'Bottom',\r\n Right: 'Right',\r\n Left: 'Left',\r\n TopCenter: 'TopCenter',\r\n BottomCenter: 'BottomCenter',\r\n RightCenter: 'RightCenter',\r\n LeftCenter: 'LeftCenter',\r\n};\r\nvar SortDirection;\r\n(function (SortDirection) {\r\n SortDirection[SortDirection[\"Ascending\"] = 1] = \"Ascending\";\r\n SortDirection[SortDirection[\"Descending\"] = 2] = \"Descending\";\r\n})(SortDirection = exports.SortDirection || (exports.SortDirection = {}));\r\nvar Selector = /** @class */ (function () {\r\n function Selector(schema) {\r\n this.$schema = schema;\r\n }\r\n Selector.prototype.toJSON = function () {\r\n return {\r\n $schema: this.$schema\r\n };\r\n };\r\n return Selector;\r\n}());\r\nexports.Selector = Selector;\r\nvar PageSelector = /** @class */ (function (_super) {\r\n __extends(PageSelector, _super);\r\n function PageSelector(pageName) {\r\n var _this = _super.call(this, PageSelector.schemaUrl) || this;\r\n _this.pageName = pageName;\r\n return _this;\r\n }\r\n PageSelector.prototype.toJSON = function () {\r\n var selector = _super.prototype.toJSON.call(this);\r\n selector.pageName = this.pageName;\r\n return selector;\r\n };\r\n PageSelector.schemaUrl = \"http://powerbi.com/product/schema#pageSelector\";\r\n return PageSelector;\r\n}(Selector));\r\nexports.PageSelector = PageSelector;\r\nvar VisualSelector = /** @class */ (function (_super) {\r\n __extends(VisualSelector, _super);\r\n function VisualSelector(visualName) {\r\n var _this = _super.call(this, VisualSelector.schemaUrl) || this;\r\n _this.visualName = visualName;\r\n return _this;\r\n }\r\n VisualSelector.prototype.toJSON = function () {\r\n var selector = _super.prototype.toJSON.call(this);\r\n selector.visualName = this.visualName;\r\n return selector;\r\n };\r\n VisualSelector.schemaUrl = \"http://powerbi.com/product/schema#visualSelector\";\r\n return VisualSelector;\r\n}(Selector));\r\nexports.VisualSelector = VisualSelector;\r\nvar VisualTypeSelector = /** @class */ (function (_super) {\r\n __extends(VisualTypeSelector, _super);\r\n function VisualTypeSelector(visualType) {\r\n var _this = _super.call(this, VisualSelector.schemaUrl) || this;\r\n _this.visualType = visualType;\r\n return _this;\r\n }\r\n VisualTypeSelector.prototype.toJSON = function () {\r\n var selector = _super.prototype.toJSON.call(this);\r\n selector.visualType = this.visualType;\r\n return selector;\r\n };\r\n VisualTypeSelector.schemaUrl = \"http://powerbi.com/product/schema#visualTypeSelector\";\r\n return VisualTypeSelector;\r\n}(Selector));\r\nexports.VisualTypeSelector = VisualTypeSelector;\r\nvar SlicerTargetSelector = /** @class */ (function (_super) {\r\n __extends(SlicerTargetSelector, _super);\r\n function SlicerTargetSelector(target) {\r\n var _this = _super.call(this, VisualSelector.schemaUrl) || this;\r\n _this.target = target;\r\n return _this;\r\n }\r\n SlicerTargetSelector.prototype.toJSON = function () {\r\n var selector = _super.prototype.toJSON.call(this);\r\n selector.target = this.target;\r\n return selector;\r\n };\r\n SlicerTargetSelector.schemaUrl = \"http://powerbi.com/product/schema#slicerTargetSelector\";\r\n return SlicerTargetSelector;\r\n}(Selector));\r\nexports.SlicerTargetSelector = SlicerTargetSelector;\r\nvar CommandDisplayOption;\r\n(function (CommandDisplayOption) {\r\n CommandDisplayOption[CommandDisplayOption[\"Enabled\"] = 0] = \"Enabled\";\r\n CommandDisplayOption[CommandDisplayOption[\"Disabled\"] = 1] = \"Disabled\";\r\n CommandDisplayOption[CommandDisplayOption[\"Hidden\"] = 2] = \"Hidden\";\r\n})(CommandDisplayOption = exports.CommandDisplayOption || (exports.CommandDisplayOption = {}));\r\n/*\r\n * Visual CRUD\r\n */\r\nvar VisualDataRoleKind;\r\n(function (VisualDataRoleKind) {\r\n // Indicates that the role should be bound to something that evaluates to a grouping of values.\r\n VisualDataRoleKind[VisualDataRoleKind[\"Grouping\"] = 0] = \"Grouping\";\r\n // Indicates that the role should be bound to something that evaluates to a single value in a scope.\r\n VisualDataRoleKind[VisualDataRoleKind[\"Measure\"] = 1] = \"Measure\";\r\n // Indicates that the role can be bound to either Grouping or Measure.\r\n VisualDataRoleKind[VisualDataRoleKind[\"GroupingOrMeasure\"] = 2] = \"GroupingOrMeasure\";\r\n})(VisualDataRoleKind = exports.VisualDataRoleKind || (exports.VisualDataRoleKind = {}));\r\n// Indicates the visual preference on Grouping or Measure. Only applicable if kind is GroupingOrMeasure.\r\nvar VisualDataRoleKindPreference;\r\n(function (VisualDataRoleKindPreference) {\r\n VisualDataRoleKindPreference[VisualDataRoleKindPreference[\"Measure\"] = 0] = \"Measure\";\r\n VisualDataRoleKindPreference[VisualDataRoleKindPreference[\"Grouping\"] = 1] = \"Grouping\";\r\n})(VisualDataRoleKindPreference = exports.VisualDataRoleKindPreference || (exports.VisualDataRoleKindPreference = {}));\r\nfunction isOnLoadFilters(filters) {\r\n return filters && !isReportFiltersArray(filters);\r\n}\r\nexports.isOnLoadFilters = isOnLoadFilters;\r\nfunction isReportFiltersArray(filters) {\r\n return Array.isArray(filters);\r\n}\r\nexports.isReportFiltersArray = isReportFiltersArray;\r\nfunction isFlatMenuExtension(menuExtension) {\r\n return menuExtension && !isGroupedMenuExtension(menuExtension);\r\n}\r\nexports.isFlatMenuExtension = isFlatMenuExtension;\r\nfunction isGroupedMenuExtension(menuExtension) {\r\n return menuExtension && !!menuExtension.groupName;\r\n}\r\nexports.isGroupedMenuExtension = isGroupedMenuExtension;\r\nfunction isIExtensions(extensions) {\r\n return extensions && !isIExtensionArray(extensions);\r\n}\r\nexports.isIExtensions = isIExtensions;\r\nfunction isIExtensionArray(extensions) {\r\n return Array.isArray(extensions);\r\n}\r\nexports.isIExtensionArray = isIExtensionArray;\r\nfunction normalizeError(error) {\r\n var message = error.message;\r\n if (!message) {\r\n message = \"\".concat(error.path, \" is invalid. Not meeting \").concat(error.keyword, \" constraint\");\r\n }\r\n return {\r\n message: message\r\n };\r\n}\r\nfunction validateVisualSelector(input) {\r\n var errors = validator_1.Validators.visualSelectorValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateVisualSelector = validateVisualSelector;\r\nfunction validateSlicer(input) {\r\n var errors = validator_1.Validators.slicerValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateSlicer = validateSlicer;\r\nfunction validateSlicerState(input) {\r\n var errors = validator_1.Validators.slicerStateValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateSlicerState = validateSlicerState;\r\nfunction validatePlayBookmarkRequest(input) {\r\n var errors = validator_1.Validators.playBookmarkRequestValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validatePlayBookmarkRequest = validatePlayBookmarkRequest;\r\nfunction validateAddBookmarkRequest(input) {\r\n var errors = validator_1.Validators.addBookmarkRequestValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateAddBookmarkRequest = validateAddBookmarkRequest;\r\nfunction validateApplyBookmarkByNameRequest(input) {\r\n var errors = validator_1.Validators.applyBookmarkByNameRequestValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateApplyBookmarkByNameRequest = validateApplyBookmarkByNameRequest;\r\nfunction validateApplyBookmarkStateRequest(input) {\r\n var errors = validator_1.Validators.applyBookmarkStateRequestValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateApplyBookmarkStateRequest = validateApplyBookmarkStateRequest;\r\nfunction validateCaptureBookmarkRequest(input) {\r\n var errors = validator_1.Validators.captureBookmarkRequestValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateCaptureBookmarkRequest = validateCaptureBookmarkRequest;\r\nfunction validateSettings(input) {\r\n var errors = validator_1.Validators.settingsValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateSettings = validateSettings;\r\nfunction validatePanes(input) {\r\n var errors = validator_1.Validators.reportPanesValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validatePanes = validatePanes;\r\nfunction validateBookmarksPane(input) {\r\n var errors = validator_1.Validators.bookmarksPaneValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateBookmarksPane = validateBookmarksPane;\r\nfunction validateFiltersPane(input) {\r\n var errors = validator_1.Validators.filtersPaneValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateFiltersPane = validateFiltersPane;\r\nfunction validateFieldsPane(input) {\r\n var errors = validator_1.Validators.fieldsPaneValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateFieldsPane = validateFieldsPane;\r\nfunction validatePageNavigationPane(input) {\r\n var errors = validator_1.Validators.pageNavigationPaneValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validatePageNavigationPane = validatePageNavigationPane;\r\nfunction validateSelectionPane(input) {\r\n var errors = validator_1.Validators.selectionPaneValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateSelectionPane = validateSelectionPane;\r\nfunction validateSyncSlicersPane(input) {\r\n var errors = validator_1.Validators.syncSlicersPaneValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateSyncSlicersPane = validateSyncSlicersPane;\r\nfunction validateVisualizationsPane(input) {\r\n var errors = validator_1.Validators.visualizationsPaneValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateVisualizationsPane = validateVisualizationsPane;\r\nfunction validateCustomPageSize(input) {\r\n var errors = validator_1.Validators.customPageSizeValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateCustomPageSize = validateCustomPageSize;\r\nfunction validateExtension(input) {\r\n var errors = validator_1.Validators.extensionValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateExtension = validateExtension;\r\nfunction validateMenuGroupExtension(input) {\r\n var errors = validator_1.Validators.menuGroupExtensionValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateMenuGroupExtension = validateMenuGroupExtension;\r\nfunction validateReportLoad(input) {\r\n var errors = validator_1.Validators.reportLoadValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateReportLoad = validateReportLoad;\r\nfunction validatePaginatedReportLoad(input) {\r\n var errors = validator_1.Validators.paginatedReportLoadValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validatePaginatedReportLoad = validatePaginatedReportLoad;\r\nfunction validateCreateReport(input) {\r\n var errors = validator_1.Validators.reportCreateValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateCreateReport = validateCreateReport;\r\nfunction validateDashboardLoad(input) {\r\n var errors = validator_1.Validators.dashboardLoadValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateDashboardLoad = validateDashboardLoad;\r\nfunction validateTileLoad(input) {\r\n var errors = validator_1.Validators.tileLoadValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateTileLoad = validateTileLoad;\r\nfunction validatePage(input) {\r\n var errors = validator_1.Validators.pageValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validatePage = validatePage;\r\nfunction validateFilter(input) {\r\n var errors = validator_1.Validators.filterValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateFilter = validateFilter;\r\nfunction validateUpdateFiltersRequest(input) {\r\n var errors = validator_1.Validators.updateFiltersRequestValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateUpdateFiltersRequest = validateUpdateFiltersRequest;\r\nfunction validateSaveAsParameters(input) {\r\n var errors = validator_1.Validators.saveAsParametersValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateSaveAsParameters = validateSaveAsParameters;\r\nfunction validateLoadQnaConfiguration(input) {\r\n var errors = validator_1.Validators.loadQnaValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateLoadQnaConfiguration = validateLoadQnaConfiguration;\r\nfunction validateQnaInterpretInputData(input) {\r\n var errors = validator_1.Validators.qnaInterpretInputDataValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateQnaInterpretInputData = validateQnaInterpretInputData;\r\nfunction validateExportDataRequest(input) {\r\n var errors = validator_1.Validators.exportDataRequestValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateExportDataRequest = validateExportDataRequest;\r\nfunction validateVisualHeader(input) {\r\n var errors = validator_1.Validators.visualHeaderValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateVisualHeader = validateVisualHeader;\r\nfunction validateVisualSettings(input) {\r\n var errors = validator_1.Validators.visualSettingsValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateVisualSettings = validateVisualSettings;\r\nfunction validateCommandsSettings(input) {\r\n var errors = validator_1.Validators.commandsSettingsValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateCommandsSettings = validateCommandsSettings;\r\nfunction validateCustomTheme(input) {\r\n var errors = validator_1.Validators.customThemeValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateCustomTheme = validateCustomTheme;\r\nfunction validateZoomLevel(input) {\r\n var errors = validator_1.Validators.zoomLevelValidator.validate(input);\r\n return errors ? errors.map(normalizeError) : undefined;\r\n}\r\nexports.validateZoomLevel = validateZoomLevel;\r\n\n\n/***/ }),\n/* 1 */\n/***/ ((__unused_webpack_module, exports, __webpack_require__) => {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.Validators = void 0;\r\nvar barsValidator_1 = __webpack_require__(2);\r\nvar bookmarkValidator_1 = __webpack_require__(5);\r\nvar commandsSettingsValidator_1 = __webpack_require__(6);\r\nvar customThemeValidator_1 = __webpack_require__(7);\r\nvar dashboardLoadValidator_1 = __webpack_require__(8);\r\nvar datasetBindingValidator_1 = __webpack_require__(9);\r\nvar exportDataValidator_1 = __webpack_require__(10);\r\nvar extensionsValidator_1 = __webpack_require__(11);\r\nvar filtersValidator_1 = __webpack_require__(12);\r\nvar layoutValidator_1 = __webpack_require__(13);\r\nvar pageValidator_1 = __webpack_require__(14);\r\nvar panesValidator_1 = __webpack_require__(15);\r\nvar qnaValidator_1 = __webpack_require__(16);\r\nvar reportCreateValidator_1 = __webpack_require__(17);\r\nvar reportLoadValidator_1 = __webpack_require__(18);\r\nvar paginatedReportLoadValidator_1 = __webpack_require__(19);\r\nvar saveAsParametersValidator_1 = __webpack_require__(20);\r\nvar selectorsValidator_1 = __webpack_require__(21);\r\nvar settingsValidator_1 = __webpack_require__(22);\r\nvar slicersValidator_1 = __webpack_require__(23);\r\nvar tileLoadValidator_1 = __webpack_require__(24);\r\nvar visualSettingsValidator_1 = __webpack_require__(25);\r\nvar anyOfValidator_1 = __webpack_require__(26);\r\nvar fieldForbiddenValidator_1 = __webpack_require__(27);\r\nvar fieldRequiredValidator_1 = __webpack_require__(28);\r\nvar mapValidator_1 = __webpack_require__(29);\r\nvar typeValidator_1 = __webpack_require__(4);\r\nvar parameterPanelValidator_1 = __webpack_require__(30);\r\nexports.Validators = {\r\n addBookmarkRequestValidator: new bookmarkValidator_1.AddBookmarkRequestValidator(),\r\n advancedFilterTypeValidator: new typeValidator_1.EnumValidator([0]),\r\n advancedFilterValidator: new filtersValidator_1.AdvancedFilterValidator(),\r\n anyArrayValidator: new typeValidator_1.ArrayValidator([new anyOfValidator_1.AnyOfValidator([new typeValidator_1.StringValidator(), new typeValidator_1.NumberValidator(), new typeValidator_1.BooleanValidator()])]),\r\n anyFilterValidator: new anyOfValidator_1.AnyOfValidator([new filtersValidator_1.BasicFilterValidator(), new filtersValidator_1.AdvancedFilterValidator(), new filtersValidator_1.IncludeExcludeFilterValidator(), new filtersValidator_1.NotSupportedFilterValidator(), new filtersValidator_1.RelativeDateFilterValidator(), new filtersValidator_1.TopNFilterValidator(), new filtersValidator_1.RelativeTimeFilterValidator(), new filtersValidator_1.HierarchyFilterValidator()]),\r\n anyValueValidator: new anyOfValidator_1.AnyOfValidator([new typeValidator_1.StringValidator(), new typeValidator_1.NumberValidator(), new typeValidator_1.BooleanValidator()]),\r\n actionBarValidator: new barsValidator_1.ActionBarValidator(),\r\n applyBookmarkByNameRequestValidator: new bookmarkValidator_1.ApplyBookmarkByNameRequestValidator(),\r\n applyBookmarkStateRequestValidator: new bookmarkValidator_1.ApplyBookmarkStateRequestValidator(),\r\n applyBookmarkValidator: new anyOfValidator_1.AnyOfValidator([new bookmarkValidator_1.ApplyBookmarkByNameRequestValidator(), new bookmarkValidator_1.ApplyBookmarkStateRequestValidator()]),\r\n backgroundValidator: new typeValidator_1.EnumValidator([0, 1]),\r\n basicFilterTypeValidator: new typeValidator_1.EnumValidator([1]),\r\n basicFilterValidator: new filtersValidator_1.BasicFilterValidator(),\r\n booleanArrayValidator: new typeValidator_1.BooleanArrayValidator(),\r\n booleanValidator: new typeValidator_1.BooleanValidator(),\r\n bookmarksPaneValidator: new panesValidator_1.BookmarksPaneValidator(),\r\n captureBookmarkOptionsValidator: new bookmarkValidator_1.CaptureBookmarkOptionsValidator(),\r\n captureBookmarkRequestValidator: new bookmarkValidator_1.CaptureBookmarkRequestValidator(),\r\n commandDisplayOptionValidator: new typeValidator_1.EnumValidator([0, 1, 2]),\r\n commandExtensionSelectorValidator: new anyOfValidator_1.AnyOfValidator([new selectorsValidator_1.VisualSelectorValidator(), new selectorsValidator_1.VisualTypeSelectorValidator()]),\r\n commandExtensionArrayValidator: new typeValidator_1.ArrayValidator([new extensionsValidator_1.CommandExtensionValidator()]),\r\n commandExtensionValidator: new extensionsValidator_1.CommandExtensionValidator(),\r\n commandsSettingsArrayValidator: new typeValidator_1.ArrayValidator([new commandsSettingsValidator_1.CommandsSettingsValidator()]),\r\n commandsSettingsValidator: new commandsSettingsValidator_1.CommandsSettingsValidator(),\r\n conditionItemValidator: new filtersValidator_1.ConditionItemValidator(),\r\n contrastModeValidator: new typeValidator_1.EnumValidator([0, 1, 2, 3, 4]),\r\n customLayoutDisplayOptionValidator: new typeValidator_1.EnumValidator([0, 1, 2]),\r\n customLayoutValidator: new layoutValidator_1.CustomLayoutValidator(),\r\n customPageSizeValidator: new pageValidator_1.CustomPageSizeValidator(),\r\n customThemeValidator: new customThemeValidator_1.CustomThemeValidator(),\r\n dashboardLoadValidator: new dashboardLoadValidator_1.DashboardLoadValidator(),\r\n datasetBindingValidator: new datasetBindingValidator_1.DatasetBindingValidator(),\r\n displayStateModeValidator: new typeValidator_1.EnumValidator([0, 1]),\r\n displayStateValidator: new layoutValidator_1.DisplayStateValidator(),\r\n exportDataRequestValidator: new exportDataValidator_1.ExportDataRequestValidator(),\r\n extensionArrayValidator: new typeValidator_1.ArrayValidator([new extensionsValidator_1.ExtensionValidator()]),\r\n extensionsValidator: new anyOfValidator_1.AnyOfValidator([new typeValidator_1.ArrayValidator([new extensionsValidator_1.ExtensionValidator()]), new extensionsValidator_1.ExtensionsValidator()]),\r\n extensionPointsValidator: new extensionsValidator_1.ExtensionPointsValidator(),\r\n extensionValidator: new extensionsValidator_1.ExtensionValidator(),\r\n fieldForbiddenValidator: new fieldForbiddenValidator_1.FieldForbiddenValidator(),\r\n fieldRequiredValidator: new fieldRequiredValidator_1.FieldRequiredValidator(),\r\n fieldsPaneValidator: new panesValidator_1.FieldsPaneValidator(),\r\n filterColumnTargetValidator: new filtersValidator_1.FilterColumnTargetValidator(),\r\n filterDisplaySettingsValidator: new filtersValidator_1.FilterDisplaySettingsValidator(),\r\n filterConditionsValidator: new typeValidator_1.ArrayValidator([new filtersValidator_1.ConditionItemValidator()]),\r\n filterHierarchyTargetValidator: new filtersValidator_1.FilterHierarchyTargetValidator(),\r\n filterMeasureTargetValidator: new filtersValidator_1.FilterMeasureTargetValidator(),\r\n filterTargetValidator: new anyOfValidator_1.AnyOfValidator([new filtersValidator_1.FilterColumnTargetValidator(), new filtersValidator_1.FilterHierarchyTargetValidator(), new filtersValidator_1.FilterMeasureTargetValidator(), new typeValidator_1.ArrayValidator([new anyOfValidator_1.AnyOfValidator([new filtersValidator_1.FilterColumnTargetValidator(), new filtersValidator_1.FilterHierarchyTargetValidator(), new filtersValidator_1.FilterMeasureTargetValidator(), new filtersValidator_1.FilterKeyColumnsTargetValidator(), new filtersValidator_1.FilterKeyHierarchyTargetValidator()])])]),\r\n filterValidator: new filtersValidator_1.FilterValidator(),\r\n filterTypeValidator: new typeValidator_1.EnumValidator([0, 1, 2, 3, 4, 5, 6, 7, 9]),\r\n filtersArrayValidator: new typeValidator_1.ArrayValidator([new filtersValidator_1.FilterValidator()]),\r\n filtersOperationsUpdateValidator: new typeValidator_1.EnumValidator([1, 2, 3]),\r\n filtersOperationsRemoveAllValidator: new typeValidator_1.EnumValidator([0]),\r\n filtersPaneValidator: new panesValidator_1.FiltersPaneValidator(),\r\n hyperlinkClickBehaviorValidator: new typeValidator_1.EnumValidator([0, 1, 2]),\r\n includeExcludeFilterValidator: new filtersValidator_1.IncludeExcludeFilterValidator(),\r\n includeExludeFilterTypeValidator: new typeValidator_1.EnumValidator([3]),\r\n hierarchyFilterTypeValidator: new typeValidator_1.EnumValidator([9]),\r\n hierarchyFilterValuesValidator: new typeValidator_1.ArrayValidator([new filtersValidator_1.HierarchyFilterNodeValidator()]),\r\n layoutTypeValidator: new typeValidator_1.EnumValidator([0, 1, 2, 3]),\r\n loadQnaValidator: new qnaValidator_1.LoadQnaValidator(),\r\n menuExtensionValidator: new anyOfValidator_1.AnyOfValidator([new extensionsValidator_1.FlatMenuExtensionValidator(), new extensionsValidator_1.GroupedMenuExtensionValidator()]),\r\n menuGroupExtensionArrayValidator: new typeValidator_1.ArrayValidator([new extensionsValidator_1.MenuGroupExtensionValidator()]),\r\n menuGroupExtensionValidator: new extensionsValidator_1.MenuGroupExtensionValidator(),\r\n menuLocationValidator: new typeValidator_1.EnumValidator([0, 1]),\r\n notSupportedFilterTypeValidator: new typeValidator_1.EnumValidator([2]),\r\n notSupportedFilterValidator: new filtersValidator_1.NotSupportedFilterValidator(),\r\n numberArrayValidator: new typeValidator_1.NumberArrayValidator(),\r\n numberValidator: new typeValidator_1.NumberValidator(),\r\n onLoadFiltersBaseValidator: new anyOfValidator_1.AnyOfValidator([new filtersValidator_1.OnLoadFiltersBaseValidator(), new filtersValidator_1.OnLoadFiltersBaseRemoveOperationValidator()]),\r\n pageLayoutValidator: new mapValidator_1.MapValidator([new typeValidator_1.StringValidator()], [new layoutValidator_1.VisualLayoutValidator()]),\r\n pageNavigationPaneValidator: new panesValidator_1.PageNavigationPaneValidator(),\r\n pageNavigationPositionValidator: new typeValidator_1.EnumValidator([0, 1]),\r\n pageSizeTypeValidator: new typeValidator_1.EnumValidator([0, 1, 2, 3, 4, 5]),\r\n pageSizeValidator: new pageValidator_1.PageSizeValidator(),\r\n pageValidator: new pageValidator_1.PageValidator(),\r\n pageViewFieldValidator: new pageValidator_1.PageViewFieldValidator(),\r\n pagesLayoutValidator: new mapValidator_1.MapValidator([new typeValidator_1.StringValidator()], [new layoutValidator_1.PageLayoutValidator()]),\r\n paginatedReportCommandsValidator: new commandsSettingsValidator_1.PaginatedReportCommandsValidator(),\r\n paginatedReportLoadValidator: new paginatedReportLoadValidator_1.PaginatedReportLoadValidator(),\r\n paginatedReportsettingsValidator: new settingsValidator_1.PaginatedReportSettingsValidator(),\r\n parameterValuesArrayValidator: new typeValidator_1.ArrayValidator([new paginatedReportLoadValidator_1.ReportParameterFieldsValidator()]),\r\n parametersPanelValidator: new parameterPanelValidator_1.ParametersPanelValidator(),\r\n permissionsValidator: new typeValidator_1.EnumValidator([0, 1, 2, 4, 7]),\r\n playBookmarkRequestValidator: new bookmarkValidator_1.PlayBookmarkRequestValidator(),\r\n qnaInterpretInputDataValidator: new qnaValidator_1.QnaInterpretInputDataValidator(),\r\n qnaPanesValidator: new panesValidator_1.QnaPanesValidator(),\r\n qnaSettingValidator: new qnaValidator_1.QnaSettingsValidator(),\r\n relativeDateFilterOperatorValidator: new typeValidator_1.EnumValidator([0, 1, 2]),\r\n relativeDateFilterTimeUnitTypeValidator: new typeValidator_1.EnumValidator([0, 1, 2, 3, 4, 5, 6]),\r\n relativeDateFilterTypeValidator: new typeValidator_1.EnumValidator([4]),\r\n relativeDateFilterValidator: new filtersValidator_1.RelativeDateFilterValidator(),\r\n relativeDateTimeFilterTypeValidator: new typeValidator_1.EnumValidator([4, 7]),\r\n relativeDateTimeFilterUnitTypeValidator: new typeValidator_1.EnumValidator([0, 1, 2, 3, 4, 5, 6, 7, 8]),\r\n relativeTimeFilterTimeUnitTypeValidator: new typeValidator_1.EnumValidator([7, 8]),\r\n relativeTimeFilterTypeValidator: new typeValidator_1.EnumValidator([7]),\r\n relativeTimeFilterValidator: new filtersValidator_1.RelativeTimeFilterValidator(),\r\n reportBarsValidator: new barsValidator_1.ReportBarsValidator(),\r\n reportCreateValidator: new reportCreateValidator_1.ReportCreateValidator(),\r\n reportLoadFiltersValidator: new anyOfValidator_1.AnyOfValidator([new typeValidator_1.ArrayValidator([new filtersValidator_1.FilterValidator()]), new filtersValidator_1.OnLoadFiltersValidator()]),\r\n reportLoadValidator: new reportLoadValidator_1.ReportLoadValidator(),\r\n reportPanesValidator: new panesValidator_1.ReportPanesValidator(),\r\n saveAsParametersValidator: new saveAsParametersValidator_1.SaveAsParametersValidator(),\r\n selectionPaneValidator: new panesValidator_1.SelectionPaneValidator(),\r\n settingsValidator: new settingsValidator_1.SettingsValidator(),\r\n singleCommandSettingsValidator: new commandsSettingsValidator_1.SingleCommandSettingsValidator(),\r\n slicerSelectorValidator: new anyOfValidator_1.AnyOfValidator([new selectorsValidator_1.VisualSelectorValidator(), new selectorsValidator_1.SlicerTargetSelectorValidator()]),\r\n slicerStateValidator: new slicersValidator_1.SlicerStateValidator(),\r\n slicerTargetValidator: new anyOfValidator_1.AnyOfValidator([new filtersValidator_1.FilterColumnTargetValidator(), new filtersValidator_1.FilterHierarchyTargetValidator(), new filtersValidator_1.FilterMeasureTargetValidator(), new filtersValidator_1.FilterKeyColumnsTargetValidator(), new filtersValidator_1.FilterKeyHierarchyTargetValidator()]),\r\n slicerValidator: new slicersValidator_1.SlicerValidator(),\r\n stringArrayValidator: new typeValidator_1.StringArrayValidator(),\r\n stringValidator: new typeValidator_1.StringValidator(),\r\n syncSlicersPaneValidator: new panesValidator_1.SyncSlicersPaneValidator(),\r\n tileLoadValidator: new tileLoadValidator_1.TileLoadValidator(),\r\n tokenTypeValidator: new typeValidator_1.EnumValidator([0, 1]),\r\n topNFilterTypeValidator: new typeValidator_1.EnumValidator([5]),\r\n topNFilterValidator: new filtersValidator_1.TopNFilterValidator(),\r\n updateFiltersRequestValidator: new anyOfValidator_1.AnyOfValidator([new filtersValidator_1.UpdateFiltersRequestValidator(), new filtersValidator_1.RemoveFiltersRequestValidator()]),\r\n viewModeValidator: new typeValidator_1.EnumValidator([0, 1]),\r\n visualCommandSelectorValidator: new anyOfValidator_1.AnyOfValidator([new selectorsValidator_1.VisualSelectorValidator(), new selectorsValidator_1.VisualTypeSelectorValidator()]),\r\n visualHeaderSelectorValidator: new anyOfValidator_1.AnyOfValidator([new selectorsValidator_1.VisualSelectorValidator(), new selectorsValidator_1.VisualTypeSelectorValidator()]),\r\n visualHeaderSettingsValidator: new visualSettingsValidator_1.VisualHeaderSettingsValidator(),\r\n visualHeaderValidator: new visualSettingsValidator_1.VisualHeaderValidator(),\r\n visualHeadersValidator: new typeValidator_1.ArrayValidator([new visualSettingsValidator_1.VisualHeaderValidator()]),\r\n visualizationsPaneValidator: new panesValidator_1.VisualizationsPaneValidator(),\r\n visualLayoutValidator: new layoutValidator_1.VisualLayoutValidator(),\r\n visualSelectorValidator: new selectorsValidator_1.VisualSelectorValidator(),\r\n visualSettingsValidator: new visualSettingsValidator_1.VisualSettingsValidator(),\r\n visualTypeSelectorValidator: new selectorsValidator_1.VisualTypeSelectorValidator(),\r\n zoomLevelValidator: new typeValidator_1.RangeValidator(0.25, 4),\r\n};\r\n\n\n/***/ }),\n/* 2 */\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.ActionBarValidator = exports.ReportBarsValidator = void 0;\r\nvar multipleFieldsValidator_1 = __webpack_require__(3);\r\nvar typeValidator_1 = __webpack_require__(4);\r\nvar validator_1 = __webpack_require__(1);\r\nvar ReportBarsValidator = /** @class */ (function (_super) {\r\n __extends(ReportBarsValidator, _super);\r\n function ReportBarsValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n ReportBarsValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"actionBar\",\r\n validators: [validator_1.Validators.actionBarValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return ReportBarsValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.ReportBarsValidator = ReportBarsValidator;\r\nvar ActionBarValidator = /** @class */ (function (_super) {\r\n __extends(ActionBarValidator, _super);\r\n function ActionBarValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n ActionBarValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"visible\",\r\n validators: [validator_1.Validators.booleanValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return ActionBarValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.ActionBarValidator = ActionBarValidator;\r\n\n\n/***/ }),\n/* 3 */\n/***/ ((__unused_webpack_module, exports) => {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.MultipleFieldsValidator = void 0;\r\nvar MultipleFieldsValidator = /** @class */ (function () {\r\n function MultipleFieldsValidator(fieldValidatorsPairs) {\r\n this.fieldValidatorsPairs = fieldValidatorsPairs;\r\n }\r\n MultipleFieldsValidator.prototype.validate = function (input, path, field) {\r\n if (!this.fieldValidatorsPairs) {\r\n return null;\r\n }\r\n var fieldsPath = path ? path + \".\" + field : field;\r\n for (var _i = 0, _a = this.fieldValidatorsPairs; _i < _a.length; _i++) {\r\n var fieldValidators = _a[_i];\r\n for (var _b = 0, _c = fieldValidators.validators; _b < _c.length; _b++) {\r\n var validator = _c[_b];\r\n var errors = validator.validate(input[fieldValidators.field], fieldsPath, fieldValidators.field);\r\n if (errors) {\r\n return errors;\r\n }\r\n }\r\n }\r\n return null;\r\n };\r\n return MultipleFieldsValidator;\r\n}());\r\nexports.MultipleFieldsValidator = MultipleFieldsValidator;\r\n\n\n/***/ }),\n/* 4 */\n/***/ (function(__unused_webpack_module, exports) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.RangeValidator = exports.NumberArrayValidator = exports.BooleanArrayValidator = exports.StringArrayValidator = exports.EnumValidator = exports.SchemaValidator = exports.ValueValidator = exports.NumberValidator = exports.BooleanValidator = exports.StringValidator = exports.TypeValidator = exports.ArrayValidator = exports.ObjectValidator = void 0;\r\nvar ObjectValidator = /** @class */ (function () {\r\n function ObjectValidator() {\r\n }\r\n ObjectValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n if (typeof input !== \"object\" || Array.isArray(input)) {\r\n return [{\r\n message: field !== undefined ? field + \" must be an object\" : \"input must be an object\",\r\n path: path,\r\n keyword: \"type\"\r\n }];\r\n }\r\n return null;\r\n };\r\n return ObjectValidator;\r\n}());\r\nexports.ObjectValidator = ObjectValidator;\r\nvar ArrayValidator = /** @class */ (function () {\r\n function ArrayValidator(itemValidators) {\r\n this.itemValidators = itemValidators;\r\n }\r\n ArrayValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n if (!(Array.isArray(input))) {\r\n return [{\r\n message: field + \" property is invalid\",\r\n path: (path ? path + \".\" : \"\") + field,\r\n keyword: \"type\"\r\n }];\r\n }\r\n for (var i = 0; i < input.length; i++) {\r\n var fieldsPath = (path ? path + \".\" : \"\") + field + \".\" + i.toString();\r\n for (var _i = 0, _a = this.itemValidators; _i < _a.length; _i++) {\r\n var validator = _a[_i];\r\n var errors = validator.validate(input[i], fieldsPath, field);\r\n if (errors) {\r\n return [{\r\n message: field + \" property is invalid\",\r\n path: (path ? path + \".\" : \"\") + field,\r\n keyword: \"type\"\r\n }];\r\n }\r\n }\r\n }\r\n return null;\r\n };\r\n return ArrayValidator;\r\n}());\r\nexports.ArrayValidator = ArrayValidator;\r\nvar TypeValidator = /** @class */ (function () {\r\n function TypeValidator(expectedType) {\r\n this.expectedType = expectedType;\r\n }\r\n TypeValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n if (!(typeof input === this.expectedType)) {\r\n return [{\r\n message: field + \" must be a \" + this.expectedType,\r\n path: (path ? path + \".\" : \"\") + field,\r\n keyword: \"type\"\r\n }];\r\n }\r\n return null;\r\n };\r\n return TypeValidator;\r\n}());\r\nexports.TypeValidator = TypeValidator;\r\nvar StringValidator = /** @class */ (function (_super) {\r\n __extends(StringValidator, _super);\r\n function StringValidator() {\r\n return _super.call(this, \"string\") || this;\r\n }\r\n return StringValidator;\r\n}(TypeValidator));\r\nexports.StringValidator = StringValidator;\r\nvar BooleanValidator = /** @class */ (function (_super) {\r\n __extends(BooleanValidator, _super);\r\n function BooleanValidator() {\r\n return _super.call(this, \"boolean\") || this;\r\n }\r\n return BooleanValidator;\r\n}(TypeValidator));\r\nexports.BooleanValidator = BooleanValidator;\r\nvar NumberValidator = /** @class */ (function (_super) {\r\n __extends(NumberValidator, _super);\r\n function NumberValidator() {\r\n return _super.call(this, \"number\") || this;\r\n }\r\n return NumberValidator;\r\n}(TypeValidator));\r\nexports.NumberValidator = NumberValidator;\r\nvar ValueValidator = /** @class */ (function () {\r\n function ValueValidator(possibleValues) {\r\n this.possibleValues = possibleValues;\r\n }\r\n ValueValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n if (this.possibleValues.indexOf(input) < 0) {\r\n return [{\r\n message: field + \" property is invalid\",\r\n path: (path ? path + \".\" : \"\") + field,\r\n keyword: \"invalid\"\r\n }];\r\n }\r\n return null;\r\n };\r\n return ValueValidator;\r\n}());\r\nexports.ValueValidator = ValueValidator;\r\nvar SchemaValidator = /** @class */ (function (_super) {\r\n __extends(SchemaValidator, _super);\r\n function SchemaValidator(schemaValue) {\r\n var _this = _super.call(this, [schemaValue]) || this;\r\n _this.schemaValue = schemaValue;\r\n return _this;\r\n }\r\n SchemaValidator.prototype.validate = function (input, path, field) {\r\n return _super.prototype.validate.call(this, input, path, field);\r\n };\r\n return SchemaValidator;\r\n}(ValueValidator));\r\nexports.SchemaValidator = SchemaValidator;\r\nvar EnumValidator = /** @class */ (function (_super) {\r\n __extends(EnumValidator, _super);\r\n function EnumValidator(possibleValues) {\r\n var _this = _super.call(this) || this;\r\n _this.possibleValues = possibleValues;\r\n return _this;\r\n }\r\n EnumValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var valueValidator = new ValueValidator(this.possibleValues);\r\n return valueValidator.validate(input, path, field);\r\n };\r\n return EnumValidator;\r\n}(NumberValidator));\r\nexports.EnumValidator = EnumValidator;\r\nvar StringArrayValidator = /** @class */ (function (_super) {\r\n __extends(StringArrayValidator, _super);\r\n function StringArrayValidator() {\r\n return _super.call(this, [new StringValidator()]) || this;\r\n }\r\n StringArrayValidator.prototype.validate = function (input, path, field) {\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return [{\r\n message: field + \" must be an array of strings\",\r\n path: (path ? path + \".\" : \"\") + field,\r\n keyword: \"type\"\r\n }];\r\n }\r\n return null;\r\n };\r\n return StringArrayValidator;\r\n}(ArrayValidator));\r\nexports.StringArrayValidator = StringArrayValidator;\r\nvar BooleanArrayValidator = /** @class */ (function (_super) {\r\n __extends(BooleanArrayValidator, _super);\r\n function BooleanArrayValidator() {\r\n return _super.call(this, [new BooleanValidator()]) || this;\r\n }\r\n BooleanArrayValidator.prototype.validate = function (input, path, field) {\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return [{\r\n message: field + \" must be an array of booleans\",\r\n path: (path ? path + \".\" : \"\") + field,\r\n keyword: \"type\"\r\n }];\r\n }\r\n return null;\r\n };\r\n return BooleanArrayValidator;\r\n}(ArrayValidator));\r\nexports.BooleanArrayValidator = BooleanArrayValidator;\r\nvar NumberArrayValidator = /** @class */ (function (_super) {\r\n __extends(NumberArrayValidator, _super);\r\n function NumberArrayValidator() {\r\n return _super.call(this, [new NumberValidator()]) || this;\r\n }\r\n NumberArrayValidator.prototype.validate = function (input, path, field) {\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return [{\r\n message: field + \" must be an array of numbers\",\r\n path: (path ? path + \".\" : \"\") + field,\r\n keyword: \"type\"\r\n }];\r\n }\r\n return null;\r\n };\r\n return NumberArrayValidator;\r\n}(ArrayValidator));\r\nexports.NumberArrayValidator = NumberArrayValidator;\r\nvar RangeValidator = /** @class */ (function (_super) {\r\n __extends(RangeValidator, _super);\r\n function RangeValidator(minValue, maxValue) {\r\n var _this = _super.call(this) || this;\r\n _this.minValue = minValue;\r\n _this.maxValue = maxValue;\r\n return _this;\r\n }\r\n RangeValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n // input is a number, now check if it's in the given range\r\n if (input > this.maxValue || input < this.minValue) {\r\n return [{\r\n message: field + \" must be a number between \" + this.minValue.toString() + \" and \" + this.maxValue.toString(),\r\n path: (path ? path + \".\" : \"\") + field,\r\n keyword: \"range\"\r\n }];\r\n }\r\n return null;\r\n };\r\n return RangeValidator;\r\n}(NumberValidator));\r\nexports.RangeValidator = RangeValidator;\r\n\n\n/***/ }),\n/* 5 */\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.CaptureBookmarkRequestValidator = exports.CaptureBookmarkOptionsValidator = exports.ApplyBookmarkStateRequestValidator = exports.ApplyBookmarkByNameRequestValidator = exports.AddBookmarkRequestValidator = exports.PlayBookmarkRequestValidator = void 0;\r\nvar multipleFieldsValidator_1 = __webpack_require__(3);\r\nvar typeValidator_1 = __webpack_require__(4);\r\nvar validator_1 = __webpack_require__(1);\r\nvar PlayBookmarkRequestValidator = /** @class */ (function (_super) {\r\n __extends(PlayBookmarkRequestValidator, _super);\r\n function PlayBookmarkRequestValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n PlayBookmarkRequestValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"playMode\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, new typeValidator_1.EnumValidator([0, 1])]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return PlayBookmarkRequestValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.PlayBookmarkRequestValidator = PlayBookmarkRequestValidator;\r\nvar AddBookmarkRequestValidator = /** @class */ (function (_super) {\r\n __extends(AddBookmarkRequestValidator, _super);\r\n function AddBookmarkRequestValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n AddBookmarkRequestValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"state\",\r\n validators: [validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"displayName\",\r\n validators: [validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"apply\",\r\n validators: [validator_1.Validators.booleanValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return AddBookmarkRequestValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.AddBookmarkRequestValidator = AddBookmarkRequestValidator;\r\nvar ApplyBookmarkByNameRequestValidator = /** @class */ (function (_super) {\r\n __extends(ApplyBookmarkByNameRequestValidator, _super);\r\n function ApplyBookmarkByNameRequestValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n ApplyBookmarkByNameRequestValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"name\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return ApplyBookmarkByNameRequestValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.ApplyBookmarkByNameRequestValidator = ApplyBookmarkByNameRequestValidator;\r\nvar ApplyBookmarkStateRequestValidator = /** @class */ (function (_super) {\r\n __extends(ApplyBookmarkStateRequestValidator, _super);\r\n function ApplyBookmarkStateRequestValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n ApplyBookmarkStateRequestValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"state\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return ApplyBookmarkStateRequestValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.ApplyBookmarkStateRequestValidator = ApplyBookmarkStateRequestValidator;\r\nvar CaptureBookmarkOptionsValidator = /** @class */ (function (_super) {\r\n __extends(CaptureBookmarkOptionsValidator, _super);\r\n function CaptureBookmarkOptionsValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n CaptureBookmarkOptionsValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"personalizeVisuals\",\r\n validators: [validator_1.Validators.booleanValidator]\r\n },\r\n {\r\n field: \"allPages\",\r\n validators: [validator_1.Validators.booleanValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return CaptureBookmarkOptionsValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.CaptureBookmarkOptionsValidator = CaptureBookmarkOptionsValidator;\r\nvar CaptureBookmarkRequestValidator = /** @class */ (function (_super) {\r\n __extends(CaptureBookmarkRequestValidator, _super);\r\n function CaptureBookmarkRequestValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n CaptureBookmarkRequestValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"options\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.captureBookmarkOptionsValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return CaptureBookmarkRequestValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.CaptureBookmarkRequestValidator = CaptureBookmarkRequestValidator;\r\n\n\n/***/ }),\n/* 6 */\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.PaginatedReportCommandsValidator = exports.SingleCommandSettingsValidator = exports.CommandsSettingsValidator = void 0;\r\nvar multipleFieldsValidator_1 = __webpack_require__(3);\r\nvar typeValidator_1 = __webpack_require__(4);\r\nvar validator_1 = __webpack_require__(1);\r\nvar CommandsSettingsValidator = /** @class */ (function (_super) {\r\n __extends(CommandsSettingsValidator, _super);\r\n function CommandsSettingsValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n CommandsSettingsValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"copy\",\r\n validators: [validator_1.Validators.singleCommandSettingsValidator]\r\n },\r\n {\r\n field: \"drill\",\r\n validators: [validator_1.Validators.singleCommandSettingsValidator]\r\n },\r\n {\r\n field: \"drillthrough\",\r\n validators: [validator_1.Validators.singleCommandSettingsValidator]\r\n },\r\n {\r\n field: \"expandCollapse\",\r\n validators: [validator_1.Validators.singleCommandSettingsValidator]\r\n },\r\n {\r\n field: \"exportData\",\r\n validators: [validator_1.Validators.singleCommandSettingsValidator]\r\n },\r\n {\r\n field: \"includeExclude\",\r\n validators: [validator_1.Validators.singleCommandSettingsValidator]\r\n },\r\n {\r\n field: \"removeVisual\",\r\n validators: [validator_1.Validators.singleCommandSettingsValidator]\r\n },\r\n {\r\n field: \"search\",\r\n validators: [validator_1.Validators.singleCommandSettingsValidator]\r\n },\r\n {\r\n field: \"seeData\",\r\n validators: [validator_1.Validators.singleCommandSettingsValidator]\r\n },\r\n {\r\n field: \"sort\",\r\n validators: [validator_1.Validators.singleCommandSettingsValidator]\r\n },\r\n {\r\n field: \"spotlight\",\r\n validators: [validator_1.Validators.singleCommandSettingsValidator]\r\n },\r\n {\r\n field: \"insightsAnalysis\",\r\n validators: [validator_1.Validators.singleCommandSettingsValidator]\r\n },\r\n {\r\n field: \"addComment\",\r\n validators: [validator_1.Validators.singleCommandSettingsValidator]\r\n },\r\n {\r\n field: \"groupVisualContainers\",\r\n validators: [validator_1.Validators.singleCommandSettingsValidator]\r\n },\r\n {\r\n field: \"summarize\",\r\n validators: [validator_1.Validators.singleCommandSettingsValidator]\r\n },\r\n {\r\n field: \"clearSelection\",\r\n validators: [validator_1.Validators.singleCommandSettingsValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return CommandsSettingsValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.CommandsSettingsValidator = CommandsSettingsValidator;\r\nvar SingleCommandSettingsValidator = /** @class */ (function (_super) {\r\n __extends(SingleCommandSettingsValidator, _super);\r\n function SingleCommandSettingsValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n SingleCommandSettingsValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"displayOption\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.commandDisplayOptionValidator]\r\n },\r\n {\r\n field: \"selector\",\r\n validators: [validator_1.Validators.visualCommandSelectorValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return SingleCommandSettingsValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.SingleCommandSettingsValidator = SingleCommandSettingsValidator;\r\nvar PaginatedReportCommandsValidator = /** @class */ (function (_super) {\r\n __extends(PaginatedReportCommandsValidator, _super);\r\n function PaginatedReportCommandsValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n PaginatedReportCommandsValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"parameterPanel\",\r\n validators: [validator_1.Validators.parametersPanelValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return PaginatedReportCommandsValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.PaginatedReportCommandsValidator = PaginatedReportCommandsValidator;\r\n\n\n/***/ }),\n/* 7 */\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.CustomThemeValidator = void 0;\r\nvar multipleFieldsValidator_1 = __webpack_require__(3);\r\nvar typeValidator_1 = __webpack_require__(4);\r\nvar CustomThemeValidator = /** @class */ (function (_super) {\r\n __extends(CustomThemeValidator, _super);\r\n function CustomThemeValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n CustomThemeValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"themeJson\",\r\n validators: [new typeValidator_1.ObjectValidator()]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return CustomThemeValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.CustomThemeValidator = CustomThemeValidator;\r\n\n\n/***/ }),\n/* 8 */\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.DashboardLoadValidator = void 0;\r\nvar multipleFieldsValidator_1 = __webpack_require__(3);\r\nvar typeValidator_1 = __webpack_require__(4);\r\nvar validator_1 = __webpack_require__(1);\r\nvar DashboardLoadValidator = /** @class */ (function (_super) {\r\n __extends(DashboardLoadValidator, _super);\r\n function DashboardLoadValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n DashboardLoadValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"accessToken\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"id\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"groupId\",\r\n validators: [validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"pageView\",\r\n validators: [validator_1.Validators.pageViewFieldValidator]\r\n },\r\n {\r\n field: \"tokenType\",\r\n validators: [validator_1.Validators.tokenTypeValidator]\r\n },\r\n {\r\n field: \"embedUrl\",\r\n validators: [validator_1.Validators.stringValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return DashboardLoadValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.DashboardLoadValidator = DashboardLoadValidator;\r\n\n\n/***/ }),\n/* 9 */\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.DatasetBindingValidator = void 0;\r\nvar multipleFieldsValidator_1 = __webpack_require__(3);\r\nvar typeValidator_1 = __webpack_require__(4);\r\nvar validator_1 = __webpack_require__(1);\r\nvar DatasetBindingValidator = /** @class */ (function (_super) {\r\n __extends(DatasetBindingValidator, _super);\r\n function DatasetBindingValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n DatasetBindingValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"datasetId\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return DatasetBindingValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.DatasetBindingValidator = DatasetBindingValidator;\r\n\n\n/***/ }),\n/* 10 */\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.ExportDataRequestValidator = void 0;\r\nvar multipleFieldsValidator_1 = __webpack_require__(3);\r\nvar typeValidator_1 = __webpack_require__(4);\r\nvar ExportDataRequestValidator = /** @class */ (function (_super) {\r\n __extends(ExportDataRequestValidator, _super);\r\n function ExportDataRequestValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n ExportDataRequestValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"rows\",\r\n validators: [new typeValidator_1.NumberValidator()]\r\n },\r\n {\r\n field: \"exportDataType\",\r\n validators: [new typeValidator_1.EnumValidator([0, 1])]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return ExportDataRequestValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.ExportDataRequestValidator = ExportDataRequestValidator;\r\n\n\n/***/ }),\n/* 11 */\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.ExtensionsValidator = exports.MenuGroupExtensionValidator = exports.ExtensionValidator = exports.CommandExtensionValidator = exports.ExtensionItemValidator = exports.ExtensionPointsValidator = exports.GroupedMenuExtensionValidator = exports.FlatMenuExtensionValidator = exports.MenuExtensionBaseValidator = void 0;\r\nvar multipleFieldsValidator_1 = __webpack_require__(3);\r\nvar typeValidator_1 = __webpack_require__(4);\r\nvar validator_1 = __webpack_require__(1);\r\nvar MenuExtensionBaseValidator = /** @class */ (function (_super) {\r\n __extends(MenuExtensionBaseValidator, _super);\r\n function MenuExtensionBaseValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n MenuExtensionBaseValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"title\",\r\n validators: [validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"icon\",\r\n validators: [validator_1.Validators.stringValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return MenuExtensionBaseValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.MenuExtensionBaseValidator = MenuExtensionBaseValidator;\r\nvar FlatMenuExtensionValidator = /** @class */ (function (_super) {\r\n __extends(FlatMenuExtensionValidator, _super);\r\n function FlatMenuExtensionValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n FlatMenuExtensionValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"menuLocation\",\r\n validators: [validator_1.Validators.menuLocationValidator]\r\n },\r\n {\r\n field: \"groupName\",\r\n validators: [validator_1.Validators.fieldForbiddenValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return FlatMenuExtensionValidator;\r\n}(MenuExtensionBaseValidator));\r\nexports.FlatMenuExtensionValidator = FlatMenuExtensionValidator;\r\nvar GroupedMenuExtensionValidator = /** @class */ (function (_super) {\r\n __extends(GroupedMenuExtensionValidator, _super);\r\n function GroupedMenuExtensionValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n GroupedMenuExtensionValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"groupName\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"menuLocation\",\r\n validators: [validator_1.Validators.fieldForbiddenValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return GroupedMenuExtensionValidator;\r\n}(MenuExtensionBaseValidator));\r\nexports.GroupedMenuExtensionValidator = GroupedMenuExtensionValidator;\r\nvar ExtensionPointsValidator = /** @class */ (function (_super) {\r\n __extends(ExtensionPointsValidator, _super);\r\n function ExtensionPointsValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n ExtensionPointsValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"visualContextMenu\",\r\n validators: [validator_1.Validators.menuExtensionValidator]\r\n },\r\n {\r\n field: \"visualOptionsMenu\",\r\n validators: [validator_1.Validators.menuExtensionValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return ExtensionPointsValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.ExtensionPointsValidator = ExtensionPointsValidator;\r\nvar ExtensionItemValidator = /** @class */ (function (_super) {\r\n __extends(ExtensionItemValidator, _super);\r\n function ExtensionItemValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n ExtensionItemValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"name\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"extend\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.extensionPointsValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return ExtensionItemValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.ExtensionItemValidator = ExtensionItemValidator;\r\nvar CommandExtensionValidator = /** @class */ (function (_super) {\r\n __extends(CommandExtensionValidator, _super);\r\n function CommandExtensionValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n CommandExtensionValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"title\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"icon\",\r\n validators: [validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"selector\",\r\n validators: [validator_1.Validators.commandExtensionSelectorValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return CommandExtensionValidator;\r\n}(ExtensionItemValidator));\r\nexports.CommandExtensionValidator = CommandExtensionValidator;\r\nvar ExtensionValidator = /** @class */ (function (_super) {\r\n __extends(ExtensionValidator, _super);\r\n function ExtensionValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n ExtensionValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"command\",\r\n validators: [validator_1.Validators.commandExtensionValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return ExtensionValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.ExtensionValidator = ExtensionValidator;\r\nvar MenuGroupExtensionValidator = /** @class */ (function (_super) {\r\n __extends(MenuGroupExtensionValidator, _super);\r\n function MenuGroupExtensionValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n MenuGroupExtensionValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"name\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"title\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"menuLocation\",\r\n validators: [validator_1.Validators.menuLocationValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return MenuGroupExtensionValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.MenuGroupExtensionValidator = MenuGroupExtensionValidator;\r\nvar ExtensionsValidator = /** @class */ (function (_super) {\r\n __extends(ExtensionsValidator, _super);\r\n function ExtensionsValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n ExtensionsValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"commands\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.commandExtensionArrayValidator]\r\n },\r\n {\r\n field: \"groups\",\r\n validators: [validator_1.Validators.menuGroupExtensionArrayValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return ExtensionsValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.ExtensionsValidator = ExtensionsValidator;\r\n\n\n/***/ }),\n/* 12 */\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.OnLoadFiltersValidator = exports.OnLoadFiltersBaseRemoveOperationValidator = exports.OnLoadFiltersBaseValidator = exports.ConditionItemValidator = exports.RemoveFiltersRequestValidator = exports.UpdateFiltersRequestValidator = exports.FilterValidator = exports.HierarchyFilterNodeValidator = exports.HierarchyFilterValidator = exports.IncludeExcludeFilterValidator = exports.NotSupportedFilterValidator = exports.TopNFilterValidator = exports.RelativeTimeFilterValidator = exports.RelativeDateFilterValidator = exports.RelativeDateTimeFilterValidator = exports.AdvancedFilterValidator = exports.BasicFilterValidator = exports.FilterValidatorBase = exports.FilterDisplaySettingsValidator = exports.FilterMeasureTargetValidator = exports.FilterKeyHierarchyTargetValidator = exports.FilterHierarchyTargetValidator = exports.FilterKeyColumnsTargetValidator = exports.FilterColumnTargetValidator = void 0;\r\nvar multipleFieldsValidator_1 = __webpack_require__(3);\r\nvar typeValidator_1 = __webpack_require__(4);\r\nvar validator_1 = __webpack_require__(1);\r\nvar FilterColumnTargetValidator = /** @class */ (function (_super) {\r\n __extends(FilterColumnTargetValidator, _super);\r\n function FilterColumnTargetValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n FilterColumnTargetValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"table\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"column\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return FilterColumnTargetValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.FilterColumnTargetValidator = FilterColumnTargetValidator;\r\nvar FilterKeyColumnsTargetValidator = /** @class */ (function (_super) {\r\n __extends(FilterKeyColumnsTargetValidator, _super);\r\n function FilterKeyColumnsTargetValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n FilterKeyColumnsTargetValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"keys\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringArrayValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return FilterKeyColumnsTargetValidator;\r\n}(FilterColumnTargetValidator));\r\nexports.FilterKeyColumnsTargetValidator = FilterKeyColumnsTargetValidator;\r\nvar FilterHierarchyTargetValidator = /** @class */ (function (_super) {\r\n __extends(FilterHierarchyTargetValidator, _super);\r\n function FilterHierarchyTargetValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n FilterHierarchyTargetValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"table\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"hierarchy\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"hierarchyLevel\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return FilterHierarchyTargetValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.FilterHierarchyTargetValidator = FilterHierarchyTargetValidator;\r\nvar FilterKeyHierarchyTargetValidator = /** @class */ (function (_super) {\r\n __extends(FilterKeyHierarchyTargetValidator, _super);\r\n function FilterKeyHierarchyTargetValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n FilterKeyHierarchyTargetValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"keys\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringArrayValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return FilterKeyHierarchyTargetValidator;\r\n}(FilterHierarchyTargetValidator));\r\nexports.FilterKeyHierarchyTargetValidator = FilterKeyHierarchyTargetValidator;\r\nvar FilterMeasureTargetValidator = /** @class */ (function (_super) {\r\n __extends(FilterMeasureTargetValidator, _super);\r\n function FilterMeasureTargetValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n FilterMeasureTargetValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"table\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"measure\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return FilterMeasureTargetValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.FilterMeasureTargetValidator = FilterMeasureTargetValidator;\r\nvar FilterDisplaySettingsValidator = /** @class */ (function (_super) {\r\n __extends(FilterDisplaySettingsValidator, _super);\r\n function FilterDisplaySettingsValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n FilterDisplaySettingsValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"isLockedInViewMode\",\r\n validators: [validator_1.Validators.booleanValidator]\r\n },\r\n {\r\n field: \"isHiddenInViewMode\",\r\n validators: [validator_1.Validators.booleanValidator]\r\n },\r\n {\r\n field: \"displayName\",\r\n validators: [validator_1.Validators.stringValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return FilterDisplaySettingsValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.FilterDisplaySettingsValidator = FilterDisplaySettingsValidator;\r\nvar FilterValidatorBase = /** @class */ (function (_super) {\r\n __extends(FilterValidatorBase, _super);\r\n function FilterValidatorBase() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n FilterValidatorBase.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"target\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.filterTargetValidator]\r\n },\r\n {\r\n field: \"$schema\",\r\n validators: [validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"filterType\",\r\n validators: [validator_1.Validators.filterTypeValidator]\r\n },\r\n {\r\n field: \"displaySettings\",\r\n validators: [validator_1.Validators.filterDisplaySettingsValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return FilterValidatorBase;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.FilterValidatorBase = FilterValidatorBase;\r\nvar BasicFilterValidator = /** @class */ (function (_super) {\r\n __extends(BasicFilterValidator, _super);\r\n function BasicFilterValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n BasicFilterValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"operator\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"values\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.anyArrayValidator]\r\n },\r\n {\r\n field: \"filterType\",\r\n validators: [validator_1.Validators.basicFilterTypeValidator]\r\n },\r\n {\r\n field: \"requireSingleSelection\",\r\n validators: [validator_1.Validators.booleanValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return BasicFilterValidator;\r\n}(FilterValidatorBase));\r\nexports.BasicFilterValidator = BasicFilterValidator;\r\nvar AdvancedFilterValidator = /** @class */ (function (_super) {\r\n __extends(AdvancedFilterValidator, _super);\r\n function AdvancedFilterValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n AdvancedFilterValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"logicalOperator\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"conditions\",\r\n validators: [validator_1.Validators.filterConditionsValidator]\r\n },\r\n {\r\n field: \"filterType\",\r\n validators: [validator_1.Validators.advancedFilterTypeValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return AdvancedFilterValidator;\r\n}(FilterValidatorBase));\r\nexports.AdvancedFilterValidator = AdvancedFilterValidator;\r\nvar RelativeDateTimeFilterValidator = /** @class */ (function (_super) {\r\n __extends(RelativeDateTimeFilterValidator, _super);\r\n function RelativeDateTimeFilterValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n RelativeDateTimeFilterValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"operator\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.relativeDateFilterOperatorValidator]\r\n },\r\n {\r\n field: \"timeUnitsCount\",\r\n validators: [validator_1.Validators.numberValidator]\r\n },\r\n {\r\n field: \"timeUnitType\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.relativeDateTimeFilterUnitTypeValidator]\r\n },\r\n {\r\n field: \"filterType\",\r\n validators: [validator_1.Validators.relativeDateTimeFilterTypeValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return RelativeDateTimeFilterValidator;\r\n}(FilterValidatorBase));\r\nexports.RelativeDateTimeFilterValidator = RelativeDateTimeFilterValidator;\r\nvar RelativeDateFilterValidator = /** @class */ (function (_super) {\r\n __extends(RelativeDateFilterValidator, _super);\r\n function RelativeDateFilterValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n RelativeDateFilterValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"includeToday\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.booleanValidator]\r\n },\r\n {\r\n field: \"timeUnitType\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.relativeDateFilterTimeUnitTypeValidator]\r\n },\r\n {\r\n field: \"filterType\",\r\n validators: [validator_1.Validators.relativeDateFilterTypeValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return RelativeDateFilterValidator;\r\n}(RelativeDateTimeFilterValidator));\r\nexports.RelativeDateFilterValidator = RelativeDateFilterValidator;\r\nvar RelativeTimeFilterValidator = /** @class */ (function (_super) {\r\n __extends(RelativeTimeFilterValidator, _super);\r\n function RelativeTimeFilterValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n RelativeTimeFilterValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"timeUnitType\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.relativeTimeFilterTimeUnitTypeValidator]\r\n },\r\n {\r\n field: \"filterType\",\r\n validators: [validator_1.Validators.relativeTimeFilterTypeValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return RelativeTimeFilterValidator;\r\n}(RelativeDateTimeFilterValidator));\r\nexports.RelativeTimeFilterValidator = RelativeTimeFilterValidator;\r\nvar TopNFilterValidator = /** @class */ (function (_super) {\r\n __extends(TopNFilterValidator, _super);\r\n function TopNFilterValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n TopNFilterValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"operator\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"itemCount\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.numberValidator]\r\n },\r\n {\r\n field: \"filterType\",\r\n validators: [validator_1.Validators.topNFilterTypeValidator]\r\n },\r\n {\r\n field: \"orderBy\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.filterTargetValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return TopNFilterValidator;\r\n}(FilterValidatorBase));\r\nexports.TopNFilterValidator = TopNFilterValidator;\r\nvar NotSupportedFilterValidator = /** @class */ (function (_super) {\r\n __extends(NotSupportedFilterValidator, _super);\r\n function NotSupportedFilterValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n NotSupportedFilterValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"message\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"notSupportedTypeName\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"filterType\",\r\n validators: [validator_1.Validators.notSupportedFilterTypeValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return NotSupportedFilterValidator;\r\n}(FilterValidatorBase));\r\nexports.NotSupportedFilterValidator = NotSupportedFilterValidator;\r\nvar IncludeExcludeFilterValidator = /** @class */ (function (_super) {\r\n __extends(IncludeExcludeFilterValidator, _super);\r\n function IncludeExcludeFilterValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n IncludeExcludeFilterValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"isExclude\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.booleanValidator]\r\n },\r\n {\r\n field: \"values\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.anyArrayValidator]\r\n },\r\n {\r\n field: \"filterType\",\r\n validators: [validator_1.Validators.includeExludeFilterTypeValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return IncludeExcludeFilterValidator;\r\n}(FilterValidatorBase));\r\nexports.IncludeExcludeFilterValidator = IncludeExcludeFilterValidator;\r\nvar HierarchyFilterValidator = /** @class */ (function (_super) {\r\n __extends(HierarchyFilterValidator, _super);\r\n function HierarchyFilterValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n HierarchyFilterValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"hierarchyData\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.hierarchyFilterValuesValidator]\r\n },\r\n {\r\n field: \"filterType\",\r\n validators: [validator_1.Validators.hierarchyFilterTypeValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return HierarchyFilterValidator;\r\n}(FilterValidatorBase));\r\nexports.HierarchyFilterValidator = HierarchyFilterValidator;\r\nvar HierarchyFilterNodeValidator = /** @class */ (function (_super) {\r\n __extends(HierarchyFilterNodeValidator, _super);\r\n function HierarchyFilterNodeValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n HierarchyFilterNodeValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"value\",\r\n validators: [validator_1.Validators.anyValueValidator]\r\n },\r\n {\r\n field: \"keyValues\",\r\n validators: [validator_1.Validators.anyArrayValidator]\r\n },\r\n {\r\n field: \"children\",\r\n validators: [validator_1.Validators.hierarchyFilterValuesValidator]\r\n },\r\n {\r\n field: \"operator\",\r\n validators: [validator_1.Validators.stringValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return HierarchyFilterNodeValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.HierarchyFilterNodeValidator = HierarchyFilterNodeValidator;\r\nvar FilterValidator = /** @class */ (function (_super) {\r\n __extends(FilterValidator, _super);\r\n function FilterValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n FilterValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n return validator_1.Validators.anyFilterValidator.validate(input, path, field);\r\n };\r\n return FilterValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.FilterValidator = FilterValidator;\r\nvar UpdateFiltersRequestValidator = /** @class */ (function (_super) {\r\n __extends(UpdateFiltersRequestValidator, _super);\r\n function UpdateFiltersRequestValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n UpdateFiltersRequestValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"filtersOperation\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.filtersOperationsUpdateValidator]\r\n },\r\n {\r\n field: \"filters\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.filtersArrayValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return UpdateFiltersRequestValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.UpdateFiltersRequestValidator = UpdateFiltersRequestValidator;\r\nvar RemoveFiltersRequestValidator = /** @class */ (function (_super) {\r\n __extends(RemoveFiltersRequestValidator, _super);\r\n function RemoveFiltersRequestValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n RemoveFiltersRequestValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"filtersOperation\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.filtersOperationsRemoveAllValidator]\r\n },\r\n {\r\n field: \"filters\",\r\n validators: [validator_1.Validators.fieldForbiddenValidator, validator_1.Validators.filtersArrayValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return RemoveFiltersRequestValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.RemoveFiltersRequestValidator = RemoveFiltersRequestValidator;\r\nvar ConditionItemValidator = /** @class */ (function (_super) {\r\n __extends(ConditionItemValidator, _super);\r\n function ConditionItemValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n ConditionItemValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"value\",\r\n validators: [validator_1.Validators.anyValueValidator]\r\n },\r\n {\r\n field: \"operator\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return ConditionItemValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.ConditionItemValidator = ConditionItemValidator;\r\nvar OnLoadFiltersBaseValidator = /** @class */ (function (_super) {\r\n __extends(OnLoadFiltersBaseValidator, _super);\r\n function OnLoadFiltersBaseValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n OnLoadFiltersBaseValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"operation\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.filtersOperationsUpdateValidator]\r\n },\r\n {\r\n field: \"filters\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.filtersArrayValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return OnLoadFiltersBaseValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.OnLoadFiltersBaseValidator = OnLoadFiltersBaseValidator;\r\nvar OnLoadFiltersBaseRemoveOperationValidator = /** @class */ (function (_super) {\r\n __extends(OnLoadFiltersBaseRemoveOperationValidator, _super);\r\n function OnLoadFiltersBaseRemoveOperationValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n OnLoadFiltersBaseRemoveOperationValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"operation\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.filtersOperationsRemoveAllValidator]\r\n },\r\n {\r\n field: \"filters\",\r\n validators: [validator_1.Validators.fieldForbiddenValidator, validator_1.Validators.filtersArrayValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return OnLoadFiltersBaseRemoveOperationValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.OnLoadFiltersBaseRemoveOperationValidator = OnLoadFiltersBaseRemoveOperationValidator;\r\nvar OnLoadFiltersValidator = /** @class */ (function (_super) {\r\n __extends(OnLoadFiltersValidator, _super);\r\n function OnLoadFiltersValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n OnLoadFiltersValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"allPages\",\r\n validators: [validator_1.Validators.onLoadFiltersBaseValidator]\r\n },\r\n {\r\n field: \"currentPage\",\r\n validators: [validator_1.Validators.onLoadFiltersBaseValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return OnLoadFiltersValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.OnLoadFiltersValidator = OnLoadFiltersValidator;\r\n\n\n/***/ }),\n/* 13 */\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.PageLayoutValidator = exports.DisplayStateValidator = exports.VisualLayoutValidator = exports.CustomLayoutValidator = void 0;\r\nvar multipleFieldsValidator_1 = __webpack_require__(3);\r\nvar typeValidator_1 = __webpack_require__(4);\r\nvar validator_1 = __webpack_require__(1);\r\nvar CustomLayoutValidator = /** @class */ (function (_super) {\r\n __extends(CustomLayoutValidator, _super);\r\n function CustomLayoutValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n CustomLayoutValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"pageSize\",\r\n validators: [validator_1.Validators.pageSizeValidator]\r\n },\r\n {\r\n field: \"displayOption\",\r\n validators: [validator_1.Validators.customLayoutDisplayOptionValidator]\r\n },\r\n {\r\n field: \"pagesLayout\",\r\n validators: [validator_1.Validators.pagesLayoutValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return CustomLayoutValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.CustomLayoutValidator = CustomLayoutValidator;\r\nvar VisualLayoutValidator = /** @class */ (function (_super) {\r\n __extends(VisualLayoutValidator, _super);\r\n function VisualLayoutValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n VisualLayoutValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"x\",\r\n validators: [validator_1.Validators.numberValidator]\r\n },\r\n {\r\n field: \"y\",\r\n validators: [validator_1.Validators.numberValidator]\r\n },\r\n {\r\n field: \"z\",\r\n validators: [validator_1.Validators.numberValidator]\r\n },\r\n {\r\n field: \"width\",\r\n validators: [validator_1.Validators.numberValidator]\r\n },\r\n {\r\n field: \"height\",\r\n validators: [validator_1.Validators.numberValidator]\r\n },\r\n {\r\n field: \"displayState\",\r\n validators: [validator_1.Validators.displayStateValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return VisualLayoutValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.VisualLayoutValidator = VisualLayoutValidator;\r\nvar DisplayStateValidator = /** @class */ (function (_super) {\r\n __extends(DisplayStateValidator, _super);\r\n function DisplayStateValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n DisplayStateValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"mode\",\r\n validators: [validator_1.Validators.displayStateModeValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return DisplayStateValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.DisplayStateValidator = DisplayStateValidator;\r\nvar PageLayoutValidator = /** @class */ (function (_super) {\r\n __extends(PageLayoutValidator, _super);\r\n function PageLayoutValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n PageLayoutValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"visualsLayout\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.pageLayoutValidator]\r\n },\r\n {\r\n field: \"defaultLayout\",\r\n validators: [validator_1.Validators.visualLayoutValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return PageLayoutValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.PageLayoutValidator = PageLayoutValidator;\r\n\n\n/***/ }),\n/* 14 */\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.PageViewFieldValidator = exports.PageValidator = exports.CustomPageSizeValidator = exports.PageSizeValidator = void 0;\r\nvar multipleFieldsValidator_1 = __webpack_require__(3);\r\nvar typeValidator_1 = __webpack_require__(4);\r\nvar validator_1 = __webpack_require__(1);\r\nvar PageSizeValidator = /** @class */ (function (_super) {\r\n __extends(PageSizeValidator, _super);\r\n function PageSizeValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n PageSizeValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"type\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.pageSizeTypeValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return PageSizeValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.PageSizeValidator = PageSizeValidator;\r\nvar CustomPageSizeValidator = /** @class */ (function (_super) {\r\n __extends(CustomPageSizeValidator, _super);\r\n function CustomPageSizeValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n CustomPageSizeValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"width\",\r\n validators: [validator_1.Validators.numberValidator]\r\n },\r\n {\r\n field: \"height\",\r\n validators: [validator_1.Validators.numberValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return CustomPageSizeValidator;\r\n}(PageSizeValidator));\r\nexports.CustomPageSizeValidator = CustomPageSizeValidator;\r\nvar PageValidator = /** @class */ (function (_super) {\r\n __extends(PageValidator, _super);\r\n function PageValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n PageValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"name\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return PageValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.PageValidator = PageValidator;\r\nvar PageViewFieldValidator = /** @class */ (function (_super) {\r\n __extends(PageViewFieldValidator, _super);\r\n function PageViewFieldValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n PageViewFieldValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var possibleValues = [\"actualSize\", \"fitToWidth\", \"oneColumn\"];\r\n if (possibleValues.indexOf(input) < 0) {\r\n return [{\r\n message: \"pageView must be a string with one of the following values: \\\"actualSize\\\", \\\"fitToWidth\\\", \\\"oneColumn\\\"\"\r\n }];\r\n }\r\n return null;\r\n };\r\n return PageViewFieldValidator;\r\n}(typeValidator_1.StringValidator));\r\nexports.PageViewFieldValidator = PageViewFieldValidator;\r\n\n\n/***/ }),\n/* 15 */\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.VisualizationsPaneValidator = exports.SyncSlicersPaneValidator = exports.SelectionPaneValidator = exports.PageNavigationPaneValidator = exports.FiltersPaneValidator = exports.FieldsPaneValidator = exports.BookmarksPaneValidator = exports.QnaPanesValidator = exports.ReportPanesValidator = void 0;\r\nvar multipleFieldsValidator_1 = __webpack_require__(3);\r\nvar typeValidator_1 = __webpack_require__(4);\r\nvar validator_1 = __webpack_require__(1);\r\nvar ReportPanesValidator = /** @class */ (function (_super) {\r\n __extends(ReportPanesValidator, _super);\r\n function ReportPanesValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n ReportPanesValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"bookmarks\",\r\n validators: [validator_1.Validators.bookmarksPaneValidator]\r\n },\r\n {\r\n field: \"fields\",\r\n validators: [validator_1.Validators.fieldsPaneValidator]\r\n },\r\n {\r\n field: \"filters\",\r\n validators: [validator_1.Validators.filtersPaneValidator]\r\n },\r\n {\r\n field: \"pageNavigation\",\r\n validators: [validator_1.Validators.pageNavigationPaneValidator]\r\n },\r\n {\r\n field: \"selection\",\r\n validators: [validator_1.Validators.selectionPaneValidator]\r\n },\r\n {\r\n field: \"syncSlicers\",\r\n validators: [validator_1.Validators.syncSlicersPaneValidator]\r\n },\r\n {\r\n field: \"visualizations\",\r\n validators: [validator_1.Validators.visualizationsPaneValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return ReportPanesValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.ReportPanesValidator = ReportPanesValidator;\r\nvar QnaPanesValidator = /** @class */ (function (_super) {\r\n __extends(QnaPanesValidator, _super);\r\n function QnaPanesValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n QnaPanesValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"filters\",\r\n validators: [validator_1.Validators.filtersPaneValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return QnaPanesValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.QnaPanesValidator = QnaPanesValidator;\r\nvar BookmarksPaneValidator = /** @class */ (function (_super) {\r\n __extends(BookmarksPaneValidator, _super);\r\n function BookmarksPaneValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n BookmarksPaneValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"visible\",\r\n validators: [validator_1.Validators.booleanValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return BookmarksPaneValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.BookmarksPaneValidator = BookmarksPaneValidator;\r\nvar FieldsPaneValidator = /** @class */ (function (_super) {\r\n __extends(FieldsPaneValidator, _super);\r\n function FieldsPaneValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n FieldsPaneValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"expanded\",\r\n validators: [validator_1.Validators.booleanValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return FieldsPaneValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.FieldsPaneValidator = FieldsPaneValidator;\r\nvar FiltersPaneValidator = /** @class */ (function (_super) {\r\n __extends(FiltersPaneValidator, _super);\r\n function FiltersPaneValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n FiltersPaneValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"visible\",\r\n validators: [validator_1.Validators.booleanValidator]\r\n },\r\n {\r\n field: \"expanded\",\r\n validators: [validator_1.Validators.booleanValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return FiltersPaneValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.FiltersPaneValidator = FiltersPaneValidator;\r\nvar PageNavigationPaneValidator = /** @class */ (function (_super) {\r\n __extends(PageNavigationPaneValidator, _super);\r\n function PageNavigationPaneValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n PageNavigationPaneValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"visible\",\r\n validators: [validator_1.Validators.booleanValidator]\r\n },\r\n {\r\n field: \"position\",\r\n validators: [validator_1.Validators.pageNavigationPositionValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return PageNavigationPaneValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.PageNavigationPaneValidator = PageNavigationPaneValidator;\r\nvar SelectionPaneValidator = /** @class */ (function (_super) {\r\n __extends(SelectionPaneValidator, _super);\r\n function SelectionPaneValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n SelectionPaneValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"visible\",\r\n validators: [validator_1.Validators.booleanValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return SelectionPaneValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.SelectionPaneValidator = SelectionPaneValidator;\r\nvar SyncSlicersPaneValidator = /** @class */ (function (_super) {\r\n __extends(SyncSlicersPaneValidator, _super);\r\n function SyncSlicersPaneValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n SyncSlicersPaneValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"visible\",\r\n validators: [validator_1.Validators.booleanValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return SyncSlicersPaneValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.SyncSlicersPaneValidator = SyncSlicersPaneValidator;\r\nvar VisualizationsPaneValidator = /** @class */ (function (_super) {\r\n __extends(VisualizationsPaneValidator, _super);\r\n function VisualizationsPaneValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n VisualizationsPaneValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"expanded\",\r\n validators: [validator_1.Validators.booleanValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return VisualizationsPaneValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.VisualizationsPaneValidator = VisualizationsPaneValidator;\r\n\n\n/***/ }),\n/* 16 */\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.QnaInterpretInputDataValidator = exports.QnaSettingsValidator = exports.LoadQnaValidator = void 0;\r\nvar multipleFieldsValidator_1 = __webpack_require__(3);\r\nvar typeValidator_1 = __webpack_require__(4);\r\nvar validator_1 = __webpack_require__(1);\r\nvar LoadQnaValidator = /** @class */ (function (_super) {\r\n __extends(LoadQnaValidator, _super);\r\n function LoadQnaValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n LoadQnaValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"accessToken\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"datasetIds\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringArrayValidator]\r\n },\r\n {\r\n field: \"question\",\r\n validators: [validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"viewMode\",\r\n validators: [validator_1.Validators.viewModeValidator]\r\n },\r\n {\r\n field: \"settings\",\r\n validators: [validator_1.Validators.qnaSettingValidator]\r\n },\r\n {\r\n field: \"tokenType\",\r\n validators: [validator_1.Validators.tokenTypeValidator]\r\n },\r\n {\r\n field: \"groupId\",\r\n validators: [validator_1.Validators.stringValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return LoadQnaValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.LoadQnaValidator = LoadQnaValidator;\r\nvar QnaSettingsValidator = /** @class */ (function (_super) {\r\n __extends(QnaSettingsValidator, _super);\r\n function QnaSettingsValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n QnaSettingsValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"filterPaneEnabled\",\r\n validators: [validator_1.Validators.booleanValidator]\r\n },\r\n {\r\n field: \"hideErrors\",\r\n validators: [validator_1.Validators.booleanValidator]\r\n },\r\n {\r\n field: \"panes\",\r\n validators: [validator_1.Validators.qnaPanesValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return QnaSettingsValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.QnaSettingsValidator = QnaSettingsValidator;\r\nvar QnaInterpretInputDataValidator = /** @class */ (function (_super) {\r\n __extends(QnaInterpretInputDataValidator, _super);\r\n function QnaInterpretInputDataValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n QnaInterpretInputDataValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"datasetIds\",\r\n validators: [validator_1.Validators.stringArrayValidator]\r\n },\r\n {\r\n field: \"question\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return QnaInterpretInputDataValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.QnaInterpretInputDataValidator = QnaInterpretInputDataValidator;\r\n\n\n/***/ }),\n/* 17 */\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.ReportCreateValidator = void 0;\r\nvar multipleFieldsValidator_1 = __webpack_require__(3);\r\nvar typeValidator_1 = __webpack_require__(4);\r\nvar validator_1 = __webpack_require__(1);\r\nvar ReportCreateValidator = /** @class */ (function (_super) {\r\n __extends(ReportCreateValidator, _super);\r\n function ReportCreateValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n ReportCreateValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"accessToken\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"datasetId\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"groupId\",\r\n validators: [validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"tokenType\",\r\n validators: [validator_1.Validators.tokenTypeValidator]\r\n },\r\n {\r\n field: \"theme\",\r\n validators: [validator_1.Validators.customThemeValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return ReportCreateValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.ReportCreateValidator = ReportCreateValidator;\r\n\n\n/***/ }),\n/* 18 */\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.ReportLoadValidator = void 0;\r\nvar multipleFieldsValidator_1 = __webpack_require__(3);\r\nvar typeValidator_1 = __webpack_require__(4);\r\nvar validator_1 = __webpack_require__(1);\r\nvar ReportLoadValidator = /** @class */ (function (_super) {\r\n __extends(ReportLoadValidator, _super);\r\n function ReportLoadValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n ReportLoadValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"accessToken\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"id\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"groupId\",\r\n validators: [validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"settings\",\r\n validators: [validator_1.Validators.settingsValidator]\r\n },\r\n {\r\n field: \"pageName\",\r\n validators: [validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"filters\",\r\n validators: [validator_1.Validators.reportLoadFiltersValidator]\r\n },\r\n {\r\n field: \"permissions\",\r\n validators: [validator_1.Validators.permissionsValidator]\r\n },\r\n {\r\n field: \"viewMode\",\r\n validators: [validator_1.Validators.viewModeValidator]\r\n },\r\n {\r\n field: \"tokenType\",\r\n validators: [validator_1.Validators.tokenTypeValidator]\r\n },\r\n {\r\n field: \"bookmark\",\r\n validators: [validator_1.Validators.applyBookmarkValidator]\r\n },\r\n {\r\n field: \"theme\",\r\n validators: [validator_1.Validators.customThemeValidator]\r\n },\r\n {\r\n field: \"embedUrl\",\r\n validators: [validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"datasetBinding\",\r\n validators: [validator_1.Validators.datasetBindingValidator]\r\n },\r\n {\r\n field: \"contrastMode\",\r\n validators: [validator_1.Validators.contrastModeValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return ReportLoadValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.ReportLoadValidator = ReportLoadValidator;\r\n\n\n/***/ }),\n/* 19 */\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.ReportParameterFieldsValidator = exports.PaginatedReportLoadValidator = void 0;\r\nvar multipleFieldsValidator_1 = __webpack_require__(3);\r\nvar typeValidator_1 = __webpack_require__(4);\r\nvar validator_1 = __webpack_require__(1);\r\nvar PaginatedReportLoadValidator = /** @class */ (function (_super) {\r\n __extends(PaginatedReportLoadValidator, _super);\r\n function PaginatedReportLoadValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n PaginatedReportLoadValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"accessToken\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"id\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"groupId\",\r\n validators: [validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"settings\",\r\n validators: [validator_1.Validators.paginatedReportsettingsValidator]\r\n },\r\n {\r\n field: \"tokenType\",\r\n validators: [validator_1.Validators.tokenTypeValidator]\r\n },\r\n {\r\n field: \"embedUrl\",\r\n validators: [validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"type\",\r\n validators: [validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"parameterValues\",\r\n validators: [validator_1.Validators.parameterValuesArrayValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return PaginatedReportLoadValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.PaginatedReportLoadValidator = PaginatedReportLoadValidator;\r\nvar ReportParameterFieldsValidator = /** @class */ (function () {\r\n function ReportParameterFieldsValidator() {\r\n }\r\n ReportParameterFieldsValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var fields = [\r\n {\r\n field: \"name\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"value\",\r\n validators: [validator_1.Validators.stringValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return ReportParameterFieldsValidator;\r\n}());\r\nexports.ReportParameterFieldsValidator = ReportParameterFieldsValidator;\r\n\n\n/***/ }),\n/* 20 */\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.SaveAsParametersValidator = void 0;\r\nvar multipleFieldsValidator_1 = __webpack_require__(3);\r\nvar typeValidator_1 = __webpack_require__(4);\r\nvar validator_1 = __webpack_require__(1);\r\nvar SaveAsParametersValidator = /** @class */ (function (_super) {\r\n __extends(SaveAsParametersValidator, _super);\r\n function SaveAsParametersValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n SaveAsParametersValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"name\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return SaveAsParametersValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.SaveAsParametersValidator = SaveAsParametersValidator;\r\n\n\n/***/ }),\n/* 21 */\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.SlicerTargetSelectorValidator = exports.VisualTypeSelectorValidator = exports.VisualSelectorValidator = void 0;\r\nvar multipleFieldsValidator_1 = __webpack_require__(3);\r\nvar typeValidator_1 = __webpack_require__(4);\r\nvar typeValidator_2 = __webpack_require__(4);\r\nvar validator_1 = __webpack_require__(1);\r\nvar VisualSelectorValidator = /** @class */ (function (_super) {\r\n __extends(VisualSelectorValidator, _super);\r\n function VisualSelectorValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n VisualSelectorValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n // Not required for this selector only - Backward compatibility\r\n field: \"$schema\",\r\n validators: [validator_1.Validators.stringValidator, new typeValidator_2.SchemaValidator(\"http://powerbi.com/product/schema#visualSelector\")]\r\n },\r\n {\r\n field: \"visualName\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return VisualSelectorValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.VisualSelectorValidator = VisualSelectorValidator;\r\nvar VisualTypeSelectorValidator = /** @class */ (function (_super) {\r\n __extends(VisualTypeSelectorValidator, _super);\r\n function VisualTypeSelectorValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n VisualTypeSelectorValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"$schema\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator, new typeValidator_2.SchemaValidator(\"http://powerbi.com/product/schema#visualTypeSelector\")]\r\n },\r\n {\r\n field: \"visualType\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return VisualTypeSelectorValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.VisualTypeSelectorValidator = VisualTypeSelectorValidator;\r\nvar SlicerTargetSelectorValidator = /** @class */ (function (_super) {\r\n __extends(SlicerTargetSelectorValidator, _super);\r\n function SlicerTargetSelectorValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n SlicerTargetSelectorValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"$schema\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator, new typeValidator_2.SchemaValidator(\"http://powerbi.com/product/schema#slicerTargetSelector\")]\r\n },\r\n {\r\n field: \"target\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.slicerTargetValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return SlicerTargetSelectorValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.SlicerTargetSelectorValidator = SlicerTargetSelectorValidator;\r\n\n\n/***/ }),\n/* 22 */\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.PaginatedReportSettingsValidator = exports.SettingsValidator = void 0;\r\nvar multipleFieldsValidator_1 = __webpack_require__(3);\r\nvar typeValidator_1 = __webpack_require__(4);\r\nvar validator_1 = __webpack_require__(1);\r\nvar SettingsValidator = /** @class */ (function (_super) {\r\n __extends(SettingsValidator, _super);\r\n function SettingsValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n SettingsValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"filterPaneEnabled\",\r\n validators: [validator_1.Validators.booleanValidator]\r\n },\r\n {\r\n field: \"navContentPaneEnabled\",\r\n validators: [validator_1.Validators.booleanValidator]\r\n },\r\n {\r\n field: \"bookmarksPaneEnabled\",\r\n validators: [validator_1.Validators.booleanValidator]\r\n },\r\n {\r\n field: \"useCustomSaveAsDialog\",\r\n validators: [validator_1.Validators.booleanValidator]\r\n },\r\n {\r\n field: \"extensions\",\r\n validators: [validator_1.Validators.extensionsValidator]\r\n },\r\n {\r\n field: \"layoutType\",\r\n validators: [validator_1.Validators.layoutTypeValidator]\r\n },\r\n {\r\n field: \"customLayout\",\r\n validators: [validator_1.Validators.customLayoutValidator]\r\n },\r\n {\r\n field: \"background\",\r\n validators: [validator_1.Validators.backgroundValidator]\r\n },\r\n {\r\n field: \"visualSettings\",\r\n validators: [validator_1.Validators.visualSettingsValidator]\r\n },\r\n {\r\n field: \"hideErrors\",\r\n validators: [validator_1.Validators.booleanValidator]\r\n },\r\n {\r\n field: \"commands\",\r\n validators: [validator_1.Validators.commandsSettingsArrayValidator]\r\n },\r\n {\r\n field: \"hyperlinkClickBehavior\",\r\n validators: [validator_1.Validators.hyperlinkClickBehaviorValidator]\r\n },\r\n {\r\n field: \"bars\",\r\n validators: [validator_1.Validators.reportBarsValidator]\r\n },\r\n {\r\n field: \"panes\",\r\n validators: [validator_1.Validators.reportPanesValidator]\r\n },\r\n {\r\n field: \"personalBookmarksEnabled\",\r\n validators: [validator_1.Validators.booleanValidator]\r\n },\r\n {\r\n field: \"persistentFiltersEnabled\",\r\n validators: [validator_1.Validators.booleanValidator]\r\n },\r\n {\r\n field: \"visualRenderedEvents\",\r\n validators: [validator_1.Validators.booleanValidator]\r\n },\r\n {\r\n field: \"authoringHintsEnabled\",\r\n validators: [validator_1.Validators.booleanValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return SettingsValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.SettingsValidator = SettingsValidator;\r\nvar PaginatedReportSettingsValidator = /** @class */ (function (_super) {\r\n __extends(PaginatedReportSettingsValidator, _super);\r\n function PaginatedReportSettingsValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n PaginatedReportSettingsValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"commands\",\r\n validators: [validator_1.Validators.paginatedReportCommandsValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return PaginatedReportSettingsValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.PaginatedReportSettingsValidator = PaginatedReportSettingsValidator;\r\n\n\n/***/ }),\n/* 23 */\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.SlicerStateValidator = exports.SlicerValidator = void 0;\r\nvar multipleFieldsValidator_1 = __webpack_require__(3);\r\nvar typeValidator_1 = __webpack_require__(4);\r\nvar validator_1 = __webpack_require__(1);\r\nvar SlicerValidator = /** @class */ (function (_super) {\r\n __extends(SlicerValidator, _super);\r\n function SlicerValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n SlicerValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"selector\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.slicerSelectorValidator]\r\n },\r\n {\r\n field: \"state\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.slicerStateValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return SlicerValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.SlicerValidator = SlicerValidator;\r\nvar SlicerStateValidator = /** @class */ (function (_super) {\r\n __extends(SlicerStateValidator, _super);\r\n function SlicerStateValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n SlicerStateValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"filters\",\r\n validators: [validator_1.Validators.filtersArrayValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return SlicerStateValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.SlicerStateValidator = SlicerStateValidator;\r\n\n\n/***/ }),\n/* 24 */\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.TileLoadValidator = void 0;\r\nvar multipleFieldsValidator_1 = __webpack_require__(3);\r\nvar typeValidator_1 = __webpack_require__(4);\r\nvar validator_1 = __webpack_require__(1);\r\nvar TileLoadValidator = /** @class */ (function (_super) {\r\n __extends(TileLoadValidator, _super);\r\n function TileLoadValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n TileLoadValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"accessToken\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"id\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"dashboardId\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"groupId\",\r\n validators: [validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"pageView\",\r\n validators: [validator_1.Validators.stringValidator]\r\n },\r\n {\r\n field: \"tokenType\",\r\n validators: [validator_1.Validators.tokenTypeValidator]\r\n },\r\n {\r\n field: \"width\",\r\n validators: [validator_1.Validators.numberValidator]\r\n },\r\n {\r\n field: \"height\",\r\n validators: [validator_1.Validators.numberValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return TileLoadValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.TileLoadValidator = TileLoadValidator;\r\n\n\n/***/ }),\n/* 25 */\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.VisualHeaderValidator = exports.VisualHeaderSettingsValidator = exports.VisualSettingsValidator = void 0;\r\nvar multipleFieldsValidator_1 = __webpack_require__(3);\r\nvar typeValidator_1 = __webpack_require__(4);\r\nvar validator_1 = __webpack_require__(1);\r\nvar VisualSettingsValidator = /** @class */ (function (_super) {\r\n __extends(VisualSettingsValidator, _super);\r\n function VisualSettingsValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n VisualSettingsValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"visualHeaders\",\r\n validators: [validator_1.Validators.visualHeadersValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return VisualSettingsValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.VisualSettingsValidator = VisualSettingsValidator;\r\nvar VisualHeaderSettingsValidator = /** @class */ (function (_super) {\r\n __extends(VisualHeaderSettingsValidator, _super);\r\n function VisualHeaderSettingsValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n VisualHeaderSettingsValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"visible\",\r\n validators: [validator_1.Validators.booleanValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return VisualHeaderSettingsValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.VisualHeaderSettingsValidator = VisualHeaderSettingsValidator;\r\nvar VisualHeaderValidator = /** @class */ (function (_super) {\r\n __extends(VisualHeaderValidator, _super);\r\n function VisualHeaderValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n VisualHeaderValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"settings\",\r\n validators: [validator_1.Validators.fieldRequiredValidator, validator_1.Validators.visualHeaderSettingsValidator]\r\n },\r\n {\r\n field: \"selector\",\r\n validators: [validator_1.Validators.visualHeaderSelectorValidator]\r\n },\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return VisualHeaderValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.VisualHeaderValidator = VisualHeaderValidator;\r\n\n\n/***/ }),\n/* 26 */\n/***/ ((__unused_webpack_module, exports) => {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.AnyOfValidator = void 0;\r\nvar AnyOfValidator = /** @class */ (function () {\r\n function AnyOfValidator(validators) {\r\n this.validators = validators;\r\n }\r\n AnyOfValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var valid = false;\r\n for (var _i = 0, _a = this.validators; _i < _a.length; _i++) {\r\n var validator = _a[_i];\r\n var errors = validator.validate(input, path, field);\r\n if (!errors) {\r\n valid = true;\r\n break;\r\n }\r\n }\r\n if (!valid) {\r\n return [{\r\n message: field + \" property is invalid\",\r\n path: (path ? path + \".\" : \"\") + field,\r\n keyword: \"invalid\"\r\n }];\r\n }\r\n return null;\r\n };\r\n return AnyOfValidator;\r\n}());\r\nexports.AnyOfValidator = AnyOfValidator;\r\n\n\n/***/ }),\n/* 27 */\n/***/ ((__unused_webpack_module, exports) => {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.FieldForbiddenValidator = void 0;\r\nvar FieldForbiddenValidator = /** @class */ (function () {\r\n function FieldForbiddenValidator() {\r\n }\r\n FieldForbiddenValidator.prototype.validate = function (input, path, field) {\r\n if (input !== undefined) {\r\n return [{\r\n message: field + \" is forbidden\",\r\n path: (path ? path + \".\" : \"\") + field,\r\n keyword: \"forbidden\"\r\n }];\r\n }\r\n return null;\r\n };\r\n return FieldForbiddenValidator;\r\n}());\r\nexports.FieldForbiddenValidator = FieldForbiddenValidator;\r\n\n\n/***/ }),\n/* 28 */\n/***/ ((__unused_webpack_module, exports) => {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.FieldRequiredValidator = void 0;\r\nvar FieldRequiredValidator = /** @class */ (function () {\r\n function FieldRequiredValidator() {\r\n }\r\n FieldRequiredValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return [{\r\n message: field + \" is required\",\r\n path: (path ? path + \".\" : \"\") + field,\r\n keyword: \"required\"\r\n }];\r\n }\r\n return null;\r\n };\r\n return FieldRequiredValidator;\r\n}());\r\nexports.FieldRequiredValidator = FieldRequiredValidator;\r\n\n\n/***/ }),\n/* 29 */\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.MapValidator = void 0;\r\nvar typeValidator_1 = __webpack_require__(4);\r\nvar MapValidator = /** @class */ (function (_super) {\r\n __extends(MapValidator, _super);\r\n function MapValidator(keyValidators, valueValidators) {\r\n var _this = _super.call(this) || this;\r\n _this.keyValidators = keyValidators;\r\n _this.valueValidators = valueValidators;\r\n return _this;\r\n }\r\n MapValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n for (var key in input) {\r\n if (input.hasOwnProperty(key)) {\r\n var fieldsPath = (path ? path + \".\" : \"\") + field + \".\" + key;\r\n for (var _i = 0, _a = this.keyValidators; _i < _a.length; _i++) {\r\n var keyValidator = _a[_i];\r\n errors = keyValidator.validate(key, fieldsPath, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n }\r\n for (var _b = 0, _c = this.valueValidators; _b < _c.length; _b++) {\r\n var valueValidator = _c[_b];\r\n errors = valueValidator.validate(input[key], fieldsPath, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n }\r\n }\r\n }\r\n return null;\r\n };\r\n return MapValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.MapValidator = MapValidator;\r\n\n\n/***/ }),\n/* 30 */\n/***/ (function(__unused_webpack_module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", ({ value: true }));\r\nexports.ParametersPanelValidator = void 0;\r\nvar multipleFieldsValidator_1 = __webpack_require__(3);\r\nvar typeValidator_1 = __webpack_require__(4);\r\nvar validator_1 = __webpack_require__(1);\r\nvar ParametersPanelValidator = /** @class */ (function (_super) {\r\n __extends(ParametersPanelValidator, _super);\r\n function ParametersPanelValidator() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n ParametersPanelValidator.prototype.validate = function (input, path, field) {\r\n if (input == null) {\r\n return null;\r\n }\r\n var errors = _super.prototype.validate.call(this, input, path, field);\r\n if (errors) {\r\n return errors;\r\n }\r\n var fields = [\r\n {\r\n field: \"expanded\",\r\n validators: [validator_1.Validators.booleanValidator]\r\n },\r\n {\r\n field: \"enabled\",\r\n validators: [validator_1.Validators.booleanValidator]\r\n }\r\n ];\r\n var multipleFieldsValidator = new multipleFieldsValidator_1.MultipleFieldsValidator(fields);\r\n return multipleFieldsValidator.validate(input, path, field);\r\n };\r\n return ParametersPanelValidator;\r\n}(typeValidator_1.ObjectValidator));\r\nexports.ParametersPanelValidator = ParametersPanelValidator;\r\n\n\n/***/ })\n/******/ \t]);\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tvar cachedModule = __webpack_module_cache__[moduleId];\n/******/ \t\tif (cachedModule !== undefined) {\n/******/ \t\t\treturn cachedModule.exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\n/******/ \t\n/******/ \t// startup\n/******/ \t// Load entry module and return exports\n/******/ \t// This entry module is referenced by other modules so it can't be inlined\n/******/ \tvar __webpack_exports__ = __webpack_require__(0);\n/******/ \t\n/******/ \treturn __webpack_exports__;\n/******/ })()\n;\n});\n//# sourceMappingURL=models.js.map\n\n/***/ }),\n\n/***/ \"./node_modules/powerbi-router/dist/router.js\":\n/*!****************************************************!*\\\n !*** ./node_modules/powerbi-router/dist/router.js ***!\n \\****************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n/*! powerbi-router v0.1.5 | (c) 2016 Microsoft Corporation MIT */\n(function webpackUniversalModuleDefinition(root, factory) {\n\tif(true)\n\t\tmodule.exports = factory();\n\telse {}\n})(this, function() {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId])\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\texports: {},\n/******/ \t\t\tid: moduleId,\n/******/ \t\t\tloaded: false\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.loaded = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(0);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t\"use strict\";\n\tvar RouteRecognizer = __webpack_require__(1);\n\tvar Router = (function () {\n\t function Router(handlers) {\n\t this.handlers = handlers;\n\t /**\n\t * TODO: look at generating the router dynamically based on list of supported http methods\n\t * instead of hardcoding the creation of these and the methods.\n\t */\n\t this.getRouteRecognizer = new RouteRecognizer();\n\t this.patchRouteRecognizer = new RouteRecognizer();\n\t this.postRouteRecognizer = new RouteRecognizer();\n\t this.putRouteRecognizer = new RouteRecognizer();\n\t this.deleteRouteRecognizer = new RouteRecognizer();\n\t }\n\t Router.prototype.get = function (url, handler) {\n\t this.registerHandler(this.getRouteRecognizer, \"GET\", url, handler);\n\t return this;\n\t };\n\t Router.prototype.patch = function (url, handler) {\n\t this.registerHandler(this.patchRouteRecognizer, \"PATCH\", url, handler);\n\t return this;\n\t };\n\t Router.prototype.post = function (url, handler) {\n\t this.registerHandler(this.postRouteRecognizer, \"POST\", url, handler);\n\t return this;\n\t };\n\t Router.prototype.put = function (url, handler) {\n\t this.registerHandler(this.putRouteRecognizer, \"PUT\", url, handler);\n\t return this;\n\t };\n\t Router.prototype.delete = function (url, handler) {\n\t this.registerHandler(this.deleteRouteRecognizer, \"DELETE\", url, handler);\n\t return this;\n\t };\n\t /**\n\t * TODO: This method could use some refactoring. There is conflict of interest between keeping clean separation of test and handle method\n\t * Test method only returns boolean indicating if request can be handled, and handle method has opportunity to modify response and return promise of it.\n\t * In the case of the router with route-recognizer where handlers are associated with routes, this already guarantees that only one handler is selected and makes the test method feel complicated\n\t * Will leave as is an investigate cleaner ways at later time.\n\t */\n\t Router.prototype.registerHandler = function (routeRecognizer, method, url, handler) {\n\t var routeRecognizerHandler = function (request) {\n\t var response = new Response();\n\t return Promise.resolve(handler(request, response))\n\t .then(function (x) { return response; });\n\t };\n\t routeRecognizer.add([\n\t { path: url, handler: routeRecognizerHandler }\n\t ]);\n\t var internalHandler = {\n\t test: function (request) {\n\t if (request.method !== method) {\n\t return false;\n\t }\n\t var matchingRoutes = routeRecognizer.recognize(request.url);\n\t if (matchingRoutes === undefined) {\n\t return false;\n\t }\n\t /**\n\t * Copy parameters from recognized route to the request so they can be used within the handler function\n\t * This isn't ideal because it is side affect which modifies the request instead of strictly testing for true or false\n\t * but I don't see a better place to put this. If we move it between the call to test and the handle it becomes part of the window post message proxy\n\t * even though it's responsibility is related to routing.\n\t */\n\t var route = matchingRoutes[0];\n\t request.params = route.params;\n\t request.queryParams = matchingRoutes.queryParams;\n\t request.handler = route.handler;\n\t return true;\n\t },\n\t handle: function (request) {\n\t return request.handler(request);\n\t }\n\t };\n\t this.handlers.addHandler(internalHandler);\n\t };\n\t return Router;\n\t}());\n\texports.Router = Router;\n\tvar Response = (function () {\n\t function Response() {\n\t this.statusCode = 200;\n\t this.headers = {};\n\t this.body = null;\n\t }\n\t Response.prototype.send = function (statusCode, body) {\n\t this.statusCode = statusCode;\n\t this.body = body;\n\t };\n\t return Response;\n\t}());\n\texports.Response = Response;\n\n\n/***/ },\n/* 1 */\n/***/ function(module, exports, __webpack_require__) {\n\n\tvar __WEBPACK_AMD_DEFINE_RESULT__;/* WEBPACK VAR INJECTION */(function(module) {(function() {\n\t \"use strict\";\n\t function $$route$recognizer$dsl$$Target(path, matcher, delegate) {\n\t this.path = path;\n\t this.matcher = matcher;\n\t this.delegate = delegate;\n\t }\n\t\n\t $$route$recognizer$dsl$$Target.prototype = {\n\t to: function(target, callback) {\n\t var delegate = this.delegate;\n\t\n\t if (delegate && delegate.willAddRoute) {\n\t target = delegate.willAddRoute(this.matcher.target, target);\n\t }\n\t\n\t this.matcher.add(this.path, target);\n\t\n\t if (callback) {\n\t if (callback.length === 0) { throw new Error(\"You must have an argument in the function passed to `to`\"); }\n\t this.matcher.addChild(this.path, target, callback, this.delegate);\n\t }\n\t return this;\n\t }\n\t };\n\t\n\t function $$route$recognizer$dsl$$Matcher(target) {\n\t this.routes = {};\n\t this.children = {};\n\t this.target = target;\n\t }\n\t\n\t $$route$recognizer$dsl$$Matcher.prototype = {\n\t add: function(path, handler) {\n\t this.routes[path] = handler;\n\t },\n\t\n\t addChild: function(path, target, callback, delegate) {\n\t var matcher = new $$route$recognizer$dsl$$Matcher(target);\n\t this.children[path] = matcher;\n\t\n\t var match = $$route$recognizer$dsl$$generateMatch(path, matcher, delegate);\n\t\n\t if (delegate && delegate.contextEntered) {\n\t delegate.contextEntered(target, match);\n\t }\n\t\n\t callback(match);\n\t }\n\t };\n\t\n\t function $$route$recognizer$dsl$$generateMatch(startingPath, matcher, delegate) {\n\t return function(path, nestedCallback) {\n\t var fullPath = startingPath + path;\n\t\n\t if (nestedCallback) {\n\t nestedCallback($$route$recognizer$dsl$$generateMatch(fullPath, matcher, delegate));\n\t } else {\n\t return new $$route$recognizer$dsl$$Target(startingPath + path, matcher, delegate);\n\t }\n\t };\n\t }\n\t\n\t function $$route$recognizer$dsl$$addRoute(routeArray, path, handler) {\n\t var len = 0;\n\t for (var i=0; i<routeArray.length; i++) {\n\t len += routeArray[i].path.length;\n\t }\n\t\n\t path = path.substr(len);\n\t var route = { path: path, handler: handler };\n\t routeArray.push(route);\n\t }\n\t\n\t function $$route$recognizer$dsl$$eachRoute(baseRoute, matcher, callback, binding) {\n\t var routes = matcher.routes;\n\t\n\t for (var path in routes) {\n\t if (routes.hasOwnProperty(path)) {\n\t var routeArray = baseRoute.slice();\n\t $$route$recognizer$dsl$$addRoute(routeArray, path, routes[path]);\n\t\n\t if (matcher.children[path]) {\n\t $$route$recognizer$dsl$$eachRoute(routeArray, matcher.children[path], callback, binding);\n\t } else {\n\t callback.call(binding, routeArray);\n\t }\n\t }\n\t }\n\t }\n\t\n\t var $$route$recognizer$dsl$$default = function(callback, addRouteCallback) {\n\t var matcher = new $$route$recognizer$dsl$$Matcher();\n\t\n\t callback($$route$recognizer$dsl$$generateMatch(\"\", matcher, this.delegate));\n\t\n\t $$route$recognizer$dsl$$eachRoute([], matcher, function(route) {\n\t if (addRouteCallback) { addRouteCallback(this, route); }\n\t else { this.add(route); }\n\t }, this);\n\t };\n\t\n\t var $$route$recognizer$$specials = [\n\t '/', '.', '*', '+', '?', '|',\n\t '(', ')', '[', ']', '{', '}', '\\\\'\n\t ];\n\t\n\t var $$route$recognizer$$escapeRegex = new RegExp('(\\\\' + $$route$recognizer$$specials.join('|\\\\') + ')', 'g');\n\t\n\t function $$route$recognizer$$isArray(test) {\n\t return Object.prototype.toString.call(test) === \"[object Array]\";\n\t }\n\t\n\t // A Segment represents a segment in the original route description.\n\t // Each Segment type provides an `eachChar` and `regex` method.\n\t //\n\t // The `eachChar` method invokes the callback with one or more character\n\t // specifications. A character specification consumes one or more input\n\t // characters.\n\t //\n\t // The `regex` method returns a regex fragment for the segment. If the\n\t // segment is a dynamic of star segment, the regex fragment also includes\n\t // a capture.\n\t //\n\t // A character specification contains:\n\t //\n\t // * `validChars`: a String with a list of all valid characters, or\n\t // * `invalidChars`: a String with a list of all invalid characters\n\t // * `repeat`: true if the character specification can repeat\n\t\n\t function $$route$recognizer$$StaticSegment(string) { this.string = string; }\n\t $$route$recognizer$$StaticSegment.prototype = {\n\t eachChar: function(currentState) {\n\t var string = this.string, ch;\n\t\n\t for (var i=0; i<string.length; i++) {\n\t ch = string.charAt(i);\n\t currentState = currentState.put({ invalidChars: undefined, repeat: false, validChars: ch });\n\t }\n\t\n\t return currentState;\n\t },\n\t\n\t regex: function() {\n\t return this.string.replace($$route$recognizer$$escapeRegex, '\\\\$1');\n\t },\n\t\n\t generate: function() {\n\t return this.string;\n\t }\n\t };\n\t\n\t function $$route$recognizer$$DynamicSegment(name) { this.name = name; }\n\t $$route$recognizer$$DynamicSegment.prototype = {\n\t eachChar: function(currentState) {\n\t return currentState.put({ invalidChars: \"/\", repeat: true, validChars: undefined });\n\t },\n\t\n\t regex: function() {\n\t return \"([^/]+)\";\n\t },\n\t\n\t generate: function(params) {\n\t return params[this.name];\n\t }\n\t };\n\t\n\t function $$route$recognizer$$StarSegment(name) { this.name = name; }\n\t $$route$recognizer$$StarSegment.prototype = {\n\t eachChar: function(currentState) {\n\t return currentState.put({ invalidChars: \"\", repeat: true, validChars: undefined });\n\t },\n\t\n\t regex: function() {\n\t return \"(.+)\";\n\t },\n\t\n\t generate: function(params) {\n\t return params[this.name];\n\t }\n\t };\n\t\n\t function $$route$recognizer$$EpsilonSegment() {}\n\t $$route$recognizer$$EpsilonSegment.prototype = {\n\t eachChar: function(currentState) {\n\t return currentState;\n\t },\n\t regex: function() { return \"\"; },\n\t generate: function() { return \"\"; }\n\t };\n\t\n\t function $$route$recognizer$$parse(route, names, specificity) {\n\t // normalize route as not starting with a \"/\". Recognition will\n\t // also normalize.\n\t if (route.charAt(0) === \"/\") { route = route.substr(1); }\n\t\n\t var segments = route.split(\"/\");\n\t var results = new Array(segments.length);\n\t\n\t // A routes has specificity determined by the order that its different segments\n\t // appear in. This system mirrors how the magnitude of numbers written as strings\n\t // works.\n\t // Consider a number written as: \"abc\". An example would be \"200\". Any other number written\n\t // \"xyz\" will be smaller than \"abc\" so long as `a > z`. For instance, \"199\" is smaller\n\t // then \"200\", even though \"y\" and \"z\" (which are both 9) are larger than \"0\" (the value\n\t // of (`b` and `c`). This is because the leading symbol, \"2\", is larger than the other\n\t // leading symbol, \"1\".\n\t // The rule is that symbols to the left carry more weight than symbols to the right\n\t // when a number is written out as a string. In the above strings, the leading digit\n\t // represents how many 100's are in the number, and it carries more weight than the middle\n\t // number which represents how many 10's are in the number.\n\t // This system of number magnitude works well for route specificity, too. A route written as\n\t // `a/b/c` will be more specific than `x/y/z` as long as `a` is more specific than\n\t // `x`, irrespective of the other parts.\n\t // Because of this similarity, we assign each type of segment a number value written as a\n\t // string. We can find the specificity of compound routes by concatenating these strings\n\t // together, from left to right. After we have looped through all of the segments,\n\t // we convert the string to a number.\n\t specificity.val = '';\n\t\n\t for (var i=0; i<segments.length; i++) {\n\t var segment = segments[i], match;\n\t\n\t if (match = segment.match(/^:([^\\/]+)$/)) {\n\t results[i] = new $$route$recognizer$$DynamicSegment(match[1]);\n\t names.push(match[1]);\n\t specificity.val += '3';\n\t } else if (match = segment.match(/^\\*([^\\/]+)$/)) {\n\t results[i] = new $$route$recognizer$$StarSegment(match[1]);\n\t specificity.val += '1';\n\t names.push(match[1]);\n\t } else if(segment === \"\") {\n\t results[i] = new $$route$recognizer$$EpsilonSegment();\n\t specificity.val += '2';\n\t } else {\n\t results[i] = new $$route$recognizer$$StaticSegment(segment);\n\t specificity.val += '4';\n\t }\n\t }\n\t\n\t specificity.val = +specificity.val;\n\t\n\t return results;\n\t }\n\t\n\t // A State has a character specification and (`charSpec`) and a list of possible\n\t // subsequent states (`nextStates`).\n\t //\n\t // If a State is an accepting state, it will also have several additional\n\t // properties:\n\t //\n\t // * `regex`: A regular expression that is used to extract parameters from paths\n\t // that reached this accepting state.\n\t // * `handlers`: Information on how to convert the list of captures into calls\n\t // to registered handlers with the specified parameters\n\t // * `types`: How many static, dynamic or star segments in this route. Used to\n\t // decide which route to use if multiple registered routes match a path.\n\t //\n\t // Currently, State is implemented naively by looping over `nextStates` and\n\t // comparing a character specification against a character. A more efficient\n\t // implementation would use a hash of keys pointing at one or more next states.\n\t\n\t function $$route$recognizer$$State(charSpec) {\n\t this.charSpec = charSpec;\n\t this.nextStates = [];\n\t this.charSpecs = {};\n\t this.regex = undefined;\n\t this.handlers = undefined;\n\t this.specificity = undefined;\n\t }\n\t\n\t $$route$recognizer$$State.prototype = {\n\t get: function(charSpec) {\n\t if (this.charSpecs[charSpec.validChars]) {\n\t return this.charSpecs[charSpec.validChars];\n\t }\n\t\n\t var nextStates = this.nextStates;\n\t\n\t for (var i=0; i<nextStates.length; i++) {\n\t var child = nextStates[i];\n\t\n\t var isEqual = child.charSpec.validChars === charSpec.validChars;\n\t isEqual = isEqual && child.charSpec.invalidChars === charSpec.invalidChars;\n\t\n\t if (isEqual) {\n\t this.charSpecs[charSpec.validChars] = child;\n\t return child;\n\t }\n\t }\n\t },\n\t\n\t put: function(charSpec) {\n\t var state;\n\t\n\t // If the character specification already exists in a child of the current\n\t // state, just return that state.\n\t if (state = this.get(charSpec)) { return state; }\n\t\n\t // Make a new state for the character spec\n\t state = new $$route$recognizer$$State(charSpec);\n\t\n\t // Insert the new state as a child of the current state\n\t this.nextStates.push(state);\n\t\n\t // If this character specification repeats, insert the new state as a child\n\t // of itself. Note that this will not trigger an infinite loop because each\n\t // transition during recognition consumes a character.\n\t if (charSpec.repeat) {\n\t state.nextStates.push(state);\n\t }\n\t\n\t // Return the new state\n\t return state;\n\t },\n\t\n\t // Find a list of child states matching the next character\n\t match: function(ch) {\n\t var nextStates = this.nextStates,\n\t child, charSpec, chars;\n\t\n\t var returned = [];\n\t\n\t for (var i=0; i<nextStates.length; i++) {\n\t child = nextStates[i];\n\t\n\t charSpec = child.charSpec;\n\t\n\t if (typeof (chars = charSpec.validChars) !== 'undefined') {\n\t if (chars.indexOf(ch) !== -1) { returned.push(child); }\n\t } else if (typeof (chars = charSpec.invalidChars) !== 'undefined') {\n\t if (chars.indexOf(ch) === -1) { returned.push(child); }\n\t }\n\t }\n\t\n\t return returned;\n\t }\n\t };\n\t\n\t // Sort the routes by specificity\n\t function $$route$recognizer$$sortSolutions(states) {\n\t return states.sort(function(a, b) {\n\t return b.specificity.val - a.specificity.val;\n\t });\n\t }\n\t\n\t function $$route$recognizer$$recognizeChar(states, ch) {\n\t var nextStates = [];\n\t\n\t for (var i=0, l=states.length; i<l; i++) {\n\t var state = states[i];\n\t\n\t nextStates = nextStates.concat(state.match(ch));\n\t }\n\t\n\t return nextStates;\n\t }\n\t\n\t var $$route$recognizer$$oCreate = Object.create || function(proto) {\n\t function F() {}\n\t F.prototype = proto;\n\t return new F();\n\t };\n\t\n\t function $$route$recognizer$$RecognizeResults(queryParams) {\n\t this.queryParams = queryParams || {};\n\t }\n\t $$route$recognizer$$RecognizeResults.prototype = $$route$recognizer$$oCreate({\n\t splice: Array.prototype.splice,\n\t slice: Array.prototype.slice,\n\t push: Array.prototype.push,\n\t length: 0,\n\t queryParams: null\n\t });\n\t\n\t function $$route$recognizer$$findHandler(state, path, queryParams) {\n\t var handlers = state.handlers, regex = state.regex;\n\t var captures = path.match(regex), currentCapture = 1;\n\t var result = new $$route$recognizer$$RecognizeResults(queryParams);\n\t\n\t result.length = handlers.length;\n\t\n\t for (var i=0; i<handlers.length; i++) {\n\t var handler = handlers[i], names = handler.names, params = {};\n\t\n\t for (var j=0; j<names.length; j++) {\n\t params[names[j]] = captures[currentCapture++];\n\t }\n\t\n\t result[i] = { handler: handler.handler, params: params, isDynamic: !!names.length };\n\t }\n\t\n\t return result;\n\t }\n\t\n\t function $$route$recognizer$$decodeQueryParamPart(part) {\n\t // http://www.w3.org/TR/html401/interact/forms.html#h-17.13.4.1\n\t part = part.replace(/\\+/gm, '%20');\n\t var result;\n\t try {\n\t result = decodeURIComponent(part);\n\t } catch(error) {result = '';}\n\t return result;\n\t }\n\t\n\t // The main interface\n\t\n\t var $$route$recognizer$$RouteRecognizer = function() {\n\t this.rootState = new $$route$recognizer$$State();\n\t this.names = {};\n\t };\n\t\n\t\n\t $$route$recognizer$$RouteRecognizer.prototype = {\n\t add: function(routes, options) {\n\t var currentState = this.rootState, regex = \"^\",\n\t specificity = {},\n\t handlers = new Array(routes.length), allSegments = [], name;\n\t\n\t var isEmpty = true;\n\t\n\t for (var i=0; i<routes.length; i++) {\n\t var route = routes[i], names = [];\n\t\n\t var segments = $$route$recognizer$$parse(route.path, names, specificity);\n\t\n\t allSegments = allSegments.concat(segments);\n\t\n\t for (var j=0; j<segments.length; j++) {\n\t var segment = segments[j];\n\t\n\t if (segment instanceof $$route$recognizer$$EpsilonSegment) { continue; }\n\t\n\t isEmpty = false;\n\t\n\t // Add a \"/\" for the new segment\n\t currentState = currentState.put({ invalidChars: undefined, repeat: false, validChars: \"/\" });\n\t regex += \"/\";\n\t\n\t // Add a representation of the segment to the NFA and regex\n\t currentState = segment.eachChar(currentState);\n\t regex += segment.regex();\n\t }\n\t var handler = { handler: route.handler, names: names };\n\t handlers[i] = handler;\n\t }\n\t\n\t if (isEmpty) {\n\t currentState = currentState.put({ invalidChars: undefined, repeat: false, validChars: \"/\" });\n\t regex += \"/\";\n\t }\n\t\n\t currentState.handlers = handlers;\n\t currentState.regex = new RegExp(regex + \"$\");\n\t currentState.specificity = specificity;\n\t\n\t if (name = options && options.as) {\n\t this.names[name] = {\n\t segments: allSegments,\n\t handlers: handlers\n\t };\n\t }\n\t },\n\t\n\t handlersFor: function(name) {\n\t var route = this.names[name];\n\t\n\t if (!route) { throw new Error(\"There is no route named \" + name); }\n\t\n\t var result = new Array(route.handlers.length);\n\t\n\t for (var i=0; i<route.handlers.length; i++) {\n\t result[i] = route.handlers[i];\n\t }\n\t\n\t return result;\n\t },\n\t\n\t hasRoute: function(name) {\n\t return !!this.names[name];\n\t },\n\t\n\t generate: function(name, params) {\n\t var route = this.names[name], output = \"\";\n\t if (!route) { throw new Error(\"There is no route named \" + name); }\n\t\n\t var segments = route.segments;\n\t\n\t for (var i=0; i<segments.length; i++) {\n\t var segment = segments[i];\n\t\n\t if (segment instanceof $$route$recognizer$$EpsilonSegment) { continue; }\n\t\n\t output += \"/\";\n\t output += segment.generate(params);\n\t }\n\t\n\t if (output.charAt(0) !== '/') { output = '/' + output; }\n\t\n\t if (params && params.queryParams) {\n\t output += this.generateQueryString(params.queryParams, route.handlers);\n\t }\n\t\n\t return output;\n\t },\n\t\n\t generateQueryString: function(params, handlers) {\n\t var pairs = [];\n\t var keys = [];\n\t for(var key in params) {\n\t if (params.hasOwnProperty(key)) {\n\t keys.push(key);\n\t }\n\t }\n\t keys.sort();\n\t for (var i = 0; i < keys.length; i++) {\n\t key = keys[i];\n\t var value = params[key];\n\t if (value == null) {\n\t continue;\n\t }\n\t var pair = encodeURIComponent(key);\n\t if ($$route$recognizer$$isArray(value)) {\n\t for (var j = 0; j < value.length; j++) {\n\t var arrayPair = key + '[]' + '=' + encodeURIComponent(value[j]);\n\t pairs.push(arrayPair);\n\t }\n\t } else {\n\t pair += \"=\" + encodeURIComponent(value);\n\t pairs.push(pair);\n\t }\n\t }\n\t\n\t if (pairs.length === 0) { return ''; }\n\t\n\t return \"?\" + pairs.join(\"&\");\n\t },\n\t\n\t parseQueryString: function(queryString) {\n\t var pairs = queryString.split(\"&\"), queryParams = {};\n\t for(var i=0; i < pairs.length; i++) {\n\t var pair = pairs[i].split('='),\n\t key = $$route$recognizer$$decodeQueryParamPart(pair[0]),\n\t keyLength = key.length,\n\t isArray = false,\n\t value;\n\t if (pair.length === 1) {\n\t value = 'true';\n\t } else {\n\t //Handle arrays\n\t if (keyLength > 2 && key.slice(keyLength -2) === '[]') {\n\t isArray = true;\n\t key = key.slice(0, keyLength - 2);\n\t if(!queryParams[key]) {\n\t queryParams[key] = [];\n\t }\n\t }\n\t value = pair[1] ? $$route$recognizer$$decodeQueryParamPart(pair[1]) : '';\n\t }\n\t if (isArray) {\n\t queryParams[key].push(value);\n\t } else {\n\t queryParams[key] = value;\n\t }\n\t }\n\t return queryParams;\n\t },\n\t\n\t recognize: function(path) {\n\t var states = [ this.rootState ],\n\t pathLen, i, l, queryStart, queryParams = {},\n\t isSlashDropped = false;\n\t\n\t queryStart = path.indexOf('?');\n\t if (queryStart !== -1) {\n\t var queryString = path.substr(queryStart + 1, path.length);\n\t path = path.substr(0, queryStart);\n\t queryParams = this.parseQueryString(queryString);\n\t }\n\t\n\t path = decodeURI(path);\n\t\n\t if (path.charAt(0) !== \"/\") { path = \"/\" + path; }\n\t\n\t pathLen = path.length;\n\t if (pathLen > 1 && path.charAt(pathLen - 1) === \"/\") {\n\t path = path.substr(0, pathLen - 1);\n\t isSlashDropped = true;\n\t }\n\t\n\t for (i=0; i<path.length; i++) {\n\t states = $$route$recognizer$$recognizeChar(states, path.charAt(i));\n\t if (!states.length) { break; }\n\t }\n\t\n\t var solutions = [];\n\t for (i=0; i<states.length; i++) {\n\t if (states[i].handlers) { solutions.push(states[i]); }\n\t }\n\t\n\t states = $$route$recognizer$$sortSolutions(solutions);\n\t\n\t var state = solutions[0];\n\t\n\t if (state && state.handlers) {\n\t // if a trailing slash was dropped and a star segment is the last segment\n\t // specified, put the trailing slash back\n\t if (isSlashDropped && state.regex.source.slice(-5) === \"(.+)$\") {\n\t path = path + \"/\";\n\t }\n\t return $$route$recognizer$$findHandler(state, path, queryParams);\n\t }\n\t }\n\t };\n\t\n\t $$route$recognizer$$RouteRecognizer.prototype.map = $$route$recognizer$dsl$$default;\n\t\n\t $$route$recognizer$$RouteRecognizer.VERSION = '0.1.11';\n\t\n\t var $$route$recognizer$$default = $$route$recognizer$$RouteRecognizer;\n\t\n\t /* global define:true module:true window: true */\n\t if ( true && __webpack_require__(3)['amd']) {\n\t !(__WEBPACK_AMD_DEFINE_RESULT__ = function() { return $$route$recognizer$$default; }.call(exports, __webpack_require__, exports, module), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n\t } else if (typeof module !== 'undefined' && module['exports']) {\n\t module['exports'] = $$route$recognizer$$default;\n\t } else if (typeof this !== 'undefined') {\n\t this['RouteRecognizer'] = $$route$recognizer$$default;\n\t }\n\t}).call(this);\n\t\n\t//# sourceMappingURL=route-recognizer.js.map\n\t/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(2)(module)))\n\n/***/ },\n/* 2 */\n/***/ function(module, exports) {\n\n\tmodule.exports = function(module) {\r\n\t\tif(!module.webpackPolyfill) {\r\n\t\t\tmodule.deprecate = function() {};\r\n\t\t\tmodule.paths = [];\r\n\t\t\t// module.parent = undefined by default\r\n\t\t\tmodule.children = [];\r\n\t\t\tmodule.webpackPolyfill = 1;\r\n\t\t}\r\n\t\treturn module;\r\n\t}\r\n\n\n/***/ },\n/* 3 */\n/***/ function(module, exports) {\n\n\tmodule.exports = function() { throw new Error(\"define cannot be used indirect\"); };\r\n\n\n/***/ }\n/******/ ])\n});\n;\n//# sourceMappingURL=router.js.map\n\n/***/ }),\n\n/***/ \"./node_modules/process/browser.js\":\n/*!*****************************************!*\\\n !*** ./node_modules/process/browser.js ***!\n \\*****************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\n// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n\n\n/***/ }),\n\n/***/ \"./node_modules/util/node_modules/inherits/inherits_browser.js\":\n/*!*********************************************************************!*\\\n !*** ./node_modules/util/node_modules/inherits/inherits_browser.js ***!\n \\*********************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nif (typeof Object.create === 'function') {\n // implementation from standard node.js 'util' module\n module.exports = function inherits(ctor, superCtor) {\n ctor.super_ = superCtor\n ctor.prototype = Object.create(superCtor.prototype, {\n constructor: {\n value: ctor,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n };\n} else {\n // old school shim for old browsers\n module.exports = function inherits(ctor, superCtor) {\n ctor.super_ = superCtor\n var TempCtor = function () {}\n TempCtor.prototype = superCtor.prototype\n ctor.prototype = new TempCtor()\n ctor.prototype.constructor = ctor\n }\n}\n\n\n/***/ }),\n\n/***/ \"./node_modules/util/support/isBufferBrowser.js\":\n/*!******************************************************!*\\\n !*** ./node_modules/util/support/isBufferBrowser.js ***!\n \\******************************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nmodule.exports = function isBuffer(arg) {\n return arg && typeof arg === 'object'\n && typeof arg.copy === 'function'\n && typeof arg.fill === 'function'\n && typeof arg.readUInt8 === 'function';\n}\n\n/***/ }),\n\n/***/ \"./node_modules/util/util.js\":\n/*!***********************************!*\\\n !*** ./node_modules/util/util.js ***!\n \\***********************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n/* WEBPACK VAR INJECTION */(function(process) {// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\nvar getOwnPropertyDescriptors = Object.getOwnPropertyDescriptors ||\n function getOwnPropertyDescriptors(obj) {\n var keys = Object.keys(obj);\n var descriptors = {};\n for (var i = 0; i < keys.length; i++) {\n descriptors[keys[i]] = Object.getOwnPropertyDescriptor(obj, keys[i]);\n }\n return descriptors;\n };\n\nvar formatRegExp = /%[sdj%]/g;\nexports.format = function(f) {\n if (!isString(f)) {\n var objects = [];\n for (var i = 0; i < arguments.length; i++) {\n objects.push(inspect(arguments[i]));\n }\n return objects.join(' ');\n }\n\n var i = 1;\n var args = arguments;\n var len = args.length;\n var str = String(f).replace(formatRegExp, function(x) {\n if (x === '%%') return '%';\n if (i >= len) return x;\n switch (x) {\n case '%s': return String(args[i++]);\n case '%d': return Number(args[i++]);\n case '%j':\n try {\n return JSON.stringify(args[i++]);\n } catch (_) {\n return '[Circular]';\n }\n default:\n return x;\n }\n });\n for (var x = args[i]; i < len; x = args[++i]) {\n if (isNull(x) || !isObject(x)) {\n str += ' ' + x;\n } else {\n str += ' ' + inspect(x);\n }\n }\n return str;\n};\n\n\n// Mark that a method should not be used.\n// Returns a modified function which warns once by default.\n// If --no-deprecation is set, then it is a no-op.\nexports.deprecate = function(fn, msg) {\n if (typeof process !== 'undefined' && process.noDeprecation === true) {\n return fn;\n }\n\n // Allow for deprecating things in the process of starting up.\n if (typeof process === 'undefined') {\n return function() {\n return exports.deprecate(fn, msg).apply(this, arguments);\n };\n }\n\n var warned = false;\n function deprecated() {\n if (!warned) {\n if (process.throwDeprecation) {\n throw new Error(msg);\n } else if (process.traceDeprecation) {\n console.trace(msg);\n } else {\n console.error(msg);\n }\n warned = true;\n }\n return fn.apply(this, arguments);\n }\n\n return deprecated;\n};\n\n\nvar debugs = {};\nvar debugEnviron;\nexports.debuglog = function(set) {\n if (isUndefined(debugEnviron))\n debugEnviron = process.env.NODE_DEBUG || '';\n set = set.toUpperCase();\n if (!debugs[set]) {\n if (new RegExp('\\\\b' + set + '\\\\b', 'i').test(debugEnviron)) {\n var pid = process.pid;\n debugs[set] = function() {\n var msg = exports.format.apply(exports, arguments);\n console.error('%s %d: %s', set, pid, msg);\n };\n } else {\n debugs[set] = function() {};\n }\n }\n return debugs[set];\n};\n\n\n/**\n * Echos the value of a value. Trys to print the value out\n * in the best way possible given the different types.\n *\n * @param {Object} obj The object to print out.\n * @param {Object} opts Optional options object that alters the output.\n */\n/* legacy: obj, showHidden, depth, colors*/\nfunction inspect(obj, opts) {\n // default options\n var ctx = {\n seen: [],\n stylize: stylizeNoColor\n };\n // legacy...\n if (arguments.length >= 3) ctx.depth = arguments[2];\n if (arguments.length >= 4) ctx.colors = arguments[3];\n if (isBoolean(opts)) {\n // legacy...\n ctx.showHidden = opts;\n } else if (opts) {\n // got an \"options\" object\n exports._extend(ctx, opts);\n }\n // set default options\n if (isUndefined(ctx.showHidden)) ctx.showHidden = false;\n if (isUndefined(ctx.depth)) ctx.depth = 2;\n if (isUndefined(ctx.colors)) ctx.colors = false;\n if (isUndefined(ctx.customInspect)) ctx.customInspect = true;\n if (ctx.colors) ctx.stylize = stylizeWithColor;\n return formatValue(ctx, obj, ctx.depth);\n}\nexports.inspect = inspect;\n\n\n// http://en.wikipedia.org/wiki/ANSI_escape_code#graphics\ninspect.colors = {\n 'bold' : [1, 22],\n 'italic' : [3, 23],\n 'underline' : [4, 24],\n 'inverse' : [7, 27],\n 'white' : [37, 39],\n 'grey' : [90, 39],\n 'black' : [30, 39],\n 'blue' : [34, 39],\n 'cyan' : [36, 39],\n 'green' : [32, 39],\n 'magenta' : [35, 39],\n 'red' : [31, 39],\n 'yellow' : [33, 39]\n};\n\n// Don't use 'blue' not visible on cmd.exe\ninspect.styles = {\n 'special': 'cyan',\n 'number': 'yellow',\n 'boolean': 'yellow',\n 'undefined': 'grey',\n 'null': 'bold',\n 'string': 'green',\n 'date': 'magenta',\n // \"name\": intentionally not styling\n 'regexp': 'red'\n};\n\n\nfunction stylizeWithColor(str, styleType) {\n var style = inspect.styles[styleType];\n\n if (style) {\n return '\\u001b[' + inspect.colors[style][0] + 'm' + str +\n '\\u001b[' + inspect.colors[style][1] + 'm';\n } else {\n return str;\n }\n}\n\n\nfunction stylizeNoColor(str, styleType) {\n return str;\n}\n\n\nfunction arrayToHash(array) {\n var hash = {};\n\n array.forEach(function(val, idx) {\n hash[val] = true;\n });\n\n return hash;\n}\n\n\nfunction formatValue(ctx, value, recurseTimes) {\n // Provide a hook for user-specified inspect functions.\n // Check that value is an object with an inspect function on it\n if (ctx.customInspect &&\n value &&\n isFunction(value.inspect) &&\n // Filter out the util module, it's inspect function is special\n value.inspect !== exports.inspect &&\n // Also filter out any prototype objects using the circular check.\n !(value.constructor && value.constructor.prototype === value)) {\n var ret = value.inspect(recurseTimes, ctx);\n if (!isString(ret)) {\n ret = formatValue(ctx, ret, recurseTimes);\n }\n return ret;\n }\n\n // Primitive types cannot have properties\n var primitive = formatPrimitive(ctx, value);\n if (primitive) {\n return primitive;\n }\n\n // Look up the keys of the object.\n var keys = Object.keys(value);\n var visibleKeys = arrayToHash(keys);\n\n if (ctx.showHidden) {\n keys = Object.getOwnPropertyNames(value);\n }\n\n // IE doesn't make error fields non-enumerable\n // http://msdn.microsoft.com/en-us/library/ie/dww52sbt(v=vs.94).aspx\n if (isError(value)\n && (keys.indexOf('message') >= 0 || keys.indexOf('description') >= 0)) {\n return formatError(value);\n }\n\n // Some type of object without properties can be shortcutted.\n if (keys.length === 0) {\n if (isFunction(value)) {\n var name = value.name ? ': ' + value.name : '';\n return ctx.stylize('[Function' + name + ']', 'special');\n }\n if (isRegExp(value)) {\n return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');\n }\n if (isDate(value)) {\n return ctx.stylize(Date.prototype.toString.call(value), 'date');\n }\n if (isError(value)) {\n return formatError(value);\n }\n }\n\n var base = '', array = false, braces = ['{', '}'];\n\n // Make Array say that they are Array\n if (isArray(value)) {\n array = true;\n braces = ['[', ']'];\n }\n\n // Make functions say that they are functions\n if (isFunction(value)) {\n var n = value.name ? ': ' + value.name : '';\n base = ' [Function' + n + ']';\n }\n\n // Make RegExps say that they are RegExps\n if (isRegExp(value)) {\n base = ' ' + RegExp.prototype.toString.call(value);\n }\n\n // Make dates with properties first say the date\n if (isDate(value)) {\n base = ' ' + Date.prototype.toUTCString.call(value);\n }\n\n // Make error with message first say the error\n if (isError(value)) {\n base = ' ' + formatError(value);\n }\n\n if (keys.length === 0 && (!array || value.length == 0)) {\n return braces[0] + base + braces[1];\n }\n\n if (recurseTimes < 0) {\n if (isRegExp(value)) {\n return ctx.stylize(RegExp.prototype.toString.call(value), 'regexp');\n } else {\n return ctx.stylize('[Object]', 'special');\n }\n }\n\n ctx.seen.push(value);\n\n var output;\n if (array) {\n output = formatArray(ctx, value, recurseTimes, visibleKeys, keys);\n } else {\n output = keys.map(function(key) {\n return formatProperty(ctx, value, recurseTimes, visibleKeys, key, array);\n });\n }\n\n ctx.seen.pop();\n\n return reduceToSingleString(output, base, braces);\n}\n\n\nfunction formatPrimitive(ctx, value) {\n if (isUndefined(value))\n return ctx.stylize('undefined', 'undefined');\n if (isString(value)) {\n var simple = '\\'' + JSON.stringify(value).replace(/^\"|\"$/g, '')\n .replace(/'/g, \"\\\\'\")\n .replace(/\\\\\"/g, '\"') + '\\'';\n return ctx.stylize(simple, 'string');\n }\n if (isNumber(value))\n return ctx.stylize('' + value, 'number');\n if (isBoolean(value))\n return ctx.stylize('' + value, 'boolean');\n // For some reason typeof null is \"object\", so special case here.\n if (isNull(value))\n return ctx.stylize('null', 'null');\n}\n\n\nfunction formatError(value) {\n return '[' + Error.prototype.toString.call(value) + ']';\n}\n\n\nfunction formatArray(ctx, value, recurseTimes, visibleKeys, keys) {\n var output = [];\n for (var i = 0, l = value.length; i < l; ++i) {\n if (hasOwnProperty(value, String(i))) {\n output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,\n String(i), true));\n } else {\n output.push('');\n }\n }\n keys.forEach(function(key) {\n if (!key.match(/^\\d+$/)) {\n output.push(formatProperty(ctx, value, recurseTimes, visibleKeys,\n key, true));\n }\n });\n return output;\n}\n\n\nfunction formatProperty(ctx, value, recurseTimes, visibleKeys, key, array) {\n var name, str, desc;\n desc = Object.getOwnPropertyDescriptor(value, key) || { value: value[key] };\n if (desc.get) {\n if (desc.set) {\n str = ctx.stylize('[Getter/Setter]', 'special');\n } else {\n str = ctx.stylize('[Getter]', 'special');\n }\n } else {\n if (desc.set) {\n str = ctx.stylize('[Setter]', 'special');\n }\n }\n if (!hasOwnProperty(visibleKeys, key)) {\n name = '[' + key + ']';\n }\n if (!str) {\n if (ctx.seen.indexOf(desc.value) < 0) {\n if (isNull(recurseTimes)) {\n str = formatValue(ctx, desc.value, null);\n } else {\n str = formatValue(ctx, desc.value, recurseTimes - 1);\n }\n if (str.indexOf('\\n') > -1) {\n if (array) {\n str = str.split('\\n').map(function(line) {\n return ' ' + line;\n }).join('\\n').substr(2);\n } else {\n str = '\\n' + str.split('\\n').map(function(line) {\n return ' ' + line;\n }).join('\\n');\n }\n }\n } else {\n str = ctx.stylize('[Circular]', 'special');\n }\n }\n if (isUndefined(name)) {\n if (array && key.match(/^\\d+$/)) {\n return str;\n }\n name = JSON.stringify('' + key);\n if (name.match(/^\"([a-zA-Z_][a-zA-Z_0-9]*)\"$/)) {\n name = name.substr(1, name.length - 2);\n name = ctx.stylize(name, 'name');\n } else {\n name = name.replace(/'/g, \"\\\\'\")\n .replace(/\\\\\"/g, '\"')\n .replace(/(^\"|\"$)/g, \"'\");\n name = ctx.stylize(name, 'string');\n }\n }\n\n return name + ': ' + str;\n}\n\n\nfunction reduceToSingleString(output, base, braces) {\n var numLinesEst = 0;\n var length = output.reduce(function(prev, cur) {\n numLinesEst++;\n if (cur.indexOf('\\n') >= 0) numLinesEst++;\n return prev + cur.replace(/\\u001b\\[\\d\\d?m/g, '').length + 1;\n }, 0);\n\n if (length > 60) {\n return braces[0] +\n (base === '' ? '' : base + '\\n ') +\n ' ' +\n output.join(',\\n ') +\n ' ' +\n braces[1];\n }\n\n return braces[0] + base + ' ' + output.join(', ') + ' ' + braces[1];\n}\n\n\n// NOTE: These type checking functions intentionally don't use `instanceof`\n// because it is fragile and can be easily faked with `Object.create()`.\nfunction isArray(ar) {\n return Array.isArray(ar);\n}\nexports.isArray = isArray;\n\nfunction isBoolean(arg) {\n return typeof arg === 'boolean';\n}\nexports.isBoolean = isBoolean;\n\nfunction isNull(arg) {\n return arg === null;\n}\nexports.isNull = isNull;\n\nfunction isNullOrUndefined(arg) {\n return arg == null;\n}\nexports.isNullOrUndefined = isNullOrUndefined;\n\nfunction isNumber(arg) {\n return typeof arg === 'number';\n}\nexports.isNumber = isNumber;\n\nfunction isString(arg) {\n return typeof arg === 'string';\n}\nexports.isString = isString;\n\nfunction isSymbol(arg) {\n return typeof arg === 'symbol';\n}\nexports.isSymbol = isSymbol;\n\nfunction isUndefined(arg) {\n return arg === void 0;\n}\nexports.isUndefined = isUndefined;\n\nfunction isRegExp(re) {\n return isObject(re) && objectToString(re) === '[object RegExp]';\n}\nexports.isRegExp = isRegExp;\n\nfunction isObject(arg) {\n return typeof arg === 'object' && arg !== null;\n}\nexports.isObject = isObject;\n\nfunction isDate(d) {\n return isObject(d) && objectToString(d) === '[object Date]';\n}\nexports.isDate = isDate;\n\nfunction isError(e) {\n return isObject(e) &&\n (objectToString(e) === '[object Error]' || e instanceof Error);\n}\nexports.isError = isError;\n\nfunction isFunction(arg) {\n return typeof arg === 'function';\n}\nexports.isFunction = isFunction;\n\nfunction isPrimitive(arg) {\n return arg === null ||\n typeof arg === 'boolean' ||\n typeof arg === 'number' ||\n typeof arg === 'string' ||\n typeof arg === 'symbol' || // ES6 symbol\n typeof arg === 'undefined';\n}\nexports.isPrimitive = isPrimitive;\n\nexports.isBuffer = __webpack_require__(/*! ./support/isBuffer */ \"./node_modules/util/support/isBufferBrowser.js\");\n\nfunction objectToString(o) {\n return Object.prototype.toString.call(o);\n}\n\n\nfunction pad(n) {\n return n < 10 ? '0' + n.toString(10) : n.toString(10);\n}\n\n\nvar months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep',\n 'Oct', 'Nov', 'Dec'];\n\n// 26 Feb 16:19:34\nfunction timestamp() {\n var d = new Date();\n var time = [pad(d.getHours()),\n pad(d.getMinutes()),\n pad(d.getSeconds())].join(':');\n return [d.getDate(), months[d.getMonth()], time].join(' ');\n}\n\n\n// log is just a thin wrapper to console.log that prepends a timestamp\nexports.log = function() {\n console.log('%s - %s', timestamp(), exports.format.apply(exports, arguments));\n};\n\n\n/**\n * Inherit the prototype methods from one constructor into another.\n *\n * The Function.prototype.inherits from lang.js rewritten as a standalone\n * function (not on Function.prototype). NOTE: If this file is to be loaded\n * during bootstrapping this function needs to be rewritten using some native\n * functions as prototype setup using normal JavaScript does not work as\n * expected during bootstrapping (see mirror.js in r114903).\n *\n * @param {function} ctor Constructor function which needs to inherit the\n * prototype.\n * @param {function} superCtor Constructor function to inherit prototype from.\n */\nexports.inherits = __webpack_require__(/*! inherits */ \"./node_modules/util/node_modules/inherits/inherits_browser.js\");\n\nexports._extend = function(origin, add) {\n // Don't do anything if add isn't an object\n if (!add || !isObject(add)) return origin;\n\n var keys = Object.keys(add);\n var i = keys.length;\n while (i--) {\n origin[keys[i]] = add[keys[i]];\n }\n return origin;\n};\n\nfunction hasOwnProperty(obj, prop) {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n}\n\nvar kCustomPromisifiedSymbol = typeof Symbol !== 'undefined' ? Symbol('util.promisify.custom') : undefined;\n\nexports.promisify = function promisify(original) {\n if (typeof original !== 'function')\n throw new TypeError('The \"original\" argument must be of type Function');\n\n if (kCustomPromisifiedSymbol && original[kCustomPromisifiedSymbol]) {\n var fn = original[kCustomPromisifiedSymbol];\n if (typeof fn !== 'function') {\n throw new TypeError('The \"util.promisify.custom\" argument must be of type Function');\n }\n Object.defineProperty(fn, kCustomPromisifiedSymbol, {\n value: fn, enumerable: false, writable: false, configurable: true\n });\n return fn;\n }\n\n function fn() {\n var promiseResolve, promiseReject;\n var promise = new Promise(function (resolve, reject) {\n promiseResolve = resolve;\n promiseReject = reject;\n });\n\n var args = [];\n for (var i = 0; i < arguments.length; i++) {\n args.push(arguments[i]);\n }\n args.push(function (err, value) {\n if (err) {\n promiseReject(err);\n } else {\n promiseResolve(value);\n }\n });\n\n try {\n original.apply(this, args);\n } catch (err) {\n promiseReject(err);\n }\n\n return promise;\n }\n\n Object.setPrototypeOf(fn, Object.getPrototypeOf(original));\n\n if (kCustomPromisifiedSymbol) Object.defineProperty(fn, kCustomPromisifiedSymbol, {\n value: fn, enumerable: false, writable: false, configurable: true\n });\n return Object.defineProperties(\n fn,\n getOwnPropertyDescriptors(original)\n );\n}\n\nexports.promisify.custom = kCustomPromisifiedSymbol\n\nfunction callbackifyOnRejected(reason, cb) {\n // `!reason` guard inspired by bluebird (Ref: https://goo.gl/t5IS6M).\n // Because `null` is a special error value in callbacks which means \"no error\n // occurred\", we error-wrap so the callback consumer can distinguish between\n // \"the promise rejected with null\" or \"the promise fulfilled with undefined\".\n if (!reason) {\n var newReason = new Error('Promise was rejected with a falsy value');\n newReason.reason = reason;\n reason = newReason;\n }\n return cb(reason);\n}\n\nfunction callbackify(original) {\n if (typeof original !== 'function') {\n throw new TypeError('The \"original\" argument must be of type Function');\n }\n\n // We DO NOT return the promise as it gives the user a false sense that\n // the promise is actually somehow related to the callback's execution\n // and that the callback throwing will reject the promise.\n function callbackified() {\n var args = [];\n for (var i = 0; i < arguments.length; i++) {\n args.push(arguments[i]);\n }\n\n var maybeCb = args.pop();\n if (typeof maybeCb !== 'function') {\n throw new TypeError('The last argument must be of type Function');\n }\n var self = this;\n var cb = function() {\n return maybeCb.apply(self, arguments);\n };\n // In true node style we process the callback on `nextTick` with all the\n // implications (stack, `uncaughtException`, `async_hooks`)\n original.apply(this, args)\n .then(function(ret) { process.nextTick(cb, null, ret) },\n function(rej) { process.nextTick(callbackifyOnRejected, rej, cb) });\n }\n\n Object.setPrototypeOf(callbackified, Object.getPrototypeOf(original));\n Object.defineProperties(callbackified,\n getOwnPropertyDescriptors(original));\n return callbackified;\n}\nexports.callbackify = callbackify;\n\n/* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(/*! ./../process/browser.js */ \"./node_modules/process/browser.js\")))\n\n/***/ }),\n\n/***/ \"./node_modules/webpack/buildin/global.js\":\n/*!***********************************!*\\\n !*** (webpack)/buildin/global.js ***!\n \\***********************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\nvar g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n\n\n/***/ }),\n\n/***/ \"./node_modules/window-post-message-proxy/dist/windowPostMessageProxy.js\":\n/*!*******************************************************************************!*\\\n !*** ./node_modules/window-post-message-proxy/dist/windowPostMessageProxy.js ***!\n \\*******************************************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n/*! window-post-message-proxy v0.2.6 | (c) 2016 Microsoft Corporation MIT */\n(function webpackUniversalModuleDefinition(root, factory) {\n\tif(true)\n\t\tmodule.exports = factory();\n\telse {}\n})(this, function() {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId])\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\texports: {},\n/******/ \t\t\tid: moduleId,\n/******/ \t\t\tloaded: false\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.loaded = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(0);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports) {\n\n\t\"use strict\";\r\n\tvar WindowPostMessageProxy = (function () {\r\n\t function WindowPostMessageProxy(options) {\r\n\t var _this = this;\r\n\t if (options === void 0) { options = {\r\n\t processTrackingProperties: {\r\n\t addTrackingProperties: WindowPostMessageProxy.defaultAddTrackingProperties,\r\n\t getTrackingProperties: WindowPostMessageProxy.defaultGetTrackingProperties\r\n\t },\r\n\t isErrorMessage: WindowPostMessageProxy.defaultIsErrorMessage,\r\n\t receiveWindow: window,\r\n\t name: WindowPostMessageProxy.createRandomString()\r\n\t }; }\r\n\t this.pendingRequestPromises = {};\r\n\t // save options with defaults\r\n\t this.addTrackingProperties = (options.processTrackingProperties && options.processTrackingProperties.addTrackingProperties) || WindowPostMessageProxy.defaultAddTrackingProperties;\r\n\t this.getTrackingProperties = (options.processTrackingProperties && options.processTrackingProperties.getTrackingProperties) || WindowPostMessageProxy.defaultGetTrackingProperties;\r\n\t this.isErrorMessage = options.isErrorMessage || WindowPostMessageProxy.defaultIsErrorMessage;\r\n\t this.receiveWindow = options.receiveWindow || window;\r\n\t this.name = options.name || WindowPostMessageProxy.createRandomString();\r\n\t this.logMessages = options.logMessages || false;\r\n\t this.eventSourceOverrideWindow = options.eventSourceOverrideWindow;\r\n\t this.suppressWarnings = options.suppressWarnings || false;\r\n\t if (this.logMessages) {\r\n\t console.log(\"new WindowPostMessageProxy created with name: \" + this.name + \" receiving on window: \" + this.receiveWindow.document.title);\r\n\t }\r\n\t // Initialize\r\n\t this.handlers = [];\r\n\t this.windowMessageHandler = function (event) { return _this.onMessageReceived(event); };\r\n\t this.start();\r\n\t }\r\n\t // Static\r\n\t WindowPostMessageProxy.defaultAddTrackingProperties = function (message, trackingProperties) {\r\n\t message[WindowPostMessageProxy.messagePropertyName] = trackingProperties;\r\n\t return message;\r\n\t };\r\n\t WindowPostMessageProxy.defaultGetTrackingProperties = function (message) {\r\n\t return message[WindowPostMessageProxy.messagePropertyName];\r\n\t };\r\n\t WindowPostMessageProxy.defaultIsErrorMessage = function (message) {\r\n\t return !!message.error;\r\n\t };\r\n\t /**\r\n\t * Utility to create a deferred object.\r\n\t */\r\n\t // TODO: Look to use RSVP library instead of doing this manually.\r\n\t // From what I searched RSVP would work better because it has .finally and .deferred; however, it doesn't have Typings information. \r\n\t WindowPostMessageProxy.createDeferred = function () {\r\n\t var deferred = {\r\n\t resolve: null,\r\n\t reject: null,\r\n\t promise: null\r\n\t };\r\n\t var promise = new Promise(function (resolve, reject) {\r\n\t deferred.resolve = resolve;\r\n\t deferred.reject = reject;\r\n\t });\r\n\t deferred.promise = promise;\r\n\t return deferred;\r\n\t };\r\n\t /**\r\n\t * Utility to generate random sequence of characters used as tracking id for promises.\r\n\t */\r\n\t WindowPostMessageProxy.createRandomString = function () {\r\n\t // window.msCrypto for IE\r\n\t var cryptoObj = window.crypto || window.msCrypto;\r\n\t var randomValueArray = new Uint32Array(1);\r\n\t cryptoObj.getRandomValues(randomValueArray);\r\n\t return randomValueArray[0].toString(36).substring(1);\r\n\t };\r\n\t /**\r\n\t * Adds handler.\r\n\t * If the first handler whose test method returns true will handle the message and provide a response.\r\n\t */\r\n\t WindowPostMessageProxy.prototype.addHandler = function (handler) {\r\n\t this.handlers.push(handler);\r\n\t };\r\n\t /**\r\n\t * Removes handler.\r\n\t * The reference must match the original object that was provided when adding the handler.\r\n\t */\r\n\t WindowPostMessageProxy.prototype.removeHandler = function (handler) {\r\n\t var handlerIndex = this.handlers.indexOf(handler);\r\n\t if (handlerIndex === -1) {\r\n\t throw new Error(\"You attempted to remove a handler but no matching handler was found.\");\r\n\t }\r\n\t this.handlers.splice(handlerIndex, 1);\r\n\t };\r\n\t /**\r\n\t * Start listening to message events.\r\n\t */\r\n\t WindowPostMessageProxy.prototype.start = function () {\r\n\t this.receiveWindow.addEventListener('message', this.windowMessageHandler);\r\n\t };\r\n\t /**\r\n\t * Stops listening to message events.\r\n\t */\r\n\t WindowPostMessageProxy.prototype.stop = function () {\r\n\t this.receiveWindow.removeEventListener('message', this.windowMessageHandler);\r\n\t };\r\n\t /**\r\n\t * Post message to target window with tracking properties added and save deferred object referenced by tracking id.\r\n\t */\r\n\t WindowPostMessageProxy.prototype.postMessage = function (targetWindow, message) {\r\n\t // Add tracking properties to indicate message came from this proxy\r\n\t var trackingProperties = { id: WindowPostMessageProxy.createRandomString() };\r\n\t this.addTrackingProperties(message, trackingProperties);\r\n\t if (this.logMessages) {\r\n\t console.log(this.name + \" Posting message:\");\r\n\t console.log(JSON.stringify(message, null, ' '));\r\n\t }\r\n\t targetWindow.postMessage(message, \"*\");\r\n\t var deferred = WindowPostMessageProxy.createDeferred();\r\n\t this.pendingRequestPromises[trackingProperties.id] = deferred;\r\n\t return deferred.promise;\r\n\t };\r\n\t /**\r\n\t * Send response message to target window.\r\n\t * Response messages re-use tracking properties from a previous request message.\r\n\t */\r\n\t WindowPostMessageProxy.prototype.sendResponse = function (targetWindow, message, trackingProperties) {\r\n\t this.addTrackingProperties(message, trackingProperties);\r\n\t if (this.logMessages) {\r\n\t console.log(this.name + \" Sending response:\");\r\n\t console.log(JSON.stringify(message, null, ' '));\r\n\t }\r\n\t targetWindow.postMessage(message, \"*\");\r\n\t };\r\n\t /**\r\n\t * Message handler.\r\n\t */\r\n\t WindowPostMessageProxy.prototype.onMessageReceived = function (event) {\r\n\t var _this = this;\r\n\t if (this.logMessages) {\r\n\t console.log(this.name + \" Received message:\");\r\n\t console.log(\"type: \" + event.type);\r\n\t console.log(JSON.stringify(event.data, null, ' '));\r\n\t }\r\n\t var sendingWindow = this.eventSourceOverrideWindow || event.source;\r\n\t var message = event.data;\r\n\t if (typeof message !== \"object\") {\r\n\t if (!this.suppressWarnings) {\r\n\t console.warn(\"Proxy(\" + this.name + \"): Received message that was not an object. Discarding message\");\r\n\t }\r\n\t return;\r\n\t }\r\n\t var trackingProperties;\r\n\t try {\r\n\t trackingProperties = this.getTrackingProperties(message);\r\n\t }\r\n\t catch (e) {\r\n\t if (!this.suppressWarnings) {\r\n\t console.warn(\"Proxy(\" + this.name + \"): Error occurred when attempting to get tracking properties from incoming message:\", JSON.stringify(message, null, ' '), \"Error: \", e);\r\n\t }\r\n\t }\r\n\t var deferred;\r\n\t if (trackingProperties) {\r\n\t deferred = this.pendingRequestPromises[trackingProperties.id];\r\n\t }\r\n\t // If message does not have a known ID, treat it as a request\r\n\t // Otherwise, treat message as response\r\n\t if (!deferred) {\r\n\t var handled = this.handlers.some(function (handler) {\r\n\t var canMessageBeHandled = false;\r\n\t try {\r\n\t canMessageBeHandled = handler.test(message);\r\n\t }\r\n\t catch (e) {\r\n\t if (!_this.suppressWarnings) {\r\n\t console.warn(\"Proxy(\" + _this.name + \"): Error occurred when handler was testing incoming message:\", JSON.stringify(message, null, ' '), \"Error: \", e);\r\n\t }\r\n\t }\r\n\t if (canMessageBeHandled) {\r\n\t var responseMessagePromise = void 0;\r\n\t try {\r\n\t responseMessagePromise = Promise.resolve(handler.handle(message));\r\n\t }\r\n\t catch (e) {\r\n\t if (!_this.suppressWarnings) {\r\n\t console.warn(\"Proxy(\" + _this.name + \"): Error occurred when handler was processing incoming message:\", JSON.stringify(message, null, ' '), \"Error: \", e);\r\n\t }\r\n\t responseMessagePromise = Promise.resolve();\r\n\t }\r\n\t responseMessagePromise\r\n\t .then(function (responseMessage) {\r\n\t if (!responseMessage) {\r\n\t var warningMessage = \"Handler for message: \" + JSON.stringify(message, null, ' ') + \" did not return a response message. The default response message will be returned instead.\";\r\n\t if (!_this.suppressWarnings) {\r\n\t console.warn(\"Proxy(\" + _this.name + \"): \" + warningMessage);\r\n\t }\r\n\t responseMessage = {\r\n\t warning: warningMessage\r\n\t };\r\n\t }\r\n\t _this.sendResponse(sendingWindow, responseMessage, trackingProperties);\r\n\t });\r\n\t return true;\r\n\t }\r\n\t });\r\n\t /**\r\n\t * TODO: Consider returning an error message if nothing handled the message.\r\n\t * In the case of the Report receiving messages all of them should be handled,\r\n\t * however, in the case of the SDK receiving messages it's likely it won't register handlers\r\n\t * for all events. Perhaps make this an option at construction time.\r\n\t */\r\n\t if (!handled && !this.suppressWarnings) {\r\n\t console.warn(\"Proxy(\" + this.name + \") did not handle message. Handlers: \" + this.handlers.length + \" Message: \" + JSON.stringify(message, null, '') + \".\");\r\n\t }\r\n\t }\r\n\t else {\r\n\t /**\r\n\t * If error message reject promise,\r\n\t * Otherwise, resolve promise\r\n\t */\r\n\t var isErrorMessage = true;\r\n\t try {\r\n\t isErrorMessage = this.isErrorMessage(message);\r\n\t }\r\n\t catch (e) {\r\n\t console.warn(\"Proxy(\" + this.name + \") Error occurred when trying to determine if message is consider an error response. Message: \", JSON.stringify(message, null, ''), 'Error: ', e);\r\n\t }\r\n\t if (isErrorMessage) {\r\n\t deferred.reject(message);\r\n\t }\r\n\t else {\r\n\t deferred.resolve(message);\r\n\t }\r\n\t // TODO: Move to .finally clause up where promise is created for better maitenance like original proxy code.\r\n\t delete this.pendingRequestPromises[trackingProperties.id];\r\n\t }\r\n\t };\r\n\t WindowPostMessageProxy.messagePropertyName = \"windowPostMessageProxy\";\r\n\t return WindowPostMessageProxy;\r\n\t}());\r\n\texports.WindowPostMessageProxy = WindowPostMessageProxy;\r\n\n\n/***/ })\n/******/ ])\n});\n;\n//# sourceMappingURL=windowPostMessageProxy.js.map\n\n/***/ }),\n\n/***/ \"./src/FilterBuilders/advancedFilterBuilder.ts\":\n/*!*****************************************************!*\\\n !*** ./src/FilterBuilders/advancedFilterBuilder.ts ***!\n \\*****************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.AdvancedFilterBuilder = void 0;\r\nvar powerbi_models_1 = __webpack_require__(/*! powerbi-models */ \"./node_modules/powerbi-models/dist/models.js\");\r\nvar filterBuilder_1 = __webpack_require__(/*! ./filterBuilder */ \"./src/FilterBuilders/filterBuilder.ts\");\r\n/**\r\n * Power BI Advanced filter builder component\r\n *\r\n * @export\r\n * @class AdvancedFilterBuilder\r\n * @extends {FilterBuilder}\r\n */\r\nvar AdvancedFilterBuilder = /** @class */ (function (_super) {\r\n __extends(AdvancedFilterBuilder, _super);\r\n function AdvancedFilterBuilder() {\r\n var _this = _super !== null && _super.apply(this, arguments) || this;\r\n _this.conditions = [];\r\n return _this;\r\n }\r\n /**\r\n * Sets And as logical operator for Advanced filter\r\n *\r\n * ```javascript\r\n *\r\n * const advancedFilterBuilder = new AdvancedFilterBuilder().and();\r\n * ```\r\n *\r\n * @returns {AdvancedFilterBuilder}\r\n */\r\n AdvancedFilterBuilder.prototype.and = function () {\r\n this.logicalOperator = \"And\";\r\n return this;\r\n };\r\n /**\r\n * Sets Or as logical operator for Advanced filter\r\n *\r\n * ```javascript\r\n *\r\n * const advancedFilterBuilder = new AdvancedFilterBuilder().or();\r\n * ```\r\n *\r\n * @returns {AdvancedFilterBuilder}\r\n */\r\n AdvancedFilterBuilder.prototype.or = function () {\r\n this.logicalOperator = \"Or\";\r\n return this;\r\n };\r\n /**\r\n * Adds a condition in Advanced filter\r\n *\r\n * ```javascript\r\n *\r\n * // Add two conditions\r\n * const advancedFilterBuilder = new AdvancedFilterBuilder().addCondition(\"Contains\", \"Wash\").addCondition(\"Contains\", \"Park\");\r\n * ```\r\n *\r\n * @returns {AdvancedFilterBuilder}\r\n */\r\n AdvancedFilterBuilder.prototype.addCondition = function (operator, value) {\r\n var condition = {\r\n operator: operator,\r\n value: value\r\n };\r\n this.conditions.push(condition);\r\n return this;\r\n };\r\n /**\r\n * Creates Advanced filter\r\n *\r\n * ```javascript\r\n *\r\n * const advancedFilterBuilder = new AdvancedFilterBuilder().build();\r\n * ```\r\n *\r\n * @returns {AdvancedFilter}\r\n */\r\n AdvancedFilterBuilder.prototype.build = function () {\r\n var advancedFilter = new powerbi_models_1.AdvancedFilter(this.target, this.logicalOperator, this.conditions);\r\n return advancedFilter;\r\n };\r\n return AdvancedFilterBuilder;\r\n}(filterBuilder_1.FilterBuilder));\r\nexports.AdvancedFilterBuilder = AdvancedFilterBuilder;\r\n\n\n/***/ }),\n\n/***/ \"./src/FilterBuilders/basicFilterBuilder.ts\":\n/*!**************************************************!*\\\n !*** ./src/FilterBuilders/basicFilterBuilder.ts ***!\n \\**************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.BasicFilterBuilder = void 0;\r\nvar powerbi_models_1 = __webpack_require__(/*! powerbi-models */ \"./node_modules/powerbi-models/dist/models.js\");\r\nvar filterBuilder_1 = __webpack_require__(/*! ./filterBuilder */ \"./src/FilterBuilders/filterBuilder.ts\");\r\n/**\r\n * Power BI Basic filter builder component\r\n *\r\n * @export\r\n * @class BasicFilterBuilder\r\n * @extends {FilterBuilder}\r\n */\r\nvar BasicFilterBuilder = /** @class */ (function (_super) {\r\n __extends(BasicFilterBuilder, _super);\r\n function BasicFilterBuilder() {\r\n var _this = _super !== null && _super.apply(this, arguments) || this;\r\n _this.isRequireSingleSelection = false;\r\n return _this;\r\n }\r\n /**\r\n * Sets In as operator for Basic filter\r\n *\r\n * ```javascript\r\n *\r\n * const basicFilterBuilder = new BasicFilterBuilder().in([values]);\r\n * ```\r\n *\r\n * @returns {BasicFilterBuilder}\r\n */\r\n BasicFilterBuilder.prototype.in = function (values) {\r\n this.operator = \"In\";\r\n this.values = values;\r\n return this;\r\n };\r\n /**\r\n * Sets NotIn as operator for Basic filter\r\n *\r\n * ```javascript\r\n *\r\n * const basicFilterBuilder = new BasicFilterBuilder().notIn([values]);\r\n * ```\r\n *\r\n * @returns {BasicFilterBuilder}\r\n */\r\n BasicFilterBuilder.prototype.notIn = function (values) {\r\n this.operator = \"NotIn\";\r\n this.values = values;\r\n return this;\r\n };\r\n /**\r\n * Sets All as operator for Basic filter\r\n *\r\n * ```javascript\r\n *\r\n * const basicFilterBuilder = new BasicFilterBuilder().all();\r\n * ```\r\n *\r\n * @returns {BasicFilterBuilder}\r\n */\r\n BasicFilterBuilder.prototype.all = function () {\r\n this.operator = \"All\";\r\n this.values = [];\r\n return this;\r\n };\r\n /**\r\n * Sets required single selection property for Basic filter\r\n *\r\n * ```javascript\r\n *\r\n * const basicFilterBuilder = new BasicFilterBuilder().requireSingleSelection(isRequireSingleSelection);\r\n * ```\r\n *\r\n * @returns {BasicFilterBuilder}\r\n */\r\n BasicFilterBuilder.prototype.requireSingleSelection = function (isRequireSingleSelection) {\r\n if (isRequireSingleSelection === void 0) { isRequireSingleSelection = false; }\r\n this.isRequireSingleSelection = isRequireSingleSelection;\r\n return this;\r\n };\r\n /**\r\n * Creates Basic filter\r\n *\r\n * ```javascript\r\n *\r\n * const basicFilterBuilder = new BasicFilterBuilder().build();\r\n * ```\r\n *\r\n * @returns {BasicFilter}\r\n */\r\n BasicFilterBuilder.prototype.build = function () {\r\n var basicFilter = new powerbi_models_1.BasicFilter(this.target, this.operator, this.values);\r\n basicFilter.requireSingleSelection = this.isRequireSingleSelection;\r\n return basicFilter;\r\n };\r\n return BasicFilterBuilder;\r\n}(filterBuilder_1.FilterBuilder));\r\nexports.BasicFilterBuilder = BasicFilterBuilder;\r\n\n\n/***/ }),\n\n/***/ \"./src/FilterBuilders/filterBuilder.ts\":\n/*!*********************************************!*\\\n !*** ./src/FilterBuilders/filterBuilder.ts ***!\n \\*********************************************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.FilterBuilder = void 0;\r\n/**\r\n * Generic filter builder for BasicFilter, AdvancedFilter, RelativeDate, RelativeTime and TopN\r\n *\r\n * @class\r\n */\r\nvar FilterBuilder = /** @class */ (function () {\r\n function FilterBuilder() {\r\n }\r\n /**\r\n * Sets target property for filter with target object\r\n *\r\n * ```javascript\r\n * const target = {\r\n * table: 'table1',\r\n * column: 'column1'\r\n * };\r\n *\r\n * const filterBuilder = new FilterBuilder().withTargetObject(target);\r\n * ```\r\n *\r\n * @returns {FilterBuilder}\r\n */\r\n FilterBuilder.prototype.withTargetObject = function (target) {\r\n this.target = target;\r\n return this;\r\n };\r\n /**\r\n * Sets target property for filter with column target object\r\n *\r\n * ```\r\n * const filterBuilder = new FilterBuilder().withColumnTarget(tableName, columnName);\r\n * ```\r\n *\r\n * @returns {FilterBuilder}\r\n */\r\n FilterBuilder.prototype.withColumnTarget = function (tableName, columnName) {\r\n this.target = { table: tableName, column: columnName };\r\n return this;\r\n };\r\n /**\r\n * Sets target property for filter with measure target object\r\n *\r\n * ```\r\n * const filterBuilder = new FilterBuilder().withMeasureTarget(tableName, measure);\r\n * ```\r\n *\r\n * @returns {FilterBuilder}\r\n */\r\n FilterBuilder.prototype.withMeasureTarget = function (tableName, measure) {\r\n this.target = { table: tableName, measure: measure };\r\n return this;\r\n };\r\n /**\r\n * Sets target property for filter with hierarchy level target object\r\n *\r\n * ```\r\n * const filterBuilder = new FilterBuilder().withHierarchyLevelTarget(tableName, hierarchy, hierarchyLevel);\r\n * ```\r\n *\r\n * @returns {FilterBuilder}\r\n */\r\n FilterBuilder.prototype.withHierarchyLevelTarget = function (tableName, hierarchy, hierarchyLevel) {\r\n this.target = { table: tableName, hierarchy: hierarchy, hierarchyLevel: hierarchyLevel };\r\n return this;\r\n };\r\n /**\r\n * Sets target property for filter with column aggregation target object\r\n *\r\n * ```\r\n * const filterBuilder = new FilterBuilder().withColumnAggregation(tableName, columnName, aggregationFunction);\r\n * ```\r\n *\r\n * @returns {FilterBuilder}\r\n */\r\n FilterBuilder.prototype.withColumnAggregation = function (tableName, columnName, aggregationFunction) {\r\n this.target = { table: tableName, column: columnName, aggregationFunction: aggregationFunction };\r\n return this;\r\n };\r\n /**\r\n * Sets target property for filter with hierarchy level aggregation target object\r\n *\r\n * ```\r\n * const filterBuilder = new FilterBuilder().withHierarchyLevelAggregationTarget(tableName, hierarchy, hierarchyLevel, aggregationFunction);\r\n * ```\r\n *\r\n * @returns {FilterBuilder}\r\n */\r\n FilterBuilder.prototype.withHierarchyLevelAggregationTarget = function (tableName, hierarchy, hierarchyLevel, aggregationFunction) {\r\n this.target = { table: tableName, hierarchy: hierarchy, hierarchyLevel: hierarchyLevel, aggregationFunction: aggregationFunction };\r\n return this;\r\n };\r\n return FilterBuilder;\r\n}());\r\nexports.FilterBuilder = FilterBuilder;\r\n\n\n/***/ }),\n\n/***/ \"./src/FilterBuilders/index.ts\":\n/*!*************************************!*\\\n !*** ./src/FilterBuilders/index.ts ***!\n \\*************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.RelativeTimeFilterBuilder = exports.RelativeDateFilterBuilder = exports.TopNFilterBuilder = exports.AdvancedFilterBuilder = exports.BasicFilterBuilder = void 0;\r\nvar basicFilterBuilder_1 = __webpack_require__(/*! ./basicFilterBuilder */ \"./src/FilterBuilders/basicFilterBuilder.ts\");\r\nObject.defineProperty(exports, \"BasicFilterBuilder\", { enumerable: true, get: function () { return basicFilterBuilder_1.BasicFilterBuilder; } });\r\nvar advancedFilterBuilder_1 = __webpack_require__(/*! ./advancedFilterBuilder */ \"./src/FilterBuilders/advancedFilterBuilder.ts\");\r\nObject.defineProperty(exports, \"AdvancedFilterBuilder\", { enumerable: true, get: function () { return advancedFilterBuilder_1.AdvancedFilterBuilder; } });\r\nvar topNFilterBuilder_1 = __webpack_require__(/*! ./topNFilterBuilder */ \"./src/FilterBuilders/topNFilterBuilder.ts\");\r\nObject.defineProperty(exports, \"TopNFilterBuilder\", { enumerable: true, get: function () { return topNFilterBuilder_1.TopNFilterBuilder; } });\r\nvar relativeDateFilterBuilder_1 = __webpack_require__(/*! ./relativeDateFilterBuilder */ \"./src/FilterBuilders/relativeDateFilterBuilder.ts\");\r\nObject.defineProperty(exports, \"RelativeDateFilterBuilder\", { enumerable: true, get: function () { return relativeDateFilterBuilder_1.RelativeDateFilterBuilder; } });\r\nvar relativeTimeFilterBuilder_1 = __webpack_require__(/*! ./relativeTimeFilterBuilder */ \"./src/FilterBuilders/relativeTimeFilterBuilder.ts\");\r\nObject.defineProperty(exports, \"RelativeTimeFilterBuilder\", { enumerable: true, get: function () { return relativeTimeFilterBuilder_1.RelativeTimeFilterBuilder; } });\r\n\n\n/***/ }),\n\n/***/ \"./src/FilterBuilders/relativeDateFilterBuilder.ts\":\n/*!*********************************************************!*\\\n !*** ./src/FilterBuilders/relativeDateFilterBuilder.ts ***!\n \\*********************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.RelativeDateFilterBuilder = void 0;\r\nvar powerbi_models_1 = __webpack_require__(/*! powerbi-models */ \"./node_modules/powerbi-models/dist/models.js\");\r\nvar filterBuilder_1 = __webpack_require__(/*! ./filterBuilder */ \"./src/FilterBuilders/filterBuilder.ts\");\r\n/**\r\n * Power BI Relative Date filter builder component\r\n *\r\n * @export\r\n * @class RelativeDateFilterBuilder\r\n * @extends {FilterBuilder}\r\n */\r\nvar RelativeDateFilterBuilder = /** @class */ (function (_super) {\r\n __extends(RelativeDateFilterBuilder, _super);\r\n function RelativeDateFilterBuilder() {\r\n var _this = _super !== null && _super.apply(this, arguments) || this;\r\n _this.isTodayIncluded = true;\r\n return _this;\r\n }\r\n /**\r\n * Sets inLast as operator for Relative Date filter\r\n *\r\n * ```javascript\r\n *\r\n * const relativeDateFilterBuilder = new RelativeDateFilterBuilder().inLast(timeUnitsCount, timeUnitType);\r\n * ```\r\n *\r\n * @param {number} timeUnitsCount - The amount of time units\r\n * @param {RelativeDateFilterTimeUnit} timeUnitType - Defines the unit of time the filter is using\r\n * @returns {RelativeDateFilterBuilder}\r\n */\r\n RelativeDateFilterBuilder.prototype.inLast = function (timeUnitsCount, timeUnitType) {\r\n this.operator = powerbi_models_1.RelativeDateOperators.InLast;\r\n this.timeUnitsCount = timeUnitsCount;\r\n this.timeUnitType = timeUnitType;\r\n return this;\r\n };\r\n /**\r\n * Sets inThis as operator for Relative Date filter\r\n *\r\n * ```javascript\r\n *\r\n * const relativeDateFilterBuilder = new RelativeDateFilterBuilder().inThis(timeUnitsCount, timeUnitType);\r\n * ```\r\n *\r\n * @param {number} timeUnitsCount - The amount of time units\r\n * @param {RelativeDateFilterTimeUnit} timeUnitType - Defines the unit of time the filter is using\r\n * @returns {RelativeDateFilterBuilder}\r\n */\r\n RelativeDateFilterBuilder.prototype.inThis = function (timeUnitsCount, timeUnitType) {\r\n this.operator = powerbi_models_1.RelativeDateOperators.InThis;\r\n this.timeUnitsCount = timeUnitsCount;\r\n this.timeUnitType = timeUnitType;\r\n return this;\r\n };\r\n /**\r\n * Sets inNext as operator for Relative Date filter\r\n *\r\n * ```javascript\r\n *\r\n * const relativeDateFilterBuilder = new RelativeDateFilterBuilder().inNext(timeUnitsCount, timeUnitType);\r\n * ```\r\n *\r\n * @param {number} timeUnitsCount - The amount of time units\r\n * @param {RelativeDateFilterTimeUnit} timeUnitType - Defines the unit of time the filter is using\r\n * @returns {RelativeDateFilterBuilder}\r\n */\r\n RelativeDateFilterBuilder.prototype.inNext = function (timeUnitsCount, timeUnitType) {\r\n this.operator = powerbi_models_1.RelativeDateOperators.InNext;\r\n this.timeUnitsCount = timeUnitsCount;\r\n this.timeUnitType = timeUnitType;\r\n return this;\r\n };\r\n /**\r\n * Sets includeToday for Relative Date filter\r\n *\r\n * ```javascript\r\n *\r\n * const relativeDateFilterBuilder = new RelativeDateFilterBuilder().includeToday(includeToday);\r\n * ```\r\n *\r\n * @param {boolean} includeToday - Denotes if today is included or not\r\n * @returns {RelativeDateFilterBuilder}\r\n */\r\n RelativeDateFilterBuilder.prototype.includeToday = function (includeToday) {\r\n this.isTodayIncluded = includeToday;\r\n return this;\r\n };\r\n /**\r\n * Creates Relative Date filter\r\n *\r\n * ```javascript\r\n *\r\n * const relativeDateFilterBuilder = new RelativeDateFilterBuilder().build();\r\n * ```\r\n *\r\n * @returns {RelativeDateFilter}\r\n */\r\n RelativeDateFilterBuilder.prototype.build = function () {\r\n var relativeDateFilter = new powerbi_models_1.RelativeDateFilter(this.target, this.operator, this.timeUnitsCount, this.timeUnitType, this.isTodayIncluded);\r\n return relativeDateFilter;\r\n };\r\n return RelativeDateFilterBuilder;\r\n}(filterBuilder_1.FilterBuilder));\r\nexports.RelativeDateFilterBuilder = RelativeDateFilterBuilder;\r\n\n\n/***/ }),\n\n/***/ \"./src/FilterBuilders/relativeTimeFilterBuilder.ts\":\n/*!*********************************************************!*\\\n !*** ./src/FilterBuilders/relativeTimeFilterBuilder.ts ***!\n \\*********************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.RelativeTimeFilterBuilder = void 0;\r\nvar powerbi_models_1 = __webpack_require__(/*! powerbi-models */ \"./node_modules/powerbi-models/dist/models.js\");\r\nvar filterBuilder_1 = __webpack_require__(/*! ./filterBuilder */ \"./src/FilterBuilders/filterBuilder.ts\");\r\n/**\r\n * Power BI Relative Time filter builder component\r\n *\r\n * @export\r\n * @class RelativeTimeFilterBuilder\r\n * @extends {FilterBuilder}\r\n */\r\nvar RelativeTimeFilterBuilder = /** @class */ (function (_super) {\r\n __extends(RelativeTimeFilterBuilder, _super);\r\n function RelativeTimeFilterBuilder() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Sets inLast as operator for Relative Time filter\r\n *\r\n * ```javascript\r\n *\r\n * const relativeTimeFilterBuilder = new RelativeTimeFilterBuilder().inLast(timeUnitsCount, timeUnitType);\r\n * ```\r\n *\r\n * @param {number} timeUnitsCount - The amount of time units\r\n * @param {RelativeDateFilterTimeUnit} timeUnitType - Defines the unit of time the filter is using\r\n * @returns {RelativeTimeFilterBuilder}\r\n */\r\n RelativeTimeFilterBuilder.prototype.inLast = function (timeUnitsCount, timeUnitType) {\r\n this.operator = powerbi_models_1.RelativeDateOperators.InLast;\r\n this.timeUnitsCount = timeUnitsCount;\r\n this.timeUnitType = timeUnitType;\r\n return this;\r\n };\r\n /**\r\n * Sets inThis as operator for Relative Time filter\r\n *\r\n * ```javascript\r\n *\r\n * const relativeTimeFilterBuilder = new RelativeTimeFilterBuilder().inThis(timeUnitsCount, timeUnitType);\r\n * ```\r\n *\r\n * @param {number} timeUnitsCount - The amount of time units\r\n * @param {RelativeDateFilterTimeUnit} timeUnitType - Defines the unit of time the filter is using\r\n * @returns {RelativeTimeFilterBuilder}\r\n */\r\n RelativeTimeFilterBuilder.prototype.inThis = function (timeUnitsCount, timeUnitType) {\r\n this.operator = powerbi_models_1.RelativeDateOperators.InThis;\r\n this.timeUnitsCount = timeUnitsCount;\r\n this.timeUnitType = timeUnitType;\r\n return this;\r\n };\r\n /**\r\n * Sets inNext as operator for Relative Time filter\r\n *\r\n * ```javascript\r\n *\r\n * const relativeTimeFilterBuilder = new RelativeTimeFilterBuilder().inNext(timeUnitsCount, timeUnitType);\r\n * ```\r\n *\r\n * @param {number} timeUnitsCount - The amount of time units\r\n * @param {RelativeDateFilterTimeUnit} timeUnitType - Defines the unit of time the filter is using\r\n * @returns {RelativeTimeFilterBuilder}\r\n */\r\n RelativeTimeFilterBuilder.prototype.inNext = function (timeUnitsCount, timeUnitType) {\r\n this.operator = powerbi_models_1.RelativeDateOperators.InNext;\r\n this.timeUnitsCount = timeUnitsCount;\r\n this.timeUnitType = timeUnitType;\r\n return this;\r\n };\r\n /**\r\n * Creates Relative Time filter\r\n *\r\n * ```javascript\r\n *\r\n * const relativeTimeFilterBuilder = new RelativeTimeFilterBuilder().build();\r\n * ```\r\n *\r\n * @returns {RelativeTimeFilter}\r\n */\r\n RelativeTimeFilterBuilder.prototype.build = function () {\r\n var relativeTimeFilter = new powerbi_models_1.RelativeTimeFilter(this.target, this.operator, this.timeUnitsCount, this.timeUnitType);\r\n return relativeTimeFilter;\r\n };\r\n return RelativeTimeFilterBuilder;\r\n}(filterBuilder_1.FilterBuilder));\r\nexports.RelativeTimeFilterBuilder = RelativeTimeFilterBuilder;\r\n\n\n/***/ }),\n\n/***/ \"./src/FilterBuilders/topNFilterBuilder.ts\":\n/*!*************************************************!*\\\n !*** ./src/FilterBuilders/topNFilterBuilder.ts ***!\n \\*************************************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.TopNFilterBuilder = void 0;\r\nvar powerbi_models_1 = __webpack_require__(/*! powerbi-models */ \"./node_modules/powerbi-models/dist/models.js\");\r\nvar filterBuilder_1 = __webpack_require__(/*! ./filterBuilder */ \"./src/FilterBuilders/filterBuilder.ts\");\r\n/**\r\n * Power BI Top N filter builder component\r\n *\r\n * @export\r\n * @class TopNFilterBuilder\r\n * @extends {FilterBuilder}\r\n */\r\nvar TopNFilterBuilder = /** @class */ (function (_super) {\r\n __extends(TopNFilterBuilder, _super);\r\n function TopNFilterBuilder() {\r\n return _super !== null && _super.apply(this, arguments) || this;\r\n }\r\n /**\r\n * Sets Top as operator for Top N filter\r\n *\r\n * ```javascript\r\n *\r\n * const topNFilterBuilder = new TopNFilterBuilder().top(itemCount);\r\n * ```\r\n *\r\n * @returns {TopNFilterBuilder}\r\n */\r\n TopNFilterBuilder.prototype.top = function (itemCount) {\r\n this.operator = \"Top\";\r\n this.itemCount = itemCount;\r\n return this;\r\n };\r\n /**\r\n * Sets Bottom as operator for Top N filter\r\n *\r\n * ```javascript\r\n *\r\n * const topNFilterBuilder = new TopNFilterBuilder().bottom(itemCount);\r\n * ```\r\n *\r\n * @returns {TopNFilterBuilder}\r\n */\r\n TopNFilterBuilder.prototype.bottom = function (itemCount) {\r\n this.operator = \"Bottom\";\r\n this.itemCount = itemCount;\r\n return this;\r\n };\r\n /**\r\n * Sets order by for Top N filter\r\n *\r\n * ```javascript\r\n *\r\n * const topNFilterBuilder = new TopNFilterBuilder().orderByTarget(target);\r\n * ```\r\n *\r\n * @returns {TopNFilterBuilder}\r\n */\r\n TopNFilterBuilder.prototype.orderByTarget = function (target) {\r\n this.orderByTargetValue = target;\r\n return this;\r\n };\r\n /**\r\n * Creates Top N filter\r\n *\r\n * ```javascript\r\n *\r\n * const topNFilterBuilder = new TopNFilterBuilder().build();\r\n * ```\r\n *\r\n * @returns {TopNFilter}\r\n */\r\n TopNFilterBuilder.prototype.build = function () {\r\n var topNFilter = new powerbi_models_1.TopNFilter(this.target, this.operator, this.itemCount, this.orderByTargetValue);\r\n return topNFilter;\r\n };\r\n return TopNFilterBuilder;\r\n}(filterBuilder_1.FilterBuilder));\r\nexports.TopNFilterBuilder = TopNFilterBuilder;\r\n\n\n/***/ }),\n\n/***/ \"./src/bookmarksManager.ts\":\n/*!*********************************!*\\\n !*** ./src/bookmarksManager.ts ***!\n \\*********************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n};\r\nvar __generator = (this && this.__generator) || function (thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n};\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.BookmarksManager = void 0;\r\nvar util_1 = __webpack_require__(/*! ./util */ \"./src/util.ts\");\r\nvar errors_1 = __webpack_require__(/*! ./errors */ \"./src/errors.ts\");\r\n/**\r\n * Manages report bookmarks.\r\n *\r\n * @export\r\n * @class BookmarksManager\r\n * @implements {IBookmarksManager}\r\n */\r\nvar BookmarksManager = /** @class */ (function () {\r\n /**\r\n * @hidden\r\n */\r\n function BookmarksManager(service, config, iframe) {\r\n this.service = service;\r\n this.config = config;\r\n this.iframe = iframe;\r\n }\r\n /**\r\n * Gets bookmarks that are defined in the report.\r\n *\r\n * ```javascript\r\n * // Gets bookmarks that are defined in the report\r\n * bookmarksManager.getBookmarks()\r\n * .then(bookmarks => {\r\n * ...\r\n * });\r\n * ```\r\n *\r\n * @returns {Promise<IReportBookmark[]>}\r\n */\r\n BookmarksManager.prototype.getBookmarks = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response, response_1;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if ((0, util_1.isRDLEmbed)(this.config.embedUrl)) {\r\n return [2 /*return*/, Promise.reject(errors_1.APINotSupportedForRDLError)];\r\n }\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.service.hpm.get(\"/report/bookmarks\", { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 2:\r\n response = _a.sent();\r\n return [2 /*return*/, response.body];\r\n case 3:\r\n response_1 = _a.sent();\r\n throw response_1.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Apply bookmark by name.\r\n *\r\n * ```javascript\r\n * bookmarksManager.apply(bookmarkName)\r\n * ```\r\n *\r\n * @param {string} bookmarkName The name of the bookmark to be applied\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n BookmarksManager.prototype.apply = function (bookmarkName) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var request, response_2;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if ((0, util_1.isRDLEmbed)(this.config.embedUrl)) {\r\n return [2 /*return*/, Promise.reject(errors_1.APINotSupportedForRDLError)];\r\n }\r\n request = {\r\n name: bookmarkName\r\n };\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.service.hpm.post(\"/report/bookmarks/applyByName\", request, { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 2: return [2 /*return*/, _a.sent()];\r\n case 3:\r\n response_2 = _a.sent();\r\n throw response_2.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Play bookmarks: Enter or Exit bookmarks presentation mode.\r\n *\r\n * ```javascript\r\n * // Enter presentation mode.\r\n * bookmarksManager.play(BookmarksPlayMode.Presentation)\r\n * ```\r\n *\r\n * @param {BookmarksPlayMode} playMode Play mode can be either `Presentation` or `Off`\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n BookmarksManager.prototype.play = function (playMode) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var playBookmarkRequest, response_3;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if ((0, util_1.isRDLEmbed)(this.config.embedUrl)) {\r\n return [2 /*return*/, Promise.reject(errors_1.APINotSupportedForRDLError)];\r\n }\r\n playBookmarkRequest = {\r\n playMode: playMode\r\n };\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.service.hpm.post(\"/report/bookmarks/play\", playBookmarkRequest, { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 2: return [2 /*return*/, _a.sent()];\r\n case 3:\r\n response_3 = _a.sent();\r\n throw response_3.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Capture bookmark from current state.\r\n *\r\n * ```javascript\r\n * bookmarksManager.capture(options)\r\n * ```\r\n *\r\n * @param {ICaptureBookmarkOptions} [options] Options for bookmark capturing\r\n * @returns {Promise<IReportBookmark>}\r\n */\r\n BookmarksManager.prototype.capture = function (options) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var request, response, response_4;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if ((0, util_1.isRDLEmbed)(this.config.embedUrl)) {\r\n return [2 /*return*/, Promise.reject(errors_1.APINotSupportedForRDLError)];\r\n }\r\n request = {\r\n options: options || {}\r\n };\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.service.hpm.post(\"/report/bookmarks/capture\", request, { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 2:\r\n response = _a.sent();\r\n return [2 /*return*/, response.body];\r\n case 3:\r\n response_4 = _a.sent();\r\n throw response_4.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Apply bookmark state.\r\n *\r\n * ```javascript\r\n * bookmarksManager.applyState(bookmarkState)\r\n * ```\r\n *\r\n * @param {string} state A base64 bookmark state to be applied\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n BookmarksManager.prototype.applyState = function (state) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var request, response_5;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if ((0, util_1.isRDLEmbed)(this.config.embedUrl)) {\r\n return [2 /*return*/, Promise.reject(errors_1.APINotSupportedForRDLError)];\r\n }\r\n request = {\r\n state: state\r\n };\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.service.hpm.post(\"/report/bookmarks/applyState\", request, { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 2: return [2 /*return*/, _a.sent()];\r\n case 3:\r\n response_5 = _a.sent();\r\n throw response_5.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n return BookmarksManager;\r\n}());\r\nexports.BookmarksManager = BookmarksManager;\r\n\n\n/***/ }),\n\n/***/ \"./src/config.ts\":\n/*!***********************!*\\\n !*** ./src/config.ts ***!\n \\***********************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\n/** @ignore */ /** */\r\nvar config = {\r\n version: '2.21.1',\r\n type: 'js'\r\n};\r\nexports.default = config;\r\n\n\n/***/ }),\n\n/***/ \"./src/create.ts\":\n/*!***********************!*\\\n !*** ./src/create.ts ***!\n \\***********************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n};\r\nvar __generator = (this && this.__generator) || function (thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n};\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.Create = void 0;\r\nvar powerbi_models_1 = __webpack_require__(/*! powerbi-models */ \"./node_modules/powerbi-models/dist/models.js\");\r\nvar embed_1 = __webpack_require__(/*! ./embed */ \"./src/embed.ts\");\r\nvar utils = __webpack_require__(/*! ./util */ \"./src/util.ts\");\r\n/**\r\n * A Power BI Report creator component\r\n *\r\n * @export\r\n * @class Create\r\n * @extends {Embed}\r\n */\r\nvar Create = /** @class */ (function (_super) {\r\n __extends(Create, _super);\r\n /*\r\n * @hidden\r\n */\r\n function Create(service, element, config, phasedRender, isBootstrap) {\r\n return _super.call(this, service, element, config, /* iframe */ undefined, phasedRender, isBootstrap) || this;\r\n }\r\n /**\r\n * Gets the dataset ID from the first available location: createConfig or embed url.\r\n *\r\n * @returns {string}\r\n */\r\n Create.prototype.getId = function () {\r\n var datasetId = (this.createConfig && this.createConfig.datasetId) ? this.createConfig.datasetId : Create.findIdFromEmbedUrl(this.config.embedUrl);\r\n if (typeof datasetId !== 'string' || datasetId.length === 0) {\r\n throw new Error('Dataset id is required, but it was not found. You must provide an id either as part of embed configuration.');\r\n }\r\n return datasetId;\r\n };\r\n /**\r\n * Validate create report configuration.\r\n */\r\n Create.prototype.validate = function (config) {\r\n return (0, powerbi_models_1.validateCreateReport)(config);\r\n };\r\n /**\r\n * Handle config changes.\r\n *\r\n * @hidden\r\n * @returns {void}\r\n */\r\n Create.prototype.configChanged = function (isBootstrap) {\r\n if (isBootstrap) {\r\n return;\r\n }\r\n var config = this.config;\r\n this.createConfig = {\r\n accessToken: config.accessToken,\r\n datasetId: config.datasetId || this.getId(),\r\n groupId: config.groupId,\r\n settings: config.settings,\r\n tokenType: config.tokenType,\r\n theme: config.theme\r\n };\r\n };\r\n /**\r\n * @hidden\r\n * @returns {string}\r\n */\r\n Create.prototype.getDefaultEmbedUrlEndpoint = function () {\r\n return \"reportEmbed\";\r\n };\r\n /**\r\n * checks if the report is saved.\r\n *\r\n * ```javascript\r\n * report.isSaved()\r\n * ```\r\n *\r\n * @returns {Promise<boolean>}\r\n */\r\n Create.prototype.isSaved = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, utils.isSavedInternal(this.service.hpm, this.config.uniqueId, this.iframe.contentWindow)];\r\n case 1: return [2 /*return*/, _a.sent()];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Adds the ability to get datasetId from url.\r\n * (e.g. http://embedded.powerbi.com/appTokenReportEmbed?datasetId=854846ed-2106-4dc2-bc58-eb77533bf2f1).\r\n *\r\n * By extracting the ID we can ensure that the ID is always explicitly provided as part of the create configuration.\r\n *\r\n * @static\r\n * @param {string} url\r\n * @returns {string}\r\n * @hidden\r\n */\r\n Create.findIdFromEmbedUrl = function (url) {\r\n var datasetIdRegEx = /datasetId=\"?([^&]+)\"?/;\r\n var datasetIdMatch = url.match(datasetIdRegEx);\r\n var datasetId;\r\n if (datasetIdMatch) {\r\n datasetId = datasetIdMatch[1];\r\n }\r\n return datasetId;\r\n };\r\n return Create;\r\n}(embed_1.Embed));\r\nexports.Create = Create;\r\n\n\n/***/ }),\n\n/***/ \"./src/dashboard.ts\":\n/*!**************************!*\\\n !*** ./src/dashboard.ts ***!\n \\**************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.Dashboard = void 0;\r\nvar powerbi_models_1 = __webpack_require__(/*! powerbi-models */ \"./node_modules/powerbi-models/dist/models.js\");\r\nvar embed_1 = __webpack_require__(/*! ./embed */ \"./src/embed.ts\");\r\n/**\r\n * A Power BI Dashboard embed component\r\n *\r\n * @export\r\n * @class Dashboard\r\n * @extends {Embed}\r\n * @implements {IDashboardNode}\r\n */\r\nvar Dashboard = /** @class */ (function (_super) {\r\n __extends(Dashboard, _super);\r\n /**\r\n * Creates an instance of a Power BI Dashboard.\r\n *\r\n * @param {service.Service} service\r\n * @hidden\r\n * @param {HTMLElement} element\r\n */\r\n function Dashboard(service, element, config, phasedRender, isBootstrap) {\r\n var _this = _super.call(this, service, element, config, /* iframe */ undefined, phasedRender, isBootstrap) || this;\r\n _this.loadPath = \"/dashboard/load\";\r\n _this.phasedLoadPath = \"/dashboard/prepare\";\r\n Array.prototype.push.apply(_this.allowedEvents, Dashboard.allowedEvents);\r\n return _this;\r\n }\r\n /**\r\n * This adds backwards compatibility for older config which used the dashboardId query param to specify dashboard id.\r\n * E.g. https://powerbi-df.analysis-df.windows.net/dashboardEmbedHost?dashboardId=e9363c62-edb6-4eac-92d3-2199c5ca2a9e\r\n *\r\n * By extracting the id we can ensure id is always explicitly provided as part of the load configuration.\r\n *\r\n * @hidden\r\n * @static\r\n * @param {string} url\r\n * @returns {string}\r\n */\r\n Dashboard.findIdFromEmbedUrl = function (url) {\r\n var dashboardIdRegEx = /dashboardId=\"?([^&]+)\"?/;\r\n var dashboardIdMatch = url.match(dashboardIdRegEx);\r\n var dashboardId;\r\n if (dashboardIdMatch) {\r\n dashboardId = dashboardIdMatch[1];\r\n }\r\n return dashboardId;\r\n };\r\n /**\r\n * Get dashboard id from first available location: options, attribute, embed url.\r\n *\r\n * @returns {string}\r\n */\r\n Dashboard.prototype.getId = function () {\r\n var config = this.config;\r\n var dashboardId = config.id || this.element.getAttribute(Dashboard.dashboardIdAttribute) || Dashboard.findIdFromEmbedUrl(config.embedUrl);\r\n if (typeof dashboardId !== 'string' || dashboardId.length === 0) {\r\n throw new Error(\"Dashboard id is required, but it was not found. You must provide an id either as part of embed configuration or as attribute '\".concat(Dashboard.dashboardIdAttribute, \"'.\"));\r\n }\r\n return dashboardId;\r\n };\r\n /**\r\n * Validate load configuration.\r\n *\r\n * @hidden\r\n */\r\n Dashboard.prototype.validate = function (baseConfig) {\r\n var config = baseConfig;\r\n var error = (0, powerbi_models_1.validateDashboardLoad)(config);\r\n return error ? error : this.validatePageView(config.pageView);\r\n };\r\n /**\r\n * Handle config changes.\r\n *\r\n * @hidden\r\n * @returns {void}\r\n */\r\n Dashboard.prototype.configChanged = function (isBootstrap) {\r\n if (isBootstrap) {\r\n return;\r\n }\r\n // Populate dashboard id into config object.\r\n this.config.id = this.getId();\r\n };\r\n /**\r\n * @hidden\r\n * @returns {string}\r\n */\r\n Dashboard.prototype.getDefaultEmbedUrlEndpoint = function () {\r\n return \"dashboardEmbed\";\r\n };\r\n /**\r\n * Validate that pageView has a legal value: if page view is defined it must have one of the values defined in PageView\r\n *\r\n * @hidden\r\n */\r\n Dashboard.prototype.validatePageView = function (pageView) {\r\n if (pageView && pageView !== \"fitToWidth\" && pageView !== \"oneColumn\" && pageView !== \"actualSize\") {\r\n return [{ message: \"pageView must be one of the followings: fitToWidth, oneColumn, actualSize\" }];\r\n }\r\n };\r\n /** @hidden */\r\n Dashboard.allowedEvents = [\"tileClicked\", \"error\"];\r\n /** @hidden */\r\n Dashboard.dashboardIdAttribute = 'powerbi-dashboard-id';\r\n /** @hidden */\r\n Dashboard.typeAttribute = 'powerbi-type';\r\n /** @hidden */\r\n Dashboard.type = \"Dashboard\";\r\n return Dashboard;\r\n}(embed_1.Embed));\r\nexports.Dashboard = Dashboard;\r\n\n\n/***/ }),\n\n/***/ \"./src/embed.ts\":\n/*!**********************!*\\\n !*** ./src/embed.ts ***!\n \\**********************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n};\r\nvar __generator = (this && this.__generator) || function (thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n};\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.Embed = void 0;\r\nvar models = __webpack_require__(/*! powerbi-models */ \"./node_modules/powerbi-models/dist/models.js\");\r\nvar sdkConfig = __webpack_require__(/*! ./config */ \"./src/config.ts\");\r\nvar errors_1 = __webpack_require__(/*! ./errors */ \"./src/errors.ts\");\r\nvar util_1 = __webpack_require__(/*! ./util */ \"./src/util.ts\");\r\n/**\r\n * Base class for all Power BI embed components\r\n *\r\n * @export\r\n * @abstract\r\n * @hidden\r\n * @class Embed\r\n */\r\nvar Embed = /** @class */ (function () {\r\n /**\r\n * Creates an instance of Embed.\r\n *\r\n * Note: there is circular reference between embeds and the service, because\r\n * the service has a list of all embeds on the host page, and each embed has a reference to the service that created it.\r\n *\r\n * @param {service.Service} service\r\n * @param {HTMLElement} element\r\n * @param {IEmbedConfigurationBase} config\r\n * @hidden\r\n */\r\n function Embed(service, element, config, iframe, phasedRender, isBootstrap) {\r\n /** @hidden */\r\n this.allowedEvents = [];\r\n if ((0, util_1.autoAuthInEmbedUrl)(config.embedUrl)) {\r\n throw new Error(errors_1.EmbedUrlNotSupported);\r\n }\r\n Array.prototype.push.apply(this.allowedEvents, Embed.allowedEvents);\r\n this.eventHandlers = [];\r\n this.service = service;\r\n this.element = element;\r\n this.iframe = iframe;\r\n this.iframeLoaded = false;\r\n this.embedtype = config.type.toLowerCase();\r\n this.commands = [];\r\n this.groups = [];\r\n this.populateConfig(config, isBootstrap);\r\n if (this.embedtype === 'create') {\r\n this.setIframe(false /* set EventListener to call create() on 'load' event*/, phasedRender, isBootstrap);\r\n }\r\n else {\r\n this.setIframe(true /* set EventListener to call load() on 'load' event*/, phasedRender, isBootstrap);\r\n }\r\n }\r\n /**\r\n * Sends createReport configuration data.\r\n *\r\n * ```javascript\r\n * createReport({\r\n * datasetId: '5dac7a4a-4452-46b3-99f6-a25915e0fe55',\r\n * accessToken: 'eyJ0eXA ... TaE2rTSbmg',\r\n * ```\r\n *\r\n * @hidden\r\n * @param {models.IReportCreateConfiguration} config\r\n * @returns {Promise<void>}\r\n */\r\n Embed.prototype.createReport = function (config) {\r\n var _a;\r\n return __awaiter(this, void 0, void 0, function () {\r\n var errors, headers, response, response_1;\r\n return __generator(this, function (_b) {\r\n switch (_b.label) {\r\n case 0:\r\n errors = models.validateCreateReport(config);\r\n if (errors) {\r\n throw errors;\r\n }\r\n _b.label = 1;\r\n case 1:\r\n _b.trys.push([1, 3, , 4]);\r\n headers = {\r\n uid: this.config.uniqueId,\r\n sdkSessionId: this.service.getSdkSessionId()\r\n };\r\n if (!!((_a = this.eventHooks) === null || _a === void 0 ? void 0 : _a.accessTokenProvider)) {\r\n headers.tokenProviderSupplied = true;\r\n }\r\n return [4 /*yield*/, this.service.hpm.post(\"/report/create\", config, headers, this.iframe.contentWindow)];\r\n case 2:\r\n response = _b.sent();\r\n return [2 /*return*/, response.body];\r\n case 3:\r\n response_1 = _b.sent();\r\n throw response_1.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Saves Report.\r\n *\r\n * @returns {Promise<void>}\r\n */\r\n Embed.prototype.save = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response, response_2;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n _a.trys.push([0, 2, , 3]);\r\n return [4 /*yield*/, this.service.hpm.post('/report/save', null, { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 1:\r\n response = _a.sent();\r\n return [2 /*return*/, response.body];\r\n case 2:\r\n response_2 = _a.sent();\r\n throw response_2.body;\r\n case 3: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * SaveAs Report.\r\n *\r\n * @returns {Promise<void>}\r\n */\r\n Embed.prototype.saveAs = function (saveAsParameters) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response, response_3;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n _a.trys.push([0, 2, , 3]);\r\n return [4 /*yield*/, this.service.hpm.post('/report/saveAs', saveAsParameters, { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 1:\r\n response = _a.sent();\r\n return [2 /*return*/, response.body];\r\n case 2:\r\n response_3 = _a.sent();\r\n throw response_3.body;\r\n case 3: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Get the correlationId for the current embed session.\r\n *\r\n * ```javascript\r\n * // Get the correlationId for the current embed session\r\n * report.getCorrelationId()\r\n * .then(correlationId => {\r\n * ...\r\n * });\r\n * ```\r\n *\r\n * @returns {Promise<string>}\r\n */\r\n Embed.prototype.getCorrelationId = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response, response_4;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n _a.trys.push([0, 2, , 3]);\r\n return [4 /*yield*/, this.service.hpm.get(\"/getCorrelationId\", { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 1:\r\n response = _a.sent();\r\n return [2 /*return*/, response.body];\r\n case 2:\r\n response_4 = _a.sent();\r\n throw response_4.body;\r\n case 3: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Sends load configuration data.\r\n *\r\n * ```javascript\r\n * report.load({\r\n * type: 'report',\r\n * id: '5dac7a4a-4452-46b3-99f6-a25915e0fe55',\r\n * accessToken: 'eyJ0eXA ... TaE2rTSbmg',\r\n * settings: {\r\n * navContentPaneEnabled: false\r\n * },\r\n * pageName: \"DefaultPage\",\r\n * filters: [\r\n * {\r\n * ... DefaultReportFilter ...\r\n * }\r\n * ]\r\n * })\r\n * .catch(error => { ... });\r\n * ```\r\n *\r\n * @hidden\r\n * @param {models.ILoadConfiguration} config\r\n * @param {boolean} phasedRender\r\n * @returns {Promise<void>}\r\n */\r\n Embed.prototype.load = function (phasedRender) {\r\n var _a;\r\n return __awaiter(this, void 0, void 0, function () {\r\n var path, headers, timeNow, response, response_5;\r\n return __generator(this, function (_b) {\r\n switch (_b.label) {\r\n case 0:\r\n if (!this.config.accessToken) {\r\n console.debug(\"Power BI SDK iframe is loaded but powerbi.embed is not called yet.\");\r\n return [2 /*return*/];\r\n }\r\n if (!this.iframeLoaded) {\r\n console.debug(\"Power BI SDK is trying to post /report/load before iframe is ready.\");\r\n return [2 /*return*/];\r\n }\r\n path = phasedRender && this.config.type === 'report' ? this.phasedLoadPath : this.loadPath;\r\n headers = {\r\n uid: this.config.uniqueId,\r\n sdkSessionId: this.service.getSdkSessionId(),\r\n bootstrapped: this.config.bootstrapped,\r\n sdkVersion: sdkConfig.default.version\r\n };\r\n if (!!((_a = this.eventHooks) === null || _a === void 0 ? void 0 : _a.accessTokenProvider)) {\r\n headers.tokenProviderSupplied = true;\r\n }\r\n timeNow = new Date();\r\n if (this.lastLoadRequest && (0, util_1.getTimeDiffInMilliseconds)(this.lastLoadRequest, timeNow) < 100) {\r\n console.debug(\"Power BI SDK sent more than two /report/load requests in the last 100ms interval.\");\r\n return [2 /*return*/];\r\n }\r\n this.lastLoadRequest = timeNow;\r\n _b.label = 1;\r\n case 1:\r\n _b.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.service.hpm.post(path, this.config, headers, this.iframe.contentWindow)];\r\n case 2:\r\n response = _b.sent();\r\n return [2 /*return*/, response.body];\r\n case 3:\r\n response_5 = _b.sent();\r\n throw response_5.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Removes one or more event handlers from the list of handlers.\r\n * If a reference to the existing handle function is specified, remove the specific handler.\r\n * If the handler is not specified, remove all handlers for the event name specified.\r\n *\r\n * ```javascript\r\n * report.off('pageChanged')\r\n *\r\n * or\r\n *\r\n * const logHandler = function (event) {\r\n * console.log(event);\r\n * };\r\n *\r\n * report.off('pageChanged', logHandler);\r\n * ```\r\n *\r\n * @template T\r\n * @param {string} eventName\r\n * @param {IEventHandler<T>} [handler]\r\n */\r\n Embed.prototype.off = function (eventName, handler) {\r\n var _this = this;\r\n var fakeEvent = { name: eventName, type: null, id: null, value: null };\r\n if (handler) {\r\n (0, util_1.remove)(function (eventHandler) { return eventHandler.test(fakeEvent) && (eventHandler.handle === handler); }, this.eventHandlers);\r\n this.element.removeEventListener(eventName, handler);\r\n }\r\n else {\r\n var eventHandlersToRemove = this.eventHandlers\r\n .filter(function (eventHandler) { return eventHandler.test(fakeEvent); });\r\n eventHandlersToRemove\r\n .forEach(function (eventHandlerToRemove) {\r\n (0, util_1.remove)(function (eventHandler) { return eventHandler === eventHandlerToRemove; }, _this.eventHandlers);\r\n _this.element.removeEventListener(eventName, eventHandlerToRemove.handle);\r\n });\r\n }\r\n };\r\n /**\r\n * Adds an event handler for a specific event.\r\n *\r\n * ```javascript\r\n * report.on('pageChanged', (event) => {\r\n * console.log('PageChanged: ', event.page.name);\r\n * });\r\n * ```\r\n *\r\n * @template T\r\n * @param {string} eventName\r\n * @param {service.IEventHandler<T>} handler\r\n */\r\n Embed.prototype.on = function (eventName, handler) {\r\n if (this.allowedEvents.indexOf(eventName) === -1) {\r\n throw new Error(\"eventName must be one of \".concat(this.allowedEvents, \". You passed: \").concat(eventName));\r\n }\r\n this.eventHandlers.push({\r\n test: function (event) { return event.name === eventName; },\r\n handle: handler\r\n });\r\n this.element.addEventListener(eventName, handler);\r\n };\r\n /**\r\n * Reloads embed using existing configuration.\r\n * E.g. For reports this effectively clears all filters and makes the first page active which simulates resetting a report back to loaded state.\r\n *\r\n * ```javascript\r\n * report.reload();\r\n * ```\r\n */\r\n Embed.prototype.reload = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.load()];\r\n case 1: return [2 /*return*/, _a.sent()];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Set accessToken.\r\n *\r\n * @returns {Promise<void>}\r\n */\r\n Embed.prototype.setAccessToken = function (accessToken) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var embedType, response, response_6;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if (!accessToken) {\r\n throw new Error(\"Access token cannot be empty\");\r\n }\r\n embedType = this.config.type;\r\n embedType = (embedType === 'create' || embedType === 'visual' || embedType === 'qna') ? 'report' : embedType;\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.service.hpm.post('/' + embedType + '/token', accessToken, { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 2:\r\n response = _a.sent();\r\n this.config.accessToken = accessToken;\r\n this.element.setAttribute(Embed.accessTokenAttribute, accessToken);\r\n this.service.accessToken = accessToken;\r\n return [2 /*return*/, response.body];\r\n case 3:\r\n response_6 = _a.sent();\r\n throw response_6.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Gets an access token from the first available location: config, attribute, global.\r\n *\r\n * @private\r\n * @param {string} globalAccessToken\r\n * @returns {string}\r\n * @hidden\r\n */\r\n Embed.prototype.getAccessToken = function (globalAccessToken) {\r\n var accessToken = this.config.accessToken || this.element.getAttribute(Embed.accessTokenAttribute) || globalAccessToken;\r\n if (!accessToken) {\r\n throw new Error(\"No access token was found for element. You must specify an access token directly on the element using attribute '\".concat(Embed.accessTokenAttribute, \"' or specify a global token at: powerbi.accessToken.\"));\r\n }\r\n return accessToken;\r\n };\r\n /**\r\n * Populate config for create and load\r\n *\r\n * @hidden\r\n * @param {IEmbedConfiguration}\r\n * @returns {void}\r\n */\r\n Embed.prototype.populateConfig = function (config, isBootstrap) {\r\n var _this = this;\r\n var _a, _b, _c, _d, _e, _f, _g, _h, _j;\r\n if (this.bootstrapConfig) {\r\n this.config = (0, util_1.assign)({}, this.bootstrapConfig, config);\r\n // reset bootstrapConfig because we do not want to merge it in re-embed scenario.\r\n this.bootstrapConfig = null;\r\n }\r\n else {\r\n // Copy config - important for multiple iframe scenario.\r\n // Otherwise, if a user uses the same config twice, same unique Id which will be used in different iframes.\r\n this.config = (0, util_1.assign)({}, config);\r\n }\r\n this.config.embedUrl = this.getEmbedUrl(isBootstrap);\r\n this.config.groupId = this.getGroupId();\r\n this.addLocaleToEmbedUrl(config);\r\n this.config.uniqueId = this.getUniqueId();\r\n var extensions = (_b = (_a = this.config) === null || _a === void 0 ? void 0 : _a.settings) === null || _b === void 0 ? void 0 : _b.extensions;\r\n this.commands = (_c = extensions === null || extensions === void 0 ? void 0 : extensions.commands) !== null && _c !== void 0 ? _c : [];\r\n this.groups = (_d = extensions === null || extensions === void 0 ? void 0 : extensions.groups) !== null && _d !== void 0 ? _d : [];\r\n this.initialLayoutType = (_g = (_f = (_e = this.config) === null || _e === void 0 ? void 0 : _e.settings) === null || _f === void 0 ? void 0 : _f.layoutType) !== null && _g !== void 0 ? _g : models.LayoutType.Master;\r\n // Adding commands in extensions array to this.commands\r\n var extensionsArray = (_j = (_h = this.config) === null || _h === void 0 ? void 0 : _h.settings) === null || _j === void 0 ? void 0 : _j.extensions;\r\n if (Array.isArray(extensionsArray)) {\r\n this.commands = [];\r\n extensionsArray.map(function (extension) { if (extension === null || extension === void 0 ? void 0 : extension.command) {\r\n _this.commands.push(extension.command);\r\n } });\r\n }\r\n if (isBootstrap) {\r\n // save current config in bootstrapConfig to be able to merge it on next call to powerbi.embed\r\n this.bootstrapConfig = this.config;\r\n this.bootstrapConfig.bootstrapped = true;\r\n }\r\n else {\r\n this.config.accessToken = this.getAccessToken(this.service.accessToken);\r\n }\r\n this.eventHooks = this.config.eventHooks;\r\n this.validateEventHooks(this.eventHooks);\r\n delete this.config.eventHooks;\r\n this.configChanged(isBootstrap);\r\n };\r\n /**\r\n * Validate EventHooks\r\n *\r\n * @private\r\n * @param {models.EventHooks} eventHooks\r\n * @hidden\r\n */\r\n Embed.prototype.validateEventHooks = function (eventHooks) {\r\n if (!eventHooks) {\r\n return;\r\n }\r\n for (var key in eventHooks) {\r\n if (eventHooks.hasOwnProperty(key) && typeof eventHooks[key] !== 'function') {\r\n throw new Error(key + \" must be a function\");\r\n }\r\n }\r\n var applicationContextProvider = eventHooks.applicationContextProvider;\r\n if (!!applicationContextProvider) {\r\n if (this.embedtype.toLowerCase() !== \"report\") {\r\n throw new Error(\"applicationContextProvider is only supported in report embed\");\r\n }\r\n this.config.embedUrl = (0, util_1.addParamToUrl)(this.config.embedUrl, \"registerQueryCallback\", \"true\");\r\n }\r\n var accessTokenProvider = eventHooks.accessTokenProvider;\r\n if (!!accessTokenProvider) {\r\n if ((['create', 'quickcreate', 'report'].indexOf(this.embedtype.toLowerCase()) === -1) || this.config.tokenType !== models.TokenType.Aad) {\r\n throw new Error(\"accessTokenProvider is only supported in report SaaS embed\");\r\n }\r\n }\r\n };\r\n /**\r\n * Adds locale parameters to embedUrl\r\n *\r\n * @private\r\n * @param {IEmbedConfiguration | models.ICommonEmbedConfiguration} config\r\n * @hidden\r\n */\r\n Embed.prototype.addLocaleToEmbedUrl = function (config) {\r\n if (!config.settings) {\r\n return;\r\n }\r\n var localeSettings = config.settings.localeSettings;\r\n if (localeSettings && localeSettings.language) {\r\n this.config.embedUrl = (0, util_1.addParamToUrl)(this.config.embedUrl, 'language', localeSettings.language);\r\n }\r\n if (localeSettings && localeSettings.formatLocale) {\r\n this.config.embedUrl = (0, util_1.addParamToUrl)(this.config.embedUrl, 'formatLocale', localeSettings.formatLocale);\r\n }\r\n };\r\n /**\r\n * Gets an embed url from the first available location: options, attribute.\r\n *\r\n * @private\r\n * @returns {string}\r\n * @hidden\r\n */\r\n Embed.prototype.getEmbedUrl = function (isBootstrap) {\r\n var embedUrl = this.config.embedUrl || this.element.getAttribute(Embed.embedUrlAttribute);\r\n if (isBootstrap && !embedUrl) {\r\n // Prepare flow, embed url was not provided, use hostname to build embed url.\r\n embedUrl = this.getDefaultEmbedUrl(this.config.hostname);\r\n }\r\n if (typeof embedUrl !== 'string' || embedUrl.length === 0) {\r\n throw new Error(\"Embed Url is required, but it was not found. You must provide an embed url either as part of embed configuration or as attribute '\".concat(Embed.embedUrlAttribute, \"'.\"));\r\n }\r\n return embedUrl;\r\n };\r\n /**\r\n * @hidden\r\n */\r\n Embed.prototype.getDefaultEmbedUrl = function (hostname) {\r\n if (!hostname) {\r\n hostname = Embed.defaultEmbedHostName;\r\n }\r\n var endpoint = this.getDefaultEmbedUrlEndpoint();\r\n // Trim spaces to fix user mistakes.\r\n hostname = hostname.toLowerCase().trim();\r\n if (hostname.indexOf(\"http://\") === 0) {\r\n throw new Error(\"HTTP is not allowed. HTTPS is required\");\r\n }\r\n if (hostname.indexOf(\"https://\") === 0) {\r\n return \"\".concat(hostname, \"/\").concat(endpoint);\r\n }\r\n return \"https://\".concat(hostname, \"/\").concat(endpoint);\r\n };\r\n /**\r\n * Gets a unique ID from the first available location: options, attribute.\r\n * If neither is provided generate a unique string.\r\n *\r\n * @private\r\n * @returns {string}\r\n * @hidden\r\n */\r\n Embed.prototype.getUniqueId = function () {\r\n return this.config.uniqueId || this.element.getAttribute(Embed.nameAttribute) || (0, util_1.createRandomString)();\r\n };\r\n /**\r\n * Gets the group ID from the first available location: options, embeddedUrl.\r\n *\r\n * @private\r\n * @returns {string}\r\n * @hidden\r\n */\r\n Embed.prototype.getGroupId = function () {\r\n return this.config.groupId || Embed.findGroupIdFromEmbedUrl(this.config.embedUrl);\r\n };\r\n /**\r\n * Requests the browser to render the component's iframe in fullscreen mode.\r\n */\r\n Embed.prototype.fullscreen = function () {\r\n var requestFullScreen = this.iframe.requestFullscreen || this.iframe.msRequestFullscreen || this.iframe.mozRequestFullScreen || this.iframe.webkitRequestFullscreen;\r\n requestFullScreen.call(this.iframe);\r\n };\r\n /**\r\n * Requests the browser to exit fullscreen mode.\r\n */\r\n Embed.prototype.exitFullscreen = function () {\r\n if (!this.isFullscreen(this.iframe)) {\r\n return;\r\n }\r\n var exitFullscreen = document.exitFullscreen || document.mozCancelFullScreen || document.webkitExitFullscreen || document.msExitFullscreen;\r\n exitFullscreen.call(document);\r\n };\r\n /**\r\n * Returns true if the iframe is rendered in fullscreen mode,\r\n * otherwise returns false.\r\n *\r\n * @private\r\n * @param {HTMLIFrameElement} iframe\r\n * @returns {boolean}\r\n * @hidden\r\n */\r\n Embed.prototype.isFullscreen = function (iframe) {\r\n var options = ['fullscreenElement', 'webkitFullscreenElement', 'mozFullscreenScreenElement', 'msFullscreenElement'];\r\n return options.some(function (option) { return document[option] === iframe; });\r\n };\r\n /**\r\n * Sets Iframe for embed\r\n *\r\n * @hidden\r\n */\r\n Embed.prototype.setIframe = function (isLoad, phasedRender, isBootstrap) {\r\n var _this = this;\r\n if (!this.iframe) {\r\n var iframeContent = document.createElement(\"iframe\");\r\n var embedUrl = this.config.uniqueId ? (0, util_1.addParamToUrl)(this.config.embedUrl, 'uid', this.config.uniqueId) : this.config.embedUrl;\r\n iframeContent.style.width = '100%';\r\n iframeContent.style.height = '100%';\r\n iframeContent.setAttribute(\"src\", embedUrl);\r\n iframeContent.setAttribute(\"scrolling\", \"no\");\r\n iframeContent.setAttribute(\"allowfullscreen\", \"true\");\r\n var node = this.element;\r\n while (node.firstChild) {\r\n node.removeChild(node.firstChild);\r\n }\r\n node.appendChild(iframeContent);\r\n this.iframe = node.firstChild;\r\n }\r\n if (isLoad) {\r\n if (!isBootstrap) {\r\n // Validate config if it's not a bootstrap case.\r\n var errors = this.validate(this.config);\r\n if (errors) {\r\n throw errors;\r\n }\r\n }\r\n this.iframe.addEventListener('load', function () {\r\n _this.iframeLoaded = true;\r\n _this.load(phasedRender);\r\n }, false);\r\n if (this.service.getNumberOfComponents() <= Embed.maxFrontLoadTimes) {\r\n this.frontLoadHandler = function () {\r\n _this.frontLoadSendConfig(_this.config);\r\n };\r\n // 'ready' event is fired by the embedded element (not by the iframe)\r\n this.element.addEventListener('ready', this.frontLoadHandler, false);\r\n }\r\n }\r\n else {\r\n this.iframe.addEventListener('load', function () { return _this.createReport(_this.createConfig); }, false);\r\n }\r\n };\r\n /**\r\n * Set the component title for accessibility. In case of iframes, this method will change the iframe title.\r\n */\r\n Embed.prototype.setComponentTitle = function (title) {\r\n if (!this.iframe) {\r\n return;\r\n }\r\n if (title == null) {\r\n this.iframe.removeAttribute(\"title\");\r\n }\r\n else {\r\n this.iframe.setAttribute(\"title\", title);\r\n }\r\n };\r\n /**\r\n * Sets element's tabindex attribute\r\n */\r\n Embed.prototype.setComponentTabIndex = function (tabIndex) {\r\n if (!this.element) {\r\n return;\r\n }\r\n this.element.setAttribute(\"tabindex\", (tabIndex == null) ? \"0\" : tabIndex.toString());\r\n };\r\n /**\r\n * Removes element's tabindex attribute\r\n */\r\n Embed.prototype.removeComponentTabIndex = function (_tabIndex) {\r\n if (!this.element) {\r\n return;\r\n }\r\n this.element.removeAttribute(\"tabindex\");\r\n };\r\n /**\r\n * Adds the ability to get groupId from url.\r\n * By extracting the ID we can ensure that the ID is always explicitly provided as part of the load configuration.\r\n *\r\n * @hidden\r\n * @static\r\n * @param {string} url\r\n * @returns {string}\r\n */\r\n Embed.findGroupIdFromEmbedUrl = function (url) {\r\n var groupIdRegEx = /groupId=\"?([^&]+)\"?/;\r\n var groupIdMatch = url.match(groupIdRegEx);\r\n var groupId;\r\n if (groupIdMatch) {\r\n groupId = groupIdMatch[1];\r\n }\r\n return groupId;\r\n };\r\n /**\r\n * Sends the config for front load calls, after 'ready' message is received from the iframe\r\n *\r\n * @hidden\r\n */\r\n Embed.prototype.frontLoadSendConfig = function (config) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var errors, response, response_7;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if (!config.accessToken) {\r\n return [2 /*return*/];\r\n }\r\n errors = this.validate(config);\r\n if (errors) {\r\n throw errors;\r\n }\r\n // contentWindow must be initialized\r\n if (this.iframe.contentWindow == null) {\r\n return [2 /*return*/];\r\n }\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.service.hpm.post(\"/frontload/config\", config, { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 2:\r\n response = _a.sent();\r\n return [2 /*return*/, response.body];\r\n case 3:\r\n response_7 = _a.sent();\r\n throw response_7.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /** @hidden */\r\n Embed.allowedEvents = [\"loaded\", \"saved\", \"rendered\", \"saveAsTriggered\", \"error\", \"dataSelected\", \"buttonClicked\", \"info\"];\r\n /** @hidden */\r\n Embed.accessTokenAttribute = 'powerbi-access-token';\r\n /** @hidden */\r\n Embed.embedUrlAttribute = 'powerbi-embed-url';\r\n /** @hidden */\r\n Embed.nameAttribute = 'powerbi-name';\r\n /** @hidden */\r\n Embed.typeAttribute = 'powerbi-type';\r\n /** @hidden */\r\n Embed.defaultEmbedHostName = \"https://app.powerbi.com\";\r\n /** @hidden */\r\n Embed.maxFrontLoadTimes = 2;\r\n return Embed;\r\n}());\r\nexports.Embed = Embed;\r\n\n\n/***/ }),\n\n/***/ \"./src/errors.ts\":\n/*!***********************!*\\\n !*** ./src/errors.ts ***!\n \\***********************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.EmbedUrlNotSupported = exports.APINotSupportedForRDLError = void 0;\r\nexports.APINotSupportedForRDLError = \"This API is currently not supported for RDL reports\";\r\nexports.EmbedUrlNotSupported = \"Embed URL is invalid for this scenario. Please use Power BI REST APIs to get the valid URL\";\r\n\n\n/***/ }),\n\n/***/ \"./src/factories.ts\":\n/*!**************************!*\\\n !*** ./src/factories.ts ***!\n \\**************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.routerFactory = exports.wpmpFactory = exports.hpmFactory = void 0;\r\n/**\r\n * TODO: Need to find better place for these factory functions or refactor how we handle dependency injection\r\n */\r\nvar window_post_message_proxy_1 = __webpack_require__(/*! window-post-message-proxy */ \"./node_modules/window-post-message-proxy/dist/windowPostMessageProxy.js\");\r\nvar http_post_message_1 = __webpack_require__(/*! http-post-message */ \"./node_modules/http-post-message/dist/httpPostMessage.js\");\r\nvar powerbi_router_1 = __webpack_require__(/*! powerbi-router */ \"./node_modules/powerbi-router/dist/router.js\");\r\nvar config_1 = __webpack_require__(/*! ./config */ \"./src/config.ts\");\r\nvar hpmFactory = function (wpmp, defaultTargetWindow, sdkVersion, sdkType, sdkWrapperVersion) {\r\n if (sdkVersion === void 0) { sdkVersion = config_1.default.version; }\r\n if (sdkType === void 0) { sdkType = config_1.default.type; }\r\n return new http_post_message_1.HttpPostMessage(wpmp, {\r\n 'x-sdk-type': sdkType,\r\n 'x-sdk-version': sdkVersion,\r\n 'x-sdk-wrapper-version': sdkWrapperVersion,\r\n }, defaultTargetWindow);\r\n};\r\nexports.hpmFactory = hpmFactory;\r\nvar wpmpFactory = function (name, logMessages, eventSourceOverrideWindow) {\r\n return new window_post_message_proxy_1.WindowPostMessageProxy({\r\n processTrackingProperties: {\r\n addTrackingProperties: http_post_message_1.HttpPostMessage.addTrackingProperties,\r\n getTrackingProperties: http_post_message_1.HttpPostMessage.getTrackingProperties,\r\n },\r\n isErrorMessage: http_post_message_1.HttpPostMessage.isErrorMessage,\r\n suppressWarnings: true,\r\n name: name,\r\n logMessages: logMessages,\r\n eventSourceOverrideWindow: eventSourceOverrideWindow\r\n });\r\n};\r\nexports.wpmpFactory = wpmpFactory;\r\nvar routerFactory = function (wpmp) {\r\n return new powerbi_router_1.Router(wpmp);\r\n};\r\nexports.routerFactory = routerFactory;\r\n\n\n/***/ }),\n\n/***/ \"./src/page.ts\":\n/*!*********************!*\\\n !*** ./src/page.ts ***!\n \\*********************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n};\r\nvar __generator = (this && this.__generator) || function (thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n};\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.Page = void 0;\r\nvar powerbi_models_1 = __webpack_require__(/*! powerbi-models */ \"./node_modules/powerbi-models/dist/models.js\");\r\nvar visualDescriptor_1 = __webpack_require__(/*! ./visualDescriptor */ \"./src/visualDescriptor.ts\");\r\nvar util_1 = __webpack_require__(/*! ./util */ \"./src/util.ts\");\r\nvar errors_1 = __webpack_require__(/*! ./errors */ \"./src/errors.ts\");\r\n/**\r\n * A Power BI report page\r\n *\r\n * @export\r\n * @class Page\r\n * @implements {IPageNode}\r\n * @implements {IFilterable}\r\n */\r\nvar Page = /** @class */ (function () {\r\n /**\r\n * Creates an instance of a Power BI report page.\r\n *\r\n * @param {IReportNode} report\r\n * @param {string} name\r\n * @param {string} [displayName]\r\n * @param {boolean} [isActivePage]\r\n * @param {SectionVisibility} [visibility]\r\n * @hidden\r\n */\r\n function Page(report, name, displayName, isActivePage, visibility, defaultSize, defaultDisplayOption, mobileSize, background, wallpaper) {\r\n this.report = report;\r\n this.name = name;\r\n this.displayName = displayName;\r\n this.isActive = isActivePage;\r\n this.visibility = visibility;\r\n this.defaultSize = defaultSize;\r\n this.mobileSize = mobileSize;\r\n this.defaultDisplayOption = defaultDisplayOption;\r\n this.background = background;\r\n this.wallpaper = wallpaper;\r\n }\r\n /**\r\n * Gets all page level filters within the report.\r\n *\r\n * ```javascript\r\n * page.getFilters()\r\n * .then(filters => { ... });\r\n * ```\r\n *\r\n * @returns {(Promise<IFilter[]>)}\r\n */\r\n Page.prototype.getFilters = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response, response_1;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n _a.trys.push([0, 2, , 3]);\r\n return [4 /*yield*/, this.report.service.hpm.get(\"/report/pages/\".concat(this.name, \"/filters\"), { uid: this.report.config.uniqueId }, this.report.iframe.contentWindow)];\r\n case 1:\r\n response = _a.sent();\r\n return [2 /*return*/, response.body];\r\n case 2:\r\n response_1 = _a.sent();\r\n throw response_1.body;\r\n case 3: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Update the filters for the current page according to the operation: Add, replace all, replace by target or remove.\r\n *\r\n * ```javascript\r\n * page.updateFilters(FiltersOperations.Add, filters)\r\n * .catch(errors => { ... });\r\n * ```\r\n *\r\n * @param {(IFilter[])} filters\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n Page.prototype.updateFilters = function (operation, filters) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var updateFiltersRequest, response_2;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n updateFiltersRequest = {\r\n filtersOperation: operation,\r\n filters: filters\r\n };\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.report.service.hpm.post(\"/report/pages/\".concat(this.name, \"/filters\"), updateFiltersRequest, { uid: this.report.config.uniqueId }, this.report.iframe.contentWindow)];\r\n case 2: return [2 /*return*/, _a.sent()];\r\n case 3:\r\n response_2 = _a.sent();\r\n throw response_2.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Removes all filters from this page of the report.\r\n *\r\n * ```javascript\r\n * page.removeFilters();\r\n * ```\r\n *\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n Page.prototype.removeFilters = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.updateFilters(powerbi_models_1.FiltersOperations.RemoveAll)];\r\n case 1: return [2 /*return*/, _a.sent()];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Sets all filters on the current page.\r\n *\r\n * ```javascript\r\n * page.setFilters(filters)\r\n * .catch(errors => { ... });\r\n * ```\r\n *\r\n * @param {(IFilter[])} filters\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n Page.prototype.setFilters = function (filters) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response_3;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n _a.trys.push([0, 2, , 3]);\r\n return [4 /*yield*/, this.report.service.hpm.put(\"/report/pages/\".concat(this.name, \"/filters\"), filters, { uid: this.report.config.uniqueId }, this.report.iframe.contentWindow)];\r\n case 1: return [2 /*return*/, _a.sent()];\r\n case 2:\r\n response_3 = _a.sent();\r\n throw response_3.body;\r\n case 3: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Delete the page from the report\r\n *\r\n * ```javascript\r\n * // Delete the page from the report\r\n * page.delete();\r\n * ```\r\n *\r\n * @returns {Promise<void>}\r\n */\r\n Page.prototype.delete = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response, response_4;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n _a.trys.push([0, 2, , 3]);\r\n return [4 /*yield*/, this.report.service.hpm.delete(\"/report/pages/\".concat(this.name), {}, { uid: this.report.config.uniqueId }, this.report.iframe.contentWindow)];\r\n case 1:\r\n response = _a.sent();\r\n return [2 /*return*/, response.body];\r\n case 2:\r\n response_4 = _a.sent();\r\n throw response_4.body;\r\n case 3: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Makes the current page the active page of the report.\r\n *\r\n * ```javascript\r\n * page.setActive();\r\n * ```\r\n *\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n Page.prototype.setActive = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var page, response_5;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n page = {\r\n name: this.name,\r\n displayName: null,\r\n isActive: true\r\n };\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.report.service.hpm.put('/report/pages/active', page, { uid: this.report.config.uniqueId }, this.report.iframe.contentWindow)];\r\n case 2: return [2 /*return*/, _a.sent()];\r\n case 3:\r\n response_5 = _a.sent();\r\n throw response_5.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Set displayName to the current page.\r\n *\r\n * ```javascript\r\n * page.setName(displayName);\r\n * ```\r\n *\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n Page.prototype.setDisplayName = function (displayName) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var page, response_6;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n page = {\r\n name: this.name,\r\n displayName: displayName,\r\n };\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.report.service.hpm.put(\"/report/pages/\".concat(this.name, \"/name\"), page, { uid: this.report.config.uniqueId }, this.report.iframe.contentWindow)];\r\n case 2: return [2 /*return*/, _a.sent()];\r\n case 3:\r\n response_6 = _a.sent();\r\n throw response_6.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Gets all the visuals on the page.\r\n *\r\n * ```javascript\r\n * page.getVisuals()\r\n * .then(visuals => { ... });\r\n * ```\r\n *\r\n * @returns {Promise<VisualDescriptor[]>}\r\n */\r\n Page.prototype.getVisuals = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response, response_7;\r\n var _this = this;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if ((0, util_1.isRDLEmbed)(this.report.config.embedUrl)) {\r\n return [2 /*return*/, Promise.reject(errors_1.APINotSupportedForRDLError)];\r\n }\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.report.service.hpm.get(\"/report/pages/\".concat(this.name, \"/visuals\"), { uid: this.report.config.uniqueId }, this.report.iframe.contentWindow)];\r\n case 2:\r\n response = _a.sent();\r\n return [2 /*return*/, response.body\r\n .map(function (visual) { return new visualDescriptor_1.VisualDescriptor(_this, visual.name, visual.title, visual.type, visual.layout); })];\r\n case 3:\r\n response_7 = _a.sent();\r\n throw response_7.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Gets a visual by name on the page.\r\n *\r\n * ```javascript\r\n * page.getVisualByName(visualName: string)\r\n * .then(visual => {\r\n * ...\r\n * });\r\n * ```\r\n *\r\n * @param {string} visualName\r\n * @returns {Promise<VisualDescriptor>}\r\n */\r\n Page.prototype.getVisualByName = function (visualName) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response, visual, response_8;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if ((0, util_1.isRDLEmbed)(this.report.config.embedUrl)) {\r\n return [2 /*return*/, Promise.reject(errors_1.APINotSupportedForRDLError)];\r\n }\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.report.service.hpm.get(\"/report/pages/\".concat(this.name, \"/visuals\"), { uid: this.report.config.uniqueId }, this.report.iframe.contentWindow)];\r\n case 2:\r\n response = _a.sent();\r\n visual = response.body.find(function (v) { return v.name === visualName; });\r\n if (!visual) {\r\n return [2 /*return*/, Promise.reject(powerbi_models_1.CommonErrorCodes.NotFound)];\r\n }\r\n return [2 /*return*/, new visualDescriptor_1.VisualDescriptor(this, visual.name, visual.title, visual.type, visual.layout)];\r\n case 3:\r\n response_8 = _a.sent();\r\n throw response_8.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Updates the display state of a visual in a page.\r\n *\r\n * ```javascript\r\n * page.setVisualDisplayState(visualName, displayState)\r\n * .catch(error => { ... });\r\n * ```\r\n *\r\n * @param {string} visualName\r\n * @param {VisualContainerDisplayMode} displayState\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n Page.prototype.setVisualDisplayState = function (visualName, displayState) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var pageName, report;\r\n return __generator(this, function (_a) {\r\n pageName = this.name;\r\n report = this.report;\r\n return [2 /*return*/, report.setVisualDisplayState(pageName, visualName, displayState)];\r\n });\r\n });\r\n };\r\n /**\r\n * Updates the position of a visual in a page.\r\n *\r\n * ```javascript\r\n * page.moveVisual(visualName, x, y, z)\r\n * .catch(error => { ... });\r\n * ```\r\n *\r\n * @param {string} visualName\r\n * @param {number} x\r\n * @param {number} y\r\n * @param {number} z\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n Page.prototype.moveVisual = function (visualName, x, y, z) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var pageName, report;\r\n return __generator(this, function (_a) {\r\n pageName = this.name;\r\n report = this.report;\r\n return [2 /*return*/, report.moveVisual(pageName, visualName, x, y, z)];\r\n });\r\n });\r\n };\r\n /**\r\n * Resize a visual in a page.\r\n *\r\n * ```javascript\r\n * page.resizeVisual(visualName, width, height)\r\n * .catch(error => { ... });\r\n * ```\r\n *\r\n * @param {string} visualName\r\n * @param {number} width\r\n * @param {number} height\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n Page.prototype.resizeVisual = function (visualName, width, height) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var pageName, report;\r\n return __generator(this, function (_a) {\r\n pageName = this.name;\r\n report = this.report;\r\n return [2 /*return*/, report.resizeVisual(pageName, visualName, width, height)];\r\n });\r\n });\r\n };\r\n /**\r\n * Updates the size of active page.\r\n *\r\n * ```javascript\r\n * page.resizePage(pageSizeType, width, height)\r\n * .catch(error => { ... });\r\n * ```\r\n *\r\n * @param {PageSizeType} pageSizeType\r\n * @param {number} width\r\n * @param {number} height\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n Page.prototype.resizePage = function (pageSizeType, width, height) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var report;\r\n return __generator(this, function (_a) {\r\n if (!this.isActive) {\r\n return [2 /*return*/, Promise.reject('Cannot resize the page. Only the active page can be resized')];\r\n }\r\n report = this.report;\r\n return [2 /*return*/, report.resizeActivePage(pageSizeType, width, height)];\r\n });\r\n });\r\n };\r\n /**\r\n * Gets the list of slicer visuals on the page.\r\n *\r\n * ```javascript\r\n * page.getSlicers()\r\n * .then(slicers => {\r\n * ...\r\n * });\r\n * ```\r\n *\r\n * @returns {Promise<IVisual[]>}\r\n */\r\n Page.prototype.getSlicers = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response, response_9;\r\n var _this = this;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if ((0, util_1.isRDLEmbed)(this.report.config.embedUrl)) {\r\n return [2 /*return*/, Promise.reject(errors_1.APINotSupportedForRDLError)];\r\n }\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.report.service.hpm.get(\"/report/pages/\".concat(this.name, \"/visuals\"), { uid: this.report.config.uniqueId }, this.report.iframe.contentWindow)];\r\n case 2:\r\n response = _a.sent();\r\n return [2 /*return*/, response.body\r\n .filter(function (visual) { return visual.type === 'slicer'; })\r\n .map(function (visual) { return new visualDescriptor_1.VisualDescriptor(_this, visual.name, visual.title, visual.type, visual.layout); })];\r\n case 3:\r\n response_9 = _a.sent();\r\n throw response_9.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Checks if page has layout.\r\n *\r\n * ```javascript\r\n * page.hasLayout(layoutType)\r\n * .then(hasLayout: boolean => { ... });\r\n * ```\r\n *\r\n * @returns {(Promise<boolean>)}\r\n */\r\n Page.prototype.hasLayout = function (layoutType) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var layoutTypeEnum, response, response_10;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if ((0, util_1.isRDLEmbed)(this.report.config.embedUrl)) {\r\n return [2 /*return*/, Promise.reject(errors_1.APINotSupportedForRDLError)];\r\n }\r\n layoutTypeEnum = powerbi_models_1.LayoutType[layoutType];\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.report.service.hpm.get(\"/report/pages/\".concat(this.name, \"/layoutTypes/\").concat(layoutTypeEnum), { uid: this.report.config.uniqueId }, this.report.iframe.contentWindow)];\r\n case 2:\r\n response = _a.sent();\r\n return [2 /*return*/, response.body];\r\n case 3:\r\n response_10 = _a.sent();\r\n throw response_10.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n return Page;\r\n}());\r\nexports.Page = Page;\r\n\n\n/***/ }),\n\n/***/ \"./src/powerbi-client.ts\":\n/*!*******************************!*\\\n !*** ./src/powerbi-client.ts ***!\n \\*******************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.RelativeTimeFilterBuilder = exports.RelativeDateFilterBuilder = exports.TopNFilterBuilder = exports.AdvancedFilterBuilder = exports.BasicFilterBuilder = exports.VisualDescriptor = exports.Visual = exports.Qna = exports.Page = exports.Embed = exports.Tile = exports.Dashboard = exports.Report = exports.models = exports.factories = exports.service = void 0;\r\n/**\r\n * @hidden\r\n */\r\nvar models = __webpack_require__(/*! powerbi-models */ \"./node_modules/powerbi-models/dist/models.js\");\r\nexports.models = models;\r\nvar service = __webpack_require__(/*! ./service */ \"./src/service.ts\");\r\nexports.service = service;\r\nvar factories = __webpack_require__(/*! ./factories */ \"./src/factories.ts\");\r\nexports.factories = factories;\r\nvar report_1 = __webpack_require__(/*! ./report */ \"./src/report.ts\");\r\nObject.defineProperty(exports, \"Report\", { enumerable: true, get: function () { return report_1.Report; } });\r\nvar dashboard_1 = __webpack_require__(/*! ./dashboard */ \"./src/dashboard.ts\");\r\nObject.defineProperty(exports, \"Dashboard\", { enumerable: true, get: function () { return dashboard_1.Dashboard; } });\r\nvar tile_1 = __webpack_require__(/*! ./tile */ \"./src/tile.ts\");\r\nObject.defineProperty(exports, \"Tile\", { enumerable: true, get: function () { return tile_1.Tile; } });\r\nvar embed_1 = __webpack_require__(/*! ./embed */ \"./src/embed.ts\");\r\nObject.defineProperty(exports, \"Embed\", { enumerable: true, get: function () { return embed_1.Embed; } });\r\nvar page_1 = __webpack_require__(/*! ./page */ \"./src/page.ts\");\r\nObject.defineProperty(exports, \"Page\", { enumerable: true, get: function () { return page_1.Page; } });\r\nvar qna_1 = __webpack_require__(/*! ./qna */ \"./src/qna.ts\");\r\nObject.defineProperty(exports, \"Qna\", { enumerable: true, get: function () { return qna_1.Qna; } });\r\nvar visual_1 = __webpack_require__(/*! ./visual */ \"./src/visual.ts\");\r\nObject.defineProperty(exports, \"Visual\", { enumerable: true, get: function () { return visual_1.Visual; } });\r\nvar visualDescriptor_1 = __webpack_require__(/*! ./visualDescriptor */ \"./src/visualDescriptor.ts\");\r\nObject.defineProperty(exports, \"VisualDescriptor\", { enumerable: true, get: function () { return visualDescriptor_1.VisualDescriptor; } });\r\nvar FilterBuilders_1 = __webpack_require__(/*! ./FilterBuilders */ \"./src/FilterBuilders/index.ts\");\r\nObject.defineProperty(exports, \"BasicFilterBuilder\", { enumerable: true, get: function () { return FilterBuilders_1.BasicFilterBuilder; } });\r\nObject.defineProperty(exports, \"AdvancedFilterBuilder\", { enumerable: true, get: function () { return FilterBuilders_1.AdvancedFilterBuilder; } });\r\nObject.defineProperty(exports, \"TopNFilterBuilder\", { enumerable: true, get: function () { return FilterBuilders_1.TopNFilterBuilder; } });\r\nObject.defineProperty(exports, \"RelativeDateFilterBuilder\", { enumerable: true, get: function () { return FilterBuilders_1.RelativeDateFilterBuilder; } });\r\nObject.defineProperty(exports, \"RelativeTimeFilterBuilder\", { enumerable: true, get: function () { return FilterBuilders_1.RelativeTimeFilterBuilder; } });\r\n/**\r\n * Makes Power BI available to the global object for use in applications that don't have module loading support.\r\n *\r\n * Note: create an instance of the class with the default configuration for normal usage, or save the class so that you can create an instance of the service.\r\n */\r\nvar powerbi = new service.Service(factories.hpmFactory, factories.wpmpFactory, factories.routerFactory);\r\n// powerBI SDK may use Power BI object under different key, in order to avoid name collisions\r\nif (window.powerbi && window.powerBISDKGlobalServiceInstanceName) {\r\n window[window.powerBISDKGlobalServiceInstanceName] = powerbi;\r\n}\r\nelse {\r\n // Default to Power BI.\r\n window.powerbi = powerbi;\r\n}\r\n\n\n/***/ }),\n\n/***/ \"./src/qna.ts\":\n/*!********************!*\\\n !*** ./src/qna.ts ***!\n \\********************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n};\r\nvar __generator = (this && this.__generator) || function (thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n};\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.Qna = void 0;\r\nvar powerbi_models_1 = __webpack_require__(/*! powerbi-models */ \"./node_modules/powerbi-models/dist/models.js\");\r\nvar embed_1 = __webpack_require__(/*! ./embed */ \"./src/embed.ts\");\r\n/**\r\n * The Power BI Q&A embed component\r\n *\r\n * @export\r\n * @class Qna\r\n * @extends {Embed}\r\n */\r\nvar Qna = /** @class */ (function (_super) {\r\n __extends(Qna, _super);\r\n /**\r\n * @hidden\r\n */\r\n function Qna(service, element, config, phasedRender, isBootstrap) {\r\n var _this = _super.call(this, service, element, config, /* iframe */ undefined, phasedRender, isBootstrap) || this;\r\n _this.loadPath = \"/qna/load\";\r\n _this.phasedLoadPath = \"/qna/prepare\";\r\n Array.prototype.push.apply(_this.allowedEvents, Qna.allowedEvents);\r\n return _this;\r\n }\r\n /**\r\n * The ID of the Q&A embed component\r\n *\r\n * @returns {string}\r\n */\r\n Qna.prototype.getId = function () {\r\n return null;\r\n };\r\n /**\r\n * Change the question of the Q&A embed component\r\n *\r\n * @param {string} question - question which will render Q&A data\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n Qna.prototype.setQuestion = function (question) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var qnaData, response_1;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n qnaData = {\r\n question: question\r\n };\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.service.hpm.post('/qna/interpret', qnaData, { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 2: return [2 /*return*/, _a.sent()];\r\n case 3:\r\n response_1 = _a.sent();\r\n throw response_1.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Handle config changes.\r\n *\r\n * @returns {void}\r\n */\r\n Qna.prototype.configChanged = function (_isBootstrap) {\r\n // Nothing to do in Q&A embed.\r\n };\r\n /**\r\n * @hidden\r\n * @returns {string}\r\n */\r\n Qna.prototype.getDefaultEmbedUrlEndpoint = function () {\r\n return \"qnaEmbed\";\r\n };\r\n /**\r\n * Validate load configuration.\r\n */\r\n Qna.prototype.validate = function (config) {\r\n return (0, powerbi_models_1.validateLoadQnaConfiguration)(config);\r\n };\r\n /** @hidden */\r\n Qna.type = \"Qna\";\r\n /** @hidden */\r\n Qna.allowedEvents = [\"loaded\", \"visualRendered\"];\r\n return Qna;\r\n}(embed_1.Embed));\r\nexports.Qna = Qna;\r\n\n\n/***/ }),\n\n/***/ \"./src/report.ts\":\n/*!***********************!*\\\n !*** ./src/report.ts ***!\n \\***********************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n};\r\nvar __generator = (this && this.__generator) || function (thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n};\r\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n};\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.Report = void 0;\r\nvar powerbi_models_1 = __webpack_require__(/*! powerbi-models */ \"./node_modules/powerbi-models/dist/models.js\");\r\nvar embed_1 = __webpack_require__(/*! ./embed */ \"./src/embed.ts\");\r\nvar util_1 = __webpack_require__(/*! ./util */ \"./src/util.ts\");\r\nvar errors_1 = __webpack_require__(/*! ./errors */ \"./src/errors.ts\");\r\nvar page_1 = __webpack_require__(/*! ./page */ \"./src/page.ts\");\r\nvar bookmarksManager_1 = __webpack_require__(/*! ./bookmarksManager */ \"./src/bookmarksManager.ts\");\r\nvar assert = __webpack_require__(/*! assert */ \"./node_modules/assert/assert.js\");\r\n/**\r\n * The Power BI Report embed component\r\n *\r\n * @export\r\n * @class Report\r\n * @extends {Embed}\r\n * @implements {IReportNode}\r\n * @implements {IFilterable}\r\n */\r\nvar Report = /** @class */ (function (_super) {\r\n __extends(Report, _super);\r\n /**\r\n * Creates an instance of a Power BI Report.\r\n *\r\n * @param {Service} service\r\n * @param {HTMLElement} element\r\n * @param {IEmbedConfiguration} config\r\n * @hidden\r\n */\r\n function Report(service, element, baseConfig, phasedRender, isBootstrap, iframe) {\r\n var _this = this;\r\n var config = baseConfig;\r\n _this = _super.call(this, service, element, config, iframe, phasedRender, isBootstrap) || this;\r\n _this.loadPath = \"/report/load\";\r\n _this.phasedLoadPath = \"/report/prepare\";\r\n Array.prototype.push.apply(_this.allowedEvents, Report.allowedEvents);\r\n _this.bookmarksManager = new bookmarksManager_1.BookmarksManager(service, config, _this.iframe);\r\n service.router.post(\"/reports/\".concat(_this.config.uniqueId, \"/eventHooks/:eventName\"), function (req, _res) { return __awaiter(_this, void 0, void 0, function () {\r\n var _a;\r\n var _b, _c;\r\n return __generator(this, function (_d) {\r\n switch (_d.label) {\r\n case 0:\r\n _a = req.params.eventName;\r\n switch (_a) {\r\n case \"preQuery\": return [3 /*break*/, 1];\r\n case \"newAccessToken\": return [3 /*break*/, 3];\r\n }\r\n return [3 /*break*/, 5];\r\n case 1:\r\n req.body = req.body || {};\r\n req.body.report = this;\r\n return [4 /*yield*/, service.invokeSDKHook((_b = this.eventHooks) === null || _b === void 0 ? void 0 : _b.applicationContextProvider, req, _res)];\r\n case 2:\r\n _d.sent();\r\n return [3 /*break*/, 6];\r\n case 3:\r\n req.body = req.body || {};\r\n req.body.report = this;\r\n return [4 /*yield*/, service.invokeSDKHook((_c = this.eventHooks) === null || _c === void 0 ? void 0 : _c.accessTokenProvider, req, _res)];\r\n case 4:\r\n _d.sent();\r\n return [3 /*break*/, 6];\r\n case 5:\r\n assert(false, \"\".concat(req.params.eventName, \" eventHook is not supported\"));\r\n return [3 /*break*/, 6];\r\n case 6: return [2 /*return*/];\r\n }\r\n });\r\n }); });\r\n return _this;\r\n }\r\n /**\r\n * Adds backwards compatibility for the previous load configuration, which used the reportId query parameter to specify the report ID\r\n * (e.g. http://embedded.powerbi.com/appTokenReportEmbed?reportId=854846ed-2106-4dc2-bc58-eb77533bf2f1).\r\n *\r\n * By extracting the ID we can ensure that the ID is always explicitly provided as part of the load configuration.\r\n *\r\n * @hidden\r\n * @static\r\n * @param {string} url\r\n * @returns {string}\r\n */\r\n Report.findIdFromEmbedUrl = function (url) {\r\n var reportIdRegEx = /reportId=\"?([^&]+)\"?/;\r\n var reportIdMatch = url.match(reportIdRegEx);\r\n var reportId;\r\n if (reportIdMatch) {\r\n reportId = reportIdMatch[1];\r\n }\r\n return reportId;\r\n };\r\n /**\r\n * Render a preloaded report, using phased embedding API\r\n *\r\n * ```javascript\r\n * // Load report\r\n * var report = powerbi.load(element, config);\r\n *\r\n * ...\r\n *\r\n * // Render report\r\n * report.render()\r\n * ```\r\n *\r\n * @returns {Promise<void>}\r\n */\r\n Report.prototype.render = function (config) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response, response_1;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n _a.trys.push([0, 2, , 3]);\r\n return [4 /*yield*/, this.service.hpm.post(\"/report/render\", config, { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 1:\r\n response = _a.sent();\r\n return [2 /*return*/, response.body];\r\n case 2:\r\n response_1 = _a.sent();\r\n throw response_1.body;\r\n case 3: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Add an empty page to the report\r\n *\r\n * ```javascript\r\n * // Add a page to the report with \"Sales\" as the page display name\r\n * report.addPage(\"Sales\");\r\n * ```\r\n *\r\n * @returns {Promise<Page>}\r\n */\r\n Report.prototype.addPage = function (displayName) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var request, response, page, response_2;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n request = {\r\n displayName: displayName\r\n };\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.service.hpm.post(\"/report/addPage\", request, { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 2:\r\n response = _a.sent();\r\n page = response.body;\r\n return [2 /*return*/, new page_1.Page(this, page.name, page.displayName, page.isActive, page.visibility, page.defaultSize, page.defaultDisplayOption)];\r\n case 3:\r\n response_2 = _a.sent();\r\n throw response_2.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Delete a page from a report\r\n *\r\n * ```javascript\r\n * // Delete a page from a report by pageName (PageName is different than the display name and can be acquired from the getPages API)\r\n * report.deletePage(\"ReportSection145\");\r\n * ```\r\n *\r\n * @returns {Promise<void>}\r\n */\r\n Report.prototype.deletePage = function (pageName) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response, response_3;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n _a.trys.push([0, 2, , 3]);\r\n return [4 /*yield*/, this.service.hpm.delete(\"/report/pages/\".concat(pageName), {}, { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 1:\r\n response = _a.sent();\r\n return [2 /*return*/, response.body];\r\n case 2:\r\n response_3 = _a.sent();\r\n throw response_3.body;\r\n case 3: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Rename a page from a report\r\n *\r\n * ```javascript\r\n * // Rename a page from a report by changing displayName (pageName is different from the display name and can be acquired from the getPages API)\r\n * report.renamePage(\"ReportSection145\", \"Sales\");\r\n * ```\r\n *\r\n * @returns {Promise<void>}\r\n */\r\n Report.prototype.renamePage = function (pageName, displayName) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var page, response, response_4;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n page = {\r\n name: pageName,\r\n displayName: displayName,\r\n };\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.service.hpm.put(\"/report/pages/\".concat(pageName, \"/name\"), page, { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 2:\r\n response = _a.sent();\r\n return [2 /*return*/, response.body];\r\n case 3:\r\n response_4 = _a.sent();\r\n throw response_4.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Gets filters that are applied at the report level.\r\n *\r\n * ```javascript\r\n * // Get filters applied at report level\r\n * report.getFilters()\r\n * .then(filters => {\r\n * ...\r\n * });\r\n * ```\r\n *\r\n * @returns {Promise<IFilter[]>}\r\n */\r\n Report.prototype.getFilters = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response, response_5;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if ((0, util_1.isRDLEmbed)(this.config.embedUrl)) {\r\n return [2 /*return*/, Promise.reject(errors_1.APINotSupportedForRDLError)];\r\n }\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.service.hpm.get(\"/report/filters\", { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 2:\r\n response = _a.sent();\r\n return [2 /*return*/, response.body];\r\n case 3:\r\n response_5 = _a.sent();\r\n throw response_5.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Update the filters at the report level according to the operation: Add, replace all, replace by target or remove.\r\n *\r\n * ```javascript\r\n * report.updateFilters(FiltersOperations.Add, filters)\r\n * .catch(errors => { ... });\r\n * ```\r\n *\r\n * @param {(IFilter[])} filters\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n Report.prototype.updateFilters = function (operation, filters) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var updateFiltersRequest, response_6;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n updateFiltersRequest = {\r\n filtersOperation: operation,\r\n filters: filters\r\n };\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.service.hpm.post(\"/report/filters\", updateFiltersRequest, { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 2: return [2 /*return*/, _a.sent()];\r\n case 3:\r\n response_6 = _a.sent();\r\n throw response_6.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Removes all filters at the report level.\r\n *\r\n * ```javascript\r\n * report.removeFilters();\r\n * ```\r\n *\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n Report.prototype.removeFilters = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n if ((0, util_1.isRDLEmbed)(this.config.embedUrl)) {\r\n return [2 /*return*/, Promise.reject(errors_1.APINotSupportedForRDLError)];\r\n }\r\n return [2 /*return*/, this.updateFilters(powerbi_models_1.FiltersOperations.RemoveAll)];\r\n });\r\n });\r\n };\r\n /**\r\n * Sets filters at the report level.\r\n *\r\n * ```javascript\r\n * const filters: [\r\n * ...\r\n * ];\r\n *\r\n * report.setFilters(filters)\r\n * .catch(errors => {\r\n * ...\r\n * });\r\n * ```\r\n *\r\n * @param {(IFilter[])} filters\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n Report.prototype.setFilters = function (filters) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response_7;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if ((0, util_1.isRDLEmbed)(this.config.embedUrl)) {\r\n return [2 /*return*/, Promise.reject(errors_1.APINotSupportedForRDLError)];\r\n }\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.service.hpm.put(\"/report/filters\", filters, { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 2: return [2 /*return*/, _a.sent()];\r\n case 3:\r\n response_7 = _a.sent();\r\n throw response_7.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Gets the report ID from the first available location: options, attribute, embed url.\r\n *\r\n * @returns {string}\r\n */\r\n Report.prototype.getId = function () {\r\n var config = this.config;\r\n var reportId = config.id || this.element.getAttribute(Report.reportIdAttribute) || Report.findIdFromEmbedUrl(config.embedUrl);\r\n if (typeof reportId !== 'string' || reportId.length === 0) {\r\n throw new Error(\"Report id is required, but it was not found. You must provide an id either as part of embed configuration or as attribute '\".concat(Report.reportIdAttribute, \"'.\"));\r\n }\r\n return reportId;\r\n };\r\n /**\r\n * Gets the list of pages within the report.\r\n *\r\n * ```javascript\r\n * report.getPages()\r\n * .then(pages => {\r\n * ...\r\n * });\r\n * ```\r\n *\r\n * @returns {Promise<Page[]>}\r\n */\r\n Report.prototype.getPages = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response, response_8;\r\n var _this = this;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if ((0, util_1.isRDLEmbed)(this.config.embedUrl)) {\r\n return [2 /*return*/, Promise.reject(errors_1.APINotSupportedForRDLError)];\r\n }\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.service.hpm.get('/report/pages', { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 2:\r\n response = _a.sent();\r\n return [2 /*return*/, response.body\r\n .map(function (page) { return new page_1.Page(_this, page.name, page.displayName, page.isActive, page.visibility, page.defaultSize, page.defaultDisplayOption, page.mobileSize, page.background, page.wallpaper); })];\r\n case 3:\r\n response_8 = _a.sent();\r\n throw response_8.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Gets a report page by its name.\r\n *\r\n * ```javascript\r\n * report.getPageByName(pageName)\r\n * .then(page => {\r\n * ...\r\n * });\r\n * ```\r\n *\r\n * @param {string} pageName\r\n * @returns {Promise<Page>}\r\n */\r\n Report.prototype.getPageByName = function (pageName) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response, page, response_9;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if ((0, util_1.isRDLEmbed)(this.config.embedUrl)) {\r\n return [2 /*return*/, Promise.reject(errors_1.APINotSupportedForRDLError)];\r\n }\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.service.hpm.get(\"/report/pages\", { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 2:\r\n response = _a.sent();\r\n page = response.body.find(function (p) { return p.name === pageName; });\r\n if (!page) {\r\n return [2 /*return*/, Promise.reject(powerbi_models_1.CommonErrorCodes.NotFound)];\r\n }\r\n return [2 /*return*/, new page_1.Page(this, page.name, page.displayName, page.isActive, page.visibility, page.defaultSize, page.defaultDisplayOption, page.mobileSize, page.background, page.wallpaper)];\r\n case 3:\r\n response_9 = _a.sent();\r\n throw response_9.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Gets the active report page.\r\n *\r\n * ```javascript\r\n * report.getActivePage()\r\n * .then(activePage => {\r\n * ...\r\n * });\r\n * ```\r\n *\r\n * @returns {Promise<Page>}\r\n */\r\n Report.prototype.getActivePage = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response, activePage, response_10;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if ((0, util_1.isRDLEmbed)(this.config.embedUrl)) {\r\n return [2 /*return*/, Promise.reject(errors_1.APINotSupportedForRDLError)];\r\n }\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.service.hpm.get('/report/pages', { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 2:\r\n response = _a.sent();\r\n activePage = response.body.find(function (page) { return page.isActive; });\r\n return [2 /*return*/, new page_1.Page(this, activePage.name, activePage.displayName, activePage.isActive, activePage.visibility, activePage.defaultSize, activePage.defaultDisplayOption, activePage.mobileSize, activePage.background, activePage.wallpaper)];\r\n case 3:\r\n response_10 = _a.sent();\r\n throw response_10.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Creates an instance of a Page.\r\n *\r\n * Normally you would get Page objects by calling `report.getPages()`, but in the case\r\n * that the page name is known and you want to perform an action on a page without having to retrieve it\r\n * you can create it directly.\r\n *\r\n * Note: Because you are creating the page manually there is no guarantee that the page actually exists in the report, and subsequent requests could fail.\r\n *\r\n * @param {string} name\r\n * @param {string} [displayName]\r\n * @param {boolean} [isActive]\r\n * @returns {Page}\r\n * @hidden\r\n */\r\n Report.prototype.page = function (name, displayName, isActive, visibility) {\r\n return new page_1.Page(this, name, displayName, isActive, visibility);\r\n };\r\n /**\r\n * Prints the active page of the report by invoking `window.print()` on the embed iframe component.\r\n */\r\n Report.prototype.print = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response, response_11;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if ((0, util_1.isRDLEmbed)(this.config.embedUrl)) {\r\n return [2 /*return*/, Promise.reject(errors_1.APINotSupportedForRDLError)];\r\n }\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.service.hpm.post('/report/print', null, { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 2:\r\n response = _a.sent();\r\n return [2 /*return*/, response.body];\r\n case 3:\r\n response_11 = _a.sent();\r\n throw response_11.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Sets the active page of the report.\r\n *\r\n * ```javascript\r\n * report.setPage(\"page2\")\r\n * .catch(error => { ... });\r\n * ```\r\n *\r\n * @param {string} pageName\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n Report.prototype.setPage = function (pageName) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var page, response_12;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if ((0, util_1.isRDLEmbed)(this.config.embedUrl)) {\r\n return [2 /*return*/, Promise.reject(errors_1.APINotSupportedForRDLError)];\r\n }\r\n page = {\r\n name: pageName,\r\n displayName: null,\r\n isActive: true\r\n };\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.service.hpm.put('/report/pages/active', page, { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 2: return [2 /*return*/, _a.sent()];\r\n case 3:\r\n response_12 = _a.sent();\r\n throw response_12.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Updates visibility settings for the filter pane and the page navigation pane.\r\n *\r\n * ```javascript\r\n * const newSettings = {\r\n * panes: {\r\n * filters: {\r\n * visible: false\r\n * }\r\n * }\r\n * };\r\n *\r\n * report.updateSettings(newSettings)\r\n * .catch(error => { ... });\r\n * ```\r\n *\r\n * @param {ISettings} settings\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n Report.prototype.updateSettings = function (settings) {\r\n var _a, _b;\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response, extension, extensionsArray, response_13;\r\n var _this = this;\r\n return __generator(this, function (_c) {\r\n switch (_c.label) {\r\n case 0:\r\n if ((0, util_1.isRDLEmbed)(this.config.embedUrl) && settings.customLayout != null) {\r\n return [2 /*return*/, Promise.reject(errors_1.APINotSupportedForRDLError)];\r\n }\r\n _c.label = 1;\r\n case 1:\r\n _c.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.service.hpm.patch('/report/settings', settings, { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 2:\r\n response = _c.sent();\r\n extension = settings === null || settings === void 0 ? void 0 : settings.extensions;\r\n this.commands = (_a = extension === null || extension === void 0 ? void 0 : extension.commands) !== null && _a !== void 0 ? _a : this.commands;\r\n this.groups = (_b = extension === null || extension === void 0 ? void 0 : extension.groups) !== null && _b !== void 0 ? _b : this.groups;\r\n extensionsArray = settings === null || settings === void 0 ? void 0 : settings.extensions;\r\n if (Array.isArray(extensionsArray)) {\r\n this.commands = [];\r\n extensionsArray.map(function (extensionElement) { if (extensionElement === null || extensionElement === void 0 ? void 0 : extensionElement.command) {\r\n _this.commands.push(extensionElement.command);\r\n } });\r\n }\r\n return [2 /*return*/, response];\r\n case 3:\r\n response_13 = _c.sent();\r\n throw response_13.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Validate load configuration.\r\n *\r\n * @hidden\r\n */\r\n Report.prototype.validate = function (config) {\r\n if ((0, util_1.isRDLEmbed)(this.config.embedUrl)) {\r\n return (0, powerbi_models_1.validatePaginatedReportLoad)(config);\r\n }\r\n return (0, powerbi_models_1.validateReportLoad)(config);\r\n };\r\n /**\r\n * Handle config changes.\r\n *\r\n * @returns {void}\r\n */\r\n Report.prototype.configChanged = function (isBootstrap) {\r\n var config = this.config;\r\n if (this.isMobileSettings(config.settings)) {\r\n config.embedUrl = (0, util_1.addParamToUrl)(config.embedUrl, \"isMobile\", \"true\");\r\n }\r\n // Calculate settings from HTML element attributes if available.\r\n var filterPaneEnabledAttribute = this.element.getAttribute(Report.filterPaneEnabledAttribute);\r\n var navContentPaneEnabledAttribute = this.element.getAttribute(Report.navContentPaneEnabledAttribute);\r\n var elementAttrSettings = {\r\n filterPaneEnabled: (filterPaneEnabledAttribute == null) ? undefined : (filterPaneEnabledAttribute !== \"false\"),\r\n navContentPaneEnabled: (navContentPaneEnabledAttribute == null) ? undefined : (navContentPaneEnabledAttribute !== \"false\")\r\n };\r\n // Set the settings back into the config.\r\n this.config.settings = (0, util_1.assign)({}, elementAttrSettings, config.settings);\r\n if (isBootstrap) {\r\n return;\r\n }\r\n config.id = this.getId();\r\n };\r\n /**\r\n * @hidden\r\n * @returns {string}\r\n */\r\n Report.prototype.getDefaultEmbedUrlEndpoint = function () {\r\n return \"reportEmbed\";\r\n };\r\n /**\r\n * Switch Report view mode.\r\n *\r\n * @returns {Promise<void>}\r\n */\r\n Report.prototype.switchMode = function (viewMode) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var newMode, url, response, response_14;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if (typeof viewMode === \"string\") {\r\n newMode = viewMode;\r\n }\r\n else {\r\n newMode = this.viewModeToString(viewMode);\r\n }\r\n url = '/report/switchMode/' + newMode;\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.service.hpm.post(url, null, { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 2:\r\n response = _a.sent();\r\n return [2 /*return*/, response.body];\r\n case 3:\r\n response_14 = _a.sent();\r\n throw response_14.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Refreshes data sources for the report.\r\n *\r\n * ```javascript\r\n * report.refresh();\r\n * ```\r\n */\r\n Report.prototype.refresh = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response, response_15;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n _a.trys.push([0, 2, , 3]);\r\n return [4 /*yield*/, this.service.hpm.post('/report/refresh', null, { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 1:\r\n response = _a.sent();\r\n return [2 /*return*/, response.body];\r\n case 2:\r\n response_15 = _a.sent();\r\n throw response_15.body;\r\n case 3: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * checks if the report is saved.\r\n *\r\n * ```javascript\r\n * report.isSaved()\r\n * ```\r\n *\r\n * @returns {Promise<boolean>}\r\n */\r\n Report.prototype.isSaved = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if ((0, util_1.isRDLEmbed)(this.config.embedUrl)) {\r\n return [2 /*return*/, Promise.reject(errors_1.APINotSupportedForRDLError)];\r\n }\r\n return [4 /*yield*/, (0, util_1.isSavedInternal)(this.service.hpm, this.config.uniqueId, this.iframe.contentWindow)];\r\n case 1: return [2 /*return*/, _a.sent()];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Apply a theme to the report\r\n *\r\n * ```javascript\r\n * report.applyTheme(theme);\r\n * ```\r\n */\r\n Report.prototype.applyTheme = function (theme) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if ((0, util_1.isRDLEmbed)(this.config.embedUrl)) {\r\n return [2 /*return*/, Promise.reject(errors_1.APINotSupportedForRDLError)];\r\n }\r\n return [4 /*yield*/, this.applyThemeInternal(theme)];\r\n case 1: return [2 /*return*/, _a.sent()];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Reset and apply the default theme of the report\r\n *\r\n * ```javascript\r\n * report.resetTheme();\r\n * ```\r\n */\r\n Report.prototype.resetTheme = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if ((0, util_1.isRDLEmbed)(this.config.embedUrl)) {\r\n return [2 /*return*/, Promise.reject(errors_1.APINotSupportedForRDLError)];\r\n }\r\n return [4 /*yield*/, this.applyThemeInternal({})];\r\n case 1: return [2 /*return*/, _a.sent()];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * get the theme of the report\r\n *\r\n * ```javascript\r\n * report.getTheme();\r\n * ```\r\n */\r\n Report.prototype.getTheme = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response, response_16;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if ((0, util_1.isRDLEmbed)(this.config.embedUrl)) {\r\n return [2 /*return*/, Promise.reject(errors_1.APINotSupportedForRDLError)];\r\n }\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.service.hpm.get(\"/report/theme\", { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 2:\r\n response = _a.sent();\r\n return [2 /*return*/, response.body];\r\n case 3:\r\n response_16 = _a.sent();\r\n throw response_16.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Reset user's filters, slicers, and other data view changes to the default state of the report\r\n *\r\n * ```javascript\r\n * report.resetPersistentFilters();\r\n * ```\r\n */\r\n Report.prototype.resetPersistentFilters = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response_17;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n _a.trys.push([0, 2, , 3]);\r\n return [4 /*yield*/, this.service.hpm.delete(\"/report/userState\", null, { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 1: return [2 /*return*/, _a.sent()];\r\n case 2:\r\n response_17 = _a.sent();\r\n throw response_17.body;\r\n case 3: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Save user's filters, slicers, and other data view changes of the report\r\n *\r\n * ```javascript\r\n * report.savePersistentFilters();\r\n * ```\r\n */\r\n Report.prototype.savePersistentFilters = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response_18;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n _a.trys.push([0, 2, , 3]);\r\n return [4 /*yield*/, this.service.hpm.post(\"/report/userState\", null, { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 1: return [2 /*return*/, _a.sent()];\r\n case 2:\r\n response_18 = _a.sent();\r\n throw response_18.body;\r\n case 3: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Returns if there are user's filters, slicers, or other data view changes applied on the report.\r\n * If persistent filters is disable, returns false.\r\n *\r\n * ```javascript\r\n * report.arePersistentFiltersApplied();\r\n * ```\r\n *\r\n * @returns {Promise<boolean>}\r\n */\r\n Report.prototype.arePersistentFiltersApplied = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response, response_19;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n _a.trys.push([0, 2, , 3]);\r\n return [4 /*yield*/, this.service.hpm.get(\"/report/isUserStateApplied\", { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 1:\r\n response = _a.sent();\r\n return [2 /*return*/, response.body];\r\n case 2:\r\n response_19 = _a.sent();\r\n throw response_19.body;\r\n case 3: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Remove context menu extension command.\r\n *\r\n * ```javascript\r\n * report.removeContextMenuCommand(commandName, contextMenuTitle)\r\n * .catch(error => {\r\n * ...\r\n * });\r\n * ```\r\n *\r\n * @param {string} commandName\r\n * @param {string} contextMenuTitle\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n Report.prototype.removeContextMenuCommand = function (commandName, contextMenuTitle) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var commandCopy, indexOfCommand, newSetting;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if ((0, util_1.isRDLEmbed)(this.config.embedUrl)) {\r\n return [2 /*return*/, Promise.reject(errors_1.APINotSupportedForRDLError)];\r\n }\r\n commandCopy = JSON.parse(JSON.stringify(this.commands));\r\n indexOfCommand = this.findCommandMenuIndex(\"visualContextMenu\", commandCopy, commandName, contextMenuTitle);\r\n if (indexOfCommand === -1) {\r\n throw powerbi_models_1.CommonErrorCodes.NotFound;\r\n }\r\n // Delete the context menu and not the entire command, since command can have option menu as well.\r\n delete commandCopy[indexOfCommand].extend.visualContextMenu;\r\n newSetting = {\r\n extensions: {\r\n commands: commandCopy,\r\n groups: this.groups\r\n }\r\n };\r\n return [4 /*yield*/, this.updateSettings(newSetting)];\r\n case 1: return [2 /*return*/, _a.sent()];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Add context menu extension command.\r\n *\r\n * ```javascript\r\n * report.addContextMenuCommand(commandName, commandTitle, contextMenuTitle, menuLocation, visualName, visualType, groupName)\r\n * .catch(error => {\r\n * ...\r\n * });\r\n * ```\r\n *\r\n * @param {string} commandName\r\n * @param {string} commandTitle\r\n * @param {string} contextMenuTitle\r\n * @param {MenuLocation} menuLocation\r\n * @param {string} visualName\r\n * @param {string} visualType\r\n * @param {string} groupName\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n Report.prototype.addContextMenuCommand = function (commandName, commandTitle, contextMenuTitle, menuLocation, visualName, visualType, groupName) {\r\n if (contextMenuTitle === void 0) { contextMenuTitle = commandTitle; }\r\n if (menuLocation === void 0) { menuLocation = powerbi_models_1.MenuLocation.Bottom; }\r\n if (visualName === void 0) { visualName = undefined; }\r\n if (groupName === void 0) { groupName = undefined; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var newCommands, newSetting;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if ((0, util_1.isRDLEmbed)(this.config.embedUrl)) {\r\n return [2 /*return*/, Promise.reject(errors_1.APINotSupportedForRDLError)];\r\n }\r\n newCommands = this.createMenuCommand(\"visualContextMenu\", commandName, commandTitle, contextMenuTitle, menuLocation, visualName, visualType, groupName);\r\n newSetting = {\r\n extensions: {\r\n commands: newCommands,\r\n groups: this.groups\r\n }\r\n };\r\n return [4 /*yield*/, this.updateSettings(newSetting)];\r\n case 1: return [2 /*return*/, _a.sent()];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Remove options menu extension command.\r\n *\r\n * ```javascript\r\n * report.removeOptionsMenuCommand(commandName, optionsMenuTitle)\r\n * .then({\r\n * ...\r\n * });\r\n * ```\r\n *\r\n * @param {string} commandName\r\n * @param {string} optionsMenuTitle\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n Report.prototype.removeOptionsMenuCommand = function (commandName, optionsMenuTitle) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var commandCopy, indexOfCommand, newSetting;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if ((0, util_1.isRDLEmbed)(this.config.embedUrl)) {\r\n return [2 /*return*/, Promise.reject(errors_1.APINotSupportedForRDLError)];\r\n }\r\n commandCopy = JSON.parse(JSON.stringify(this.commands));\r\n indexOfCommand = this.findCommandMenuIndex(\"visualOptionsMenu\", commandCopy, commandName, optionsMenuTitle);\r\n if (indexOfCommand === -1) {\r\n throw powerbi_models_1.CommonErrorCodes.NotFound;\r\n }\r\n // Delete the context options and not the entire command, since command can have context menu as well.\r\n delete commandCopy[indexOfCommand].extend.visualOptionsMenu;\r\n delete commandCopy[indexOfCommand].icon;\r\n newSetting = {\r\n extensions: {\r\n commands: commandCopy,\r\n groups: this.groups\r\n }\r\n };\r\n return [4 /*yield*/, this.updateSettings(newSetting)];\r\n case 1: return [2 /*return*/, _a.sent()];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Add options menu extension command.\r\n *\r\n * ```javascript\r\n * report.addOptionsMenuCommand(commandName, commandTitle, optionsMenuTitle, menuLocation, visualName, visualType, groupName, commandIcon)\r\n * .catch(error => {\r\n * ...\r\n * });\r\n * ```\r\n *\r\n * @param {string} commandName\r\n * @param {string} commandTitle\r\n * @param {string} optionMenuTitle\r\n * @param {MenuLocation} menuLocation\r\n * @param {string} visualName\r\n * @param {string} visualType\r\n * @param {string} groupName\r\n * @param {string} commandIcon\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n Report.prototype.addOptionsMenuCommand = function (commandName, commandTitle, optionsMenuTitle, menuLocation, visualName, visualType, groupName, commandIcon) {\r\n if (optionsMenuTitle === void 0) { optionsMenuTitle = commandTitle; }\r\n if (menuLocation === void 0) { menuLocation = powerbi_models_1.MenuLocation.Bottom; }\r\n if (visualName === void 0) { visualName = undefined; }\r\n if (visualType === void 0) { visualType = undefined; }\r\n if (groupName === void 0) { groupName = undefined; }\r\n if (commandIcon === void 0) { commandIcon = undefined; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var newCommands, newSetting;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if ((0, util_1.isRDLEmbed)(this.config.embedUrl)) {\r\n return [2 /*return*/, Promise.reject(errors_1.APINotSupportedForRDLError)];\r\n }\r\n newCommands = this.createMenuCommand(\"visualOptionsMenu\", commandName, commandTitle, optionsMenuTitle, menuLocation, visualName, visualType, groupName, commandIcon);\r\n newSetting = {\r\n extensions: {\r\n commands: newCommands,\r\n groups: this.groups\r\n }\r\n };\r\n return [4 /*yield*/, this.updateSettings(newSetting)];\r\n case 1: return [2 /*return*/, _a.sent()];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Updates the display state of a visual in a page.\r\n *\r\n * ```javascript\r\n * report.setVisualDisplayState(pageName, visualName, displayState)\r\n * .catch(error => { ... });\r\n * ```\r\n *\r\n * @param {string} pageName\r\n * @param {string} visualName\r\n * @param {VisualContainerDisplayMode} displayState\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n Report.prototype.setVisualDisplayState = function (pageName, visualName, displayState) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var visualLayout, newSettings;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: \r\n // Check if page name and visual name are valid\r\n return [4 /*yield*/, this.validateVisual(pageName, visualName)];\r\n case 1:\r\n // Check if page name and visual name are valid\r\n _a.sent();\r\n visualLayout = {\r\n displayState: {\r\n mode: displayState\r\n }\r\n };\r\n newSettings = this.buildLayoutSettingsObject(pageName, visualName, visualLayout);\r\n return [2 /*return*/, this.updateSettings(newSettings)];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Resize a visual in a page.\r\n *\r\n * ```javascript\r\n * report.resizeVisual(pageName, visualName, width, height)\r\n * .catch(error => { ... });\r\n * ```\r\n *\r\n * @param {string} pageName\r\n * @param {string} visualName\r\n * @param {number} width\r\n * @param {number} height\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n Report.prototype.resizeVisual = function (pageName, visualName, width, height) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var visualLayout, newSettings;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: \r\n // Check if page name and visual name are valid\r\n return [4 /*yield*/, this.validateVisual(pageName, visualName)];\r\n case 1:\r\n // Check if page name and visual name are valid\r\n _a.sent();\r\n visualLayout = {\r\n width: width,\r\n height: height,\r\n };\r\n newSettings = this.buildLayoutSettingsObject(pageName, visualName, visualLayout);\r\n return [2 /*return*/, this.updateSettings(newSettings)];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Updates the size of active page in report.\r\n *\r\n * ```javascript\r\n * report.resizeActivePage(pageSizeType, width, height)\r\n * .catch(error => { ... });\r\n * ```\r\n *\r\n * @param {PageSizeType} pageSizeType\r\n * @param {number} width\r\n * @param {number} height\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n Report.prototype.resizeActivePage = function (pageSizeType, width, height) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var pageSize, newSettings;\r\n return __generator(this, function (_a) {\r\n pageSize = {\r\n type: pageSizeType,\r\n width: width,\r\n height: height\r\n };\r\n newSettings = {\r\n layoutType: powerbi_models_1.LayoutType.Custom,\r\n customLayout: {\r\n pageSize: pageSize\r\n }\r\n };\r\n return [2 /*return*/, this.updateSettings(newSettings)];\r\n });\r\n });\r\n };\r\n /**\r\n * Updates the position of a visual in a page.\r\n *\r\n * ```javascript\r\n * report.moveVisual(pageName, visualName, x, y, z)\r\n * .catch(error => { ... });\r\n * ```\r\n *\r\n * @param {string} pageName\r\n * @param {string} visualName\r\n * @param {number} x\r\n * @param {number} y\r\n * @param {number} z\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n Report.prototype.moveVisual = function (pageName, visualName, x, y, z) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var visualLayout, newSettings;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: \r\n // Check if page name and visual name are valid\r\n return [4 /*yield*/, this.validateVisual(pageName, visualName)];\r\n case 1:\r\n // Check if page name and visual name are valid\r\n _a.sent();\r\n visualLayout = {\r\n x: x,\r\n y: y,\r\n z: z\r\n };\r\n newSettings = this.buildLayoutSettingsObject(pageName, visualName, visualLayout);\r\n return [2 /*return*/, this.updateSettings(newSettings)];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Updates the report layout\r\n *\r\n * ```javascript\r\n * report.switchLayout(layoutType);\r\n * ```\r\n *\r\n * @param {LayoutType} layoutType\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n Report.prototype.switchLayout = function (layoutType) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var isInitialMobileSettings, isPassedMobileSettings, newSetting, response;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n isInitialMobileSettings = this.isMobileSettings({ layoutType: this.initialLayoutType });\r\n isPassedMobileSettings = this.isMobileSettings({ layoutType: layoutType });\r\n // Check if both passed layout and initial layout are of same type.\r\n if (isInitialMobileSettings !== isPassedMobileSettings) {\r\n throw \"Switching between mobile and desktop layouts is not supported. Please reset the embed container and re-embed with required layout.\";\r\n }\r\n newSetting = {\r\n layoutType: layoutType\r\n };\r\n return [4 /*yield*/, this.updateSettings(newSetting)];\r\n case 1:\r\n response = _a.sent();\r\n this.initialLayoutType = layoutType;\r\n return [2 /*return*/, response];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * @hidden\r\n */\r\n Report.prototype.createMenuCommand = function (type, commandName, commandTitle, menuTitle, menuLocation, visualName, visualType, groupName, icon) {\r\n var newCommandObj = {\r\n name: commandName,\r\n title: commandTitle,\r\n extend: {}\r\n };\r\n newCommandObj.extend[type] = {\r\n title: menuTitle,\r\n menuLocation: menuLocation,\r\n };\r\n if (type === \"visualOptionsMenu\") {\r\n newCommandObj.icon = icon;\r\n }\r\n if (groupName) {\r\n var extend = newCommandObj.extend[type];\r\n delete extend.menuLocation;\r\n var groupExtend = newCommandObj.extend[type];\r\n groupExtend.groupName = groupName;\r\n }\r\n if (visualName) {\r\n newCommandObj.selector = {\r\n $schema: \"http://powerbi.com/product/schema#visualSelector\",\r\n visualName: visualName\r\n };\r\n }\r\n if (visualType) {\r\n newCommandObj.selector = {\r\n $schema: \"http://powerbi.com/product/schema#visualTypeSelector\",\r\n visualType: visualType\r\n };\r\n }\r\n return __spreadArray(__spreadArray([], this.commands, true), [newCommandObj], false);\r\n };\r\n /**\r\n * @hidden\r\n */\r\n Report.prototype.findCommandMenuIndex = function (type, commands, commandName, menuTitle) {\r\n var indexOfCommand = -1;\r\n commands.some(function (activeMenuCommand, index) {\r\n return (activeMenuCommand.name === commandName && activeMenuCommand.extend[type] && activeMenuCommand.extend[type].title === menuTitle) ? (indexOfCommand = index, true) : false;\r\n });\r\n return indexOfCommand;\r\n };\r\n /**\r\n * @hidden\r\n */\r\n Report.prototype.buildLayoutSettingsObject = function (pageName, visualName, visualLayout) {\r\n // Create new settings object with custom layout type\r\n var newSettings = {\r\n layoutType: powerbi_models_1.LayoutType.Custom,\r\n customLayout: {\r\n pagesLayout: {}\r\n }\r\n };\r\n newSettings.customLayout.pagesLayout[pageName] = {\r\n visualsLayout: {}\r\n };\r\n newSettings.customLayout.pagesLayout[pageName].visualsLayout[visualName] = visualLayout;\r\n return newSettings;\r\n };\r\n /**\r\n * @hidden\r\n */\r\n Report.prototype.validateVisual = function (pageName, visualName) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var page;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.getPageByName(pageName)];\r\n case 1:\r\n page = _a.sent();\r\n return [4 /*yield*/, page.getVisualByName(visualName)];\r\n case 2: return [2 /*return*/, _a.sent()];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * @hidden\r\n */\r\n Report.prototype.applyThemeInternal = function (theme) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response, response_20;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n _a.trys.push([0, 2, , 3]);\r\n return [4 /*yield*/, this.service.hpm.put('/report/theme', theme, { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 1:\r\n response = _a.sent();\r\n return [2 /*return*/, response.body];\r\n case 2:\r\n response_20 = _a.sent();\r\n throw response_20.body;\r\n case 3: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * @hidden\r\n */\r\n Report.prototype.viewModeToString = function (viewMode) {\r\n var mode;\r\n switch (viewMode) {\r\n case powerbi_models_1.ViewMode.Edit:\r\n mode = \"edit\";\r\n break;\r\n case powerbi_models_1.ViewMode.View:\r\n mode = \"view\";\r\n break;\r\n }\r\n return mode;\r\n };\r\n /**\r\n * @hidden\r\n */\r\n Report.prototype.isMobileSettings = function (settings) {\r\n return settings && (settings.layoutType === powerbi_models_1.LayoutType.MobileLandscape || settings.layoutType === powerbi_models_1.LayoutType.MobilePortrait);\r\n };\r\n /**\r\n * Return the current zoom level of the report.\r\n *\r\n * @returns {Promise<number>}\r\n */\r\n Report.prototype.getZoom = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response, response_21;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n _a.trys.push([0, 2, , 3]);\r\n return [4 /*yield*/, this.service.hpm.get(\"/report/zoom\", { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 1:\r\n response = _a.sent();\r\n return [2 /*return*/, response.body];\r\n case 2:\r\n response_21 = _a.sent();\r\n throw response_21.body;\r\n case 3: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Sets the report's zoom level.\r\n *\r\n * @param zoomLevel zoom level to set\r\n */\r\n Report.prototype.setZoom = function (zoomLevel) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.updateSettings({ zoomLevel: zoomLevel })];\r\n case 1:\r\n _a.sent();\r\n return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /** @hidden */\r\n Report.allowedEvents = [\"filtersApplied\", \"pageChanged\", \"commandTriggered\", \"swipeStart\", \"swipeEnd\", \"bookmarkApplied\", \"dataHyperlinkClicked\", \"visualRendered\", \"visualClicked\", \"selectionChanged\", \"renderingStarted\"];\r\n /** @hidden */\r\n Report.reportIdAttribute = 'powerbi-report-id';\r\n /** @hidden */\r\n Report.filterPaneEnabledAttribute = 'powerbi-settings-filter-pane-enabled';\r\n /** @hidden */\r\n Report.navContentPaneEnabledAttribute = 'powerbi-settings-nav-content-pane-enabled';\r\n /** @hidden */\r\n Report.typeAttribute = 'powerbi-type';\r\n /** @hidden */\r\n Report.type = \"Report\";\r\n return Report;\r\n}(embed_1.Embed));\r\nexports.Report = Report;\r\n\n\n/***/ }),\n\n/***/ \"./src/service.ts\":\n/*!************************!*\\\n !*** ./src/service.ts ***!\n \\************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __assign = (this && this.__assign) || function () {\r\n __assign = Object.assign || function(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\r\n t[p] = s[p];\r\n }\r\n return t;\r\n };\r\n return __assign.apply(this, arguments);\r\n};\r\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n};\r\nvar __generator = (this && this.__generator) || function (thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n};\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.Service = void 0;\r\nvar embed_1 = __webpack_require__(/*! ./embed */ \"./src/embed.ts\");\r\nvar report_1 = __webpack_require__(/*! ./report */ \"./src/report.ts\");\r\nvar create_1 = __webpack_require__(/*! ./create */ \"./src/create.ts\");\r\nvar dashboard_1 = __webpack_require__(/*! ./dashboard */ \"./src/dashboard.ts\");\r\nvar tile_1 = __webpack_require__(/*! ./tile */ \"./src/tile.ts\");\r\nvar page_1 = __webpack_require__(/*! ./page */ \"./src/page.ts\");\r\nvar qna_1 = __webpack_require__(/*! ./qna */ \"./src/qna.ts\");\r\nvar visual_1 = __webpack_require__(/*! ./visual */ \"./src/visual.ts\");\r\nvar utils = __webpack_require__(/*! ./util */ \"./src/util.ts\");\r\nvar sdkConfig = __webpack_require__(/*! ./config */ \"./src/config.ts\");\r\n/**\r\n * The Power BI Service embed component, which is the entry point to embed all other Power BI components into your application\r\n *\r\n * @export\r\n * @class Service\r\n * @implements {IService}\r\n */\r\nvar Service = /** @class */ (function () {\r\n /**\r\n * Creates an instance of a Power BI Service.\r\n *\r\n * @param {IHpmFactory} hpmFactory The http post message factory used in the postMessage communication layer\r\n * @param {IWpmpFactory} wpmpFactory The window post message factory used in the postMessage communication layer\r\n * @param {IRouterFactory} routerFactory The router factory used in the postMessage communication layer\r\n * @param {IServiceConfiguration} [config={}]\r\n * @hidden\r\n */\r\n function Service(hpmFactory, wpmpFactory, routerFactory, config) {\r\n if (config === void 0) { config = {}; }\r\n var _this = this;\r\n this.wpmp = wpmpFactory(config.wpmpName, config.logMessages);\r\n this.hpm = hpmFactory(this.wpmp, null, config.version, config.type, config.sdkWrapperVersion);\r\n this.router = routerFactory(this.wpmp);\r\n this.uniqueSessionId = utils.generateUUID();\r\n /**\r\n * Adds handler for report events.\r\n */\r\n this.router.post(\"/reports/:uniqueId/events/:eventName\", function (req, _res) {\r\n var event = {\r\n type: 'report',\r\n id: req.params.uniqueId,\r\n name: req.params.eventName,\r\n value: req.body\r\n };\r\n _this.handleEvent(event);\r\n });\r\n this.router.post(\"/reports/:uniqueId/pages/:pageName/events/:eventName\", function (req, _res) {\r\n var event = {\r\n type: 'report',\r\n id: req.params.uniqueId,\r\n name: req.params.eventName,\r\n value: req.body\r\n };\r\n _this.handleEvent(event);\r\n });\r\n this.router.post(\"/reports/:uniqueId/pages/:pageName/visuals/:visualName/events/:eventName\", function (req, _res) {\r\n var event = {\r\n type: 'report',\r\n id: req.params.uniqueId,\r\n name: req.params.eventName,\r\n value: req.body\r\n };\r\n _this.handleEvent(event);\r\n });\r\n this.router.post(\"/dashboards/:uniqueId/events/:eventName\", function (req, _res) {\r\n var event = {\r\n type: 'dashboard',\r\n id: req.params.uniqueId,\r\n name: req.params.eventName,\r\n value: req.body\r\n };\r\n _this.handleEvent(event);\r\n });\r\n this.router.post(\"/tile/:uniqueId/events/:eventName\", function (req, _res) {\r\n var event = {\r\n type: 'tile',\r\n id: req.params.uniqueId,\r\n name: req.params.eventName,\r\n value: req.body\r\n };\r\n _this.handleEvent(event);\r\n });\r\n /**\r\n * Adds handler for Q&A events.\r\n */\r\n this.router.post(\"/qna/:uniqueId/events/:eventName\", function (req, _res) {\r\n var event = {\r\n type: 'qna',\r\n id: req.params.uniqueId,\r\n name: req.params.eventName,\r\n value: req.body\r\n };\r\n _this.handleEvent(event);\r\n });\r\n /**\r\n * Adds handler for front load 'ready' message.\r\n */\r\n this.router.post(\"/ready/:uniqueId\", function (req, _res) {\r\n var event = {\r\n type: 'report',\r\n id: req.params.uniqueId,\r\n name: 'ready',\r\n value: req.body\r\n };\r\n _this.handleEvent(event);\r\n });\r\n this.embeds = [];\r\n // TODO: Change when Object.assign is available.\r\n this.config = utils.assign({}, Service.defaultConfig, config);\r\n if (this.config.autoEmbedOnContentLoaded) {\r\n this.enableAutoEmbed();\r\n }\r\n }\r\n /**\r\n * Creates new report\r\n *\r\n * @param {HTMLElement} element\r\n * @param {IEmbedConfiguration} [config={}]\r\n * @returns {Embed}\r\n */\r\n Service.prototype.createReport = function (element, config) {\r\n config.type = 'create';\r\n var powerBiElement = element;\r\n var component = new create_1.Create(this, powerBiElement, config);\r\n powerBiElement.powerBiEmbed = component;\r\n this.addOrOverwriteEmbed(component, element);\r\n return component;\r\n };\r\n /**\r\n * TODO: Add a description here\r\n *\r\n * @param {HTMLElement} [container]\r\n * @param {IEmbedConfiguration} [config=undefined]\r\n * @returns {Embed[]}\r\n * @hidden\r\n */\r\n Service.prototype.init = function (container, config) {\r\n var _this = this;\r\n if (config === void 0) { config = undefined; }\r\n container = (container && container instanceof HTMLElement) ? container : document.body;\r\n var elements = Array.prototype.slice.call(container.querySelectorAll(\"[\".concat(embed_1.Embed.embedUrlAttribute, \"]\")));\r\n return elements.map(function (element) { return _this.embed(element, config); });\r\n };\r\n /**\r\n * Given a configuration based on an HTML element,\r\n * if the component has already been created and attached to the element, reuses the component instance and existing iframe,\r\n * otherwise creates a new component instance.\r\n *\r\n * @param {HTMLElement} element\r\n * @param {IEmbedConfigurationBase} [config={}]\r\n * @returns {Embed}\r\n */\r\n Service.prototype.embed = function (element, config) {\r\n if (config === void 0) { config = {}; }\r\n return this.embedInternal(element, config);\r\n };\r\n /**\r\n * Given a configuration based on an HTML element,\r\n * if the component has already been created and attached to the element, reuses the component instance and existing iframe,\r\n * otherwise creates a new component instance.\r\n * This is used for the phased embedding API, once element is loaded successfully, one can call 'render' on it.\r\n *\r\n * @param {HTMLElement} element\r\n * @param {IEmbedConfigurationBase} [config={}]\r\n * @returns {Embed}\r\n */\r\n Service.prototype.load = function (element, config) {\r\n if (config === void 0) { config = {}; }\r\n return this.embedInternal(element, config, /* phasedRender */ true, /* isBootstrap */ false);\r\n };\r\n /**\r\n * Given an HTML element and entityType, creates a new component instance, and bootstrap the iframe for embedding.\r\n *\r\n * @param {HTMLElement} element\r\n * @param {IBootstrapEmbedConfiguration} config: a bootstrap config which is an embed config without access token.\r\n */\r\n Service.prototype.bootstrap = function (element, config) {\r\n return this.embedInternal(element, config, /* phasedRender */ false, /* isBootstrap */ true);\r\n };\r\n /** @hidden */\r\n Service.prototype.embedInternal = function (element, config, phasedRender, isBootstrap) {\r\n if (config === void 0) { config = {}; }\r\n var component;\r\n var powerBiElement = element;\r\n if (powerBiElement.powerBiEmbed) {\r\n if (isBootstrap) {\r\n throw new Error(\"Attempted to bootstrap element \".concat(element.outerHTML, \", but the element is already a powerbi element.\"));\r\n }\r\n component = this.embedExisting(powerBiElement, config, phasedRender);\r\n }\r\n else {\r\n component = this.embedNew(powerBiElement, config, phasedRender, isBootstrap);\r\n }\r\n return component;\r\n };\r\n /** @hidden */\r\n Service.prototype.getNumberOfComponents = function () {\r\n if (!this.embeds) {\r\n return 0;\r\n }\r\n return this.embeds.length;\r\n };\r\n /** @hidden */\r\n Service.prototype.getSdkSessionId = function () {\r\n return this.uniqueSessionId;\r\n };\r\n /**\r\n * Returns the Power BI Client SDK version\r\n *\r\n * @hidden\r\n */\r\n Service.prototype.getSDKVersion = function () {\r\n return sdkConfig.default.version;\r\n };\r\n /**\r\n * Given a configuration based on a Power BI element, saves the component instance that reference the element for later lookup.\r\n *\r\n * @private\r\n * @param {IPowerBiElement} element\r\n * @param {IEmbedConfigurationBase} config\r\n * @returns {Embed}\r\n * @hidden\r\n */\r\n Service.prototype.embedNew = function (element, config, phasedRender, isBootstrap) {\r\n var componentType = config.type || element.getAttribute(embed_1.Embed.typeAttribute);\r\n if (!componentType) {\r\n var scrubbedConfig = __assign(__assign({}, config), { accessToken: \"\" });\r\n throw new Error(\"Attempted to embed using config \".concat(JSON.stringify(scrubbedConfig), \" on element \").concat(element.outerHTML, \", but could not determine what type of component to embed. You must specify a type in the configuration or as an attribute such as '\").concat(embed_1.Embed.typeAttribute, \"=\\\"\").concat(report_1.Report.type.toLowerCase(), \"\\\"'.\"));\r\n }\r\n // Saves the type as part of the configuration so that it can be referenced later at a known location.\r\n config.type = componentType;\r\n var Component = utils.find(function (embedComponent) { return componentType === embedComponent.type.toLowerCase(); }, Service.components);\r\n if (!Component) {\r\n throw new Error(\"Attempted to embed component of type: \".concat(componentType, \" but did not find any matching component. Please verify the type you specified is intended.\"));\r\n }\r\n var component = new Component(this, element, config, phasedRender, isBootstrap);\r\n element.powerBiEmbed = component;\r\n this.addOrOverwriteEmbed(component, element);\r\n return component;\r\n };\r\n /**\r\n * Given an element that already contains an embed component, load with a new configuration.\r\n *\r\n * @private\r\n * @param {IPowerBiElement} element\r\n * @param {IEmbedConfigurationBase} config\r\n * @returns {Embed}\r\n * @hidden\r\n */\r\n Service.prototype.embedExisting = function (element, config, phasedRender) {\r\n var component = utils.find(function (x) { return x.element === element; }, this.embeds);\r\n if (!component) {\r\n var scrubbedConfig = __assign(__assign({}, config), { accessToken: \"\" });\r\n throw new Error(\"Attempted to embed using config \".concat(JSON.stringify(scrubbedConfig), \" on element \").concat(element.outerHTML, \" which already has embedded component associated, but could not find the existing component in the list of active components. This could indicate the embeds list is out of sync with the DOM, or the component is referencing the incorrect HTML element.\"));\r\n }\r\n // TODO: Multiple embedding to the same iframe is not supported in QnA\r\n if (config.type && config.type.toLowerCase() === \"qna\") {\r\n return this.embedNew(element, config);\r\n }\r\n /**\r\n * TODO: Dynamic embed type switching could be supported but there is work needed to prepare the service state and DOM cleanup.\r\n * remove all event handlers from the DOM, then reset the element to initial state which removes iframe, and removes from list of embeds\r\n * then we can call the embedNew function which would allow setting the proper embedUrl and construction of object based on the new type.\r\n */\r\n if (typeof config.type === \"string\" && config.type !== component.config.type) {\r\n /**\r\n * When loading report after create we want to use existing Iframe to optimize load period\r\n */\r\n if (config.type === \"report\" && component.config.type === \"create\") {\r\n var report = new report_1.Report(this, element, config, /* phasedRender */ false, /* isBootstrap */ false, element.powerBiEmbed.iframe);\r\n component.populateConfig(config, /* isBootstrap */ false);\r\n report.load();\r\n element.powerBiEmbed = report;\r\n this.addOrOverwriteEmbed(component, element);\r\n return report;\r\n }\r\n var scrubbedConfig = __assign(__assign({}, config), { accessToken: \"\" });\r\n throw new Error(\"Embedding on an existing element with a different type than the previous embed object is not supported. Attempted to embed using config \".concat(JSON.stringify(scrubbedConfig), \" on element \").concat(element.outerHTML, \", but the existing element contains an embed of type: \").concat(this.config.type, \" which does not match the new type: \").concat(config.type));\r\n }\r\n component.populateConfig(config, /* isBootstrap */ false);\r\n component.load(phasedRender);\r\n return component;\r\n };\r\n /**\r\n * Adds an event handler for DOMContentLoaded, which searches the DOM for elements that have the 'powerbi-embed-url' attribute,\r\n * and automatically attempts to embed a powerbi component based on information from other powerbi-* attributes.\r\n *\r\n * Note: Only runs if `config.autoEmbedOnContentLoaded` is true when the service is created.\r\n * This handler is typically useful only for applications that are rendered on the server so that all required data is available when the handler is called.\r\n *\r\n * @hidden\r\n */\r\n Service.prototype.enableAutoEmbed = function () {\r\n var _this = this;\r\n window.addEventListener('DOMContentLoaded', function (_event) { return _this.init(document.body); }, false);\r\n };\r\n /**\r\n * Returns an instance of the component associated with the element.\r\n *\r\n * @param {HTMLElement} element\r\n * @returns {(Report | Tile)}\r\n */\r\n Service.prototype.get = function (element) {\r\n var powerBiElement = element;\r\n if (!powerBiElement.powerBiEmbed) {\r\n throw new Error(\"You attempted to get an instance of powerbi component associated with element: \".concat(element.outerHTML, \" but there was no associated instance.\"));\r\n }\r\n return powerBiElement.powerBiEmbed;\r\n };\r\n /**\r\n * Finds an embed instance by the name or unique ID that is provided.\r\n *\r\n * @param {string} uniqueId\r\n * @returns {(Report | Tile)}\r\n * @hidden\r\n */\r\n Service.prototype.find = function (uniqueId) {\r\n return utils.find(function (x) { return x.config.uniqueId === uniqueId; }, this.embeds);\r\n };\r\n /**\r\n * Removes embed components whose container element is same as the given element\r\n *\r\n * @param {Embed} component\r\n * @param {HTMLElement} element\r\n * @returns {void}\r\n * @hidden\r\n */\r\n Service.prototype.addOrOverwriteEmbed = function (component, element) {\r\n // remove embeds over the same div element.\r\n this.embeds = this.embeds.filter(function (embed) {\r\n return embed.element !== element;\r\n });\r\n this.embeds.push(component);\r\n };\r\n /**\r\n * Given an HTML element that has a component embedded within it, removes the component from the list of embedded components, removes the association between the element and the component, and removes the iframe.\r\n *\r\n * @param {HTMLElement} element\r\n * @returns {void}\r\n */\r\n Service.prototype.reset = function (element) {\r\n var powerBiElement = element;\r\n if (!powerBiElement.powerBiEmbed) {\r\n return;\r\n }\r\n /** Removes the element frontLoad listener if exists. */\r\n var embedElement = powerBiElement.powerBiEmbed;\r\n if (embedElement.frontLoadHandler) {\r\n embedElement.element.removeEventListener('ready', embedElement.frontLoadHandler, false);\r\n }\r\n /** Removes all event handlers. */\r\n embedElement.allowedEvents.forEach(function (eventName) {\r\n embedElement.off(eventName);\r\n });\r\n /** Removes the component from an internal list of components. */\r\n utils.remove(function (x) { return x === powerBiElement.powerBiEmbed; }, this.embeds);\r\n /** Deletes a property from the HTML element. */\r\n delete powerBiElement.powerBiEmbed;\r\n /** Removes the iframe from the element. */\r\n var iframe = element.querySelector('iframe');\r\n if (iframe) {\r\n if (iframe.remove !== undefined) {\r\n iframe.remove();\r\n }\r\n else {\r\n /** Workaround for IE: unhandled rejection TypeError: object doesn't support property or method 'remove' */\r\n iframe.parentElement.removeChild(iframe);\r\n }\r\n }\r\n };\r\n /**\r\n * handles tile events\r\n *\r\n * @param {IEvent<any>} event\r\n * @hidden\r\n */\r\n Service.prototype.handleTileEvents = function (event) {\r\n if (event.type === 'tile') {\r\n this.handleEvent(event);\r\n }\r\n };\r\n Service.prototype.invokeSDKHook = function (hook, req, res) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var result, error_1;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n if (!hook) {\r\n res.send(404, null);\r\n return [2 /*return*/];\r\n }\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, hook(req.body)];\r\n case 2:\r\n result = _a.sent();\r\n res.send(200, result);\r\n return [3 /*break*/, 4];\r\n case 3:\r\n error_1 = _a.sent();\r\n res.send(400, null);\r\n console.error(error_1);\r\n return [3 /*break*/, 4];\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Given an event object, finds the embed component with the matching type and ID, and invokes its handleEvent method with the event object.\r\n *\r\n * @private\r\n * @param {IEvent<any>} event\r\n * @hidden\r\n */\r\n Service.prototype.handleEvent = function (event) {\r\n var embed = utils.find(function (embed) {\r\n return (embed.config.uniqueId === event.id);\r\n }, this.embeds);\r\n if (embed) {\r\n var value = event.value;\r\n if (event.name === 'pageChanged') {\r\n var pageKey = 'newPage';\r\n var page = value[pageKey];\r\n if (!page) {\r\n throw new Error(\"Page model not found at 'event.value.\".concat(pageKey, \"'.\"));\r\n }\r\n value[pageKey] = new page_1.Page(embed, page.name, page.displayName, true /* isActive */);\r\n }\r\n utils.raiseCustomEvent(embed.element, event.name, value);\r\n }\r\n };\r\n /**\r\n * API for warm starting powerbi embedded endpoints.\r\n * Use this API to preload Power BI Embedded in the background.\r\n *\r\n * @public\r\n * @param {IEmbedConfigurationBase} [config={}]\r\n * @param {HTMLElement} [element=undefined]\r\n */\r\n Service.prototype.preload = function (config, element) {\r\n var iframeContent = document.createElement(\"iframe\");\r\n iframeContent.setAttribute(\"style\", \"display:none;\");\r\n iframeContent.setAttribute(\"src\", config.embedUrl);\r\n iframeContent.setAttribute(\"scrolling\", \"no\");\r\n iframeContent.setAttribute(\"allowfullscreen\", \"false\");\r\n var node = element;\r\n if (!node) {\r\n node = document.getElementsByTagName(\"body\")[0];\r\n }\r\n node.appendChild(iframeContent);\r\n iframeContent.onload = function () {\r\n utils.raiseCustomEvent(iframeContent, \"preloaded\", {});\r\n };\r\n return iframeContent;\r\n };\r\n /**\r\n * Use this API to set SDK info\r\n *\r\n * @hidden\r\n * @param {string} type\r\n * @returns {void}\r\n */\r\n Service.prototype.setSdkInfo = function (type, version) {\r\n this.hpm.defaultHeaders['x-sdk-type'] = type;\r\n this.hpm.defaultHeaders['x-sdk-wrapper-version'] = version;\r\n };\r\n /**\r\n * A list of components that this service can embed\r\n */\r\n Service.components = [\r\n tile_1.Tile,\r\n report_1.Report,\r\n dashboard_1.Dashboard,\r\n qna_1.Qna,\r\n visual_1.Visual\r\n ];\r\n /**\r\n * The default configuration for the service\r\n */\r\n Service.defaultConfig = {\r\n autoEmbedOnContentLoaded: false,\r\n onError: function () {\r\n var args = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n args[_i] = arguments[_i];\r\n }\r\n return console.log(args[0], args.slice(1));\r\n }\r\n };\r\n return Service;\r\n}());\r\nexports.Service = Service;\r\n\n\n/***/ }),\n\n/***/ \"./src/tile.ts\":\n/*!*********************!*\\\n !*** ./src/tile.ts ***!\n \\*********************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.Tile = void 0;\r\nvar powerbi_models_1 = __webpack_require__(/*! powerbi-models */ \"./node_modules/powerbi-models/dist/models.js\");\r\nvar embed_1 = __webpack_require__(/*! ./embed */ \"./src/embed.ts\");\r\n/**\r\n * The Power BI tile embed component\r\n *\r\n * @export\r\n * @class Tile\r\n * @extends {Embed}\r\n */\r\nvar Tile = /** @class */ (function (_super) {\r\n __extends(Tile, _super);\r\n /**\r\n * @hidden\r\n */\r\n function Tile(service, element, baseConfig, phasedRender, isBootstrap) {\r\n var _this = this;\r\n var config = baseConfig;\r\n _this = _super.call(this, service, element, config, /* iframe */ undefined, phasedRender, isBootstrap) || this;\r\n _this.loadPath = \"/tile/load\";\r\n Array.prototype.push.apply(_this.allowedEvents, Tile.allowedEvents);\r\n return _this;\r\n }\r\n /**\r\n * The ID of the tile\r\n *\r\n * @returns {string}\r\n */\r\n Tile.prototype.getId = function () {\r\n var config = this.config;\r\n var tileId = config.id || Tile.findIdFromEmbedUrl(this.config.embedUrl);\r\n if (typeof tileId !== 'string' || tileId.length === 0) {\r\n throw new Error(\"Tile id is required, but it was not found. You must provide an id either as part of embed configuration.\");\r\n }\r\n return tileId;\r\n };\r\n /**\r\n * Validate load configuration.\r\n */\r\n Tile.prototype.validate = function (config) {\r\n var embedConfig = config;\r\n return (0, powerbi_models_1.validateTileLoad)(embedConfig);\r\n };\r\n /**\r\n * Handle config changes.\r\n *\r\n * @returns {void}\r\n */\r\n Tile.prototype.configChanged = function (isBootstrap) {\r\n if (isBootstrap) {\r\n return;\r\n }\r\n // Populate tile id into config object.\r\n this.config.id = this.getId();\r\n };\r\n /**\r\n * @hidden\r\n * @returns {string}\r\n */\r\n Tile.prototype.getDefaultEmbedUrlEndpoint = function () {\r\n return \"tileEmbed\";\r\n };\r\n /**\r\n * Adds the ability to get tileId from url.\r\n * By extracting the ID we can ensure that the ID is always explicitly provided as part of the load configuration.\r\n *\r\n * @hidden\r\n * @static\r\n * @param {string} url\r\n * @returns {string}\r\n */\r\n Tile.findIdFromEmbedUrl = function (url) {\r\n var tileIdRegEx = /tileId=\"?([^&]+)\"?/;\r\n var tileIdMatch = url.match(tileIdRegEx);\r\n var tileId;\r\n if (tileIdMatch) {\r\n tileId = tileIdMatch[1];\r\n }\r\n return tileId;\r\n };\r\n /** @hidden */\r\n Tile.type = \"Tile\";\r\n /** @hidden */\r\n Tile.allowedEvents = [\"tileClicked\", \"tileLoaded\"];\r\n return Tile;\r\n}(embed_1.Embed));\r\nexports.Tile = Tile;\r\n\n\n/***/ }),\n\n/***/ \"./src/util.ts\":\n/*!*********************!*\\\n !*** ./src/util.ts ***!\n \\*********************/\n/*! no static exports found */\n/***/ (function(module, exports) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n};\r\nvar __generator = (this && this.__generator) || function (thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n};\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.getTimeDiffInMilliseconds = exports.getRandomValue = exports.autoAuthInEmbedUrl = exports.isRDLEmbed = exports.isSavedInternal = exports.addParamToUrl = exports.generateUUID = exports.createRandomString = exports.assign = exports.remove = exports.find = exports.findIndex = exports.raiseCustomEvent = void 0;\r\n/**\r\n * Raises a custom event with event data on the specified HTML element.\r\n *\r\n * @export\r\n * @param {HTMLElement} element\r\n * @param {string} eventName\r\n * @param {*} eventData\r\n */\r\nfunction raiseCustomEvent(element, eventName, eventData) {\r\n var customEvent;\r\n if (typeof CustomEvent === 'function') {\r\n customEvent = new CustomEvent(eventName, {\r\n detail: eventData,\r\n bubbles: true,\r\n cancelable: true\r\n });\r\n }\r\n else {\r\n customEvent = document.createEvent('CustomEvent');\r\n customEvent.initCustomEvent(eventName, true, true, eventData);\r\n }\r\n element.dispatchEvent(customEvent);\r\n}\r\nexports.raiseCustomEvent = raiseCustomEvent;\r\n/**\r\n * Finds the index of the first value in an array that matches the specified predicate.\r\n *\r\n * @export\r\n * @template T\r\n * @param {(x: T) => boolean} predicate\r\n * @param {T[]} xs\r\n * @returns {number}\r\n */\r\nfunction findIndex(predicate, xs) {\r\n if (!Array.isArray(xs)) {\r\n throw new Error(\"You attempted to call find with second parameter that was not an array. You passed: \".concat(xs));\r\n }\r\n var index;\r\n xs.some(function (x, i) {\r\n if (predicate(x)) {\r\n index = i;\r\n return true;\r\n }\r\n });\r\n return index;\r\n}\r\nexports.findIndex = findIndex;\r\n/**\r\n * Finds the first value in an array that matches the specified predicate.\r\n *\r\n * @export\r\n * @template T\r\n * @param {(x: T) => boolean} predicate\r\n * @param {T[]} xs\r\n * @returns {T}\r\n */\r\nfunction find(predicate, xs) {\r\n var index = findIndex(predicate, xs);\r\n return xs[index];\r\n}\r\nexports.find = find;\r\nfunction remove(predicate, xs) {\r\n var index = findIndex(predicate, xs);\r\n xs.splice(index, 1);\r\n}\r\nexports.remove = remove;\r\n// See: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/assign\r\n// TODO: replace in favor of using polyfill\r\n/**\r\n * Copies the values of all enumerable properties from one or more source objects to a target object, and returns the target object.\r\n *\r\n * @export\r\n * @param {any} args\r\n * @returns\r\n */\r\nfunction assign() {\r\n var args = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n args[_i] = arguments[_i];\r\n }\r\n var target = args[0];\r\n 'use strict';\r\n if (target === undefined || target === null) {\r\n throw new TypeError('Cannot convert undefined or null to object');\r\n }\r\n var output = Object(target);\r\n for (var index = 1; index < arguments.length; index++) {\r\n var source = arguments[index];\r\n if (source !== undefined && source !== null) {\r\n for (var nextKey in source) {\r\n if (source.hasOwnProperty(nextKey)) {\r\n output[nextKey] = source[nextKey];\r\n }\r\n }\r\n }\r\n }\r\n return output;\r\n}\r\nexports.assign = assign;\r\n/**\r\n * Generates a random 5 to 6 character string.\r\n *\r\n * @export\r\n * @returns {string}\r\n */\r\nfunction createRandomString() {\r\n return getRandomValue().toString(36).substring(1);\r\n}\r\nexports.createRandomString = createRandomString;\r\n/**\r\n * Generates a 20 character uuid.\r\n *\r\n * @export\r\n * @returns {string}\r\n */\r\nfunction generateUUID() {\r\n var d = new Date().getTime();\r\n if (typeof performance !== 'undefined' && typeof performance.now === 'function') {\r\n d += performance.now();\r\n }\r\n return 'xxxxxxxxxxxxxxxxxxxx'.replace(/[xy]/g, function (_c) {\r\n // Generate a random number, scaled from 0 to 15.\r\n var r = (getRandomValue() % 16);\r\n // Shift 4 times to divide by 16\r\n d >>= 4;\r\n return r.toString(16);\r\n });\r\n}\r\nexports.generateUUID = generateUUID;\r\n/**\r\n * Adds a parameter to the given url\r\n *\r\n * @export\r\n * @param {string} url\r\n * @param {string} paramName\r\n * @param {string} value\r\n * @returns {string}\r\n */\r\nfunction addParamToUrl(url, paramName, value) {\r\n var parameterPrefix = url.indexOf('?') > 0 ? '&' : '?';\r\n url += parameterPrefix + paramName + '=' + value;\r\n return url;\r\n}\r\nexports.addParamToUrl = addParamToUrl;\r\n/**\r\n * Checks if the report is saved.\r\n *\r\n * @export\r\n * @param {HttpPostMessage} hpm\r\n * @param {string} uid\r\n * @param {Window} contentWindow\r\n * @returns {Promise<boolean>}\r\n */\r\nfunction isSavedInternal(hpm, uid, contentWindow) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response, response_1;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n _a.trys.push([0, 2, , 3]);\r\n return [4 /*yield*/, hpm.get('/report/hasUnsavedChanges', { uid: uid }, contentWindow)];\r\n case 1:\r\n response = _a.sent();\r\n return [2 /*return*/, !response.body];\r\n case 2:\r\n response_1 = _a.sent();\r\n throw response_1.body;\r\n case 3: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n}\r\nexports.isSavedInternal = isSavedInternal;\r\n/**\r\n * Checks if the embed url is for RDL report.\r\n *\r\n * @export\r\n * @param {string} embedUrl\r\n * @returns {boolean}\r\n */\r\nfunction isRDLEmbed(embedUrl) {\r\n return embedUrl && embedUrl.toLowerCase().indexOf(\"/rdlembed?\") >= 0;\r\n}\r\nexports.isRDLEmbed = isRDLEmbed;\r\n/**\r\n * Checks if the embed url contains autoAuth=true.\r\n *\r\n * @export\r\n * @param {string} embedUrl\r\n * @returns {boolean}\r\n */\r\nfunction autoAuthInEmbedUrl(embedUrl) {\r\n return embedUrl && decodeURIComponent(embedUrl).toLowerCase().indexOf(\"autoauth=true\") >= 0;\r\n}\r\nexports.autoAuthInEmbedUrl = autoAuthInEmbedUrl;\r\n/**\r\n * Returns random number\r\n */\r\nfunction getRandomValue() {\r\n // window.msCrypto for IE\r\n var cryptoObj = window.crypto || window.msCrypto;\r\n var randomValueArray = new Uint32Array(1);\r\n cryptoObj.getRandomValues(randomValueArray);\r\n return randomValueArray[0];\r\n}\r\nexports.getRandomValue = getRandomValue;\r\n/**\r\n * Returns the time interval between two dates in milliseconds\r\n *\r\n * @export\r\n * @param {Date} start\r\n * @param {Date} end\r\n * @returns {number}\r\n */\r\nfunction getTimeDiffInMilliseconds(start, end) {\r\n return Math.abs(start.getTime() - end.getTime());\r\n}\r\nexports.getTimeDiffInMilliseconds = getTimeDiffInMilliseconds;\r\n\n\n/***/ }),\n\n/***/ \"./src/visual.ts\":\n/*!***********************!*\\\n !*** ./src/visual.ts ***!\n \\***********************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n};\r\nvar __generator = (this && this.__generator) || function (thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n};\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.Visual = void 0;\r\nvar powerbi_models_1 = __webpack_require__(/*! powerbi-models */ \"./node_modules/powerbi-models/dist/models.js\");\r\nvar report_1 = __webpack_require__(/*! ./report */ \"./src/report.ts\");\r\nvar visualDescriptor_1 = __webpack_require__(/*! ./visualDescriptor */ \"./src/visualDescriptor.ts\");\r\n/**\r\n * The Power BI Visual embed component\r\n *\r\n * @export\r\n * @class Visual\r\n */\r\nvar Visual = /** @class */ (function (_super) {\r\n __extends(Visual, _super);\r\n /**\r\n * Creates an instance of a Power BI Single Visual.\r\n *\r\n * @param {Service} service\r\n * @param {HTMLElement} element\r\n * @param {IEmbedConfiguration} config\r\n * @hidden\r\n */\r\n function Visual(service, element, baseConfig, phasedRender, isBootstrap, iframe) {\r\n return _super.call(this, service, element, baseConfig, phasedRender, isBootstrap, iframe) || this;\r\n }\r\n /**\r\n * @hidden\r\n */\r\n Visual.prototype.load = function (phasedRender) {\r\n var config = this.config;\r\n if (!config.accessToken) {\r\n // bootstrap flow.\r\n return;\r\n }\r\n if (typeof config.pageName !== 'string' || config.pageName.length === 0) {\r\n throw new Error(\"Page name is required when embedding a visual.\");\r\n }\r\n if (typeof config.visualName !== 'string' || config.visualName.length === 0) {\r\n throw new Error(\"Visual name is required, but it was not found. You must provide a visual name as part of embed configuration.\");\r\n }\r\n // calculate custom layout settings and override config.\r\n var width = config.width ? config.width : this.iframe.offsetWidth;\r\n var height = config.height ? config.height : this.iframe.offsetHeight;\r\n var pageSize = {\r\n type: powerbi_models_1.PageSizeType.Custom,\r\n width: width,\r\n height: height,\r\n };\r\n var pagesLayout = {};\r\n pagesLayout[config.pageName] = {\r\n defaultLayout: {\r\n displayState: {\r\n mode: powerbi_models_1.VisualContainerDisplayMode.Hidden\r\n }\r\n },\r\n visualsLayout: {}\r\n };\r\n pagesLayout[config.pageName].visualsLayout[config.visualName] = {\r\n displayState: {\r\n mode: powerbi_models_1.VisualContainerDisplayMode.Visible\r\n },\r\n x: 1,\r\n y: 1,\r\n z: 1,\r\n width: pageSize.width,\r\n height: pageSize.height\r\n };\r\n config.settings = config.settings || {};\r\n config.settings.filterPaneEnabled = false;\r\n config.settings.navContentPaneEnabled = false;\r\n config.settings.layoutType = powerbi_models_1.LayoutType.Custom;\r\n config.settings.customLayout = {\r\n displayOption: powerbi_models_1.DisplayOption.FitToPage,\r\n pageSize: pageSize,\r\n pagesLayout: pagesLayout\r\n };\r\n this.config = config;\r\n return _super.prototype.load.call(this, phasedRender);\r\n };\r\n /**\r\n * Gets the list of pages within the report - not supported in visual\r\n *\r\n * @returns {Promise<Page[]>}\r\n */\r\n Visual.prototype.getPages = function () {\r\n throw Visual.GetPagesNotSupportedError;\r\n };\r\n /**\r\n * Sets the active page of the report - not supported in visual\r\n *\r\n * @param {string} pageName\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n Visual.prototype.setPage = function (_pageName) {\r\n throw Visual.SetPageNotSupportedError;\r\n };\r\n /**\r\n * Render a preloaded report, using phased embedding API\r\n *\r\n * @hidden\r\n * @returns {Promise<void>}\r\n */\r\n Visual.prototype.render = function (_config) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n throw Visual.RenderNotSupportedError;\r\n });\r\n });\r\n };\r\n /**\r\n * Gets the embedded visual descriptor object that contains the visual name, type, etc.\r\n *\r\n * ```javascript\r\n * visual.getVisualDescriptor()\r\n * .then(visualDetails => { ... });\r\n * ```\r\n *\r\n * @returns {Promise<VisualDescriptor>}\r\n */\r\n Visual.prototype.getVisualDescriptor = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var config, response, embeddedVisuals, visualNotFoundError, embeddedVisual, currentPage, response_1;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n config = this.config;\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.service.hpm.get(\"/report/pages/\".concat(config.pageName, \"/visuals\"), { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 2:\r\n response = _a.sent();\r\n embeddedVisuals = response.body.filter(function (pageVisual) { return pageVisual.name === config.visualName; });\r\n if (embeddedVisuals.length === 0) {\r\n visualNotFoundError = {\r\n message: \"visualNotFound\",\r\n detailedMessage: \"Visual not found\"\r\n };\r\n throw visualNotFoundError;\r\n }\r\n embeddedVisual = embeddedVisuals[0];\r\n currentPage = this.page(config.pageName);\r\n return [2 /*return*/, new visualDescriptor_1.VisualDescriptor(currentPage, embeddedVisual.name, embeddedVisual.title, embeddedVisual.type, embeddedVisual.layout)];\r\n case 3:\r\n response_1 = _a.sent();\r\n throw response_1.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Gets filters that are applied to the filter level.\r\n * Default filter level is visual level.\r\n *\r\n * ```javascript\r\n * visual.getFilters(filtersLevel)\r\n * .then(filters => {\r\n * ...\r\n * });\r\n * ```\r\n *\r\n * @returns {Promise<IFilter[]>}\r\n */\r\n Visual.prototype.getFilters = function (filtersLevel) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var url, response, response_2;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n url = this.getFiltersLevelUrl(filtersLevel);\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.service.hpm.get(url, { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 2:\r\n response = _a.sent();\r\n return [2 /*return*/, response.body];\r\n case 3:\r\n response_2 = _a.sent();\r\n throw response_2.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Updates filters at the filter level.\r\n * Default filter level is visual level.\r\n *\r\n * ```javascript\r\n * const filters: [\r\n * ...\r\n * ];\r\n *\r\n * visual.updateFilters(FiltersOperations.Add, filters, filtersLevel)\r\n * .catch(errors => {\r\n * ...\r\n * });\r\n * ```\r\n *\r\n * @param {(IFilter[])} filters\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n Visual.prototype.updateFilters = function (operation, filters, filtersLevel) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var updateFiltersRequest, url, response_3;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n updateFiltersRequest = {\r\n filtersOperation: operation,\r\n filters: filters\r\n };\r\n url = this.getFiltersLevelUrl(filtersLevel);\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.service.hpm.post(url, updateFiltersRequest, { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 2: return [2 /*return*/, _a.sent()];\r\n case 3:\r\n response_3 = _a.sent();\r\n throw response_3.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Sets filters at the filter level.\r\n * Default filter level is visual level.\r\n *\r\n * ```javascript\r\n * const filters: [\r\n * ...\r\n * ];\r\n *\r\n * visual.setFilters(filters, filtersLevel)\r\n * .catch(errors => {\r\n * ...\r\n * });\r\n * ```\r\n *\r\n * @param {(IFilter[])} filters\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n Visual.prototype.setFilters = function (filters, filtersLevel) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var url, response_4;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n url = this.getFiltersLevelUrl(filtersLevel);\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.service.hpm.put(url, filters, { uid: this.config.uniqueId }, this.iframe.contentWindow)];\r\n case 2: return [2 /*return*/, _a.sent()];\r\n case 3:\r\n response_4 = _a.sent();\r\n throw response_4.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Removes all filters from the current filter level.\r\n * Default filter level is visual level.\r\n *\r\n * ```javascript\r\n * visual.removeFilters(filtersLevel);\r\n * ```\r\n *\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n Visual.prototype.removeFilters = function (filtersLevel) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.updateFilters(powerbi_models_1.FiltersOperations.RemoveAll, undefined, filtersLevel)];\r\n case 1: return [2 /*return*/, _a.sent()];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * @hidden\r\n */\r\n Visual.prototype.getFiltersLevelUrl = function (filtersLevel) {\r\n var config = this.config;\r\n switch (filtersLevel) {\r\n case powerbi_models_1.FiltersLevel.Report:\r\n return \"/report/filters\";\r\n case powerbi_models_1.FiltersLevel.Page:\r\n return \"/report/pages/\".concat(config.pageName, \"/filters\");\r\n default:\r\n return \"/report/pages/\".concat(config.pageName, \"/visuals/\").concat(config.visualName, \"/filters\");\r\n }\r\n };\r\n /** @hidden */\r\n Visual.type = \"visual\";\r\n /** @hidden */\r\n Visual.GetPagesNotSupportedError = \"Get pages is not supported while embedding a visual.\";\r\n /** @hidden */\r\n Visual.SetPageNotSupportedError = \"Set page is not supported while embedding a visual.\";\r\n /** @hidden */\r\n Visual.RenderNotSupportedError = \"render is not supported while embedding a visual.\";\r\n return Visual;\r\n}(report_1.Report));\r\nexports.Visual = Visual;\r\n\n\n/***/ }),\n\n/***/ \"./src/visualDescriptor.ts\":\n/*!*********************************!*\\\n !*** ./src/visualDescriptor.ts ***!\n \\*********************************/\n/*! no static exports found */\n/***/ (function(module, exports, __webpack_require__) {\n\n// Copyright (c) Microsoft Corporation.\r\n// Licensed under the MIT License.\r\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n};\r\nvar __generator = (this && this.__generator) || function (thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n};\r\nObject.defineProperty(exports, \"__esModule\", { value: true });\r\nexports.VisualDescriptor = void 0;\r\nvar powerbi_models_1 = __webpack_require__(/*! powerbi-models */ \"./node_modules/powerbi-models/dist/models.js\");\r\n/**\r\n * A Power BI visual within a page\r\n *\r\n * @export\r\n * @class VisualDescriptor\r\n * @implements {IVisualNode}\r\n */\r\nvar VisualDescriptor = /** @class */ (function () {\r\n /**\r\n * @hidden\r\n */\r\n function VisualDescriptor(page, name, title, type, layout) {\r\n this.name = name;\r\n this.title = title;\r\n this.type = type;\r\n this.layout = layout;\r\n this.page = page;\r\n }\r\n /**\r\n * Gets all visual level filters of the current visual.\r\n *\r\n * ```javascript\r\n * visual.getFilters()\r\n * .then(filters => { ... });\r\n * ```\r\n *\r\n * @returns {(Promise<IFilter[]>)}\r\n */\r\n VisualDescriptor.prototype.getFilters = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response, response_1;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n _a.trys.push([0, 2, , 3]);\r\n return [4 /*yield*/, this.page.report.service.hpm.get(\"/report/pages/\".concat(this.page.name, \"/visuals/\").concat(this.name, \"/filters\"), { uid: this.page.report.config.uniqueId }, this.page.report.iframe.contentWindow)];\r\n case 1:\r\n response = _a.sent();\r\n return [2 /*return*/, response.body];\r\n case 2:\r\n response_1 = _a.sent();\r\n throw response_1.body;\r\n case 3: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Update the filters for the current visual according to the operation: Add, replace all, replace by target or remove.\r\n *\r\n * ```javascript\r\n * visual.updateFilters(FiltersOperations.Add, filters)\r\n * .catch(errors => { ... });\r\n * ```\r\n *\r\n * @param {(IFilter[])} filters\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n VisualDescriptor.prototype.updateFilters = function (operation, filters) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var updateFiltersRequest, response_2;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n updateFiltersRequest = {\r\n filtersOperation: operation,\r\n filters: filters\r\n };\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.page.report.service.hpm.post(\"/report/pages/\".concat(this.page.name, \"/visuals/\").concat(this.name, \"/filters\"), updateFiltersRequest, { uid: this.page.report.config.uniqueId }, this.page.report.iframe.contentWindow)];\r\n case 2: return [2 /*return*/, _a.sent()];\r\n case 3:\r\n response_2 = _a.sent();\r\n throw response_2.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Removes all filters from the current visual.\r\n *\r\n * ```javascript\r\n * visual.removeFilters();\r\n * ```\r\n *\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n VisualDescriptor.prototype.removeFilters = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0: return [4 /*yield*/, this.updateFilters(powerbi_models_1.FiltersOperations.RemoveAll)];\r\n case 1: return [2 /*return*/, _a.sent()];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Sets the filters on the current visual to 'filters'.\r\n *\r\n * ```javascript\r\n * visual.setFilters(filters);\r\n * .catch(errors => { ... });\r\n * ```\r\n *\r\n * @param {(IFilter[])} filters\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n VisualDescriptor.prototype.setFilters = function (filters) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response_3;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n _a.trys.push([0, 2, , 3]);\r\n return [4 /*yield*/, this.page.report.service.hpm.put(\"/report/pages/\".concat(this.page.name, \"/visuals/\").concat(this.name, \"/filters\"), filters, { uid: this.page.report.config.uniqueId }, this.page.report.iframe.contentWindow)];\r\n case 1: return [2 /*return*/, _a.sent()];\r\n case 2:\r\n response_3 = _a.sent();\r\n throw response_3.body;\r\n case 3: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Exports Visual data.\r\n * Can export up to 30K rows.\r\n *\r\n * @param rows: Optional. Default value is 30K, maximum value is 30K as well.\r\n * @param exportDataType: Optional. Default is ExportDataType.Summarized.\r\n * ```javascript\r\n * visual.exportData()\r\n * .then(data => { ... });\r\n * ```\r\n *\r\n * @returns {(Promise<IExportDataResult>)}\r\n */\r\n VisualDescriptor.prototype.exportData = function (exportDataType, rows) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var exportDataRequestBody, response, response_4;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n exportDataRequestBody = {\r\n rows: rows,\r\n exportDataType: exportDataType\r\n };\r\n _a.label = 1;\r\n case 1:\r\n _a.trys.push([1, 3, , 4]);\r\n return [4 /*yield*/, this.page.report.service.hpm.post(\"/report/pages/\".concat(this.page.name, \"/visuals/\").concat(this.name, \"/exportData\"), exportDataRequestBody, { uid: this.page.report.config.uniqueId }, this.page.report.iframe.contentWindow)];\r\n case 2:\r\n response = _a.sent();\r\n return [2 /*return*/, response.body];\r\n case 3:\r\n response_4 = _a.sent();\r\n throw response_4.body;\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Set slicer state.\r\n * Works only for visuals of type slicer.\r\n *\r\n * @param state: A new state which contains the slicer filters.\r\n * ```javascript\r\n * visual.setSlicerState()\r\n * .then(() => { ... });\r\n * ```\r\n */\r\n VisualDescriptor.prototype.setSlicerState = function (state) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response_5;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n _a.trys.push([0, 2, , 3]);\r\n return [4 /*yield*/, this.page.report.service.hpm.put(\"/report/pages/\".concat(this.page.name, \"/visuals/\").concat(this.name, \"/slicer\"), state, { uid: this.page.report.config.uniqueId }, this.page.report.iframe.contentWindow)];\r\n case 1: return [2 /*return*/, _a.sent()];\r\n case 2:\r\n response_5 = _a.sent();\r\n throw response_5.body;\r\n case 3: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Get slicer state.\r\n * Works only for visuals of type slicer.\r\n *\r\n * ```javascript\r\n * visual.getSlicerState()\r\n * .then(state => { ... });\r\n * ```\r\n *\r\n * @returns {(Promise<ISlicerState>)}\r\n */\r\n VisualDescriptor.prototype.getSlicerState = function () {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response, response_6;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n _a.trys.push([0, 2, , 3]);\r\n return [4 /*yield*/, this.page.report.service.hpm.get(\"/report/pages/\".concat(this.page.name, \"/visuals/\").concat(this.name, \"/slicer\"), { uid: this.page.report.config.uniqueId }, this.page.report.iframe.contentWindow)];\r\n case 1:\r\n response = _a.sent();\r\n return [2 /*return*/, response.body];\r\n case 2:\r\n response_6 = _a.sent();\r\n throw response_6.body;\r\n case 3: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Clone existing visual to a new instance.\r\n *\r\n * @returns {(Promise<ICloneVisualResponse>)}\r\n */\r\n VisualDescriptor.prototype.clone = function (request) {\r\n if (request === void 0) { request = {}; }\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response, response_7;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n _a.trys.push([0, 2, , 3]);\r\n return [4 /*yield*/, this.page.report.service.hpm.post(\"/report/pages/\".concat(this.page.name, \"/visuals/\").concat(this.name, \"/clone\"), request, { uid: this.page.report.config.uniqueId }, this.page.report.iframe.contentWindow)];\r\n case 1:\r\n response = _a.sent();\r\n return [2 /*return*/, response.body];\r\n case 2:\r\n response_7 = _a.sent();\r\n throw response_7.body;\r\n case 3: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Sort a visual by dataField and direction.\r\n *\r\n * @param request: Sort by visual request.\r\n *\r\n * ```javascript\r\n * visual.sortBy(request)\r\n * .then(() => { ... });\r\n * ```\r\n */\r\n VisualDescriptor.prototype.sortBy = function (request) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var response_8;\r\n return __generator(this, function (_a) {\r\n switch (_a.label) {\r\n case 0:\r\n _a.trys.push([0, 2, , 3]);\r\n return [4 /*yield*/, this.page.report.service.hpm.put(\"/report/pages/\".concat(this.page.name, \"/visuals/\").concat(this.name, \"/sortBy\"), request, { uid: this.page.report.config.uniqueId }, this.page.report.iframe.contentWindow)];\r\n case 1: return [2 /*return*/, _a.sent()];\r\n case 2:\r\n response_8 = _a.sent();\r\n throw response_8.body;\r\n case 3: return [2 /*return*/];\r\n }\r\n });\r\n });\r\n };\r\n /**\r\n * Updates the position of a visual.\r\n *\r\n * ```javascript\r\n * visual.moveVisual(x, y, z)\r\n * .catch(error => { ... });\r\n * ```\r\n *\r\n * @param {number} x\r\n * @param {number} y\r\n * @param {number} z\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n VisualDescriptor.prototype.moveVisual = function (x, y, z) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var pageName, visualName, report;\r\n return __generator(this, function (_a) {\r\n pageName = this.page.name;\r\n visualName = this.name;\r\n report = this.page.report;\r\n return [2 /*return*/, report.moveVisual(pageName, visualName, x, y, z)];\r\n });\r\n });\r\n };\r\n /**\r\n * Updates the display state of a visual.\r\n *\r\n * ```javascript\r\n * visual.setVisualDisplayState(displayState)\r\n * .catch(error => { ... });\r\n * ```\r\n *\r\n * @param {VisualContainerDisplayMode} displayState\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n VisualDescriptor.prototype.setVisualDisplayState = function (displayState) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var pageName, visualName, report;\r\n return __generator(this, function (_a) {\r\n pageName = this.page.name;\r\n visualName = this.name;\r\n report = this.page.report;\r\n return [2 /*return*/, report.setVisualDisplayState(pageName, visualName, displayState)];\r\n });\r\n });\r\n };\r\n /**\r\n * Resize a visual.\r\n *\r\n * ```javascript\r\n * visual.resizeVisual(width, height)\r\n * .catch(error => { ... });\r\n * ```\r\n *\r\n * @param {number} width\r\n * @param {number} height\r\n * @returns {Promise<IHttpPostMessageResponse<void>>}\r\n */\r\n VisualDescriptor.prototype.resizeVisual = function (width, height) {\r\n return __awaiter(this, void 0, void 0, function () {\r\n var pageName, visualName, report;\r\n return __generator(this, function (_a) {\r\n pageName = this.page.name;\r\n visualName = this.name;\r\n report = this.page.report;\r\n return [2 /*return*/, report.resizeVisual(pageName, visualName, width, height)];\r\n });\r\n });\r\n };\r\n return VisualDescriptor;\r\n}());\r\nexports.VisualDescriptor = VisualDescriptor;\r\n\n\n/***/ })\n\n/******/ });\n});\n//# sourceMappingURL=powerbi.js.map","import { styled } from '@veracity/vui'\n\nexport const ReportTab = styled.div`\n\tpadding: 0.2rem 2rem;\n\n\t.activeTab {\n\t\tcolor: #333;\n\t\tfont-weight: bold;\n\t\ttext-decoration: underline;\n\t}\n\n\ta {\n\t\tfont-size: 13px;\n\t\tcursor: pointer;\n\t\tcolor: #333;\n\n\t\tspan {\n\t\t\tfont-size: 10px;\n\t\t\tpadding-left: 15px;\n\t\t\tpadding-right: 5px;\n\t\t}\n\t}\n`\n\nexport const TabVl = styled.span`\n\tborder-left: 1px solid gray;\n\theight: 20px;\n\tmargin-left: 15px;\n\tmargin-right: 15px;\n\ttop: 0;\n`\n\nexport const ReportTitle = styled.div`\n\ttext-align: center;\n\tmargin: 10px;\n\tfont-size: 18px;\n`\n\nexport const ReportFrame = styled.div`\n\twidth: 100%;\n\theight: 100%;\n\n\tiframe {\n\t\tborder: none;\n\t}\n`\n","import { Box } from '@veracity/vui'\nimport { EmbeddedConfig, ReportData } from 'libs/global'\nimport * as pbi from 'powerbi-client'\nimport React, { useEffect, useRef, useState } from 'react'\nimport shallow from 'zustand/shallow'\n\nimport { logPageView } from 'apis/global'\nimport { useLogUsage } from 'queries/global'\nimport { useGlobalStore } from 'stores/global'\n\nimport { ReportFrame, ReportTab, ReportTitle, TabVl } from './styles'\n\ndeclare let powerbi: pbi.service.Service\n\ntype ReportProps = {\n currentBookmark: any\n printDone: Function\n printNow: boolean\n reportConfig: EmbeddedConfig\n reportData: ReportData\n setupBookmarks: (bookmarks, report) => void\n}\n\nconst Report = (props: ReportProps) => {\n const { reportConfig, reportData } = props\n const [activePageTitle, setActivePageTitle] = useState(null)\n const [pages, setPages] = useState(null)\n const [report, setReport] = useState<pbi.Report>(null)\n const [usageId, setUsageId] = useState(null)\n const rootElement = useRef<HTMLDivElement>(null)\n const { selectedEntity, selectedReport } = useGlobalStore(\n state => ({\n selectedEntity: state.selectedEntity,\n selectedReport: state.selectedReport\n }),\n shallow\n )\n\n const handleUsageResult = data => {\n setUsageId(data)\n logPageUsage(data)\n }\n\n const { mutate: logUsage } = useLogUsage(selectedEntity.entityTreeId, selectedReport.id, handleUsageResult)\n\n const setReportConfig = (reportConfig: EmbeddedConfig, reportData: ReportData) => {\n const config: pbi.IEmbedConfiguration = {}\n config.settings = {}\n config.type = 'report'\n config.tokenType = pbi.models.TokenType.Embed\n config.accessToken = reportConfig?.accessToken\n config.embedUrl = reportConfig?.embeddedUrl\n config.id = reportConfig?.reportId\n config.permissions = pbi.models.Permissions.All\n\n if (reportData.reportType !== 'RDL') {\n config.settings = {}\n config.settings.filterPaneEnabled = reportData?.enableFilterPanel || false\n config.settings.navContentPaneEnabled = false\n const enableExportData: pbi.models.CommandDisplayOption = reportData?.enableExport ? pbi.models.CommandDisplayOption.Enabled : pbi.models.CommandDisplayOption.Hidden\n config.settings.commands = [\n {\n exportData: {\n displayOption: enableExportData\n }\n }\n ]\n }\n\n return config\n }\n\n const config = setReportConfig(reportConfig, reportData)\n\n const validateConfig = (config: pbi.IEmbedConfiguration) => {\n const errors = pbi.models.validateReportLoad(config)\n if (errors) {\n //console.log(errors)\n }\n }\n const embed = (config: pbi.IEmbedConfiguration): pbi.Embed => {\n validateConfig(config)\n powerbi.reset(rootElement.current)\n return powerbi.embed(rootElement.current, config)\n }\n\n const getCustomTitleStyle = (pageName: string) => {\n let result = reportData.showEntityName ? selectedEntity.name : ''\n result += (result.length > 0 && reportData.showReportName ? ' - ' : '') + (reportData.showReportName ? selectedReport.name : '')\n result += (result.length > 0 && reportData.showPageName ? ' - ' : '') + (reportData.showPageName ? pageName : '')\n return result\n }\n\n const applyBookMark = bookMark => {\n bookMark &&\n bookMark.state &&\n report.bookmarksManager.applyState(bookMark.state).then(() => {\n if (pages) {\n report.getPages().then(pages => {\n setPages(pages.filter(x => x.visibility !== 1))\n logPageUsage(usageId)\n })\n }\n })\n }\n\n const loadReport = () => {\n report.on('loaded', e => {\n if (report.bookmarksManager) {\n report.bookmarksManager\n .getBookmarks()\n .then(bookMarks => {\n props.setupBookmarks(bookMarks, report)\n })\n .catch(e => {\n console.log(e)\n })\n }\n\n report\n .getPages()\n .then(data => {\n const tmpPages = data.filter(x => x.visibility !== 1)\n setPages(tmpPages)\n const activePage = data.find(p => p.isActive)\n !activePage && report.setPage(tmpPages?.[0].name)\n logUsage()\n })\n .catch(e => {\n console.log(e)\n })\n })\n }\n\n const handlePageChange = (page: pbi.Page) => {\n report.setPage(page.name)\n report.getPages().then(pages => {\n setPages(pages.filter(x => x.visibility !== 1))\n logPageUsage(usageId)\n })\n }\n\n const logPageUsage = (usageId: number) => {\n report.getActivePage().then(page => {\n if (page && usageId) {\n logPageView(selectedEntity.entityTreeId, selectedReport.id, usageId, page.displayName)\n }\n })\n }\n\n useEffect(() => {\n report && report.print()\n props.printDone()\n }, [props.printNow])\n\n useEffect(() => {\n report && applyBookMark(props.currentBookmark)\n }, [props.currentBookmark])\n\n useEffect(() => {\n if (rootElement.current) {\n setReport(embed(config) as pbi.Report)\n }\n }, [rootElement.current])\n\n useEffect(() => {\n if (rootElement.current) {\n setPages(null)\n setActivePageTitle(null)\n setReport(embed(config) as pbi.Report)\n }\n }, [props.reportConfig])\n\n useEffect(() => {\n report && loadReport()\n }, [report])\n\n useEffect(() => {\n if (pages?.length > 0) {\n const activePage = pages?.find(p => p.isActive)\n const result = getCustomTitleStyle(activePage?.displayName ?? '')\n setActivePageTitle(result)\n } else {\n setActivePageTitle(null)\n }\n }, [selectedEntity, selectedReport, pages])\n\n return (\n <Box column h=\"100%\" w=\"100%\">\n <ReportTab>\n {reportData.showReportPageMenu &&\n pages &&\n pages.map((page: pbi.Page, index) => {\n return (\n <span key={index}>\n {index !== 0 && <TabVl></TabVl>}\n <a className={page.isActive ? 'activeTab' : ''} data-index={index} onClick={() => handlePageChange(page)}>\n {page.displayName}\n </a>\n </span>\n )\n })}\n </ReportTab>\n {reportData?.showCustomTitle && activePageTitle && (\n <ReportTitle>\n <span>{activePageTitle}</span>\n </ReportTitle>\n )}\n <ReportFrame className=\"powerbi-frame\" ref={rootElement}></ReportFrame>\n </Box>\n )\n}\n\nexport default Report\n","import { styled } from '@veracity/vui'\n\nexport const BookmarkList = styled.ul`\n\tmin-width: 20rem;\n\tborder-radius: 0;\n\tpadding: 0;\n position: absolute;\n z-index: 1000;\n display: none;\n margin: 0;\n font-size: 1rem;\n color: #000;\n text-align: left;\n list-style: none;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #ECE9E9;\n &.show {\n display: block;\n }\n}\n`\nexport const BookmarkItem = styled.li`\n\tcursor: pointer;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: space-between;\n\tline-height: 2rem;\n\tborder-bottom: 1px dashed #b7b7b7;\n\tpadding: 5px 0.5rem;\n\t:hover {\n\t\tbackground-color: #4189c7;\n\t\tcolor: #fff;\n\t}\n\t&.selected {\n\t\tbackground: rgb(0, 53, 145);\n\t\tcolor: #ffffff;\n\t}\n\t:last-of-type {\n\t\tborder-bottom: none;\n\t}\n\t.bookmark-name {\n\t\tmin-width: 15rem;\n\t}\n\t.bookmark-link {\n\t\tpadding: 0 10px;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t}\n`\n\nexport const ExportItemList = styled.ul`\n\tmin-width: 12rem;\n\tborder-radius: 0;\n\tpadding: 0;\n\tposition: absolute;\n\tz-index: 1000;\n\tdisplay: none;\n\tmargin: 0;\n\tfont-size: 1rem;\n\tcolor: #000;\n\ttext-align: left;\n\tlist-style: none;\n\tbackground-color: #fff;\n\tbackground-clip: padding-box;\n\tborder: 1px solid #ece9e9;\n\t&.show {\n\t\tdisplay: block;\n\t}\n`\n\nexport const ExportItem = styled.li`\n\tcursor: pointer;\n\tdisplay: flex;\n\talign-items: center;\n\tline-height: 2rem;\n\tborder-bottom: 1px dashed #b7b7b7;\n\tpadding: 5px 0.5rem;\n\t:hover {\n\t\tbackground-color: #4189c7;\n\t\tcolor: #fff;\n\t}\n\t:last-of-type {\n\t\tborder-bottom: none;\n\t}\n`\n\nexport const ListItemText = styled.span`\n\twidth: 100%;\n align-items: center;\n\toverflow: hidden;\n\twhite-space: nowrap;\n\ttext-overflow: ellipsis;\n}\n`\n\nexport const TooltipText = styled.div`\n\talign-items: center;\n\tcolor: #fff;\n\tbackground-color: rgb(15, 33, 77);\n\tpadding: 0.5rem 0.75rem;\n\tz-index: 9999;\n`\n","import { AccordionItem, Box, Button, Icon, Menu, Tooltip } from '@veracity/vui'\nimport { ReportData } from 'libs/global'\n\nimport { BookmarkItem, BookmarkList, ExportItem, ExportItemList, ListItemText, TooltipText } from './styles'\n\ntype ToolbarProps = {\n bookmarks: Array<any>\n handleBookmarkLink: Function\n handleBookmarkSelect: Function\n handleDownloadFile: Function\n handleExportFile: Function\n handleFullScreen: Function\n handlePrint: Function\n reportData: ReportData\n}\n\nconst Toolbar = (props: ToolbarProps) => {\n const { reportData } = props\n\n return (\n <Box alignItems=\"center\" className=\"toolbar\" justifyContent=\"space-between\" mr=\"10\">\n {reportData.enableDownload && reportData.fileBlob && reportData.fileBlob.file && (\n <Tooltip placement=\"bottom\" text=\"Download\">\n <Button icon=\"culFileDownloadAlt\" ml=\"12\" onClick={() => props.handleDownloadFile()} size=\"md\" title=\" \" variant=\"tertiaryDark\" />\n </Tooltip>\n )}\n {reportData?.enablePrint && (\n <Tooltip placement=\"bottom\" text=\"Print\">\n <Button icon=\"falPrint\" ml=\"12\" onClick={() => props.handlePrint()} size=\"md\" title=\" \" variant=\"tertiaryDark\" />\n </Tooltip>\n )}\n\n {(reportData?.enableExportPDF || reportData?.enableExportPPT) && (\n <Menu>\n <Tooltip placement=\"bottom\" text=\"Export\">\n <Menu.Button className=\"hide-dropdown\" icon=\"culFileDownloadAlt\" isDropDown ml=\"12\" title=\" \" />\n </Tooltip>\n\n <Menu.List className=\"export-list\">\n {reportData.enableExportPDF && (\n <Menu.Item key=\"ExportAsPDF\" onClick={() => props.handleExportFile('pdf')}>\n <Icon cursor=\"pointer\" name=\"falFilePdf\" size=\"sm\" />\n <span> PDF</span>\n </Menu.Item>\n )}\n {reportData.enableExportPPT && (\n <Menu.Item key=\"ExportAsPPT\" onClick={() => props.handleExportFile('pptx')}>\n <Icon cursor=\"pointer\" name=\"falFilePowerpoint\" size=\"sm\" />\n <span> PPT</span>\n </Menu.Item>\n )}\n </Menu.List>\n </Menu>\n )}\n {reportData.enableBookmarks && reportData.showReportBookmarks && ['PBI', 'PREMIUM PBI'].indexOf(reportData.reportType) >= 0 && (\n <div key={props.reportData.id} style={{ display: 'inline-flex' }}>\n {props.bookmarks && props.bookmarks.length > 0 && (\n <Menu>\n <Tooltip placement=\"bottom\" text=\"Bookmark\">\n <Menu.Button className=\"hide-dropdown\" icon=\"falBookmark\" isDropDown ml=\"12\" title=\" \" />\n </Tooltip>\n\n <Menu.List className=\"bookmark-list\" heading=\"Bookmark\">\n {props.bookmarks.map(bm => {\n return !bm.state && bm.children ? (\n <AccordionItem collapsed={true} fontSize=\"1rem\" id={bm.name} key={bm.name} title={bm.displayName}>\n <Box className=\"collapsed-list\" column w=\"100%\">\n {bm.children.map(bmc => (\n <Menu.Item className={bmc.selected ? 'selected bookmark-item' : 'bookmark-item'} key={bmc.name} w=\"100%\">\n <Box className=\"bookmark-name\" onClick={() => props.handleBookmarkSelect(bmc)}>\n <ListItemText>{bmc.displayName}</ListItemText>\n </Box>\n <Button icon=\"falCopy\" onClick={() => props.handleBookmarkLink(bmc)} size=\"md\" title=\" \" variant=\"tertiaryDark\" />\n </Menu.Item>\n ))}\n </Box>\n </AccordionItem>\n ) : (\n <Menu.Item className={bm.selected ? 'selected bookmark-item' : 'bookmark-item'} key={bm.state}>\n <Box className=\"bookmark-name\" onClick={() => props.handleBookmarkSelect(bm)}>\n <ListItemText>{bm.displayName}</ListItemText>\n </Box>\n <Button icon=\"falCopy\" onClick={() => props.handleBookmarkLink(bm)} size=\"md\" title=\" \" variant=\"tertiaryDark\" />\n </Menu.Item>\n )\n })}\n </Menu.List>\n </Menu>\n )}\n </div>\n )}\n {props.handleFullScreen && <Button icon=\"falExpandAlt\" ml=\"12\" onClick={() => props.handleFullScreen()} size=\"md\" title=\" \" variant=\"tertiaryDark\" />}\n </Box>\n )\n}\n\nexport default Toolbar\n","import { Box, Button, Icon, Modal, Spinner, T, useToast } from '@veracity/vui'\nimport { ApiError, Entity as EntityType, FileDataPrefix, Report as ReportType } from 'libs/global'\nimport { useState } from 'react'\nimport { useLocation, useSearchParams } from 'react-router-dom'\nimport shallow from 'zustand/shallow'\n\nimport { getExportFile } from 'apis/global'\nimport { PDFViewer } from 'global'\nimport { useEmbeddedConfig } from 'queries/global'\nimport { useGlobalStore } from 'stores/global'\n\nimport PublicLabel from '../../../labels/publicLabel'\nimport BreadCrumb from '../breadcrumb/breadcrumb'\nimport Image from '../image/image'\nimport Report from '../report/report'\nimport Toolbar from '../toolbar/toolbar'\n\nconst ReportSelector = props => {\n const [searchParams, setSearchParams] = useSearchParams()\n const { selectedEntity, selectedReport } = useGlobalStore(\n state => ({\n selectedEntity: state.selectedEntity,\n selectedReport: state.selectedReport\n }),\n shallow\n )\n\n if (selectedReport && selectedReport.powerBIReportId) {\n return (\n <PowerBIReportSelector\n bookmarkId={searchParams.get('bookmarkId')}\n entity={selectedEntity}\n handleFullScreen={props.handleFullScreen}\n report={selectedReport}\n ></PowerBIReportSelector>\n )\n } else {\n return (\n <Box alignItems=\"center\" justifyContent=\"center\" mt=\"0\" w=\"100%\">\n <T size=\"lg\" text=\"No report to display.\" />\n </Box>\n )\n }\n}\n\ntype PowerBIReportSelectorProps = {\n bookmarkId: string\n entity: EntityType\n handleFullScreen: Function\n report: ReportType\n}\n\nexport const PowerBIReportSelector = (props: PowerBIReportSelectorProps) => {\n const { report, bookmarkId, entity } = props\n const location = useLocation()\n const toast = useToast()\n\n const { data, isLoading, isError, error } = useEmbeddedConfig(props.entity.entityTreeId, props.report.id)\n const [printNow, setPrintNow] = useState(false)\n const [bookmarks, setBookmarks] = useState(null)\n const [currentBookmark, setCurrentBookmark] = useState(null)\n const [embedReport, setEmbedReport] = useState(null)\n const [exportFileTitle, setExportFileTitle] = useState('')\n const [exportFileContent, setExportFileContent] = useState('')\n const [exportFileNote, setExportFileNote] = useState('')\n const [exportModalOpen, setExportModalOpen] = useState(false)\n const [exportInProgress, setExportInProgress] = useState(false)\n const [modalErrors, setModalErrors] = useState([])\n\n const handlePrintReport = () => {\n if (['PDF', 'IMAGE'].includes(data.reportData?.reportType) && data.reportData.fileBlob && data.reportData.fileBlob.file) {\n window.print()\n } else if (report && report.powerBIReportId) {\n setPrintNow(true)\n }\n }\n\n const handleBookmarkSelect = bookmark => {\n bookmarks.forEach(bm => {\n if (bm.children) {\n bm.children.forEach(bmc => {\n bmc.selected = bmc.name === bookmark.name\n })\n } else {\n bm.selected = bm.name === bookmark.name\n }\n })\n bookmark && bookmark.state && setCurrentBookmark(bookmark)\n setBookmarks(Array.from(bookmarks))\n }\n\n const downloadExportFile = (entityId, reportId, fileType, bookmark, reportName, dataType) => {\n const title = PublicLabel.exportFileCompleteTitle.replace('$fileType$', fileType.toUpperCase())\n const content = PublicLabel.exportFileCompleteContent.replace('$reportName$', reportName).replace('$fileType$', fileType.toUpperCase())\n let errors = []\n\n getExportFile(entityId, reportId, fileType, bookmark, null)\n .then(res => {\n if (res) {\n if (res.statusCode && res.statusCode === 200) {\n if (res.result) {\n const path = `data:${dataType};base64,${res.result.file}`\n const a = document.createElement('a')\n a.href = path\n a.download = reportName + res.result.fileExtension\n document.body.appendChild(a)\n a.click()\n document.body.removeChild(a)\n } else {\n errors = [PublicLabel.exportFileNoData]\n }\n } else {\n errors = [res.displayMessage]\n if (res?.errorMessages?.length > 0) {\n if (res?.errorMessages[0].toLowerCase().includes('incorrect config')) {\n errors.push(PublicLabel.exportWrongConfig)\n }\n if (res?.errorMessages[0].toLowerCase().includes('badrequest')) {\n errors.push(PublicLabel.exportBadRequest)\n }\n }\n }\n }\n })\n .catch(error => {\n if (error.displayMessage && error.displayMessage.length > 0) {\n errors = [error.displayMessage]\n }\n if (error?.errorMessages?.length > 0) {\n if (error?.errorMessages[0].toLowerCase().includes('incorrect config')) {\n errors.push(PublicLabel.exportWrongConfig)\n }\n if (error?.errorMessages[0].toLowerCase().includes('badrequest')) {\n errors.push(PublicLabel.exportBadRequest)\n }\n }\n })\n .finally(() => {\n setExportFileTitle(title)\n setExportFileContent(content)\n if (fileType === 'pptx') {\n setExportFileNote(PublicLabel.exportFileCompleteNote)\n }\n setExportInProgress(false)\n setModalErrors(errors)\n })\n }\n\n const handleExportFile = fileType => {\n if (!fileType) return\n const fileDataPrefix = {\n pdf: 'application/pdf',\n pptx: 'application/pptx'\n }\n const dataType = FileDataPrefix[fileType]\n const title = PublicLabel.exportFileTitle.replace('$fileType$', fileType.toUpperCase())\n const content = PublicLabel.exportFileContent.replace('$reportName$', report.name).replace('$fileType$', fileType.toUpperCase())\n\n setExportModalOpen(true)\n setExportInProgress(true)\n setExportFileTitle(title)\n setExportFileContent(content)\n\n if (embedReport) {\n embedReport.bookmarksManager.capture().then(res => {\n downloadExportFile(entity.entityTreeId, report.id, fileType, res, report.name, dataType)\n })\n } else {\n downloadExportFile(entity.entityTreeId, report.id, fileType, null, report.name, dataType)\n }\n }\n\n const hideExportModal = () => {\n setExportInProgress(false)\n setExportModalOpen(false)\n setExportFileNote('')\n setModalErrors([])\n }\n\n const handlePrintDone = () => {\n setPrintNow(false)\n }\n\n const setupBookmarks = (bookmarks, embedReport) => {\n if (bookmarkId) {\n let activeBookmark\n bookmarks.forEach(bm => {\n if (bm.children) {\n bm.children.forEach(bmc => {\n if (bmc.name === bookmarkId) {\n activeBookmark = bmc\n }\n bmc.selected = bmc.name === bookmarkId\n })\n } else {\n bm.selected = bm.name === bookmarkId\n }\n })\n setCurrentBookmark(activeBookmark)\n }\n setBookmarks(bookmarks)\n setEmbedReport(embedReport)\n }\n\n const handleBookmarkLink = bookmark => {\n if (bookmark) {\n const espacedName = window.encodeURI(bookmark.name)\n const host = window.location.origin\n const reportUrl = `${window.location.origin}${location.pathname}?bookmarkId=${espacedName}`\n\n navigator.clipboard.writeText(reportUrl).then(\n () => toast.showSuccess('The bookmark link is copied to Clipboard.'),\n err => {\n console.error('Async: Could not copy text: ', err)\n }\n )\n }\n }\n\n const handleDownloadFile = () => {\n const fileType = data?.reportData?.fileBlob.fileExtension.replace('.', '').toLowerCase() || ''\n const dataType = FileDataPrefix[fileType]\n\n const a = document.createElement('a')\n a.href = `data:${dataType};base64,${data?.reportData.fileBlob.file}`\n a.download = report.name + data?.reportData.fileBlob?.fileExtension\n document.body.appendChild(a)\n a.click()\n document.body.removeChild(a)\n }\n\n if (isLoading) {\n return (\n <Box alignItems=\"center\" h=\"100%\" justifyContent=\"center\" mt=\"0\" w=\"100%\">\n <Spinner size=\"lg\" text=\"Loading Report Data…\" textPosition=\"bottom\" />\n </Box>\n )\n }\n\n if (isError) {\n return (\n <Box alignItems=\"center\" h=\"100%\" justifyContent=\"center\" mt=\"0\" w=\"100%\">\n <T color=\"energyRed.54\" size=\"lg\" text={(error?.response?.data as ApiError).displayMessage} />\n </Box>\n )\n }\n\n if (['PBI', 'PREMIUM PBI'].includes(data.reportData?.reportType) && (!data.configuration?.accessToken || !data.configuration?.embeddedUrl)) {\n return (\n <Box alignItems=\"center\" justifyContent=\"center\" mt=\"0\" w=\"100%\">\n <T size=\"lg\" text=\"Cann't load report, report parameter incorrect.\" />\n </Box>\n )\n }\n\n if (['PDF', 'IMAGE'].includes(data.reportData?.reportType) && (!data.reportData?.fileBlob || !data.reportData?.fileBlob.file)) {\n return (\n <Box alignItems=\"center\" justifyContent=\"center\" mt=\"0\" w=\"100%\">\n <T size=\"lg\" text=\"The report resource can not be found.\" />\n </Box>\n )\n }\n\n return (\n <Box column h=\"100%\" justifyContent=\"center\">\n <Box alignItems=\"center\" borderBottomColor=\"#e1e6e9\" borderBottomWidth=\"1px\" h=\"45px\" justifyContent=\"space-between\" pb=\"2px\" pt=\"2px\" w=\"100%\">\n <BreadCrumb></BreadCrumb>\n <Toolbar\n bookmarks={bookmarks}\n handleBookmarkLink={handleBookmarkLink}\n handleBookmarkSelect={handleBookmarkSelect}\n handleDownloadFile={handleDownloadFile}\n handleExportFile={handleExportFile}\n handleFullScreen={props.handleFullScreen}\n handlePrint={handlePrintReport}\n reportData={data.reportData}\n ></Toolbar>\n </Box>\n\n {exportModalOpen && (\n <Modal className=\"export-file-modal\" isOpen={exportModalOpen} onClose={() => setExportModalOpen(false)}>\n <Box className=\"export-modal-wrap\">\n {exportInProgress ? (\n <Box className=\"content\">\n <Box className=\"icon-content\" pl=\"10\" pr=\"10\">\n <Spinner size=\"md\" />\n </Box>\n <Box alignItems=\"top\" className=\"text-content\" column pl=\"10\">\n <p>{exportFileTitle}</p>\n <div>{exportFileContent}</div>\n </Box>\n </Box>\n ) : (\n <div>\n <div>\n {modalErrors.length > 0 ? (\n <Box className=\"content\">\n <Box className=\"icon-content\" pl=\"10\" pr=\"10\">\n <Icon cursor=\"pointer\" name=\"falExclamationCircle\" size=\"md\"></Icon>\n </Box>\n <Box alignItems=\"top\" className=\"text-content\" column pl=\"10\">\n <p>{PublicLabel.exportFileErrorTitle}</p>\n <div>\n {modalErrors.map(error => (\n <div key={error}>{error}</div>\n ))}\n </div>\n </Box>\n </Box>\n ) : (\n <Box className=\"content\">\n <Box className=\"icon-content\" pl=\"10\" pr=\"10\">\n <Icon cursor=\"pointer\" name=\"falCheckCircle\" size=\"md\"></Icon>\n </Box>\n <Box alignItems=\"top\" className=\"text-content\" column pl=\"10\">\n <p>{exportFileTitle}</p>\n <div>{exportFileContent}</div>\n {exportFileNote && <div>{exportFileNote}</div>}\n </Box>\n </Box>\n )}\n </div>\n <Box justifyContent=\"end\" mb=\"-15\" mt=\"15\" pl=\"10\" pr=\"10\">\n <Button className=\"btn btn-primary pull-right\" onClick={() => hideExportModal()} size=\"md\">\n OK\n </Button>\n </Box>\n </div>\n )}\n </Box>\n </Modal>\n )}\n\n {data && data.reportData?.reportType === 'IMAGE' && data.reportData.fileBlob && (\n <Box h=\"100%\" justifyContent=\"center\" overflow=\"auto\" w=\"100%\">\n <Image printDone={handlePrintDone} printNow={printNow} reportData={data.reportData}></Image>\n </Box>\n )}\n {data && data.reportData?.reportType === 'PDF' && data.reportData.fileBlob && (\n <Box column h=\"calc(100% - 20px)\" justifyContent=\"center\" p={2} w=\"100%\">\n <PDFViewer id={data.reportData.id} report={data.reportData.fileBlob.file} />\n </Box>\n )}\n {['PBI', 'PREMIUM PBI', 'RDL'].indexOf(data.reportData?.reportType) >= 0 && (\n <Box column h=\"calc(100% - 20px)\" justifyContent=\"center\" w=\"100%\">\n <Report\n currentBookmark={currentBookmark}\n printDone={handlePrintDone}\n printNow={printNow}\n reportConfig={data.configuration}\n reportData={data.reportData}\n setupBookmarks={setupBookmarks}\n ></Report>\n </Box>\n )}\n </Box>\n )\n}\n\nexport default ReportSelector\n","import { Box } from '@veracity/vui'\nimport { enterFullScreen, exitFullScreen, isFullScreen } from 'libs/global'\nimport React, { useRef } from 'react'\n\nimport ReportSelector from '../reportselector/reportselector'\n\nconst RightPanel = () => {\n\tconst rightPanel = useRef<HTMLDivElement>(null)\n\n\tconst toggleFullScreen = (e: any) => {\n\t\tsetFullScreen()\n\t}\n\n\tconst setFullScreen = () => {\n\t\tif (!isFullScreen()) {\n\t\t\tenterFullScreen(rightPanel.current)\n\t\t} else {\n\t\t\texitFullScreen()\n\t\t}\n\t}\n\n\treturn (\n\t\t<Box bg=\"#fff\" column h=\"100%\" px=\"10px\" py=\"8px\" ref={rightPanel} w=\"80%\">\n\t\t\t<ReportSelector handleFullScreen={toggleFullScreen}></ReportSelector>\n\t\t</Box>\n\t)\n}\n\nexport default RightPanel\n","import { Box, Link, Spinner, T } from '@veracity/vui'\nimport { ApiError, TenantReport } from 'libs/global'\nimport { useEffect } from 'react'\nimport { useNavigate, useParams } from 'react-router-dom'\nimport shallow from 'zustand/shallow'\n\nimport { useReports } from 'queries/global'\nimport { useGlobalStore } from 'stores/global'\n\nimport LeftPanel from './leftpanel/leftpanel'\nimport RightPanel from './rightpanel/rightpanel'\n\nconst Dashboard = () => {\n\tconst { tenant, eid, rid } = useParams<{ eid: string; rid: string; tenant: string }>()\n\tconst navigate = useNavigate()\n\tconst { tenantName, setTenantName } = useGlobalStore(\n\t\tstate => ({\n\t\t\ttenantName: state.tenantName,\n\t\t\tsetTenantName: state.setTenantName\n\t\t}),\n\t\tshallow\n\t)\n\tconst { data, isLoading, isError, error } = useReports(tenant)\n\n\tconst isMatched = (t: TenantReport, eId: number, rId: number): boolean => {\n\t\tlet matched = false\n\t\tt.tenant.entities.forEach(e => {\n\t\t\te.reports.forEach(r => {\n\t\t\t\tif (r.id === rId && e.entityTreeId === eId) {\n\t\t\t\t\tmatched = true\n\t\t\t\t}\n\t\t\t})\n\t\t})\n\t\treturn matched\n\t}\n\n\tconst hasMatchedReport = (data: TenantReport, eId: string, rId: string): boolean => {\n\t\tif (eId && rId) {\n\t\t\tif (Number.isNaN(eId) || Number.isNaN(rId) || !isMatched(data, +eId, +rId)) return false\n\t\t}\n\t\treturn true\n\t}\n\n\tconst hasAvailableReports = (data: TenantReport): boolean => {\n\t\tif (!data.tenant) return false\n\t\telse if (data.tenant.entities.length === 0) return false\n\t\treturn true\n\t}\n\n\tuseEffect(() => {\n\t\tsetTenantName(tenant)\n\t}, [tenant])\n\n\tif (isLoading) {\n\t\treturn (\n\t\t\t<Box alignItems=\"center\" h=\"calc(100vh - 180px)\" justifyContent=\"center\" mt=\"0\">\n\t\t\t\t<Spinner size=\"lg\" text=\"Loading…\" textPosition=\"bottom\" />\n\t\t\t</Box>\n\t\t)\n\t}\n\n\tif (isError) {\n\t\treturn (\n\t\t\t<Box alignItems=\"center\" h=\"calc(100vh - 180px)\" justifyContent=\"center\" mt=\"0\">\n\t\t\t\t<T size=\"lg\" text={(error?.response?.data as ApiError).displayMessage} />\n\t\t\t</Box>\n\t\t)\n\t}\n\n\tif (!hasAvailableReports(data)) {\n\t\treturn (\n\t\t\t<Box alignItems=\"center\" column h=\"calc(100vh - 180px)\" justifyContent=\"center\" mt=\"0\">\n\t\t\t\t<T\n\t\t\t\t\tsize=\"lg\"\n\t\t\t\t\ttext=\"Can't open the public report. No entities are enabled for public view. \"\n\t\t\t\t/>\n\t\t\t</Box>\n\t\t)\n\t}\n\n\tif (!hasMatchedReport(data, eid, rid)) {\n\t\treturn (\n\t\t\t<Box alignItems=\"center\" column h=\"calc(100vh - 180px)\" justifyContent=\"center\" mt=\"0\">\n\t\t\t\t<T\n\t\t\t\t\tsize=\"lg\"\n\t\t\t\t\ttext=\"Can't open the public report. No entities are enabled for public view. \"\n\t\t\t\t/>\n\t\t\t</Box>\n\t\t)\n\t}\n\n\tconst entityId = eid ? +eid : 0\n\tconst reportId = rid ? +rid : 0\n\treturn (\n\t\t<Box h=\"calc(100vh - 60px)\" mt=\"0\">\n\t\t\t<LeftPanel entityId={entityId} reportId={reportId} tenantReport={data}></LeftPanel>\n\t\t\t<RightPanel></RightPanel>\n\t\t</Box>\n\t)\n}\n\nexport default Dashboard\n","import { Box } from '@veracity/vui'\nimport React from 'react'\nimport { Outlet } from 'react-router-dom'\n\nimport { Footer, Header } from 'global'\n\nconst Layout = () => {\n\treturn (\n\t\t<Box column justify=\"space-between\" minH=\"100vh\" w=\"100vm\">\n\t\t\t<Header />\n\t\t\t<Outlet />\n\t\t\t<Footer />\n\t\t</Box>\n\t)\n}\n\nexport default Layout\n","import { Box, LinksProvider, T, VuiProvider } from '@veracity/vui'\nimport React from 'react'\nimport { QueryClient, QueryClientProvider } from 'react-query'\nimport { ReactQueryDevtools } from 'react-query/devtools'\nimport { BrowserRouter, Route, Routes } from 'react-router-dom'\n\nimport { Dashboard, Layout } from 'pages'\n\nimport './styles/main.scss'\nconst queryClient = new QueryClient()\n\nconst App = () => {\n return (\n <QueryClientProvider client={queryClient}>\n <VuiProvider>\n <LinksProvider>\n <BrowserRouter>\n <Routes>\n <Route element={<Layout />}>\n <Route element={<Dashboard />} path=\"/:tenant\" />\n <Route element={<Dashboard />} path=\"/:tenant/entity/:eid\" />\n <Route element={<Dashboard />} path=\"/:tenant/entity/:eid/report/:rid\" />\n <Route\n element={\n <Box alignItems=\"center\" justifyContent=\"center\">\n <T size=\"lg\">Welcome to VAP Public View! Please specify /[tenant] in your URL to access public reports.</T>\n </Box>\n }\n path=\"*\"\n />\n </Route>\n </Routes>\n </BrowserRouter>\n </LinksProvider>\n </VuiProvider>\n <ReactQueryDevtools initialIsOpen={false} />\n </QueryClientProvider>\n )\n}\n\nexport default App\n","import React from 'react'\nimport { createRoot } from 'react-dom/client'\n\nimport App from './app'\n\nimport '@popperjs/core'\n\nconst container = document.getElementById('root')\nconst root = createRoot(container)\nroot.render(\n <React.StrictMode>\n <App />\n </React.StrictMode>\n)\n"],"file":"assets/index-eO3JB6-Z.js"}