{"version":3,"sources":["webpack://_N_E/./node_modules/next/router.js","webpack://_N_E/./node_modules/core-js/internals/object-get-prototype-of.js","webpack://_N_E/./node_modules/core-js/internals/correct-prototype-getter.js","webpack://_N_E/./components/hooks.tsx","webpack://_N_E/./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","webpack://_N_E/./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","webpack://_N_E/./node_modules/@babel/runtime/helpers/esm/iterableToArray.js","webpack://_N_E/./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","webpack://_N_E/./node_modules/core-js/modules/es.string.iterator.js","webpack://_N_E/./node_modules/core-js/internals/array-from.js","webpack://_N_E/./node_modules/@arsenal/arsenal/modules/event.js","webpack://_N_E/./node_modules/core-js/internals/define-iterator.js","webpack://_N_E/./node_modules/core-js/internals/create-iterator-constructor.js","webpack://_N_E/./node_modules/core-js/modules/es.array.from.js","webpack://_N_E/./node_modules/core-js/internals/iterators-core.js","webpack://_N_E/./node_modules/core-js/modules/es.array.find-index.js"],"names":["module","exports","has","toObject","sharedKey","CORRECT_PROTOTYPE_GETTER","IE_PROTO","ObjectPrototype","Object","prototype","getPrototypeOf","O","constructor","fails","F","useIntervalAnimation","start","max","ref","callback","interval","timerRef","useRef","mouseRef","clear","current","clearTimeout","invoke","setTimeout","mouseEnter","mouseLeave","useEffect","on","off","useCityName","useContext","GlobalStoreContext","state","cityName","useBrandList","dispatch","brands","fetch","getUrl","then","json","data","message","Error","letters","map","item","pinyin","obj","letter","inner","id","name","brand","avatar","toutiaourl","type","payload","list","catch","err","undefined","useScrollSpy","getElements","globalScroll","useState","setCurr","elements","setElements","rootElement","setRootElement","clickRef","initRef","length","observer","IntersectionObserver","changes","forEach","change","ele","target","boundingClientRect","bottom","rootBounds","height","document","documentElement","clientHeight","index","findIndex","element","isIntersecting","root","rootMargin","threshold","observe","disconnect","useCallback","node","Array","from","setCurrent","scrollContainer","offset","offsetValue","parent","parentElement","scrollTop","offsetTop","useScrollSpy_v2","dependencies","elementsRef","observerRef","getBoundingClientRect","top","window","pageYOffset","useFeedAd","category","page","feedAd","setFeedAd","curPage","url","encodeURIComponent","credentials","result","status","logger","warn","JSON","stringify","location","href","_toConsumableArray","arr","isArray","arrayLikeToArray","iter","Symbol","iterator","unsupportedIterableToArray","TypeError","charAt","InternalStateModule","defineIterator","setInternalState","set","getInternalState","getterFor","String","iterated","this","string","point","value","done","bind","callWithSafeIterationClosing","isArrayIteratorMethod","toLength","createProperty","getIteratorMethod","arrayLike","step","next","C","argumentsLength","arguments","mapfn","mapping","iteratorMethod","call","el","eventName","opts","supportsPassive","passive","_opts","defineProperty","get","addEventListener","e","attachEvent","concat","removeEventListener","detachEvent","one","handler","event","$","createIteratorConstructor","setPrototypeOf","setToStringTag","createNonEnumerableProperty","redefine","wellKnownSymbol","IS_PURE","Iterators","IteratorsCore","IteratorPrototype","BUGGY_SAFARI_ITERATORS","ITERATOR","returnThis","Iterable","NAME","IteratorConstructor","DEFAULT","IS_SET","FORCED","CurrentIteratorPrototype","methods","KEY","getIterationMethod","KIND","defaultIterator","IterablePrototype","TO_STRING_TAG","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","entries","values","keys","proto","forced","create","createPropertyDescriptor","stat","checkCorrectnessOfIteration","iterable","PrototypeOfArrayIteratorPrototype","arrayIterator","$findIndex","addToUnscopables","arrayMethodUsesToLength","SKIPS_HOLES","USES_TO_LENGTH","callbackfn"],"mappings":"yFAAAA,EAAOC,QAAU,EAAQ,S,uBCAzB,IAAIC,EAAM,EAAQ,QACdC,EAAW,EAAQ,QACnBC,EAAY,EAAQ,QACpBC,EAA2B,EAAQ,QAEnCC,EAAWF,EAAU,YACrBG,EAAkBC,OAAOC,UAI7BT,EAAOC,QAAUI,EAA2BG,OAAOE,eAAiB,SAAUC,GAE5E,OADAA,EAAIR,EAASQ,GACTT,EAAIS,EAAGL,GAAkBK,EAAEL,GACH,mBAAjBK,EAAEC,aAA6BD,aAAaA,EAAEC,YAChDD,EAAEC,YAAYH,UACdE,aAAaH,OAASD,EAAkB,O,uBCfnD,IAAIM,EAAQ,EAAQ,QAEpBb,EAAOC,SAAWY,GAAM,WACtB,SAASC,KAET,OADAA,EAAEL,UAAUG,YAAc,KACnBJ,OAAOE,eAAe,IAAII,KAASA,EAAEL,c,0ZC0DvC,SAASM,EAAT,GAMmB,QALxBC,aAKwB,MALhB,EAKgB,EAJxBC,EAIwB,EAJxBA,IACAC,EAGwB,EAHxBA,IACAC,EAEwB,EAFxBA,SAEwB,IADxBC,gBACwB,MADb,IACa,EAClBC,EAAWC,mBACXC,EAAWD,kBAAgB,GACjC,SAASE,IACHH,EAASI,SACXC,aAAaL,EAASI,SAG1B,SAASE,IAEHJ,EAASE,UAGbD,IACAH,EAASI,QAAUG,YAAW,WAE5BT,EADaH,EAAQ,EAAIC,EAAM,EAAID,EAAQ,KAE1CI,IAEL,SAASS,IACPN,EAASE,SAAU,EACnBD,IAEF,SAASM,IACPP,EAASE,SAAU,EACnBE,IAEFI,qBAAU,WACRJ,MACC,CAACX,IACJe,qBAAU,WAER,GAAKb,GAAQA,EAAIO,QAKjB,OAFAO,aAAGd,EAAIO,QAAS,aAAcI,GAC9BG,aAAGd,EAAIO,QAAS,aAAcK,GACvB,WACLN,IACAS,cAAIf,EAAIO,QAAS,aAAcI,GAC/BI,cAAIf,EAAIO,QAAS,aAAcK,MAEhC,IAgBE,SAASI,IAEd,OADkBC,qBAAWC,KAArBC,MACKC,SAGR,SAASC,IAAe,MACDJ,qBAAWC,KAA/BC,EADqB,EACrBA,MAAOG,EADc,EACdA,SACf,GAAIH,EAAMI,OACR,OAAOJ,EAAMI,OAEfC,YAAMC,YAAO,kCACVC,MAAK,SAACC,GACL,IAAKA,EAAKC,MAAyB,YAAjBD,EAAKE,QACrB,MAAM,IAAIC,MAAM,iCAElB,IAAMC,EAAUJ,EAAKC,KAAKI,KAAI,SAACC,GAAD,OAAeA,EAAKC,UAC5CX,EAASI,EAAKC,KAAKI,KAAI,SAACC,GAC5B,IAAME,EAAW,GAOjB,OANAA,EAAIC,OAASH,EAAKC,OAClBC,EAAIP,KAAOK,EAAKL,KAAKI,KAAI,SAACK,GAAD,MAAiB,CACxCC,GAAID,EAAMC,GACVC,KAAMF,EAAMG,MACZC,OAAQJ,EAAMK,eAETP,KAETb,EAAS,CACPqB,KAAM,YACNC,QAAS,CACPb,UACAc,KAAMtB,QAIXuB,OAAM,SAACC,GACNzB,EAAS,CACPqB,KAAM,YACNC,aAASI,OAyBV,SAASC,EACdC,GAMA,IALAC,IAKA,2DAE2BC,mBAAiB,GAArC7C,EAFP,KAEgB8C,EAFhB,OAGgCD,mBAAwB,IAAjDE,EAHP,KAGiBC,EAHjB,OAIsCH,mBAAmB,MAAlDI,EAJP,KAIoBC,EAJpB,KAKMC,EAAWtD,kBAAO,GAElBuD,EAAUvD,kBAAO,GACvBS,qBAAU,WACR,GAAwB,IAApByC,EAASM,OAAb,CAGA,IAAMC,EAAiC,IAAIC,sBACzC,SAACC,GAEKJ,EAAQpD,QACVoD,EAAQpD,SAAU,EAIhBmD,EAASnD,QACXmD,EAASnD,SAAU,EAGrBwD,EAAQC,SAAQ,SAACC,GACf,IAAMC,EAAMD,EAAOE,OAOnB,GANmBF,EAAOG,mBAAlBC,SACWJ,EAAOK,YAAc,CACtCC,OAAQC,SAASC,gBAAgBC,eAD3BH,OAKc,CAGpB,IAAMI,EAAQrB,EAASsB,WAAU,SAACC,GAAD,OAAaA,IAAYX,KAC1Db,GAAkC,IAA1BY,EAAOa,eAA2BH,EAAQ,EAAIA,SAI5D,CACEI,KAAM5B,EAAe,KAAOK,EAE5BwB,WAAY,kBACZC,UAAW,CAAC,QAOhB,OAHA3B,EAASU,SAAQ,SAACa,GAChBhB,EAASqB,QAAQL,MAEZ,WACLhB,EAASsB,iBAEV,CAAC7B,EAASM,SAEb,IAAM5D,EAAMoF,uBAAY,SAACC,GACV,OAATA,IACF5B,EAAe4B,GACf9B,EAAY+B,MAAMC,KAAKrC,EAAYmC,QAEpC,IACH,SAASG,EACPb,EACAc,EACAC,GAEA,IAAMC,EAAcD,GAAU,EAC9B,GAAIpC,EAASqB,GAAQ,CACnBjB,EAASnD,SAAU,EACnB,IAAMqF,EAAStC,EAASqB,GAAOkB,cAC3BJ,EACFA,EAAgBK,UAAYxC,EAASqB,GAAOoB,UAAYJ,EAC/CC,IACTA,EAAOE,UAAYxC,EAASqB,GAAOoB,WAGrC1C,EAAQsB,IAGZ,MAAO,CAACpE,EAASiF,EAAYxF,GAOxB,SAASgG,EACd9C,GAOA,IANAC,IAMA,yDALA8C,EAKA,yCAE2B7C,mBAAiB,GAArC7C,EAFP,KAEgB8C,EAFhB,OAGsCD,mBAAmB,MAAlDI,EAHP,KAGoBC,EAHpB,KAIMyC,EAAc9F,iBAA6B,MAC3CsD,EAAWtD,kBAAO,GAElBuD,EAAUvD,kBAAuB,GAEjC+F,EAAc/F,iBAAoC,MACxDS,qBAAU,WACRsF,EAAY5F,QAAU,IAAIuD,sBACxB,SAACC,GACC,IAAMT,EAAW4C,EAAY3F,QACxB+C,IAKDK,EAAQpD,QACVoD,EAAQpD,SAAU,EAIhBmD,EAASnD,QACXmD,EAASnD,SAAU,EAGrBwD,EAAQC,SAAQ,SAACC,GACf,IAAMC,EAAMD,EAAOE,OAOnB,GANmBF,EAAOG,mBAAlBC,SACWJ,EAAOK,YAAc,CACtCC,OAAQC,SAASC,gBAAgBC,eAD3BH,OAKc,CAGpB,IAAMI,EAAQrB,EAASsB,WAAU,SAACC,GAAD,OAAaA,IAAYX,KAC1Db,GAAkC,IAA1BY,EAAOa,eAA2BH,EAAQ,EAAIA,UAI5D,CACEI,KAAM5B,EAAe,KAAOK,EAE5BwB,WAAY,kBACZC,UAAW,CAAC,OAGf,IAEHpE,qBAAU,WACR,IAUIyC,EAVEO,EAAWsC,EAAY5F,QAC7B,GAAKsD,GAGAL,EAqBL,OAZA9C,YAAW,WACT4C,EAAWgC,MAAMC,KAAKrC,EAAYM,IAElC0C,EAAY3F,QAAU+C,EACE,IAApBA,EAASM,QAIbN,EAASU,SAAQ,SAACa,GAChBhB,EAASqB,QAAQL,QAElB,KACI,WACLhB,EAASsB,gBA3BJ,CA6BL3B,GA7BK,mBA6BWyC,KAEpB,IAAMjG,EAAMoF,uBAAY,SAACC,GACV,OAATA,GACF5B,EAAe4B,KAEhB,IAEH,SAASG,EACPb,EACAc,EACAC,GAEA,IAAMC,EAAcD,GAAU,EACxBpC,EAAW4C,EAAY3F,QAC7B,GAAK+C,GAGDA,EAASqB,GAAQ,CACnBjB,EAASnD,SAAU,EACnB,IAAMqF,EAAStC,EAASqB,GAAOkB,cAC3BJ,EACFA,EAAgBK,UACdxC,EAASqB,GAAOyB,wBAAwBC,IACxCV,EACAW,OAAOC,YACAX,IACTA,EAAOE,UACLxC,EAASqB,GAAOyB,wBAAwBC,IAAMC,OAAOC,aAGzDlD,EAAQsB,IAGZ,MAAO,CAACpE,EAASiF,EAAYxF,GA4CxB,SAASwG,EAAUC,GAAiC,IAAfC,EAAe,uDAAR,OAAQ,EAC7BtD,mBAAwB,IAA7CuD,EADkD,KAC1CC,EAD0C,KAEnDxF,EAAWJ,IAGX6F,EAAmB,SAATH,EAAkB,cAAgBA,EA0BlD,OAzBA7F,qBAAU,WACR,QAAiBmC,IAAb5B,EAAJ,CAGA,IAAM0F,EAAM,8CAAH,OAAiDD,EAAjD,qBAAqEJ,EAArE,sBAA2FM,mBAClG3F,GAAY,KAEdI,YAAMsF,EAAK,CACTE,YAAa,YAEZtF,MAAK,SAACuF,GAC+C,QAA/CA,GAAWA,EAAOrF,MAA0B,IAAlBqF,EAAOC,OAMtCN,EAAUK,EAAOrF,MALfuF,IAAOC,KAAP,oCAAyCC,KAAKC,UAAUL,IAAW,CACjEH,IAAG,UAAER,cAAF,iBAAE,EAAQiB,gBAAV,aAAE,EAAkBC,UAM5B1E,OAAM,SAACC,GAAQ,QACdoE,IAAOC,KAAP,2CAAyCrE,QAAzC,IAAyCA,OAAzC,EAAyCA,EAAKlB,SAAW,CACvDiF,IAAG,UAAER,cAAF,iBAAE,EAAQiB,gBAAV,aAAE,EAAkBC,aAG5B,CAACpG,EAAUsF,EAAMD,IACbE,I,oGC9dM,SAASc,EAAmBC,GACzC,OCJa,SAA4BA,GACzC,GAAIpC,MAAMqC,QAAQD,GAAM,OAAO,OAAAE,EAAA,GAAiBF,GDGzC,CAAkBA,IELZ,SAA0BG,GACvC,GAAsB,qBAAXC,QAA0BA,OAAOC,YAAYzI,OAAOuI,GAAO,OAAOvC,MAAMC,KAAKsC,GFIvD,CAAgBH,IAAQ,OAAAM,EAAA,GAA2BN,IGLvE,WACb,MAAM,IAAIO,UAAU,wIHIwE,K,kCIJ9F,IAAIC,EAAS,EAAQ,QAAiCA,OAClDC,EAAsB,EAAQ,QAC9BC,EAAiB,EAAQ,QAGzBC,EAAmBF,EAAoBG,IACvCC,EAAmBJ,EAAoBK,UAFrB,mBAMtBJ,EAAeK,OAAQ,UAAU,SAAUC,GACzCL,EAAiBM,KAAM,CACrBhG,KARkB,kBASlBiG,OAAQH,OAAOC,GACf/D,MAAO,OAIR,WACD,IAGIkE,EAHA1H,EAAQoH,EAAiBI,MACzBC,EAASzH,EAAMyH,OACfjE,EAAQxD,EAAMwD,MAElB,OAAIA,GAASiE,EAAOhF,OAAe,CAAEkF,WAAO9F,EAAW+F,MAAM,IAC7DF,EAAQX,EAAOU,EAAQjE,GACvBxD,EAAMwD,OAASkE,EAAMjF,OACd,CAAEkF,MAAOD,EAAOE,MAAM,Q,kCC1B/B,IAAIC,EAAO,EAAQ,QACf/J,EAAW,EAAQ,QACnBgK,EAA+B,EAAQ,QACvCC,EAAwB,EAAQ,QAChCC,EAAW,EAAQ,QACnBC,EAAiB,EAAQ,QACzBC,EAAoB,EAAQ,QAIhCvK,EAAOC,QAAU,SAAcuK,GAC7B,IAOI1F,EAAQqD,EAAQsC,EAAMxB,EAAUyB,EAAMV,EAPtCrJ,EAAIR,EAASqK,GACbG,EAAmB,mBAARd,KAAqBA,KAAOrD,MACvCoE,EAAkBC,UAAU/F,OAC5BgG,EAAQF,EAAkB,EAAIC,UAAU,QAAK3G,EAC7C6G,OAAoB7G,IAAV4G,EACVE,EAAiBT,EAAkB5J,GACnCkF,EAAQ,EAIZ,GAFIkF,IAASD,EAAQZ,EAAKY,EAAOF,EAAkB,EAAIC,UAAU,QAAK3G,EAAW,SAE3DA,GAAlB8G,GAAiCL,GAAKnE,OAAS4D,EAAsBY,GAWvE,IADA7C,EAAS,IAAIwC,EADb7F,EAASuF,EAAS1J,EAAEmE,SAEdA,EAASe,EAAOA,IACpBmE,EAAQe,EAAUD,EAAMnK,EAAEkF,GAAQA,GAASlF,EAAEkF,GAC7CyE,EAAenC,EAAQtC,EAAOmE,QAThC,IAFAU,GADAzB,EAAW+B,EAAeC,KAAKtK,IACf+J,KAChBvC,EAAS,IAAIwC,IACLF,EAAOC,EAAKO,KAAKhC,IAAWgB,KAAMpE,IACxCmE,EAAQe,EAAUZ,EAA6BlB,EAAU6B,EAAO,CAACL,EAAKT,MAAOnE,IAAQ,GAAQ4E,EAAKT,MAClGM,EAAenC,EAAQtC,EAAOmE,GAWlC,OADA7B,EAAOrD,OAASe,EACTsC,I,kCC5BT,SAASnG,EAAGkJ,EAAIC,EAAWhK,EAAUiK,GACnC,IAAIC,GAAkB,EAClBC,GAAU,EAEVF,IACFE,EAAUF,EAAKE,SAGjB,IACE,IAAIC,EAAQ/K,OAAOgL,eAAe,GAAI,UAAW,CAC/CC,IAAK,WACHJ,GAAkB,KAItB7D,OAAOkE,iBAAiB,OAAQ,KAAMH,GACtC,MAAOI,GACP,OAAO,KAWT,OARIT,EAAGQ,iBACLR,EAAGQ,iBAAiBP,EAAWhK,IAAUkK,GAAkB,CACzDC,QAASA,IAEFJ,EAAGU,aACZV,EAAGU,YAAY,KAAKC,OAAOV,GAAYhK,GAGlCA,EAWT,SAASc,EAAIiJ,EAAIC,EAAWhK,GACtB+J,EAAGY,oBACLZ,EAAGY,oBAAoBX,EAAWhK,GACzB+J,EAAGa,aACZb,EAAGa,YAAY,KAAKF,OAAOV,GAAYhK,GApD3CX,OAAOgL,eAAevL,EAAS,aAAc,CAC3C+J,OAAO,IAET/J,EAAQ+B,GAAKA,EACb/B,EAAQ+L,IAoCR,SAAad,EAAIC,EAAWhK,EAAUiK,GACpC,IAAIa,EAAUjK,EAAGkJ,EAAIC,GAAW,SAAUQ,GACxCxK,EAAS8J,KAAKC,EAAIS,GAAKnE,OAAO0E,OAC9BjK,EAAIiJ,EAAIC,EAAWc,KAClBb,GACH,OAAOa,GAxCThM,EAAQgC,IAAMA,EAEd,EAAQ,S,kCCRR,IAAIkK,EAAI,EAAQ,QACZC,EAA4B,EAAQ,QACpC1L,EAAiB,EAAQ,QACzB2L,EAAiB,EAAQ,QACzBC,EAAiB,EAAQ,QACzBC,EAA8B,EAAQ,QACtCC,EAAW,EAAQ,QACnBC,EAAkB,EAAQ,QAC1BC,EAAU,EAAQ,QAClBC,EAAY,EAAQ,QACpBC,EAAgB,EAAQ,QAExBC,EAAoBD,EAAcC,kBAClCC,EAAyBF,EAAcE,uBACvCC,EAAWN,EAAgB,YAK3BO,EAAa,WAAc,OAAOnD,MAEtC7J,EAAOC,QAAU,SAAUgN,EAAUC,EAAMC,EAAqBzC,EAAM0C,EAASC,EAAQC,GACrFlB,EAA0Be,EAAqBD,EAAMxC,GAErD,IAkBI6C,EAA0BC,EAASC,EAlBnCC,EAAqB,SAAUC,GACjC,GAAIA,IAASP,GAAWQ,EAAiB,OAAOA,EAChD,IAAKd,GAA0Ba,KAAQE,EAAmB,OAAOA,EAAkBF,GACnF,OAAQA,GACN,IAbK,OAcL,IAbO,SAcP,IAbQ,UAaM,OAAO,WAAqB,OAAO,IAAIR,EAAoBtD,KAAM8D,IAC/E,OAAO,WAAc,OAAO,IAAIR,EAAoBtD,QAGpDiE,EAAgBZ,EAAO,YACvBa,GAAwB,EACxBF,EAAoBZ,EAASxM,UAC7BuN,EAAiBH,EAAkBd,IAClCc,EAAkB,eAClBT,GAAWS,EAAkBT,GAC9BQ,GAAmBd,GAA0BkB,GAAkBN,EAAmBN,GAClFa,EAA4B,SAARf,GAAkBW,EAAkBK,SAA4BF,EAiCxF,GA7BIC,IACFV,EAA2B7M,EAAeuN,EAAkBhD,KAAK,IAAIgC,IACjEJ,IAAsBrM,OAAOC,WAAa8M,EAAyB7C,OAChEgC,GAAWhM,EAAe6M,KAA8BV,IACvDR,EACFA,EAAekB,EAA0BV,GACa,mBAAtCU,EAAyBR,IACzCR,EAA4BgB,EAA0BR,EAAUC,IAIpEV,EAAeiB,EAA0BO,GAAe,GAAM,GAC1DpB,IAASC,EAAUmB,GAAiBd,KAzCjC,UA8CPI,GAAqBY,GA9Cd,WA8CgCA,EAAevK,OACxDsK,GAAwB,EACxBH,EAAkB,WAAoB,OAAOI,EAAe/C,KAAKpB,QAI7D6C,IAAWY,GAAWO,EAAkBd,KAAca,GAC1DrB,EAA4BsB,EAAmBd,EAAUa,GAE3DjB,EAAUO,GAAQU,EAGdR,EAMF,GALAI,EAAU,CACRW,OAAQT,EA5DD,UA6DPU,KAAMf,EAASO,EAAkBF,EA9D5B,QA+DLQ,QAASR,EA7DD,YA+DNJ,EAAQ,IAAKG,KAAOD,GAClBV,GAA0BiB,KAA2BN,KAAOI,KAC9DrB,EAASqB,EAAmBJ,EAAKD,EAAQC,SAEtCtB,EAAE,CAAE9G,OAAQ6H,EAAMmB,OAAO,EAAMC,OAAQxB,GAA0BiB,GAAyBP,GAGnG,OAAOA,I,kCCvFT,IAAIX,EAAoB,EAAQ,QAA+BA,kBAC3D0B,EAAS,EAAQ,QACjBC,EAA2B,EAAQ,QACnClC,EAAiB,EAAQ,QACzBK,EAAY,EAAQ,QAEpBK,EAAa,WAAc,OAAOnD,MAEtC7J,EAAOC,QAAU,SAAUkN,EAAqBD,EAAMxC,GACpD,IAAIoD,EAAgBZ,EAAO,YAI3B,OAHAC,EAAoB1M,UAAY8N,EAAO1B,EAAmB,CAAEnC,KAAM8D,EAAyB,EAAG9D,KAC9F4B,EAAea,EAAqBW,GAAe,GAAO,GAC1DnB,EAAUmB,GAAiBd,EACpBG,I,qBCdT,IAAIhB,EAAI,EAAQ,QACZ1F,EAAO,EAAQ,QASnB0F,EAAE,CAAE9G,OAAQ,QAASoJ,MAAM,EAAMH,QARC,EAAQ,OAEfI,EAA4B,SAAUC,GAC/DnI,MAAMC,KAAKkI,OAKmD,CAC9DlI,KAAMA,K,kCCVR,IAaIoG,EAAmB+B,EAAmCC,EAbtDnO,EAAiB,EAAQ,QACzB6L,EAA8B,EAAQ,QACtCrM,EAAM,EAAQ,QACduM,EAAkB,EAAQ,QAC1BC,EAAU,EAAQ,QAElBK,EAAWN,EAAgB,YAC3BK,GAAyB,EAQzB,GAAGsB,OAGC,SAFNS,EAAgB,GAAGT,SAIjBQ,EAAoClO,EAAeA,EAAemO,OACxBrO,OAAOC,YAAWoM,EAAoB+B,GAHlD9B,GAAyB,QAOlC5I,GAArB2I,IAAgCA,EAAoB,IAGnDH,GAAYxM,EAAI2M,EAAmBE,IACtCR,EAA4BM,EAAmBE,GApBhC,WAAc,OAAOlD,QAuBtC7J,EAAOC,QAAU,CACf4M,kBAAmBA,EACnBC,uBAAwBA,I,kCClC1B,IAAIX,EAAI,EAAQ,QACZ2C,EAAa,EAAQ,QAAgChJ,UACrDiJ,EAAmB,EAAQ,QAC3BC,EAA0B,EAAQ,QAGlCC,GAAc,EAEdC,EAAiBF,EAHJ,0BAMC,IAAIxI,MAAM,GAAa,WAAE,WAAcyI,GAAc,KAIvE9C,EAAE,CAAE9G,OAAQ,QAASgJ,OAAO,EAAMC,OAAQW,IAAgBC,GAAkB,CAC1EpJ,UAAW,SAAmBqJ,GAC5B,OAAOL,EAAWjF,KAAMsF,EAAYtE,UAAU/F,OAAS,EAAI+F,UAAU,QAAK3G,MAK9E6K,EAjBiB","file":"static/chunks/0ac68e7fd0ba1050f19097d8dd05f95671f0c7ba.c92294607404e3fdbaae.js","sourcesContent":["module.exports = require('./dist/client/router')\n","var has = require('../internals/has');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar ObjectPrototype = Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.github.io/ecma262/#sec-object.getprototypeof\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? Object.getPrototypeOf : function (O) {\n O = toObject(O);\n if (has(O, IE_PROTO)) return O[IE_PROTO];\n if (typeof O.constructor == 'function' && O instanceof O.constructor) {\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectPrototype : null;\n};\n","var fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","/* eslint-disable react-hooks/exhaustive-deps */\nimport React, {\n useState,\n useRef,\n useEffect,\n useContext,\n useCallback,\n useLayoutEffect,\n MutableRefObject,\n} from 'react'\nimport { on, off } from '@arsenal/arsenal/modules/event'\nimport Router, { SingletonRouter } from 'next/router'\nimport fetch from 'lib/decorated-fetch'\nimport { logger } from 'lib/slardar-utils'\nimport getUrl from 'lib/url'\nimport Loading from 'Components/loading'\nimport { GlobalStoreContext } from 'Components/store'\n\n// function useIntersection(options) {\n// const [observerEntry, setEntry] = useState({})\n// const elRef = useRef()\n\n// useEffect(() => {\n// const observer = new IntersectionObserver(\n// entries => setEntry(entries[0]),\n// options\n// )\n// observer.observe(elRef.current)\n// return () => observer.disconnect()\n// }, [elRef])\n// return { observerEntry, elRef }\n// }\n\nexport function usePrefetch(urls: string[]) {\n useEffect(() => {\n urls.forEach((url) => {\n Router.router && Router.router.prefetch(url)\n })\n }, [])\n}\ninterface IUseIntervalAniamtion {\n /**\n * 起始序号\n */\n start: number\n /**\n * 最大序号\n */\n max: number\n /**\n * 当鼠标在ref范围之内时,停止计时动画\n */\n ref: React.RefObject\n /**\n * 计时到达之后的回调\n * @param curr 要激活的index\n */\n callback(curr: number): void\n /**\n * 时间间隔\n */\n interval?: number\n}\nexport function useIntervalAnimation({\n start = 0,\n max,\n ref,\n callback,\n interval = 5000,\n}: IUseIntervalAniamtion) {\n const timerRef = useRef()\n const mouseRef = useRef(false)\n function clear() {\n if (timerRef.current) {\n clearTimeout(timerRef.current)\n }\n }\n function invoke() {\n // 鼠标在范围之内时,不执行动画\n if (mouseRef.current) {\n return\n }\n clear()\n timerRef.current = setTimeout(() => {\n const next = start + 1 > max ? 0 : start + 1\n callback(next)\n }, interval)\n }\n function mouseEnter() {\n mouseRef.current = true\n clear()\n }\n function mouseLeave() {\n mouseRef.current = false\n invoke()\n }\n useEffect(() => {\n invoke()\n }, [start])\n useEffect(() => {\n // 绑定mouse in与mouse out事件\n if (!ref || !ref.current) {\n return\n }\n on(ref.current, 'mouseenter', mouseEnter)\n on(ref.current, 'mouseleave', mouseLeave)\n return () => {\n clear()\n off(ref.current, 'mouseenter', mouseEnter)\n off(ref.current, 'mouseleave', mouseLeave)\n }\n }, [])\n}\n\n/**\n * 获取城市名,初始状态为undefined,如果获取不到为'',在使用时,尽量如下使用\n```\n const cityName = useCityName()\n useEffect(() => {\n if (typeof cityName === 'undefined') {\n return\n }\n fetch(`/api/?city_name=${encodeURIComponent(cityName.replace('未知', ''))}`)\n }, [cityName])\n\n```\n */\nexport function useCityName() {\n const { state } = useContext(GlobalStoreContext)\n return state.cityName\n}\n\nexport function useBrandList() {\n const { state, dispatch } = useContext(GlobalStoreContext)\n if (state.brands) {\n return state.brands\n }\n fetch(getUrl('/motor/car_page/v1/all_brand/'))\n .then((json) => {\n if (!json.data || json.message !== 'success') {\n throw new Error('Data error in fetching brands')\n }\n const letters = json.data.map((item: any) => item.pinyin) as string[]\n const brands = json.data.map((item: any) => {\n const obj: any = {}\n obj.letter = item.pinyin\n obj.data = item.data.map((inner: any) => ({\n id: inner.id,\n name: inner.brand,\n avatar: inner.toutiaourl,\n }))\n return obj\n })\n dispatch({\n type: 'setBrands',\n payload: {\n letters,\n list: brands,\n },\n })\n })\n .catch((err) => {\n dispatch({\n type: 'setBrands',\n payload: undefined,\n })\n })\n return\n}\n\n/**\n * 监听滚动联动\n * @param getElements 获取需要监听的元素\n * @returns [current, setCurrent, ref]\n```\nconst [current, setCurrent, ref] = useScrollSpy2(node => {\n return node.children\n})\n...\n
\n
\n
\n
\n
\n
\n
{setCurrent(2)}}>A
\n
\n```\n */\nexport function useScrollSpy(\n getElements: (node: T) => NodeListOf,\n globalScroll = true\n): [\n number,\n (index: number, parent?: any, offset?: number) => void,\n (node: T) => void\n] {\n // 当前滚动到第几个元素\n const [current, setCurr] = useState(0)\n const [elements, setElements] = useState([])\n const [rootElement, setRootElement] = useState(null)\n const clickRef = useRef(false)\n // 初始化是忽略\n const initRef = useRef(true)\n useEffect(() => {\n if (elements.length === 0) {\n return\n }\n const observer: IntersectionObserver = new IntersectionObserver(\n (changes) => {\n // 初始化时忽略\n if (initRef.current) {\n initRef.current = false\n return\n }\n // 如果是通过ScrollInToView产生的滚动则不执行Observer, 避免冲突\n if (clickRef.current) {\n clickRef.current = false\n return\n }\n changes.forEach((change) => {\n const ele = change.target as HTMLElement\n const { bottom } = change.boundingClientRect\n const { height } = change.rootBounds || {\n height: document.documentElement.clientHeight,\n }\n // console.log(change, ele, bottom, height)\n // 只关注顶部变动\n if (bottom <= height) {\n // 离开可视区域,获取最后一个,默认顺序\n // chrome55缺少isIntersecting字段\n const index = elements.findIndex((element) => element === ele)\n setCurr(change.isIntersecting === false ? index + 1 : index)\n }\n })\n },\n {\n root: globalScroll ? null : rootElement,\n // root: rootElement.current,\n rootMargin: '0px 0px 0px 0px',\n threshold: [0.0000001],\n }\n )\n // 每个需要监听的区域块\n elements.forEach((element) => {\n observer.observe(element)\n })\n return () => {\n observer.disconnect()\n }\n }, [elements.length])\n\n const ref = useCallback((node: T) => {\n if (node !== null) {\n setRootElement(node)\n setElements(Array.from(getElements(node)) as HTMLElement[])\n }\n }, [])\n function setCurrent(\n index: number,\n scrollContainer?: HTMLElement,\n offset?: number\n ): void {\n const offsetValue = offset || 0\n if (elements[index]) {\n clickRef.current = true\n const parent = elements[index].parentElement\n if (scrollContainer) {\n scrollContainer.scrollTop = elements[index].offsetTop - offsetValue\n } else if (parent) {\n parent.scrollTop = elements[index].offsetTop\n }\n\n setCurr(index)\n }\n }\n return [current, setCurrent, ref]\n}\n\n// 与Spy1实现相同的功能 但在实现上做了修改。\n// 主要区别是➡由依赖ref callback 改为依赖dependency (利用useEffect一定是在渲染完成后执行的性质)\n// 并在getELements外加setTimeout延时。\n//(useEffect后,依然有不确定原因的DOM变化,setTimeout是个暂时的解决方案,后续还需探究dom变化原因。)\nexport function useScrollSpy_v2(\n getElements: (node: T) => NodeListOf,\n globalScroll = true,\n dependencies: any[]\n): [\n number,\n (index: number, parent?: any, offset?: number) => void,\n (node: T | null) => void\n] {\n // 当前滚动到第几个元素\n const [current, setCurr] = useState(0)\n const [rootElement, setRootElement] = useState(null)\n const elementsRef = useRef(null)\n const clickRef = useRef(false)\n // 初始化时忽略\n const initRef = useRef(true)\n\n const observerRef = useRef(null)\n useEffect(() => {\n observerRef.current = new IntersectionObserver(\n (changes) => {\n const elements = elementsRef.current\n if (!elements) {\n return\n }\n\n // 初始化时忽略\n if (initRef.current) {\n initRef.current = false\n return\n }\n // 如果是通过ScrollInToView产生的滚动则不执行Observer, 避免冲突\n if (clickRef.current) {\n clickRef.current = false\n return\n }\n changes.forEach((change) => {\n const ele = change.target as HTMLElement\n const { bottom } = change.boundingClientRect\n const { height } = change.rootBounds || {\n height: document.documentElement.clientHeight,\n }\n // console.log(change, ele, bottom, height)\n // 只关注顶部变动\n if (bottom <= height) {\n // 离开可视区域,获取最后一个,默认顺序\n // chrome55缺少isIntersecting字段\n const index = elements.findIndex((element) => element === ele)\n setCurr(change.isIntersecting === false ? index + 1 : index)\n }\n })\n },\n {\n root: globalScroll ? null : rootElement,\n // root: rootElement.current,\n rootMargin: '0px 0px 0px 0px',\n threshold: [0.0],\n }\n )\n }, [])\n\n useEffect(() => {\n const observer = observerRef.current\n if (!observer) {\n return\n }\n if (!rootElement) {\n return\n }\n // setTimeout(()=>{\n\n // },0)\n let elements\n\n // 使用setTimeout来确保getElements拿到最新的dom\n setTimeout(() => {\n elements = Array.from(getElements(rootElement))\n\n elementsRef.current = elements\n if (elements.length === 0) {\n return\n }\n // 每个需要监听的区域块\n elements.forEach((element) => {\n observer.observe(element)\n })\n }, 300)\n return () => {\n observer.disconnect()\n }\n }, [rootElement, ...dependencies])\n\n const ref = useCallback((node: T | null) => {\n if (node !== null) {\n setRootElement(node)\n }\n }, [])\n\n function setCurrent(\n index: number,\n scrollContainer?: HTMLElement,\n offset?: number\n ): void {\n const offsetValue = offset || 0\n const elements = elementsRef.current\n if (!elements) {\n return\n }\n if (elements[index]) {\n clickRef.current = true\n const parent = elements[index].parentElement\n if (scrollContainer) {\n scrollContainer.scrollTop =\n elements[index].getBoundingClientRect().top -\n offsetValue +\n window.pageYOffset\n } else if (parent) {\n parent.scrollTop =\n elements[index].getBoundingClientRect().top + window.pageYOffset\n }\n\n setCurr(index)\n }\n }\n return [current, setCurrent, ref]\n}\n\nexport interface IFeedAdData {\n type: 2004 | 2005 | 2006\n fix_position: number\n id: number\n id_str: string\n image_list: [\n {\n url: string\n width: number\n height: number\n }\n ]\n image_mode: number\n label: string\n log_extra: string\n ad_log_id: string\n materiel_id: string\n materiel_str: string\n rit: number\n rit_str: string\n source: string\n time: number\n title: string\n web_title: string\n web_url: string\n unique_id_str: string\n inserted?: boolean | undefined\n track_url_list?: string[]\n click_track_url_list?: string[]\n}\n\ninterface IFeedAdResult {\n status: number\n prompts?: string\n data: IFeedAdData[]\n}\n/**\n * 获取feed流广告位\n * @param category 频道名\n * @param page 页面名\n */\nexport function useFeedAd(category: string, page = 'home') {\n const [feedAd, setFeedAd] = useState([])\n const cityName = useCityName()\n\n // 广告接口,资讯页page为information,只针对广告接口对page做修改\n const curPage = page === 'feed' ? 'information' : page\n useEffect(() => {\n if (cityName === undefined) {\n return\n }\n const url = `/motor/ad/m/pc/channel_fixed_position?page=${curPage}&category=${category}&city_name=${encodeURIComponent(\n cityName || ''\n )}`\n fetch(url, {\n credentials: 'include',\n })\n .then((result: Partial) => {\n if (!result || !result.data || result.status !== 0) {\n logger.warn(`[channel feed error],err: ${JSON.stringify(result)}`, {\n url: window?.location?.href,\n })\n return\n }\n setFeedAd(result.data)\n })\n .catch((err) => {\n logger.warn(`[channel feed error],err: ${err?.message}`, {\n url: window?.location?.href,\n })\n })\n }, [cityName, page, category])\n return feedAd\n}\n","import arrayWithoutHoles from \"@babel/runtime/helpers/esm/arrayWithoutHoles\";\nimport iterableToArray from \"@babel/runtime/helpers/esm/iterableToArray\";\nimport unsupportedIterableToArray from \"@babel/runtime/helpers/esm/unsupportedIterableToArray\";\nimport nonIterableSpread from \"@babel/runtime/helpers/esm/nonIterableSpread\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}","import arrayLikeToArray from \"@babel/runtime/helpers/esm/arrayLikeToArray\";\nexport default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter);\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/define-iterator');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.github.io/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: String(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.github.io/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return { value: undefined, done: true };\n point = charAt(string, index);\n state.index += point.length;\n return { value: point, done: false };\n});\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar toObject = require('../internals/to-object');\nvar callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar toLength = require('../internals/to-length');\nvar createProperty = require('../internals/create-property');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\n// `Array.from` method implementation\n// https://tc39.github.io/ecma262/#sec-array.from\nmodule.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {\n var O = toObject(arrayLike);\n var C = typeof this == 'function' ? this : Array;\n var argumentsLength = arguments.length;\n var mapfn = argumentsLength > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n var iteratorMethod = getIteratorMethod(O);\n var index = 0;\n var length, result, step, iterator, next, value;\n if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined, 2);\n // if the target is not iterable or it's an array with the default iterator - use a simple case\n if (iteratorMethod != undefined && !(C == Array && isArrayIteratorMethod(iteratorMethod))) {\n iterator = iteratorMethod.call(O);\n next = iterator.next;\n result = new C();\n for (;!(step = next.call(iterator)).done; index++) {\n value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value;\n createProperty(result, index, value);\n }\n } else {\n length = toLength(O.length);\n result = new C(length);\n for (;length > index; index++) {\n value = mapping ? mapfn(O[index], index) : O[index];\n createProperty(result, index, value);\n }\n }\n result.length = index;\n return result;\n};\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.on = on;\nexports.one = one;\nexports.off = off;\n\nrequire(\"core-js/modules/es6.object.define-property\");\n\nfunction on(el, eventName, callback, opts) {\n var supportsPassive = false;\n var passive = true;\n\n if (opts) {\n passive = opts.passive;\n }\n\n try {\n var _opts = Object.defineProperty({}, 'passive', {\n get: function get() {\n supportsPassive = true;\n }\n });\n\n window.addEventListener('test', null, _opts);\n } catch (e) {\n return null;\n }\n\n if (el.addEventListener) {\n el.addEventListener(eventName, callback, supportsPassive ? {\n passive: passive\n } : false);\n } else if (el.attachEvent) {\n el.attachEvent(\"on\".concat(eventName), callback);\n }\n\n return callback;\n}\n\nfunction one(el, eventName, callback, opts) {\n var handler = on(el, eventName, function (e) {\n callback.call(el, e || window.event);\n off(el, eventName, handler);\n }, opts);\n return handler;\n}\n\nfunction off(el, eventName, callback) {\n if (el.removeEventListener) {\n el.removeEventListener(eventName, callback);\n } else if (el.detachEvent) {\n el.detachEvent(\"on\".concat(eventName), callback);\n }\n}","'use strict';\nvar $ = require('../internals/export');\nvar createIteratorConstructor = require('../internals/create-iterator-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND];\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n } return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (IteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (typeof CurrentIteratorPrototype[ITERATOR] != 'function') {\n createNonEnumerableProperty(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array#{values, @@iterator}.name in V8 / FF\n if (DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return nativeIterator.call(this); };\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n createNonEnumerableProperty(IterablePrototype, ITERATOR, defaultIterator);\n }\n Iterators[NAME] = defaultIterator;\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n redefine(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n return methods;\n};\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(1, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","var $ = require('../internals/export');\nvar from = require('../internals/array-from');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\n\nvar INCORRECT_ITERATION = !checkCorrectnessOfIteration(function (iterable) {\n Array.from(iterable);\n});\n\n// `Array.from` method\n// https://tc39.github.io/ecma262/#sec-array.from\n$({ target: 'Array', stat: true, forced: INCORRECT_ITERATION }, {\n from: from\n});\n","'use strict';\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar has = require('../internals/has');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\nvar returnThis = function () { return this; };\n\n// `%IteratorPrototype%` object\n// https://tc39.github.io/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nif (IteratorPrototype == undefined) IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\nif (!IS_PURE && !has(IteratorPrototype, ITERATOR)) {\n createNonEnumerableProperty(IteratorPrototype, ITERATOR, returnThis);\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $findIndex = require('../internals/array-iteration').findIndex;\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\n\nvar FIND_INDEX = 'findIndex';\nvar SKIPS_HOLES = true;\n\nvar USES_TO_LENGTH = arrayMethodUsesToLength(FIND_INDEX);\n\n// Shouldn't skip holes\nif (FIND_INDEX in []) Array(1)[FIND_INDEX](function () { SKIPS_HOLES = false; });\n\n// `Array.prototype.findIndex` method\n// https://tc39.github.io/ecma262/#sec-array.prototype.findindex\n$({ target: 'Array', proto: true, forced: SKIPS_HOLES || !USES_TO_LENGTH }, {\n findIndex: function findIndex(callbackfn /* , that = undefined */) {\n return $findIndex(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.github.io/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables(FIND_INDEX);\n"],"sourceRoot":""}