blob: 9cefc9e8c7d9a93ddc6a8cc8a2d9dd7a102ea600 [file] [log] [blame]
{"version":3,"sources":["webpack:///./node_modules/lodash/matchesProperty.js","webpack:///./node_modules/lodash/fp/propEq.js","webpack:///./node_modules/gatsby-theme-docz/node_modules/@mdx-js/react/dist/esm.js","webpack:///./node_modules/gatsby-theme-docz/src/hooks/useDbQuery.js","webpack:///./node_modules/gatsby-theme-docz/src/wrapper.js","webpack:///./node_modules/antd/es/_util/throttleByAnimationFrame.js","webpack:///./node_modules/antd/es/affix/utils.js","webpack:///./node_modules/antd/es/affix/index.js","webpack:///./node_modules/antd/es/_util/getScroll.js","webpack:///./node_modules/antd/es/_util/easings.js","webpack:///./node_modules/antd/es/_util/scrollTo.js","webpack:///./node_modules/antd/es/anchor/context.js","webpack:///./node_modules/antd/es/anchor/Anchor.js","webpack:///./node_modules/antd/es/anchor/AnchorLink.js","webpack:///./node_modules/antd/es/anchor/index.js","webpack:///./src/components/AnchorNavigator.tsx","webpack:///./src/components/next.tsx","webpack:///./src/gatsby-theme-docz/index.tsx","webpack:///./node_modules/gatsby-theme-docz/src/base/Seo.js","webpack:///./node_modules/gatsby-theme-docz/src/base/Layout.js","webpack:///./node_modules/lodash/fp/matchesProperty.js","webpack:///./node_modules/rc-resize-observer/es/index.js"],"names":["baseClone","baseMatchesProperty","module","exports","path","srcValue","_defineProperty","obj","key","Object","value","enumerable","configurable","writable","_extends","i","arguments","source","target","ownKeys","object","keys","symbols","_objectSpread2","_objectWithoutProperties","sourceKeys","excluded","_objectWithoutPropertiesLoose","sourceSymbolKeys","MDXContext","React","withMDXComponents","Component","allComponents","useMDXComponents","props","components","contextComponents","isFunction","MDXProvider","DEFAULTS","inlineCode","wrapper","_ref","children","MDXCreateElement","propComponents","mdxType","originalType","parentName","etc","type","concat","ref","createElement","args","argsLength","createElementArgArray","Array","newProps","hasOwnProperty","useDbQuery","data","useStaticQuery","JSON","console","Wrapper","throttleByAnimationFrameDecorator","descriptor","fn","definingProperty","get","this","prototype","boundFn","requestId","later","apply","throttled","_len","length","_key","cancel","throttleByAnimationFrame","bind","defineProperty","getTargetRect","window","getBoundingClientRect","top","bottom","innerHeight","getFixedTop","placeholderReact","targetRect","offsetTop","undefined","getFixedBottom","offsetBottom","TRIGGER_EVENTS","observerEntities","addObserveTarget","affix","entity","find","item","affixList","push","eventHandlers","forEach","eventName","addEventListener","targetAffix","lazyUpdatePosition","removeObserveTarget","observerEntity","oriObserverEntity","hasAffix","some","filter","handler","remove","AffixStatus","__decorate","decorators","desc","d","c","r","getOwnPropertyDescriptor","Reflect","decorate","getDefaultTarget","_React$Component","Affix","_super","_this","state","status","None","lastAffix","prevTarget","getOffsetTop","getOffsetBottom","savePlaceholderNode","node","placeholderNode","saveFixedNode","fixedNode","measure","_this$state","onChange","targetFunc","getTargetFunc","Prepare","targetNode","newState","fixedTop","fixedBottom","affixStyle","position","width","height","placeholderStyle","setState","prepareMeasure","render","getPrefixCls","context","_this$state2","_this$props","prefixCls","className","onResize","updatePosition","style","getTargetContainer","_this2","timeout","setTimeout","prevProps","newTarget","clearTimeout","contextType","isWindow","getScroll","method","result","Document","documentElement","ownerDocument","easeInOutCubic","t","b","cc","scrollTo","y","options","_options$getContainer","getContainer","callback","_options$duration","duration","container","scrollTop","startTime","Date","now","frameFunc","time","nextScrollTop","pageXOffset","HTMLDocument","constructor","name","getDefaultContainer","element","getClientRects","rect","clientTop","sharpMatcherRegx","Anchor","activeLink","links","registerLink","link","includes","unregisterLink","index","indexOf","splice","handleScrollTo","targetOffset","setCurrentActiveLink","sharpLinkMatch","exec","targetElement","document","getElementById","animating","saveInkNode","inkNode","handleScroll","_this$props2","bounds","currentActiveLink","getCurrentAnchor","updateInk","linkNode","getElementsByClassName","clientHeight","_this$context","direction","_this$props3","customizePrefixCls","_this$props3$classNam","showInkInFixed","inkClass","visible","wrapperClass","anchorClass","fixed","wrapperStyle","maxHeight","anchorContent","Provider","onClick","scrollContainer","scrollEvent","currentContainer","linkSections","toString","maxSection","reduce","prev","curr","defaultProps","AnchorLink","handleClick","e","href","title","renderAnchorLink","active","wrapperClassName","titleClassName","_ref2","prevHref","Link","anchorNavStyle","css","mq","HeaderNav","menus","useMenus","headings","getActiveMenuItem","map","slug","nextButtons","getPreviousAndNextUrls","prevUrl","nextUrl","docLayout","theme","config","useConfig","AnchorNavigator","SEO","description","lang","meta","keywords","initialTitle","db","metaDescription","titleTemplate","htmlAttributes","content","property","Route","entry","isTransclusion","useComponents","NotFound","Layout","doc","ctx","isIndex","eqIndex","filepath","findEntry","entries","includesTransclusion","currentEntry","func","convert","placeholder","enumerableOnly","getOwnPropertySymbols","sym","_objectSpread","getOwnPropertyDescriptors","defineProperties","_createSuper","Derived","hasNativeReflectConstruct","construct","sham","Proxy","call","_isNativeReflectConstruct","Super","NewTarget","ReactResizeObserver","resizeObserver","childNode","currentElement","_target$getBoundingCl","offsetWidth","offsetHeight","fixedWidth","Math","floor","fixedHeight","size","setChildNode","onComponentUpdated","destroyObserver","disabled","observe","disconnect","childNodes","displayName"],"mappings":"gFAAA,IAAIA,EAAY,EAAQ,QACpBC,EAAsB,EAAQ,QAmClCC,EAAOC,QAJP,SAAyBC,EAAMC,GAC7B,OAAOJ,EAAoBG,EAAMJ,EAAUK,EA7BvB,M,uBCJtBH,EAAOC,QAAU,EAAQ,S,8KCEzB,SAASG,EAAgBC,EAAI,EAA7B,GAYE,OAXIC,KAAJ,EACEC,0BAAgC,CAC9BC,MAD8B,EAE9BC,YAF8B,EAG9BC,cAH8B,EAI9BC,UAAU,IAGZN,OAGKA,EAGT,SAASO,IAeP,OAdAA,EAAWL,eAAiB,YAC1B,IAAK,IAAIM,EAAT,EAAgBA,EAAIC,UAApB,OAAsCD,IAAK,CACzC,IAAIE,EAASD,UAAb,GAEA,IAAK,IAAL,OACMP,uCAAJ,KACES,KAAcD,EAAdC,IAKN,OAAOA,IAGFJ,WAAP,WAGF,SAASK,EAAQC,EAAO,GACtB,IAAIC,EAAOZ,YAAX,GAEA,GAAIA,OAAJ,sBAAkC,CAChC,IAAIa,EAAUb,6BAAd,GACA,IAAoBa,EAAUA,EAAA,QAAe,YAC3C,OAAOb,qCAAP,eAEFY,kBAGF,OAAOA,EAGT,SAASE,EAAeL,GACtB,IAAK,IAAIH,EAAT,EAAgBA,EAAIC,UAApB,OAAsCD,IAAK,CACzC,IAAIE,EAASD,mBAAuBA,UAAvBA,GAAb,GAEID,EAAJ,EACEI,EAAQV,OAAD,IAAPU,YAAsC,YACpCb,EAAgBY,EAAO,EAAMD,EAA7BX,OAEOG,OAAJ,0BACLA,0BAAgCA,iCAAhCA,IAEAU,EAAQV,OAARU,aAAgC,YAC9BV,0BAAmCA,kCAAnCA,OAKN,OAAOS,EAkBT,SAASM,EAAyBP,EAAO,GACvC,SAAIA,EAAgB,MAAM,GAE1B,IAEIT,EAAI,EAFJU,EAlBN,SAAuCD,EAAO,GAC5C,SAAIA,EAAgB,MAAM,GAC1B,IAEIT,EAAI,EAFJU,EAAJ,GACIO,EAAahB,YAAjB,GAGA,IAAKM,EAAL,EAAYA,EAAIU,EAAhB,OAAmCV,IACjCP,EAAMiB,EAANjB,GACIkB,cAAJ,IACAR,KAAcD,EAAdC,IAGF,OAAOA,EAMMS,CAA8BV,EAA3C,GAIA,GAAIR,OAAJ,sBAAkC,CAChC,IAAImB,EAAmBnB,6BAAvB,GAEA,IAAKM,EAAL,EAAYA,EAAIa,EAAhB,OAAyCb,IACvCP,EAAMoB,EAANpB,GACIkB,cAAJ,GACKjB,6CAAL,KACAS,KAAcD,EAAdC,IAIJ,OAAOA,EAGT,IAIIW,EAA0BC,kBAA9B,IACIC,EAAoB,SAA2BC,GACjD,OAAO,YACL,IAAIC,EAAgBC,EAAiBC,EAArC,YACA,OAAoB,oBAA+BrB,EAAS,GAAG,EAAQ,CACrEsB,WAAYH,OAIdC,EAAmB,SAA0BE,GAC/C,IAAIC,EAAoBP,eAAxB,GACIG,EAAJ,EAMA,OAJA,IACEA,EAjBF,mBAiBkBK,EAAyBF,EAAzBE,GAAyDf,EAAeA,EAAe,GAAhB,GAAvFU,IAGKA,GAELM,EAAc,SAAqBJ,GACrC,IAAIF,EAAgBC,EAAiBC,EAArC,YACA,OAAoB,kBAAoBN,EAApB,SAAyC,CAC3DnB,MAAOuB,GACNE,EAFH,WAMEK,EAAW,CACbC,WADa,OAEbC,QAAS,SAAiBC,GACxB,IAAIC,EAAWD,EAAf,SACA,OAAoBb,kBAAoBA,IAApBA,YAApB,KAGAe,EAAgC,gBAAiB,cACnD,IAAIC,EAAiBX,EAArB,WACIY,EAAUZ,EADd,QAEIa,EAAeb,EAFnB,aAGIc,EAAad,EAHjB,WAIIe,EAAM1B,EAAyBW,EAAO,CAAC,aAAa,UAAd,eAJ1C,eAMIC,EAAaF,EAAjB,GACIiB,EAAJ,EACInB,EAAYI,EAAW,GAAGgB,OAAOH,EAAW,KAArB,OAAXb,KAAuDA,EAAvDA,IAA2EI,EAA3EJ,IAAhB,EAEA,SACsB,oBAA+Bb,EAAeA,EAAe,CAC/E8B,IAAKA,GAD0D,MAEpD,CACXjB,WAAYU,KAII,oBAA+BvB,EAAe,CAChE8B,IAAKA,GADP,OAKF,SAASC,EAAT,KACE,IAAIC,EAAJ,UACIR,EAAUZ,GAASA,EAAvB,QAEA,GAAI,iBAAOgB,GAAX,EAAyC,CACvC,IAAIK,EAAaD,EAAjB,OACIE,EAAwB,IAAIC,MAAhC,GACAD,OACA,IAAIE,EAAJ,GAEA,IAAK,IAAL,OACMC,sBAAJ,KACED,KAAgBxB,EAAhBwB,IAIJA,iBACAA,EAAQ,QAAmB,iBAAOR,EAAPA,EAA3BQ,EACAF,OAEA,IAAK,IAAI1C,EAAT,EAAgBA,EAAhB,EAAgCA,IAC9B0C,KAA2BF,EAA3BE,GAGF,OAAO3B,6BAAP,GAGF,OAAOA,6BAAP,GA5BFe,sC,i/ECpKagB,EAAa,WACxB,IACE,IAAMC,EAAOC,yBAAb,cASA,OAAOC,WAAWF,SAAlB,IACA,SAGA,OAFAG,iBACAA,kDACM,U,ieCfJC,EAAU,SAAC,GAAD,IAAGtB,EAAH,kBAAkB,YAAC,WAAD,KAAlB,IAChB,S,4yBCyBO,SAASuB,KAEd,OAAO,SAAUjD,EAAQV,EAAK4D,GAC5B,IAAIC,EAAKD,EAAW1D,MAChB4D,GAAmB,EACvB,MAAO,CACL1D,cAAc,EACd2D,IAAK,WAEH,GAAID,GAAoBE,OAAStD,EAAOuD,WAAaD,KAAKZ,eAAepD,GACvE,OAAO6D,EAGT,IAAIK,EAvCG,SAAkCL,GAC/C,IAAIM,EAEAC,EAAQ,SAAerB,GACzB,OAAO,WACLoB,EAAY,KACZN,EAAGQ,WAAM,EAAQ,KAAmBtB,MAIpCuB,EAAY,WACd,GAAiB,MAAbH,EAAmB,CACrB,IAAK,IAAII,EAAO/D,UAAUgE,OAAQzB,EAAO,IAAIG,MAAMqB,GAAOE,EAAO,EAAGA,EAAOF,EAAME,IAC/E1B,EAAK0B,GAAQjE,UAAUiE,GAGzBN,EAAY,KAAIC,EAAMrB,MAQ1B,OAJAuB,EAAUI,OAAS,WACjB,OAAO,KAAIA,OAAOP,IAGbG,EAeaK,CAAyBd,EAAGe,KAAKZ,OAQ/C,OAPAF,GAAmB,EACnB7D,OAAO4E,eAAeb,KAAMhE,EAAK,CAC/BE,MAAOgE,EACP9D,cAAc,EACdC,UAAU,IAEZyD,GAAmB,EACZI,KChDR,SAASY,GAAcpE,GAC5B,OAAOA,IAAWqE,OAASrE,EAAOsE,wBAA0B,CAC1DC,IAAK,EACLC,OAAQH,OAAOI,aAGZ,SAASC,GAAYC,EAAkBC,EAAYC,GACxD,QAAkBC,IAAdD,GAA2BD,EAAWL,IAAMI,EAAiBJ,IAAMM,EACrE,OAAOA,EAAYD,EAAWL,IAK3B,SAASQ,GAAeJ,EAAkBC,EAAYI,GAC3D,QAAqBF,IAAjBE,GAA8BJ,EAAWJ,OAASG,EAAiBH,OAASQ,EAE9E,OAAOA,GADkBX,OAAOI,YAAcG,EAAWJ,QAO7D,IAAIS,GAAiB,CAAC,SAAU,SAAU,aAAc,YAAa,WAAY,WAAY,QACzFC,GAAmB,GAKhB,SAASC,GAAiBnF,EAAQoF,GACvC,GAAKpF,EAAL,CACA,IAAIqF,EAASH,GAAiBI,MAAK,SAAUC,GAC3C,OAAOA,EAAKvF,SAAWA,KAGrBqF,EACFA,EAAOG,UAAUC,KAAKL,IAEtBC,EAAS,CACPrF,OAAQA,EACRwF,UAAW,CAACJ,GACZM,cAAe,IAEjBR,GAAiBO,KAAKJ,GAEtBJ,GAAeU,SAAQ,SAAUC,GAC/BP,EAAOK,cAAcE,GAAa,OAAAC,EAAA,GAAiB7F,EAAQ4F,GAAW,WACpEP,EAAOG,UAAUG,SAAQ,SAAUG,GACjCA,EAAYC,gCAMf,SAASC,GAAoBZ,GAClC,IAAIa,EAAiBf,GAAiBI,MAAK,SAAUY,GACnD,IAAIC,EAAWD,EAAkBV,UAAUY,MAAK,SAAUb,GACxD,OAAOA,IAASH,KASlB,OANIe,IACFD,EAAkBV,UAAYU,EAAkBV,UAAUa,QAAO,SAAUd,GACzE,OAAOA,IAASH,MAIbe,KAGLF,GAAsD,IAApCA,EAAeT,UAAU1B,SAC7CoB,GAAmBA,GAAiBmB,QAAO,SAAUd,GACnD,OAAOA,IAASU,KAGlBhB,GAAeU,SAAQ,SAAUC,GAC/B,IAAIU,EAAUL,EAAeP,cAAcE,GAEvCU,GAAWA,EAAQC,QACrBD,EAAQC,aCtEhB,IAsBIC,GAtBAC,GAAwC,SAAUC,EAAY1G,EAAQV,EAAKqH,GAC7E,IAEIC,EAFAC,EAAI/G,UAAUgE,OACdgD,EAAID,EAAI,EAAI7G,EAAkB,OAAT2G,EAAgBA,EAAOpH,OAAOwH,yBAAyB/G,EAAQV,GAAOqH,EAE/F,GAA0E,YAAlD,oBAAZK,QAA0B,YAAc,IAAQA,WAAsD,mBAArBA,QAAQC,SAAyBH,EAAIE,QAAQC,SAASP,EAAY1G,EAAQV,EAAKqH,QAAW,IAAK,IAAI9G,EAAI6G,EAAW5C,OAAS,EAAGjE,GAAK,EAAGA,KAC7N+G,EAAIF,EAAW7G,MAAIiH,GAAKD,EAAI,EAAID,EAAEE,GAAKD,EAAI,EAAID,EAAE5G,EAAQV,EAAKwH,GAAKF,EAAE5G,EAAQV,KAASwH,GAE5F,OAAOD,EAAI,GAAKC,GAAKvH,OAAO4E,eAAenE,EAAQV,EAAKwH,GAAIA,GAW9D,SAASI,KACP,MAAyB,oBAAX7C,OAAyBA,OAAS,MAKlD,SAAWmC,GACTA,EAAYA,EAAkB,KAAI,GAAK,OACvCA,EAAYA,EAAqB,QAAI,GAAK,UAF5C,CAGGA,KAAgBA,GAAc,KAEjC,IAAI,GAAqB,SAAUW,GACjC,IAAUC,EAAOD,GAEjB,IAAIE,EAAS,IAAaD,GAE1B,SAASA,IACP,IAAIE,EAyJJ,OAvJA,IAAgBhE,KAAM8D,IAEtBE,EAAQD,EAAO1D,MAAML,KAAMxD,YACrByH,MAAQ,CACZC,OAAQhB,GAAYiB,KACpBC,WAAW,EACXC,WAAY,MAGdL,EAAMM,aAAe,WACnB,IAAI5C,EAAesC,EAAMrG,MAAM+D,aAC3BH,EAAYyC,EAAMrG,MAAM4D,UAM5B,YAJqBC,IAAjBE,QAA4CF,IAAdD,IAChCA,EAAY,GAGPA,GAGTyC,EAAMO,gBAAkB,WACtB,OAAOP,EAAMrG,MAAM+D,cAGrBsC,EAAMQ,oBAAsB,SAAUC,GACpCT,EAAMU,gBAAkBD,GAG1BT,EAAMW,cAAgB,SAAUF,GAC9BT,EAAMY,UAAYH,GAIpBT,EAAMa,QAAU,WACd,IAAIC,EAAcd,EAAMC,MACpBC,EAASY,EAAYZ,OACrBE,EAAYU,EAAYV,UACxBW,EAAWf,EAAMrG,MAAMoH,SAEvBC,EAAahB,EAAMiB,gBAEvB,GAAIf,IAAWhB,GAAYgC,SAAYlB,EAAMY,WAAcZ,EAAMU,iBAAoBM,EAArF,CAIA,IAAIzD,EAAYyC,EAAMM,eAElB5C,EAAesC,EAAMO,kBAErBY,EAAaH,IAEjB,GAAKG,EAAL,CAIA,IAAIC,EAAW,CACblB,OAAQhB,GAAYiB,MAElB7C,EAAaR,GAAcqE,GAC3B9D,EAAmBP,GAAckD,EAAMU,iBACvCW,EAAWjE,GAAYC,EAAkBC,EAAYC,GACrD+D,EAAc7D,GAAeJ,EAAkBC,EAAYI,QAE9CF,IAAb6D,GACFD,EAASG,WAAa,CACpBC,SAAU,QACVvE,IAAKoE,EACLI,MAAOpE,EAAiBoE,MACxBC,OAAQrE,EAAiBqE,QAE3BN,EAASO,iBAAmB,CAC1BF,MAAOpE,EAAiBoE,MACxBC,OAAQrE,EAAiBqE,cAEFlE,IAAhB8D,IACTF,EAASG,WAAa,CACpBC,SAAU,QACVtE,OAAQoE,EACRG,MAAOpE,EAAiBoE,MACxBC,OAAQrE,EAAiBqE,QAE3BN,EAASO,iBAAmB,CAC1BF,MAAOpE,EAAiBoE,MACxBC,OAAQrE,EAAiBqE,SAI7BN,EAAShB,YAAcgB,EAASG,WAE5BR,GAAYX,IAAcgB,EAAShB,WACrCW,EAASK,EAAShB,WAGpBJ,EAAM4B,SAASR,MAIjBpB,EAAM6B,eAAiB,WAErB7B,EAAM4B,SAAS,CACb1B,OAAQhB,GAAYgC,QACpBK,gBAAY/D,EACZmE,sBAAkBnE,KActBwC,EAAM8B,OAAS,WACb,IAAIC,EAAe/B,EAAMgC,QAAQD,aAC7BE,EAAejC,EAAMC,MACrBsB,EAAaU,EAAaV,WAC1BI,EAAmBM,EAAaN,iBAChCO,EAAclC,EAAMrG,MACpBwI,EAAYD,EAAYC,UACxB/H,EAAW8H,EAAY9H,SACvBgI,EAAY,IAAW,IAAgB,GAAIL,EAAa,QAASI,GAAYZ,IAC7E5H,EAAQ,YAAKqG,EAAMrG,MAAO,CAAC,YAAa,YAAa,eAAgB,SAAU,aAMnF,OAAoB,gBAAoB,KAAgB,CACtD0I,SAAU,WACRrC,EAAMsC,mBAEM,gBAAoB,MAAO,IAAS,GAAI3I,EAAO,CAC7DkB,IAAKmF,EAAMQ,sBACTe,GAA2B,gBAAoB,MAAO,CACxDgB,MAAOZ,EACP,cAAe,SACA,gBAAoB,MAAO,CAC1CS,UAAWA,EACXvH,IAAKmF,EAAMW,cACX4B,MAAOhB,GACO,gBAAoB,KAAgB,CAClDc,SAAU,WACRrC,EAAMsC,mBAEPlI,OAGE4F,EA4GT,OAzGA,IAAaF,EAAO,CAAC,CACnB9H,IAAK,gBACLE,MAAO,WACL,IAAIsK,EAAqBxG,KAAKgG,QAAQQ,mBAClC9J,EAASsD,KAAKrC,MAAMjB,OAExB,YAAe8E,IAAX9E,EACKA,EAGF8J,GAAsB5C,KAG9B,CACD5H,IAAK,oBACLE,MAAO,WACL,IAAIuK,EAASzG,KAETgF,EAAahF,KAAKiF,gBAElBD,IAGFhF,KAAK0G,QAAUC,YAAW,WACxB9E,GAAiBmD,IAAcyB,GAE/BA,EAAOH,uBAIZ,CACDtK,IAAK,qBACLE,MAAO,SAA4B0K,GACjC,IAAIvC,EAAarE,KAAKiE,MAAMI,WACxBW,EAAahF,KAAKiF,gBAClB4B,EAAY,KAEZ7B,IACF6B,EAAY7B,KAAgB,MAG1BX,IAAewC,IACjBnE,GAAoB1C,MAEhB6G,IACFhF,GAAiBgF,EAAW7G,MAE5BA,KAAKsG,kBAIPtG,KAAK4F,SAAS,CACZvB,WAAYwC,KAIZD,EAAUrF,YAAcvB,KAAKrC,MAAM4D,WAAaqF,EAAUlF,eAAiB1B,KAAKrC,MAAM+D,cACxF1B,KAAKsG,iBAGPtG,KAAK6E,YAEN,CACD7I,IAAK,uBACLE,MAAO,WACL4K,aAAa9G,KAAK0G,SAClBhE,GAAoB1C,MACpBA,KAAKsG,eAAe5F,SAEpBV,KAAKyC,mBAAmB/B,WAGzB,CACD1E,IAAK,iBACLE,MAAO,WACL8D,KAAK6F,mBAEN,CACD7J,IAAK,qBACLE,MAAO,WACL,IAAI8I,EAAahF,KAAKiF,gBAClBM,EAAavF,KAAKiE,MAAMsB,WAE5B,GAAIP,GAAcO,EAAY,CAC5B,IAAIhE,EAAYvB,KAAKsE,eACjB5C,EAAe1B,KAAKuE,kBACpBY,EAAaH,IAEjB,GAAIG,GAAcnF,KAAK0E,gBAAiB,CACtC,IAAIpD,EAAaR,GAAcqE,GAC3B9D,EAAmBP,GAAcd,KAAK0E,iBACtCW,EAAWjE,GAAYC,EAAkBC,EAAYC,GACrD+D,EAAc7D,GAAeJ,EAAkBC,EAAYI,GAE/D,QAAiBF,IAAb6D,GAA0BE,EAAWtE,MAAQoE,QAA4B7D,IAAhB8D,GAA6BC,EAAWrE,SAAWoE,EAC9G,QAMNtF,KAAK6F,qBAIF/B,EA3QgB,CA4QvB,aAEF,GAAMiD,YAAc,KAEpB5D,GAAW,CAACxD,MAAsC,GAAMM,UAAW,iBAAkB,MAErFkD,GAAW,CAACxD,MAAsC,GAAMM,UAAW,qBAAsB,MAE1E,UCzTR,SAAS+G,GAASjL,GACvB,OAAOA,SAAqCA,IAAQA,EAAIgF,OAE3C,SAASkG,GAAUvK,EAAQuE,GACxC,GAAsB,oBAAXF,OACT,OAAO,EAGT,IAAImG,EAASjG,EAAM,YAAc,aAC7BkG,EAAS,EAcb,OAZIH,GAAStK,GACXyK,EAASzK,EAAOuE,EAAM,cAAgB,eAC7BvE,aAAkB0K,SAC3BD,EAASzK,EAAO2K,gBAAgBH,GACvBxK,IACTyK,EAASzK,EAAOwK,IAGdxK,IAAWsK,GAAStK,IAA6B,iBAAXyK,IACxCA,GAAUzK,EAAO4K,eAAiB5K,GAAQ2K,gBAAgBH,IAGrDC,ECtBF,SAASI,GAAeC,EAAGC,EAAGlE,EAAGD,GACtC,IAAIoE,EAAKnE,EAAIkE,EAGb,OAFAD,GAAKlE,EAAI,GAED,EACCoE,EAAK,EAAIF,EAAIA,EAAIA,EAAIC,EAIvBC,EAAK,IAAMF,GAAK,GAAKA,EAAIA,EAAI,GAAKC,ECP5B,SAASE,GAASC,GAC/B,IAAIC,EAAUrL,UAAUgE,OAAS,QAAsBgB,IAAjBhF,UAAU,GAAmBA,UAAU,GAAK,GAC9EsL,EAAwBD,EAAQE,aAChCA,OAAyC,IAA1BD,EAAmC,WACpD,OAAO/G,QACL+G,EACAE,EAAWH,EAAQG,SACnBC,EAAoBJ,EAAQK,SAC5BA,OAAiC,IAAtBD,EAA+B,IAAMA,EAChDE,EAAYJ,IACZK,EAAYnB,GAAUkB,GAAW,GACjCE,EAAYC,KAAKC,MAEjBC,EAAY,SAASA,IACvB,IACIC,EADYH,KAAKC,MACEF,EACnBK,EAAgBnB,GAAekB,EAAOP,EAAWA,EAAWO,EAAML,EAAWR,EAAGM,GAEhFlB,GAASmB,GACXA,EAAUR,SAAS5G,OAAO4H,YAAaD,GAC9BP,aAAqBS,cAA+C,iBAA/BT,EAAUU,YAAYC,KACpEX,EAAUd,gBAAgBe,UAAYM,EAEtCP,EAAUC,UAAYM,EAGpBD,EAAOP,EACT,KAAIM,GACyB,mBAAbR,GAChBA,KAIJ,KAAIQ,GCnCN,IACe,GADkB,gBAAoB,MCgBrD,SAASO,KACP,OAAOhI,OAGT,SAASuD,GAAa0E,EAASb,GAC7B,IAAKa,EAAQC,iBAAiBzI,OAC5B,OAAO,EAGT,IAAI0I,EAAOF,EAAQhI,wBAEnB,OAAIkI,EAAKzD,OAASyD,EAAKxD,OACjByC,IAAcpH,QAChBoH,EAAYa,EAAQ1B,cAAcD,gBAC3B6B,EAAKjI,IAAMkH,EAAUgB,WAGvBD,EAAKjI,IAAMkH,EAAUnH,wBAAwBC,IAG/CiI,EAAKjI,IAGd,IAAImI,GAAmB,UAEnB,GAAsB,SAAUvF,GAClC,IAAUwF,EAAQxF,GAElB,IAAIE,EAAS,IAAasF,GAE1B,SAASA,IACP,IAAIrF,EAuKJ,OArKA,IAAgBhE,KAAMqJ,IAEtBrF,EAAQD,EAAO1D,MAAML,KAAMxD,YACrByH,MAAQ,CACZqF,WAAY,MAEdtF,EAAMuF,MAAQ,GAEdvF,EAAMwF,aAAe,SAAUC,GACxBzF,EAAMuF,MAAMG,SAASD,IACxBzF,EAAMuF,MAAMpH,KAAKsH,IAIrBzF,EAAM2F,eAAiB,SAAUF,GAC/B,IAAIG,EAAQ5F,EAAMuF,MAAMM,QAAQJ,IAEjB,IAAXG,GACF5F,EAAMuF,MAAMO,OAAOF,EAAO,IAI9B5F,EAAM+D,aAAe,WACnB,IAAIvB,EAAqBxC,EAAMgC,QAAQQ,mBAGvC,OAFmBxC,EAAMrG,MAAMoK,cACDvB,GAAsBuC,OAItD/E,EAAM+F,eAAiB,SAAUN,GAC/B,IAAIvD,EAAclC,EAAMrG,MACpB4D,EAAY2E,EAAY3E,UACxByI,EAAe9D,EAAY8D,aAE/BhG,EAAMiG,qBAAqBR,GAE3B,IAAItB,EAAYnE,EAAM+D,eAElBK,EAAYnB,GAAUkB,GAAW,GACjC+B,EAAiBd,GAAiBe,KAAKV,GAE3C,GAAKS,EAAL,CAIA,IAAIE,EAAgBC,SAASC,eAAeJ,EAAe,IAE3D,GAAKE,EAAL,CAIA,IACIxC,EAAIQ,EADW9D,GAAa8F,EAAejC,GAE/CP,QAAsBpG,IAAjBwI,EAA6BA,EAAezI,GAAa,EAC9DyC,EAAMuG,WAAY,EAClB5C,GAASC,EAAG,CACVI,SAAU,WACRhE,EAAMuG,WAAY,GAEpBxC,aAAc/D,EAAM+D,kBAIxB/D,EAAMwG,YAAc,SAAU/F,GAC5BT,EAAMyG,QAAUhG,GAGlBT,EAAMiG,qBAAuB,SAAUR,GACrC,IAAIH,EAAatF,EAAMC,MAAMqF,WACzBvE,EAAWf,EAAMrG,MAAMoH,SAEvBuE,IAAeG,IACjBzF,EAAM4B,SAAS,CACb0D,WAAYG,IAGV1E,GACFA,EAAS0E,KAKfzF,EAAM0G,aAAe,WACnB,IAAI1G,EAAMuG,UAAV,CAIA,IAAII,EAAe3G,EAAMrG,MACrB4D,EAAYoJ,EAAapJ,UACzBqJ,EAASD,EAAaC,OACtBZ,EAAeW,EAAaX,aAE5Ba,EAAoB7G,EAAM8G,sBAAkCtJ,IAAjBwI,EAA6BA,EAAezI,GAAa,EAAGqJ,GAE3G5G,EAAMiG,qBAAqBY,KAG7B7G,EAAM+G,UAAY,WAChB,IACI5E,EADwB,IAAuBnC,GACbmC,UAGlC6E,EADa,cAAqB,IAAuBhH,IACnCiH,uBAAuB,GAAGrM,OAAOuH,EAAW,uBAAuB,GAEzF6E,IACFhH,EAAMyG,QAAQlE,MAAMtF,IAAM,GAAGrC,OAAOoM,EAASzJ,UAAYyJ,EAASE,aAAe,EAAI,IAAK,QAI9FlH,EAAM8B,OAAS,WACb,IAAIqF,EAAgBnH,EAAMgC,QACtBD,EAAeoF,EAAcpF,aAC7BqF,EAAYD,EAAcC,UAC1BC,EAAerH,EAAMrG,MACrB2N,EAAqBD,EAAalF,UAClCoF,EAAwBF,EAAajF,UACrCA,OAAsC,IAA1BmF,EAAmC,GAAKA,EACpDhF,EAAQ8E,EAAa9E,MACrBhF,EAAY8J,EAAa9J,UACzBO,EAAQuJ,EAAavJ,MACrB0J,EAAiBH,EAAaG,eAC9BpN,EAAWiN,EAAajN,SACxBkL,EAAatF,EAAMC,MAAMqF,WACzBnD,EAAYJ,EAAa,SAAUuF,GAIvCtH,EAAMmC,UAAYA,EAClB,IAAIsF,EAAW,IAAW,GAAG7M,OAAOuH,EAAW,aAAc,CAC3DuF,QAASpC,IAEPqC,EAAe,IAAWvF,EAAW,GAAGxH,OAAOuH,EAAW,YAAa,IAAgB,GAAI,GAAGvH,OAAOuH,EAAW,QAAuB,QAAdiF,IACzHQ,EAAc,IAAWzF,EAAW,CACtC0F,OAAQ/J,IAAU0J,IAGhBM,EAAe,IAAS,CAC1BC,UAAWxK,EAAY,gBAAgB3C,OAAO2C,EAAW,OAAS,SACjEgF,GAECyF,EAA6B,gBAAoB,MAAO,CAC1D5F,UAAWuF,EACXpF,MAAOuF,GACO,gBAAoB,MAAO,CACzC1F,UAAWwF,GACG,gBAAoB,MAAO,CACzCxF,UAAW,GAAGxH,OAAOuH,EAAW,SAClB,gBAAoB,OAAQ,CAC1CC,UAAWqF,EACX5M,IAAKmF,EAAMwG,eACRpM,IACL,OAAoB,gBAAoB,GAAc6N,SAAU,CAC9D/P,MAAO,CACLsN,aAAcxF,EAAMwF,aACpBG,eAAgB3F,EAAM2F,eACtBL,WAAYtF,EAAMC,MAAMqF,WACxB3B,SAAU3D,EAAM+F,eAChBmC,QAASlI,EAAMrG,MAAMuO,UAErBpK,EAAqC,gBAAoB,GAAO,CAClEP,UAAWA,EACX7E,OAAQsH,EAAM+D,cACbiE,GAHSA,IAMPhI,EA8ET,OA3EA,IAAaqF,EAAQ,CAAC,CACpBrN,IAAK,oBACLE,MAAO,WACL8D,KAAKmM,gBAAkBnM,KAAK+H,eAC5B/H,KAAKoM,YAAc,OAAA7J,EAAA,GAAiBvC,KAAKmM,gBAAiB,SAAUnM,KAAK0K,cACzE1K,KAAK0K,iBAEN,CACD1O,IAAK,qBACLE,MAAO,WACL,GAAI8D,KAAKoM,YAAa,CACpB,IAAIC,EAAmBrM,KAAK+H,eAExB/H,KAAKmM,kBAAoBE,IAC3BrM,KAAKmM,gBAAkBE,EACvBrM,KAAKoM,YAAYnJ,SACjBjD,KAAKoM,YAAc,OAAA7J,EAAA,GAAiBvC,KAAKmM,gBAAiB,SAAUnM,KAAK0K,cACzE1K,KAAK0K,gBAIT1K,KAAK+K,cAEN,CACD/O,IAAK,uBACLE,MAAO,WACD8D,KAAKoM,aACPpM,KAAKoM,YAAYnJ,WAGpB,CACDjH,IAAK,mBACLE,MAAO,WACL,IAAIqF,EAAY/E,UAAUgE,OAAS,QAAsBgB,IAAjBhF,UAAU,GAAmBA,UAAU,GAAK,EAChFoO,EAASpO,UAAUgE,OAAS,QAAsBgB,IAAjBhF,UAAU,GAAmBA,UAAU,GAAK,EAC7EsO,EAAmB9K,KAAKrC,MAAMmN,iBAElC,GAAgC,mBAArBA,EACT,OAAOA,IAGT,IAAIwB,EAAe,GACfnE,EAAYnI,KAAK+H,eAsBrB,GArBA/H,KAAKuJ,MAAMlH,SAAQ,SAAUoH,GAC3B,IAAIS,EAAiBd,GAAiBe,KAAKV,EAAK8C,YAEhD,GAAKrC,EAAL,CAIA,IAAIxN,EAAS2N,SAASC,eAAeJ,EAAe,IAEpD,GAAIxN,EAAQ,CACV,IAAIuE,EAAMqD,GAAa5H,EAAQyL,GAE3BlH,EAAMM,EAAYqJ,GACpB0B,EAAanK,KAAK,CAChBsH,KAAMA,EACNxI,IAAKA,SAMTqL,EAAa9L,OAAQ,CACvB,IAAIgM,EAAaF,EAAaG,QAAO,SAAUC,EAAMC,GACnD,OAAOA,EAAK1L,IAAMyL,EAAKzL,IAAM0L,EAAOD,KAEtC,OAAOF,EAAW/C,KAGpB,MAAO,OAIJJ,EA3PiB,CA4PxB,aAGF,GAAOuD,aAAe,CACpB9K,OAAO,EACP0J,gBAAgB,GAElB,GAAOzE,YAAc,KCnSrB,IAAI,GAA0B,SAAUlD,GACtC,IAAUgJ,EAAYhJ,GAEtB,IAAIE,EAAS,IAAa8I,GAE1B,SAASA,IACP,IAAI7I,EAgDJ,OA9CA,IAAgBhE,KAAM6M,IAEtB7I,EAAQD,EAAO1D,MAAML,KAAMxD,YAErBsQ,YAAc,SAAUC,GAC5B,IAAI5B,EAAgBnH,EAAMgC,QACtB2B,EAAWwD,EAAcxD,SACzBuE,EAAUf,EAAce,QACxBhG,EAAclC,EAAMrG,MACpBqP,EAAO9G,EAAY8G,KACnBC,EAAQ/G,EAAY+G,MAEpBf,GACFA,EAAQa,EAAG,CACTE,MAAOA,EACPD,KAAMA,IAIVrF,EAASqF,IAGXhJ,EAAMkJ,iBAAmB,SAAU/O,GACjC,IAAI4H,EAAe5H,EAAK4H,aACpB4E,EAAe3G,EAAMrG,MACrB2N,EAAqBX,EAAaxE,UAClC6G,EAAOrC,EAAaqC,KACpBC,EAAQtC,EAAasC,MACrB7O,EAAWuM,EAAavM,SACxBgI,EAAYuE,EAAavE,UACzB1J,EAASiO,EAAajO,OACtByJ,EAAYJ,EAAa,SAAUuF,GACnC6B,EAASnJ,EAAMgC,QAAQsD,aAAe0D,EACtCI,EAAmB,IAAWhH,EAAW,GAAGxH,OAAOuH,EAAW,SAAU,IAAgB,GAAI,GAAGvH,OAAOuH,EAAW,gBAAiBgH,IAClIE,EAAiB,IAAW,GAAGzO,OAAOuH,EAAW,eAAgB,IAAgB,GAAI,GAAGvH,OAAOuH,EAAW,sBAAuBgH,IACrI,OAAoB,gBAAoB,MAAO,CAC7C/G,UAAWgH,GACG,gBAAoB,IAAK,CACvChH,UAAWiH,EACXL,KAAMA,EACNC,MAAwB,iBAAVA,EAAqBA,EAAQ,GAC3CvQ,OAAQA,EACRwP,QAASlI,EAAM8I,aACdG,GAAQ7O,IAGN4F,EA+BT,OA5BA,IAAa6I,EAAY,CAAC,CACxB7Q,IAAK,oBACLE,MAAO,WACL8D,KAAKgG,QAAQwD,aAAaxJ,KAAKrC,MAAMqP,QAEtC,CACDhR,IAAK,qBACLE,MAAO,SAA4BoR,GACjC,IAAIC,EAAWD,EAAMN,KACjBA,EAAOhN,KAAKrC,MAAMqP,KAElBO,IAAaP,IACfhN,KAAKgG,QAAQ2D,eAAe4D,GAC5BvN,KAAKgG,QAAQwD,aAAawD,MAG7B,CACDhR,IAAK,uBACLE,MAAO,WACL8D,KAAKgG,QAAQ2D,eAAe3J,KAAKrC,MAAMqP,QAExC,CACDhR,IAAK,SACLE,MAAO,WACL,OAAoB,gBAAoB,KAAgB,KAAM8D,KAAKkN,sBAIhEL,EArFqB,CAsF5B,aAEF,GAAWD,aAAe,CACxBI,KAAM,KAER,GAAWjG,YAAc,GACV,UCpGf,GAAOyG,KAAO,GACC,U,aCqBPA,G,GAAAA,KACFC,GAAiBC,YAEjB,CAACC,KAAG,IAFU,gLAsBdC,GAAY,WAChB,IAAMC,EAAQC,cACNC,EAAaC,aAAkBH,GAA/BE,SACR,OACE,mBAAKL,IAAKD,IACR,oBACGM,EAASE,KAAI,SAAClB,GAAD,OACZ,YAACS,GAAD,CAAMR,KAAI,IAAMD,EAAEmB,KAAQjB,MAAOF,EAAE7Q,cAO9B0R,W,wNCvCf,IAAMO,GAAc,WAClB,IAAMN,EAAQC,cADU,EAEGM,aAAuBP,GAA3CQ,EAFiB,KAERC,EAFQ,KAGxB,OACE,8BACGD,GACC,iBAAGrB,KAAMqB,EAASjI,UAAU,WAA5B,QAIDkI,GACC,iBAAGtB,KAAMsB,EAASlI,UAAU,WAA5B,UAQO+H,W,6NCRTI,GAAY,CAAH,0D,GAwBAC,eAnBD,SAAC,GAAwB,IAAtBpQ,EAAsB,EAAtBA,SACTqQ,EAASC,cACf,OACE,YAAC,IAAD,CAAeF,MAAOC,GACpB,YAAC,IAAD,KACE,YAAC,IAAD,CAAKxB,MAAM,kBACX,mBAAKS,IAAKa,IACR,uBAAMnQ,GACN,YAACuQ,GAAD,OAEF,uBACE,YAAC,GAAD,Y,mQC3CJC,GAAM,SAAC,GAAgE,IAA9DC,EAA6D,EAA7DA,YAAaC,EAAgD,EAAhDA,KAAMC,EAA0C,EAA1CA,KAAMC,EAAoC,EAApCA,SAAiBC,EAAmB,EAA1BhC,MAC1CiC,EAAK7P,IACL4N,EAAQgC,GAAgBC,SAA9B,MACMC,EAAkBN,GAAeK,SAAvC,YAEA,OACE,uBACEjC,MADF,EAEEmC,cAAa,QAAUF,SAFzB,MAGEG,eAAgB,CAAEP,QAClBC,KAAM,CACJ,CACEjG,KADF,cAEEwG,QAASH,GAEX,CACEI,SADF,WAEED,QAASrC,GAEX,CACEsC,SADF,iBAEED,QAASH,GAEX,CACEI,SADF,UAEED,QAAQ,WAEV,CACExG,KADF,eAEEwG,QAAQ,WAEV,CACExG,KADF,gBAEEwG,QAASrC,GAEX,CACEnE,KADF,sBAEEwG,QAASH,IA3BP,OA+BFH,EAAA,SACI,CACElG,KADF,WAEEwG,QAASN,cAlCb,iBA2CZJ,gBAAmB,CACjBE,KADiB,KAEjBC,KAFiB,GAGjBC,SAAU,IAWZ,U,mhCC9DA,IAAMQ,GAAQ,SAAC,GAA0D,IAAxDpR,EAAuD,EAAvDA,SAAUqR,EAA6C,EAA7CA,MAAOC,EAAsC,EAAtCA,eAAmB9C,EAAmB,qDAChEhP,EAAa+R,cACbC,EAAWhS,EAAjB,SACMiS,EAASjS,EAAf,OACMD,EAAK,gBAAsBmS,IAAKL,IACtC,OAAKA,GAAL,EACOC,EAAc,EAGnB,eAAa9R,WAAYA,GACvB,mBACE,gBALN,KADsC,cAAP,OA6B3BiS,GAAS,SAAC,GAAmC,IAAjCzR,EAAgC,EAAhCA,SAAawO,EAAmB,4BAC3BmD,EAAQnD,EADmB,YAE1CsC,EAAK7P,IACLoQ,EApBU,SAACP,EAAG,GACpB,IAAMc,EAAUD,GAAOA,EAAPA,aAAhB,MAA0CA,oBACpCE,EAAU,kBAAhB,KACA,GAAIF,IAAQA,EAARA,OAAJ,EAAkC,OAAOb,eAAP,GAClC,IAAMgB,EAAW,qBAAjB,GACA,OAAOhB,eAAgB,qBAAvB,IAeciB,CAAUjB,EAAxB,GACMQ,EAbqB,SAACR,EAAG,GAAY,IACnCkB,EAAYlB,EADsB,QAEpCgB,EAAW,uCAAjB,GACA,OACGvS,EAAD,aACAyS,WAAiBA,OAAa,qBAFhC,KAUuBC,CAAqBnB,EAA5C,GACA,OACE,4BACGO,GAAS,gBAAKxC,MAAOwC,QAAY3G,OAClC,gBAAOoG,GAAP,EAAeoB,aAAcb,GAC3B,iCAAyBA,MAAzB,EAAuCC,eAAgBA,IAJ7D,MAiBF,Y,meCnEA,IACIa,EADU,EAAQ,OACXC,CAAQ,kBAAmB,EAAQ,SAE9CD,EAAKE,YAAc,EAAQ,QAC3B/U,EAAOC,QAAU4U,G,yDCJjB,oJAOA,SAAS5T,EAAQC,EAAQ8T,GACvB,IAAI7T,EAAOZ,OAAOY,KAAKD,GAEvB,GAAIX,OAAO0U,sBAAuB,CAChC,IAAI7T,EAAUb,OAAO0U,sBAAsB/T,GACvC8T,IAAgB5T,EAAUA,EAAQiG,QAAO,SAAU6N,GACrD,OAAO3U,OAAOwH,yBAAyB7G,EAAQgU,GAAKzU,eAEtDU,EAAKsF,KAAK9B,MAAMxD,EAAMC,GAGxB,OAAOD,EAGT,SAASgU,EAAcnU,GACrB,IAAK,IAAIH,EAAI,EAAGA,EAAIC,UAAUgE,OAAQjE,IAAK,CACzC,IAAIE,EAAyB,MAAhBD,UAAUD,GAAaC,UAAUD,GAAK,GAE/CA,EAAI,EACNI,EAAQV,OAAOQ,IAAS,GAAM4F,SAAQ,SAAUrG,GAC9C,YAAgBU,EAAQV,EAAKS,EAAOT,OAE7BC,OAAO6U,0BAChB7U,OAAO8U,iBAAiBrU,EAAQT,OAAO6U,0BAA0BrU,IAEjEE,EAAQV,OAAOQ,IAAS4F,SAAQ,SAAUrG,GACxCC,OAAO4E,eAAenE,EAAQV,EAAKC,OAAOwH,yBAAyBhH,EAAQT,OAKjF,OAAOU,EAGT,SAASsU,EAAaC,GACpB,IAAIC,EAkBN,WACE,GAAuB,oBAAZxN,UAA4BA,QAAQyN,UAAW,OAAO,EACjE,GAAIzN,QAAQyN,UAAUC,KAAM,OAAO,EACnC,GAAqB,mBAAVC,MAAsB,OAAO,EAExC,IAEE,OADA/I,KAAKrI,UAAUsM,SAAS+E,KAAK5N,QAAQyN,UAAU7I,KAAM,IAAI,iBAClD,EACP,MAAOyE,GACP,OAAO,GA3BuBwE,GAEhC,OAAO,WACL,IACIpK,EADAqK,EAAQ,YAAgBP,GAG5B,GAAIC,EAA2B,CAC7B,IAAIO,EAAY,YAAgBzR,MAAM6I,YAEtC1B,EAASzD,QAAQyN,UAAUK,EAAOhV,UAAWiV,QAE7CtK,EAASqK,EAAMnR,MAAML,KAAMxD,WAG7B,OAAO,YAA2BwD,KAAMmH,IAuB5C,IAEIuK,EAEJ,WACE,IAAIA,EAAmC,SAAU7N,GAC/C,YAAU6N,EAAqB7N,GAE/B,IAAIE,EAASiN,EAAaU,GAE1B,SAASA,IACP,IAAI1N,EAqDJ,OAnDA,YAAgBhE,KAAM0R,IAEtB1N,EAAQD,EAAO1D,MAAML,KAAMxD,YACrBmV,eAAiB,KACvB3N,EAAM4N,UAAY,KAClB5N,EAAM6N,eAAiB,KACvB7N,EAAMC,MAAQ,CACZwB,MAAO,EACPC,OAAQ,GAGV1B,EAAMqC,SAAW,SAAU+J,GACzB,IAAI/J,EAAWrC,EAAMrG,MAAM0I,SACvB3J,EAAS0T,EAAQ,GAAG1T,OAEpBoV,EAAwBpV,EAAOsE,wBAC/ByE,EAAQqM,EAAsBrM,MAC9BC,EAASoM,EAAsBpM,OAE/BqM,EAAcrV,EAAOqV,YACrBC,EAAetV,EAAOsV,aAOtBC,EAAaC,KAAKC,MAAM1M,GACxB2M,EAAcF,KAAKC,MAAMzM,GAE7B,GAAI1B,EAAMC,MAAMwB,QAAUwM,GAAcjO,EAAMC,MAAMyB,SAAW0M,EAAa,CAC1E,IAAIC,EAAO,CACT5M,MAAOwM,EACPvM,OAAQ0M,GAGVpO,EAAM4B,SAASyM,GAEXhM,GACFA,EAASwK,EAAcA,EAAc,GAAIwB,GAAO,GAAI,CAClDN,YAAaA,EACbC,aAAcA,OAMtBhO,EAAMsO,aAAe,SAAU7N,GAC7BT,EAAM4N,UAAYnN,GAGbT,EAoFT,OAjFA,YAAa0N,EAAqB,CAAC,CACjC1V,IAAK,oBACLE,MAAO,WACL8D,KAAKuS,uBAEN,CACDvW,IAAK,qBACLE,MAAO,WACL8D,KAAKuS,uBAEN,CACDvW,IAAK,uBACLE,MAAO,WACL8D,KAAKwS,oBAEN,CACDxW,IAAK,qBACLE,MAAO,WAGL,GAFe8D,KAAKrC,MAAM8U,SAGxBzS,KAAKwS,sBADP,CAMA,IAAIxJ,EAAU,YAAYhJ,KAAK4R,WAAa5R,MACvBgJ,IAAYhJ,KAAK6R,iBAGpC7R,KAAKwS,kBACLxS,KAAK6R,eAAiB7I,IAGnBhJ,KAAK2R,gBAAkB3I,IAC1BhJ,KAAK2R,eAAiB,IAAI,UAAe3R,KAAKqG,UAC9CrG,KAAK2R,eAAee,QAAQ1J,OAG/B,CACDhN,IAAK,kBACLE,MAAO,WACD8D,KAAK2R,iBACP3R,KAAK2R,eAAegB,aACpB3S,KAAK2R,eAAiB,QAGzB,CACD3V,IAAK,SACLE,MAAO,WACL,IAAIkC,EAAW4B,KAAKrC,MAAMS,SACtBwU,EAAa,YAAQxU,GAEzB,GAAIwU,EAAWpS,OAAS,EACtB,aAAQ,EAAO,sGACV,GAA0B,IAAtBoS,EAAWpS,OAEpB,OADA,aAAQ,EAAO,iEACR,KAGT,IAAIoR,EAAYgB,EAAW,GAE3B,GAAI,iBAAqBhB,IAAc,YAAWA,GAAY,CAC5D,IAAI/S,EAAM+S,EAAU/S,IACpB+T,EAAW,GAAK,eAAmBhB,EAAW,CAC5C/S,IAAK,YAAWA,EAAKmB,KAAKsS,gBAI9B,OAA6B,IAAtBM,EAAWpS,OAAeoS,EAAW,GAAKA,EAAW3E,KAAI,SAAUxJ,EAAMmF,GAC9E,OAAK,iBAAqBnF,IAAS,QAASA,GAAqB,OAAbA,EAAKzI,IAChDyI,EAGF,eAAmBA,EAAM,CAC9BzI,IAAK,GAAG4C,OA9IM,kBA8IsB,KAAKA,OAAOgL,YAMjD8H,EA/I8B,CAgJrC,aAGF,OADAA,EAAoBmB,YAAc,iBAC3BnB,EApJT,GAuJe","file":"d2a02eb96fd6e6ba477a053ef6c83ea3a1914b64-19fd85e989a1015b9974.js","sourcesContent":["var baseClone = require('./_baseClone'),\n baseMatchesProperty = require('./_baseMatchesProperty');\n\n/** Used to compose bitmasks for cloning. */\nvar CLONE_DEEP_FLAG = 1;\n\n/**\n * Creates a function that performs a partial deep comparison between the\n * value at `path` of a given object to `srcValue`, returning `true` if the\n * object value is equivalent, else `false`.\n *\n * **Note:** Partial comparisons will match empty array and empty object\n * `srcValue` values against any array or object value, respectively. See\n * `_.isEqual` for a list of supported value comparisons.\n *\n * @static\n * @memberOf _\n * @since 3.2.0\n * @category Util\n * @param {Array|string} path The path of the property to get.\n * @param {*} srcValue The value to match.\n * @returns {Function} Returns the new spec function.\n * @example\n *\n * var objects = [\n * { 'a': 1, 'b': 2, 'c': 3 },\n * { 'a': 4, 'b': 5, 'c': 6 }\n * ];\n *\n * _.find(objects, _.matchesProperty('a', 4));\n * // => { 'a': 4, 'b': 5, 'c': 6 }\n */\nfunction matchesProperty(path, srcValue) {\n return baseMatchesProperty(path, baseClone(srcValue, CLONE_DEEP_FLAG));\n}\n\nmodule.exports = matchesProperty;\n","module.exports = require('./matchesProperty');\n","import React from 'react';\n\nfunction _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}\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 ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\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\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n\n var target = _objectWithoutPropertiesLoose(source, excluded);\n\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}\n\nvar isFunction = function isFunction(obj) {\n return typeof obj === 'function';\n};\n\nvar MDXContext = /*#__PURE__*/React.createContext({});\nvar withMDXComponents = function withMDXComponents(Component) {\n return function (props) {\n var allComponents = useMDXComponents(props.components);\n return /*#__PURE__*/React.createElement(Component, _extends({}, props, {\n components: allComponents\n }));\n };\n};\nvar useMDXComponents = function useMDXComponents(components) {\n var contextComponents = React.useContext(MDXContext);\n var allComponents = contextComponents;\n\n if (components) {\n allComponents = isFunction(components) ? components(contextComponents) : _objectSpread2(_objectSpread2({}, contextComponents), components);\n }\n\n return allComponents;\n};\nvar MDXProvider = function MDXProvider(props) {\n var allComponents = useMDXComponents(props.components);\n return /*#__PURE__*/React.createElement(MDXContext.Provider, {\n value: allComponents\n }, props.children);\n};\n\nvar TYPE_PROP_NAME = 'mdxType';\nvar DEFAULTS = {\n inlineCode: 'code',\n wrapper: function wrapper(_ref) {\n var children = _ref.children;\n return /*#__PURE__*/React.createElement(React.Fragment, {}, children);\n }\n};\nvar MDXCreateElement = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var propComponents = props.components,\n mdxType = props.mdxType,\n originalType = props.originalType,\n parentName = props.parentName,\n etc = _objectWithoutProperties(props, [\"components\", \"mdxType\", \"originalType\", \"parentName\"]);\n\n var components = useMDXComponents(propComponents);\n var type = mdxType;\n var Component = components[\"\".concat(parentName, \".\").concat(type)] || components[type] || DEFAULTS[type] || originalType;\n\n if (propComponents) {\n return /*#__PURE__*/React.createElement(Component, _objectSpread2(_objectSpread2({\n ref: ref\n }, etc), {}, {\n components: propComponents\n }));\n }\n\n return /*#__PURE__*/React.createElement(Component, _objectSpread2({\n ref: ref\n }, etc));\n});\nMDXCreateElement.displayName = 'MDXCreateElement';\nfunction createElement (type, props) {\n var args = arguments;\n var mdxType = props && props.mdxType;\n\n if (typeof type === 'string' || mdxType) {\n var argsLength = args.length;\n var createElementArgArray = new Array(argsLength);\n createElementArgArray[0] = MDXCreateElement;\n var newProps = {};\n\n for (var key in props) {\n if (hasOwnProperty.call(props, key)) {\n newProps[key] = props[key];\n }\n }\n\n newProps.originalType = type;\n newProps[TYPE_PROP_NAME] = typeof type === 'string' ? type : mdxType;\n createElementArgArray[1] = newProps;\n\n for (var i = 2; i < argsLength; i++) {\n createElementArgArray[i] = args[i];\n }\n\n return React.createElement.apply(null, createElementArgArray);\n }\n\n return React.createElement.apply(null, args);\n}\n\nexport { MDXContext, MDXProvider, createElement as mdx, useMDXComponents, withMDXComponents };\n","import { useStaticQuery, graphql } from 'gatsby'\n\nexport const useDbQuery = () => {\n try {\n const data = useStaticQuery(graphql`\n query {\n doczDb {\n id\n db\n }\n }\n `)\n\n return JSON.parse(data.doczDb.db)\n } catch (err) {\n console.error(err)\n console.error('Error when parsing docz database')\n return {}\n }\n}\n","import * as React from 'react'\n\nconst Wrapper = ({ children }) => <React.Fragment>{children}</React.Fragment>\nexport default Wrapper\n","import _toConsumableArray from \"@babel/runtime/helpers/toConsumableArray\";\nimport raf from 'raf';\nexport default function throttleByAnimationFrame(fn) {\n var requestId;\n\n var later = function later(args) {\n return function () {\n requestId = null;\n fn.apply(void 0, _toConsumableArray(args));\n };\n };\n\n var throttled = function throttled() {\n if (requestId == null) {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n requestId = raf(later(args));\n }\n };\n\n throttled.cancel = function () {\n return raf.cancel(requestId);\n };\n\n return throttled;\n}\nexport function throttleByAnimationFrameDecorator() {\n // eslint-disable-next-line func-names\n return function (target, key, descriptor) {\n var fn = descriptor.value;\n var definingProperty = false;\n return {\n configurable: true,\n get: function get() {\n // eslint-disable-next-line no-prototype-builtins\n if (definingProperty || this === target.prototype || this.hasOwnProperty(key)) {\n return fn;\n }\n\n var boundFn = throttleByAnimationFrame(fn.bind(this));\n definingProperty = true;\n Object.defineProperty(this, key, {\n value: boundFn,\n configurable: true,\n writable: true\n });\n definingProperty = false;\n return boundFn;\n }\n };\n };\n}","import addEventListener from \"rc-util/es/Dom/addEventListener\";\nexport function getTargetRect(target) {\n return target !== window ? target.getBoundingClientRect() : {\n top: 0,\n bottom: window.innerHeight\n };\n}\nexport function getFixedTop(placeholderReact, targetRect, offsetTop) {\n if (offsetTop !== undefined && targetRect.top > placeholderReact.top - offsetTop) {\n return offsetTop + targetRect.top;\n }\n\n return undefined;\n}\nexport function getFixedBottom(placeholderReact, targetRect, offsetBottom) {\n if (offsetBottom !== undefined && targetRect.bottom < placeholderReact.bottom + offsetBottom) {\n var targetBottomOffset = window.innerHeight - targetRect.bottom;\n return offsetBottom + targetBottomOffset;\n }\n\n return undefined;\n} // ======================== Observer ========================\n\nvar TRIGGER_EVENTS = ['resize', 'scroll', 'touchstart', 'touchmove', 'touchend', 'pageshow', 'load'];\nvar observerEntities = [];\nexport function getObserverEntities() {\n // Only used in test env. Can be removed if refactor.\n return observerEntities;\n}\nexport function addObserveTarget(target, affix) {\n if (!target) return;\n var entity = observerEntities.find(function (item) {\n return item.target === target;\n });\n\n if (entity) {\n entity.affixList.push(affix);\n } else {\n entity = {\n target: target,\n affixList: [affix],\n eventHandlers: {}\n };\n observerEntities.push(entity); // Add listener\n\n TRIGGER_EVENTS.forEach(function (eventName) {\n entity.eventHandlers[eventName] = addEventListener(target, eventName, function () {\n entity.affixList.forEach(function (targetAffix) {\n targetAffix.lazyUpdatePosition();\n });\n });\n });\n }\n}\nexport function removeObserveTarget(affix) {\n var observerEntity = observerEntities.find(function (oriObserverEntity) {\n var hasAffix = oriObserverEntity.affixList.some(function (item) {\n return item === affix;\n });\n\n if (hasAffix) {\n oriObserverEntity.affixList = oriObserverEntity.affixList.filter(function (item) {\n return item !== affix;\n });\n }\n\n return hasAffix;\n });\n\n if (observerEntity && observerEntity.affixList.length === 0) {\n observerEntities = observerEntities.filter(function (item) {\n return item !== observerEntity;\n }); // Remove listener\n\n TRIGGER_EVENTS.forEach(function (eventName) {\n var handler = observerEntity.eventHandlers[eventName];\n\n if (handler && handler.remove) {\n handler.remove();\n }\n });\n }\n}","import _extends from \"@babel/runtime/helpers/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _inherits from \"@babel/runtime/helpers/inherits\";\nimport _createSuper from \"@babel/runtime/helpers/createSuper\";\nimport _typeof from \"@babel/runtime/helpers/typeof\";\n\nvar __decorate = this && this.__decorate || function (decorators, target, key, desc) {\n var c = arguments.length,\n r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc,\n d;\n if ((typeof Reflect === \"undefined\" ? \"undefined\" : _typeof(Reflect)) === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);else for (var i = decorators.length - 1; i >= 0; i--) {\n if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n }\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n};\n\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport omit from 'omit.js';\nimport ResizeObserver from 'rc-resize-observer';\nimport { ConfigContext } from '../config-provider';\nimport { throttleByAnimationFrameDecorator } from '../_util/throttleByAnimationFrame';\nimport { addObserveTarget, removeObserveTarget, getTargetRect, getFixedTop, getFixedBottom } from './utils';\n\nfunction getDefaultTarget() {\n return typeof window !== 'undefined' ? window : null;\n}\n\nvar AffixStatus;\n\n(function (AffixStatus) {\n AffixStatus[AffixStatus[\"None\"] = 0] = \"None\";\n AffixStatus[AffixStatus[\"Prepare\"] = 1] = \"Prepare\";\n})(AffixStatus || (AffixStatus = {}));\n\nvar Affix = /*#__PURE__*/function (_React$Component) {\n _inherits(Affix, _React$Component);\n\n var _super = _createSuper(Affix);\n\n function Affix() {\n var _this;\n\n _classCallCheck(this, Affix);\n\n _this = _super.apply(this, arguments);\n _this.state = {\n status: AffixStatus.None,\n lastAffix: false,\n prevTarget: null\n };\n\n _this.getOffsetTop = function () {\n var offsetBottom = _this.props.offsetBottom;\n var offsetTop = _this.props.offsetTop;\n\n if (offsetBottom === undefined && offsetTop === undefined) {\n offsetTop = 0;\n }\n\n return offsetTop;\n };\n\n _this.getOffsetBottom = function () {\n return _this.props.offsetBottom;\n };\n\n _this.savePlaceholderNode = function (node) {\n _this.placeholderNode = node;\n };\n\n _this.saveFixedNode = function (node) {\n _this.fixedNode = node;\n }; // =================== Measure ===================\n\n\n _this.measure = function () {\n var _this$state = _this.state,\n status = _this$state.status,\n lastAffix = _this$state.lastAffix;\n var onChange = _this.props.onChange;\n\n var targetFunc = _this.getTargetFunc();\n\n if (status !== AffixStatus.Prepare || !_this.fixedNode || !_this.placeholderNode || !targetFunc) {\n return;\n }\n\n var offsetTop = _this.getOffsetTop();\n\n var offsetBottom = _this.getOffsetBottom();\n\n var targetNode = targetFunc();\n\n if (!targetNode) {\n return;\n }\n\n var newState = {\n status: AffixStatus.None\n };\n var targetRect = getTargetRect(targetNode);\n var placeholderReact = getTargetRect(_this.placeholderNode);\n var fixedTop = getFixedTop(placeholderReact, targetRect, offsetTop);\n var fixedBottom = getFixedBottom(placeholderReact, targetRect, offsetBottom);\n\n if (fixedTop !== undefined) {\n newState.affixStyle = {\n position: 'fixed',\n top: fixedTop,\n width: placeholderReact.width,\n height: placeholderReact.height\n };\n newState.placeholderStyle = {\n width: placeholderReact.width,\n height: placeholderReact.height\n };\n } else if (fixedBottom !== undefined) {\n newState.affixStyle = {\n position: 'fixed',\n bottom: fixedBottom,\n width: placeholderReact.width,\n height: placeholderReact.height\n };\n newState.placeholderStyle = {\n width: placeholderReact.width,\n height: placeholderReact.height\n };\n }\n\n newState.lastAffix = !!newState.affixStyle;\n\n if (onChange && lastAffix !== newState.lastAffix) {\n onChange(newState.lastAffix);\n }\n\n _this.setState(newState);\n }; // @ts-ignore TS6133\n\n\n _this.prepareMeasure = function () {\n // event param is used before. Keep compatible ts define here.\n _this.setState({\n status: AffixStatus.Prepare,\n affixStyle: undefined,\n placeholderStyle: undefined\n }); // Test if `updatePosition` called\n\n\n if (process.env.NODE_ENV === 'test') {\n var onTestUpdatePosition = _this.props.onTestUpdatePosition;\n\n if (onTestUpdatePosition) {\n onTestUpdatePosition();\n }\n }\n }; // =================== Render ===================\n\n\n _this.render = function () {\n var getPrefixCls = _this.context.getPrefixCls;\n var _this$state2 = _this.state,\n affixStyle = _this$state2.affixStyle,\n placeholderStyle = _this$state2.placeholderStyle;\n var _this$props = _this.props,\n prefixCls = _this$props.prefixCls,\n children = _this$props.children;\n var className = classNames(_defineProperty({}, getPrefixCls('affix', prefixCls), affixStyle));\n var props = omit(_this.props, ['prefixCls', 'offsetTop', 'offsetBottom', 'target', 'onChange']); // Omit this since `onTestUpdatePosition` only works on test.\n\n if (process.env.NODE_ENV === 'test') {\n props = omit(props, ['onTestUpdatePosition']);\n }\n\n return /*#__PURE__*/React.createElement(ResizeObserver, {\n onResize: function onResize() {\n _this.updatePosition();\n }\n }, /*#__PURE__*/React.createElement(\"div\", _extends({}, props, {\n ref: _this.savePlaceholderNode\n }), affixStyle && /*#__PURE__*/React.createElement(\"div\", {\n style: placeholderStyle,\n \"aria-hidden\": \"true\"\n }), /*#__PURE__*/React.createElement(\"div\", {\n className: className,\n ref: _this.saveFixedNode,\n style: affixStyle\n }, /*#__PURE__*/React.createElement(ResizeObserver, {\n onResize: function onResize() {\n _this.updatePosition();\n }\n }, children))));\n };\n\n return _this;\n }\n\n _createClass(Affix, [{\n key: \"getTargetFunc\",\n value: function getTargetFunc() {\n var getTargetContainer = this.context.getTargetContainer;\n var target = this.props.target;\n\n if (target !== undefined) {\n return target;\n }\n\n return getTargetContainer || getDefaultTarget;\n } // Event handler\n\n }, {\n key: \"componentDidMount\",\n value: function componentDidMount() {\n var _this2 = this;\n\n var targetFunc = this.getTargetFunc();\n\n if (targetFunc) {\n // [Legacy] Wait for parent component ref has its value.\n // We should use target as directly element instead of function which makes element check hard.\n this.timeout = setTimeout(function () {\n addObserveTarget(targetFunc(), _this2); // Mock Event object.\n\n _this2.updatePosition();\n });\n }\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps) {\n var prevTarget = this.state.prevTarget;\n var targetFunc = this.getTargetFunc();\n var newTarget = null;\n\n if (targetFunc) {\n newTarget = targetFunc() || null;\n }\n\n if (prevTarget !== newTarget) {\n removeObserveTarget(this);\n\n if (newTarget) {\n addObserveTarget(newTarget, this); // Mock Event object.\n\n this.updatePosition();\n } // eslint-disable-next-line react/no-did-update-set-state\n\n\n this.setState({\n prevTarget: newTarget\n });\n }\n\n if (prevProps.offsetTop !== this.props.offsetTop || prevProps.offsetBottom !== this.props.offsetBottom) {\n this.updatePosition();\n }\n\n this.measure();\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n clearTimeout(this.timeout);\n removeObserveTarget(this);\n this.updatePosition.cancel(); // https://github.com/ant-design/ant-design/issues/22683\n\n this.lazyUpdatePosition.cancel();\n } // Handle realign logic\n\n }, {\n key: \"updatePosition\",\n value: function updatePosition() {\n this.prepareMeasure();\n }\n }, {\n key: \"lazyUpdatePosition\",\n value: function lazyUpdatePosition() {\n var targetFunc = this.getTargetFunc();\n var affixStyle = this.state.affixStyle; // Check position change before measure to make Safari smooth\n\n if (targetFunc && affixStyle) {\n var offsetTop = this.getOffsetTop();\n var offsetBottom = this.getOffsetBottom();\n var targetNode = targetFunc();\n\n if (targetNode && this.placeholderNode) {\n var targetRect = getTargetRect(targetNode);\n var placeholderReact = getTargetRect(this.placeholderNode);\n var fixedTop = getFixedTop(placeholderReact, targetRect, offsetTop);\n var fixedBottom = getFixedBottom(placeholderReact, targetRect, offsetBottom);\n\n if (fixedTop !== undefined && affixStyle.top === fixedTop || fixedBottom !== undefined && affixStyle.bottom === fixedBottom) {\n return;\n }\n }\n } // Directly call prepare measure since it's already throttled.\n\n\n this.prepareMeasure();\n }\n }]);\n\n return Affix;\n}(React.Component);\n\nAffix.contextType = ConfigContext;\n\n__decorate([throttleByAnimationFrameDecorator()], Affix.prototype, \"updatePosition\", null);\n\n__decorate([throttleByAnimationFrameDecorator()], Affix.prototype, \"lazyUpdatePosition\", null);\n\nexport default Affix;","export function isWindow(obj) {\n return obj !== null && obj !== undefined && obj === obj.window;\n}\nexport default function getScroll(target, top) {\n if (typeof window === 'undefined') {\n return 0;\n }\n\n var method = top ? 'scrollTop' : 'scrollLeft';\n var result = 0;\n\n if (isWindow(target)) {\n result = target[top ? 'pageYOffset' : 'pageXOffset'];\n } else if (target instanceof Document) {\n result = target.documentElement[method];\n } else if (target) {\n result = target[method];\n }\n\n if (target && !isWindow(target) && typeof result !== 'number') {\n result = (target.ownerDocument || target).documentElement[method];\n }\n\n return result;\n}","// eslint-disable-next-line import/prefer-default-export\nexport function easeInOutCubic(t, b, c, d) {\n var cc = c - b;\n t /= d / 2;\n\n if (t < 1) {\n return cc / 2 * t * t * t + b;\n } // eslint-disable-next-line no-return-assign\n\n\n return cc / 2 * ((t -= 2) * t * t + 2) + b;\n}","import raf from 'raf';\nimport getScroll, { isWindow } from './getScroll';\nimport { easeInOutCubic } from './easings';\nexport default function scrollTo(y) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _options$getContainer = options.getContainer,\n getContainer = _options$getContainer === void 0 ? function () {\n return window;\n } : _options$getContainer,\n callback = options.callback,\n _options$duration = options.duration,\n duration = _options$duration === void 0 ? 450 : _options$duration;\n var container = getContainer();\n var scrollTop = getScroll(container, true);\n var startTime = Date.now();\n\n var frameFunc = function frameFunc() {\n var timestamp = Date.now();\n var time = timestamp - startTime;\n var nextScrollTop = easeInOutCubic(time > duration ? duration : time, scrollTop, y, duration);\n\n if (isWindow(container)) {\n container.scrollTo(window.pageXOffset, nextScrollTop);\n } else if (container instanceof HTMLDocument || container.constructor.name === 'HTMLDocument') {\n container.documentElement.scrollTop = nextScrollTop;\n } else {\n container.scrollTop = nextScrollTop;\n }\n\n if (time < duration) {\n raf(frameFunc);\n } else if (typeof callback === 'function') {\n callback();\n }\n };\n\n raf(frameFunc);\n}","import * as React from 'react';\nvar AnchorContext = /*#__PURE__*/React.createContext(null);\nexport default AnchorContext;","import _extends from \"@babel/runtime/helpers/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/assertThisInitialized\";\nimport _inherits from \"@babel/runtime/helpers/inherits\";\nimport _createSuper from \"@babel/runtime/helpers/createSuper\";\nimport * as React from 'react';\nimport * as ReactDOM from 'react-dom';\nimport classNames from 'classnames';\nimport addEventListener from \"rc-util/es/Dom/addEventListener\";\nimport Affix from '../affix';\nimport { ConfigContext } from '../config-provider';\nimport scrollTo from '../_util/scrollTo';\nimport getScroll from '../_util/getScroll';\nimport AnchorContext from './context';\n\nfunction getDefaultContainer() {\n return window;\n}\n\nfunction getOffsetTop(element, container) {\n if (!element.getClientRects().length) {\n return 0;\n }\n\n var rect = element.getBoundingClientRect();\n\n if (rect.width || rect.height) {\n if (container === window) {\n container = element.ownerDocument.documentElement;\n return rect.top - container.clientTop;\n }\n\n return rect.top - container.getBoundingClientRect().top;\n }\n\n return rect.top;\n}\n\nvar sharpMatcherRegx = /#(\\S+)$/;\n\nvar Anchor = /*#__PURE__*/function (_React$Component) {\n _inherits(Anchor, _React$Component);\n\n var _super = _createSuper(Anchor);\n\n function Anchor() {\n var _this;\n\n _classCallCheck(this, Anchor);\n\n _this = _super.apply(this, arguments);\n _this.state = {\n activeLink: null\n };\n _this.links = []; // Context\n\n _this.registerLink = function (link) {\n if (!_this.links.includes(link)) {\n _this.links.push(link);\n }\n };\n\n _this.unregisterLink = function (link) {\n var index = _this.links.indexOf(link);\n\n if (index !== -1) {\n _this.links.splice(index, 1);\n }\n };\n\n _this.getContainer = function () {\n var getTargetContainer = _this.context.getTargetContainer;\n var getContainer = _this.props.getContainer;\n var getFunc = getContainer || getTargetContainer || getDefaultContainer;\n return getFunc();\n };\n\n _this.handleScrollTo = function (link) {\n var _this$props = _this.props,\n offsetTop = _this$props.offsetTop,\n targetOffset = _this$props.targetOffset;\n\n _this.setCurrentActiveLink(link);\n\n var container = _this.getContainer();\n\n var scrollTop = getScroll(container, true);\n var sharpLinkMatch = sharpMatcherRegx.exec(link);\n\n if (!sharpLinkMatch) {\n return;\n }\n\n var targetElement = document.getElementById(sharpLinkMatch[1]);\n\n if (!targetElement) {\n return;\n }\n\n var eleOffsetTop = getOffsetTop(targetElement, container);\n var y = scrollTop + eleOffsetTop;\n y -= targetOffset !== undefined ? targetOffset : offsetTop || 0;\n _this.animating = true;\n scrollTo(y, {\n callback: function callback() {\n _this.animating = false;\n },\n getContainer: _this.getContainer\n });\n };\n\n _this.saveInkNode = function (node) {\n _this.inkNode = node;\n };\n\n _this.setCurrentActiveLink = function (link) {\n var activeLink = _this.state.activeLink;\n var onChange = _this.props.onChange;\n\n if (activeLink !== link) {\n _this.setState({\n activeLink: link\n });\n\n if (onChange) {\n onChange(link);\n }\n }\n };\n\n _this.handleScroll = function () {\n if (_this.animating) {\n return;\n }\n\n var _this$props2 = _this.props,\n offsetTop = _this$props2.offsetTop,\n bounds = _this$props2.bounds,\n targetOffset = _this$props2.targetOffset;\n\n var currentActiveLink = _this.getCurrentAnchor(targetOffset !== undefined ? targetOffset : offsetTop || 0, bounds);\n\n _this.setCurrentActiveLink(currentActiveLink);\n };\n\n _this.updateInk = function () {\n var _assertThisInitialize = _assertThisInitialized(_this),\n prefixCls = _assertThisInitialize.prefixCls;\n\n var anchorNode = ReactDOM.findDOMNode(_assertThisInitialized(_this));\n var linkNode = anchorNode.getElementsByClassName(\"\".concat(prefixCls, \"-link-title-active\"))[0];\n\n if (linkNode) {\n _this.inkNode.style.top = \"\".concat(linkNode.offsetTop + linkNode.clientHeight / 2 - 4.5, \"px\");\n }\n };\n\n _this.render = function () {\n var _this$context = _this.context,\n getPrefixCls = _this$context.getPrefixCls,\n direction = _this$context.direction;\n var _this$props3 = _this.props,\n customizePrefixCls = _this$props3.prefixCls,\n _this$props3$classNam = _this$props3.className,\n className = _this$props3$classNam === void 0 ? '' : _this$props3$classNam,\n style = _this$props3.style,\n offsetTop = _this$props3.offsetTop,\n affix = _this$props3.affix,\n showInkInFixed = _this$props3.showInkInFixed,\n children = _this$props3.children;\n var activeLink = _this.state.activeLink;\n var prefixCls = getPrefixCls('anchor', customizePrefixCls); // To support old version react.\n // Have to add prefixCls on the instance.\n // https://github.com/facebook/react/issues/12397\n\n _this.prefixCls = prefixCls;\n var inkClass = classNames(\"\".concat(prefixCls, \"-ink-ball\"), {\n visible: activeLink\n });\n var wrapperClass = classNames(className, \"\".concat(prefixCls, \"-wrapper\"), _defineProperty({}, \"\".concat(prefixCls, \"-rtl\"), direction === 'rtl'));\n var anchorClass = classNames(prefixCls, {\n fixed: !affix && !showInkInFixed\n });\n\n var wrapperStyle = _extends({\n maxHeight: offsetTop ? \"calc(100vh - \".concat(offsetTop, \"px)\") : '100vh'\n }, style);\n\n var anchorContent = /*#__PURE__*/React.createElement(\"div\", {\n className: wrapperClass,\n style: wrapperStyle\n }, /*#__PURE__*/React.createElement(\"div\", {\n className: anchorClass\n }, /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-ink\")\n }, /*#__PURE__*/React.createElement(\"span\", {\n className: inkClass,\n ref: _this.saveInkNode\n })), children));\n return /*#__PURE__*/React.createElement(AnchorContext.Provider, {\n value: {\n registerLink: _this.registerLink,\n unregisterLink: _this.unregisterLink,\n activeLink: _this.state.activeLink,\n scrollTo: _this.handleScrollTo,\n onClick: _this.props.onClick\n }\n }, !affix ? anchorContent : /*#__PURE__*/React.createElement(Affix, {\n offsetTop: offsetTop,\n target: _this.getContainer\n }, anchorContent));\n };\n\n return _this;\n }\n\n _createClass(Anchor, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this.scrollContainer = this.getContainer();\n this.scrollEvent = addEventListener(this.scrollContainer, 'scroll', this.handleScroll);\n this.handleScroll();\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate() {\n if (this.scrollEvent) {\n var currentContainer = this.getContainer();\n\n if (this.scrollContainer !== currentContainer) {\n this.scrollContainer = currentContainer;\n this.scrollEvent.remove();\n this.scrollEvent = addEventListener(this.scrollContainer, 'scroll', this.handleScroll);\n this.handleScroll();\n }\n }\n\n this.updateInk();\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n if (this.scrollEvent) {\n this.scrollEvent.remove();\n }\n }\n }, {\n key: \"getCurrentAnchor\",\n value: function getCurrentAnchor() {\n var offsetTop = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n var bounds = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 5;\n var getCurrentAnchor = this.props.getCurrentAnchor;\n\n if (typeof getCurrentAnchor === 'function') {\n return getCurrentAnchor();\n }\n\n var linkSections = [];\n var container = this.getContainer();\n this.links.forEach(function (link) {\n var sharpLinkMatch = sharpMatcherRegx.exec(link.toString());\n\n if (!sharpLinkMatch) {\n return;\n }\n\n var target = document.getElementById(sharpLinkMatch[1]);\n\n if (target) {\n var top = getOffsetTop(target, container);\n\n if (top < offsetTop + bounds) {\n linkSections.push({\n link: link,\n top: top\n });\n }\n }\n });\n\n if (linkSections.length) {\n var maxSection = linkSections.reduce(function (prev, curr) {\n return curr.top > prev.top ? curr : prev;\n });\n return maxSection.link;\n }\n\n return '';\n }\n }]);\n\n return Anchor;\n}(React.Component);\n\nexport { Anchor as default };\nAnchor.defaultProps = {\n affix: true,\n showInkInFixed: false\n};\nAnchor.contextType = ConfigContext;","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _inherits from \"@babel/runtime/helpers/inherits\";\nimport _createSuper from \"@babel/runtime/helpers/createSuper\";\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { ConfigConsumer } from '../config-provider';\nimport AnchorContext from './context';\n\nvar AnchorLink = /*#__PURE__*/function (_React$Component) {\n _inherits(AnchorLink, _React$Component);\n\n var _super = _createSuper(AnchorLink);\n\n function AnchorLink() {\n var _this;\n\n _classCallCheck(this, AnchorLink);\n\n _this = _super.apply(this, arguments);\n\n _this.handleClick = function (e) {\n var _this$context = _this.context,\n scrollTo = _this$context.scrollTo,\n onClick = _this$context.onClick;\n var _this$props = _this.props,\n href = _this$props.href,\n title = _this$props.title;\n\n if (onClick) {\n onClick(e, {\n title: title,\n href: href\n });\n }\n\n scrollTo(href);\n };\n\n _this.renderAnchorLink = function (_ref) {\n var getPrefixCls = _ref.getPrefixCls;\n var _this$props2 = _this.props,\n customizePrefixCls = _this$props2.prefixCls,\n href = _this$props2.href,\n title = _this$props2.title,\n children = _this$props2.children,\n className = _this$props2.className,\n target = _this$props2.target;\n var prefixCls = getPrefixCls('anchor', customizePrefixCls);\n var active = _this.context.activeLink === href;\n var wrapperClassName = classNames(className, \"\".concat(prefixCls, \"-link\"), _defineProperty({}, \"\".concat(prefixCls, \"-link-active\"), active));\n var titleClassName = classNames(\"\".concat(prefixCls, \"-link-title\"), _defineProperty({}, \"\".concat(prefixCls, \"-link-title-active\"), active));\n return /*#__PURE__*/React.createElement(\"div\", {\n className: wrapperClassName\n }, /*#__PURE__*/React.createElement(\"a\", {\n className: titleClassName,\n href: href,\n title: typeof title === 'string' ? title : '',\n target: target,\n onClick: _this.handleClick\n }, title), children);\n };\n\n return _this;\n }\n\n _createClass(AnchorLink, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this.context.registerLink(this.props.href);\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(_ref2) {\n var prevHref = _ref2.href;\n var href = this.props.href;\n\n if (prevHref !== href) {\n this.context.unregisterLink(prevHref);\n this.context.registerLink(href);\n }\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n this.context.unregisterLink(this.props.href);\n }\n }, {\n key: \"render\",\n value: function render() {\n return /*#__PURE__*/React.createElement(ConfigConsumer, null, this.renderAnchorLink);\n }\n }]);\n\n return AnchorLink;\n}(React.Component);\n\nAnchorLink.defaultProps = {\n href: '#'\n};\nAnchorLink.contextType = AnchorContext;\nexport default AnchorLink;","import Anchor from './Anchor';\nimport AnchorLink from './AnchorLink';\nAnchor.Link = AnchorLink;\nexport default Anchor;","/**\n * Licensed to the Apache Software Foundation (ASF) under one\n * or more contributor license agreements. See the NOTICE file\n * distributed with this work for additional information\n * regarding copyright ownership. The ASF licenses this file\n * to you under the Apache License, Version 2.0 (the\n * \"License\"); you may not use this file except in compliance\n * with the License. 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,\n * software distributed under the License is distributed on an\n * \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n * KIND, either express or implied. See the License for the\n * specific language governing permissions and limitations\n * under the License.\n */\nimport React from 'react';\nimport { Anchor } from 'antd';\nimport { useMenus } from 'docz';\nimport { css } from '@emotion/core';\nimport { getActiveMenuItem, mq } from '../utils';\n\nconst { Link } = Anchor;\nconst anchorNavStyle = css`\n\n ${[mq[3]]} {\n display: none;\n }\n position: fixed;\n top: 64px;\n right: 0;\n width: 250px;\n padding: 16px;\n height: 605px;\n overflow: auto;\n ul {\n font-size: 12px;\n li {\n height: 25px;\n line-height: 25px;\n word-wrap: break-word;\n }\n }\n`;\n\nconst HeaderNav = () => {\n const menus = useMenus();\n const { headings } = getActiveMenuItem(menus);\n return (\n <div css={anchorNavStyle}>\n <Anchor>\n {headings.map((e) => (\n <Link href={`#${e.slug}`} title={e.value} />\n ))}\n </Anchor>\n </div>\n );\n};\n\nexport default HeaderNav;\n","/**\n * Licensed to the Apache Software Foundation (ASF) under one\n * or more contributor license agreements. See the NOTICE file\n * distributed with this work for additional information\n * regarding copyright ownership. The ASF licenses this file\n * to you under the Apache License, Version 2.0 (the\n * \"License\"); you may not use this file except in compliance\n * with the License. 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,\n * software distributed under the License is distributed on an\n * \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n * KIND, either express or implied. See the License for the\n * specific language governing permissions and limitations\n * under the License.\n */\nimport React from 'react';\nimport { useMenus } from 'docz';\nimport { getPreviousAndNextUrls } from '../utils';\n\nconst nextButtons = () => {\n const menus = useMenus();\n const [prevUrl, nextUrl] = getPreviousAndNextUrls(menus);\n return (\n <>\n {prevUrl && (\n <a href={prevUrl} className=\"ant-btn\">\n Prev\n </a>\n )}\n {nextUrl && (\n <a href={nextUrl} className=\"ant-btn\">\n Next\n </a>\n )}\n </>\n );\n};\n\nexport default nextButtons;\n","/**\n * Licensed to the Apache Software Foundation (ASF) under one\n * or more contributor license agreements. See the NOTICE file\n * distributed with this work for additional information\n * regarding copyright ownership. The ASF licenses this file\n * to you under the Apache License, Version 2.0 (the\n * \"License\"); you may not use this file except in compliance\n * with the License. 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,\n * software distributed under the License is distributed on an\n * \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n * KIND, either express or implied. See the License for the\n * specific language governing permissions and limitations\n * under the License.\n */\nimport React from 'react';\nimport { theme, useConfig } from 'docz';\nimport { ThemeProvider } from 'theme-ui';\nimport { css } from '@emotion/core';\nimport SEO from '../components/seo';\nimport Layout from '../components/layout';\nimport AnchorNavigator from '../components/AnchorNavigator';\nimport NextLinks from '../components/next';\n\nimport 'antd/dist/antd.css';\n\ninterface Props {\n children: React.ReactNode;\n}\n\nconst docLayout = css`\n display: flex;\n flex-direction: row;\n`;\n\nconst Theme = ({ children }: Props) => {\n const config = useConfig();\n return (\n <ThemeProvider theme={config}>\n <Layout>\n <SEO title=\"Documentation\" />\n <div css={docLayout}>\n <div>{children}</div>\n <AnchorNavigator />\n </div>\n <div>\n <NextLinks />\n </div>\n </Layout>\n </ThemeProvider>\n );\n};\n\n// @ts-ignore\nexport default theme()(Theme);\n","import React from 'react'\nimport PropTypes from 'prop-types'\nimport { Helmet } from 'react-helmet-async'\n\nimport { useDbQuery } from '../hooks/useDbQuery'\n\nconst SEO = ({ description, lang, meta, keywords, title: initialTitle }) => {\n const db = useDbQuery()\n const title = initialTitle || db.config.title\n const metaDescription = description || db.config.description\n\n return (\n <Helmet\n title={title}\n titleTemplate={`%s | ${db.config.title}`}\n htmlAttributes={{ lang }}\n meta={[\n {\n name: `description`,\n content: metaDescription,\n },\n {\n property: `og:title`,\n content: title,\n },\n {\n property: `og:description`,\n content: metaDescription,\n },\n {\n property: `og:type`,\n content: `website`,\n },\n {\n name: `twitter:card`,\n content: `summary`,\n },\n {\n name: `twitter:title`,\n content: title,\n },\n {\n name: `twitter:description`,\n content: metaDescription,\n },\n ]\n .concat(\n keywords.length > 0\n ? {\n name: `keywords`,\n content: keywords.join(`, `),\n }\n : []\n )\n .concat(meta)}\n />\n )\n}\n\nSEO.defaultProps = {\n lang: `en`,\n meta: [],\n keywords: [],\n}\n\nSEO.propTypes = {\n description: PropTypes.string,\n lang: PropTypes.string,\n meta: PropTypes.array,\n keywords: PropTypes.arrayOf(PropTypes.string),\n title: PropTypes.string.isRequired,\n}\n\nexport default SEO\n","import React, { Fragment } from 'react'\nimport PropTypes from 'prop-types'\nimport { useComponents } from 'docz'\nimport { propEq, get } from 'lodash/fp'\nimport { MDXProvider } from '@mdx-js/react'\n\nimport { useDbQuery } from '../hooks/useDbQuery'\nimport Wrapper from '../wrapper'\nimport Theme from '../index'\nimport SEO from './Seo'\n\nconst Route = ({ children, entry, isTransclusion, ...defaultProps }) => {\n const components = useComponents()\n const NotFound = components.notFound\n const Layout = components.layout\n const props = { ...defaultProps, doc: entry }\n if (!entry && !isTransclusion) return <NotFound />\n return isTransclusion ? (\n children\n ) : (\n <MDXProvider components={components}>\n <Wrapper>\n <Layout {...props}>{children}</Layout>\n </Wrapper>\n </MDXProvider>\n )\n}\n\nconst findEntry = (db, ctx) => {\n const isIndex = ctx && ctx.frontmatter && ctx.frontmatter.route === '/'\n const eqIndex = propEq('value.route', '/')\n if (ctx && !ctx.entry && isIndex) return db.entries.find(eqIndex)\n const filepath = get('entry.filepath', ctx)\n return db.entries.find(propEq('value.filepath', filepath))\n}\n\nconst includesTransclusion = (db, props) => {\n const { entries } = db\n const filepath = get('_frontmatter.__filemeta.filename', props)\n return (\n !props.pageContext &&\n entries.includes(entries.find(propEq('value.filepath', filepath)))\n )\n}\n\nconst Layout = ({ children, ...defaultProps }) => {\n const { pageContext: ctx } = defaultProps\n const db = useDbQuery()\n const entry = findEntry(db, ctx)\n const isTransclusion = includesTransclusion(db, defaultProps)\n return (\n <Fragment>\n {entry && <SEO title={entry.value.name} />}\n <Theme db={db} currentEntry={entry}>\n <Route {...defaultProps} entry={entry} isTransclusion={isTransclusion}>\n {children}\n </Route>\n </Theme>\n </Fragment>\n )\n}\n\nLayout.propTypes = {\n color: PropTypes.string,\n children: PropTypes.node.isRequired,\n}\n\nexport default Layout\n","var convert = require('./convert'),\n func = convert('matchesProperty', require('../matchesProperty'));\n\nfunc.placeholder = require('./placeholder');\nmodule.exports = func;\n","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _inherits from \"@babel/runtime/helpers/esm/inherits\";\nimport _possibleConstructorReturn from \"@babel/runtime/helpers/esm/possibleConstructorReturn\";\nimport _getPrototypeOf from \"@babel/runtime/helpers/esm/getPrototypeOf\";\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nfunction _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return _possibleConstructorReturn(this, result);\n };\n}\n\nfunction _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nimport * as React from 'react';\nimport findDOMNode from \"rc-util/es/Dom/findDOMNode\";\nimport toArray from \"rc-util/es/Children/toArray\";\nimport warning from \"rc-util/es/warning\";\nimport { composeRef, supportRef } from \"rc-util/es/ref\";\nimport ResizeObserver from 'resize-observer-polyfill';\nvar INTERNAL_PREFIX_KEY = 'rc-observer-key'; // Still need to be compatible with React 15, we use class component here\n\nvar ReactResizeObserver =\n/** @class */\nfunction () {\n var ReactResizeObserver = /*#__PURE__*/function (_React$Component) {\n _inherits(ReactResizeObserver, _React$Component);\n\n var _super = _createSuper(ReactResizeObserver);\n\n function ReactResizeObserver() {\n var _this;\n\n _classCallCheck(this, ReactResizeObserver);\n\n _this = _super.apply(this, arguments);\n _this.resizeObserver = null;\n _this.childNode = null;\n _this.currentElement = null;\n _this.state = {\n width: 0,\n height: 0\n };\n\n _this.onResize = function (entries) {\n var onResize = _this.props.onResize;\n var target = entries[0].target;\n\n var _target$getBoundingCl = target.getBoundingClientRect(),\n width = _target$getBoundingCl.width,\n height = _target$getBoundingCl.height;\n\n var offsetWidth = target.offsetWidth,\n offsetHeight = target.offsetHeight;\n /**\n * Resize observer trigger when content size changed.\n * In most case we just care about element size,\n * let's use `boundary` instead of `contentRect` here to avoid shaking.\n */\n\n var fixedWidth = Math.floor(width);\n var fixedHeight = Math.floor(height);\n\n if (_this.state.width !== fixedWidth || _this.state.height !== fixedHeight) {\n var size = {\n width: fixedWidth,\n height: fixedHeight\n };\n\n _this.setState(size);\n\n if (onResize) {\n onResize(_objectSpread(_objectSpread({}, size), {}, {\n offsetWidth: offsetWidth,\n offsetHeight: offsetHeight\n }));\n }\n }\n };\n\n _this.setChildNode = function (node) {\n _this.childNode = node;\n };\n\n return _this;\n }\n\n _createClass(ReactResizeObserver, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this.onComponentUpdated();\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate() {\n this.onComponentUpdated();\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n this.destroyObserver();\n }\n }, {\n key: \"onComponentUpdated\",\n value: function onComponentUpdated() {\n var disabled = this.props.disabled; // Unregister if disabled\n\n if (disabled) {\n this.destroyObserver();\n return;\n } // Unregister if element changed\n\n\n var element = findDOMNode(this.childNode || this);\n var elementChanged = element !== this.currentElement;\n\n if (elementChanged) {\n this.destroyObserver();\n this.currentElement = element;\n }\n\n if (!this.resizeObserver && element) {\n this.resizeObserver = new ResizeObserver(this.onResize);\n this.resizeObserver.observe(element);\n }\n }\n }, {\n key: \"destroyObserver\",\n value: function destroyObserver() {\n if (this.resizeObserver) {\n this.resizeObserver.disconnect();\n this.resizeObserver = null;\n }\n }\n }, {\n key: \"render\",\n value: function render() {\n var children = this.props.children;\n var childNodes = toArray(children);\n\n if (childNodes.length > 1) {\n warning(false, 'Find more than one child node with `children` in ResizeObserver. Will only observe first one.');\n } else if (childNodes.length === 0) {\n warning(false, '`children` of ResizeObserver is empty. Nothing is in observe.');\n return null;\n }\n\n var childNode = childNodes[0];\n\n if (React.isValidElement(childNode) && supportRef(childNode)) {\n var ref = childNode.ref;\n childNodes[0] = React.cloneElement(childNode, {\n ref: composeRef(ref, this.setChildNode)\n });\n }\n\n return childNodes.length === 1 ? childNodes[0] : childNodes.map(function (node, index) {\n if (!React.isValidElement(node) || 'key' in node && node.key !== null) {\n return node;\n }\n\n return React.cloneElement(node, {\n key: \"\".concat(INTERNAL_PREFIX_KEY, \"-\").concat(index)\n });\n });\n }\n }]);\n\n return ReactResizeObserver;\n }(React.Component);\n\n ReactResizeObserver.displayName = 'ResizeObserver';\n return ReactResizeObserver;\n}();\n\nexport default ReactResizeObserver;"],"sourceRoot":""}