{"version":3,"sources":["../node_modules/hyphenate-style-name/index.js","../node_modules/jss-plugin-camel-case/dist/jss-plugin-camel-case.esm.js","app-react/services/mini-orbit/mini-orbit-consts.ts","../node_modules/@babel/runtime/helpers/esm/defineProperty.js","app-react/services/location/uri-path/uri-path.ts","app-react/services/location/location.service.ts","../node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../node_modules/tiny-warning/dist/tiny-warning.esm.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../node_modules/@babel/runtime/helpers/esm/typeof.js","app-react/services/storage/storage.service.ts","app-react/services/logger/console-logger.service.ts","../node_modules/object-assign/index.js","../node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","../node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","../node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","../node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","../node_modules/@babel/runtime/helpers/esm/createClass.js","orbit-version.ts","app-react/services/window/window.service.ts","app-react/app-bootstrap/constants.ts","app-react/services/location/uri-hash/uri-hash.ts","app-react/services/location/uri/uri.ts","../node_modules/@babel/runtime/helpers/esm/extends.js","../node_modules/is-in-browser/dist/module.js","../node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","../node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../node_modules/prop-types/index.js","../node_modules/@babel/runtime/helpers/esm/iterableToArray.js","app-react/services/location/uri-params/uri-params.ts","utils/event-listener-registration.ts","app-react/themes/css-global-classes.ts","../node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","../node_modules/clsx/dist/clsx.m.js","../node_modules/prop-types/factoryWithThrowingShims.js","../node_modules/prop-types/lib/ReactPropTypesSecret.js","../node_modules/jss-plugin-rule-value-function/dist/jss-plugin-rule-value-function.esm.js","../node_modules/jss-plugin-global/dist/jss-plugin-global.esm.js","../node_modules/jss-plugin-nested/dist/jss-plugin-nested.esm.js","../node_modules/jss-plugin-vendor-prefixer/dist/jss-plugin-vendor-prefixer.esm.js","../node_modules/jss-plugin-props-sort/dist/jss-plugin-props-sort.esm.js","../node_modules/webpack/buildin/global.js","utils/url-utils.ts","../node_modules/json-override/json-override.js"],"names":["uppercasePattern","msPattern","cache","toHyphenLower","match","toLowerCase","hyphenateStyleName","name","hasOwnProperty","hName","replace","test","convertCase","style","converted","prop","indexOf","hyphenate","fallbacks","Array","isArray","map","camelCase","onProcessStyle","index","length","onChangeValue","value","rule","hyphenatedProp","MINI_CIP_BASE_ROUTE","MINI_CIS_BASE_ROUTE","isMiniOrbitBasePath","basePath","_defineProperty","obj","key","Object","defineProperty","enumerable","configurable","writable","UriPath","path","_path","this","trim","parts","toString","split","filter","part","theOther","Check","isNullOrUndefined","_appendSlashToTheEnd","urlWithoutTrailingSlashes","substring","HOME_PAGE","url","other","p1","p2","equals","ORBIT_LOCATION_OVERRIDE_BASE","LocationService","observable","ref","action","bound","_window","_localStorage","_sendTechnicalEvent","_previousUri","_onBeforeChangingLocationSubscribers","_lastUpdateCurrentUriPromise","Promise","resolve","_initCurrentUri","_checkUrlIsNullString","location","pathname","addEventListener","_updateCurrentUriAsync","newUri","currentUri","_setCurrentUri","_createNewUriForCurrentLocation","href","history","replaceState","basePathName","pathName","getBase","setItem","locationOverride","sanitizeUrl","tryParseUrl","_applyLocationOverride","targetUri","forEach","handler","err","console","error","_fireOnBeforeChangingLocation","reject","setTimeout","push","newUrl","isAbsolutUrl","Boolean","search","hash","historyApiCallback","_isRedirectUrl","redirect","_isSameAsCurrentUrl","_executeNavigation","pushState","go","parsedUrl","origin","Uri","URL","_tryDecodeUrl","e","decodeUriComponentRecursive","partialUri","candidate","functionName","message","Error","document","referrer","stack","_getLocationOverrideStrategy","overrideLocation","getItem","LocationOverrideStrategy","NoLocationOverrideStrategy","isHomePage","_basePath","startsWith","_tryParseUrl","append","isEmpty","_slicedToArray","arr","i","arrayWithHoles","Symbol","iterator","prototype","call","_arr","_n","_d","_e","undefined","_s","_i","next","done","nonIterableRest","warning","condition","_objectWithoutPropertiesLoose","source","excluded","target","sourceKeys","keys","_typeof","constructor","StorageService","_logger","localStorage","JSON","parse","stringify","removeItem","expiration_date","expirationDate","toUTCString","now","Date","setFullYear","getFullYear","cookie","RegExp","LOG_LEVELS","ConsoleLoggerService","_debugMode","errorLogs","_log","isObject","_addErrorLog","severity","log","_isConsoleEnabled","toUpperCase","window","splice","date","getOwnPropertySymbols","propIsEnumerable","propertyIsEnumerable","toObject","val","TypeError","module","exports","assign","test1","String","getOwnPropertyNames","test2","fromCharCode","n","join","test3","letter","shouldUseNative","from","symbols","to","s","arguments","_inheritsLoose","subClass","superClass","create","__proto__","_toConsumableArray","arr2","iterableToArray","_defineProperties","props","descriptor","_createClass","Constructor","protoProps","staticProps","ORBIT_VERSION","WindowService","_eventListenerRegistration","EventListenerRegistration","element","parseInt","getComputedStyle","width","elementTransform","getPropertyValue","innerWidth","innerHeight","features","open","x","y","scrollTo","scrollY","scrollBy","CGP_OBJECT_NAME","UriHash","_hash","_tryDecodeHash","h1","h2","_originalUrl","_pathName","_queryParams","UriParams","hostname","queryParams","paramName","newQueryParams","removeParam","u1","u2","_extends","apply","isBrowser","nodeType","_assertThisInitialized","self","ReferenceError","_arrayWithHoles","_nonIterableRest","require","_iterableToArray","iter","queryParamsString","_params","paramString","keyValue","slice","originalName","values","paramDescriptor","allParams","getAllParams","p","clonedParams","keys1","keys2","_element","unload","_subscribe","eventName","dispose","removeEventListener","LOBBY_PAGE","SLOTS_PAGE","BLACKJACK_PAGE","ROULETTE_PAGE","JACKPOTS_PAGE","CASINO_GAMES_PAGE","PROGRESSIVE_VIDEO_SLOTS_PAGE","NEW_GAMES_PAGE","GAMING_HISTORY_PAGE","SESSION_HISTORY_PAGE","CHALLENGE_PAGE","LIVE_CASINO_PAGE","VIDEO_POKER_PAGE","SCRATCH_CARDS_PAGE","EXCLUSIVE_888_GAMES_PAGE","NEW_LIVE_CASINO_PAGE","INSTANT_WIN_GAMES_PAGE","VIRTUAL_SPORTS_PAGE","WIDE_GRID","ORBIT_TAP","CGP_GAME_OPEN","JACKPOTS_ITEM","LIVE_CASINO_ITEM","LIVE_STREAMING_ITEM","STATIC_VIDEO_ITEM","EXCLUSIVES_LIST_ICON","MOVE_TOP","STICKY","ORBIT_OVERLAY_OPEN","CGP_OVERLAY_OPEN","EMBEDDED_HYBRID","MODAL_DIALOG","MAIN_SCREEN","MINI_ORBIT","ACTIVE","LIVE_CASINO_PAGE_WRAPPER","MAIN_NAV","OPEN_MENU","_objectWithoutProperties","sourceSymbolKeys","toVal","mix","k","str","tmp","ReactPropTypesSecret","emptyFunction","emptyFunctionWithReset","resetWarningCache","shim","propName","componentName","propFullName","secret","getShim","isRequired","ReactPropTypes","array","bool","func","number","object","string","symbol","any","arrayOf","elementType","instanceOf","node","objectOf","oneOf","oneOfType","shape","exact","checkPropTypes","PropTypes","fnValuesNs","fnRuleNs","functionPlugin","onCreateRule","decl","options","createRule","fnValues","onUpdate","data","sheet","styleRule","fnRule","_prop","at","atPrefix","GlobalContainerRule","styles","selector","type","rules","isProcessed","RuleList","parent","add","process","_proto","getRule","get","addRule","jss","plugins","onProcessRule","GlobalPrefixedRule","substr","separatorRegExp","addScope","scope","scoped","jssGlobal","handleNestedGlobalContainerRule","handlePrefixedGlobalRule","parentRegExp","refRegExp","jssNested","getReplaceRef","container","replaceParentRefs","nestedProp","parentProp","parentSelectors","nestedSelectors","result","j","nested","getOptions","prevOptions","nestingLevel","replaceRef","isNested","isNestedConditional","jssVendorPrefixer","prefixStyle","changeProp","supportedProp","supportedProperty","changeValue","supportedValue$1","supportedValue","toCssValue","atRule","supportedKeyframes","jssPropsSort","sort","prop0","prop1","newStyle","g","Function","overrideJson","decodedUrl","decodeURIComponent","encodeUriRecursive","isString","encodeURI","safeUriEncode","clone","encodeUriPropsForObject","encodeUriPropsForArray","joinUrlParts","baseUrl","urlBuilder","addQueryParam","queryParam","includes","isObjectAndNotArray","overwriteKeys","baseObject","overrideObject","createNew"],"mappings":";iGACA,IAAIA,EAAmB,SACnBC,EAAY,OACZC,EAAQ,GAEZ,SAASC,EAAcC,GACrB,MAAO,IAAMA,EAAMC,cAYNC,MATf,SAA4BC,GAC1B,GAAIL,EAAMM,eAAeD,GACvB,OAAOL,EAAMK,GAGf,IAAIE,EAAQF,EAAKG,QAAQV,EAAkBG,GAC3C,OAAQD,EAAMK,GAAQN,EAAUU,KAAKF,GAAS,IAAMA,EAAQA,GCN9D,SAASG,EAAYC,GACnB,IAAIC,EAAY,GAEhB,IAAK,IAAIC,KAAQF,EAAO,CAEtBC,EADiC,IAAvBC,EAAKC,QAAQ,MAAcD,EAAOE,EAAUF,IACrCF,EAAME,GAOzB,OAJIF,EAAMK,YACJC,MAAMC,QAAQP,EAAMK,WAAYJ,EAAUI,UAAYL,EAAMK,UAAUG,IAAIT,GAAkBE,EAAUI,UAAYN,EAAYC,EAAMK,YAGnIJ,EA0CMQ,IAjCf,WA2BE,MAAO,CACLC,eA3BF,SAAwBV,GACtB,GAAIM,MAAMC,QAAQP,GAAQ,CAExB,IAAK,IAAIW,EAAQ,EAAGA,EAAQX,EAAMY,OAAQD,IACxCX,EAAMW,GAASZ,EAAYC,EAAMW,IAGnC,OAAOX,EAGT,OAAOD,EAAYC,IAkBnBa,cAfF,SAAuBC,EAAOZ,EAAMa,GAClC,GAA2B,IAAvBb,EAAKC,QAAQ,MACf,OAAOW,EAGT,IAAIE,EAAiBZ,EAAUF,GAE/B,OAAIA,IAASc,EAAuBF,GACpCC,EAAKb,KAAKc,EAAgBF,GAEnB,U,iCCtDX,sGAAO,IAAMG,EAAsB,OACtBC,EAAsB,OAE5B,SAASC,EAAoBC,GAEhC,OAAIA,IAAaH,GAIbG,IAAaF,I,iCCTN,SAASG,EAAgBC,EAAKC,EAAKT,GAYhD,OAXIS,KAAOD,EACTE,OAAOC,eAAeH,EAAKC,EAAK,CAC9BT,MAAOA,EACPY,YAAY,EACZC,cAAc,EACdC,UAAU,IAGZN,EAAIC,GAAOT,EAGNQ,EAZT,mC,8GCGaO,EAAb,WACE,WAAYC,GAAe,yBAIVC,WAJS,EACxBC,KAAKD,OAASD,GAAQ,KAAKG,OAF/B,4CAME,WACE,MAAqB,MAAlBD,KAAKD,MAAM,GACL,IAAMC,KAAKD,MAGbC,KAAKD,QAXhB,qBAcE,WACE,IAAIG,EAAQF,KAAKG,WAAWC,MAAM,KAClC,OAAO,IAAIP,EAAQK,EAAM,GAAI,IAAMA,EAAM,MAhB7C,qBAmBE,WACE,IAAIA,EAAQF,KAAKG,WAAWC,MAAM,KAAKC,QAAO,SAAAC,GAAI,OAAIA,KACtD,MAAM,CAAE,KAAR,mBAAgBJ,MArBpB,oBAwBE,SAAOK,GACL,OAAGC,QAAMC,kBAAkBF,IAGpBP,KAAKU,qBAAqBV,KAAKG,YAAY3C,gBAAkBwC,KAAKU,qBAAqBH,EAASJ,YAAY3C,gBA5BvH,mBA+BE,WACE,MAAsB,MAAfwC,KAAKD,QAhChB,4BAmCE,WAEE,IAAIY,EAA4BX,KAAKG,WAWrC,MAToC,MAAjCQ,EAA0B,KAC3BA,EAA4BA,EAA0BC,UAAU,IAGK,MAApED,EAA0BA,EAA0B/B,OAAS,KAC9D+B,EAA4BA,EAA0BC,UAAU,EAAGD,EAA0B/B,OAAS,IAIrG+B,EACMA,EAA0BnD,cAAcK,QAAQ,MAAO,KAAO,QAE9DgD,MAnDb,kCAmEE,SAA6BC,GAK3B,MAJ2B,MAAxBA,EAAIA,EAAIlC,OAAS,KAClBkC,GAAY,KAGPA,IAxEX,oBA2EE,SAAOC,GAOL,OANKA,aAAiBlB,IACpBkB,EAAQ,IAAIlB,EAAQkB,IAKf,IAAIlB,GAASG,KAAKG,WAAaY,EAAMZ,YAAYtC,QAAQ,QAAS,SAlF7E,wBAuDE,SAAiBmD,EAAaC,GAC5B,OAAGT,QAAMC,kBAAkBO,KACtBR,QAAMC,kBAAkBQ,GAMpBD,EAAGE,OAAOD,OA/DvB,M,0LCIaE,EAA+B,+BAG/BC,GAAb,EAcGC,IAAWC,IAdd,EAgBGC,IAAOC,MAhBV,aAEE,WAAoBC,EAAkCC,EAAwCC,GAA8E,IAAD,gCAAvJF,UAAuJ,KAArHC,gBAAqH,KAA7EC,sBAA6E,KAWnKC,aAAoB,KAX+I,2CAmEnKC,qCAAwE,GAnE2F,KAoFnKC,6BAA8CC,QAAQC,UAnF5DhC,KAAKiC,kBAELjC,KAAKkC,sBAAsBlC,KAAKyB,QAAQU,SAASC,SAAU,eAE3DpC,KAAKyB,QAAQY,iBAAiB,YAAY,WACxC,EAAKH,sBAAsB,EAAKT,QAAQU,SAASC,SAAU,YAC3D,EAAKE,4BATX,kDAgBE,SACuBC,GACrBvC,KAAK4B,aAAe5B,KAAKwC,WACzBxC,KAAKwC,WAAaD,IAnBtB,6BAuBE,WACEvC,KAAKyC,eAAezC,KAAK0C,mCACtB1C,KAAKyB,QAAQU,SAASQ,OAAS3C,KAAKwC,WAAWrC,YAC9CH,KAAKyB,QAAQmB,QAAQC,aAAa,KAAM,GAAI7C,KAAKwC,WAAWrC,cA1BpE,oCA8BE,WACE,IAAM2C,EAAe9C,KAAKwC,WAAWO,SAASC,UAAU7C,WAAW3C,cACnEwC,KAAK0B,cAAcuB,QAAQ9B,EAA8B2B,EAAa3C,cAhC1E,6CAmCE,WACE,IAAI+C,EAAmBC,YAAYnD,KAAKyB,QAAQU,SAASQ,MACzD,OAAO3C,KAAKoD,YAAYpD,KAAKqD,uBAAuBH,MArCxD,2CAwCE,SAAsCI,GACpCtD,KAAK6B,qCAAqC0B,SAAQ,SAAAC,GAChD,IACEA,EAAQF,GACR,MAAOG,GACPC,QAAQC,MAAM,2CAA4CF,SA7ClE,oCAiDE,WAAiD,IAAD,OAC1ClB,EAASvC,KAAK0C,kCAKlB,OAHA1C,KAAK4D,8BAA8BrB,GAG5B,IAAIR,SAAc,SAACC,EAAS6B,GAEjCC,YAAW,WACT,IACE,EAAKrB,eAAeF,GACpBP,IACA,MAAOyB,GACPI,EAAOJ,MAER,QAhET,sCAsEE,SAAyBD,GACvBxD,KAAK6B,qCAAqCkC,KAAKP,KAvEnD,iCA2EE,SAA4BQ,GAQ1B,OALGC,YAAaD,GACLE,QAAQlE,KAAKyB,QAAQU,SAASQ,OAASqB,GAEvCE,QAAQF,IAAWhE,KAAKyB,QAAQU,SAASC,SAAWpC,KAAKyB,QAAQU,SAASgC,OAASnE,KAAKyB,QAAQU,SAASiC,QAjFxH,gCAuFE,SAA2BtD,EAAauD,GAMtC,GAJAvD,GADAA,GAAOA,GAAO,IAAIb,SACL,IAEbD,KAAKkC,sBAAsBpB,EAAK,QAE7Bd,KAAKsE,eAAexD,GACrB,OAAOd,KAAKuE,SAASzD,GAGrB,IAAMkD,EAAShE,KAAKqD,uBAAuBvC,GAY3C,OAVId,KAAKwE,oBAAoBR,IAC3BK,EAAmBL,GAGjBhE,KAAKwE,oBAAoBxE,KAAKwC,WAAWrC,cAC3CH,KAAK8B,6BAA+B9B,KAAKsC,0BAKpCtC,KAAK8B,+BA7GlB,kBA6HE,SAAKhB,GAA6B,IAAD,OAC/B,OAAOd,KAAKyE,mBAAmB3D,GAAK,SAACkD,GAAD,OAAY,EAAKvC,QAAQmB,QAAQ8B,UAAU,KAAM,GAAIV,QA9H7F,mCAiIE,SAAsBlD,GACpBd,KAAKyB,QAAQmB,QAAQ8B,UAAU,KAAM,GAAI5D,KAlI7C,oBAqIE,WAAmB,IAAZnC,EAAW,wDAAF,EACdqB,KAAKyB,QAAQmB,QAAQ+B,GAAGhG,KAtI5B,qBAkJE,SAAQmC,GAA6B,IAAD,OAClC,OAAOd,KAAKyE,mBAAmB3D,GAAK,SAACkD,GAAD,OAAY,EAAKvC,QAAQmB,QAAQC,aAAa,KAAM,GAAImB,QAnJhG,sBAuJE,SAASlD,GAEP,OADAd,KAAKyB,QAAQU,SAASQ,KAAO7B,EACtBiB,QAAQC,YAzJnB,oBA4JE,WACE,OAAOhC,KAAK+D,KAAK,OA7JrB,4BAkKE,SAAuBjD,GACrB,GAAGA,GAAkB,MAAXA,EAAI,GACZ,OAAO,EAGT,IAAI8D,EAAY5E,KAAKoD,YAAYtC,GACjC,SAAG8D,GAAaA,EAAUC,OAAOrH,gBAAkBwC,KAAKwC,WAAWqC,OAAOrH,iBAxK9E,gCA+KE,WACE,QAAGwC,KAAK4B,eAhLZ,yBAsLE,SAAYd,GACV,IACE,OAAO,IAAIgE,IAAI,IAAIC,IAAI/E,KAAKgF,cAAclE,KAC1C,MAAOmE,GACP,OAAO,QA1Lb,2BA8LE,SAAsBnE,GACpB,IACE,OAAOoE,YAA4BpE,GACnC,MAAM2C,GAEN,OADAC,QAAQC,MAAM,yBAA2B7C,GAClCA,KAnMb,0BAuME,SAAaqE,GACX,IAAMC,GAAsB,OAAVD,QAAU,IAAVA,OAAA,EAAAA,EAAYhF,aAAc,IAC5C,OAAO,IAAI2E,IAAI,IAAIC,IAAIK,EAAWpF,KAAKwC,WAAWrC,eAzMtD,mCA4ME,SAA8BW,EAAauE,GAEzC,IACE,GAAW,UAARvE,GAA2B,SAARA,GAA0B,WAARA,GAA4B,UAARA,EAAiB,CAC3E,IAAIwE,EAAU,IAAIC,MAAJ,sCAAyCF,EAAzC,6BAA0ErF,KAAKyB,QAAQU,SAASQ,KAAhG,+BAA2H6C,SAASC,WAAYC,MAC3J1F,KAAK2B,qBACN3B,KAAK2B,oBAAoB,sBAAuB0D,EAAcC,GAGhE5B,QAAQC,MAAM2B,IAGhB,MAAO7B,GACPC,QAAQC,MAAM,+BAAgCF,MAzNpD,oCA8NE,SAA+B3C,GAC3B,OAAOd,KAAK2F,+BAA+BC,iBAAiB9E,KA/NlE,0CAmOE,WACE,IAAM1B,EAAWY,KAAK0B,cAAcmE,QAAQ1E,GAC5C,OAAG/B,EACM,IAAI0G,EAAyB1G,GAE3B,IAAI2G,IAxOnB,sBA4OE,WACE,OAAO/F,KAAK2F,+BAA+BK,WAAWhG,KAAKwC,WAAWO,cA7O1E,yHAcoC,QAdpC,2HAuPM+C,E,WAEF,WAAY1G,GAAmB,yBAId6G,eAJa,EAC5BjG,KAAKiG,UAAY,IAAIpG,IAAQT,EAAS5B,e,8CAKxC,SAAWuF,GACT,OAAO/C,KAAKiG,UAAU/E,OAAO6B,K,8BAG/B,SAAiBjC,GACb,GAAIA,EAAIoF,WAAW,KACf,OAAOpF,EAGX,IAAIkD,EAAShE,KAAKmG,aAAarF,GAC/B,OAAGkD,GACMA,EAAO5B,SAAS5E,cAAc0I,WAAWlG,KAAKiG,UAAU9F,cACzD6D,EAAO5B,SAAWpC,KAAKiG,UAAUG,OAAOpC,EAAO5B,UAAUjC,YAGtDgD,YAAYa,EAAOrB,KAAKxC,aAE7BW,EAAItD,cAAc0I,WAAWlG,KAAKiG,UAAU9F,YAK3CW,EAJId,KAAKiG,UAAUG,OAAOtF,GAAKX,a,0BAO1C,SAAqBW,GACnB,IACE,OAAO,IAAIiE,IAAIjE,GACf,MAAOmE,GACL,OAAO,U,KAOXc,E,0FACF,SAAWhD,GACP,OAAOA,EAASsD,U,8BAGpB,SAAiBvF,GACf,OAAOA,M,mGChTE,SAASwF,EAAeC,EAAKC,GAC1C,OAAO,OAAAC,EAAA,GAAeF,ICJT,SAA+BA,EAAKC,GACjD,GAAME,OAAOC,YAAYnH,OAAO+G,IAAgD,uBAAxC/G,OAAOoH,UAAUzG,SAAS0G,KAAKN,GAAvE,CAIA,IAAIO,EAAO,GACPC,GAAK,EACLC,GAAK,EACLC,OAAKC,EAET,IACE,IAAK,IAAiCC,EAA7BC,EAAKb,EAAIG,OAAOC,cAAmBI,GAAMI,EAAKC,EAAGC,QAAQC,QAChER,EAAK/C,KAAKoD,EAAGrI,QAET0H,GAAKM,EAAKlI,SAAW4H,GAH8CO,GAAK,IAK9E,MAAOtD,GACPuD,GAAK,EACLC,EAAKxD,EACL,QACA,IACOsD,GAAsB,MAAhBK,EAAW,QAAWA,EAAW,SAC5C,QACA,GAAIJ,EAAI,MAAMC,GAIlB,OAAOH,GDvBuB,CAAqBP,EAAKC,IAAM,OAAAe,EAAA,O,iCEejDC,IAlBf,SAAiBC,EAAWnC,M,iCCDb,SAASoC,EAA8BC,EAAQC,GAC5D,GAAc,MAAVD,EAAgB,MAAO,GAC3B,IAEIpI,EAAKiH,EAFLqB,EAAS,GACTC,EAAatI,OAAOuI,KAAKJ,GAG7B,IAAKnB,EAAI,EAAGA,EAAIsB,EAAWlJ,OAAQ4H,IACjCjH,EAAMuI,EAAWtB,GACboB,EAASzJ,QAAQoB,IAAQ,IAC7BsI,EAAOtI,GAAOoI,EAAOpI,IAGvB,OAAOsI,EAZT,mC,iCCAe,SAASG,EAAQ1I,GAW9B,OATE0I,EADoB,oBAAXtB,QAAoD,kBAApBA,OAAOC,SACtC,SAAiBrH,GACzB,cAAcA,GAGN,SAAiBA,GACzB,OAAOA,GAAyB,oBAAXoH,QAAyBpH,EAAI2I,cAAgBvB,QAAUpH,IAAQoH,OAAOE,UAAY,gBAAkBtH,IAI9GA,GAXjB,mC,sFCGa4I,EAAb,WAEE,WAAoBC,GAA0B,yBAA1BA,UAFtB,2CAME,SAAQ5I,GACN,OAAO6I,aAAavC,QAAQtG,KAPhC,qBAUE,SAAQA,EAAaT,GACnBsJ,aAAanF,QAAQ1D,EAAKT,KAX9B,qBAeE,SAAQS,GACN,IAAIT,EAAQkB,KAAK6F,QAAQtG,GACzB,IAAKT,EACH,OAAO,KAGT,IACE,OAAOuJ,KAAKC,MAAMxJ,GAClB,MAAO2E,GAEP,OADAzD,KAAKmI,QAAQxE,MAAb,wDAAoEpE,EAApE,uBAAsFT,GAAS2E,GACxF,QAzBb,qBA6BE,SAAQlE,EAAaT,GACnBkB,KAAKiD,QAAQ1D,EAAK8I,KAAKE,UAAUzJ,MA9BrC,wBAkCE,SAAWS,GACT6I,aAAaI,WAAWjJ,KAnC5B,0BAuCE,SAAa7B,EAAcoB,EAAe2J,GACxC,IAAIC,EACJ,GAAID,EACFC,EAAiBD,EAAgBE,kBAC5B,CACL,IAAIC,EAAM,IAAIC,KACdD,EAAIE,YAAYF,EAAIG,cAAgB,GACpCL,EAAiBE,EAAID,cAEvBnD,SAASwD,OAAStL,EAAO,IAAMoB,EAAQ,YAAc4J,EAAgB,YAhDzE,gCAmDE,SAAmBhL,EAAcoB,GAC7B,IAAI8J,EAAM,IAAIC,KACdD,EAAIE,YAAYF,EAAIG,cAAgB,GACpCvD,SAASwD,OAAStL,EAAO,IAAMoB,EAAQ,kCAAoC8J,EAAID,cAAgB,YAtDrG,uBAyDE,SAAUjL,GACR,IAAIH,EAAQiI,SAASwD,OAAOzL,MAAM,IAAI0L,OAAOvL,EAAO,aACpD,GAAIH,EACF,OAAOA,EAAM,KA5DnB,0BAgEE,SAAaG,GACX8H,SAASwD,OAAStL,EAAO,qEAjE7B,M,uECAKwL,E,iCAAAA,O,iBAAAA,I,eAAAA,I,eAAAA,I,kBAAAA,M,KAOE,IAAMC,EAAb,WAEE,WAAoBC,GAAsB,yBAAtBA,aAAqB,KAIzCC,UAAwB,GAN1B,yCAQE,SAAM/D,GACJtF,KAAKsJ,KAAK,QAAShE,KATvB,kBAYE,SAAKA,GACHtF,KAAKsJ,KAAK,OAAQhE,KAbtB,qBAgBE,SAAQA,GACNtF,KAAKsJ,KAAK,OAAQhE,KAjBtB,mBAoBE,SAAMA,EAAiB3B,GAClBA,IAEC2B,EADC9E,QAAM+I,SAAS5F,IAAUnD,QAAMjC,QAAQoF,GACjC,UAAM2B,EAAN,4BAAiC+C,KAAKE,UAAU5E,IAEhD,UAAM2B,EAAN,4BAAiC3B,IAI5C3D,KAAKwJ,aAAalE,GAElBtF,KAAKsJ,KAAK,QAAShE,KA/BvB,kBAuCE,SAAcmE,EAAkBC,GAC1B1J,KAAK2J,kBAAkBF,EAASG,gBAClClG,QAAQ+F,GAAUC,KAzCxB,+BA6CE,SAA0BD,GACxB,OAAQP,EAAWO,IAAaP,EAAWW,OAAM,aA9CrD,0BAiDE,SAAqBvE,GACftF,KAAKoJ,aAIqB,KAA1BpJ,KAAKqJ,UAAUzK,QACjBoB,KAAKqJ,UAAUS,OAAO,EAAG,GAG3B9J,KAAKqJ,UAAUtF,KAAK,CAACuB,QAASA,EAASyE,KAAM,IAAIlB,YA1DrD,M,iCCFA,IAAImB,EAAwBxK,OAAOwK,sBAC/BrM,EAAiB6B,OAAOoH,UAAUjJ,eAClCsM,EAAmBzK,OAAOoH,UAAUsD,qBAExC,SAASC,EAASC,GACjB,GAAY,OAARA,QAAwBlD,IAARkD,EACnB,MAAM,IAAIC,UAAU,yDAGrB,OAAO7K,OAAO4K,GA+CfE,EAAOC,QA5CP,WACC,IACC,IAAK/K,OAAOgL,OACX,OAAO,EAMR,IAAIC,EAAQ,IAAIC,OAAO,OAEvB,GADAD,EAAM,GAAK,KACkC,MAAzCjL,OAAOmL,oBAAoBF,GAAO,GACrC,OAAO,EAKR,IADA,IAAIG,EAAQ,GACHpE,EAAI,EAAGA,EAAI,GAAIA,IACvBoE,EAAM,IAAMF,OAAOG,aAAarE,IAAMA,EAKvC,GAAwB,eAHXhH,OAAOmL,oBAAoBC,GAAOpM,KAAI,SAAUsM,GAC5D,OAAOF,EAAME,MAEHC,KAAK,IACf,OAAO,EAIR,IAAIC,EAAQ,GAIZ,MAHA,uBAAuB5K,MAAM,IAAImD,SAAQ,SAAU0H,GAClDD,EAAMC,GAAUA,KAGf,yBADEzL,OAAOuI,KAAKvI,OAAOgL,OAAO,GAAIQ,IAAQD,KAAK,IAM9C,MAAOtH,GAER,OAAO,GAIQyH,GAAoB1L,OAAOgL,OAAS,SAAU3C,EAAQF,GAKtE,IAJA,IAAIwD,EAEAC,EADAC,EAAKlB,EAAStC,GAGTyD,EAAI,EAAGA,EAAIC,UAAU3M,OAAQ0M,IAAK,CAG1C,IAAK,IAAI/L,KAFT4L,EAAO3L,OAAO+L,UAAUD,IAGnB3N,EAAekJ,KAAKsE,EAAM5L,KAC7B8L,EAAG9L,GAAO4L,EAAK5L,IAIjB,GAAIyK,EAAuB,CAC1BoB,EAAUpB,EAAsBmB,GAChC,IAAK,IAAI3E,EAAI,EAAGA,EAAI4E,EAAQxM,OAAQ4H,IAC/ByD,EAAiBpD,KAAKsE,EAAMC,EAAQ5E,MACvC6E,EAAGD,EAAQ5E,IAAM2E,EAAKC,EAAQ5E,MAMlC,OAAO6E,I,iCCxFO,SAASG,EAAeC,EAAUC,GAC/CD,EAAS7E,UAAYpH,OAAOmM,OAAOD,EAAW9E,WAC9C6E,EAAS7E,UAAUqB,YAAcwD,EACjCA,EAASG,UAAYF,EAHvB,mC,gFCGe,SAASG,EAAmBtF,GACzC,OCJa,SAA4BA,GACzC,GAAIjI,MAAMC,QAAQgI,GAAM,CACtB,IAAK,IAAIC,EAAI,EAAGsF,EAAO,IAAIxN,MAAMiI,EAAI3H,QAAS4H,EAAID,EAAI3H,OAAQ4H,IAC5DsF,EAAKtF,GAAKD,EAAIC,GAGhB,OAAOsF,GDFF,CAAkBvF,IAAQ,OAAAwF,EAAA,GAAgBxF,IEJpC,WACb,MAAM,IAAI8D,UAAU,mDFGqC,K,iCGJ3D,SAAS2B,EAAkBnE,EAAQoE,GACjC,IAAK,IAAIzF,EAAI,EAAGA,EAAIyF,EAAMrN,OAAQ4H,IAAK,CACrC,IAAI0F,EAAaD,EAAMzF,GACvB0F,EAAWxM,WAAawM,EAAWxM,aAAc,EACjDwM,EAAWvM,cAAe,EACtB,UAAWuM,IAAYA,EAAWtM,UAAW,GACjDJ,OAAOC,eAAeoI,EAAQqE,EAAW3M,IAAK2M,IAInC,SAASC,EAAaC,EAAaC,EAAYC,GAG5D,OAFID,GAAYL,EAAkBI,EAAYxF,UAAWyF,GACrDC,GAAaN,EAAkBI,EAAaE,GACzCF,EAbT,mC,iCCAA,kCAAO,IAAMG,EAAgB,Y,gHCchBC,EAAb,WAEE,aAAe,yBAyBEC,gCAzBH,EACZzM,KAAKyM,2BAA6B,IAAIC,IAA0B7C,QAHpE,qDAKE,SAAkBnM,GAChB,OAAOmM,OAAOnM,KANlB,+BASE,SAAkBA,EAAcoB,GAC9B+K,OAAOnM,GAAQoB,IAVnB,6BAaE,SAAgB6N,GACd,OAAOC,SAAS/C,OAAOgD,iBAAiBF,GAASG,MAAMjP,QAAQ,KAAM,OAdzE,mDAiBE,SAAsC8O,GACpC,IAAII,EAAmBlD,OAAOgD,iBAAiBF,GAASK,iBAAiB,sBAAwBnD,OAAOgD,iBAAiBF,GAASK,iBAAiB,aAEnJ,OAAOJ,SAASG,EAAiB3M,MAAM,KAAK,KAAO2M,EAAiB3M,MAAM,KAAK,KAAO,IApB1F,oBAuBE,WACE,OAAOyJ,OAAO1H,WAxBlB,uBA4BE,WACE,OAAOnC,KAAKyM,6BA7BhB,sBAgCE,WACE,OAAO5C,OAAOoD,aAjClB,uBAoCE,WACE,OAAOpD,OAAOqD,cArClB,kBAwCE,SAAKpM,EAAc+G,EAAiBsF,GAClCtD,OAAOuD,KAAKtM,EAAK+G,EAAQsF,KAzC7B,sBA4CE,SAASrM,GACPd,KAAKoN,KAAKtM,EAAK,WA7CnB,kBAgDE,WACE,OAAO+I,OAAO1H,SAAS0C,SAjD3B,oBAoDE,WACE,OAAOgF,OAAO1H,SAASC,WArD3B,mBAwDE,WACE,OAAOyH,OAAOjH,UAzDlB,sBA4DE,SAASyK,EAAWC,GAClBzD,OAAO0D,SAASF,EAAGC,KA7DvB,mBAgEE,WACE,OAAOzD,OAAO2D,UAjElB,sBAoEE,SAASH,EAAWC,GAClBzD,OAAO4D,SAASJ,EAAGC,KArEvB,0BAwEE,SAAaxM,GACX,OAAOmD,YAAanD,OAzExB,M,iCCdA,kCAAO,IAAM4M,EAAkB,O,wHCGlBC,EAAb,WACE,WAAYvJ,GAAe,yBAgBnBwJ,WAhBkB,EACxB5N,KAAK4N,MAAQ5N,KAAK6N,eAAezJ,GAAQ,IACvB,MAAfpE,KAAK4N,QACN5N,KAAK4N,MAAQ,IAJnB,uCASE,WACE,MAAqB,MAAlB5N,KAAK4N,MAAM,GACL5N,KAAK4N,MAAMhN,UAAU,GAErBZ,KAAK4N,QAblB,sBAmBE,WACE,OAAI5N,KAAK4N,MAIY,MAAlB5N,KAAK4N,MAAM,GACL5N,KAAK4N,MAEL,IAAM5N,KAAK4N,MANX5N,KAAK4N,QArBlB,oBA2CE,SAAOrN,GACL,OAAGC,QAAMC,kBAAkBF,IAIpBP,KAAKG,WAAW3C,gBAAkB+C,EAASJ,WAAW3C,gBAhDjE,mBAmDE,WACE,OAAOgD,QAAM6F,QAAQrG,KAAK4N,SApD9B,4BAuDE,SAAuBxJ,GACrB,IACE,OAAOc,YAA4Bd,GACnC,MAAMX,GAEN,OADAC,QAAQC,MAAM,0BAA4BS,GACnCA,MA5Db,wBA+BE,SAAiB0J,EAAaC,GAC5B,OAAGvN,QAAMC,kBAAkBqN,KACtBtN,QAAMC,kBAAkBsN,GAMpBD,EAAG5M,OAAO6M,OAvCvB,KCGajJ,EAAb,WAEE,WAAYhE,GAAW,yBAOfkN,kBAPc,OAiBLC,eAjBK,OAsBLC,kBAtBK,OA2BLN,WA3BK,EACpB5N,KAAKgO,aAAelN,EACpBd,KAAKiO,UAAY,IAAIpO,IAAQG,KAAKgO,aAAa5L,UAC/CpC,KAAKkO,aAAe,IAAIC,IAAUnO,KAAKgO,aAAa7J,QACpDnE,KAAK4N,MAAQ,IAAID,EAAQ3N,KAAKgO,aAAa5J,MAN/C,0CAWE,WACE,OAAOpE,KAAKgO,aAAaI,SAAS5Q,gBAZtC,kBAeE,WACE,OAAOwC,KAAKgO,aAAanJ,OAAOrH,gBAhBpC,oBAoBE,WACE,OAAOwC,KAAKiO,YArBhB,uBAyBE,WACE,OAAOjO,KAAKkO,eA1BhB,gBA8BE,WACE,OAAOlO,KAAK4N,QA/BhB,sBAkCE,WAEE,OADiBzK,YAAYnD,KAAKgO,aAAarL,QAnCnD,oBAuCE,SAAOpC,GACL,OAAGC,QAAMC,kBAAkBF,KAIpBP,KAAK6E,SAAWtE,EAASsE,QACvB7E,KAAK+C,SAAS7B,OAAOX,EAASwC,WAC9B/C,KAAKqO,YAAYnN,OAAOX,EAAS8N,cACjCrO,KAAKoE,KAAKlD,OAAOX,EAAS6D,SA/CvC,+BAkDE,WACE,OAAOpE,KAAKgO,aAAanJ,OAAS7E,KAAKgO,aAAa5L,SAAWpC,KAAKgO,aAAa7J,SAnDrF,+BAsDE,SAAkBmK,GAChB,IAAIC,EAAiBvO,KAAKqO,YAAYG,YAAYF,GAAWnO,WAC7D,OAAO,IAAI2E,EAAI,IAAIC,IAAI/E,KAAKgO,aAAanJ,OAAS7E,KAAKgO,aAAa5L,SAAWmM,EAAiBvO,KAAKgO,aAAa5J,SAxDtH,wCA2DE,WACE,OAAOpE,KAAKgO,aAAanJ,OAAS7E,KAAKgO,aAAa5L,YA5DxD,wBA+DE,SAAiBqM,EAASC,GACxB,OAAGlO,QAAMC,kBAAkBgO,KACtBjO,QAAMC,kBAAkBiO,GAMpBD,EAAGvN,OAAOwN,OAvEvB,M,gCCNe,SAASC,IAetB,OAdAA,EAAWnP,OAAOgL,QAAU,SAAU3C,GACpC,IAAK,IAAIrB,EAAI,EAAGA,EAAI+E,UAAU3M,OAAQ4H,IAAK,CACzC,IAAImB,EAAS4D,UAAU/E,GAEvB,IAAK,IAAIjH,KAAOoI,EACVnI,OAAOoH,UAAUjJ,eAAekJ,KAAKc,EAAQpI,KAC/CsI,EAAOtI,GAAOoI,EAAOpI,IAK3B,OAAOsI,IAGO+G,MAAM5O,KAAMuL,WAf9B,mC,iCCAA,IAAIvD,EAA4B,oBAAXtB,QAAoD,kBAApBA,OAAOC,SAAwB,SAAUrH,GAAO,cAAcA,GAAS,SAAUA,GAAO,OAAOA,GAAyB,oBAAXoH,QAAyBpH,EAAI2I,cAAgBvB,QAAUpH,IAAQoH,OAAOE,UAAY,gBAAkBtH,GAE3PuP,EAAgF,YAAjD,qBAAXhF,OAAyB,YAAc7B,EAAQ6B,UAAiG,YAAnD,qBAAbrE,SAA2B,YAAcwC,EAAQxC,YAAiD,IAAtBA,SAASsJ,SAErLD,O,iCCJA,SAASE,EAAuBC,GAC7C,QAAa,IAATA,EACF,MAAM,IAAIC,eAAe,6DAG3B,OAAOD,EALT,mC,iCCAe,SAASE,EAAgB3I,GACtC,GAAIjI,MAAMC,QAAQgI,GAAM,OAAOA,EADjC,mC,iCCAe,SAAS4I,IACtB,MAAM,IAAI9E,UAAU,wDADtB,mC,mBCiBEC,EAAOC,QAAU6E,EAAQ,IAARA,I,iCCjBJ,SAASC,EAAiBC,GACvC,GAAI5I,OAAOC,YAAYnH,OAAO8P,IAAkD,uBAAzC9P,OAAOoH,UAAUzG,SAAS0G,KAAKyI,GAAgC,OAAOhR,MAAM6M,KAAKmE,GAD1H,mC,sGCOanB,EAAb,WAEE,WAAYoB,GAA4B,IAAD,gCAwB/BC,QAAgD,GApB1B,OAH5BD,GAAqBA,GAAqB,IAAItP,QAGzB,KACnBsP,EAAoBA,EAAkB3O,UAAU,IAG/C2O,GACCA,EAAkBnP,MAAM,KAAKmD,SAAQ,SAAAkM,GACjC,IAAIC,EAAWD,EAAYrP,MAAM,KAC7Bb,EAAMmQ,EAAS,GACf5Q,EAAQ4Q,EAAS,GAClBA,EAAS9Q,OAAS,IACnBE,EAAQ4Q,EAASC,MAAM,GAAG5E,KAAK,MAEjC,EAAKyE,QAAQjQ,EAAI/B,eAAiB,CAC9BoS,aAAcrQ,EACdT,MAAOA,MApBvB,gDA4BE,WACE,OAAOU,OAAOqQ,OAAO7P,KAAKwP,WA7B9B,2BAgCE,SAAclB,GACZ,IAAIwB,EAAkB9P,KAAKwP,QAAQlB,EAAU9Q,eAC7C,GAAIsS,EAGJ,OAAO5K,YAA4B4K,EAAgBhR,SArCvD,sBAwCE,WACE,IAAMiR,EAAY/P,KAAKgQ,eACvB,OAAwB,IAArBD,EAAUnR,OACJ,GAEF,IAAMmR,EAAUvR,KAAI,SAAAyR,GAAC,OAAIA,EAAEL,aAAe,IAAMK,EAAEnR,SAAOiM,KAAK,OA7CzE,yBAgDE,SAAYuD,GACV,IAAI4B,EAAY,eAAOlQ,KAAKwP,SAM5B,cALOU,EAAY,OAAC5B,QAAD,IAACA,OAAD,EAACA,EAAW9Q,eAKxB,IAAI2Q,EAJY3O,OAAOuI,KAAKmI,GAAc1R,KAAI,SAAA8P,GACjD,IAAMwB,EAAkBI,EAAa5B,GACrC,MAAM,GAAN,OAAUwB,EAAgBF,aAA1B,YAA0CE,EAAgBhR,UAE1BiM,KAAK,QAvD7C,sBA0DE,SAASrN,GACP,OAAOwG,QAAQlE,KAAKwP,QAAQ9R,EAAKF,kBA3DrC,sBA8DE,SAASE,EAAcoB,GACrBkB,KAAKwP,QAAQ9R,EAAKF,eAAiB,CACjCoS,aAAclS,EACdoB,MAAOA,KAjEb,oBAqEE,SAAOyB,GACL,IAAI4P,EAAQ3Q,OAAOuI,KAAK/H,KAAKwP,SACzBY,EAAQ5Q,OAAOuI,KAAKxH,EAASiP,SAEjC,GAAGW,EAAMvR,SAAWwR,EAAMxR,OACxB,OAAO,EAGT,IAAI,IAAI4H,EAAI,EAAGA,EAAI2J,EAAMvR,OAAQ4H,IAAK,CACpC,IAAI8H,EAAY6B,EAAM3J,GAGtB,GAFWxG,KAAKwP,QAAQlB,GAAWxP,SACxByB,EAASiP,QAAQlB,IAAc/N,EAASiP,QAAQlB,GAAWxP,OAEpE,OAAO,EAIX,OAAO,IAtFX,mBAyFE,WACE,OAAsC,IAA/BkB,KAAKgQ,eAAepR,WA1F/B,M,sFCHa8N,EAAb,WACE,WAAYC,GAAe,IAAD,gCAIlB0D,cAJkB,OAmC1BC,OAAS,SAAC9M,GAIR,OAAO,EAAK+M,WAAW,WAAY/M,IAvCX,KA0ChB+M,WAAa,SAACC,EAAmBhN,GAEzC,OADA,EAAK6M,SAAShO,iBAAiBmO,EAAWhN,GACnC,CACLiN,QAAS,kCAAM,EAAKJ,gBAAX,aAAM,EAAeK,oBAAoBF,EAAWhN,MA5C/DxD,KAAKqQ,SAAW1D,EAFpB,0CAOE,SAAOnJ,GACL,OAAOxD,KAAKuQ,WAAW,SAAU/M,KARrC,oBAWE,SAAOA,GACL,OAAOxD,KAAKuQ,WAAW,SAAU/M,KAZrC,mBAeE,SAAMA,GACJ,OAAOxD,KAAKuQ,WAAW,QAAS/M,KAhBpC,yBAmBE,SAAYA,GACV,OAAOxD,KAAKuQ,WAAW,UAAW/M,KApBtC,2BAuBE,SAAcA,GACZ,OAAOxD,KAAKuQ,WAAW,kBAAmB/M,KAxB9C,sBA4BE,SAASA,GACP,OAAOxD,KAAKuQ,WAAW,WAAY/M,KA7BvC,gCAgCE,SAAmBA,GACjB,OAAOxD,KAAKuQ,WAAW,aAAc/M,OAjCzC,M,gCCJA,8yCAAO,IAAM3C,EAAY,YACZ8P,EAAa,aACbC,EAAa,aACbC,EAAiB,iBACjBC,EAAgB,gBAChBC,EAAgB,gBAChBC,EAAoB,oBACpBC,EAA+B,+BAC/BC,EAAiB,iBACjBC,EAAsB,sBACtBC,EAAuB,uBACvBC,EAAiB,iBACjBC,EAAmB,mBACnBC,EAAmB,mBACnBC,EAAqB,qBACrBC,EAA2B,sBAC3BC,EAAuB,uBACvBC,EAAyB,yBACzBC,EAAsB,sBAEtBC,EAAY,YACZC,EAAY,YACZC,EAAgB,gBAChBC,EAAgB,gBAChBC,EAAmB,mBAEnBC,EAAsB,sBACtBC,EAAoB,oBAEpBC,EAAuB,uBAEvBC,EAAW,WACXC,EAAS,SACTC,EAAqB,qBACrBC,EAAmB,mBACnBC,EAAmB,sBACnBC,EAAe,eACfC,EAAc,cACdC,EAAc,aAEdC,EAAS,SACTC,EAA2B,2BAC3BC,EAAW,WACXC,EAAY,a,gCC3CzB,+CACe,SAASC,EAAyBtL,EAAQC,GACvD,GAAc,MAAVD,EAAgB,MAAO,GAC3B,IACIpI,EAAKiH,EADLqB,EAAS,YAA6BF,EAAQC,GAGlD,GAAIpI,OAAOwK,sBAAuB,CAChC,IAAIkJ,EAAmB1T,OAAOwK,sBAAsBrC,GAEpD,IAAKnB,EAAI,EAAGA,EAAI0M,EAAiBtU,OAAQ4H,IACvCjH,EAAM2T,EAAiB1M,GACnBoB,EAASzJ,QAAQoB,IAAQ,GACxBC,OAAOoH,UAAUsD,qBAAqBrD,KAAKc,EAAQpI,KACxDsI,EAAOtI,GAAOoI,EAAOpI,IAIzB,OAAOsI,I,gCCjBT,SAASsL,EAAMC,GACd,IAAIC,EAAG/F,EAAGgG,EAAI,GAEd,GAAmB,kBAARF,GAAmC,kBAARA,EACrCE,GAAOF,OACD,GAAmB,kBAARA,EACjB,GAAI9U,MAAMC,QAAQ6U,GACjB,IAAKC,EAAE,EAAGA,EAAID,EAAIxU,OAAQyU,IACrBD,EAAIC,KACH/F,EAAI6F,EAAMC,EAAIC,OACjBC,IAAQA,GAAO,KACfA,GAAOhG,QAKV,IAAK+F,KAAKD,EACLA,EAAIC,KACPC,IAAQA,GAAO,KACfA,GAAOD,GAMX,OAAOC,EAzBR,OA4Be,qBAEd,IADA,IAASC,EAAKlG,EAAV7G,EAAE,EAAW8M,EAAI,GACd9M,EAAI+E,UAAU3M,SAChB2U,EAAMhI,UAAU/E,QACf6G,EAAI8F,EAAMI,MACbD,IAAQA,GAAO,KACfA,GAAOjG,GAIV,OAAOiG,I,iCC7BR,IAAIE,EAAuBpE,EAAQ,KAEnC,SAASqE,KACT,SAASC,KACTA,EAAuBC,kBAAoBF,EAE3CnJ,EAAOC,QAAU,WACf,SAASqJ,EAAK3H,EAAO4H,EAAUC,EAAe3R,EAAU4R,EAAcC,GACpE,GAAIA,IAAWR,EAAf,CAIA,IAAI/P,EAAM,IAAI8B,MACZ,mLAKF,MADA9B,EAAI/F,KAAO,sBACL+F,GAGR,SAASwQ,IACP,OAAOL,EAFTA,EAAKM,WAAaN,EAMlB,IAAIO,EAAiB,CACnBC,MAAOR,EACPS,KAAMT,EACNU,KAAMV,EACNW,OAAQX,EACRY,OAAQZ,EACRa,OAAQb,EACRc,OAAQd,EAERe,IAAKf,EACLgB,QAASX,EACTtH,QAASiH,EACTiB,YAAajB,EACbkB,WAAYb,EACZc,KAAMnB,EACNoB,SAAUf,EACVgB,MAAOhB,EACPiB,UAAWjB,EACXkB,MAAOlB,EACPmB,MAAOnB,EAEPoB,eAAgB3B,EAChBC,kBAAmBF,GAKrB,OAFAU,EAAemB,UAAYnB,EAEpBA,I,iCCnDT7J,EAAOC,QAFoB,gD,iCCT3B,aAGI3B,EAAMC,KAAKD,MACX2M,EAAa,WAAa3M,EAC1B4M,EAAW,aAAc5M,EA8Dd6M,IA5DM,WACnB,MAAO,CACLC,aAAc,SAAsBhY,EAAMiY,EAAMC,GAC9C,GAAoB,oBAATD,EAAqB,OAAO,KACvC,IAAI5W,EAAO8W,YAAWnY,EAAM,GAAIkY,GAEhC,OADA7W,EAAKyW,GAAYG,EACV5W,GAETL,eAAgB,SAAwBV,EAAOe,GAK7C,GAAIwW,KAAcxW,GAAQyW,KAAYzW,EAAM,OAAOf,EACnD,IAAI8X,EAAW,GAEf,IAAK,IAAI5X,KAAQF,EAAO,CACtB,IAAIc,EAAQd,EAAME,GACG,oBAAVY,WACJd,EAAME,GACb4X,EAAS5X,GAAQY,GAKnB,OADAC,EAAKwW,GAAcO,EACZ9X,GAET+X,SAAU,SAAkBC,EAAMjX,EAAMkX,EAAOL,GAC7C,IAAIM,EAAYnX,EAEZoX,EAASD,EAAUV,GAGnBW,IAGFD,EAAUlY,MAAQmY,EAAOH,IAAS,IAapC,IAAIF,EAAWI,EAAUX,GAEzB,GAAIO,EACF,IAAK,IAAIM,KAASN,EAChBI,EAAUhY,KAAKkY,EAAON,EAASM,GAAOJ,GAAOJ,O,iCC5DvD,qBAGIS,EAAK,UACLC,EAAW,WAEXC,EAEJ,WACE,SAASA,EAAoBhX,EAAKiX,EAAQZ,GAaxC,IAAK,IAAIa,KAZTzW,KAAK0W,KAAO,SACZ1W,KAAKqW,GAAKA,EACVrW,KAAK2W,WAAQ,EACb3W,KAAK4V,aAAU,EACf5V,KAAKT,SAAM,EACXS,KAAK4W,aAAc,EACnB5W,KAAKT,IAAMA,EACXS,KAAK4V,QAAUA,EACf5V,KAAK2W,MAAQ,IAAIE,IAASlI,YAAS,GAAIiH,EAAS,CAC9CkB,OAAQ9W,QAGWwW,EACnBxW,KAAK2W,MAAMI,IAAIN,EAAUD,EAAOC,IAGlCzW,KAAK2W,MAAMK,UAOb,IAAIC,EAASV,EAAoB3P,UAgCjC,OA9BAqQ,EAAOC,QAAU,SAAiBxZ,GAChC,OAAOsC,KAAK2W,MAAMQ,IAAIzZ,IAOxBuZ,EAAOG,QAAU,SAAiB1Z,EAAMM,EAAO4X,GAC7C,IAAI7W,EAAOiB,KAAK2W,MAAMI,IAAIrZ,EAAMM,EAAO4X,GAEvC,OADI7W,GAAMiB,KAAK4V,QAAQyB,IAAIC,QAAQC,cAAcxY,GAC1CA,GAOTkY,EAAO9Y,QAAU,SAAiBY,GAChC,OAAOiB,KAAK2W,MAAMxY,QAAQY,IAO5BkY,EAAO9W,SAAW,WAChB,OAAOH,KAAK2W,MAAMxW,YAGboW,EAzDT,GA4DIiB,EAEJ,WACE,SAASA,EAAmBjY,EAAKvB,EAAO4X,GACtC5V,KAAK0W,KAAO,SACZ1W,KAAKqW,GAAKA,EACVrW,KAAK4V,aAAU,EACf5V,KAAKjB,UAAO,EACZiB,KAAK4W,aAAc,EACnB5W,KAAKT,SAAM,EACXS,KAAKT,IAAMA,EACXS,KAAK4V,QAAUA,EACf,IAAIa,EAAWlX,EAAIkY,OAAOnB,EAAS1X,QACnCoB,KAAKjB,KAAO6W,EAAQyB,IAAIxB,WAAWY,EAAUzY,EAAO2Q,YAAS,GAAIiH,EAAS,CACxEkB,OAAQ9W,QAUZ,OANcwX,EAAmB5Q,UAEzBzG,SAAW,SAAkByV,GACnC,OAAO5V,KAAKjB,KAAOiB,KAAKjB,KAAKoB,SAASyV,GAAW,IAG5C4B,EAtBT,GAyBIE,EAAkB,WAEtB,SAASC,EAASlB,EAAUmB,GAI1B,IAHA,IAAI1X,EAAQuW,EAASrW,MAAMsX,GACvBG,EAAS,GAEJrR,EAAI,EAAGA,EAAItG,EAAMtB,OAAQ4H,IAChCqR,GAAUD,EAAQ,IAAM1X,EAAMsG,GAAGvG,OAC7BC,EAAMsG,EAAI,KAAIqR,GAAU,MAG9B,OAAOA,EA8EMC,IAvCf,WAiCE,MAAO,CACLpC,aAjCF,SAAsBhY,EAAM8Y,EAAQZ,GAClC,IAAKlY,EAAM,OAAO,KAElB,GAAIA,IAAS2Y,EACX,OAAO,IAAIE,EAAoB7Y,EAAM8Y,EAAQZ,GAG/C,GAAgB,MAAZlY,EAAK,IAAcA,EAAK+Z,OAAO,EAAGnB,EAAS1X,UAAY0X,EACzD,OAAO,IAAIkB,EAAmB9Z,EAAM8Y,EAAQZ,GAG9C,IAAIkB,EAASlB,EAAQkB,OAYrB,OAVIA,IACkB,WAAhBA,EAAOJ,MAAqBI,EAAOlB,QAAQkB,QAAyC,WAA/BA,EAAOlB,QAAQkB,OAAOJ,QAC7Ed,EAAQiC,QAAS,IAIE,IAAnBjC,EAAQiC,SACVjC,EAAQa,SAAW/Y,GAGd,MAWP6Z,cARF,SAAuBxY,EAAMkX,GACT,UAAdlX,EAAK2X,MAAqBT,IAhElC,SAAyClX,EAAMkX,GAC7C,IAAIL,EAAU7W,EAAK6W,QACf5X,EAAQe,EAAKf,MACb2Y,EAAQ3Y,EAAQA,EAAMqY,GAAM,KAChC,GAAKM,EAAL,CAEA,IAAK,IAAIjZ,KAAQiZ,EACfV,EAAMmB,QAAQ1Z,EAAMiZ,EAAMjZ,GAAOiR,YAAS,GAAIiH,EAAS,CACrDa,SAAUkB,EAASja,EAAMqB,EAAK0X,oBAI3BzY,EAAMqY,IAqDX0B,CAAgChZ,EAAMkX,GAlD1C,SAAkClX,EAAMkX,GACtC,IAAIL,EAAU7W,EAAK6W,QACf5X,EAAQe,EAAKf,MAEjB,IAAK,IAAIE,KAAQF,EACf,GAAgB,MAAZE,EAAK,IAAcA,EAAKuZ,OAAO,EAAGpB,EAAGzX,UAAYyX,EAArD,CACA,IAAII,EAAWkB,EAASzZ,EAAKuZ,OAAOpB,EAAGzX,QAASG,EAAK0X,UACrDR,EAAMmB,QAAQX,EAAUzY,EAAME,GAAOyQ,YAAS,GAAIiH,EAAS,CACzDa,SAAUA,YAELzY,EAAME,IAyCb8Z,CAAyBjZ,EAAMkX,Q,iCC/KnC,YAGIyB,EAAkB,WAClBO,EAAe,KACfC,EAAY,cA2GDC,IAnGf,WAEE,SAASC,EAAcC,EAAWpC,GAChC,OAAO,SAAU1Y,EAAOgC,GACtB,IAAIR,EAAOsZ,EAAUnB,QAAQ3X,IAAQ0W,GAASA,EAAMiB,QAAQ3X,GAE5D,OAAIR,GACFA,EAAOA,GACK0X,SAIPlX,GAIX,SAAS+Y,EAAkBC,EAAYC,GAKrC,IAJA,IAAIC,EAAkBD,EAAWpY,MAAMsX,GACnCgB,EAAkBH,EAAWnY,MAAMsX,GACnCiB,EAAS,GAEJnS,EAAI,EAAGA,EAAIiS,EAAgB7Z,OAAQ4H,IAG1C,IAFA,IAAIsQ,EAAS2B,EAAgBjS,GAEpBoS,EAAI,EAAGA,EAAIF,EAAgB9Z,OAAQga,IAAK,CAC/C,IAAIC,EAASH,EAAgBE,GACzBD,IAAQA,GAAU,MAEtBA,IAAmC,IAAzBE,EAAO1a,QAAQ,KAAc0a,EAAOhb,QAAQoa,EAAcnB,GAAUA,EAAS,IAAM+B,EAIjG,OAAOF,EAGT,SAASG,EAAW/Z,EAAMsZ,EAAWU,GAEnC,GAAIA,EAAa,OAAOpK,YAAS,GAAIoK,EAAa,CAChDpa,MAAOoa,EAAYpa,MAAQ,IAG7B,IAAIqa,EAAeja,EAAK6W,QAAQoD,aAChCA,OAAgC9R,IAAjB8R,EAA6B,EAAIA,EAAe,EAE/D,IAAIpD,EAAUjH,YAAS,GAAI5P,EAAK6W,QAAS,CACvCoD,aAAcA,EACdra,MAAO0Z,EAAUla,QAAQY,GAAQ,IAKnC,cADO6W,EAAQlY,KACRkY,EA2CT,MAAO,CACLlX,eAzCF,SAAwBV,EAAOe,EAAMkX,GACnC,GAAkB,UAAdlX,EAAK2X,KAAkB,OAAO1Y,EAClC,IAEI4X,EACAqD,EAHA/C,EAAYnX,EACZsZ,EAAYnC,EAAUN,QAAQkB,OAIlC,IAAK,IAAI5Y,KAAQF,EAAO,CACtB,IAAIkb,GAAkC,IAAvBhb,EAAKC,QAAQ,KACxBgb,EAAkC,MAAZjb,EAAK,GAC/B,GAAKgb,GAAaC,EAAlB,CAGA,GAFAvD,EAAUkD,EAAW5C,EAAWmC,EAAWzC,GAEvCsD,EAAU,CACZ,IAAIzC,EAAW6B,EAAkBpa,EAAMgY,EAAUO,UAG5CwC,IAAYA,EAAab,EAAcC,EAAWpC,IAEvDQ,EAAWA,EAAS5Y,QAAQqa,EAAWe,GACvCZ,EAAUjB,QAAQX,EAAUzY,EAAME,GAAOyQ,YAAS,GAAIiH,EAAS,CAC7Da,SAAUA,UAEH0C,GAETd,EAAUjB,QAAQlZ,EAAM,GAAI0X,GAI3BwB,QAAQlB,EAAU3W,IAAKvB,EAAME,GAAO,CACnCuY,SAAUP,EAAUO,kBAIjBzY,EAAME,IAGf,OAAOF,M,iCCxGX,sBA0Deob,IAjDf,WAQE,SAASC,EAAYrb,GACnB,IAAK,IAAIE,KAAQF,EAAO,CACtB,IAAIc,EAAQd,EAAME,GAElB,GAAa,cAATA,GAAwBI,MAAMC,QAAQO,GACxCd,EAAME,GAAQY,EAAMN,IAAI6a,OAD1B,CAKA,IAAIC,GAAa,EACbC,EAAgBC,YAAkBtb,GAClCqb,GAAiBA,IAAkBrb,IAAMob,GAAa,GAC1D,IAAIG,GAAc,EACdC,EAAmBC,YAAeJ,EAAeK,YAAW9a,IAC5D4a,GAAoBA,IAAqB5a,IAAO2a,GAAc,IAE9DH,GAAcG,KACZH,UAAmBtb,EAAME,GAC7BF,EAAMub,GAAiBrb,GAAQwb,GAAoB5a,IAIvD,OAAOd,EAYT,MAAO,CACLuZ,cA1CF,SAAuBxY,GACrB,GAAkB,cAAdA,EAAK2X,KAAsB,CAC7B,IAAImD,EAAS9a,EACb8a,EAAOxD,GAAKyD,YAAmBD,EAAOxD,MAwCxC3X,eAXF,SAAwBV,EAAOe,GAC7B,MAAkB,UAAdA,EAAK2X,KAAyB1Y,EAC3Bqb,EAAYrb,IAUnBa,cAPF,SAAuBC,EAAOZ,GAC5B,OAAOyb,YAAezb,EAAM0b,YAAW9a,KAAWA,M,iCCrBvCib,IAxBf,WACE,IAAIC,EAAO,SAAcC,EAAOC,GAC9B,OAAID,EAAMrb,SAAWsb,EAAMtb,OAClBqb,EAAQC,EAAQ,GAAK,EAGvBD,EAAMrb,OAASsb,EAAMtb,QAG9B,MAAO,CACLF,eAAgB,SAAwBV,EAAOe,GAC7C,GAAkB,UAAdA,EAAK2X,KAAkB,OAAO1Y,EAIlC,IAHA,IAAImc,EAAW,GACXlO,EAAQzM,OAAOuI,KAAK/J,GAAOgc,KAAKA,GAE3BxT,EAAI,EAAGA,EAAIyF,EAAMrN,OAAQ4H,IAChC2T,EAASlO,EAAMzF,IAAMxI,EAAMiO,EAAMzF,IAGnC,OAAO2T,M,iBCtBb,IAAIC,EAGJA,EAAK,WACJ,OAAOpa,KADH,GAIL,IAECoa,EAAIA,GAAK,IAAIC,SAAS,cAAb,GACR,MAAOpV,GAEc,kBAAX4E,SAAqBuQ,EAAIvQ,QAOrCS,EAAOC,QAAU6P,G,gQClBXE,EAAelL,EAAQ,IAEtB,SAASlK,EAA4BpE,GAC1C,IAAIA,EACF,OAAOA,EAKT,IAFA,IAAIyZ,EAAaC,mBAAmB1Z,GAE9BA,IAAQyZ,GACZzZ,EAAMyZ,EACNA,EAAaC,mBAAmB1Z,GAGlC,OAAOyZ,EAsCF,SAASE,EAAmB3b,GAEjC,OAAG0B,QAAMka,SAAS5b,GApCb,SAAuBgC,GAC5B,IAAIA,EACF,OAAOA,EAGT,IACE,OAAO6Z,UAAU7Z,GACjB,MAAO2C,GAEP,OADAC,QAAQC,MAAR,qDAA4D7C,IACrDA,GA4BA8Z,CAAc9b,GACb0B,QAAM+I,SAASzK,GAvB3B,SAAiCQ,GAC/B,IAAIub,EAAQP,EAAa,GAAIhb,GAM7B,OAJAE,OAAOuI,KAAK8S,GAAOtX,SAAQ,SAAAsQ,GACzBgH,EAAMhH,GAAY4G,EAAmBI,EAAMhH,OAGtCgH,EAiBEC,CAAwBhc,GACvB0B,QAAMjC,QAAQO,GAf1B,SAAgCyH,GAE9B,IADA,IAAIsU,EAAK,YAAOtU,GACRC,EAAI,EAAGA,EAAIqU,EAAMjc,OAAQ4H,IAC/BqU,EAAMrU,GAAKiU,EAAmBI,EAAMrU,IAEtC,OAAOqU,EAWEE,CAAuBjc,GAEvBA,EAIJ,SAASkc,EAAaC,EAAiBnb,EAAcsE,GAC1D,IAAI8W,EAAa,IAAInW,IAAIkW,GAUzB,OARGnb,IACMA,EAAKoG,WAAW,OACjBpG,EAAO,IAAMA,GAEjBob,EAAW9Y,UAAY8Y,EAAW9Y,SAAWtC,GAAMjC,QAAQ,KAAM,MAGrEqd,EAAW9W,KAAOA,GAAQ,GACnB8W,EAAWvY,KAGb,SAASwY,EAAcra,EAAasa,GACvC,OAAU,OAAHta,QAAG,IAAHA,OAAA,EAAAA,EAAKua,SAAS,MAAQva,EAAM,IAAMsa,EAAeta,EAAM,IAAMsa,EAGjE,SAASnX,EAAanD,GACzB,GAAGA,EAAIoF,WAAW,KACd,OAAO,EAGX,IAEI,OADA,IAAInB,IAAIjE,IACD,EACT,MAAO2C,GACL,OAAO,GAMR,SAASN,EAAYrC,GACxB,OAAOA,EAAIX,a,iBCpGf,SAASmb,EAAoB9G,GACzB,MAA0B,kBAAXA,IAAwBlW,MAAMC,QAAQiW,GAsBzDlK,EAAOC,QAlBP,SAASgR,EAAcC,EAAYC,EAAgBC,GAejD,OAdKF,IACHA,EAAa,IAEXE,IACFF,EAAanT,KAAKC,MAAMD,KAAKE,UAAUiT,KAEzChc,OAAOuI,KAAK0T,GAAgBlY,SAAQ,SAAShE,GACvC+b,EAAoBE,EAAWjc,KAAS+b,EAAoBG,EAAelc,IAC7Egc,EAAcC,EAAWjc,GAAMkc,EAAelc,IAG9Cic,EAAWjc,GAAOkc,EAAelc,MAG9Bic","file":"static/js/hybrid-qa~launcher~orbit-main~orbit-qa.cd07451a.chunk.js","sourcesContent":["/* eslint-disable no-var, prefer-template */\nvar uppercasePattern = /[A-Z]/g\nvar msPattern = /^ms-/\nvar cache = {}\n\nfunction toHyphenLower(match) {\n return '-' + match.toLowerCase()\n}\n\nfunction hyphenateStyleName(name) {\n if (cache.hasOwnProperty(name)) {\n return cache[name]\n }\n\n var hName = name.replace(uppercasePattern, toHyphenLower)\n return (cache[name] = msPattern.test(hName) ? '-' + hName : hName)\n}\n\nexport default hyphenateStyleName\n","import hyphenate from 'hyphenate-style-name';\n\n/**\n * Convert camel cased property names to dash separated.\n *\n * @param {Object} style\n * @return {Object}\n */\n\nfunction convertCase(style) {\n var converted = {};\n\n for (var prop in style) {\n var key = prop.indexOf('--') === 0 ? prop : hyphenate(prop);\n converted[key] = style[prop];\n }\n\n if (style.fallbacks) {\n if (Array.isArray(style.fallbacks)) converted.fallbacks = style.fallbacks.map(convertCase);else converted.fallbacks = convertCase(style.fallbacks);\n }\n\n return converted;\n}\n/**\n * Allow camel cased property names by converting them back to dasherized.\n *\n * @param {Rule} rule\n */\n\n\nfunction camelCase() {\n function onProcessStyle(style) {\n if (Array.isArray(style)) {\n // Handle rules like @font-face, which can have multiple styles in an array\n for (var index = 0; index < style.length; index++) {\n style[index] = convertCase(style[index]);\n }\n\n return style;\n }\n\n return convertCase(style);\n }\n\n function onChangeValue(value, prop, rule) {\n if (prop.indexOf('--') === 0) {\n return value;\n }\n\n var hyphenatedProp = hyphenate(prop); // There was no camel case in place\n\n if (prop === hyphenatedProp) return value;\n rule.prop(hyphenatedProp, value); // Core will ignore that property value we set the proper one above.\n\n return null;\n }\n\n return {\n onProcessStyle: onProcessStyle,\n onChangeValue: onChangeValue\n };\n}\n\nexport default camelCase;\n","export const MINI_CIP_BASE_ROUTE = '/cip';\nexport const MINI_CIS_BASE_ROUTE = '/cis';\n\nexport function isMiniOrbitBasePath(basePath: string) {\n\n if (basePath === MINI_CIP_BASE_ROUTE) {\n return true;\n }\n\n if (basePath === MINI_CIS_BASE_ROUTE) {\n return true;\n }\n\n return false;\n}","export default function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}","import {Check} from '@sparkware/app-utils';\nimport {HOME_PAGE} from '../../../themes/css-global-classes';\n\nexport class UriPath {\n constructor(path: string) {\n this._path = (path || '/').trim();\n }\n\n private readonly _path: string;\n toString(): string {\n if(this._path[0] !== '/') {\n return '/' + this._path;\n }\n\n return this._path;\n }\n\n getBase(): UriPath {\n let parts = this.toString().split('/');\n return new UriPath(parts[0] +'/' + parts[1]);\n }\n\n toArray(): string[] {\n let parts = this.toString().split('/').filter(part => part);\n return ['/', ...parts];\n }\n\n equals(theOther: UriPath): boolean {\n if(Check.isNullOrUndefined(theOther)) {\n return false;\n }\n return this._appendSlashToTheEnd(this.toString()).toLowerCase() === this._appendSlashToTheEnd(theOther.toString()).toLowerCase();\n }\n\n get isEmpty(): boolean {\n return this._path === '/';\n }\n\n toCssClassName(): string {\n\n let urlWithoutTrailingSlashes = this.toString();\n\n if(urlWithoutTrailingSlashes[0] === '/') {\n urlWithoutTrailingSlashes = urlWithoutTrailingSlashes.substring(1)\n }\n\n if(urlWithoutTrailingSlashes[urlWithoutTrailingSlashes.length - 1] === '/') {\n urlWithoutTrailingSlashes = urlWithoutTrailingSlashes.substring(0, urlWithoutTrailingSlashes.length - 1);\n }\n\n\n if(urlWithoutTrailingSlashes) {\n return urlWithoutTrailingSlashes.toLowerCase().replace(/\\//g, '-') + '-page';\n } else {\n return HOME_PAGE;\n }\n }\n\n static areEquals(p1: UriPath, p2: UriPath): boolean {\n if(Check.isNullOrUndefined(p1)) {\n if(Check.isNullOrUndefined(p2)) {\n return true;\n } else {\n return false;\n }\n } else {\n return p1.equals(p2);\n }\n }\n\n private _appendSlashToTheEnd(url: string): string {\n if(url[url.length - 1] !== '/') {\n url = url + '/';\n }\n\n return url;\n }\n\n append(other: UriPath | string): UriPath {\n if(!(other instanceof UriPath)) {\n other = new UriPath(other);\n }\n\n\n\n return new UriPath((this.toString() + other.toString()).replace(/\\/\\//g, '/'));\n }\n}\n","import {action, observable} from 'mobx';\nimport {Uri} from './uri/uri';\nimport {ILocationService} from './location.service.interface';\nimport {decodeUriComponentRecursive, isAbsolutUrl, sanitizeUrl} from '../../../utils/url-utils';\nimport {IStorageService} from '../storage/storage.service.interface';\nimport {UriPath} from './uri-path/uri-path';\n\nexport const ORBIT_LOCATION_OVERRIDE_BASE = 'orbit_location_override_base';\n\n\nexport class LocationService implements ILocationService {\n\n constructor(private _window: Partial, private _localStorage: IStorageService, private _sendTechnicalEvent?: (action: string, label?: string, value?: any) => void) {\n this._initCurrentUri();\n\n this._checkUrlIsNullString(this._window.location.pathname, 'constructor');\n\n this._window.addEventListener('popstate', () => {\n this._checkUrlIsNullString(this._window.location.pathname, 'popstate');\n this._updateCurrentUriAsync();\n });\n }\n\n private _previousUri: Uri = null;\n @observable.ref currentUri: Uri = null;\n\n @action.bound\n private _setCurrentUri(newUri: Uri) {\n this._previousUri = this.currentUri;\n this.currentUri = newUri;\n }\n\n\n private _initCurrentUri() {\n this._setCurrentUri(this._createNewUriForCurrentLocation());\n if(this._window.location.href !== this.currentUri.toString()) {\n this._window.history.replaceState(null, '', this.currentUri.toString());\n }\n }\n\n enableBasePathOverride(): void {\n const basePathName = this.currentUri.pathName.getBase().toString().toLowerCase();\n this._localStorage.setItem(ORBIT_LOCATION_OVERRIDE_BASE, basePathName.toString());\n }\n\n private _createNewUriForCurrentLocation(): Uri {\n let locationOverride = sanitizeUrl(this._window.location.href);\n return this.tryParseUrl(this._applyLocationOverride(locationOverride));\n }\n\n private _fireOnBeforeChangingLocation(targetUri: Uri) {\n this._onBeforeChangingLocationSubscribers.forEach(handler => {\n try {\n handler(targetUri);\n } catch (err) {\n console.error('OnBeforeChangingLocation handler failed!', err);\n }\n });\n }\n private _updateCurrentUriAsync(): Promise {\n let newUri = this._createNewUriForCurrentLocation();\n\n this._fireOnBeforeChangingLocation(newUri);\n\n // we set the current location async so we can give the spinner the chance to show up.\n return new Promise((resolve, reject) => {\n // Never remove this setTimeout- without this, while you click menu items to move between arenas, the spinner animation will not be smooth.\n setTimeout(() => {\n try {\n this._setCurrentUri(newUri);\n resolve();\n } catch (err) {\n reject(err);\n }\n }, 0);\n });\n\n }\n\n private _onBeforeChangingLocationSubscribers: Array<(targetUri: Uri) => void> = [];\n onBeforeChangingLocation(handler: (targetUri: Uri) => void): void {\n this._onBeforeChangingLocationSubscribers.push(handler);\n }\n\n\n private _isSameAsCurrentUrl(newUrl: string): boolean {\n\n let result:boolean;\n if(isAbsolutUrl(newUrl)) {\n result = Boolean(this._window.location.href === newUrl);\n } else {\n result = Boolean(newUrl === this._window.location.pathname + this._window.location.search + this._window.location.hash);\n }\n return result;\n }\n\n private _lastUpdateCurrentUriPromise: Promise = Promise.resolve();\n private _executeNavigation(url: string, historyApiCallback: (newUrl: string) => void) : Promise {\n url = (url || '').trim();\n url = url || '/';\n\n this._checkUrlIsNullString(url, 'push');\n\n if(this._isRedirectUrl(url)) {\n return this.redirect(url);\n } else {\n\n const newUrl = this._applyLocationOverride(url);\n\n if(!this._isSameAsCurrentUrl(newUrl)) {\n historyApiCallback(newUrl);\n }\n\n if(!this._isSameAsCurrentUrl(this.currentUri.toString())) {\n this._lastUpdateCurrentUriPromise = this._updateCurrentUriAsync();\n }\n\n // This is for making very quick subsequent calls to this function to happen in the order they were called.\n // related bug: BUG 1668336\n return this._lastUpdateCurrentUriPromise;\n\n }\n }\n\n /**\n * @param {string} url\n * url parameter can be a full url or just a relative url:\n * url parameter examples:\n * https://www.888casino.com/slots\n * /slots\n * /slots#filters=someFilter\n * #justTheHash\n * @param {boolean} forceHistoryPush\n * used by the \"browser-buttons-handler\" to overwrite the current url;\n */\n push(url: string): Promise {\n return this._executeNavigation(url, (newUrl) => this._window.history.pushState(null, '', newUrl));\n }\n\n pushWithoutValidation(url){\n this._window.history.pushState(null, '', url);\n }\n\n goBack(index = -1){\n this._window.history.go(index);\n }\n\n /**\n * @param {string} url\n * url parameter can be a full url or just a relative url:\n * url parameter examples:\n * https://www.888casino.com/slots\n * /slots\n * /slots#filters=someFilter\n * #justTheHash\n */\n replace(url: string): Promise {\n return this._executeNavigation(url, (newUrl) => this._window.history.replaceState(null, '', newUrl));\n }\n\n\n redirect(url: string): Promise {\n this._window.location.href = url;\n return Promise.resolve();\n }\n\n goHome(): Promise {\n return this.push('/');\n }\n\n\n\n private _isRedirectUrl(url: string): boolean {\n if(url && url[0] === '#') {\n return false;\n }\n\n let parsedUrl = this.tryParseUrl(url);\n if(parsedUrl && parsedUrl.origin.toLowerCase() !== this.currentUri.origin.toLowerCase()) {\n return true;\n } else {\n return false;\n }\n }\n\n get hasNavigationHistory(): boolean {\n if(this._previousUri) {\n return true;\n }\n return false;\n }\n\n tryParseUrl(url: string): Uri {\n try {\n return new Uri(new URL(this._tryDecodeUrl(url)));\n } catch (e) {\n return null;\n }\n }\n\n private _tryDecodeUrl(url: string): string {\n try {\n return decodeUriComponentRecursive(url);\n } catch(err) {\n console.error('Failed to decode url: ' + url);\n return url;\n }\n }\n\n buildFullUri(partialUri: string): Uri {\n const candidate = partialUri?.toString() || '/';\n return new Uri(new URL(candidate, this.currentUri.toString()));\n }\n\n private _checkUrlIsNullString(url: string, functionName: string): void {\n\n try {\n if(url === '/null' || url === 'null' || url === '/null/' || url === 'null/') {\n let message = new Error(`null route detected! Action=${functionName}; CurrentLocation=${this._window.location.href}; DocumentReferrer: ${document.referrer}`).stack;\n if(this._sendTechnicalEvent) {\n this._sendTechnicalEvent('NULL_ROUTE_DETECTED', functionName, message);\n }\n\n console.error(message);\n\n }\n } catch (err) {\n console.error('_checkUrlIsNullString Failed', err);\n }\n\n }\n\n private _applyLocationOverride(url: string): string {\n return this._getLocationOverrideStrategy().overrideLocation(url);\n }\n\n\n private _getLocationOverrideStrategy(): ILocationOverrideStrategy {\n const basePath = this._localStorage.getItem(ORBIT_LOCATION_OVERRIDE_BASE);\n if(basePath) {\n return new LocationOverrideStrategy(basePath);\n } else {\n return new NoLocationOverrideStrategy();\n }\n }\n\n get isHomePage(): boolean {\n return this._getLocationOverrideStrategy().isHomePage(this.currentUri.pathName);\n }\n}\n\ninterface ILocationOverrideStrategy {\n overrideLocation(url: string): string;\n isHomePage(pathName: UriPath): boolean;\n}\n\n\nclass LocationOverrideStrategy implements ILocationOverrideStrategy {\n\n constructor(basePath: string) {\n this._basePath = new UriPath(basePath.toLowerCase());\n }\n\n private readonly _basePath: UriPath;\n\n isHomePage(pathName: UriPath): boolean {\n return this._basePath.equals(pathName);\n }\n\n overrideLocation(url: string): string {\n if (url.startsWith('#')) {\n return url;\n }\n\n let newUrl = this._tryParseUrl(url);\n if(newUrl) {\n if (!newUrl.pathname.toLowerCase().startsWith(this._basePath.toString())) {\n newUrl.pathname = this._basePath.append(newUrl.pathname).toString();\n }\n\n return sanitizeUrl(newUrl.href.toString());\n } else {\n if(!url.toLowerCase().startsWith(this._basePath.toString())) {\n return this._basePath.append(url).toString();\n }\n }\n\n return url;\n }\n\n private _tryParseUrl(url): URL {\n try {\n return new URL(url);\n } catch (e) {\n return null;\n }\n }\n\n}\n\n\nclass NoLocationOverrideStrategy implements ILocationOverrideStrategy {\n isHomePage(pathName: UriPath): boolean {\n return pathName.isEmpty;\n }\n\n overrideLocation(url: string): string {\n return url;\n }\n}","import arrayWithHoles from \"./arrayWithHoles\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit\";\nimport nonIterableRest from \"./nonIterableRest\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || nonIterableRest();\n}","export default function _iterableToArrayLimit(arr, i) {\n if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === \"[object Arguments]\")) {\n return;\n }\n\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}","var isProduction = process.env.NODE_ENV === 'production';\nfunction warning(condition, message) {\n if (!isProduction) {\n if (condition) {\n return;\n }\n\n var text = \"Warning: \" + message;\n\n if (typeof console !== 'undefined') {\n console.warn(text);\n }\n\n try {\n throw Error(text);\n } catch (x) {}\n }\n}\n\nexport default warning;\n","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}","export default function _typeof(obj) {\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}","import {IStorageService} from './storage.service.interface';\nimport {ILoggerService} from '../logger/logger.service.interface';\n\nexport class StorageService implements IStorageService {\n\n constructor(private _logger: ILoggerService) {\n\n }\n\n getItem(key: string) {\n return localStorage.getItem(key);\n }\n\n setItem(key: string, value: any): void {\n localStorage.setItem(key, value);\n }\n\n\n getJson(key: string): any {\n let value = this.getItem(key);\n if (!value) {\n return null;\n }\n\n try {\n return JSON.parse(value);\n } catch (err) {\n this._logger.error(`Failed to parse to JSON the local storage key ${key} with value ${value}`, err);\n return null;\n }\n }\n\n setJson(key: string, value: object): void {\n this.setItem(key, JSON.stringify(value));\n }\n\n\n removeItem(key: string): void {\n localStorage.removeItem(key);\n }\n\n\n createCookie(name: string, value: string, expiration_date?:Date): void {\n let expirationDate;\n if (expiration_date) {\n expirationDate = expiration_date.toUTCString()\n } else {\n let now = new Date();\n now.setFullYear(now.getFullYear() + 1);\n expirationDate = now.toUTCString();\n }\n document.cookie = name + '=' + value + ';expires=' + expirationDate+ ';path=/';\n }\n\n createDomainCookie(name: string, value: string): void {\n let now = new Date();\n now.setFullYear(now.getFullYear() + 1);\n document.cookie = name + '=' + value + ';domain=.888casino.com;expires=' + now.toUTCString() + ';path=/';\n }\n\n getCookie(name: string) {\n let match = document.cookie.match(new RegExp(name + '=([^;]+)'));\n if (match) {\n return match[1];\n }\n }\n\n removeCookie(name: string): void {\n document.cookie = name + \"=;expires=Thu, 01 Jan 1970 00:00:00 UTC;domain=.888casino.com;\";\n }\n}\n","import {ILoggerService, LogError} from './logger.service.interface';\nimport {Check} from '@sparkware/app-utils';\n\nenum LOG_LEVELS {\n DEBUG = 1,\n INFO = 2,\n WARN =3,\n ERROR = 4\n}\n\nexport class ConsoleLoggerService implements ILoggerService {\n\n constructor(private _debugMode: boolean) {\n\n }\n\n errorLogs: LogError[] = [];\n\n debug(message: string): void {\n this._log('debug', message);\n }\n\n info(message: string): void {\n this._log('info', message);\n }\n\n warning(message: string): void {\n this._log('warn', message);\n }\n\n error(message: string, error?: any): void {\n if(error) {\n if(Check.isObject(error) || Check.isArray(error)) {\n message = `${message}; Error details: ${JSON.stringify(error)}`;\n } else {\n message = `${message}; Error details: ${error}`;\n }\n }\n\n this._addErrorLog(message);\n\n this._log('error', message);\n }\n\n\n /**\n * Private method, provides single point of access to the \"console.log\" API.\n * Prevents mess around the code and a clean way to prevent the output of the log or the severity level.\n */\n private _log(severity: string, log: any) {\n if (this._isConsoleEnabled(severity.toUpperCase())) {\n console[severity](log);\n }\n }\n\n private _isConsoleEnabled(severity: string): boolean {\n return LOG_LEVELS[severity] >= LOG_LEVELS[window['LOG_LEVEL']]\n }\n\n private _addErrorLog(message: string) {\n if(!this._debugMode) {\n return;\n }\n\n if (this.errorLogs.length === 30) {\n this.errorLogs.splice(0, 1);\n }\n\n this.errorLogs.push({message: message, date: new Date()});\n }\n\n}\n","/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n","export default function _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n subClass.__proto__ = superClass;\n}","import arrayWithoutHoles from \"./arrayWithoutHoles\";\nimport iterableToArray from \"./iterableToArray\";\nimport nonIterableSpread from \"./nonIterableSpread\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || nonIterableSpread();\n}","export default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n }\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance\");\n}","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}","export const ORBIT_VERSION = '3.2632.3';\n","import {IWindowService} from './window.service.interface';\nimport {isAbsolutUrl} from '../../../utils/url-utils';\nimport { CGP_OBJECT_NAME } from '../../app-bootstrap/constants';\nimport { API } from '../../../sdk/src/core/api';\nimport { EventListenerRegistration } from '../../../utils/event-listener-registration';\n\ndeclare global {\n interface Window {\n LOG_LEVEL: string;\n [CGP_OBJECT_NAME]: API;\n [key: string]: any;\n }\n}\n\nexport class WindowService implements IWindowService {\n\n constructor() {\n this._eventListenerRegistration = new EventListenerRegistration(window);\n }\n getGlobalProperty(name: string): any {\n return window[name];\n }\n\n setGlobalProperty(name: string, value: any): void {\n window[name] = value;\n }\n\n getElementWidth(element: Element): number {\n return parseInt(window.getComputedStyle(element).width.replace('px', ''));\n }\n\n getElementHorizontalTranslationAmount(element: Element): number {\n let elementTransform = window.getComputedStyle(element).getPropertyValue(\"-webkit-transform\") || window.getComputedStyle(element).getPropertyValue(\"transform\");\n // we need split(\",\")[12] and [4] to support ie\n return parseInt(elementTransform.split(\",\")[12] || elementTransform.split(\",\")[4]) || 0;\n }\n\n get location(): Location {\n return window.location;\n }\n\n private readonly _eventListenerRegistration: EventListenerRegistration;\n get subscribeTo(): EventListenerRegistration {\n return this._eventListenerRegistration;\n }\n\n get innerWidth(): number {\n return window.innerWidth;\n }\n\n get innerHeight(): number {\n return window.innerHeight;\n }\n\n open(url?: string, target?: string, features?: string): void {\n window.open(url, target, features);\n }\n\n openSelf(url?: string): void {\n this.open(url, '_self')\n }\n\n get origin(): string {\n return window.location.origin;\n }\n\n get pathname(): string {\n return window.location.pathname;\n }\n\n get history(): History {\n return window.history;\n }\n\n scrollTo(x: number, y: number): void {\n window.scrollTo(x, y);\n }\n\n get scrollY(): number {\n return window.scrollY;\n }\n\n scrollBy(x: number, y: number): void {\n window.scrollBy(x, y)\n }\n\n isAbsolutUrl(url: string): boolean {\n return isAbsolutUrl(url);\n }\n\n}\n","export const CGP_OBJECT_NAME = 'CGP';\n\n\n","import {Check} from '@sparkware/app-utils';\nimport {decodeUriComponentRecursive} from '../../../../utils/url-utils';\n\nexport class UriHash {\n constructor(hash: string) {\n this._hash = this._tryDecodeHash(hash || '');\n if(this._hash === '#') {\n this._hash = '';\n }\n }\n\n\n get value(): string {\n if(this._hash[0] === '#') {\n return this._hash.substring(1);\n } else {\n return this._hash;\n }\n }\n\n private _hash: string;\n\n toString() {\n if(!this._hash) {\n return this._hash;\n }\n\n if(this._hash[0] === '#') {\n return this._hash;\n } else {\n return '#' + this._hash;\n }\n }\n\n static areEquals(h1: UriHash, h2: UriHash): boolean {\n if(Check.isNullOrUndefined(h1)) {\n if(Check.isNullOrUndefined(h2)) {\n return true;\n } else {\n return false;\n }\n } else {\n return h1.equals(h2);\n }\n }\n\n equals(theOther: UriHash) {\n if(Check.isNullOrUndefined(theOther)) {\n return false;\n }\n\n return this.toString().toLowerCase() === theOther.toString().toLowerCase();\n }\n\n get isEmpty(): boolean {\n return Check.isEmpty(this._hash);\n }\n\n private _tryDecodeHash(hash: string): string {\n try {\n return decodeUriComponentRecursive(hash);\n } catch(err) {\n console.error('Failed to decode hash: ' + hash);\n return hash;\n }\n }\n}\n","import {UriPath} from '../uri-path/uri-path';\nimport {UriParams} from '../uri-params/uri-params';\nimport {UriHash} from '../uri-hash/uri-hash';\nimport {Check} from '@sparkware/app-utils';\nimport {sanitizeUrl} from '../../../../utils/url-utils';\n\nexport class Uri {\n\n constructor(url: URL) {\n this._originalUrl = url;\n this._pathName = new UriPath(this._originalUrl.pathname);\n this._queryParams = new UriParams(this._originalUrl.search);\n this._hash = new UriHash(this._originalUrl.hash);\n }\n\n private _originalUrl: URL;\n\n get hostName(): string {\n return this._originalUrl.hostname.toLowerCase();\n }\n\n get origin(): string {\n return this._originalUrl.origin.toLowerCase();\n }\n\n private readonly _pathName: UriPath;\n get pathName(): UriPath {\n return this._pathName;\n }\n\n private readonly _queryParams: UriParams;\n get queryParams(): UriParams {\n return this._queryParams;\n }\n\n private readonly _hash: UriHash;\n get hash(): UriHash {\n return this._hash;\n }\n\n toString() {\n let ret:string = sanitizeUrl(this._originalUrl.href);\n return ret;\n }\n\n equals(theOther: Uri): boolean {\n if(Check.isNullOrUndefined(theOther)) {\n return false;\n }\n\n return this.origin === theOther.origin\n && this.pathName.equals(theOther.pathName)\n && this.queryParams.equals(theOther.queryParams)\n && this.hash.equals(theOther.hash);\n }\n\n getUrlWithoutHash() {\n return this._originalUrl.origin + this._originalUrl.pathname + this._originalUrl.search;\n }\n\n removeSearchParam(paramName: string): Uri {\n let newQueryParams = this.queryParams.removeParam(paramName).toString();\n return new Uri(new URL(this._originalUrl.origin + this._originalUrl.pathname + newQueryParams + this._originalUrl.hash));\n }\n\n getUrlWithoutSearchAndHash() {\n return this._originalUrl.origin + this._originalUrl.pathname;\n }\n\n static areEquals(u1: Uri, u2: Uri): boolean {\n if(Check.isNullOrUndefined(u1)) {\n if(Check.isNullOrUndefined(u2)) {\n return true;\n } else {\n return false;\n }\n } else {\n return u1.equals(u2);\n }\n }\n}\n","export default function _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}","var _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nexport var isBrowser = (typeof window === \"undefined\" ? \"undefined\" : _typeof(window)) === \"object\" && (typeof document === \"undefined\" ? \"undefined\" : _typeof(document)) === 'object' && document.nodeType === 9;\n\nexport default isBrowser;\n","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance\");\n}","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","export default function _iterableToArray(iter) {\n if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter);\n}","import {decodeUriComponentRecursive} from '../../../../utils/url-utils';\n\ninterface ParameterDescriptor {\n originalName: string;\n value: string;\n}\n\nexport class UriParams {\n\n constructor(queryParamsString: string) {\n queryParamsString = (queryParamsString || '').trim();\n\n\n if(queryParamsString[0] === '?') {\n queryParamsString = queryParamsString.substring(1);\n }\n\n if(queryParamsString) {\n queryParamsString.split('&').forEach(paramString => {\n let keyValue = paramString.split('=');\n let key = keyValue[0];\n let value = keyValue[1];\n if(keyValue.length > 2) {\n value = keyValue.slice(1).join('=');\n }\n this._params[key.toLowerCase()] = {\n originalName: key,\n value: value\n };\n });\n }\n }\n\n private _params: {[key: string]: ParameterDescriptor} = {};\n\n getAllParams(): ParameterDescriptor[] {\n return Object.values(this._params);\n }\n\n getParamValue(paramName: string): string {\n let paramDescriptor = this._params[paramName.toLowerCase()];\n if(!paramDescriptor) {\n return undefined;\n }\n return decodeUriComponentRecursive(paramDescriptor.value);\n }\n\n toString() {\n const allParams = this.getAllParams();\n if(allParams.length === 0) {\n return '';\n }\n return '?' + allParams.map(p => p.originalName + '=' + p.value).join('&');\n }\n\n removeParam(paramName: string): UriParams {\n let clonedParams = {...this._params};\n delete clonedParams[paramName?.toLowerCase()];\n const newQueryParams = Object.keys(clonedParams).map(paramName => {\n const paramDescriptor = clonedParams[paramName];\n return `${paramDescriptor.originalName}=${paramDescriptor.value}`;\n });\n return new UriParams(newQueryParams.join('&'));\n }\n\n hasParam(name: string): boolean {\n return Boolean(this._params[name.toLowerCase()]);\n }\n\n addParam(name: string, value: string) {\n this._params[name.toLowerCase()] = {\n originalName: name,\n value: value\n }\n }\n\n equals(theOther: UriParams): boolean {\n let keys1 = Object.keys(this._params);\n let keys2 = Object.keys(theOther._params);\n\n if(keys1.length !== keys2.length) {\n return false;\n }\n\n for(let i = 0; i < keys1.length; i++) {\n let paramName = keys1[i];\n let val1 = this._params[paramName].value;\n let val2 = theOther._params[paramName] && theOther._params[paramName].value;\n if (val1 !== val2) {\n return false;\n }\n }\n\n return true;\n }\n\n get isEmpty(): boolean {\n return this.getAllParams().length === 0;\n }\n}\n","export interface DomEventSubscription {\n dispose();\n}\n\nexport class EventListenerRegistration {\n constructor(element: any) {\n this._element = element;\n }\n\n private _element: any;\n\n scroll(handler: EventListenerOrEventListenerObject): DomEventSubscription {\n return this._subscribe('scroll', handler);\n }\n\n resize(handler: EventListenerOrEventListenerObject): DomEventSubscription {\n return this._subscribe('resize', handler);\n }\n\n click(handler: EventListenerOrEventListenerObject): DomEventSubscription {\n return this._subscribe('click', handler);\n }\n\n postMessage(handler: EventListenerOrEventListenerObject): DomEventSubscription {\n return this._subscribe('message', handler);\n }\n\n devicechanged(handler: EventListenerOrEventListenerObject): DomEventSubscription {\n return this._subscribe('ondevicechanged', handler);\n\n }\n\n popstate(handler: EventListenerOrEventListenerObject): DomEventSubscription {\n return this._subscribe('popstate', handler);\n }\n\n hardwareBackButton(handler: EventListenerOrEventListenerObject): DomEventSubscription {\n return this._subscribe('backbutton', handler);\n }\n\n unload = (handler: EventListenerOrEventListenerObject): DomEventSubscription => {\n // Why use \"pagehide\" instead of unload\n // https://dev.azure.com/888holdings/GamingNDL/_git/ff235275-fba4-4733-a4ee-b6fd0d1639bf/pullrequest/38438\n // https://web.dev/bfcache/?utm_source=lighthouse&utm_medium=lr#never-use-the-unload-event\n return this._subscribe('pagehide', handler);\n }\n\n protected _subscribe = (eventName: string, handler: EventListenerOrEventListenerObject): DomEventSubscription => {\n this._element.addEventListener(eventName, handler);\n return {\n dispose: () => this._element?.removeEventListener(eventName, handler)\n }\n }\n\n}\n","export const HOME_PAGE = 'home-page';\nexport const LOBBY_PAGE = 'lobby-page';\nexport const SLOTS_PAGE = 'slots-page';\nexport const BLACKJACK_PAGE = 'blackjack-page';\nexport const ROULETTE_PAGE = 'roulette-page';\nexport const JACKPOTS_PAGE = 'jackpots-page';\nexport const CASINO_GAMES_PAGE = 'casino-games-page';\nexport const PROGRESSIVE_VIDEO_SLOTS_PAGE = 'progressive-video-slots-page';\nexport const NEW_GAMES_PAGE = 'new-games-page';\nexport const GAMING_HISTORY_PAGE = 'gaming-history-page';\nexport const SESSION_HISTORY_PAGE = 'session-history-page';\nexport const CHALLENGE_PAGE = 'challenge-page';\nexport const LIVE_CASINO_PAGE = 'live-casino-page';\nexport const VIDEO_POKER_PAGE = 'video-poker-page';\nexport const SCRATCH_CARDS_PAGE = 'scratch-cards-page';\nexport const EXCLUSIVE_888_GAMES_PAGE = '888-exclusive-games';\nexport const NEW_LIVE_CASINO_PAGE = 'live-casino-new-page';\nexport const INSTANT_WIN_GAMES_PAGE = 'instant-win-games-page';\nexport const VIRTUAL_SPORTS_PAGE = 'virtual-sports-page';\n\nexport const WIDE_GRID = 'wide-grid';\nexport const ORBIT_TAP = 'orbit-tap';\nexport const CGP_GAME_OPEN = 'cgp-game-open';\nexport const JACKPOTS_ITEM = 'jackpots-item';\nexport const LIVE_CASINO_ITEM = 'live-casino-item';\n\nexport const LIVE_STREAMING_ITEM = 'live-streaming-item';\nexport const STATIC_VIDEO_ITEM = 'static-video-item';\n\nexport const EXCLUSIVES_LIST_ICON = 'exclusives-list-icon';\n\nexport const MOVE_TOP = 'move-top';\nexport const STICKY = 'sticky';\nexport const ORBIT_OVERLAY_OPEN = 'orbit-overlay-open';\nexport const CGP_OVERLAY_OPEN = 'cgp-overlay-open';\nexport const EMBEDDED_HYBRID = 'cgp-embedded-hybrid';\nexport const MODAL_DIALOG = 'modal-dialog';\nexport const MAIN_SCREEN = 'main-screen';\nexport const MINI_ORBIT = 'mini-orbit';\n\nexport const ACTIVE = 'active';\nexport const LIVE_CASINO_PAGE_WRAPPER = 'live-casino-page-wrapper';\nexport const MAIN_NAV = 'main-nav';\nexport const OPEN_MENU = 'open-menu';\n","import objectWithoutPropertiesLoose from \"./objectWithoutPropertiesLoose\";\nexport default function _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\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}","function toVal(mix) {\n\tvar k, y, str='';\n\n\tif (typeof mix === 'string' || typeof mix === 'number') {\n\t\tstr += mix;\n\t} else if (typeof mix === 'object') {\n\t\tif (Array.isArray(mix)) {\n\t\t\tfor (k=0; k < mix.length; k++) {\n\t\t\t\tif (mix[k]) {\n\t\t\t\t\tif (y = toVal(mix[k])) {\n\t\t\t\t\t\tstr && (str += ' ');\n\t\t\t\t\t\tstr += y;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tfor (k in mix) {\n\t\t\t\tif (mix[k]) {\n\t\t\t\t\tstr && (str += ' ');\n\t\t\t\t\tstr += k;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn str;\n}\n\nexport default function () {\n\tvar i=0, tmp, x, str='';\n\twhile (i < arguments.length) {\n\t\tif (tmp = arguments[i++]) {\n\t\t\tif (x = toVal(tmp)) {\n\t\t\t\tstr && (str += ' ');\n\t\t\t\tstr += x\n\t\t\t}\n\t\t}\n\t}\n\treturn str;\n}\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","import warning from 'tiny-warning';\nimport { createRule } from 'jss';\n\nvar now = Date.now();\nvar fnValuesNs = \"fnValues\" + now;\nvar fnRuleNs = \"fnStyle\" + ++now;\n\nvar functionPlugin = function functionPlugin() {\n return {\n onCreateRule: function onCreateRule(name, decl, options) {\n if (typeof decl !== 'function') return null;\n var rule = createRule(name, {}, options);\n rule[fnRuleNs] = decl;\n return rule;\n },\n onProcessStyle: function onProcessStyle(style, rule) {\n // We need to extract function values from the declaration, so that we can keep core unaware of them.\n // We need to do that only once.\n // We don't need to extract functions on each style update, since this can happen only once.\n // We don't support function values inside of function rules.\n if (fnValuesNs in rule || fnRuleNs in rule) return style;\n var fnValues = {};\n\n for (var prop in style) {\n var value = style[prop];\n if (typeof value !== 'function') continue;\n delete style[prop];\n fnValues[prop] = value;\n } // $FlowFixMe[prop-missing]\n\n\n rule[fnValuesNs] = fnValues;\n return style;\n },\n onUpdate: function onUpdate(data, rule, sheet, options) {\n var styleRule = rule; // $FlowFixMe[prop-missing]\n\n var fnRule = styleRule[fnRuleNs]; // If we have a style function, the entire rule is dynamic and style object\n // will be returned from that function.\n\n if (fnRule) {\n // Empty object will remove all currently defined props\n // in case function rule returns a falsy value.\n styleRule.style = fnRule(data) || {};\n\n if (process.env.NODE_ENV === 'development') {\n for (var prop in styleRule.style) {\n if (typeof styleRule.style[prop] === 'function') {\n process.env.NODE_ENV !== \"production\" ? warning(false, '[JSS] Function values inside function rules are not supported.') : void 0;\n break;\n }\n }\n }\n } // $FlowFixMe[prop-missing]\n\n\n var fnValues = styleRule[fnValuesNs]; // If we have a fn values map, it is a rule with function values.\n\n if (fnValues) {\n for (var _prop in fnValues) {\n styleRule.prop(_prop, fnValues[_prop](data), options);\n }\n }\n }\n };\n};\n\nexport default functionPlugin;\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport { RuleList } from 'jss';\n\nvar at = '@global';\nvar atPrefix = '@global ';\n\nvar GlobalContainerRule =\n/*#__PURE__*/\nfunction () {\n function GlobalContainerRule(key, styles, options) {\n this.type = 'global';\n this.at = at;\n this.rules = void 0;\n this.options = void 0;\n this.key = void 0;\n this.isProcessed = false;\n this.key = key;\n this.options = options;\n this.rules = new RuleList(_extends({}, options, {\n parent: this\n }));\n\n for (var selector in styles) {\n this.rules.add(selector, styles[selector]);\n }\n\n this.rules.process();\n }\n /**\n * Get a rule.\n */\n\n\n var _proto = GlobalContainerRule.prototype;\n\n _proto.getRule = function getRule(name) {\n return this.rules.get(name);\n }\n /**\n * Create and register rule, run plugins.\n */\n ;\n\n _proto.addRule = function addRule(name, style, options) {\n var rule = this.rules.add(name, style, options);\n if (rule) this.options.jss.plugins.onProcessRule(rule);\n return rule;\n }\n /**\n * Get index of a rule.\n */\n ;\n\n _proto.indexOf = function indexOf(rule) {\n return this.rules.indexOf(rule);\n }\n /**\n * Generates a CSS string.\n */\n ;\n\n _proto.toString = function toString() {\n return this.rules.toString();\n };\n\n return GlobalContainerRule;\n}();\n\nvar GlobalPrefixedRule =\n/*#__PURE__*/\nfunction () {\n function GlobalPrefixedRule(key, style, options) {\n this.type = 'global';\n this.at = at;\n this.options = void 0;\n this.rule = void 0;\n this.isProcessed = false;\n this.key = void 0;\n this.key = key;\n this.options = options;\n var selector = key.substr(atPrefix.length);\n this.rule = options.jss.createRule(selector, style, _extends({}, options, {\n parent: this\n }));\n }\n\n var _proto2 = GlobalPrefixedRule.prototype;\n\n _proto2.toString = function toString(options) {\n return this.rule ? this.rule.toString(options) : '';\n };\n\n return GlobalPrefixedRule;\n}();\n\nvar separatorRegExp = /\\s*,\\s*/g;\n\nfunction addScope(selector, scope) {\n var parts = selector.split(separatorRegExp);\n var scoped = '';\n\n for (var i = 0; i < parts.length; i++) {\n scoped += scope + \" \" + parts[i].trim();\n if (parts[i + 1]) scoped += ', ';\n }\n\n return scoped;\n}\n\nfunction handleNestedGlobalContainerRule(rule, sheet) {\n var options = rule.options,\n style = rule.style;\n var rules = style ? style[at] : null;\n if (!rules) return;\n\n for (var name in rules) {\n sheet.addRule(name, rules[name], _extends({}, options, {\n selector: addScope(name, rule.selector)\n }));\n }\n\n delete style[at];\n}\n\nfunction handlePrefixedGlobalRule(rule, sheet) {\n var options = rule.options,\n style = rule.style;\n\n for (var prop in style) {\n if (prop[0] !== '@' || prop.substr(0, at.length) !== at) continue;\n var selector = addScope(prop.substr(at.length), rule.selector);\n sheet.addRule(selector, style[prop], _extends({}, options, {\n selector: selector\n }));\n delete style[prop];\n }\n}\n/**\n * Convert nested rules to separate, remove them from original styles.\n *\n * @param {Rule} rule\n * @api public\n */\n\n\nfunction jssGlobal() {\n function onCreateRule(name, styles, options) {\n if (!name) return null;\n\n if (name === at) {\n return new GlobalContainerRule(name, styles, options);\n }\n\n if (name[0] === '@' && name.substr(0, atPrefix.length) === atPrefix) {\n return new GlobalPrefixedRule(name, styles, options);\n }\n\n var parent = options.parent;\n\n if (parent) {\n if (parent.type === 'global' || parent.options.parent && parent.options.parent.type === 'global') {\n options.scoped = false;\n }\n }\n\n if (options.scoped === false) {\n options.selector = name;\n }\n\n return null;\n }\n\n function onProcessRule(rule, sheet) {\n if (rule.type !== 'style' || !sheet) return;\n handleNestedGlobalContainerRule(rule, sheet);\n handlePrefixedGlobalRule(rule, sheet);\n }\n\n return {\n onCreateRule: onCreateRule,\n onProcessRule: onProcessRule\n };\n}\n\nexport default jssGlobal;\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport warning from 'tiny-warning';\n\nvar separatorRegExp = /\\s*,\\s*/g;\nvar parentRegExp = /&/g;\nvar refRegExp = /\\$([\\w-]+)/g;\n/**\n * Convert nested rules to separate, remove them from original styles.\n *\n * @param {Rule} rule\n * @api public\n */\n\nfunction jssNested() {\n // Get a function to be used for $ref replacement.\n function getReplaceRef(container, sheet) {\n return function (match, key) {\n var rule = container.getRule(key) || sheet && sheet.getRule(key);\n\n if (rule) {\n rule = rule;\n return rule.selector;\n }\n\n process.env.NODE_ENV !== \"production\" ? warning(false, \"[JSS] Could not find the referenced rule \\\"\" + key + \"\\\" in \\\"\" + (container.options.meta || container.toString()) + \"\\\".\") : void 0;\n return key;\n };\n }\n\n function replaceParentRefs(nestedProp, parentProp) {\n var parentSelectors = parentProp.split(separatorRegExp);\n var nestedSelectors = nestedProp.split(separatorRegExp);\n var result = '';\n\n for (var i = 0; i < parentSelectors.length; i++) {\n var parent = parentSelectors[i];\n\n for (var j = 0; j < nestedSelectors.length; j++) {\n var nested = nestedSelectors[j];\n if (result) result += ', '; // Replace all & by the parent or prefix & with the parent.\n\n result += nested.indexOf('&') !== -1 ? nested.replace(parentRegExp, parent) : parent + \" \" + nested;\n }\n }\n\n return result;\n }\n\n function getOptions(rule, container, prevOptions) {\n // Options has been already created, now we only increase index.\n if (prevOptions) return _extends({}, prevOptions, {\n index: prevOptions.index + 1 // $FlowFixMe[prop-missing]\n\n });\n var nestingLevel = rule.options.nestingLevel;\n nestingLevel = nestingLevel === undefined ? 1 : nestingLevel + 1;\n\n var options = _extends({}, rule.options, {\n nestingLevel: nestingLevel,\n index: container.indexOf(rule) + 1 // We don't need the parent name to be set options for chlid.\n\n });\n\n delete options.name;\n return options;\n }\n\n function onProcessStyle(style, rule, sheet) {\n if (rule.type !== 'style') return style;\n var styleRule = rule;\n var container = styleRule.options.parent;\n var options;\n var replaceRef;\n\n for (var prop in style) {\n var isNested = prop.indexOf('&') !== -1;\n var isNestedConditional = prop[0] === '@';\n if (!isNested && !isNestedConditional) continue;\n options = getOptions(styleRule, container, options);\n\n if (isNested) {\n var selector = replaceParentRefs(prop, styleRule.selector); // Lazily create the ref replacer function just once for\n // all nested rules within the sheet.\n\n if (!replaceRef) replaceRef = getReplaceRef(container, sheet); // Replace all $refs.\n\n selector = selector.replace(refRegExp, replaceRef);\n container.addRule(selector, style[prop], _extends({}, options, {\n selector: selector\n }));\n } else if (isNestedConditional) {\n // Place conditional right after the parent rule to ensure right ordering.\n container.addRule(prop, {}, options) // Flow expects more options but they aren't required\n // And flow doesn't know this will always be a StyleRule which has the addRule method\n // $FlowFixMe[incompatible-use]\n // $FlowFixMe[prop-missing]\n .addRule(styleRule.key, style[prop], {\n selector: styleRule.selector\n });\n }\n\n delete style[prop];\n }\n\n return style;\n }\n\n return {\n onProcessStyle: onProcessStyle\n };\n}\n\nexport default jssNested;\n","import { supportedKeyframes, supportedValue, supportedProperty } from 'css-vendor';\nimport { toCssValue } from 'jss';\n\n/**\n * Add vendor prefix to a property name when needed.\n *\n * @api public\n */\n\nfunction jssVendorPrefixer() {\n function onProcessRule(rule) {\n if (rule.type === 'keyframes') {\n var atRule = rule;\n atRule.at = supportedKeyframes(atRule.at);\n }\n }\n\n function prefixStyle(style) {\n for (var prop in style) {\n var value = style[prop];\n\n if (prop === 'fallbacks' && Array.isArray(value)) {\n style[prop] = value.map(prefixStyle);\n continue;\n }\n\n var changeProp = false;\n var supportedProp = supportedProperty(prop);\n if (supportedProp && supportedProp !== prop) changeProp = true;\n var changeValue = false;\n var supportedValue$1 = supportedValue(supportedProp, toCssValue(value));\n if (supportedValue$1 && supportedValue$1 !== value) changeValue = true;\n\n if (changeProp || changeValue) {\n if (changeProp) delete style[prop];\n style[supportedProp || prop] = supportedValue$1 || value;\n }\n }\n\n return style;\n }\n\n function onProcessStyle(style, rule) {\n if (rule.type !== 'style') return style;\n return prefixStyle(style);\n }\n\n function onChangeValue(value, prop) {\n return supportedValue(prop, toCssValue(value)) || value;\n }\n\n return {\n onProcessRule: onProcessRule,\n onProcessStyle: onProcessStyle,\n onChangeValue: onChangeValue\n };\n}\n\nexport default jssVendorPrefixer;\n","/**\n * Sort props by length.\n */\nfunction jssPropsSort() {\n var sort = function sort(prop0, prop1) {\n if (prop0.length === prop1.length) {\n return prop0 > prop1 ? 1 : -1;\n }\n\n return prop0.length - prop1.length;\n };\n\n return {\n onProcessStyle: function onProcessStyle(style, rule) {\n if (rule.type !== 'style') return style;\n var newStyle = {};\n var props = Object.keys(style).sort(sort);\n\n for (var i = 0; i < props.length; i++) {\n newStyle[props[i]] = style[props[i]];\n }\n\n return newStyle;\n }\n };\n}\n\nexport default jssPropsSort;\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","import {Check} from '@sparkware/app-utils';\nconst overrideJson = require('json-override');\n\nexport function decodeUriComponentRecursive(url: string): string {\n if(!url) {\n return url\n }\n\n let decodedUrl = decodeURIComponent(url);\n\n while(url !== decodedUrl) {\n url = decodedUrl;\n decodedUrl = decodeURIComponent(url);\n }\n\n return decodedUrl;\n\n}\n\nexport function safeUriEncode(url: string): string {\n if(!url) {\n return url;\n }\n\n try {\n return encodeURI(url);\n } catch (err) {\n console.error(`Failed to URI encode the following string: ${url}`);\n return url;\n }\n\n\n}\n\nfunction encodeUriPropsForObject(obj: any): any {\n let clone = overrideJson({}, obj);\n\n Object.keys(clone).forEach(propName => {\n clone[propName] = encodeUriRecursive(clone[propName]);\n });\n\n return clone;\n}\n\nfunction encodeUriPropsForArray(arr: any): any {\n let clone = [...arr];\n for(let i = 0; i < clone.length; i++) {\n clone[i] = encodeUriRecursive(clone[i]);\n }\n return clone;\n}\n\n\nexport function encodeUriRecursive(value: any): any {\n\n if(Check.isString(value)) {\n return safeUriEncode(value);\n } else if(Check.isObject(value)) {\n return encodeUriPropsForObject(value);\n } else if(Check.isArray(value)) {\n return encodeUriPropsForArray(value);\n } else {\n return value;\n }\n}\n\nexport function joinUrlParts(baseUrl: string, path: string, hash?: string): string {\n let urlBuilder = new URL(baseUrl);\n\n if(path) {\n if (!path.startsWith('/')) {\n path = '/' + path;\n }\n urlBuilder.pathname = (urlBuilder.pathname + path).replace('//', '/');\n }\n\n urlBuilder.hash = hash || '';\n return urlBuilder.href;\n}\n\nexport function addQueryParam(url: string, queryParam: string): string {\n return url?.includes('?') ? (url + '&' + queryParam) : (url + '?' + queryParam);\n}\n\nexport function isAbsolutUrl(url: string): boolean {\n if(url.startsWith('#')) {\n return false;\n }\n\n try {\n new URL(url);\n return true;\n } catch (err) {\n return false;\n }\n}\n\n/** This method should be used to sanitize URLs. This is required in order to pass checkmarx scan.\nFor now it does minimal sanitization, but it can be expanded in the future, according to good practices to prevent security issues**/\nexport function sanitizeUrl(url: string): string {\n return url.toString();\n}","function isObjectAndNotArray(object) {\n return (typeof object === 'object' && !Array.isArray(object));\n}\n\n// 'createNew' defaults to false\nfunction overwriteKeys(baseObject, overrideObject, createNew) {\n if (!baseObject) {\n baseObject = {};\n }\n if (createNew) {\n baseObject = JSON.parse(JSON.stringify(baseObject));\n }\n Object.keys(overrideObject).forEach(function(key) {\n if (isObjectAndNotArray(baseObject[key]) && isObjectAndNotArray(overrideObject[key])) {\n overwriteKeys(baseObject[key], overrideObject[key]);\n }\n else {\n baseObject[key] = overrideObject[key];\n }\n });\n return baseObject;\n}\n\nmodule.exports = overwriteKeys;\n"],"sourceRoot":""}