{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/components/AutoComplete.vue?dc94","webpack:///./src/components/StartupError.vue?cf4c","webpack:///./src/libs/Notifications.js","webpack:///./src/components/MessageListMessageCompact.vue?4e14","webpack:///./src/libs/polyfill/Element.closest.js","webpack:///./src/libs/Logger.js","webpack:///./src/components/utils/TabbedView.vue?4476","webpack:///./src/libs/state/NetworkState.js","webpack:///./src/components/UrlEmbed.vue?bbe1","webpack:///./src/components/startups/CustomServer.vue?2bdd","webpack:///./src/components/Avatar.vue?021a","webpack:///./src/components/utils/InputConfirm.vue?7413","webpack:///./src/components/startups/ZncLogin.vue?0ca9","webpack:///./src/components/utils/IrcInput.vue?3e92","webpack:///./src/thirdparty/kiwiirccom.vue?7d18","webpack:///./src/libs/MessageFormatter.js","webpack:///./src/components/utils/InputPrompt.vue?be59","webpack:///./src/components/Avatar.vue?5de3","webpack:///./src/components/startups/ZncLogin.vue?bc87","webpack:///./src/components/ServerView.vue?320a","webpack:///./src/res/kiwiLoadingLogo.png","webpack:///./src/components/MessageInfo.vue?b1fb","webpack:///./src/components/utils/InputText.vue?d4fa","webpack:///./src/components/NicklistUser.vue?2468","webpack:///./src/components/inputtools/TextStyle.vue?4a34","webpack:///./src/components/App.vue?2df3","webpack:///./src/components/NetworkSettings.vue?5552","webpack:///./src/components/ChannelInvitelist.vue?c75c","webpack:///./src/components/Container.vue?dafa","webpack:///./src/components/utils/InputText.vue?f13d","webpack:///./src/libs/ThemeManager.js","webpack:///./src/components/utils/InputConfirm.vue?900a","webpack:///./src/helpers/Colours.js","webpack:///./src/components/SelfUser.vue?f66b","webpack:///./src/components/MessageList.vue?719c","webpack:///./src/components/MessageListMessageModern.vue?0934","webpack:///./src/components/ServerSelector.vue?3a8e","webpack:///./src/components/MessageList.vue?4207","webpack:///./src/components/ServerView.vue?a991","webpack:///./src/libs/state/BufferState.js","webpack:///./src/components/MessageListMessageInline.vue?d335","webpack:///./src/components/startups/KiwiBnc.vue?a30a","webpack:///./src/components/AwayStatusIndicator.vue?8196","webpack:///./src/libs/BouncerMiddleware.js","webpack:///./src/components/ServerView.vue?2406","webpack:///./src/components/inputtools/Emoji.vue?7914","webpack:///./src/components/MessageInfo.vue?5c1d","webpack:///./src/components/NotConnected.vue?26da","webpack:///./src/components/NicklistUser.vue?04de","webpack:///./src/components/TypingUsersList.vue?e190","webpack:///./src/components/startups/CommonLayout.vue?c656","webpack:///./src/components/App.vue?8a31","webpack:///./src/thirdparty/kiwiirccom.vue?938e","webpack:///./src/components/utils/IrcInput.vue?fdcf","webpack:///./src/components/StateBrowser.vue?b090","webpack:///./src/components/ChannelInfo.vue?a938","webpack:///./src/libs/WindowTitle.js","webpack:///./src/components/StateBrowserUsermenu.vue?40ef","webpack:///./src/libs/AliasRewriter.js","webpack:///./src/components/MessageListMessageInline.vue?ef74","webpack:///./src/components/UserBox.vue?8c8a","webpack:///./src/components/NotConnected.vue?7b97","webpack:///./src/components/SidebarAboutBuffer.vue?37f1","webpack:///./src/components/utils/InputConfirm.vue?fc76","webpack:///./src/components/StartupError.vue?5377","webpack:///./src/components/MessageInfo.vue?edeb","webpack:///./src/libs/GlobalApi.js","webpack:///./src/components/TypingStatusIndicator.vue?e82d","webpack:///./src/components/startups/KiwiBnc.vue?91f0","webpack:///./src/components/startups/ZncLogin.vue?2112","webpack:///./src/components/MediaViewer.vue?4a05","webpack:///./src/components/BufferKey.vue?6d5c","webpack:///./src/components/startups/Personal.vue?3cce","webpack:///./src/components/MessageList.vue?fa35","webpack:///./src/components/MessageListAvatar.vue?2335","webpack:///./src/components/StateBrowser.vue?501d","webpack:///./src/components/ServerSelector.vue?e7da","webpack:///./src/components/StartupError.vue?e52a","webpack:///./src/components/startups/ZncLogin.vue?fbeb","webpack:///./src/components/StateBrowserNetwork.vue?b81e","webpack:///./src/components/startups/CommonLayout.vue?eb03","webpack:///./src/components/TypingUsersList.vue?65cb","webpack:///./src/components/utils/InputPrompt.vue?bac6","webpack:///./src/components/AwayStatusIndicator.vue?0480","webpack:///./src/components/ChannelInfo.vue?88df","webpack:///./src/components/AutoComplete.vue?6857","webpack:///./src/components/ChannelList.vue?b249","webpack:///./src/components/UserBox.vue?33eb","webpack:///./src/libs/batchedAdd.js","webpack:///./src/components/UrlEmbed.vue?9598","webpack:///./src/thirdparty/index.js","webpack:///./src/components/ControlInput.vue?8ded","webpack:///./src/thirdparty/kiwiirccom.vue?fe34","webpack:///./src/components/ServerSelector.vue?9dcb","webpack:///./src/components/StateBrowser.vue?14dd","webpack:///./src/components/ControlInput.vue?efe5","webpack:///./src/components/Avatar.vue?eabd","webpack:///./src/components/LoadingAnimation.vue?74b1","webpack:///./src/components/ContainerHeader.vue?a8e3","webpack:///./src/components/ChannelBanlist.vue?c4b5","webpack:///./src/components/UrlEmbed.vue?9dac","webpack:///./src/components/SidebarState.vue?dea5","webpack:///./src/components/SettingsAdvanced.vue?d0b4","webpack:///./src/components/startups/Personal.vue?7893","webpack:///./src/components/ChannelInfo.vue?6d37","webpack:///./src/main.js","webpack:///./src/res/configTemplates.js","webpack:///./src/components/ChannelInfo.vue?e1a9","webpack:///./src/components/NetworkSettings.vue?2baf","webpack:///./src/components/StateBrowserBuffer.vue?5723","webpack:///./src/components/ChannelBanlist.vue?fc93","webpack:///./src/components/startups/CustomServer.vue?1e5a","webpack:///./src/components/ServerSelector.vue?2148","webpack:///./src/helpers/TextFormatting.js","webpack:///./src/components/BufferSettings.vue?1bba","webpack:///./src/components/inputtools/TextStyle.vue?2c74","webpack:///./src/libs/IrcClient.js","webpack:///./src/components/MessageListMessageModern.vue?71b5","webpack:///./src/components/AppSettings.vue?3a4f","webpack:///./src/components/Sidebar.vue?780a","webpack:///./src/components/utils/InputText.vue?ef0a","webpack:///./src/components/StartupError.vue?f239","webpack:///./src/components/NotConnected.vue?a936","webpack:///./src/thirdparty/kiwiirccom.vue?f443","webpack:///./src/components/App.vue?6f48","webpack:///./src/res/autocompleteCommands.js","webpack:///./src/libs/StatePersistence.js","webpack:///./src/components/ServerSelector.vue?bcc9","webpack:///./src/components/Captcha.vue?9c06","webpack:///./src/components/utils/IrcInput.vue?d4d7","webpack:///./src/components/StateBrowser.vue?8c18","webpack:///./src/components/startups/CommonLayout.vue?b4ed","webpack:///./src/components/LoadingAnimation.vue?a8d8","webpack:///./src/components/MessageList.vue?f49e","webpack:///./src/components/Nicklist.vue?bd98","webpack:///./src/components/ChannelList.vue?ad55","webpack:///./src/components/ContainerHeader.vue?4434","webpack:///./src/components/AppSettings.vue?a7b2","webpack:///./src/components/TypingUsersList.vue?f591","webpack:///./src/components/StateBrowserUsermenu.vue?d1b2","webpack:///./src/thirdparty/kiwiirccom.vue?10df","webpack:///./src/components/UrlEmbed.vue?5549","webpack:///./src/components/ChannelList.vue?75c6","webpack:///./src/libs/storage/Local.js","webpack:///./src/components/LoadingAnimation.vue?6d68","webpack:///./src/components/AwayStatusIndicator.vue?0773","webpack:///./src/helpers/IrcdDiffs.js","webpack:///./src/components/utils/IrcInput.vue?d746","webpack:///./src/components/MessageList.vue?5e4c","webpack:///./src/components/BufferKey.vue?dd80","webpack:///./src/components/App.vue?0284","webpack:///./src/components/TypingStatusIndicator.vue?66af","webpack:///./src/components/MessageListAvatar.vue","webpack:///./src/components/utils/InputPrompt.vue?4c2e","webpack:///./src/components/utils/InputConfirm.vue?069e","webpack:///./src/components/startups/Welcome.vue?957b","webpack:///./src/components/AppSettings.vue?372f","webpack:///./src/libs/ConfigLoader.js","webpack:///./src/components/AutoComplete.vue?ceb9","webpack:///./src/components/utils/TabbedView.vue?9de9","webpack:///./src/components/StateBrowserUsermenu.vue?81c2","webpack:///./src/components/startups/Welcome.vue?8754","webpack:///./src/components/startups/CustomServer.vue?1104","webpack:///./src/components/utils/InputText.vue?6cfe","webpack:///./src/components/MessageListAvatar.vue?39f9","webpack:///./src/components/AppSettings.vue?8116","webpack:///./src/components/utils/TabbedView.vue?8ac1","webpack:///./src/components/ChannelList.vue?c4fc","webpack:///./src/components/StateBrowserBuffer.vue?e5d7","webpack:///./src/components/TypingUsersList.vue?5fa8","webpack:///./src/components/NicklistUser.vue?de0f","webpack:///./src/components/Sidebar.vue?b709","webpack:///./src/components/SelfUser.vue?c9d9","webpack:///./src/helpers/Misc.js","webpack:///./src/libs/NetworkProvider.js","webpack:///./src/libs/IPC.js","webpack:///./src/components/SidebarAboutBuffer.vue?ef7f","webpack:///./src/components/StateBrowserNetwork.vue?bea4","webpack:///./src/components/Container.vue?ddfe","webpack:///./src/components/MessageInfo.vue?b223","webpack:///./src/components/NetworkSettings.vue?14e1","webpack:///./src/components/Container.vue?e50e","webpack:///./src/components/SidebarState.vue","webpack:///./src/components/utils/TabbedView.vue?04ef","webpack:///./src/components/inputtools/TextStyle.vue?3e37","webpack:///./src/components/SidebarAboutBuffer.vue?2912","webpack:///./src/components/NetworkSettings.vue?6e49","webpack:///./src/components/Captcha.vue?1619","webpack:///./src/components/UrlEmbed.vue?9dd5","webpack:///./src/components/inputtools/Emoji.vue?c0df","webpack:///./src/components/ChannelBanlist.vue?27e7","webpack:///./src/libs/bufferTools.js","webpack:///./src/components/startups/ZncLogin.vue?1169","webpack:///./src/components/ChannelInvitelist.vue?5b3d","webpack:///./src/components/ControlInput.vue?e8c8","webpack:///./src/components/startups/KiwiBnc.vue?7a09","webpack:///./src/libs/renderers/Html.js","webpack:///./src/libs/settingTools.js","webpack:///./src/components/AutoComplete.vue?8da5","webpack:///./src/components/NotConnected.vue?2426","webpack:///./src/components/MessageListMessageCompact.vue?ae43","webpack:///./src/components/SettingsAdvanced.vue?ffa2","webpack:///./src/components/TypingStatusIndicator.vue?ba3e","webpack:///./src/components/SidebarAboutBuffer.vue?a32d","webpack:///./src/components/utils/TabbedView.vue?d254","webpack:///./src/libs/ChathistoryMiddleware.js","webpack:///./src/components/SidebarAboutBuffer.vue?2808","webpack:///./src/components/MessageInfo.vue?2118","webpack:///./src/components/Avatar.vue?d1bd","webpack:///./src/components/SelfUser.vue?a94a","webpack:///./src/components/MessageListMessageModern.vue?f965","webpack:///./src/components/utils/InputPrompt.vue?60ce","webpack:///./src/components/startups/Personal.vue?dc99","webpack:///./src/components/MessageListMessageCompact.vue?aeb3","webpack:///./src/components/UserBox.vue?6ce0","webpack:///./src/components/MediaViewer.vue?acb6","webpack:///./src/components/utils/InputConfirm.vue?667d","webpack:///./src/components/BufferKey.vue?fdc1","webpack:///./src/components/SettingsAliases.vue?da04","webpack:///./src/components/MediaViewer.vue?0b7d","webpack:///./src/components/MediaViewer.vue?6df6","webpack:///./src/components/SettingsAliases.vue?18b7","webpack:///./src/components/utils/InputPrompt.vue?e19e","webpack:///./src/components/Nicklist.vue?f797","webpack:///./src/components/SettingsAdvanced.vue?9cb0","webpack:///./src/components/startups/Welcome.vue?1820","webpack:///./src/components/ControlInput.vue?a75e","webpack:///./src/libs/state/UserState.js","webpack:///./src/components/startups/CustomServer.vue?d1f0","webpack:///./src/components/startups/Personal.vue?8c27","webpack:///./src/components/StateBrowserNetwork.vue?00f6","webpack:///./src/components/startups/CommonLayout.vue?978b","webpack:///./src/components/ChannelInvitelist.vue?1913","webpack:///./src/components/ServerView.vue?d132","webpack:///./src/libs/BouncerProvider.js","webpack:///./src/components/BufferSettings.vue?a9b7","webpack:///./src/components/SidebarState.vue?0e21","webpack:///./src/components/inputtools/TextStyle.vue?6d51","webpack:///./src/libs/Message.js","webpack:///./src/components/MessageListMessageModern.vue?a7a1","webpack:///./src/components/ChannelBanlist.vue?2f2a","webpack:///./src/components/MessageListMessageInline.vue?6760","webpack:///./src/libs/state/common.js","webpack:///./src/components/Nicklist.vue?0081","webpack:///./src/components/SelfUser.vue?50cf","webpack:///./src/libs/SoundBleep.js","webpack:///./src/components/NicklistUser.vue?fe74","webpack:///./src/components/MessageListMessageInline.vue?3a80","webpack:///./src/components/inputtools/Emoji.vue?e1e5","webpack:///./src/components/LoadingAnimation.vue?cfb2","webpack:///./src/components/SettingsAliases.vue?f706","webpack:///./src/components/SettingsAdvanced.vue?f320","webpack:///./src/components/StateBrowserBuffer.vue","webpack:///./src/components/MessageListMessageInline.vue?4ac5","webpack:///./src/components/MessageListMessageCompact.vue?e90d","webpack:///./src/components/startups/KiwiBnc.vue?de6f","webpack:///./src/components/ChannelList.vue?978b","webpack:///./src/components/MessageListMessageModern.vue?6a9b","webpack:///./src/components/ChannelInfo.vue?fa2f","webpack:///./src/components/Nicklist.vue?b4f8","webpack:///./src/components/MediaViewer.vue?7a2e","webpack:///./src/components/startups/KiwiBnc.vue?bc43","webpack:///./src/components/Container.vue?3c20","webpack:///./src/components/startups/CustomServer.vue?14e7","webpack:///./src/components/TypingUsersList.vue?79fc","webpack:///./src/components/ControlInput.vue?7f8f","webpack:///./src/components/AwayStatusIndicator.vue?a3e7","webpack:///./src/components/ContainerHeader.vue?64d0","webpack:///./src/thirdparty/about.html","webpack:///./src/components/ServerView.vue?9642","webpack:///./src/components/startups/Welcome.vue?f844","webpack:///./src/components/StateBrowser.vue?08b7","webpack:///./src/components/inputtools/TextStyle.vue?8108","webpack:///./src/components/UserBox.vue?6a29","webpack:///./src/components/SettingsAdvanced.vue?5c86","webpack:///./src/components/LoadingAnimation.vue?bc88","webpack:///./src/components/utils/IrcInput.vue?2711","webpack:///./src/components/AwayStatusIndicator.vue?c490","webpack:///./src/components/NetworkSettings.vue?b367","webpack:///./src/components/BufferKey.vue?b621","webpack:///./src/components/SelfUser.vue?d5d2","webpack:///./src/components/ChannelBanlist.vue?2ec2","webpack:///./src/components/Sidebar.vue?274a","webpack:///./src/components/startups/Welcome.vue?410d","webpack:///./src/components/Avatar.vue?21c4","webpack:///./src/libs/AudioManager.js","webpack:///./src/components/inputtools/Emoji.vue?c1e1","webpack:///./src/libs/InputHandler.js","webpack:///./src/components/TypingStatusIndicator.vue","webpack:///./src/components/AppSettings.vue?5d41","webpack:///./src/libs/MessageParser.js","webpack:///./src/components/ChannelInvitelist.vue?2bef","webpack:///./src/components/Sidebar.vue?f2eb","webpack:///./src/components/Captcha.vue","webpack:///./src/components/Container.vue?71da","webpack:///./src/components/MessageListMessageCompact.vue?e34c","webpack:///./src/components/Sidebar.vue?44fc","webpack:///./src/components/SettingsAliases.vue?dc98","webpack:///./src/components/UserBox.vue?1ed9","webpack:///./src/components/StateBrowserBuffer.vue?f53b","webpack:///./src/components/StateBrowserNetwork.vue?7863","webpack:///./src/components/BufferSettings.vue?76c7","webpack:///./src/components/BufferSettings.vue?0382","webpack:///./src/libs/TypingMiddleware.js","webpack:///./src/components/BufferKey.vue?8aa2","webpack:///./src/components/NotConnected.vue?e36a","webpack:///./src/components/SettingsAliases.vue?0520","webpack:///./src/components/ContainerHeader.vue?087a","webpack:///./src/components/Captcha.vue?3831","webpack:///./src/components/utils/InputText.vue?3821","webpack:///./src/components/inputtools/Emoji.vue?6055","webpack:///./src/libs/state.js","webpack:///./src/components/StartupError.vue?3dd3","webpack:///./src/components/ChannelInvitelist.vue?18e7","webpack:///./src/components/StateBrowserUsermenu.vue?698d","webpack:///./src/components/App.vue?10ef","webpack:///./src/components/startups/CommonLayout.vue?e37b","webpack:///./src/components/StateBrowserUsermenu.vue?c34c","webpack:///./src/components/AutoComplete.vue?9406","webpack:///./src/components/startups/Personal.vue?2d70","webpack:///./src/components/NicklistUser.vue?b449","webpack:///./src/components/ContainerHeader.vue?0714","webpack:///./src/libs/ServerConnection.js","webpack:///./src/components/MessageListAvatar.vue?9d90","webpack:///./src/components/BufferSettings.vue?a8ea","webpack:///./src/components/Nicklist.vue?fe55","webpack:///./src/components/StateBrowserNetwork.vue?3a5e"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","window","oldJsonpFunction","slice","component","_Object$defineProperty","_interopRequireDefault","requestPermission","show","listenForNewMessages","_setTimeout2","_bind","_assign","_lodash","isEnabled","state","Notification","permission","$emit","title","body","opts","_context","notify","icon","ttl","default","close","throttledShow","throttle","$on","message","_opts","onclick","notification","_kiwi_exports","libs","Notifications","Element","matches","msMatchesSelector","webkitMatchesSelector","closest","el","this","parentElement","parentNode","nodeType","_concat","defaultLogger","makeLogger","_default","label","rootLogger","logger","info","arguments","logLevel","compareLevel","level","LEVEL_DEBUG","LEVEL_INFO","LEVEL_ERROR","debug","_window$console","_len","args","Array","_key","concat","console","log","_window$console2","_context2","_len2","_key2","error","_window$console3","_context3","_len3","_key3","assert","condition","_context4","_len4","_key4","setLevel","newLevel","namespace","newLabel","_context5","Logger","_typeof","_WeakMap","_Object$getOwnPropertyDescriptor","_create","_indexOf","_setImmediate2","_classCallCheck2","_createClass2","_vue","_common","IrcClient","_interopRequireWildcard","_getRequireWildcardCache","nodeInterop","cacheBabelInterop","cacheNodeInterop","obj","cache","has","newObj","hasPropertyDescriptor","desc","set","NetworkState","id","appState","userDict","bufferDict","_this","editable_name","state_error","last_error","auto_commands","is_znc","is_bnc","hidden","channel_list","channel_list_state","ircd","connection","server","port","tls","path","password","direct","encoding","bncnetid","nick","settings","show_raw_caps","username","gecos","away","observable","def","newVal","$set","networks","frameworkClient","_this$ircClient","ircClient","connect","getBufferByName","val","input","chanPrefixes","network","supports","tabName","_this2","setActiveBuffer","serverBuffer","buffers","getBuffersWithUser","buffer","isUserAnOp","user","getUser","hasWhois","operator","methods","props","avatar","firstNickLetter","hasAvatar","small","large","isDefault","colour","avatarStyle","style","url","size","getColour","String","components","Avatar","render","_vm","_h","$createElement","_c","_self","ref","staticClass","scopedSlots","_u","fn","staticStyle","proxy","on","$event","preventDefault","formSubmit","domProps","_s","greetingText","_v","readableStateError","_e","attrs","$t","model","callback","$$v","expression","znc_network","readyToStart","buttonText","staticRenderFns","parse","createNewBlock","_forEach","_keys","_parseInt2","tokens","inp","block","blocks","openTokens","pos","len","tok","findTokenAtPosition","extras","extra","content","containsContent","newBlock","styles","newPos","token","substr","undefined","type","meta","prevBlock","openToks","underline","bold","remainingText","nextPos","italic","quote","str","endPos","k","colours","0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","colourMatchRegexp","match","exec","fgColour","bgColour","color","background","MessageFormatter","display","prompt","_t","complete","directives","rawName","indexOf","_k","keyCode","cancel","target","composing","hideCancel","_GlobalApi","_MessageList","_NetworkSettings","_ChannelList","MessageList","NetworkSettings","ChannelList","pluginUiElements","singleton","serverViewPlugins","computed","hasMessages","getMessages","restrictedServer","$state","setting","networkConnected","watch","$nextTick","$refs","tabs","a","created","listen","showTab","setActiveByName","tabChanged","show_input","ServerView","stopPropagation","mentioned_urls","_l","urlPreview","class","requestingInput","openQuery","areWeAnOp","isSelf","onKick","onBan","Vue","plainTextEnabled","inputIdCache","inputId","Math","floor","random","toString","currentValue","updateValue","newValue","isEdgeBrowser","navigator","appVersion","utils","InputText","nicklist","userMode","ignore","toLowerCase","openUserbox","shouldShowAvatars","injections","tag","AwayStatusIndicator","userModePrefix","userColour","TypingStatusIndicator","showPlainText","isArray","_i","$$a","$$el","$$c","checked","$$i","_q","$slots","_trim","_find","_now","createdInstance","ThemeManager","listenForIrcEvents","varsEl","varName","document","querySelector","getComputedStyle","v","getPropertyValue","themes","currentThemeName","theme","isMatch","theTheme","availableThemes","currentTheme","replace","instance","event","ctcpType","reload","parts","split","qs","connoteCss","yes","no","hex2rgb","rgb2hex","rgb2hsl","hsl2rgb","rgb2rgbString","_map","_slice","_hex","shorthandRegex","hex","g","b","rgb","join","max","min","h","hsl","hue2rgb","_p","q","round","helpers","Colours","_splice","_filter","_flags","_reduce","_some","_includes","_batchedAdd","bufferTools","nextBufferId","BufferState","networkid","messageDict","topics","joined","enabled","created_at","users","modes","flags","unread","has_opened","channel_badkey","chathistory_available","requested_modes","requested_banlist","is_requesting_chathistory","last_read","active_timeout","message_count","current_input","input_history","input_history_pos","latest_messages","chathistory_request_count","messagesObj","messages","messageIds","onNetworkConnecting","getNetwork","onNetworkMotd","isQuery","requestLatestScrollback","onBufferClose","$off","onNetworkConnectingBound","onBufferCloseBound","onNetworkMotdBound","createMessageBatch","createUserBatch","isChannel","maybeStartWhoLoop","chathistory","isSupported","bufMessages","startTime","endTime","server_time","ircNetwork","options","CHANTYPES","isSpecial","isServer","userBufferInfo","opModes","hasOp","netPrefixes","PREFIX","prefix","symbol","newName","oldName","setActive","getActiveBuffer","bufferMessages","_direction","direction","time","chathistoryFuncName","lastMessage","earliest","current","ignoreTypes","validType","Date","Error","firstMessage","latest","flag","existingMessageIds","then","hasNewMessages","commands","msg","tags","msgid","finally","_this3","before","delayed","clearTimeout","_context6","markAsRead","allowedUpdate","bnc","bufferSeen","flagName","addUserBatch","nickLower","_context7","hasMode","currentUser","userObj","pull","queue","$delete","_context8","_this4","each","addMessageBatch","_context9","_this5","isNewer","instance_num","unshift","newMessage","addMessage","fnNames","privmsg","action","notice","fnName","reason","part","networkState","historySupport","messagesInBatchQueue","getLoadingState","bufferState","addSingleUser","u","addMultipleUsers","clone","addSingleMessage","updateLatestMessages","isMessageTrimming","trimMessages","orderedMessages","inPlace","noFilter","addMultipleMessages","newMessages","_context10","toAdd","scrollbackSize","_context11","removed","nextLoop","on001","command","eventNetwork","updateWhoStatusLoop","bufferByName","whoLoop","isJoined","hasAwayNotify","cap","who","_state","toggleSelfAway","isUserSelf","isAway","raw","toggle","shouldShowStatus","awayNotifyEnabled","Boolean","bouncerMiddleware","_promise","_ircFramework","Misc","client","rawEvents","parsedEvents","requestCap","addFunctionsToClient","use","theMiddleware","rawLine","next","params","command_handler","emit","MessageTags","decode","networkId","host","connected","currentNick","account","account_password","netId","detectedBuffers","_netId","_tags","topic","seen","netName","eventObj","_netId2","_netName","_eventObj","hasNetwork","getNetworks","resolve","reject","once","getBuffers","closeBuffer","bufferName","seenTime","timeStr","dateIso","addNetwork","tagString","createTagString","onOk","off","onError","removeNetwork","saveNetwork","tagParts","BouncerMiddleware","text","eCode","location","onImgClick","connecting","shouldShowLoading","reconnect","channel","showNetworkSettings","closing","backgroundStyle","startupOptions","infoBackground","backgroundImage","infoContent","startApp","$el","removeEventListener","persistence","watchStateForChanges","$parent","addEventListener","startups","CommonLayout","stateBrowserDrawOpen","ui","is_touch","emitDocumentClick","emitBufferPaste","themeUrl","hasStarted","fallbackComponent","startupComponent","startUp","sidebarState","activeComponent","mediaviewerUrl","mediaviewerComponent","mediaviewerComponentProps","mediaviewerIframe","source","_b","activeComponentProps","fallbackComponentProps","_regenerator","_asyncToGenerator2","TextFormatting","_about","firstRun","ctor","about_open","aboutContent","showServerBuffer","toggleStateBrowser","init","mark","_callee","wrap","prev","constructor","stop","_created","_callee2","getStartups","kiwiirccom","thirdparty","modifiers","showPrevTopics","topicText","idx","trim","modeM","modeI","modeT","modeN","modeK","_setInterval2","WindowTitle","windowTitle","alert","updateTitle","$watch","alertTmr","stopAlert","enable","startAlert","clearInterval","newTitle","_AwayStatusIndicator","_Avatar","is_usermenu_open","networkName","isConnected","clickForget","confirmed","confirm","forgetState","StateBrowserUsermenu","AliasRewriter","recursiveDepth","depth","aliases","line","spaceSep","substring","actions","vars","aliasLen","words","alias","currentAliasWord","currentAliasWordLen","processedConditionals","compiled","checkVar","num","firstWord","processInput","process","_MediaViewer","_MessageInfo","displayNick","suffix","ml","inject","MessageInfo","MediaViewer","Number","_sort","_Html","_MessageParser","pluginUiSections","aboutBufferPlugins","closedSections","formattedTopic","highlights","isHighlight","html","toggleSection","section","SidebarAboutBuffer","StartupError","_construct","_toConsumableArray2","_inherits2","_possibleConstructorReturn2","_getPrototypeOf2","_eventemitter","_json","_compareVersions","_Logger","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","Super","NewTarget","Reflect","sham","Proxy","valueOf","e","singletonInstance","pluginsToInit","nextPluginId","GlobalApi","_EventEmitter","_super","version","JSON5","controlInputPlugins","stateBrowserPlugins","channelHeaderPlugins","queryHeaderPlugins","sideBarPlugins","appSettingsPlugins","isReady","initPlugins","pluginName","plugin","initPlugin","pluginLogger","err","stack","modPath","mod","stateEmit","thisEmit","themeManager","element","extend","tab","dest","require","replaceObjectProps","_CommonLayout","StartupLayout","loading","statusMessage","greeting","_startUp","bncnet","cleanUpEvents","onRegistered","onClose","getBncNetwork","_ref","bncNetworks","sent","t0","addNetworkToState","monitorNetworkChanges","layout","active","net","bncname","newBuffer","addBuffer","getTime","bncNet","existingNets","rememberNetworks","saveState","bncName","debouncedSaveState","debounce","deep","networkFromBnc","currentNum","existingNet","KiwiBnc","network_extras","showNetwork","showPass","showUser","show_password_box","hash","autoConnect","networkErrorMessage","netList","compact","onClosed","extraNet","ZncLogin","_strftime","_BufferKey","_MessageListMessageCompact","_MessageListMessageModern","_MessageListMessageInline","_LoadingAnimation","BOTTOM_SCROLL_MARGIN","BufferKey","MessageListMessageModern","MessageListMessageCompact","MessageListMessageInline","LoadingAnimation","smooth_scroll","auto_scroll","force_smooth_scroll","chathistoryAvailable","hover_nick","message_info_open","timeToClose","startClosing","selectedMessages","thisMl","listType","useExtraFormatting","shouldShowChathistoryTools","isCorrectBufferType","shouldRequestChannelKey","ourNick","filteredMessagesGroupedDay","days","lastDay","filteredMessages","day","dayNum","shouldShowJoiningLoader","checkScrollingState","maybeScrollToBottom","oldBuffer","scrollToBottom","mounted","addCopyListeners","opt","maybeScrollToId","isHoveringOverMessage","toggleMessageInfo","canShowInfoForMessage","sel","getSelection","rangeCount","range","getRangeAt","collapsed","shouldShowUnreadMarker","previous","lastRead","shouldShowDateChangeMarker","getDay","showInfoForTypes","bufferSetting","formatTime","formatTimeFull","format","toLocaleString","formatMessage","toHtml","isMessageHighlight","openUserBox","onListClick","onMessageDblClick","messageClickTmr","dataNick","getAttribute","userByName","onMessageClick","delay","isLink","tagName","channelName","userNick","embed","payload","nodeName","scrolledUpByPx","scrollHeight","offsetHeight","scrollTop","onListResize","messageElement","offsetTop","getSelectedMessages","messageEls","querySelectorAll","selectedMessageEls","intersectsNode","restrictTextSelection","classList","add","userSelect","unrestrictTextSelection","remove","removeSelections","removeNative","selection","removeAllRanges","LogFormatter","toLocaleTimeString","hour","minute","second","copyData","selecting","selectionChangeOff","contains","onSelectionChange","anchorNode","className","selectedMesssageEls","dataset","messageId","clipboard","writeText","createElement","appendChild","innerHTML","select","execCommand","removeChild","openEmbedInPreview","MessageListAvatar","clickAppSettings","keys","provided_networks","show_provided_networks","pNets","pNetTypeName","pNet","connectProvidedNetwork","isRestrictedServer","clickAddNetwork","presetServer","usePreset","presetNetworks","$$selectedVal","filter","selected","map","_value","multiple","toUri","showCustom","toggleTls","noprompt","focus","InputPrompt","ipRegex","IrcdDiffs","whoisRequested","whoisLoading","availableChannelModes","availableModes","prefixes","knownPrefix","isAChannelModeAdmin","isQChannelModeOwner","supportsHalfOp","description","realname","formattedRealname","isUserOnBuffer","oldVal","changes","targets","userChannels","channels","linkifyChannels","userModeOnThisBuffer","is_narrow","onChannelsClick","updateWhoisData","whois","kickUser","createBanMask","extban","extbanAccount","ipTest","RegExp","v4","v6","test","hexTest","_match","mask","banUser","banMask","kickbanUser","UserBox","batchedAdd","singleFn","batchedFn","numInsertsSec","inTick","numInLastSec","queueLoopTmr","loopInterval","checkSecRateTmr","queueLoop","maybeStartLoop","resetAddCounter","batchFn","item","embedlyTagIncluded","debouncedUpdateEmbed","updateEmbed","checkEmbedlyAndShowCard","embedly","embedlyLink","showPin","maxHeight","head","getElementsByTagName","script","embedlyUrl","getSetting","src","UrlEmbed","selfuser_open","has_focus","toggleSelfUser","submitForm","maybeHidePlugins","autocomplete_items","autocomplete_filter","onAutocompleteTemp","onAutocompleteSelected","onAutocompleteCancel","inputUpdate","inputKeyDown","inputKeyUp","closeInputTool","showPlugins","onToolClickTextStyle","onToolClickEmoji","controlinput","self","active_tool","active_tool_props","_m","_BufferSettings","_ChannelInfo","_ChannelBanlist","BufferSettings","ChannelInfo","ChannelBanlist","pluginUiChannelElements","pluginUiQueryElements","prompts","closeChannel","sidebarSection","userOnline","showPrompt","onConnectButtonClick","toggleUser","joinCurrentBuffer","closeCurrentBuffer","removeBuffer","onHeaderClick","ContainerHeader","updateBanlist","banlist","ban","banned","banned_by","banned_at","toDateString","removeBan","_BouncerProvider","_IPC","hasOtherTab","addedNetworkToExisting","readyToShowOptions","hasFragment","parseFragment","findOtherTabs","listenForOtherTabs","send","addEmptyNetwork","abrupt","handleIPCMessage","timer","removeListener","addNetworkToExistingTab","con","temporary","storageKey","getNetworkFromAddress","fragment","uriCheck","decodeURIComponent","connections","parseIrcUri","persistSetting","controllerNet","bouncer","remember_buffers","includeBuffers","setSetting","Personal","_typeof3","_typeof2","_setInterval3","_setTimeout3","_symbol","_i18next","_i18nextXhrBackend","_vueI18next","_vueVirtualScroller","_available","_enUs","_App","_StartupError","_ConfigLoader","_ThemeManager","_InputHandler","_StatePersistence","Storage","_AudioManager","_SoundBleep","_WindowTitle","_configTemplates","logLevelMatch","href","api","kiwi","getQueryVariable","variable","query","search","pair","mixin","beforeDestroy","listeningEvents","listenOnce","_fn","onceFn","$once","timerEvents","tmr","setInterval","_setInterval","setTimeout","_setTimeout","directive","binding","rawEl","bindings","inserted","ROSymbol","loadApp","configFile","configObj","kiwiConfig","showError","configContents","parseErr","configLoader","addValueReplacement","protocol","hostname","referrer","loadFromObj","loadFromUrl","applyConfig","initState","initInputCommands","initLocales","initThemes","loadPlugins","initSound","catch","config","dedotObject","configTemplates","template","applyConfigObj","plugins","pluginIdx","loadNextScript","sSrc","fOnload","scr","onerror","onload","fetch","response","pluginRaw","scripts","limitedScr","i18n","whitelist","locales","fallbackLng","lowerCaseLng","backend","loadPath","crossDomain","withCredentials","interpolation","escapeValue","addResourceBundle","$i18n","i18next","i18nLoadedAt","lng","setDefaultLanguage","defaultLang","preferredLangs","languages","changeLanguage","lang","_initState","stateKey","persistLog","persist","state_key","loadStateIfExists","setState","themeMgr","setThemeManager","argTheme","setTheme","sound","SoundBleep","bleep","AudioManager","watchForMessages","cb","ResizeObserver","observe","unbind","unobserve","useMonospace","language","restricted","startupScreen","kiwiServer","warnOnExit","quitMessage","messageLayout","alert_on","timestamp_format","timestamp_full_format","show_timestamps","scrollback_size","show_hostnames","show_joinparts","show_topics","show_nick_changes","show_mode_changes","show_presence_changes","traffic_as_activity","coloured_nicklist","colour_nicknames_in_messages","block_pms","show_emoticons","extra_formatting","mute_sound","hide_message_counts","show_realnames","default_ban_mask","default_kick_reason","shared_input","show_message_info","who_loop","share_typing","flash_title","nicklist_avatars","show_link_previews","inline_link_auto_previews","inline_link_auto_preview_whitelist","show_buffer_groups","nick_format","autoReconnect","disconnectOnSaslFail","allowRegisterProtocolHandler","noticeActiveBuffer","nicklistGroupAway","showChanlistModes","showAutocomplete","showEmojiPicker","showColorPicker","showSendButton","showAwayStatusIndicators","sidebarDefault","showRaw","useBufferHistory","hideSettings","teamHighlights","Key","emojis","emojiLocation","textFormats","user_full","channel_join","channel_part","channel_quit","channel_kicked","channel_selfkick","channel_badpassword","channel_topic","channel_banned","channel_inviteonly","channel_alreadyin","channel_limitreached","channel_invalid_name","channel_topic_setby","channel_has_been_invited","server_connecting","server_connecting_error","selfmode","nickname_alreadyinuse","network_disconnected","network_connected","whois_channels","whois_idle_and_signon","whois_away","whois_server","whois_idle","whois_notfound","nick_changed","applet_notfound","encoding_changed","encoding_invalid","settings_saved","ignore_title","ignore_none","ignore_nick","ignore_stop_notice","ignore_stopped","chanop_privs_needed","no_such_nick","unknown_command","motd","ctcp_response","ctcp_request","whois_ident","whois_error","whowas_ident","whowas_server","whowas_error","quit","rejoin","set_setting","list_aliases","ignored_pattern","wallops","message_nick","general_error","irc","team","_isNan","_url","_Captcha","_ServerSelector","ServerSelector","Captcha","server_type","znc_username","znc_password","show_advanced","switch_tabs_on_connect","network_list","settingShowRaw","directWs","addr","setZncPass","isZnc","newPass","isActiveBuffer","awayNotifySupported","showMessageCounts","highlight","_default2","networkList","willEmit","parsePresetServer","importUris","serverList","servers","createNickColour","toInt","hexVal","mapRange","formatAndT","formatUser","formatUserFull","formatText","formatDuration","formatNumber","channelRegex","urlRegex","_parseFloat2","murmurhash3","word","mLead","mPrefix","mChannel","mSuffix","chan","escape","lead","link","themeMngr","nickNum","x86","hash32","bucketSize","themeVar","hueOffset","abs","int","index","vMin","vMax","dMin","dMax","vValue","vRange","dRange","formatId","formatParams","localeId","localeParams","fNick","fUsername","fHost","ident","ret","timeSeconds","seconds","weeks","hours","minutes","tmp","count","settingAlertOn","settingMuteSound","settingHideMessageCount","_Object$defineProperty2","_Object$getOwnPropertyDescriptor2","_slicedToArray2","_defineProperty2","_entries","_getOwnPropertySymbols","_getOwnPropertyDescriptor","_getOwnPropertyDescriptors","_defineProperties","_defineProperty3","_TypingMiddleware","_ChathistoryMiddleware","ServerConnection","ownKeys","enumerableOnly","symbols","sym","_objectSpread","_context27","_context28","Client","enable_chghost","enable_setname","message_max_length","clientMiddleware","originalIrcClientConnect","auto_reconnect","configOptions","transport","createChannelConstructor","originalIrcClientRaw","Message","rawString","ircLineParser","handled","getOrAddBufferByName","from_server","typingStatus","status","isRegistered","parsedEventsHandler","rawEventsHandler","last_error_numeric","clearUsers","param","end","ircEventObj","eventTime","timeToLocal","serverTime","from","redirect_to","to","addUser","numConnects","targetNick","_buffer","containsNick","isChannelMessage","isChannelName","channelBuffer","_buffer2","clearMessageRange","isPrivateMessage","batch","existingBuffer","activeBuffer","hasActiveBuffer","PM_BLOCK_BLOCKED","PM_BLOCK_REQUIRES_CHECK","pmBlock","isNickExemptFromPmBlocks","blockNewPms","_buffer3","textFormatType","messageBody","_message","awaitingWhois","pendingPms","whoisData","pm","_buffer4","_messageBody","rename","_buffer5","addUserToBuffer","_messageBody2","type_extra","_buffer6","removeUserFromBuffer","kicked","_messageBody3","chanop","_buffer7","remainingBuffers","removeUser","_nick","_messageBody4","_buffer8","real_name","prop","_buffer9","_buffer10","usersTransaction","_context12","eventUser","_context13","channel_modes","channel_list_cache","_context14","filteredEvent","_buffer11","_messageBody5","registered","_context15","newNick","rand","_messageBody6","newnick","changeNick","_buffer12","new_nick","changeUserNick","_messageBody7","_buffers","_context16","_context17","_buffer13","hadExistingUsers","addMultipleUsersToBuffer","correctBuffer","_context18","_ref2","paramName","_buffer14","_context19","modeStrs","adding","modeChar","tFormat","timeCreated","_buffer15","_modeStrs","_context20","_user","modeIdx","_adding","modeLocaleIds","modeLocaleDataBuilders","builders","localeDataFn","localeData","localeKey","_context21","modeslines","_context22","_context23","_serverBuffer","_buffer16","bans","banText","_context24","_context25","dateStr","_context26","_buffer17","_messageBody8","_buffer18","help","_buffer19","textFormatId","_messageBody9","ctcpResponse","_messageBody10","_buffer20","_buffer21","_messageBody11","res","autocompleteCommands","_stringify","StatePersistence","storage","isPersisting","watcher","_loadStateIfExists","storedState","importState","exportState","watchVals","buffersVals","_forgetState","resetState","recaptchaUrl","recaptchaSiteId","recaptchaResponse","showCaptcha","loadRecaptcha","recaptchaLoaded","grecaptcha","captchacontainer","sitekey","recaptchaSuccess","recaptchaExpired","defer","placeholder","updateValueProps","onTextInput","onPaste","onFocus","currentTarget","requestScrollback","filter_visible","toggleUserFilter","sortedUsers","onFilterBlur","user_filter","list","isLoading","maybeUpdateList","prevPage","page","maxPages","nextPage","noResults","last_updated","num_users","joinChannel","formatAndTrimTopic","_localesList","_SettingsAliases","_SettingsAdvanced","bindSetting","settingName","SettingsAliases","SettingsAdvanced","customThemeUrl","localesList","themeSupportsMonospace","canRegisterProtocolHandler","registerProtocolHandler","timestamps_24h","newFormat","settingShowAutoComplete","settingUseMonospace","settingHighlights","settingBufferColourNicknames","settingBufferShowTimestamps","settingBufferShowEmoticons","settingBufferBlockPms","settingBufferScrollbackSize","settingBufferExtraFormatting","settingBufferTrafficAsActivity","settingBufferMuteSound","settingBufferShareTyping","settingBufferInlineLinkPreviews","settingDefaultBanMask","settingDefaultKickReason","settingAdvancedEnable","show_advanced_tab","settingLanguage","messageLayouts","traditional","modern","inline","settingMessageLayout","invert","listenForThemeSettings","closeSettings","refreshTheme","watches","updateFn","watchTheme","watchCustomThemeUrl","setCustomThemeUrl","teardownFn","unwatchFn","enableAdvancedTab","makeDefaultProtocolHandler","origin","pathname","AppSettings","supportedCached","localStorage","getItem","setItem","storageAvailable","x","removeItem","DOMException","code","logo","Y","fontSize","font","animationFrame","destroying","getContext","tmpText","width","height","draw","cancelAnimationFrame","clearRect","globalCompositeOperation","drawImage","fillStyle","fillText","globalAlpha","requestAnimationFrame","ircdType","notSupported","notAdmin","notOwner","_obj","$options","flipConnotation","InputConfirm","_xhr","ConfigLoader","valReplacements","configUrl","errMsg","m1","m2","setConfig","confObj","walkObject","_val","insertReplacements","out","items_","selected_idx","filteredItems","filterVal","items","localeCompare","filteredAndLimitedItems","itemIdx","numItems","idxFrom","idxTo","isInRange","selectedItem","getBoundingClientRect","tempCurrentItem","handleOnKeyDown","cancelKeyCodes","selectCurrentItem","shiftKey","altKey","AutoComplete","_lastIndexOf","errorMessage","showChannel","toggablePass","showNick","connectWithoutChannel","captchaReady","footerText","footer","isNickValid","nickPatternStr","nickPattern","pattern","escapeRegExp","ready","bufferObjs","extractBuffers","bufferObj","connectOptions","previousNet","queryStringVal","processNickRandomNumber","showPassword","toggablePassword","allowNoChannel","direct_path","onAltClose","altComponent","netAddress","clearMessages","hasSwitchedActiveBuffer","handleCaptcha","connectionInfoFromConfig","Welcome","znc_network_support","show_type_switcher","is_connecting","saveThisSessionsState","applyDefaults","hasSetActiveBuffer","infoClick","CustomServer","_reverse","sidebarOpen","page_size","listState","filteredList","found","sortBy","paginated","offset","canGoForward","canGoBackward","rawTopic","showModes","_values","_TypingStatusIndicator","getActiveNetwork","typingUsers","myNick","TypingUsersList","isOpen","settingShowJoinParts","settingShowTopics","settingShowNickChanges","settingShowModeChanges","settingExtraFormatting","settingColouredNicklist","settingShareTyping","accessTab","sidebarUser","error_message","self_user_settings_open","modeString","netUser","awayStatus","openSelfActions","openProfile","closeSelfUser","onNewNickSubmit","userNameCancel","networkSupportsAway","checkUserAway","getUserFromString","SelfUser","extractURL","stripStyles","mentionsNick","matchUri","parseIntZero","_TextFormatting","strftimeUTC","timezone","spaceIdx","bufferNames","punc","escapedNick","stylesStrippedInput","_name","regex","results","errs","err_unknown_host","err_forbidden","err_timeout","err_refused","err_tls","err_proxy","wsUri","websocket","uri","reg","connectionString","_channelName","hasPrefix","pipePos","colonPos","_place","place","ourPlace","date","_eventEmitter","NetworkProvider","providers","provider","availableNetworks","pType","_assertThisInitialized2","IpcBroadcastChannel","bc","BroadcastChannel","onmessage","postMessage","IpcLocalStorage","_EventEmitter2","_super2","parsedMsg","JSON","IPC","_StateBrowserBuffer","Buffer","channel_filter","channel_filter_display","channel_add_display","channel_add_input_has_focus","channel_add_input","show_channels","show_queries","isActiveNetwork","totalNetworkCount","serverUnread","totalUnread","serverHighlight","filteredBuffers","filtered","orderBuffers","filteredBuffersByType","other","queries","channelActivity","activityFromBuffers","queryActivity","showBufferGroups","onNewChannelInputFocus","onNewChannelInputBlur","submitNewChannelForm","newChannelVal","chanName","ignoreNames","onChannelFilterInputBlur","closeFilterChannel","showNetworkChannels","onSearchChannelClick","toggleFilterChannel","toggleAddChannel","StateBrowserNetwork","promptedReason","defaultReason","isDrawn","unreadMessages","header","prefixID","$children","setActiveCheck","getActive","foundChild","child","TabbedView","onColourClick","rgbObj","ircinput","setColour","onResetClick","resetStyles","inputtools","TextStyle","getNextBuffer","getPreviousBuffer","_findIndex","order","messageTypesToShowSetting","traffic","presence","hiddenMessageTypes","getBufferFromDirection","ordered","getNetworkFromDirection","inviteListSorter","aMask","invited","toUpperCase","bMask","inviteList","is_refreshing","supportsAccounts","inviteListAccounts","accounts","inviteListNonAccounts","invites","channelIsInviteOnly","anyRegisteredUserCanJoin","invite","knownAccounts","inviteAccountNames","accountUsers","orderBy","updateInvitelist","displayMask","inviteEvent","removeInvite","addAccountInvite","accountName","addInvite","setInviteOnly","removeInviteOnly","renderEmoticons","showEmoticons","retHtml","classes","linkifyUrl","addHandle","handleClass","linkifyUser","linkifyChannel","addEmoji","buildSpan","nice","cssClass","handleContent","escaped","isSingle","emoji","renderers","Html","buildTree","ignoreKeys","base","modified","ourBase","settingTools","forceLoader","netStatus","maybeForceLoader","minimumLoaderViewtime","NotConnected","filterString","filteredSettings","resetValue","settingKey","updateSetting","about","when","Intl","DateTimeFormat","showNicklist","scrollToMessage","chathistoryMiddleware","batchCallbacks","history","messageReference","callbacks","cbs","targetCallbacks","dateOrTime","after","around","between","fromDateOrTime","toDateOrTime","fromRef","toRef","ChathistoryMiddleware","server_info","_UrlEmbed","iframeSandboxOptions","isIframe","setMaxHeight","setHeight","newHeight","componentProps","_NicklistUser","intlCollator","strCompare","compare","global","Collator","numeric","NicklistUser","userbox_user","prefixOrders","nickMap","bufferUsers","nickFilter","lowercaseNick","bufferId","bufferA","bufferB","_msg","modesA","modesB","aP","bP","useColouredNicks","Nicklist","UserState","typingState","_target","typing","started","timeout","delete","timeoutLen","itemBuffers","_BouncerMiddleware","BouncerProvider","controllerNetwork","rewriteConnections","networksSnapshot","monitoringChanges","onNetworkState","onBouncerNetworks","_bncNetwork$connectio","bncNetwork","_this$parseBncCredent","parseBncCredentials","_this$parseBncCredent2","listenToState","_onNetworkMotd","_this$parseBncCredent3","_this$parseBncCredent4","netid","syncBncNetwork","initAndAddNetworks","_x","_x2","isController","getController","effectedNetwork","getNetworkFromBncNetId","_initAndAddNetworks","_x3","isNetworkInBncList","_net","_syncBncNetwork","_callee3","clientBuffer","existingBuffers","bncBuffer","_x4","_addNetworkToState","_callee4","_x5","server_password","controller","snapshot","networkInfo","snapshotCurrentNetworks","netname","tryNetworkName","bncNetworkPassword","_bncNetworkPassword$s","_bncNetworkPassword$s2","app_width","hasNick","showBufferSettings","showAbout","toggleNicklist","toggleBufferSettings","toggleAbout","SidebarState","_defineProperty","nextId","writable","extractMessageId","bodyTemplate","messageList","hasRendered","toBlocks","userList","maybeAutoEmbed","showLinkPreviews","whitelistRegex","isRepeat","isMessage","displayAvatar","MessageAvatar","showRealName","banEvent","unban","canSet","definition","audio","canPlayType","play","show_help","aliasText","_MessageListAvatar","prevMessage","types","generateComputedMode","modeVal","setMode","generateComputedModeWithParam","newTopic","setTopic","prevTopics","updateBanList","_ContainerHeader","_Sidebar","_NotConnected","_ServerView","Sidebar","bufferType","ev","scrollDistance","clientHeight","scrollMax","toggleSidebar","Container","_autocompleteCommands","_AutoComplete","_TextStyle","_Emoji","_SelfUser","_TypingUsersList","autocomplete_open","autocomplete_filtering","current_input_value","activeNetwork","shouldShowSendButton","shouldShowEmojiPicker","shouldShowColorPicker","shouldShowInputButtons","history_pos","setValue","inputRestore","typingTimer","lastTypingTime","ctrlKey","metaKey","arrowKeyCodes","elements","doNotRefocus","insertText","toolComponent","toggleInputTool","currentInput","reset","selectionToEnd","tool","toggleBold","toggleItalic","toggleUnderline","selectedValue","setCurrentWord","autocomplete","currentWord","getCurrentWord","emojiList","addImg","historyBack","historyForward","_currentWord","currentToken","position","inputText","getRawText","buildAutoCompleteItems","openAutoComplete","inputVal","startTyping","stopTyping","rawInput","getValue","ircText","buildIrcText","bufferList","commandList","settingList","shouldShareTyping","start","sendStopPause","pause","ControlInput","_NetworkProvider","_StateBrowserNetwork","_StateBrowserUsermenu","_AppSettings","netProv","isPersistingState","networksToShow","hideStatebrowser","StateBrowser","blur","htmlparser","last_known_value","text_value","current_el","current_el_pos","default_colour","code_map","editor","clipboardData","ignoreThisPaste","clpData","ig","getData","clpText","deleteContents","insertNode","createTextNode","anchorOffset","maybeEmitInput","lastChild","currentHtml","textValue","toggles","addToggle","getToggles","parser","Parser","onopentag","attribs","codeLookup","mappedCode","_mappedCode","ontext","onclosetag","pop","decodeEntities","write","rawHtml","br","existingImages","newImg","images","img","prevElCnt","previousSibling","keepPosition","textContent","startVal","space","startPos","endVal","createRange","setStart","setEnd","addRange","innerText","IrcInput","lastPlayed","shouldBleep","inFocus","app_has_focus","available","ascii","Emoji","_trimEnd","_AliasRewriter","inputCommands","InputHandler","aliasRewriter","importFromString","listenForInput","context","TypeError","defaultContext","lines","processLine","validateContext","stylesStrippedLine","escapedCommand","aliasVars","destination","handleMessage","localBuffer","extractedTarget","extractTargetGroup","subLine","dice","sides","rndNumber","number","ctcp","_network$ircClient","ctcpRequest","lineParts","kick","toKick","kickReason","toIgnore","unignore","toUnignore","back","_this6","formats","registered_nick","secure","idle","certfp","logon","actual_ip","actual_hostname","idleSeconds","logonTime","logonDate","whowas","_this7","whowasData","names","addReadBuffer","clear","echo","spacePos","serverAddr","serverPort","serverTls","serverPassword","beep","_trimInstanceProperty","parseMessage","_startsWith","_MessageFormatter","formatOpts","formatedBlocks","acc","processBlock","wordMatch","wordsRegex","specialMatches","matchChannel","matchUrl","matchUser","matchEmoji","mergeMatches","channelMatch","urlMatch","punctuation","urlText","matchText","hasProp","nickIdx","trimWord","normWord","resultBlocks","lastProcessedIndex","specialMatch","beforeMatchContent","MessageParser","addInviteList","addInviteText","invited_by","invited_at","_SidebarState","_UserBox","_SidebarAboutBuffer","_ChannelInvitelist","_Nicklist","ChannelInvitelist","active_network","active_buffer","typingMiddleware","activeTyping","lastSentStatus","TypingMiddleware","_NetworkState","_BufferState","_UserState","_Message","createNewState","stateObj","user_settings","sessionId","last_active_buffers","app_height","favicon_counter","availableStartups","toExport","networkObj","cloneDeep","serialise","stateStr","importObj","importNetwork","impBuffer","latestMessages","$data","userSetting","propName","nextVal","netAddr","serverInfo","networkidReduce","currentMax","channelId","services","findNewNetwork","openLastActiveBuffer","lastActive","targetNetwork","targetBuffer","_network","updateBufferLastRead","toMatch","bufferIdx","messageIdx","bufferMessage","includeAsActivity","typesForActivty","isNewMessage","extraHighlights","patterns","everyone","here","incrementFlag","notifyTitle","notifyMessage","parent","usersArr_","usersArr","newUsers","bufUsers","newUser","normalisedNick","bufferNameLower","oldNick","normalisedNew","normalisedOld","recreate","$destroy","_watchers","_cssVarsPonyfill","_tinycon","_Welcome","_ZncLogin","_CustomServer","_KiwiBnc","_Personal","_StateBrowser","_Container","_ControlInput","mediaviewerOpen","State","listenForActiveComponents","watchForThemes","initStateBrowser","initMediaviewer","configureFavicon","onKeyDown","onBlur","onTouchStart","startupScreens","welcome","customServer","kiwiBnc","znc","personal","extraStartupScreens","startupName","startup","trackWindowDimensions","warnOnPageClose","requestNotificationPermission","iframe","setOptions","fallback","setBubble","_this8","trackWindowDims","clientWidth","_this9","onbeforeunload","onunload","HTMLInputElement","HTMLSelectElement","HTMLTextAreaElement","App","unpin","_sockjsClient","serverConnections","createdChannels","controlChannel","_addr","_socketChannel","createNewConnection","socketChannel","nextChannelId","createChannelOnConnection","wsAddr","ws","onopen","connectStr","onclose","initChannel","ConnectionChannel","sendControlBuffer","remoteState","sendControl","setEncoding","writeLine","ssl","newEncoding","disposeSocket"],"mappings":"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","file":"static/js/app.c8cdefc7.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"vendor\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AutoComplete.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AutoComplete.vue?vue&type=style&index=0&lang=css&\"","import { render, staticRenderFns } from \"./StartupError.vue?vue&type=template&id=3613e78a&\"\nimport script from \"./StartupError.vue?vue&type=script&lang=js&\"\nexport * from \"./StartupError.vue?vue&type=script&lang=js&\"\nimport style0 from \"./StartupError.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\"use strict\";\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.requestPermission = requestPermission;\nexports.show = show;\nexports.listenForNewMessages = listenForNewMessages;\n\nvar _setTimeout2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-timeout\"));\n\nvar _bind = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/bind\"));\n\nvar _assign = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/assign\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar isEnabled = false;\n\nfunction requestPermission(state) {\n // Do we support notifications?\n if (!('Notification' in window)) {\n isEnabled = false;\n return;\n } // Permissions already been granted?\n\n\n if (Notification.permission === 'granted') {\n state.$emit('notification.enabled');\n isEnabled = true;\n return;\n }\n\n if (Notification.permission !== 'denied') {\n Notification.requestPermission(function (permission) {\n if (permission === 'granted') {\n state.$emit('notification.enabled');\n isEnabled = true;\n } else {\n isEnabled = false;\n }\n });\n }\n}\n\nfunction show(title, body, opts) {\n if (!isEnabled) {\n return false;\n }\n\n var notify = new Notification(title, {\n body: body,\n icon: opts.icon\n });\n\n if (opts.ttl) {\n var _context;\n\n (0, _setTimeout2.default)((0, _bind.default)(_context = notify.close).call(_context, notify), opts.ttl);\n }\n\n return notify;\n}\n\nvar throttledShow = _lodash.default.throttle(show, 2000);\n\nfunction listenForNewMessages(state) {\n state.$on('notification.show', function (message, _opts) {\n if (!isEnabled) {\n return;\n }\n\n var opts = (0, _assign.default)({\n title: 'Kiwi IRC',\n message: message,\n icon: '',\n onclick: null,\n ttl: 10000\n }, _opts);\n\n if (!opts.message) {\n return;\n }\n\n var notification = throttledShow(opts.title, opts.message, {\n ttl: opts.ttl\n });\n\n if (notification && typeof opts.onclick === 'function') {\n notification.onclick = opts.onclick;\n }\n });\n}\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"libs\"]) window._kiwi_exports[\"libs\"] = {};\nwindow._kiwi_exports[\"libs\"][\"Notifications\"]\r\nwindow._kiwi_exports.libs.Notifications = exports.default ? exports.default : exports;\r\n","import { render, staticRenderFns } from \"./MessageListMessageCompact.vue?vue&type=template&id=23bc1672&scoped=true&functional=true&\"\nimport script from \"./MessageListMessageCompact.vue?vue&type=script&lang=js&\"\nexport * from \"./MessageListMessageCompact.vue?vue&type=script&lang=js&\"\nimport style0 from \"./MessageListMessageCompact.vue?vue&type=style&index=0&id=23bc1672&lang=less&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n true,\n null,\n \"23bc1672\",\n null\n \n)\n\nexport default component.exports","// From the Element.closest mdn page.\nif (!Element.prototype.matches) {\n Element.prototype.matches = Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector;\n}\n\nif (!Element.prototype.closest) {\n Element.prototype.closest = function closest(s) {\n var el = this;\n\n do {\n if (el.matches(s)) {\n return el;\n }\n\n el = el.parentElement || el.parentNode;\n } while (el !== null && el.nodeType === 1);\n\n return null;\n };\n}","\"use strict\";\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar defaultLogger = makeLogger();\nvar _default = defaultLogger;\nexports.default = _default;\n\nfunction makeLogger(label, rootLogger) {\n function logger() {\n logger.info.apply(logger, arguments);\n }\n\n logger.LEVEL_DEBUG = 2;\n logger.LEVEL_INFO = 1;\n logger.LEVEL_ERROR = 0;\n logger.level = logger.LEVEL_ERROR;\n\n function logLevel(compareLevel) {\n var l = rootLogger || logger;\n return l.level >= compareLevel;\n }\n\n logger.debug = function logDebug() {\n if (logLevel(logger.LEVEL_DEBUG)) {\n var _window$console;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n if (label) {\n var _context;\n\n args[0] = (0, _concat.default)(_context = \"[\".concat(label, \"] DEBUG \")).call(_context, args[0]);\n }\n\n (_window$console = window.console).log.apply(_window$console, args);\n }\n };\n\n logger.info = function logInfo() {\n if (logLevel(logger.LEVEL_INFO)) {\n var _window$console2;\n\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n if (label) {\n var _context2;\n\n args[0] = (0, _concat.default)(_context2 = \"[\".concat(label, \"] INFO \")).call(_context2, args[0]);\n }\n\n (_window$console2 = window.console).log.apply(_window$console2, args);\n }\n };\n\n logger.error = function logError() {\n if (logLevel(logger.LEVEL_ERROR)) {\n var _window$console3;\n\n for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n\n if (label) {\n var _context3;\n\n args[0] = (0, _concat.default)(_context3 = \"[\".concat(label, \"] ERROR \")).call(_context3, args[0]);\n }\n\n (_window$console3 = window.console).error.apply(_window$console3, args);\n }\n };\n\n logger.assert = function assert(condition) {\n var _context4;\n\n if (condition) {\n return;\n }\n\n for (var _len4 = arguments.length, args = new Array(_len4 > 1 ? _len4 - 1 : 0), _key4 = 1; _key4 < _len4; _key4++) {\n args[_key4 - 1] = arguments[_key4];\n }\n\n this.error.apply(this, (0, _concat.default)(_context4 = ['Assertion failed.']).call(_context4, args));\n };\n\n logger.setLevel = function setLevel(newLevel) {\n logger.level = newLevel;\n };\n\n logger.namespace = function namespace(newLabel) {\n var l = newLabel;\n\n if (label) {\n var _context5;\n\n l = (0, _concat.default)(_context5 = \"[\".concat(label, \"][\")).call(_context5, l, \"]\");\n }\n\n return makeLogger(l, logger);\n };\n\n return logger;\n}\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"libs\"]) window._kiwi_exports[\"libs\"] = {};\nwindow._kiwi_exports[\"libs\"][\"Logger\"]\r\nwindow._kiwi_exports.libs.Logger = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../build/webpack/exports-loader.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TabbedView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../build/webpack/exports-loader.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TabbedView.vue?vue&type=script&lang=js&\"","\"use strict\";\n\nvar _typeof = require(\"@babel/runtime-corejs3/helpers/typeof\");\n\nvar _WeakMap = require(\"@babel/runtime-corejs3/core-js-stable/weak-map\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _Object$getOwnPropertyDescriptor = require(\"@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _setImmediate2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-immediate\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/createClass\"));\n\nvar _vue = _interopRequireDefault(require(\"vue\"));\n\nvar _common = require(\"./common\");\n\nvar IrcClient = _interopRequireWildcard(require(\"../IrcClient\"));\n\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== \"function\") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\n\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\n/** @module */\n\n/** The IRC network instance */\nvar NetworkState = /*#__PURE__*/function () {\n function NetworkState(id, appState, userDict, bufferDict) {\n var _this = this;\n\n (0, _classCallCheck2.default)(this, NetworkState);\n // Enumerable properties that become reactive under Vue\n this.id = id;\n this.name = '';\n this.editable_name = false; // State of the transport\n\n this.state = 'disconnected';\n this.state_error = ''; // Last error from the IRC server. Resets on reconnect\n\n this.last_error = '';\n this.auto_commands = '';\n this.is_znc = false;\n this.is_bnc = false;\n this.hidden = false;\n this.channel_list = [];\n this.channel_list_state = ''; // The IRCd type as mentioned in the 002 numeric\n\n this.ircd = '';\n this.connection = {\n server: '',\n port: 6667,\n tls: false,\n path: '',\n // Server password\n password: '',\n direct: false,\n encoding: 'utf8',\n bncnetid: '',\n nick: ''\n };\n this.settings = {\n show_raw_caps: false\n };\n this.nick = '';\n this.username = '';\n this.gecos = ''; // SASL password\n\n this.password = '';\n this.away = '';\n\n _vue.default.observable(this); // Some non-enumerable properties (vues $watch won't cover these properties)\n\n\n (0, _common.def)(this, 'appState', appState, false);\n (0, _common.def)(this, 'userDict', userDict, false);\n (0, _common.def)(this, 'bufferDict', bufferDict, false);\n (0, _common.def)(this, 'frameworkClient', null, true);\n (0, _common.def)(this, 'users', (0, _create.default)(null), function (newVal) {\n appState.$set(userDict.networks, _this.id, newVal);\n }); // Pending prviate messages awaiting whois operator check\n\n (0, _common.def)(this, 'pendingPms', [], false);\n bufferDict.$set(bufferDict.networks, this.id, []);\n }\n\n (0, _createClass2.default)(NetworkState, [{\n key: \"ircClient\",\n get: function get() {\n if (!this.frameworkClient) {\n this.frameworkClient = IrcClient.create(this.appState, this);\n }\n\n return this.frameworkClient;\n }\n }, {\n key: \"buffers\",\n get: function get() {\n return this.bufferDict.networks[this.id];\n }\n }, {\n key: \"connect\",\n value: function connect() {\n var _this$ircClient;\n\n (_this$ircClient = this.ircClient).connect.apply(_this$ircClient, arguments);\n }\n }, {\n key: \"bufferByName\",\n value: function bufferByName(name) {\n return this.appState.getBufferByName(this.id, name);\n }\n }, {\n key: \"serverBuffer\",\n value: function serverBuffer() {\n return this.appState.getBufferByName(this.id, '*');\n }\n }, {\n key: \"setting\",\n value: function setting(name, val) {\n if (typeof val !== 'undefined') {\n this.appState.$set(this.settings, name, val);\n return val;\n }\n\n return this.settings[name];\n }\n }, {\n key: \"isChannelName\",\n value: function isChannelName(input) {\n if (typeof input !== 'string' || !input) {\n return false;\n }\n\n var chanPrefixes = this.ircClient.network.supports('CHANTYPES') || '#&';\n return (0, _indexOf.default)(chanPrefixes).call(chanPrefixes, input[0]) > -1;\n }\n }, {\n key: \"showServerBuffer\",\n value: function showServerBuffer(tabName) {\n var _this2 = this;\n\n this.appState.$emit('active.component', null);\n this.appState.setActiveBuffer(this.id, this.serverBuffer().name); // Hacky, but the server buffer component listens for events to switch\n // between tabs\n\n (0, _setImmediate2.default)(function () {\n _this2.appState.$emit('server.tab.show', tabName || 'settings');\n });\n }\n /**\n * Check if a nick is exempt from block PM's\n * @param {String} nick of the user to check\n * @returns {Boolean} If the boolean is null a whois check is required\n */\n\n }, {\n key: \"isNickExemptFromPmBlocks\",\n value: function isNickExemptFromPmBlocks(nick) {\n // Check if nick is op of shared channel\n var buffers = this.appState.getBuffersWithUser(this.id, nick);\n\n for (var i = 0; i < buffers.length; i++) {\n var buffer = buffers[i];\n\n if (buffer.isUserAnOp(nick)) {\n return true;\n }\n }\n\n var user = this.appState.getUser((0, _indexOf.default)(this), nick);\n\n if (!user || !user.hasWhois) {\n // if we have not seen or whois the user they might be a network oper\n // so return null then a whois can be performed\n return null;\n }\n\n if (user.operator) {\n return true;\n }\n\n return false;\n }\n }, {\n key: \"currentUser\",\n value: function currentUser() {\n return this.appState.getUser(this.id, this.nick);\n }\n }, {\n key: \"userByName\",\n value: function userByName(nick) {\n return this.appState.getUser(this.id, nick);\n }\n }]);\n return NetworkState;\n}();\n\nexports.default = NetworkState;","import { render, staticRenderFns } from \"./UrlEmbed.vue?vue&type=template&id=32b5d18e&\"\nimport script from \"./UrlEmbed.vue?vue&type=script&lang=js&\"\nexport * from \"./UrlEmbed.vue?vue&type=script&lang=js&\"\nimport style0 from \"./UrlEmbed.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../build/webpack/exports-loader.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomServer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../build/webpack/exports-loader.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomServer.vue?vue&type=script&lang=js&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\nvar methods = {\n props: {},\n avatar: function avatar(props) {\n // let props = this.props;\n return props.message && props.message.avatar || props.user && props.user.avatar;\n },\n firstNickLetter: function firstNickLetter(props) {\n // let props = this.props;\n return (props.message && props.message.nick || props.user && props.user.nick || '')[0];\n },\n hasAvatar: function hasAvatar(props) {\n // let props = this.props;\n return !!(props.user.avatar && (props.user.avatar.small || props.user.avatar.large));\n },\n isDefault: function isDefault(props) {\n return !this.colour(props) && !this.hasAvatar(props);\n },\n avatarStyle: function avatarStyle(props) {\n // let props = this.props;\n var style = {};\n\n if (this.hasAvatar(props)) {\n var url = props.size === 'small' && this.avatar(props).small ? this.avatar(props).small : // If large was requested but does not exist fallback to small\n this.avatar(props).large || this.avatar(props).small;\n style['background-image'] = \"url(\\\"\".concat(url, \"\\\")\");\n } else {\n style['background-color'] = \"\".concat(this.colour(props));\n }\n\n return style;\n },\n colour: function colour(props) {\n // let props = this.props;\n var user = props.message && props.message.user || props.user;\n return user.getColour();\n }\n};\nvar _default = {\n props: {\n message: Object,\n user: Object,\n size: String\n },\n m: methods\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"Avatar\"]\r\nwindow._kiwi_exports.components.Avatar = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../build/webpack/exports-loader.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputConfirm.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../build/webpack/exports-loader.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputConfirm.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('startup-layout',{ref:\"layout\",staticClass:\"kiwi-welcome-znc\",scopedSlots:_vm._u([(!_vm.network || _vm.network.state === 'disconnected')?{key:\"connection\",fn:function(){return [_c('form',{staticClass:\"u-form u-form--big kiwi-welcome-znc-form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.formSubmit($event)}}},[_c('h2',{domProps:{\"innerHTML\":_vm._s(_vm.greetingText)}}),(_vm.network && (_vm.network.last_error || _vm.network.state_error))?_c('div',{staticClass:\"kiwi-welcome-znc-error\"},[_vm._v(\" We couldn't connect to the server :( \"),_c('span',[_vm._v(\" \"+_vm._s(_vm.network.last_error || _vm.readableStateError(_vm.network.state_error))+\" \")])]):_vm._e(),(_vm.showUser)?_c('input-text',{staticClass:\"kiwi-welcome-znc-nick\",attrs:{\"label\":_vm.$t('username')},model:{value:(_vm.username),callback:function ($$v) {_vm.username=$$v},expression:\"username\"}}):_vm._e(),(_vm.showPass)?_c('input-text',{staticClass:\"kiwi-welcome-znc-password\",attrs:{\"label\":_vm.$t('password'),\"type\":\"password\"},model:{value:(_vm.password),callback:function ($$v) {_vm.password=$$v},expression:\"password\"}}):_vm._e(),(_vm.showNetwork)?_c('input-text',{staticClass:\"kiwi-welcome-znc-channel\",attrs:{\"label\":_vm.$t('network')},model:{value:(_vm.znc_network),callback:function ($$v) {_vm.znc_network=$$v},expression:\"znc_network\"}}):_vm._e(),_c('button',{staticClass:\"u-button u-button-primary u-submit kiwi-welcome-znc-start\",attrs:{\"disabled\":!_vm.readyToStart,\"type\":\"submit\"},domProps:{\"innerHTML\":_vm._s(_vm.buttonText)}})],1)]},proxy:true}:(_vm.network.state !== 'connected')?{key:\"connection\",fn:function(){return [_c('i',{staticClass:\"fa fa-spin fa-spinner\",staticStyle:{\"font-size\":\"2em\",\"margin-top\":\"1em\"}})]},proxy:true}:null],null,true)})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./IrcInput.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./IrcInput.vue?vue&type=style&index=0&lang=css&\"","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./kiwiirccom.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./kiwiirccom.vue?vue&type=script&lang=js&\"","\"use strict\";\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = parse;\nexports.createNewBlock = createNewBlock;\n\nvar _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _keys = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/keys\"));\n\nvar _parseInt2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/parse-int\"));\n\nvar _assign = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/assign\"));\n\nvar tokens = (0, _create.default)(null);\n/**\n * Token functions may return:\n * null - move forward in the input by the length of the token\n * -1 - do not treat this character as a token and continue as normal content\n * 0+ - move to this point in the input\n */\n\n/* eslint-disable dot-notation */\n\ntokens['_'] = {\n token: '_',\n extra: true,\n fn: function parseToken(inp, pos, block, prevBlock, openToks) {\n var _context;\n\n if (openToks[this.token]) {\n delete block.styles.underline;\n openToks[this.token] = null;\n prevBlock.content += this.token;\n return null;\n } // If this style is alrady open by something else, ignore it\n\n\n if (block.styles.underline === true) {\n return -1;\n } // Underscores may be part of a word or URL so consider it an opening\n\n\n if (pos > 0 && inp[pos - 1] !== ' ') {\n return -1;\n } // token if it's on it's own\n // Only underline if we have a closing _ further on\n\n\n if ((0, _indexOf.default)(_context = inp.substr(pos + 1)).call(_context, this.token) === -1) {\n return -1;\n }\n\n openToks[this.token] = true;\n block.styles.underline = true;\n block.content += this.token;\n return null;\n }\n};\ntokens['*'] = {\n token: '*',\n extra: true,\n fn: function parseToken(inp, pos, block, prevBlock, openToks) {\n if (openToks[this.token]) {\n delete block.styles.bold;\n openToks[this.token] = null;\n prevBlock.content += this.token;\n return null;\n } // If this style is alrady open by something else, ignore it\n\n\n if (block.styles.bold === true) {\n return -1;\n } // Ignore is after a : character. :* is usually a kiss emoji\n\n\n if (inp[pos - 1] === ':') {\n return -1;\n } // * may be part of a word (ie. pasting code) or URL so only start bolding if * is after a\n // space\n\n\n if (pos > 0 && inp[pos - 1] !== ' ') {\n return -1;\n } // Only style if:\n // * we have a closing * further on\n // * the * further on has a space after it or is the last character\n\n\n var remainingText = inp.substr(pos + 1);\n var nextPos = (0, _indexOf.default)(remainingText).call(remainingText, this.token);\n\n if (nextPos === -1 || nextPos < remainingText.length - 1 && remainingText[nextPos + 1] !== ' ') {\n return -1;\n }\n\n openToks[this.token] = true;\n block.styles.bold = true;\n block.content += this.token;\n return null;\n }\n};\ntokens['**'] = {\n token: '**',\n extra: true,\n fn: function parseToken(inp, pos, block, prevBlock, openToks) {\n var _context2;\n\n if (openToks[this.token]) {\n delete block.styles.italic;\n openToks[this.token] = null;\n prevBlock.content += this.token;\n return null;\n } // If this style is alrady open by something else, ignore it\n\n\n if (block.styles.italic === true) {\n return -1;\n } // Only style if we have a closing ** further on\n\n\n if ((0, _indexOf.default)(_context2 = inp.substr(pos + 1)).call(_context2, this.token) === -1) {\n return -1;\n }\n\n openToks[this.token] = true;\n block.styles.italic = true;\n block.content += this.token;\n return null;\n }\n};\ntokens['`'] = {\n token: '`',\n extra: true,\n fn: function parseToken(inp, pos, block, prevBlock, openToks) {\n if (openToks[this.token]) {\n delete block.styles.quote;\n openToks[this.token] = null;\n prevBlock.content += this.token;\n return null;\n } // Backticks may be part of a word or NICK so only consider it a codeblock if\n // it's at the start of a scentence or comes after a space\n\n\n if (pos > 0 && inp[pos - 1] !== ' ') {\n return -1;\n } // Find the closing backtick\n\n\n var str = inp.substr(pos + 1);\n var endPos = (0, _indexOf.default)(str).call(str, this.token); // If we don't have a closing backtick further on, don't take this as an opening backtick\n\n if (endPos === -1) {\n return -1;\n } // Only consider the found closing backtick as closing if it comes before a space or is at\n // the end of the text. If it's in the middle of text then it's highly lickely part of that\n // text and not actually closing. eg. `hello and wel`come\n\n\n if (str[endPos + 1] && str[endPos + 1] !== ' ') {\n return -1;\n } // No styling should appear in this codeblock. Add all the content we can\n // before jumping the position forward in the input\n\n\n openToks[this.token] = true;\n block.styles.quote = true;\n block.content += this.token + str.substr(0, endPos);\n block.containsContent = true; // The + 1 because:\n // We added 2 ` characters, but we want the last ` character to call this\n // fn again so it can be closed.\n\n return pos + endPos + 1;\n }\n}; // Bold\n\ntokens['\\x02'] = {\n token: '\\x02',\n extra: false,\n fn: function parseToken(inp, pos, block, prevBlock, openToks) {\n if (openToks[this.token]) {\n delete block.styles.bold;\n openToks[this.token] = null;\n } else {\n openToks[this.token] = true;\n block.styles.bold = true;\n }\n\n return null;\n }\n}; // Italic\n\ntokens['\\x1D'] = {\n token: '\\x1D',\n extra: false,\n fn: function parseToken(inp, pos, block, prevBlock, openToks) {\n if (openToks[this.token]) {\n delete block.styles.italic;\n openToks[this.token] = null;\n } else {\n openToks[this.token] = true;\n block.styles.italic = true;\n }\n\n return null;\n }\n}; // Underline\n\ntokens['\\x1F'] = {\n token: '\\x1F',\n extra: false,\n fn: function parseToken(inp, pos, block, prevBlock, openToks) {\n if (openToks[this.token]) {\n delete block.styles.underline;\n openToks[this.token] = null;\n } else {\n openToks[this.token] = true;\n block.styles.underline = true;\n }\n\n return null;\n }\n}; // Clear all styles\n\ntokens['\\x0F'] = {\n token: '\\x0F',\n extra: false,\n fn: function parseToken(inp, pos, block, prevBlock, openToks) {\n var _context3, _context4;\n\n (0, _forEach.default)(_context3 = (0, _keys.default)(block.styles)).call(_context3, function (k) {\n return delete block.styles[k];\n });\n (0, _forEach.default)(_context4 = (0, _keys.default)(openToks)).call(_context4, function (k) {\n return delete openToks[k];\n });\n return null;\n }\n}; // Colours\n\ntokens['\\x03'] = {\n token: '\\x03',\n extra: false,\n fn: function parseToken(inp, pos, block, prevBlock, openToks) {\n var colours = {\n 0: 'white',\n 1: 'black',\n 2: 'blue',\n 3: 'green',\n 4: 'light-red',\n 5: 'brown',\n 6: 'purple',\n 7: 'orange',\n 8: 'yellow',\n 9: 'light-green',\n 10: 'cyan',\n 11: 'light-cyan',\n 12: 'light-blue',\n 13: 'pink',\n 14: 'grey',\n 15: 'light-grey'\n };\n var colourMatchRegexp = /^\\x03(([0-9][0-9]?)(,([0-9][0-9]?))?)/;\n var match = colourMatchRegexp.exec(inp.substr(pos, 6));\n\n if (match) {\n // fg colour = 2, bg colour = 4\n var fgColour = colours[(0, _parseInt2.default)(match[2], 10)];\n var bgColour = colours[(0, _parseInt2.default)(match[4], 10)];\n\n if (typeof fgColour !== 'undefined') {\n block.styles.color = fgColour;\n }\n\n if (typeof bgColour !== 'undefined') {\n block.styles.background = bgColour;\n }\n\n return pos + match[0].length;\n } // 03 without a colour = delete any existing colour\n\n\n delete block.styles.color;\n delete block.styles.background;\n return null;\n }\n}; // Reverse (unimplemented)\n\ntokens['\\x16'] = {\n token: '\\x16',\n extra: false,\n fn: function parseToken(inp, pos, block, prevBlock, openToks) {\n return null;\n }\n};\n\nfunction parse(inp, _opts) {\n var opts = _opts || {};\n var block = createNewBlock();\n var blocks = [block];\n var openTokens = (0, _create.default)(null);\n var pos = 0;\n var len = inp.length;\n\n while (pos < len) {\n var tok = findTokenAtPosition();\n\n if (!tok || !opts.extras && tok.extra) {\n block.content += inp[pos];\n block.containsContent = true;\n pos++;\n continue;\n } // Current character is a token of some sort\n\n\n var newBlock = null; // Consecutive tokens can stack up styles into the same blocks. A consecutive\n // token means that the block before it will not have any content yet\n\n if (block.containsContent) {\n newBlock = createNewBlock();\n } else {\n newBlock = block;\n }\n\n (0, _assign.default)(newBlock.styles, block.styles);\n var newPos = tok.fn(inp, pos, newBlock, block, openTokens);\n\n if (newPos === -1) {\n // The token invalidated itself so treat it as content\n block.content += tok.token;\n block.containsContent = true;\n pos += tok.token.length;\n continue;\n }\n\n block = newBlock; // This block may have already been pushed if this is a consecutive token\n\n if (blocks[blocks.length - 1] !== newBlock) {\n blocks.push(newBlock);\n }\n\n if (typeof newPos === 'number') {\n pos = newPos;\n } else {\n pos += tok.token.length;\n }\n }\n\n return blocks;\n\n function findTokenAtPosition() {\n var tok = tokens[inp.substr(pos, 2)] || tokens[inp[pos]];\n return tok;\n }\n}\n\nfunction createNewBlock() {\n var content = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n var styles = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var type = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'text';\n var meta = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n var newBlock = {\n styles: styles,\n content: content,\n containsContent: !!content,\n type: type,\n meta: meta\n };\n return newBlock;\n}\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"libs\"]) window._kiwi_exports[\"libs\"] = {};\nwindow._kiwi_exports[\"libs\"][\"MessageFormatter\"]\r\nwindow._kiwi_exports.libs.MessageFormatter = exports.default ? exports.default : exports;\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"u-input-prompt\",style:({display: _vm.block ? 'block' : 'inline-block'})},[(_vm.state==='pre')?_c('div',{on:{\"click\":_vm.prompt}},[_vm._t(\"default\")],2):_vm._e(),(_vm.state==='prompt')?_c('form',{staticClass:\"u-form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.complete($event)}}},[_c('span',{staticClass:\"u-input-prompt-label\"},[_vm._v(_vm._s(_vm.label))]),_c('div',{staticClass:\"u-input-prompt-inputs\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.value),expression:\"value\"}],staticClass:\"u-input\",domProps:{\"value\":(_vm.value)},on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"esc\",27,$event.key,[\"Esc\",\"Escape\"])){ return null; }return _vm.cancel($event)},\"input\":function($event){if($event.target.composing){ return; }_vm.value=$event.target.value}}}),_c('a',{staticClass:\"u-button u-button-primary\",on:{\"click\":_vm.complete}},[_vm._v(_vm._s(_vm.$t('ok')))]),(!_vm.hideCancel)?_c('a',{staticClass:\"u-button u-button-warning\",on:{\"click\":_vm.cancel}},[_vm._v(\" \"+_vm._s(_vm.$t('cancel'))+\" \")]):_vm._e()])]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Avatar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Avatar.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ZncLogin.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ZncLogin.vue?vue&type=style&index=0&lang=css&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _GlobalApi = _interopRequireDefault(require(\"@/libs/GlobalApi\"));\n\nvar _MessageList = _interopRequireDefault(require(\"./MessageList\"));\n\nvar _NetworkSettings = _interopRequireDefault(require(\"./NetworkSettings\"));\n\nvar _ChannelList = _interopRequireDefault(require(\"./ChannelList\"));\n\nvar _default = {\n components: {\n MessageList: _MessageList.default,\n NetworkSettings: _NetworkSettings.default,\n ChannelList: _ChannelList.default\n },\n props: ['network'],\n data: function data() {\n return {\n pluginUiElements: _GlobalApi.default.singleton().serverViewPlugins\n };\n },\n computed: {\n hasMessages: function hasMessages() {\n return this.network.serverBuffer().getMessages().length > 0;\n },\n serverBuffer: function serverBuffer() {\n return this.network.serverBuffer();\n },\n restrictedServer: function restrictedServer() {\n return this.$state.setting('restricted');\n },\n networkConnected: function networkConnected() {\n return this.network.state === 'connected';\n }\n },\n watch: {\n networkConnected: function networkConnected() {\n var _this = this;\n\n this.$nextTick(function () {\n // Vue won't update the tabs being displayed here so we to\n // manually update a property to force a re-render of the tabs\n _this.$refs.tabs.a++;\n });\n }\n },\n created: function created() {\n var _this2 = this;\n\n this.listen(this.$state, 'server.tab.show', function (tabName) {\n _this2.showTab(tabName);\n });\n },\n methods: {\n showTab: function showTab(tabName) {\n this.$refs.tabs.setActiveByName(tabName);\n },\n tabChanged: function tabChanged(tabName) {\n this.serverBuffer.show_input = tabName === 'messages';\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"ServerView\"]\r\nwindow._kiwi_exports.components.ServerView = exports.default ? exports.default : exports;\r\n","module.exports = __webpack_public_path__ + \"static/img/kiwiLoadingLogo.ee10be5a.png\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-messageinfo\",on:{\"click\":function($event){$event.stopPropagation();}}},[(_vm.message.mentioned_urls.length > 0)?_c('div',{staticClass:\"kiwi-messageinfo-urls\"},_vm._l((_vm.message.mentioned_urls),function(url){return _c('div',{key:url,staticClass:\"kiwi-messageinfo-url\"},[_c('a',{staticClass:\"u-button u-button-secondary\",on:{\"click\":function($event){return _vm.urlPreview(url)}}},[_vm._v(\"Preview\")]),_c('a',{staticClass:\"u-link\",attrs:{\"href\":url,\"target\":\"_blank\"}},[_vm._v(\" \"+_vm._s(url)+\" \")])])}),0):_vm._e(),_c('div',{staticClass:\"kiwi-messageinfo-actions\",class:{'kiwi-messageinfo-actions--open': _vm.requestingInput}},[(!_vm.requestingInput)?_c('a',{staticClass:\"u-link kiwi-messageinfo-reply\",on:{\"click\":_vm.openQuery}},[_vm._v(\" Reply in private \")]):_vm._e(),(_vm.areWeAnOp() && !_vm.isSelf())?_c('div',{staticClass:\"kiwi-messageinfo-opbuttons\"},[_c('input-prompt',{attrs:{\"label\":\"Kick reason:\"},on:{\"submit\":_vm.onKick,\"cancel\":function($event){_vm.requestingInput = false}}},[(!_vm.requestingInput)?_c('a',{staticClass:\"u-link kiwi-messageinfo-kick-user\",on:{\"click\":function($event){_vm.requestingInput = true}}},[_vm._v(\" Kick \"+_vm._s(_vm.message.nick)+\" \")]):_vm._e()]),_c('input-prompt',{attrs:{\"label\":\"Ban reason:\"},on:{\"submit\":_vm.onBan,\"cancel\":function($event){_vm.requestingInput = false}}},[(!_vm.requestingInput)?_c('a',{staticClass:\"u-link kiwi-messageinfo-ban-user\",on:{\"click\":function($event){_vm.requestingInput = true}}},[_vm._v(\" Ban \"+_vm._s(_vm.message.nick)+\" \")]):_vm._e()])],1):_vm._e()])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar Vue = require('vue');\n\nvar _default = Vue.component('input-text', {\n props: ['value', 'label', 'type', 'showPlainText'],\n data: function data() {\n return {\n plainTextEnabled: false,\n inputIdCache: ''\n };\n },\n computed: {\n inputId: function inputId() {\n if (!this.inputIdCache) {\n // eslint-disable-next-line\n this.inputIdCache = 'inp_' + Math.floor(Math.random() * 1e17).toString(36);\n }\n\n return this.inputIdCache;\n },\n currentValue: {\n get: function getCurrentValue() {\n return this.value;\n },\n set: function setCurrentValue(newVal) {\n this.$emit('input', newVal);\n }\n }\n },\n methods: {\n updateValue: function updateValue(newValue) {\n this.$emit('input', newValue);\n },\n isEdgeBrowser: function isEdgeBrowser() {\n var _context;\n\n return (0, _indexOf.default)(_context = navigator.appVersion).call(_context, 'Edge') > -1;\n }\n }\n});\n\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nif(!window._kiwi_exports[\"components\"][\"utils\"]) window._kiwi_exports[\"components\"][\"utils\"] = {};\nwindow._kiwi_exports[\"components\"][\"utils\"][\"InputText\"]\r\nwindow._kiwi_exports.components.utils.InputText = exports.default ? exports.default : exports;\r\n","var render = function (_h,_vm) {var _c=_vm._c;return _c('div',{staticClass:\"kiwi-nicklist-user\",class:[\n _vm.props.nicklist.userMode(_vm.props.user) ?\n 'kiwi-nicklist-user--mode-' + _vm.props.nicklist.userMode(_vm.props.user) :\n '',\n _vm.props.user.away ? 'kiwi-nicklist-user--away' : '',\n _vm.props.user.ignore ? 'kiwi-nicklist-user--ignore' : '',\n _vm.data.staticClass ],attrs:{\"data-nick\":(_vm.props.user.nick||'').toLowerCase()},on:{\"click\":function($event){return _vm.props.nicklist.openUserbox(_vm.props.user)}}},[(_vm.props.m().shouldShowAvatars())?_c('div',{staticClass:\"kiwi-avatar-container\"},[(_vm.props.user)?_c(_vm.injections.components.Avatar,{tag:\"component\",attrs:{\"user\":_vm.props.user,\"size\":\"small\"}}):_vm._e(),_c(_vm.injections.components.AwayStatusIndicator,{tag:\"component\",attrs:{\"network\":_vm.props.network,\"user\":_vm.props.user,\"toggle\":false}})],1):_c('div',[_c(_vm.injections.components.AwayStatusIndicator,{tag:\"component\",attrs:{\"network\":_vm.props.network,\"user\":_vm.props.user,\"toggle\":false}})],1),_c('span',{staticClass:\"kiwi-nicklist-user-prefix\"},[_vm._v(\" \"+_vm._s(_vm.props.nicklist.userModePrefix(_vm.props.user))+\" \")]),_c('span',{staticClass:\"kiwi-nicklist-user-nick\",style:({ 'color': _vm.props.m().userColour() })},[_vm._v(_vm._s(_vm.props.user.nick)+\" \")]),_c('span',{staticClass:\"kiwi-nicklist-messageuser\",on:{\"click\":function($event){$event.stopPropagation();return _vm.props.nicklist.openQuery(_vm.props.user)}}},[_c('i',{staticClass:\"fa fa-comment\",attrs:{\"aria-hidden\":\"true\"}})]),_c(_vm.injections.components.TypingStatusIndicator,{tag:\"component\",attrs:{\"user\":_vm.props.user,\"buffer\":_vm.props.nicklist.buffer}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../build/webpack/exports-loader.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextStyle.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../build/webpack/exports-loader.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextStyle.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./NetworkSettings.vue?vue&type=template&id=5c460638&\"\nimport script from \"./NetworkSettings.vue?vue&type=script&lang=js&\"\nexport * from \"./NetworkSettings.vue?vue&type=script&lang=js&\"\nimport style0 from \"./NetworkSettings.vue?vue&type=style&index=0&lang=less&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChannelInvitelist.vue?vue&type=style&index=0&lang=less&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChannelInvitelist.vue?vue&type=style&index=0&lang=less&\"","import { render, staticRenderFns } from \"./Container.vue?vue&type=template&id=0a567944&\"\nimport script from \"./Container.vue?vue&type=script&lang=js&\"\nexport * from \"./Container.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Container.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"u-input-text\"},[(_vm.label)?_c('label',{attrs:{\"for\":_vm.inputId}},[_vm._v(_vm._s(_vm.label))]):_vm._e(),_c('div',{staticClass:\"u-input-text-inputs\",staticStyle:{\"display\":\"flex\"}},[(_vm.type==='password')?[((_vm.plainTextEnabled && !_vm.isEdgeBrowser() ? 'text' : 'password')==='checkbox')?_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.currentValue),expression:\"currentValue\"}],staticClass:\"u-input\",class:{'u-form-input-plaintext' : !_vm.isEdgeBrowser() && _vm.showPlainText},attrs:{\"id\":_vm.inputId,\"autocomplete\":\"off\",\"autocorrect\":\"off\",\"autocapitalize\":\"off\",\"spellcheck\":\"false\",\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.currentValue)?_vm._i(_vm.currentValue,null)>-1:(_vm.currentValue)},on:{\"keypress\":function($event){return _vm.$emit('keypress', $event)},\"change\":function($event){var $$a=_vm.currentValue,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.currentValue=$$a.concat([$$v]))}else{$$i>-1&&(_vm.currentValue=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.currentValue=$$c}}}}):((_vm.plainTextEnabled && !_vm.isEdgeBrowser() ? 'text' : 'password')==='radio')?_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.currentValue),expression:\"currentValue\"}],staticClass:\"u-input\",class:{'u-form-input-plaintext' : !_vm.isEdgeBrowser() && _vm.showPlainText},attrs:{\"id\":_vm.inputId,\"autocomplete\":\"off\",\"autocorrect\":\"off\",\"autocapitalize\":\"off\",\"spellcheck\":\"false\",\"type\":\"radio\"},domProps:{\"checked\":_vm._q(_vm.currentValue,null)},on:{\"keypress\":function($event){return _vm.$emit('keypress', $event)},\"change\":function($event){_vm.currentValue=null}}}):_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.currentValue),expression:\"currentValue\"}],staticClass:\"u-input\",class:{'u-form-input-plaintext' : !_vm.isEdgeBrowser() && _vm.showPlainText},attrs:{\"id\":_vm.inputId,\"autocomplete\":\"off\",\"autocorrect\":\"off\",\"autocapitalize\":\"off\",\"spellcheck\":\"false\",\"type\":_vm.plainTextEnabled && !_vm.isEdgeBrowser() ? 'text' : 'password'},domProps:{\"value\":(_vm.currentValue)},on:{\"keypress\":function($event){return _vm.$emit('keypress', $event)},\"input\":function($event){if($event.target.composing){ return; }_vm.currentValue=$event.target.value}}}),(_vm.showPlainText && !_vm.isEdgeBrowser())?_c('i',{staticClass:\"u-input-text-plaintext fa fa-eye\",class:{'u-input-text-plaintext--active': _vm.plainTextEnabled},attrs:{\"aria-hidden\":\"true\"},on:{\"click\":function($event){_vm.plainTextEnabled = !_vm.plainTextEnabled}}}):_vm._e()]:(_vm.type==='number')?_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.currentValue),expression:\"currentValue\"}],staticClass:\"u-input\",attrs:{\"id\":_vm.inputId,\"type\":\"number\"},domProps:{\"value\":(_vm.currentValue)},on:{\"keypress\":function($event){return _vm.$emit('keypress', $event)},\"input\":function($event){if($event.target.composing){ return; }_vm.currentValue=$event.target.value}}}):(_vm.type==='textarea')?_c('textarea',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.currentValue),expression:\"currentValue\"}],staticClass:\"u-input\",attrs:{\"id\":_vm.inputId},domProps:{\"value\":(_vm.currentValue)},on:{\"keypress\":function($event){return _vm.$emit('keypress', $event)},\"input\":function($event){if($event.target.composing){ return; }_vm.currentValue=$event.target.value}}}):_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.currentValue),expression:\"currentValue\"}],staticClass:\"u-input\",attrs:{\"id\":_vm.inputId,\"autocomplete\":\"off\",\"autocorrect\":\"off\",\"autocapitalize\":\"off\",\"spellcheck\":\"false\"},domProps:{\"value\":(_vm.currentValue)},on:{\"keypress\":function($event){return _vm.$emit('keypress', $event)},\"input\":function($event){if($event.target.composing){ return; }_vm.currentValue=$event.target.value}}}),(_vm.$slots.default)?_c('div',{staticClass:\"u-input-text-c\"},[_vm._t(\"default\")],2):_vm._e()],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\"use strict\";\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\n\nvar _find = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/find\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _now = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/date/now\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/createClass\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar createdInstance = null;\n\nvar ThemeManager = /*#__PURE__*/function () {\n function ThemeManager(state) {\n (0, _classCallCheck2.default)(this, ThemeManager);\n this.state = state;\n this.listenForIrcEvents();\n this.varsEl = null;\n }\n\n (0, _createClass2.default)(ThemeManager, [{\n key: \"themeVar\",\n value: function themeVar(varName) {\n var _context;\n\n if (!this.varsEl) {\n this.varsEl = document.querySelector('.kiwi-wrap');\n }\n\n var styles = window.getComputedStyle(this.varsEl);\n var v = styles.getPropertyValue('--kiwi-' + varName);\n return (0, _trim.default)(_context = v || '').call(_context);\n }\n }, {\n key: \"availableThemes\",\n value: function availableThemes() {\n return this.state.settings.themes;\n }\n }, {\n key: \"currentTheme\",\n value: function currentTheme() {\n var state = this.state;\n var currentThemeName = state.setting('theme');\n currentThemeName = currentThemeName.toLowerCase();\n var theme = (0, _find.default)(_lodash.default).call(_lodash.default, state.settings.themes, function (t) {\n var isMatch = t.name.toLowerCase() === currentThemeName;\n return isMatch;\n }); // If no theme was set, use the first one in our theme list\n\n if (!theme) {\n theme = state.settings.themes[0];\n }\n\n return theme;\n }\n }, {\n key: \"setTheme\",\n value: function setTheme(theme) {\n var theTheme = null;\n\n if (typeof theme === 'string') {\n // Make sure this theme exists\n theTheme = (0, _find.default)(_lodash.default).call(_lodash.default, this.availableThemes(), function (t) {\n var isMatch = t.name.toLowerCase() === theme.toLowerCase();\n return isMatch;\n });\n\n if (!theTheme) {\n return;\n }\n } else {\n theTheme = theme;\n }\n\n this.state.setting('theme', theTheme.name);\n this.state.$emit('theme.change');\n }\n }, {\n key: \"reload\",\n value: function reload() {\n var theme = this.currentTheme();\n\n if (!theme) {\n return;\n }\n\n var url = theme.url;\n\n if ((0, _indexOf.default)(url).call(url, 'cb=') > -1) {\n url = url.replace(/cb=[0-9]+/, function () {\n return 'cb=' + (0, _now.default)();\n });\n } else if ((0, _indexOf.default)(url).call(url, '?') > -1) {\n url += '&cb=' + (0, _now.default)();\n } else {\n url += '?cb=' + (0, _now.default)();\n }\n\n theme.url = url;\n this.state.$emit('theme.change');\n }\n }, {\n key: \"setCustomThemeUrl\",\n value: function setCustomThemeUrl(url) {\n var theme = (0, _find.default)(_lodash.default).call(_lodash.default, ThemeManager.instance().availableThemes(), {\n name: 'custom'\n });\n\n if (theme) {\n theme.url = url;\n }\n\n if (theme.name === 'custom') {\n this.state.$emit('theme.change');\n }\n } // When we get a CTCP 'kiwi theme reload' then reload our theme. Handy for theme devs\n\n }, {\n key: \"listenForIrcEvents\",\n value: function listenForIrcEvents() {\n var _this = this;\n\n this.state.$on('irc.ctcp request', function (event, network) {\n var _context2;\n\n var ctcpType = (event.type || '').toLowerCase();\n\n if (ctcpType === 'kiwi' && (0, _indexOf.default)(_context2 = event.message).call(_context2, 'theme reload') > -1) {\n _this.reload();\n }\n });\n }\n }], [{\n key: \"themeUrl\",\n value: function themeUrl(theme) {\n var parts = theme.url.split('?');\n var url = parts[0];\n var qs = parts[1] || '';\n\n if (url[url.length - 1] !== '/') {\n url += '/';\n }\n\n return url + 'theme.css' + (qs ? '?' + qs : '');\n }\n }]);\n return ThemeManager;\n}();\n\nexports.default = ThemeManager;\n\nThemeManager.instance = function instance(state) {\n if (!createdInstance) {\n createdInstance = new ThemeManager(state);\n }\n\n return createdInstance;\n};\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"libs\"]) window._kiwi_exports[\"libs\"] = {};\nwindow._kiwi_exports[\"libs\"][\"ThemeManager\"]\r\nwindow._kiwi_exports.libs.ThemeManager = exports.default ? exports.default : exports;\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"u-input-confirm kiwi-theme-bg\"},[(_vm.state==='pre')?_c('div',{on:{\"click\":_vm.prompt}},[_vm._t(\"default\")],2):_vm._e(),(_vm.state==='prompt')?[_c('span',{staticClass:\"u-input-confirm-label\"},[_vm._v(_vm._s(_vm.label))]),_c('a',{staticClass:\"u-button\",class:['u-button-'+_vm.connoteCss.yes],on:{\"click\":function($event){return _vm.complete(true)}}},[_vm._v(\" \"+_vm._s(_vm.$t('yes'))+\" \")]),_c('a',{staticClass:\"u-button\",class:['u-button-'+_vm.connoteCss.no],on:{\"click\":function($event){return _vm.complete(false)}}},[_vm._v(\" \"+_vm._s(_vm.$t('no'))+\" \")])]:_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\"use strict\";\n'kiwi public';\n/** @module */\n\n/**\n * Converts a hex CSS color value to RGB.\n * Adapted from http://stackoverflow.com/a/5624139.\n *\n * @param {String} _hex The hexadecimal color value\n * @return {Object} The RGB representation\n */\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.hex2rgb = hex2rgb;\nexports.rgb2hex = rgb2hex;\nexports.rgb2hsl = rgb2hsl;\nexports.hsl2rgb = hsl2rgb;\nexports.rgb2rgbString = rgb2rgbString;\n\nvar _parseInt2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/parse-int\"));\n\nvar _map = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/map\"));\n\nvar _slice = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/slice\"));\n\nfunction hex2rgb(_hex) {\n // Expand shorthand form (e.g. \"03F\") to full form (e.g. \"0033FF\")\n var shorthandRegex = /^#?([a-f\\d])([a-f\\d])([a-f\\d])$/i;\n\n var hex = _hex.replace(shorthandRegex, function (m, r, g, b) {\n return r + r + g + g + b + b;\n });\n\n var result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex);\n return result ? {\n r: (0, _parseInt2.default)(result[1], 16),\n g: (0, _parseInt2.default)(result[2], 16),\n b: (0, _parseInt2.default)(result[3], 16)\n } : null;\n}\n/**\n * Converts an RGB color value to a hex string.\n * @param {Object} rgb RGB as r, g, and b keys\n * @return {String} Hex color string\n */\n\n\nfunction rgb2hex(rgb) {\n var _context;\n\n return '#' + (0, _map.default)(_context = ['r', 'g', 'b']).call(_context, function (key) {\n var _context2;\n\n return (0, _slice.default)(_context2 = '0' + rgb[key].toString(16)).call(_context2, -2);\n }).join('');\n}\n/**\n * Converts an RGB color value to HSL. Conversion formula adapted from\n * http://en.wikipedia.org/wiki/HSL_color_space. This function adapted\n * from http://stackoverflow.com/a/9493060.\n * Assumes r, g, and b are contained in the set [0, 255] and\n * returns h, s, and l in the set [0, 1].\n *\n * @param Object rgb RGB as r, g, and b keys\n * @return Object HSL as h, s, and l keys\n */\n\n\nfunction rgb2hsl(rgb) {\n var r = rgb.r;\n var g = rgb.g;\n var b = rgb.b;\n r /= 255;\n g /= 255;\n b /= 255;\n var max = Math.max(r, g, b);\n var min = Math.min(r, g, b);\n var h = 0;\n var s = 0;\n var l = (max + min) / 2;\n\n if (max === min) {\n h = s = 0; // achromatic\n } else {\n var d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n\n if (max === r) {\n h = (g - b) / d + (g < b ? 6 : 0);\n } else if (max === g) {\n h = (b - r) / d + 2;\n } else if (max === b) {\n h = (r - g) / d + 4;\n }\n\n h /= 6;\n }\n\n return {\n h: h,\n s: s,\n l: l\n };\n}\n/**\n * Converts an HSL color value to RGB. Conversion formula adapted from\n * http://en.wikipedia.org/wiki/HSL_color_space. This function adapted\n * from http://stackoverflow.com/a/9493060.\n * Assumes h, s, and l are contained in the set [0, 1] and\n * returns r, g, and b in the set [0, 255].\n *\n * @param Object hsl HSL as h, s, and l keys\n * @return Object RGB as r, g, and b values\n */\n\n\nfunction hsl2rgb(hsl) {\n function hue2rgb(_p, _q, _t) {\n var p = _p;\n var q = _q;\n var t = _t;\n if (t < 0) t += 1;\n if (t > 1) t -= 1;\n if (t < 1 / 6) return p + (q - p) * 6 * t;\n if (t < 1 / 2) return q;\n if (t < 2 / 3) return p + (q - p) * (2 / 3 - t) * 6;\n return p;\n }\n\n var h = hsl.h;\n var s = hsl.s;\n var l = hsl.l;\n var r = 0;\n var g = 0;\n var b = 0;\n\n if (s === 0) {\n r = g = b = l; // achromatic\n } else {\n var q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n var p = 2 * l - q;\n r = hue2rgb(p, q, h + 1 / 3);\n g = hue2rgb(p, q, h);\n b = hue2rgb(p, q, h - 1 / 3);\n }\n\n return {\n r: Math.round(r * 255),\n g: Math.round(g * 255),\n b: Math.round(b * 255)\n };\n}\n\nfunction rgb2rgbString(rgb) {\n return 'rgb(' + [rgb.r, rgb.g, rgb.b].join(',') + ')';\n}\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"helpers\"]) window._kiwi_exports[\"helpers\"] = {};\nwindow._kiwi_exports[\"helpers\"][\"Colours\"]\r\nwindow._kiwi_exports.helpers.Colours = exports.default ? exports.default : exports;\r\n","import { render, staticRenderFns } from \"./SelfUser.vue?vue&type=template&id=cd4c5738&\"\nimport script from \"./SelfUser.vue?vue&type=script&lang=js&\"\nexport * from \"./SelfUser.vue?vue&type=script&lang=js&\"\nimport style0 from \"./SelfUser.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MessageList.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MessageList.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MessageListMessageModern.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MessageListMessageModern.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ServerSelector.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ServerSelector.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./MessageList.vue?vue&type=template&id=8fc0eedc&\"\nimport script from \"./MessageList.vue?vue&type=script&lang=js&\"\nexport * from \"./MessageList.vue?vue&type=script&lang=js&\"\nimport style0 from \"./MessageList.vue?vue&type=style&index=0&lang=less&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { render, staticRenderFns } from \"./ServerView.vue?vue&type=template&id=604d1314&\"\nimport script from \"./ServerView.vue?vue&type=script&lang=js&\"\nexport * from \"./ServerView.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ServerView.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\"use strict\";\n\nvar _typeof = require(\"@babel/runtime-corejs3/helpers/typeof\");\n\nvar _WeakMap = require(\"@babel/runtime-corejs3/core-js-stable/weak-map\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _Object$getOwnPropertyDescriptor = require(\"@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\n\nvar _bind = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/bind\"));\n\nvar _find = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/find\"));\n\nvar _splice = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/splice\"));\n\nvar _filter = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/filter\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _flags = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/flags\"));\n\nvar _reduce = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/reduce\"));\n\nvar _assign = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/assign\"));\n\nvar _some = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/some\"));\n\nvar _setTimeout2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-timeout\"));\n\nvar _now = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/date/now\"));\n\nvar _keys = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/keys\"));\n\nvar _includes = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/includes\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/createClass\"));\n\nvar _vue = _interopRequireDefault(require(\"vue\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar _common = require(\"./common\");\n\nvar _batchedAdd = _interopRequireDefault(require(\"../batchedAdd\"));\n\nvar bufferTools = _interopRequireWildcard(require(\"../bufferTools\"));\n\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== \"function\") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\n\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\n/** @module */\nvar nextBufferId = 0;\n/** The IRC buffer instance */\n\nvar BufferState = /*#__PURE__*/function () {\n function BufferState(name, networkid, state, messageDict) {\n (0, _classCallCheck2.default)(this, BufferState);\n // Enumerable properties that become reactive under Vue\n this.id = nextBufferId++;\n this.networkid = networkid;\n this.name = name;\n this.topics = [];\n this.key = '';\n this.joined = false;\n this.enabled = true;\n this.created_at = null;\n this.users = (0, _create.default)(null);\n this.modes = (0, _create.default)(null);\n this.flags = {\n unread: 0,\n has_opened: false,\n channel_badkey: false,\n chathistory_available: true,\n requested_modes: false,\n requested_banlist: false,\n is_requesting_chathistory: false\n };\n this.settings = {};\n this.last_read = 0;\n this.active_timeout = null;\n this.message_count = 0;\n this.current_input = '';\n this.input_history = [];\n this.input_history_pos = 0;\n this.show_input = true;\n this.latest_messages = []; // Counter for chathistory requests. While this value is 0, it means that this buffer is\n // still loading messages\n\n this.chathistory_request_count = 0;\n\n _vue.default.observable(this); // Some non-enumerable properties (vues $watch won't cover these properties)\n\n\n (0, _common.def)(this, 'state', state, false);\n (0, _common.def)(this, 'messageDict', messageDict, false);\n var messagesObj = {\n networkid: this.networkid,\n buffer: this.name,\n messages: [],\n messageIds: (0, _create.default)(null)\n };\n this.messageDict.push(messagesObj);\n (0, _common.def)(this, 'messagesObj', messagesObj, false);\n (0, _common.def)(this, 'isMessageTrimming', true, true);\n (0, _common.def)(this, 'addMessageBatch', createMessageBatch(this), false);\n (0, _common.def)(this, 'addUserBatch', createUserBatch(this), false); // poll who to update away status if away-notify is not enabled\n\n if (this.isChannel()) {\n maybeStartWhoLoop(this);\n } // When the network re-connects, we reset the chathistory request counter.\n // This will make the `getLoadingState()` stay as 'loading' while the chathistory reloads.\n\n\n function onNetworkConnecting(event) {\n if (event.network === this.getNetwork()) {\n this.chathistory_request_count = 0;\n }\n }\n\n function onNetworkMotd(event, network) {\n if (network === this.getNetwork() && this.isQuery()) {\n this.requestLatestScrollback();\n }\n } // Clean up the previous event and itself when the buffer is closed.\n\n\n function onBufferClose(event) {\n if (event.buffer === this) {\n this.state.$off('network.connecting', onNetworkConnectingBound);\n this.state.$off('buffer.close', onBufferCloseBound);\n this.state.$off('irc.motd', onNetworkMotdBound);\n }\n }\n\n var onNetworkConnectingBound = (0, _bind.default)(onNetworkConnecting).call(onNetworkConnecting, this);\n var onBufferCloseBound = (0, _bind.default)(onBufferClose).call(onBufferClose, this);\n var onNetworkMotdBound = (0, _bind.default)(onNetworkMotd).call(onNetworkMotd, this);\n state.$on('network.connecting', onNetworkConnectingBound);\n state.$on('buffer.close', onBufferCloseBound);\n state.$on('irc.motd', onNetworkMotdBound);\n\n if (this.isQuery() && this.getNetwork().ircClient.chathistory.isSupported()) {\n // Get PM message histories, while channel buffers request it after their nicklist\n // has been received\n this.requestLatestScrollback();\n }\n }\n\n (0, _createClass2.default)(BufferState, [{\n key: \"topic\",\n get: function get() {\n return this.topics.length === 0 ? '' : this.topics[this.topics.length - 1];\n },\n set: function set(newVal) {\n this.topics.push(newVal);\n }\n }, {\n key: \"getNetwork\",\n value: function getNetwork() {\n return this.state.getNetwork(this.networkid);\n }\n }, {\n key: \"getMessages\",\n value: function getMessages() {\n var bufMessages = (0, _find.default)(_lodash.default).call(_lodash.default, this.messageDict, {\n networkid: this.networkid,\n buffer: this.name\n });\n return bufMessages ? bufMessages.messages : [];\n }\n }, {\n key: \"clearMessages\",\n value: function clearMessages() {\n var _context;\n\n (0, _splice.default)(_context = this.messagesObj.messages).call(_context, 0, this.messagesObj.messages.length);\n this.messagesObj.messageIds = (0, _create.default)(null);\n } // Remove a block of messages between a time (server-time) range. Inclusive.\n\n }, {\n key: \"clearMessageRange\",\n value: function clearMessageRange(startTime, endTime) {\n var _context2,\n _this = this;\n\n this.messagesObj.messages = (0, _filter.default)(_context2 = this.messagesObj.messages).call(_context2, function (message) {\n if (message.server_time < startTime || message.server_time > endTime) {\n return true;\n } // This message will be removed\n\n\n delete _this.messagesObj.messageIds[message.id];\n return false;\n }); // Mark that something changed\n\n this.message_count++;\n }\n }, {\n key: \"isServer\",\n value: function isServer() {\n return this.name === '*';\n }\n }, {\n key: \"isChannel\",\n value: function isChannel() {\n var chanPrefixes = ['#', '&'];\n var ircNetwork = this.getNetwork().ircClient.network;\n\n if (ircNetwork && ircNetwork.options.CHANTYPES) {\n chanPrefixes = ircNetwork.options.CHANTYPES;\n }\n\n return (0, _indexOf.default)(chanPrefixes).call(chanPrefixes, this.name[0]) > -1;\n }\n }, {\n key: \"isQuery\",\n value: function isQuery() {\n var chanPrefixes = ['#', '&'];\n var ircNetwork = this.getNetwork().ircClient.network;\n\n if (ircNetwork && ircNetwork.options.CHANTYPES) {\n chanPrefixes = ircNetwork.options.CHANTYPES;\n }\n\n return (0, _indexOf.default)(chanPrefixes).call(chanPrefixes, this.name[0]) === -1 && !this.isSpecial() && !this.isServer();\n }\n }, {\n key: \"isSpecial\",\n value: function isSpecial() {\n // Special buffer names (Usually controller queries, like *status or *raw).\n // Server buffer '*' is not included in this classification.\n var name = this.name;\n return name[0] === '*' && name.length > 1;\n }\n }, {\n key: \"isUserAnOp\",\n value: function isUserAnOp(nick) {\n var user = this.state.getUser(this.networkid, nick);\n\n if (!user) {\n return false;\n }\n\n var userBufferInfo = user.buffers[this.id];\n\n if (!userBufferInfo) {\n return false;\n }\n\n var modes = userBufferInfo.modes;\n var opModes = ['Y', 'y', 'q', 'a', 'o', 'h'];\n var hasOp = (0, _find.default)(_lodash.default).call(_lodash.default, modes, function (mode) {\n return (0, _indexOf.default)(opModes).call(opModes, mode.toLowerCase()) > -1;\n });\n return !!hasOp;\n }\n /**\n * Get a users prefix symbol on a buffer from its modes\n * @param {Object} user The user object\n */\n\n }, {\n key: \"userModePrefix\",\n value: function userModePrefix(user) {\n // The user may not be on the buffer\n if (!user.buffers[this.id]) {\n return '';\n }\n\n var modes = user.buffers[this.id].modes;\n\n if (modes.length === 0) {\n return '';\n }\n\n var network = this.getNetwork();\n var netPrefixes = network.ircClient.network.options.PREFIX; // Find the first (highest) netPrefix in the users buffer modes\n\n var prefix = (0, _find.default)(_lodash.default).call(_lodash.default, netPrefixes, function (p) {\n return (0, _indexOf.default)(modes).call(modes, p.mode) > -1;\n });\n return prefix ? prefix.symbol : '';\n }\n /**\n * Get a users mode on a buffer\n * @param user {Object} The user object\n */\n\n }, {\n key: \"userMode\",\n value: function userMode(user) {\n // The user may not be on the buffer\n if (!user.buffers[this.id]) {\n return '';\n }\n\n var modes = user.buffers[this.id].modes;\n\n if (modes.length === 0) {\n return '';\n } // if there is only one mode just return it\n\n\n if (modes.length === 1) {\n return modes[0];\n }\n\n var network = this.getNetwork();\n var netPrefixes = network.ircClient.network.options.PREFIX; // Find the first (highest) netPrefix in the users buffer modes\n\n var prefix = (0, _find.default)(_lodash.default).call(_lodash.default, netPrefixes, function (p) {\n return (0, _indexOf.default)(modes).call(modes, p.mode) > -1;\n });\n return prefix ? prefix.mode : '';\n }\n }, {\n key: \"setting\",\n value: function setting(name, val) {\n if (typeof val !== 'undefined') {\n this.state.$set(this.settings, name, val);\n return val;\n } // Check the buffer specific settings before reverting to global settings\n\n\n var result = typeof this.settings[name] !== 'undefined' ? this.settings[name] : this.state.setting('buffers.' + name);\n return result;\n }\n }, {\n key: \"rename\",\n value: function rename(newName) {\n var network = this.getNetwork();\n var oldName = this.name;\n var setActive = this.state.getActiveBuffer() === this;\n this.name = newName;\n\n if (setActive) {\n this.state.setActiveBuffer(network.id, newName);\n } // update the buffer name on our messages\n\n\n var bufferMessages = (0, _find.default)(_lodash.default).call(_lodash.default, this.messageDict, {\n networkid: network.id,\n buffer: oldName\n });\n bufferMessages.buffer = newName;\n }\n }, {\n key: \"flag\",\n value: function flag(name, val) {\n if (typeof val !== 'undefined') {\n this.state.$set((0, _flags.default)(this), name, val);\n return val;\n }\n\n return (0, _flags.default)(this)[name];\n }\n }, {\n key: \"requestScrollback\",\n value: function requestScrollback(_direction) {\n var _this2 = this;\n\n var direction = _direction || 'backward';\n var time = '';\n var chathistoryFuncName = 'before'; // Going backwards takes the earliest message we already have and requests messages\n // before it. Going forward takes the last message we have and requests messages after\n // it.\n\n if (direction === 'backward') {\n var _context3;\n\n var lastMessage = (0, _reduce.default)(_context3 = this.getMessages()).call(_context3, function (earliest, current) {\n var ignoreTypes = ['traffic', 'topic', 'connection', 'presence'];\n var validType = (0, _indexOf.default)(ignoreTypes).call(ignoreTypes, earliest.type) === -1;\n\n if (validType && earliest.time && earliest.time < current.time) {\n return earliest;\n }\n\n return current;\n }, this.getMessages()[0]);\n chathistoryFuncName = 'before';\n time = lastMessage ? new Date(lastMessage.server_time) : new Date();\n } else if (direction === 'forward') {\n var _context4;\n\n var firstMessage = (0, _reduce.default)(_context4 = this.getMessages()).call(_context4, function (latest, current) {\n var ignoreTypes = ['traffic', 'topic', 'connection', 'presence'];\n var validType = (0, _indexOf.default)(ignoreTypes).call(ignoreTypes, latest.type) === -1;\n\n if (validType && latest.time && latest.time > current.time) {\n return latest;\n }\n\n return current;\n }, this.getMessages()[0]);\n chathistoryFuncName = 'after';\n time = firstMessage ? new Date(firstMessage.server_time) : new Date();\n } else {\n throw new Error('Invalid direction for requestScrollback(): ' + _direction);\n }\n\n var ircClient = this.getNetwork().ircClient;\n this.flag('is_requesting_chathistory', true);\n this.chathistory_request_count += 1;\n var existingMessageIds = (0, _assign.default)({}, this.messagesObj.messageIds);\n ircClient.chathistory[chathistoryFuncName](this.name, time).then(function (event) {\n var _context5;\n\n if (!event) {\n _this2.flag('chathistory_available', false);\n\n return;\n } // The BNC server may reply with messages that are already in the buffer.\n // If we get no new messages that we didn't already have, assume that we have\n // all the available history\n\n\n var hasNewMessages = (0, _some.default)(_context5 = event.commands).call(_context5, function (msg) {\n return msg.tags.msgid && !existingMessageIds[msg.tags.msgid];\n }); // If there are new messages, then there could be more in the backlog.\n // If there are no new messages, then the chat history is empty.\n\n _this2.flag('chathistory_available', hasNewMessages);\n }).finally(function () {\n _this2.flag('is_requesting_chathistory', false);\n });\n }\n }, {\n key: \"requestLatestScrollback\",\n value: function requestLatestScrollback() {\n var _this3 = this;\n\n var ircClient = this.getNetwork().ircClient;\n this.flag('is_requesting_chathistory', true);\n this.chathistory_request_count += 1;\n ircClient.chathistory.before(this.name, '*').finally(function () {\n _this3.flag('is_requesting_chathistory', false);\n });\n }\n }, {\n key: \"markAsRead\",\n value: function markAsRead(delayed) {\n if (this.active_timeout) {\n clearTimeout(this.active_timeout);\n this.active_timeout = null;\n }\n\n if (delayed) {\n var _context6;\n\n this.active_timeout = (0, _setTimeout2.default)((0, _bind.default)(_context6 = this.markAsRead).call(_context6, this), 10000, false);\n } else {\n this.last_read = (0, _now.default)();\n this.flag('highlight', false); // If running under a bouncer, set it on the server-side too\n\n var network = this.getNetwork();\n var allowedUpdate = !network ? false : this.isChannel() || this.isQuery();\n\n if (allowedUpdate && network.connection.bncnetid) {\n network.ircClient.bnc.bufferSeen(network.connection.bncnetid, this.name);\n }\n }\n }\n }, {\n key: \"incrementFlag\",\n value: function incrementFlag(flagName) {\n (0, _flags.default)(this)[flagName] = ((0, _flags.default)(this)[flagName] || 0) + 1;\n }\n }, {\n key: \"addUser\",\n value: function addUser(user) {\n this.addUserBatch(user);\n }\n }, {\n key: \"hasNick\",\n value: function hasNick(nick) {\n var nickLower = nick.toLowerCase();\n return nickLower in this.users || this.isQuery() && this.name.toLowerCase() === nickLower;\n }\n }, {\n key: \"hasMode\",\n value: function hasMode(mode) {\n var _context7;\n\n return (0, _indexOf.default)(_context7 = (0, _keys.default)(this.modes)).call(_context7, mode) > -1;\n }\n }, {\n key: \"shouldShareTyping\",\n value: function shouldShareTyping() {\n var network = this.getNetwork();\n\n if (!this.setting('share_typing')) {\n // Feature disabled\n return false;\n }\n\n if (!this.isChannel() && !this.isQuery()) {\n // Qnly share tying with channels and queries\n return false;\n }\n\n if (this.isChannel() && !this.joined) {\n // Channel is in an unjoined state\n return false;\n }\n\n if (this.hasMode('m') && !this.userMode(network.currentUser())) {\n // Channel is moderated (+m) and we do not have a user mode +v or above\n return false;\n }\n\n return true;\n }\n }, {\n key: \"removeUser\",\n value: function removeUser(nick) {\n var userObj = this.state.getUser(this.networkid, nick); // A user could be queued to be added, so make sure it's not there as it\n // would just be added again. Eg. user joins/parts during a flood\n\n _lodash.default.pull(this.addUserBatch.queue(), userObj);\n\n this.state.$delete(this.users, nick.toLowerCase());\n\n if (userObj) {\n delete userObj.buffers[this.id];\n }\n }\n }, {\n key: \"clearUsers\",\n value: function clearUsers() {\n var _context8,\n _this4 = this;\n\n // Users could be queued to be added, so make sure to clear them as they\n // would just be added again. Eg. user joins/parts during a flood\n this.addUserBatch && (0, _splice.default)(_context8 = this.addUserBatch.queue()).call(_context8, 0);\n\n _lodash.default.each(this.users, function (userObj, nick) {\n delete userObj.buffers[_this4.id];\n });\n\n this.state.$set(this, 'users', {});\n }\n }, {\n key: \"addMessage\",\n value: function addMessage(message) {\n this.addMessageBatch(message);\n }\n }, {\n key: \"updateLatestMessages\",\n value: function updateLatestMessages(message) {\n var _context9,\n _this5 = this;\n\n if (!(0, _includes.default)(_context9 = ['privmsg', 'notice']).call(_context9, message.type)) {\n return;\n }\n\n var isNewer = function isNewer(msg) {\n return _this5.latest_messages[0].time <= msg.time && _this5.latest_messages[0].instance_num < msg.instance_num;\n };\n\n if (!this.latest_messages[0] || isNewer(message)) {\n this.latest_messages.unshift(message);\n }\n\n if (this.latest_messages.length > 5) {\n // restrict array to 5 elements\n this.latest_messages.length = 5;\n }\n }\n }, {\n key: \"getLatestMessage\",\n value: function getLatestMessage() {\n return this.latest_messages[0];\n }\n }, {\n key: \"say\",\n value: function say(message) {\n var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var network = this.getNetwork();\n var newMessage = {\n time: (0, _now.default)(),\n nick: network.nick,\n message: message,\n type: opts.type || 'privmsg'\n };\n this.state.addMessage(this, newMessage);\n var fnNames = {\n privmsg: 'say',\n action: 'action',\n notice: 'notice'\n };\n var fnName = fnNames[opts.type] || 'say';\n network.ircClient[fnName](this.name, message);\n }\n }, {\n key: \"join\",\n value: function join() {\n if (!this.isChannel()) {\n return;\n }\n\n var network = this.getNetwork();\n network.ircClient.join(this.name, this.key || '');\n }\n }, {\n key: \"part\",\n value: function part(reason) {\n if (!this.isChannel()) {\n return;\n }\n\n var network = this.getNetwork();\n network.ircClient.part(this.name, reason || '');\n }\n }, {\n key: \"scrollToMessage\",\n value: function scrollToMessage(id) {\n this.state.$emit('messagelist.scrollto', {\n id: id\n });\n }\n }, {\n key: \"getLoadingState\",\n value: function getLoadingState() {\n var networkState = this.getNetwork().state;\n var historySupport = !!this.getNetwork().ircClient.chathistory.isSupported();\n var messagesInBatchQueue = this.addMessageBatch.queue().length; // Hack; We need to make vue aware that we depend on message_count in order to\n // update the loading state.\n // eslint-disable-next-line no-unused-vars\n\n var messageCount = this.message_count;\n\n if (networkState === 'disconnected') {\n return 'disconnected';\n } else if (networkState === 'connecting') {\n return 'connecting';\n } else if (networkState === 'connected' && this.enabled && historySupport && ((0, _flags.default)(this).is_requesting_chathistory || // If chathistory is supported then a request will always be made when first\n // joining a channel. If request_count===0 then we're still waiting for it\n // to happen.\n this.chathistory_request_count === 0 || // keep in loading state while the batch is being processed\n messagesInBatchQueue > 0)) {\n return 'loading';\n }\n\n return 'done';\n }\n }, {\n key: \"isReady\",\n value: function isReady() {\n return this.getLoadingState() === 'done';\n }\n }]);\n return BufferState;\n}();\n/**\n * Batch up floods of addUsers for a huge performance gain.\n * Generally happens when reconnecting to a BNC\n */\n\n\nexports.default = BufferState;\n\nfunction createUserBatch(bufferState) {\n var addSingleUser = function addSingleUser(u) {\n bufferState.state.$set(bufferState.users, u.nick.toLowerCase(), u);\n };\n\n var addMultipleUsers = function addMultipleUsers(users) {\n var o = _lodash.default.clone(bufferState.users);\n\n (0, _forEach.default)(users).call(users, function (u) {\n o[u.nick.toLowerCase()] = u;\n });\n bufferState.users = o;\n };\n\n return (0, _batchedAdd.default)(addSingleUser, addMultipleUsers, 2);\n}\n/**\n * batch up floods of new messages for a huge performance gain\n */\n\n\nfunction createMessageBatch(bufferState) {\n var addSingleMessage = function addSingleMessage(newMessage) {\n if (bufferState.messagesObj.messageIds[newMessage.id]) {\n return;\n }\n\n bufferState.updateLatestMessages(newMessage);\n bufferState.messagesObj.messages.push(newMessage);\n bufferState.messagesObj.messageIds[newMessage.id] = newMessage;\n\n if (bufferState.isMessageTrimming) {\n trimMessages();\n }\n\n bufferTools.orderedMessages(bufferState, {\n inPlace: true,\n noFilter: true\n });\n bufferState.message_count++;\n };\n\n var addMultipleMessages = function addMultipleMessages(newMessages) {\n var toAdd = (0, _filter.default)(newMessages).call(newMessages, function (msg) {\n return !bufferState.messagesObj.messageIds[msg.id];\n });\n\n if (toAdd.length > 0) {\n var _context10;\n\n bufferState.messagesObj.messages = (0, _concat.default)(_context10 = bufferState.messagesObj.messages).call(_context10, toAdd);\n (0, _forEach.default)(toAdd).call(toAdd, function (msg) {\n bufferState.updateLatestMessages(msg);\n bufferState.messagesObj.messageIds[msg.id] = msg;\n });\n\n if (bufferState.isMessageTrimming) {\n trimMessages();\n }\n\n bufferTools.orderedMessages(bufferState, {\n inPlace: true,\n noFilter: true\n });\n } // Trigger Vue's reactivity on the buffer whether messages were added or not, just in case\n // anything was depending on the batch queue which has now been emptied.\n\n\n bufferState.message_count++;\n };\n\n var trimMessages = function trimMessages() {\n var scrollbackSize = bufferState.setting('scrollback_size');\n var length = bufferState.messagesObj.messages.length;\n\n if (bufferState.messagesObj.messages.length > scrollbackSize) {\n var _context11;\n\n var removed = (0, _splice.default)(_context11 = bufferState.messagesObj.messages).call(_context11, 0, length - scrollbackSize);\n (0, _forEach.default)(removed).call(removed, function (msg) {\n return delete bufferState.messagesObj.messageIds[msg.id];\n });\n }\n };\n\n return (0, _batchedAdd.default)(addSingleMessage, addMultipleMessages, 4);\n} // Update our user list status every 30seconds to get each users current away status\n\n\nfunction maybeStartWhoLoop(bufferState) {\n var network = bufferState.state.getNetwork(bufferState.networkid);\n\n if (network.state === 'connected') {\n // network is connected start the loop if its needed\n nextLoop();\n } else {\n // Network is not coonnected. Wait until it is\n var on001 = function on001(command, event, eventNetwork) {\n if (eventNetwork === network) {\n bufferState.state.$off('irc.raw.001', on001);\n nextLoop();\n }\n };\n\n bufferState.state.$on('irc.raw.001', on001);\n }\n\n function nextLoop() {\n (0, _setTimeout2.default)(updateWhoStatusLoop, 30000);\n }\n\n function updateWhoStatusLoop() {\n network = bufferState.state.getNetwork(bufferState.networkid); // Make sure the network still exists\n\n if (!network) {\n return;\n } // Make sure the buffer still exists\n\n\n if (!network.bufferByName(bufferState.name)) {\n return;\n }\n\n var whoLoop = bufferState.setting('who_loop');\n var isJoined = bufferState.joined;\n var hasAwayNotify = network.ircClient.network.cap.isEnabled('away-notify');\n var networkConnected = network.state === 'connected';\n\n if (whoLoop && networkConnected && isJoined && !hasAwayNotify) {\n network.ircClient.who(bufferState.name, function () {\n nextLoop();\n });\n } else {\n nextLoop();\n }\n }\n}","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MessageListMessageInline.vue?vue&type=style&index=0&id=7979fe60&lang=less&scoped=true&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MessageListMessageInline.vue?vue&type=style&index=0&id=7979fe60&lang=less&scoped=true&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./KiwiBnc.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./KiwiBnc.vue?vue&type=style&index=0&lang=css&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _state = _interopRequireDefault(require(\"@/libs/state\"));\n\nvar methods = {\n props: {},\n toggleSelfAway: function toggleSelfAway(props) {\n // let props = this.props;\n if (props.isUserSelf) {\n var val = props.user.isAway();\n props.network.ircClient.raw('AWAY', val ? '' : 'Currently away');\n }\n },\n isUserSelf: function isUserSelf(props) {\n // let props = this.props;\n if (props.toggle === false) {\n return false;\n }\n\n var user = (0, _state.default)().getUser(props.network.id, props.network.nick);\n return props.user === user;\n },\n shouldShowStatus: function shouldShowStatus(props) {\n // let props = this.props;\n if (!(0, _state.default)().setting('showAwayStatusIndicators')) {\n return false;\n }\n\n if (props.network.state !== 'connected') {\n return false;\n }\n\n var awayNotifyEnabled = props.network.ircClient.network.cap.isEnabled('away-notify');\n return (0, _state.default)().setting('buffers.who_loop') || awayNotifyEnabled;\n }\n};\nvar _default = {\n props: {\n network: Object,\n user: Object,\n toggle: Boolean\n },\n m: methods\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"AwayStatusIndicator\"]\r\nwindow._kiwi_exports.components.AwayStatusIndicator = exports.default ? exports.default : exports;\r\n","\"use strict\";\n'kiwi public';\n/** @module */\n\nvar _typeof = require(\"@babel/runtime-corejs3/helpers/typeof\");\n\nvar _WeakMap = require(\"@babel/runtime-corejs3/core-js-stable/weak-map\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _Object$getOwnPropertyDescriptor = require(\"@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = bouncerMiddleware;\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _parseInt2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/parse-int\"));\n\nvar _promise = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/promise\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _keys = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/keys\"));\n\nvar _ircFramework = require(\"irc-framework\");\n\nvar Misc = _interopRequireWildcard(require(\"@/helpers/Misc\"));\n\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== \"function\") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\n\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\n/**\n * Adds the BOUNCER IRCv3 spec to irc-framework\n */\nfunction bouncerMiddleware() {\n var networks = [];\n var buffers = {};\n return function middleware(client, rawEvents, parsedEvents) {\n client.requestCap('bouncer');\n addFunctionsToClient(client);\n rawEvents.use(theMiddleware);\n };\n\n function theMiddleware(command, message, rawLine, client, next) {\n var _context, _context2, _context3;\n\n if (command !== 'BOUNCER') {\n next();\n return;\n }\n\n var params = message.params;\n\n if (params[0] === 'listnetworks' && (0, _indexOf.default)(_context = ['end', 'RPL_OK']).call(_context, params[1]) > -1) {\n client.command_handler.emit('bouncer networks', networks);\n networks = [];\n } else if (params[0] === 'listnetworks') {\n var tags = _ircFramework.MessageTags.decode(params[2]);\n\n networks.push({\n networkId: params[1],\n name: tags.network,\n host: tags.host,\n port: (0, _parseInt2.default)(tags.port, 10),\n tls: tags.tls === '1',\n connected: tags.state === 'connected',\n nick: tags.nick,\n currentNick: tags.currentNick,\n password: tags.password || '',\n account: tags.account || '',\n account_password: tags.account_password || ''\n });\n } else if (params[0] === 'listbuffers' && (0, _indexOf.default)(_context2 = ['end', 'RPL_OK']).call(_context2, params[2]) > -1) {\n var netId = params[1] || '';\n var detectedBuffers = buffers[netId] || [];\n delete buffers[netId];\n client.command_handler.emit('bouncer buffers', detectedBuffers);\n client.command_handler.emit('bouncer buffers ' + netId, detectedBuffers);\n } else if (params[0] === 'listbuffers') {\n var _netId = params[1] || '';\n\n var _tags = _ircFramework.MessageTags.decode(params[2]);\n\n buffers[_netId] = buffers[_netId] || [];\n\n buffers[_netId].push({\n networkId: _netId,\n network: _tags.network,\n name: _tags.buffer,\n topic: _tags.topic,\n joined: _tags.joined === '1',\n seen: _tags.seen,\n notify: _tags.notify || 'highlight'\n });\n } else if (params[0] === 'state') {\n client.command_handler.emit('bouncer state', {\n networkId: params[1],\n network: params[2],\n state: params[3]\n });\n } // BOUNCER addnetwork NetID Network1 ERR_NAMEINUSE\n\n\n if (params[0] === 'addnetwork' && params[3].substr(0, 4) === 'ERR_') {\n var netName = (params[2] || '').toLowerCase();\n var eventObj = {\n error: params[3],\n reason: params[4] || ''\n };\n client.command_handler.emit('bouncer addnetwork error', eventObj);\n client.command_handler.emit('bouncer addnetwork error ' + netName, eventObj);\n } else if (params[0] === 'addnetwork' && (0, _indexOf.default)(_context3 = ['end', 'RPL_OK']).call(_context3, params[3]) > -1) {\n // BOUNCER addnetwork 5 Network1 RPL_OK\n var _netId2 = params[1] || '';\n\n var _netName = (params[2] || '').toLowerCase();\n\n var _eventObj = {\n networkId: _netId2,\n network: _netName\n };\n client.command_handler.emit('bouncer addnetwork ok', _eventObj);\n client.command_handler.emit('bouncer addnetwork ok ' + _netName, _eventObj);\n }\n }\n}\n\nfunction addFunctionsToClient(client) {\n var bnc = client.bnc = {};\n\n bnc.tags = function tags() {\n var token = client.network.supports('bouncer');\n return !token || typeof token !== 'string' ? {} : _ircFramework.MessageTags.decode(token) || {};\n };\n\n bnc.hasNetwork = function hasNetwork() {\n var token = client.network.supports('bouncer');\n\n if (!token || token === true) {\n return false;\n }\n\n var tags = _ircFramework.MessageTags.decode(token);\n\n return tags && !!tags.network;\n };\n\n bnc.getNetworks = function getNetworks() {\n return new _promise.default(function (resolve, reject) {\n client.raw('BOUNCER listnetworks');\n client.once('bouncer networks', function (networks) {\n resolve(networks);\n });\n });\n };\n\n bnc.getBuffers = function getBuffers(netId) {\n return new _promise.default(function (resolve, reject) {\n client.raw('BOUNCER listbuffers ' + netId);\n client.once('bouncer buffers ' + netId, function (buffers) {\n resolve(buffers);\n });\n });\n };\n\n bnc.closeBuffer = function closeBuffer(netId, bufferName) {\n return new _promise.default(function (resolve, reject) {\n var _context4;\n\n client.raw((0, _concat.default)(_context4 = \"BOUNCER delbuffer \".concat(netId, \" \")).call(_context4, bufferName));\n });\n };\n\n bnc.bufferSeen = function bufferSeen(netId, bufferName, seenTime) {\n return new _promise.default(function (resolve, reject) {\n var _context5, _context6;\n\n // 1 tells the bouncer to use the current time\n var timeStr = seenTime ? Misc.dateIso(seenTime) : '1';\n client.raw((0, _concat.default)(_context5 = (0, _concat.default)(_context6 = \"BOUNCER changebuffer \".concat(netId, \" \")).call(_context6, bufferName, \" seen=\")).call(_context5, timeStr));\n });\n };\n\n bnc.addNetwork = function addNetwork(netName, host, port, tls, nick, user, password) {\n var tags = {};\n tags.network = netName;\n tags.host = host;\n tags.port = port;\n tags.tls = tls ? 1 : 0;\n tags.nick = nick;\n tags.password = password;\n\n if (user) {\n tags.user = user;\n }\n\n var tagString = createTagString(tags);\n return new _promise.default(function (resolve, reject) {\n client.raw('BOUNCER addnetwork ' + tagString);\n client.once('bouncer addnetwork ok ' + netName.toLowerCase(), onOk);\n client.once('bouncer addnetwork error', onError);\n\n function onOk(event) {\n client.off('bouncer addnetwork error', onError);\n resolve(event);\n }\n\n function onError(event) {\n client.off('bouncer addnetwork ok ' + netName.toLowerCase(), onOk);\n reject({\n error: event.error,\n reason: event.reason\n });\n }\n });\n };\n\n bnc.removeNetwork = function removeNetwork(netId, bufferName) {\n return new _promise.default(function (resolve, reject) {\n client.raw(\"BOUNCER delnetwork \".concat(netId));\n });\n };\n\n bnc.saveNetwork = function saveNetwork(netId, opts) {\n var tags = {};\n\n if (typeof opts.network !== 'undefined') {\n tags.network = opts.network;\n }\n\n if (typeof opts.host !== 'undefined') {\n tags.host = opts.host;\n }\n\n if (typeof opts.port !== 'undefined') {\n tags.port = opts.port;\n }\n\n if (typeof opts.tls !== 'undefined') {\n tags.tls = opts.tls ? 1 : 0;\n }\n\n if (typeof opts.nick !== 'undefined') {\n tags.nick = opts.nick;\n }\n\n if (typeof opts.user !== 'undefined') {\n tags.user = opts.user;\n }\n\n if (typeof opts.password !== 'undefined') {\n tags.password = opts.password;\n }\n\n if (typeof opts.account_password !== 'undefined') {\n tags.account_password = opts.account_password;\n }\n\n if (typeof opts.account !== 'undefined') {\n tags.account = opts.account;\n }\n\n var tagString = createTagString(tags);\n return new _promise.default(function (resolve, reject) {\n if (tagString.length === 0) {\n resolve();\n } else {\n var _context7;\n\n client.raw((0, _concat.default)(_context7 = \"BOUNCER changenetwork \".concat(netId, \" \")).call(_context7, tagString));\n }\n });\n };\n}\n\nfunction createTagString(tags) {\n var _context8;\n\n var tagParts = [];\n (0, _forEach.default)(_context8 = (0, _keys.default)(tags)).call(_context8, function (tag) {\n var val = tags[tag];\n\n if (typeof val !== 'undefined') {\n val = val.toString().replace(' ', '\\\\s').replace(';', '\\\\:');\n tagParts.push(tag + '=' + val);\n } else {\n tagParts.push(tag);\n }\n });\n return tagParts.join(';');\n}\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"libs\"]) window._kiwi_exports[\"libs\"] = {};\nwindow._kiwi_exports[\"libs\"][\"BouncerMiddleware\"]\r\nwindow._kiwi_exports.libs.BouncerMiddleware = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ServerView.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ServerView.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-inputtool-emoji\"},[_c('div',{staticClass:\"kiwi-inputtool-emoji-palette\",on:{\"mousedown\":function($event){$event.preventDefault();},\"click\":function($event){$event.preventDefault();}}},_vm._l((_vm.emojis),function(text,eCode){return _c('div',{key:eCode,staticClass:\"kiwi-inputtool-emoji-emoji\",style:({'background-image':(\"url(\" + _vm.location + eCode + \".png)\")}),attrs:{\"data-code\":text + ' '},on:{\"click\":_vm.onImgClick}})}),0)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MessageInfo.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MessageInfo.vue?vue&type=style&index=0&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-notconnected kiwi-warning-block\",class:{ connecting: _vm.shouldShowLoading }},[(!_vm.shouldShowLoading)?[_c('div',{staticClass:\"kiwi-notconnected-caption\"},[_c('span',[_vm._v(_vm._s(_vm.$t('not_connected')))]),(!_vm.shouldShowLoading)?_c('i',{staticClass:\"fa fa-frown-o\",attrs:{\"aria-hidden\":\"true\"}}):_vm._e()]),_c('div',{staticClass:\"kiwi-notconnected-buttons\"},[(_vm.isChannel())?[_c('span',{staticClass:\"kiwi-notconnected-button\",attrs:{\"disabled\":!_vm.readyToStart},on:{\"click\":_vm.reconnect}},[_c('i',{staticClass:\"fa fa-arrow-circle-o-right\",attrs:{\"aria-hidden\":\"true\"}}),_vm._v(\" \"+_vm._s(_vm.$t('reconnect_channel', {channel: _vm.buffer.name}))+\" \")])]:(_vm.isServer())?[_c('span',{staticClass:\"kiwi-notconnected-button\",attrs:{\"disabled\":!_vm.readyToStart},on:{\"click\":_vm.reconnect}},[_c('i',{staticClass:\"fa fa-arrow-circle-o-right\",attrs:{\"aria-hidden\":\"true\"}}),_vm._v(\" \"+_vm._s(_vm.$t('reconnect_network', {network: _vm.buffer.getNetwork().name}))+\" \")])]:(_vm.isQuery())?[_c('span',{staticClass:\"kiwi-notconnected-button\",attrs:{\"disabled\":!_vm.readyToStart},on:{\"click\":_vm.reconnect}},[_c('i',{staticClass:\"fa fa-arrow-circle-o-right\",attrs:{\"aria-hidden\":\"true\"}}),_vm._v(\" \"+_vm._s(_vm.$t('reconnect_query', {user: _vm.buffer.name}))+\" \")])]:_vm._e(),(!_vm.restrictedServer)?_c('a',{staticClass:\"kiwi-notconnected-button kiwi-notconnected-button-settings\",on:{\"click\":_vm.showNetworkSettings}},[_c('i',{staticClass:\"fa fa-cogs\",attrs:{\"aria-hidden\":\"true\"}})]):_vm._e()],2)]:_c('div',{staticClass:\"kiwi-notconnected-caption\"},[_vm._v(\" \"+_vm._s(_vm.$t('connecting'))+\" \"),_c('i',{staticClass:\"fa fa-refresh fa-spin kiwi-notconnected-bigicon\",attrs:{\"aria-hidden\":\"true\"}})]),_c('captcha',{staticClass:\"kiwi-notconnected-captcha\",attrs:{\"network\":_vm.network}})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./NicklistUser.vue?vue&type=template&id=0543df6d&functional=true&\"\nimport script from \"./NicklistUser.vue?vue&type=script&lang=js&\"\nexport * from \"./NicklistUser.vue?vue&type=script&lang=js&\"\nimport style0 from \"./NicklistUser.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n true,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { render, staticRenderFns } from \"./TypingUsersList.vue?vue&type=template&id=28f29f38&\"\nimport script from \"./TypingUsersList.vue?vue&type=script&lang=js&\"\nexport * from \"./TypingUsersList.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TypingUsersList.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\nvar _default = {\n data: function data() {\n return {\n closing: false\n };\n },\n computed: {\n backgroundStyle: function backgroundStyle() {\n var style = {};\n var options = this.$state.settings.startupOptions;\n\n if (options.infoBackground) {\n style['background-image'] = \"url(\".concat(options.infoBackground, \")\");\n }\n\n return style;\n },\n backgroundImage: function backgroundImage() {\n return this.$state.settings.startupOptions.infoBackground || '';\n },\n infoContent: function infoContent() {\n return this.$state.settings.startupOptions.infoContent || '';\n }\n },\n methods: {\n close: function close() {\n var _this = this;\n\n this.closing = true;\n\n var startApp = function startApp(event) {\n _this.$el.removeEventListener('transitionend', startApp);\n\n _this.$state.persistence.watchStateForChanges(); // Hacky to be using $parent but this component should only be used in a sepcific\n // scope within startup screens\n\n\n _this.$parent.$emit('start');\n };\n\n this.$el.addEventListener('transitionend', startApp, false);\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nif(!window._kiwi_exports[\"components\"][\"startups\"]) window._kiwi_exports[\"components\"][\"startups\"] = {};\nwindow._kiwi_exports[\"components\"][\"startups\"][\"CommonLayout\"]\r\nwindow._kiwi_exports.components.startups.CommonLayout = exports.default ? exports.default : exports;\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-wrap kiwi-theme-bg\",class:{\n 'kiwi-wrap--statebrowser-drawopen': _vm.stateBrowserDrawOpen,\n 'kiwi-wrap--monospace': _vm.$state.setting('useMonospace'),\n 'kiwi-wrap--touch': _vm.$state.ui.is_touch,\n },attrs:{\"data-activebuffer\":_vm.buffer ? _vm.buffer.name.toLowerCase() : ''},on:{\"click\":_vm.emitDocumentClick,\"!paste\":function($event){return _vm.emitBufferPaste($event)}}},[_c('link',{attrs:{\"href\":_vm.themeUrl,\"rel\":\"stylesheet\",\"type\":\"text/css\"}}),(!_vm.hasStarted || (!_vm.fallbackComponent && _vm.networks.length === 0))?[_c(_vm.startupComponent,{tag:\"component\",on:{\"start\":_vm.startUp}})]:[_c('state-browser',{attrs:{\"networks\":_vm.networks,\"sidebar-state\":_vm.sidebarState}}),_c('div',{staticClass:\"kiwi-workspace\",class:{\n 'kiwi-workspace--disconnected': _vm.network && _vm.network.state !== 'connected'\n },on:{\"click\":function($event){_vm.stateBrowserDrawOpen = false}}},[_c('div',{staticClass:\"kiwi-workspace-background\"}),(!_vm.activeComponent && _vm.network)?[_c('container',{attrs:{\"network\":_vm.network,\"buffer\":_vm.buffer,\"sidebar-state\":_vm.sidebarState},scopedSlots:_vm._u([(_vm.mediaviewerOpen)?{key:\"before\",fn:function(){return [_c('media-viewer',{staticClass:\"kiwi-main-mediaviewer\",attrs:{\"url\":_vm.mediaviewerUrl,\"component\":_vm.mediaviewerComponent,\"component-props\":_vm.mediaviewerComponentProps,\"is-iframe\":_vm.mediaviewerIframe},on:{\"close\":function($event){return _vm.$state.$emit('mediaviewer.hide', { source: 'user' });}}})]},proxy:true}:null],null,true)}),(_vm.buffer.show_input)?_c('control-input',{attrs:{\"container\":_vm.networks,\"buffer\":_vm.buffer}}):_vm._e()]:(!_vm.activeComponent)?_c(_vm.fallbackComponent,_vm._b({tag:\"component\"},'component',_vm.fallbackComponentProps,false)):_c(_vm.activeComponent,_vm._b({tag:\"component\"},'component',_vm.activeComponentProps,false))],2)]],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _typeof = require(\"@babel/runtime-corejs3/helpers/typeof\");\n\nvar _WeakMap = require(\"@babel/runtime-corejs3/core-js-stable/weak-map\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _Object$getOwnPropertyDescriptor = require(\"@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _regenerator = _interopRequireDefault(require(\"@babel/runtime-corejs3/regenerator\"));\n\nvar _asyncToGenerator2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/asyncToGenerator\"));\n\nvar TextFormatting = _interopRequireWildcard(require(\"@/helpers/TextFormatting\"));\n\nvar _state = _interopRequireDefault(require(\"@/libs/state\"));\n\nvar _about = _interopRequireDefault(require(\"./about.html\"));\n\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== \"function\") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\n\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nvar firstRun = true;\nvar ctor = {\n data: function data() {\n return {\n about_open: false\n };\n },\n computed: {\n networks: function networks() {\n return this.$state.networks;\n },\n aboutContent: function aboutContent() {\n return _about.default;\n }\n },\n methods: {\n addNetwork: function addNetwork() {\n var nick = 'Guest' + Math.floor(Math.random() * 100);\n var network = this.$state.addNetwork(TextFormatting.t('new_network'), nick, {});\n network.showServerBuffer('settings');\n },\n toggleStateBrowser: function toggleStateBrowser() {\n this.$state.$emit('statebrowser.show');\n },\n init: function init() {\n var _this = this;\n\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {\n return _regenerator.default.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _this.$state.persistence.watchStateForChanges();\n\n _this.$emit('start', {\n fallbackComponent: _this.constructor\n });\n\n case 2:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n }))();\n }\n },\n created: function () {\n var _created = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {\n return _regenerator.default.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n if (firstRun) {\n this.init();\n firstRun = false;\n }\n\n case 1:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, this);\n }));\n\n function created() {\n return _created.apply(this, arguments);\n }\n\n return created;\n }()\n};\nvar _default = ctor;\nexports.default = _default;\n(0, _state.default)().getStartups().kiwiirccom = ctor;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"thirdparty\"]) window._kiwi_exports[\"thirdparty\"] = {};\nwindow._kiwi_exports[\"thirdparty\"][\"kiwiirccom\"]\r\nwindow._kiwi_exports.thirdparty.kiwiirccom = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../build/webpack/exports-loader.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./IrcInput.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../build/webpack/exports-loader.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./IrcInput.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StateBrowser.vue?vue&type=style&index=0&lang=less&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StateBrowser.vue?vue&type=style&index=0&lang=less&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-channelinfo\"},[_c('form',{staticClass:\"u-form kiwi-channelinfo-basicmodes\",on:{\"submit\":function($event){$event.preventDefault();}}},[_c('label',{staticClass:\"kiwi-channelinfo-topic\"},[_c('span',[_vm._v(_vm._s(_vm.$t('channel_topic')))]),_c('textarea',{directives:[{name:\"model\",rawName:\"v-model.lazy\",value:(_vm.topic),expression:\"topic\",modifiers:{\"lazy\":true}}],attrs:{\"rows\":\"2\"},domProps:{\"value\":(_vm.topic)},on:{\"change\":function($event){_vm.topic=$event.target.value}}})]),(_vm.buffer.topics.length > 1)?_c('div',{staticClass:\"kiwi-channelinfo-previoustopics\"},[_c('a',{staticClass:\"u-link\",on:{\"click\":function($event){_vm.showPrevTopics = !_vm.showPrevTopics}}},[_vm._v(\" Previous topics \"),_c('i',{class:'fa fa-caret-' + (_vm.showPrevTopics ? 'up' : 'down')})]),(_vm.showPrevTopics)?_c('ul',_vm._l((_vm.prevTopics),function(topicText,idx){return _c('li',{key:idx},[_c('span',[_vm._v(_vm._s(topicText.trim()))])])}),0):_vm._e()]):_vm._e(),_c('label',{staticClass:\"u-checkbox-wrapper\"},[_c('span',[_vm._v(_vm._s(_vm.$t('channel_moderated')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.modeM),expression:\"modeM\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.modeM)?_vm._i(_vm.modeM,null)>-1:(_vm.modeM)},on:{\"change\":function($event){var $$a=_vm.modeM,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.modeM=$$a.concat([$$v]))}else{$$i>-1&&(_vm.modeM=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.modeM=$$c}}}})]),_c('label',{staticClass:\"u-checkbox-wrapper\"},[_c('span',[_vm._v(_vm._s(_vm.$t('channel_invite')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.modeI),expression:\"modeI\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.modeI)?_vm._i(_vm.modeI,null)>-1:(_vm.modeI)},on:{\"change\":function($event){var $$a=_vm.modeI,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.modeI=$$a.concat([$$v]))}else{$$i>-1&&(_vm.modeI=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.modeI=$$c}}}})]),_c('label',{staticClass:\"u-checkbox-wrapper\"},[_c('span',[_vm._v(_vm._s(_vm.$t('channel_moderated_topic')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.modeT),expression:\"modeT\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.modeT)?_vm._i(_vm.modeT,null)>-1:(_vm.modeT)},on:{\"change\":function($event){var $$a=_vm.modeT,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.modeT=$$a.concat([$$v]))}else{$$i>-1&&(_vm.modeT=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.modeT=$$c}}}})]),_c('label',{staticClass:\"u-checkbox-wrapper\"},[_c('span',[_vm._v(_vm._s(_vm.$t('channel_external')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.modeN),expression:\"modeN\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.modeN)?_vm._i(_vm.modeN,null)>-1:(_vm.modeN)},on:{\"change\":function($event){var $$a=_vm.modeN,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.modeN=$$a.concat([$$v]))}else{$$i>-1&&(_vm.modeN=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.modeN=$$c}}}})]),_c('label',[_c('span',[_vm._v(_vm._s(_vm.$t('password')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model.lazy\",value:(_vm.modeK),expression:\"modeK\",modifiers:{\"lazy\":true}}],staticClass:\"u-input\",attrs:{\"type\":\"text\"},domProps:{\"value\":(_vm.modeK)},on:{\"change\":function($event){_vm.modeK=$event.target.value}}})])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\"use strict\";\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _setInterval2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-interval\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/createClass\"));\n\nvar WindowTitle = /*#__PURE__*/function () {\n function WindowTitle(state) {\n var _this = this;\n\n (0, _classCallCheck2.default)(this, WindowTitle);\n this.state = state;\n this.title = state.settings.windowTitle || '';\n this.alert = false; // Update the window title if we have one\n\n if (state.settings.windowTitle) {\n this.updateTitle();\n }\n\n state.$watch('settings.windowTitle', function (newVal) {\n _this.updateTitle(newVal);\n });\n state.$watch('ui.app_has_focus', function (newVal) {\n if (newVal && _this.alertTmr) {\n _this.stopAlert();\n }\n });\n state.$on('notification.title', function (enable) {\n if (enable) {\n _this.startAlert();\n } else {\n _this.stopAlert();\n }\n });\n }\n\n (0, _createClass2.default)(WindowTitle, [{\n key: \"startAlert\",\n value: function startAlert() {\n var _this2 = this;\n\n if (this.alertTmr) {\n return;\n }\n\n this.alertTmr = (0, _setInterval2.default)(function () {\n _this2.updateTitle();\n }, 1000);\n }\n }, {\n key: \"stopAlert\",\n value: function stopAlert() {\n if (this.alertTmr) {\n clearInterval(this.alertTmr);\n this.alertTmr = null;\n }\n\n this.updateTitle();\n }\n }, {\n key: \"updateTitle\",\n value: function updateTitle(newTitle) {\n if (typeof newTitle === 'string') {\n this.title = newTitle;\n }\n\n if (this.alertTmr && !this.alert) {\n window.document.title = '* ' + this.title;\n this.alert = true;\n } else {\n window.document.title = this.title;\n this.alert = false;\n }\n }\n }]);\n return WindowTitle;\n}();\n\nexports.default = WindowTitle;","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _typeof = require(\"@babel/runtime-corejs3/helpers/typeof\");\n\nvar _WeakMap = require(\"@babel/runtime-corejs3/core-js-stable/weak-map\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _Object$getOwnPropertyDescriptor = require(\"@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar TextFormatting = _interopRequireWildcard(require(\"@/helpers/TextFormatting\"));\n\nvar _AwayStatusIndicator = _interopRequireDefault(require(\"./AwayStatusIndicator\"));\n\nvar _Avatar = _interopRequireDefault(require(\"./Avatar\"));\n\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== \"function\") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\n\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nvar _default = {\n components: {\n AwayStatusIndicator: _AwayStatusIndicator.default,\n Avatar: _Avatar.default\n },\n props: ['network'],\n data: function data() {\n return {\n is_usermenu_open: false\n };\n },\n computed: {\n networkName: function networkName() {\n var name = TextFormatting.t('no_network');\n\n if (this.network) {\n name = this.network.name;\n }\n\n return name;\n },\n getUser: function getUser() {\n return this.network && this.network.currentUser() ? this.network.currentUser() : null;\n },\n isConnected: function isConnected() {\n return this.network && this.network.state === 'connected';\n }\n },\n methods: {\n clickForget: function clickForget() {\n var msg = 'This will delete all stored networks and start fresh. Are you sure?';\n /* eslint-disable no-restricted-globals, no-alert */\n\n var confirmed = confirm(msg);\n\n if (!confirmed) {\n return;\n }\n\n this.$state.persistence.forgetState();\n window.location.reload();\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"StateBrowserUsermenu\"]\r\nwindow._kiwi_exports.components.StateBrowserUsermenu = exports.default ? exports.default : exports;\r\n","\"use strict\";\n'kiwi public';\n/** @module */\n\n/**\n * Command input Alias + re-writing\n *\n * Variables used in aliases:\n * - $0 = the command being run\n * - $1 = first param of input\n * - $N = Nth param of input\n * - $1+2 = first param of input and the next 2 words\n * - $2+4 = second param of input and the next 4 words\n * - $2+ = second param of input and all words after\n * - $variable = variable as set in the vars object\n */\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _slice = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/slice\"));\n\nvar _parseInt2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/parse-int\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/createClass\"));\n\nvar AliasRewriter = /*#__PURE__*/function () {\n function AliasRewriter() {\n (0, _classCallCheck2.default)(this, AliasRewriter);\n // Max alias recursion depth\n this.recursiveDepth = 3; // Current alias recursion depth\n\n this.depth = 0;\n this.aliases = {};\n }\n /** Reset the current aliases object from a newline delimited string of aliases */\n\n\n (0, _createClass2.default)(AliasRewriter, [{\n key: \"importFromString\",\n value: function importFromString(str) {\n var _context,\n _this = this;\n\n // Clear out the current aliases before adding new ones in\n this.aliases = {};\n (0, _forEach.default)(_context = str.split('\\n')).call(_context, function (line) {\n var _context2;\n\n if (line[0] !== '/') {\n return;\n }\n\n var spaceSep = (0, _indexOf.default)(line).call(line, ' ');\n\n if (spaceSep === -1) {\n return;\n }\n\n var command = line.substring(0, spaceSep);\n var actions = (0, _trim.default)(_context2 = line.substring(spaceSep + 1)).call(_context2);\n\n if (!actions) {\n return;\n }\n\n _this.aliases[command.toLowerCase()] = actions;\n });\n } // Takes an array of words to process!\n\n }, {\n key: \"processInput\",\n value: function processInput(input, vars) {\n var words = input || [];\n var alias = this.aliases[words[0].toLowerCase()];\n var aliasLen;\n var currentAliasWord = '';\n var currentAliasWordLen = 0;\n var processedConditionals = false;\n var compiled = []; // If an alias wasn't found, return the original input\n\n if (!alias) return input; // Split the alias up into useable words\n\n alias = alias.split(' ');\n aliasLen = alias.length; // Iterate over each word and pop them into the final compiled array.\n // Any $ words are processed with the result ending into the compiled array.\n\n for (var i = 0; i < aliasLen; i++) {\n currentAliasWord = alias[i];\n currentAliasWordLen = currentAliasWord.length; // $var? word makes this command only run if the var exists\n\n if (!processedConditionals && currentAliasWord[0] === '$' && currentAliasWord[currentAliasWordLen - 1] === '?') {\n var checkVar = currentAliasWord.substr(1, currentAliasWordLen - 2);\n\n if (!vars[checkVar]) {\n compiled = [];\n break;\n } else {\n continue;\n }\n } else {\n processedConditionals = true;\n } // Non $ word\n\n\n if (currentAliasWord[0] !== '$') {\n compiled.push(currentAliasWord);\n continue;\n } // Refering to an input word ($N)\n\n\n if ((currentAliasWord[1] || '').match(/\\d/)) {\n var num = currentAliasWord.match(/\\$(\\d+)(\\+)?(\\d+)?/); // Did we find anything or does the word it refers to non-existant?\n\n if (!num || !words[num[1]]) continue;\n\n if (num[2] === '+' && num[3]) {\n // Add X number of words\n compiled = (0, _concat.default)(compiled).call(compiled, (0, _slice.default)(words).call(words, (0, _parseInt2.default)(num[1], 10), (0, _parseInt2.default)(num[1], 10) + (0, _parseInt2.default)(num[3], 10)));\n } else if (num[2] === '+') {\n // Add the remaining of the words\n compiled = (0, _concat.default)(compiled).call(compiled, (0, _slice.default)(words).call(words, (0, _parseInt2.default)(num[1], 10)));\n } else {\n // Add a single word\n compiled.push(words[(0, _parseInt2.default)(num[1], 10)]);\n }\n\n continue;\n } // Refering to a variable\n\n\n if (typeof vars[currentAliasWord.substr(1)] !== 'undefined') {\n // Get the variable\n compiled.push(vars[currentAliasWord.substr(1)]);\n continue;\n }\n }\n\n return compiled;\n }\n /** Take a string input, process any aliases and output the finalised string */\n\n }, {\n key: \"process\",\n value: function process(input, vars) {\n var line = input || '';\n var words = line.split(' ');\n var firstWord = (words[0] || '').toLowerCase();\n this.depth++;\n\n if (this.depth >= this.recursiveDepth) {\n this.depth--;\n return line;\n }\n\n if (this.aliases[firstWord]) {\n words = this.processInput(words, vars);\n firstWord = (words[0] || '').toLowerCase();\n\n if (this.aliases[firstWord]) {\n words = this.process(words.join(' '), vars).split(' ');\n }\n }\n\n this.depth--;\n return words.join(' ');\n }\n }]);\n return AliasRewriter;\n}();\n\nexports.default = AliasRewriter;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"libs\"]) window._kiwi_exports[\"libs\"] = {};\nwindow._kiwi_exports[\"libs\"][\"AliasRewriter\"]\r\nwindow._kiwi_exports.libs.AliasRewriter = exports.default ? exports.default : exports;\r\n","\"use strict\";\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _MediaViewer = _interopRequireDefault(require(\"./MediaViewer\"));\n\nvar _MessageInfo = _interopRequireDefault(require(\"./MessageInfo\"));\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nvar methods = {\n props: {},\n displayNick: function displayNick() {\n var props = this.props;\n var suffix = props.message.nick ? ':' : '';\n return props.message.nick + suffix;\n },\n userMode: function userMode(user) {\n var props = this.props;\n return props.ml.buffer.userMode(user);\n },\n userModePrefix: function userModePrefix(user) {\n var props = this.props;\n return props.ml.buffer.userModePrefix(user);\n }\n};\nvar _default = {\n inject: {\n components: {\n default: {\n MessageInfo: _MessageInfo.default,\n MediaViewer: _MediaViewer.default\n }\n }\n },\n props: {\n ml: Object,\n message: Object,\n idx: Number,\n m: {\n default: function m() {\n // vue uses this function to generate the prop. `this`==null Return our own function\n return function n() {\n // Give our methods some props context before its function is called.\n // This is only safe because the function on the methods object is called on\n // the same js tick\n methods.props = this;\n return methods;\n };\n }\n }\n }\n};\nexports.default = _default;","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserBox.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UserBox.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NotConnected.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NotConnected.vue?vue&type=script&lang=js&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _sort = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/sort\"));\n\nvar _filter = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/filter\"));\n\nvar _GlobalApi = _interopRequireDefault(require(\"@/libs/GlobalApi\"));\n\nvar _Html = _interopRequireDefault(require(\"@/libs/renderers/Html\"));\n\nvar _MessageParser = _interopRequireDefault(require(\"@/libs/MessageParser\"));\n\nvar _default = {\n props: ['network', 'buffer', 'sidebarState'],\n data: function data() {\n return {\n pluginUiSections: _GlobalApi.default.singleton().aboutBufferPlugins,\n closedSections: {}\n };\n },\n computed: {\n b: function b() {\n return this.buffer || {};\n },\n formattedTopic: function formattedTopic() {\n var blocks = (0, _MessageParser.default)(this.b.topic || '', {\n extras: false\n });\n var content = (0, _Html.default)(blocks);\n return content;\n },\n highlights: function highlights() {\n var _context, _context2, _context3, _context4, _context5, _context6;\n\n // Tap into buffer.message_count to force vuejs to update this function when\n // it changes\n\n /* eslint-disable no-unused-vars */\n var tmp = this.buffer.message_count;\n return (0, _sort.default)(_context = (0, _filter.default)(_context2 = (0, _filter.default)(_context3 = (0, _filter.default)(_context4 = (0, _filter.default)(_context5 = (0, _filter.default)(_context6 = this.buffer.getMessages()).call(_context6, function (m) {\n return m.isHighlight;\n })).call(_context5, function (m) {\n return m.type !== 'traffic';\n })).call(_context4, function (m) {\n return m.type !== 'topic';\n })).call(_context3, function (m) {\n return m.type !== 'mode';\n })).call(_context2, function (m) {\n return m.html;\n })).call(_context, function (a, b) {\n return b.time - a.time;\n });\n }\n },\n methods: {\n toggleSection: function toggleSection(section) {\n this.$set(this.closedSections, section, !this.closedSections[section]);\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"SidebarAboutBuffer\"]\r\nwindow._kiwi_exports.components.SidebarAboutBuffer = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputConfirm.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputConfirm.vue?vue&type=style&index=0&lang=css&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\nvar _default = {\n props: ['error']\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"StartupError\"]\r\nwindow._kiwi_exports.components.StartupError = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MessageInfo.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MessageInfo.vue?vue&type=script&lang=js&\"","\"use strict\";\n'kiwi public';\n/** @module */\n\nvar _typeof = require(\"@babel/runtime-corejs3/helpers/typeof\");\n\nvar _WeakMap = require(\"@babel/runtime-corejs3/core-js-stable/weak-map\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _Object$getOwnPropertyDescriptor = require(\"@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _slice = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/slice\"));\n\nvar _construct = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/reflect/construct\"));\n\nvar _toConsumableArray2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/toConsumableArray\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/createClass\"));\n\nvar _inherits2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/inherits\"));\n\nvar _possibleConstructorReturn2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/possibleConstructorReturn\"));\n\nvar _getPrototypeOf2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/getPrototypeOf\"));\n\nvar _eventemitter = _interopRequireDefault(require(\"eventemitter3\"));\n\nvar _vue = _interopRequireDefault(require(\"vue\"));\n\nvar _json = _interopRequireDefault(require(\"json5\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar _compareVersions = _interopRequireDefault(require(\"compare-versions\"));\n\nvar Misc = _interopRequireWildcard(require(\"@/helpers/Misc\"));\n\nvar _Logger = _interopRequireDefault(require(\"./Logger\"));\n\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== \"function\") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\n\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = (0, _construct.default)(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !_construct.default) return false; if (_construct.default.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call((0, _construct.default)(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nvar singletonInstance = null;\nvar pluginsToInit = [];\nvar nextPluginId = 0;\n/** The global kiwi API instance */\n\nvar GlobalApi = /*#__PURE__*/function (_EventEmitter) {\n (0, _inherits2.default)(GlobalApi, _EventEmitter);\n\n var _super = _createSuper(GlobalApi);\n\n function GlobalApi() {\n var _this;\n\n (0, _classCallCheck2.default)(this, GlobalApi);\n _this = _super.call(this); // eslint-disable-next-line no-undef\n\n _this.version = __VERSION__;\n /** A reference to the internal Vuejs instance */\n\n _this.Vue = _vue.default;\n /** Expose JSON5 so that plugins can use the same config format */\n\n _this.JSON5 = _json.default;\n /** The applications internal state */\n\n _this.state = null;\n /** The applications ThemeManager */\n\n _this.themes = null;\n _this.controlInputPlugins = [];\n _this.stateBrowserPlugins = [];\n _this.channelHeaderPlugins = [];\n _this.queryHeaderPlugins = [];\n _this.sideBarPlugins = [];\n _this.appSettingsPlugins = [];\n _this.serverViewPlugins = [];\n _this.aboutBufferPlugins = [];\n _this.tabs = (0, _create.default)(null);\n _this.isReady = false;\n /* eslint-disable no-underscore-dangle */\n\n _this.exports = window._kiwi_exports || {};\n\n _this.on('init', function () {\n _this.isReady = true;\n\n _this.initPlugins();\n });\n\n return _this;\n }\n\n (0, _createClass2.default)(GlobalApi, [{\n key: \"versionMatches\",\n value: function versionMatches(v) {\n return (0, _compareVersions.default)(this.version, v) >= 0;\n }\n /**\n * Register a plugin with kiwi\n *\n * Plugins being loaded at startup will be registered once Kiwi is ready. At any\n * other point the plugin will be registered instantly\n * @param {String} pluginName The name of this plugin\n * @param {Function} fn A callback function to start the plugin. function(kiwi, logger)\n */\n\n }, {\n key: \"plugin\",\n value: function plugin(pluginName, fn) {\n var plugin = {\n name: pluginName,\n fn: fn\n };\n\n if (this.isReady) {\n this.initPlugin(plugin);\n } else {\n pluginsToInit.push(plugin);\n }\n } // Init any plugins that were added before we were ready\n\n }, {\n key: \"initPlugins\",\n value: function initPlugins() {\n var _this2 = this;\n\n (0, _forEach.default)(pluginsToInit).call(pluginsToInit, function (plugin) {\n return _this2.initPlugin(plugin);\n });\n pluginsToInit = [];\n }\n }, {\n key: \"initPlugin\",\n value: function initPlugin(plugin) {\n var pluginLogger = _Logger.default.namespace(\"Plugin \".concat(plugin.name));\n\n try {\n plugin.fn(this, pluginLogger);\n this.state.$emit('plugin.loaded', {\n name: plugin.name\n });\n } catch (err) {\n pluginLogger.error(err.stack);\n }\n }\n /**\n * Get a reference to an internal Kiwi module\n *\n * E.g. require('helpers/TextFormatting');\n * @param {String} mod The module path\n */\n\n }, {\n key: \"require\",\n value: function require(modPath) {\n var path = modPath.replace(/\\//g, '.');\n\n var mod = _lodash.default.get(this.exports, path);\n\n if (typeof mod === 'undefined') {\n _Logger.default.error('Module does not exist: ' + modPath);\n }\n\n return mod;\n }\n }, {\n key: \"setState\",\n value: function setState(state) {\n var _this3 = this;\n\n this.state = state; // Hacky, but since Vues emitter doesnt support 'all', hijack its $emit call\n // so that we can forward the event on to plugins\n\n var stateEmit = this.state.$emit;\n var thisEmit = this.emit;\n\n this.state.$emit = function () {\n var _context3;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n try {\n var _context, _context2;\n\n thisEmit.call.apply(thisEmit, (0, _concat.default)(_context = [_this3, 'all', args[0]]).call(_context, (0, _toConsumableArray2.default)((0, _slice.default)(args).call(args, 1))));\n thisEmit.call.apply(thisEmit, (0, _concat.default)(_context2 = [_this3]).call(_context2, args));\n } catch (err) {\n _Logger.default.error(err.stack);\n }\n\n return stateEmit.call.apply(stateEmit, (0, _concat.default)(_context3 = [_this3.state]).call(_context3, args));\n }; // Let plugins emit events into the internal state\n\n\n this.emit = function () {\n var _context4, _context5;\n\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n stateEmit.call.apply(stateEmit, (0, _concat.default)(_context4 = [_this3.state]).call(_context4, args));\n thisEmit.call.apply(thisEmit, (0, _concat.default)(_context5 = [_this3]).call(_context5, args));\n };\n }\n }, {\n key: \"setThemeManager\",\n value: function setThemeManager(themeManager) {\n this.themes = themeManager;\n }\n /**\n * Change the logging level output\n * @param {number} newLevel The new logging level\n */\n\n }, {\n key: \"logLevel\",\n value: function logLevel(newLevel) {\n _Logger.default.setLevel(newLevel);\n }\n }, {\n key: \"log\",\n get: function get() {\n return _Logger.default;\n }\n /**\n * Add a DOM element to different parts of the Kiwi UI\n * - addUi('input', domElement)\n * - addUi('browser', domElement)\n * - addUi('header_channel', domElement)\n * - addUi('header_query', domElement)\n * @param {string} type Where this DOM element should be added\n * @param {element} element The HTML element to add\n * @param {object} args Optional arguments for this plugis\n */\n\n }, {\n key: \"addUi\",\n value: function addUi(type, element) {\n var args = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var plugin = {\n el: element,\n id: nextPluginId++,\n args: args\n };\n\n switch (type) {\n case 'input':\n this.controlInputPlugins.push(plugin);\n break;\n\n case 'browser':\n this.stateBrowserPlugins.push(plugin);\n break;\n\n case 'header_channel':\n this.channelHeaderPlugins.push(plugin);\n break;\n\n case 'header_query':\n this.queryHeaderPlugins.push(plugin);\n break;\n\n case 'about_buffer':\n this.aboutBufferPlugins.push(plugin);\n break;\n\n default:\n break;\n }\n }\n /**\n * Add a Vue component as a tab to different tabbed views in the Kiwi API\n * - addTab('channel', 'title', component, props)\n * - addTab('settings', 'title', component, props)\n * - addTab('server', 'title', component, props)\n * @param {String} type The type of tab to add. This determines where it will be shown\n * @param {String} title The title shown on the tab\n * @param {Component} component The vuejs component that is displayed for this tab\n * @param {Object} props Optional properties for the vuejs component\n */\n\n }, {\n key: \"addTab\",\n value: function addTab(type, title, component, props) {\n var plugin = {\n id: nextPluginId++,\n title: title,\n component: component,\n props: props\n };\n\n switch (type) {\n case 'channel':\n this.sideBarPlugins.push(plugin);\n break;\n\n case 'settings':\n this.appSettingsPlugins.push(plugin);\n break;\n\n case 'server':\n this.serverViewPlugins.push(plugin);\n break;\n\n default:\n break;\n }\n }\n /**\n * Register a Vue component that may be shown in future. It is shown over the entire\n * client alongside the StateBrowser\n * @param {String} name A name to reference this view in future\n * @param {Component} component The vuejs component to create the view\n * @param {Object} props Optional properties the the vuejs component\n */\n\n }, {\n key: \"addView\",\n value: function addView(name, component, props) {\n this.tabs[name] = {\n id: nextPluginId++,\n component: _vue.default.extend(component),\n props: props || {}\n };\n }\n /**\n * Show a previously registered view\n * @param {String} name The name of previously registered view to show\n */\n\n }, {\n key: \"showView\",\n value: function showView(name) {\n // null disables any active component and reverts the UI back to the buffers\n var tab = this.tabs[name];\n\n if (tab) {\n this.state.$emit('active.component', tab.component, tab.props);\n } else {\n this.state.$emit('active.component', null);\n }\n }\n /**\n * Show a Vuejs component in the sidebar\n * @param {Object} component The vuejs component to render\n */\n\n }, {\n key: \"showInSidebar\",\n value: function showInSidebar(component) {\n this.state.$emit('sidebar.component', component);\n }\n /**\n * Add a custom startup screen that may be loaded by the configuration file\n * @param {String} name The name of this startup screen\n * @param {Object} ctor The constructor object for the vuejs component\n */\n\n }, {\n key: \"addStartup\",\n value: function addStartup(name, ctor) {\n var startups = this.state.getStartups();\n startups[name] = ctor;\n }\n /**\n *\n * @param {String} dest The module path to replace\n * @param {Object} source The new module to insert in place\n */\n\n }, {\n key: \"replaceModule\",\n value: function replaceModule(dest, source) {\n var mod = this.require(dest);\n\n if (!mod) {\n throw new Error(\"The module \".concat(dest, \" does not exist\"));\n }\n\n Misc.replaceObjectProps(mod, source);\n }\n }], [{\n key: \"singleton\",\n value: function singleton() {\n singletonInstance = singletonInstance || new GlobalApi();\n return singletonInstance;\n }\n }]);\n return GlobalApi;\n}(_eventemitter.default);\n\nexports.default = GlobalApi;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"libs\"]) window._kiwi_exports[\"libs\"] = {};\nwindow._kiwi_exports[\"libs\"][\"GlobalApi\"]\r\nwindow._kiwi_exports.libs.GlobalApi = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TypingStatusIndicator.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TypingStatusIndicator.vue?vue&type=script&lang=js&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\n\nvar _find = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/find\"));\n\nvar _regenerator = _interopRequireDefault(require(\"@babel/runtime-corejs3/regenerator\"));\n\nvar _asyncToGenerator2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/asyncToGenerator\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar _Logger = _interopRequireDefault(require(\"@/libs/Logger\"));\n\nvar _CommonLayout = _interopRequireDefault(require(\"./CommonLayout\"));\n\nvar log = _Logger.default.namespace('Startup/kiwiBnc');\n\nvar _default = {\n components: {\n StartupLayout: _CommonLayout.default\n },\n data: function data() {\n return {\n loading: false,\n username: '',\n password: '',\n statusMessage: ''\n };\n },\n computed: {\n greetingText: function greetingText() {\n var greeting = this.$state.settings.startupOptions.greetingText;\n return typeof greeting === 'string' ? greeting : this.$t('start_greeting');\n },\n buttonText: function buttonText() {\n if (this.loading) {\n return '';\n }\n\n var greeting = this.$state.settings.startupOptions.buttonText;\n return typeof greeting === 'string' ? greeting : this.$t('start_button');\n }\n },\n methods: {\n startUp: function () {\n var _startUp = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {\n var _this = this;\n\n var bncnet, cleanUpEvents, onRegistered, onError, onClose;\n return _regenerator.default.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n this.statusMessage = this.$t('logging_in');\n this.loading = true;\n bncnet = this.getBncNetwork();\n\n cleanUpEvents = function cleanUpEvents() {\n bncnet.ircClient.off('registered', onRegistered);\n bncnet.ircClient.off('irc error', onError);\n bncnet.ircClient.off('close', onClose);\n };\n\n onRegistered = /*#__PURE__*/function () {\n var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {\n var bncNetworks, i, network, buffers;\n return _regenerator.default.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n cleanUpEvents();\n _context.next = 3;\n return bncnet.ircClient.bnc.getNetworks();\n\n case 3:\n bncNetworks = _context.sent;\n i = 0;\n\n case 5:\n if (!(i < bncNetworks.length)) {\n _context.next = 22;\n break;\n }\n\n network = bncNetworks[i];\n network.buffers = [];\n _context.prev = 8;\n _context.next = 11;\n return bncnet.ircClient.bnc.getBuffers(network.name);\n\n case 11:\n buffers = _context.sent;\n network.buffers = buffers;\n _context.next = 18;\n break;\n\n case 15:\n _context.prev = 15;\n _context.t0 = _context[\"catch\"](8);\n // Log the error here or something\n log.error(_context.t0);\n\n case 18:\n _this.addNetworkToState(network);\n\n case 19:\n i++;\n _context.next = 5;\n break;\n\n case 22:\n _this.monitorNetworkChanges(bncnet, bncNetworks);\n\n _this.$refs.layout.close();\n\n case 24:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, null, [[8, 15]]);\n }));\n\n return function onRegistered() {\n return _ref.apply(this, arguments);\n };\n }();\n\n onError = function onError(event) {\n cleanUpEvents();\n _this.statusMessage = _this.$t('invalid_login');\n _this.loading = false;\n };\n\n onClose = function onClose(event) {\n cleanUpEvents();\n _this.statusMessage = _this.$t('invalid_login');\n _this.loading = false;\n };\n\n bncnet.ircClient.once('registered', onRegistered);\n bncnet.ircClient.once('irc error', onError);\n bncnet.ircClient.once('close', onClose);\n bncnet.ircClient.connect();\n\n case 11:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee2, this);\n }));\n\n function startUp() {\n return _startUp.apply(this, arguments);\n }\n\n return startUp;\n }(),\n getBncNetwork: function getBncNetwork() {\n var bnc = this.$state.setting('bnc');\n\n if (bnc.network) {\n bnc.username = this.username;\n bnc.password = this.password;\n return bnc.network;\n }\n\n var options = this.$state.settings.startupOptions; // Indicate that all our connections will be going through a BNC\n\n bnc.active = true;\n bnc.server = options.server || '';\n bnc.port = options.port || 6667;\n bnc.tls = !!options.tls;\n bnc.username = this.username;\n bnc.password = this.password;\n var bncnet = this.$state.addNetwork('bnccontrol', this.username, {\n server: bnc.server,\n port: bnc.port,\n tls: bnc.tls\n });\n bnc.network = bncnet;\n return bncnet;\n },\n addNetworkToState: function addNetworkToState(network) {\n var _context3,\n _this2 = this;\n\n // Expects network to be in the format of:\n // {\n // \"buffers\":[{\"channel\":\"1\",\"name\":\"#prawnsalad\",\"joined\":\"1\"}],\n // \"name\":\"freenode\",\n // \"channel\":\"1\",\n // \"connected\":\"1\",\n // \"host\":\"irc.freenode.net\",\n // \"port\":\"6667\",\n // \"tls\":\"0\",\n // \"nick\":\"notprawn99829\"\n // },\n var net = this.$state.addNetwork(network.name, network.nick, {\n server: network.host,\n port: network.port,\n tls: network.tls,\n password: network.password,\n bncname: network.name,\n username: network.user\n });\n (0, _forEach.default)(_context3 = network.buffers).call(_context3, function (buffer) {\n var newBuffer = _this2.$state.addBuffer(net.id, buffer.name);\n\n if (buffer.joined) {\n newBuffer.enabled = true;\n }\n\n if (buffer.seen) {\n newBuffer.last_read = new Date(buffer.seen).getTime();\n }\n });\n },\n monitorNetworkChanges: function monitorNetworkChanges(bncNet, bncNetworks) {\n var _this3 = this;\n\n var existingNets = (0, _create.default)(null);\n\n function rememberNetworks() {\n var _context4;\n\n (0, _forEach.default)(_context4 = this.$state.networks).call(_context4, function (network) {\n if (!network.connection.bncname) {\n return;\n }\n\n existingNets[network.connection.bncname] = {\n name: network.connection.bncname,\n host: network.connection.server,\n port: network.connection.port,\n tls: network.connection.tls,\n password: network.password,\n nick: network.nick,\n username: network.username\n };\n });\n }\n\n rememberNetworks();\n\n var saveState = function saveState(newVal) {\n var _context5;\n\n (0, _forEach.default)(_context5 = _this3.$state.networks).call(_context5, function (network) {\n // Only deal with BNC networks\n if (network.name === 'bnccontrol') {\n return;\n }\n\n var bncName = network.connection.bncname;\n var current = existingNets[bncName] || {};\n var tags = {};\n\n if (network.connection.server !== current.host) {\n tags.host = network.connection.server;\n }\n\n if (network.connection.port !== current.port) {\n tags.port = network.connection.port;\n }\n\n if (network.connection.tls !== current.tls) {\n tags.tls = network.connection.tls;\n }\n\n if (network.password !== current.password) {\n tags.password = network.password;\n }\n\n if (network.nick !== current.nick) {\n tags.nick = network.nick;\n }\n\n if (network.username !== current.username) {\n tags.user = network.username;\n } // A newly added network would not have a current name property set yet.\n // Only save the network if we've entered a host.\n\n\n if (!current.name && tags.host) {\n network.connection.bncname = network.name;\n bncNet.ircClient.bnc.addNetwork(network.name, tags.host, tags.port, tags.tls, tags.nick, tags.user, tags.password);\n } else if (current.name) {\n bncNet.ircClient.bnc.saveNetwork(bncName, tags);\n }\n });\n rememberNetworks();\n };\n\n var debouncedSaveState = _lodash.default.debounce(saveState, 2000);\n\n this.$state.$watch('networks', debouncedSaveState, {\n deep: true\n }); // Just before we connect to a network, make sure the BNC is sabed and connected to\n // it or at least trying to connect.\n\n this.$state.$on('network.connecting', function (event) {\n saveState();\n var netName = event.network.connection.bncname;\n var networkFromBnc = (0, _find.default)(_lodash.default).call(_lodash.default, bncNetworks, {\n name: netName\n });\n\n if (networkFromBnc && !networkFromBnc.connected) {\n bncNet.ircClient.raw('BOUNCER connect ' + netName);\n }\n }); // Very hacky until we have network name renaming on the bnc. When a new network\n // is added, change the name to the next available network name.\n\n this.$state.$on('network.new', function (event) {\n var currentNum = 1;\n var existingNet = true;\n\n while (existingNet) {\n existingNet = (0, _find.default)(_lodash.default).call(_lodash.default, _this3.$state.networks, {\n name: 'Network' + currentNum\n });\n\n if (!existingNet) {\n event.network.name = 'Network' + currentNum;\n }\n\n currentNum++;\n }\n });\n this.$state.$on('network.removed', function (event) {\n bncNet.ircClient.bnc.removeNetwork(event.network.connection.bncname);\n });\n this.$state.$on('buffer.close', function (event) {\n var buffer = event.buffer;\n var network = event.buffer.getNetwork();\n var bncName = network.connection.bncname;\n\n if (bncName) {\n bncNet.ircClient.bnc.closeBuffer(bncName, buffer.name);\n }\n });\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nif(!window._kiwi_exports[\"components\"][\"startups\"]) window._kiwi_exports[\"components\"][\"startups\"] = {};\nwindow._kiwi_exports[\"components\"][\"startups\"][\"KiwiBnc\"]\r\nwindow._kiwi_exports.components.startups.KiwiBnc = exports.default ? exports.default : exports;\r\n","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _typeof = require(\"@babel/runtime-corejs3/helpers/typeof\");\n\nvar _WeakMap = require(\"@babel/runtime-corejs3/core-js-stable/weak-map\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _Object$getOwnPropertyDescriptor = require(\"@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar Misc = _interopRequireWildcard(require(\"@/helpers/Misc\"));\n\nvar _CommonLayout = _interopRequireDefault(require(\"./CommonLayout\"));\n\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== \"function\") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\n\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nvar _default = {\n components: {\n StartupLayout: _CommonLayout.default\n },\n data: function data() {\n return {\n network: null,\n network_extras: null,\n username: '',\n password: '',\n znc_network: '',\n showNetwork: true,\n showPass: true,\n showUser: true,\n show_password_box: false\n };\n },\n computed: {\n greetingText: function greetingText() {\n var greeting = this.$state.settings.startupOptions.greetingText;\n return typeof greeting === 'string' ? greeting : this.$t('start_greeting');\n },\n buttonText: function buttonText() {\n var greeting = this.$state.settings.startupOptions.buttonText;\n return typeof greeting === 'string' ? greeting : this.$t('start_button');\n },\n readyToStart: function readyToStart() {\n return this.username && (this.password || this.showPass === false);\n },\n infoContent: function infoContent() {\n return this.$state.settings.startupOptions.infoContent || '';\n }\n },\n created: function created() {\n var options = this.$state.settings.startupOptions;\n this.username = options.username || '';\n this.password = options.password || '';\n this.znc_network = window.location.hash.substr(1) || options.network || '';\n this.showNetwork = typeof options.showNetwork === 'boolean' ? options.showNetwork : true;\n this.showUser = typeof options.showUser === 'boolean' ? options.showUser : true;\n this.showPass = typeof options.showPass === 'boolean' ? options.showPass : true;\n\n if (options.autoConnect && this.username && this.password) {\n this.startUp();\n }\n },\n methods: {\n readableStateError: function readableStateError(err) {\n return Misc.networkErrorMessage(err);\n },\n formSubmit: function formSubmit() {\n if (this.readyToStart) {\n this.startUp();\n }\n },\n addNetwork: function addNetwork(netName) {\n var options = this.$state.settings.startupOptions;\n var password = this.username;\n\n if (netName) {\n password += '/' + netName;\n }\n\n password += ':' + this.password;\n var net = this.$state.addNetwork(netName, 'ZNC', {\n server: (0, _trim.default)(_lodash.default).call(_lodash.default, options.server),\n port: options.port,\n tls: options.tls,\n password: password\n });\n return net;\n },\n startUp: function startUp() {\n var _this = this;\n\n if (this.network) {\n this.$state.removeNetwork(this.network.id);\n }\n\n var netList = _lodash.default.compact(this.znc_network.split(','));\n\n if (netList.length === 0) {\n netList.push('');\n } // add our first network and make sure we can connect\n // before trying to add other networks.\n\n\n var net = this.network = this.addNetwork(netList.shift());\n this.network_extras = netList;\n\n var onRegistered = function onRegistered() {\n var _context;\n\n _this.$state.setActiveBuffer(net.id, net.serverBuffer().name);\n\n net.ircClient.off('registered', onRegistered);\n net.ircClient.off('close', onClosed);\n (0, _forEach.default)(_context = _this.network_extras).call(_context, function (netName, idx) {\n var extraNet = _this.addNetwork((0, _trim.default)(_lodash.default).call(_lodash.default, netName));\n\n extraNet.ircClient.connect();\n });\n\n _this.$refs.layout.close();\n };\n\n var onClosed = function onClosed() {\n net.ircClient.off('registered', onRegistered);\n net.ircClient.off('close', onClosed);\n };\n\n net.ircClient.once('registered', onRegistered);\n net.ircClient.once('close', onClosed);\n net.ircClient.connect();\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nif(!window._kiwi_exports[\"components\"][\"startups\"]) window._kiwi_exports[\"components\"][\"startups\"] = {};\nwindow._kiwi_exports[\"components\"][\"startups\"][\"ZncLogin\"]\r\nwindow._kiwi_exports.components.startups.ZncLogin = exports.default ? exports.default : exports;\r\n","import { render, staticRenderFns } from \"./MediaViewer.vue?vue&type=template&id=47b80fad&\"\nimport script from \"./MediaViewer.vue?vue&type=script&lang=js&\"\nexport * from \"./MediaViewer.vue?vue&type=script&lang=js&\"\nimport style0 from \"./MediaViewer.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BufferKey.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./BufferKey.vue?vue&type=script&lang=js&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Personal.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Personal.vue?vue&type=style&index=0&lang=css&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _typeof = require(\"@babel/runtime-corejs3/helpers/typeof\");\n\nvar _WeakMap = require(\"@babel/runtime-corejs3/core-js-stable/weak-map\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _Object$getOwnPropertyDescriptor = require(\"@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _toConsumableArray2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/toConsumableArray\"));\n\nvar _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\n\nvar _flags = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/flags\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _bind = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/bind\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _setTimeout2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-timeout\"));\n\nvar _filter = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/filter\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _map = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/map\"));\n\nvar _sort = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/sort\"));\n\nvar _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\n\nvar _strftime = _interopRequireDefault(require(\"strftime\"));\n\nvar _Logger = _interopRequireDefault(require(\"@/libs/Logger\"));\n\nvar bufferTools = _interopRequireWildcard(require(\"@/libs/bufferTools\"));\n\nvar _BufferKey = _interopRequireDefault(require(\"./BufferKey\"));\n\nvar _MessageListMessageCompact = _interopRequireDefault(require(\"./MessageListMessageCompact\"));\n\nvar _MessageListMessageModern = _interopRequireDefault(require(\"./MessageListMessageModern\"));\n\nvar _MessageListMessageInline = _interopRequireDefault(require(\"./MessageListMessageInline\"));\n\nvar _LoadingAnimation = _interopRequireDefault(require(\"./LoadingAnimation.vue\"));\n\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== \"function\") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\n\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nrequire('@/libs/polyfill/Element.closest');\n\nvar log = _Logger.default.namespace('MessageList.vue'); // If we're scrolled up more than this many pixels, don't auto scroll down to the bottom\n// of the message list\n\n\nvar BOTTOM_SCROLL_MARGIN = 60;\nvar _default = {\n components: {\n BufferKey: _BufferKey.default,\n MessageListMessageModern: _MessageListMessageModern.default,\n MessageListMessageCompact: _MessageListMessageCompact.default,\n MessageListMessageInline: _MessageListMessageInline.default,\n LoadingAnimation: _LoadingAnimation.default\n },\n props: ['buffer'],\n data: function data() {\n return {\n smooth_scroll: false,\n auto_scroll: true,\n force_smooth_scroll: null,\n chathistoryAvailable: true,\n hover_nick: '',\n message_info_open: null,\n timeToClose: false,\n startClosing: false,\n selectedMessages: (0, _create.default)(null)\n };\n },\n computed: {\n thisMl: function thisMl() {\n return this;\n },\n listType: function listType() {\n if (this.$state.setting('messageLayout')) {\n log.info('Deprecation Warning: The config option \\'messageLayout\\' has been moved to buffers.messageLayout');\n }\n\n return this.buffer.setting('messageLayout') || this.$state.setting('messageLayout');\n },\n useExtraFormatting: function useExtraFormatting() {\n // Enables simple markdown formatting\n return this.buffer.setting('extra_formatting');\n },\n shouldShowChathistoryTools: function shouldShowChathistoryTools() {\n // Only show it if we're connected\n if (this.buffer.getNetwork().state !== 'connected') {\n return false;\n }\n\n var isCorrectBufferType = this.buffer.isChannel() || this.buffer.isQuery();\n var isSupported = !!this.buffer.getNetwork().ircClient.chathistory.isSupported();\n return isCorrectBufferType && isSupported && (0, _flags.default)(this.buffer).chathistory_available;\n },\n shouldRequestChannelKey: function shouldRequestChannelKey() {\n return this.buffer.getNetwork().state === 'connected' && this.buffer.isChannel() && (0, _flags.default)(this.buffer).channel_badkey;\n },\n ourNick: function ourNick() {\n return this.buffer ? this.buffer.getNetwork().nick : '';\n },\n filteredMessagesGroupedDay: function filteredMessagesGroupedDay() {\n var _context;\n\n // Group messages by day\n var days = [];\n var lastDay = null;\n (0, _forEach.default)(_context = this.filteredMessages).call(_context, function (message) {\n var day = Math.floor(message.time / 1000 / 86400);\n\n if (!lastDay || day !== lastDay) {\n days.push({\n dayNum: day,\n messages: []\n });\n lastDay = day;\n }\n\n days[days.length - 1].messages.push(message);\n });\n return days;\n },\n filteredMessages: function filteredMessages() {\n return bufferTools.orderedMessages(this.buffer);\n },\n shouldShowJoiningLoader: function shouldShowJoiningLoader() {\n return this.buffer.isChannel() && this.buffer.enabled && !this.buffer.joined && this.buffer.getNetwork().state === 'connected';\n }\n },\n watch: {\n filteredMessages: function filteredMessages() {\n var _this = this;\n\n // Data has changed and now preparing to update the DOM.\n // Check our scrolling state before the DOM updates so that we know if we're scrolled\n // at the bottom before new messages are added\n this.checkScrollingState(); // Wait until after the DOM has updated before possibly scrolling down based on the\n // previous check\n\n this.$nextTick(function () {\n _this.maybeScrollToBottom();\n });\n },\n buffer: function buffer(newBuffer, oldBuffer) {\n var _this2 = this;\n\n if (oldBuffer) {\n oldBuffer.isMessageTrimming = true;\n }\n\n if (!newBuffer) {\n return;\n }\n\n this.message_info_open = null;\n\n if (this.buffer.getNetwork().state === 'connected') {\n (0, _flags.default)(newBuffer).has_opened = true;\n }\n\n this.auto_scroll = true;\n this.force_smooth_scroll = false;\n this.$nextTick(function () {\n _this2.scrollToBottom();\n });\n }\n },\n mounted: function mounted() {\n var _this3 = this;\n\n this.addCopyListeners();\n this.$nextTick(function () {\n _this3.scrollToBottom(); // this.smooth_scroll = true;\n\n });\n this.listen(this.$state, 'mediaviewer.opened', function () {\n _this3.$nextTick(_this3.maybeScrollToBottom.apply(_this3));\n });\n this.listen(this.$state, 'messagelist.scrollto', function (opt) {\n if (opt && opt.id) {\n _this3.maybeScrollToId(opt.id);\n }\n });\n },\n methods: {\n isHoveringOverMessage: function isHoveringOverMessage(message) {\n return message.nick && message.nick.toLowerCase() === this.hover_nick.toLowerCase();\n },\n toggleMessageInfo: function toggleMessageInfo(message) {\n if (!message) {\n this.message_info_open = null;\n } else if (this.message_info_open === message) {// It's already open, so don't do anything\n } else if (this.canShowInfoForMessage(message)) {\n var _context2;\n\n // If in the process of selecting text, don't show the info box\n var sel = window.getSelection();\n\n if (sel.rangeCount > 0) {\n var range = sel.getRangeAt(0);\n\n if (range && !range.collapsed) {\n return;\n }\n }\n\n this.message_info_open = message;\n this.$nextTick((0, _bind.default)(_context2 = this.maybeScrollToBottom).call(_context2, this));\n }\n },\n shouldShowUnreadMarker: function shouldShowUnreadMarker(message) {\n var _context3;\n\n var idx = (0, _indexOf.default)(_context3 = this.filteredMessages).call(_context3, message);\n var previous = this.filteredMessages[idx - 1];\n var current = this.filteredMessages[idx];\n var lastRead = this.buffer.last_read;\n\n if (!lastRead) {\n return false;\n }\n\n if (!current) {\n return false;\n } // If the last message has been read, and this message not read\n\n\n if (previous && previous.time < lastRead && current.time > lastRead) {\n return true;\n }\n\n return false;\n },\n shouldShowDateChangeMarker: function shouldShowDateChangeMarker(idx) {\n var previous = this.filteredMessages[idx - 1];\n var current = this.filteredMessages[idx];\n\n if (!previous && new Date(current.time).getDay() !== new Date().getDay()) {\n // The first message of the lsit and it's not today\n return true;\n } else if (!previous) {\n // The first message of the lsit but it's today\n return false;\n } // If the last message has been read, and this message not read\n\n\n if (new Date(previous.time).getDay() !== new Date(current.time).getDay()) {\n return true;\n }\n\n return false;\n },\n canShowInfoForMessage: function canShowInfoForMessage(message) {\n var showInfoForTypes = ['privmsg', 'notice', 'action'];\n return (0, _indexOf.default)(showInfoForTypes).call(showInfoForTypes, message.type) > -1;\n },\n bufferSetting: function bufferSetting(key) {\n return this.buffer.setting(key);\n },\n formatTime: function formatTime(time) {\n return (0, _strftime.default)(this.buffer.setting('timestamp_format') || '%T', new Date(time));\n },\n formatTimeFull: function formatTimeFull(time) {\n var format = this.buffer.setting('timestamp_full_format');\n return format ? (0, _strftime.default)(format, new Date(time)) : new Date(time).toLocaleString();\n },\n formatMessage: function formatMessage(message) {\n return message.toHtml(this);\n },\n isMessageHighlight: function isMessageHighlight(message) {\n // Highlighting ourselves when we join or leave a channel is silly\n if (message.type === 'traffic') {\n return false;\n }\n\n return message.isHighlight;\n },\n userColour: function userColour(user) {\n if (user && this.bufferSetting('colour_nicknames_in_messages')) {\n return user.getColour();\n }\n\n return '';\n },\n openUserBox: function openUserBox(nick) {\n var user = this.$state.getUser(this.buffer.networkid, nick);\n\n if (user) {\n this.$state.$emit('userbox.show', user, {\n buffer: this.buffer\n });\n }\n },\n onListClick: function onListClick(event) {\n this.toggleMessageInfo();\n },\n onMessageDblClick: function onMessageDblClick(event, message) {\n clearTimeout(this.messageClickTmr);\n var dataNick = event.target.getAttribute('data-nick');\n\n if (!dataNick) {\n return;\n }\n\n var network = this.buffer.getNetwork();\n var user = network.userByName(dataNick); // The user might have left use dataNick as fallback\n\n var nick = user && user.nick ? user.nick : dataNick;\n this.$state.$emit('input.insertnick', nick);\n },\n onMessageClick: function onMessageClick(event, message, delay) {\n // Delaying the click for 200ms allows us to check for a second click. ie. double click\n // Quick hack as we only need double click for nicks, nothing else\n if (delay && event.target.getAttribute('data-nick')) {\n clearTimeout(this.messageClickTmr);\n this.messageClickTmr = (0, _setTimeout2.default)(this.onMessageClick, 200, event, message, false);\n return;\n }\n\n var isLink = event.target.tagName === 'A';\n var channelName = event.target.getAttribute('data-channel-name');\n\n if (channelName && isLink) {\n var network = this.buffer.getNetwork();\n this.$state.addBuffer(this.buffer.networkid, channelName);\n network.ircClient.join(channelName);\n this.$state.setActiveBuffer(this.buffer.networkid, channelName);\n return;\n }\n\n var userNick = event.target.getAttribute('data-nick');\n\n if (userNick && isLink) {\n this.openUserBox(userNick);\n return;\n }\n\n var url = event.target.getAttribute('data-url');\n\n if (url && isLink) {\n if (this.$state.setting('buffers.inline_link_auto_previews')) {\n message.embed.type = 'url';\n message.embed.payload = url;\n } else {\n this.$state.$emit('mediaviewer.show', url);\n }\n }\n\n if (this.message_info_open && this.message_info_open !== message) {\n // Clicking on another message while another info is open, just close the info\n this.toggleMessageInfo();\n event.preventDefault();\n return;\n }\n\n if (this.$state.ui.is_touch && this.$state.setting('buffers.show_message_info')) {\n if (this.canShowInfoForMessage(message) && event.target.nodeName === 'A') {\n // We show message info boxes on touch screen devices so that the user has an\n // option to preview the links or do other stuff.\n event.preventDefault();\n }\n\n this.toggleMessageInfo(message);\n }\n },\n checkScrollingState: function checkScrollingState() {\n var el = this.$el;\n var scrolledUpByPx = el.scrollHeight - (el.offsetHeight + el.scrollTop); // We need to know at this point (before the DOM has updated with new messages) if we\n // are at the bottom of the messagelist or not, otherwise once the DOM has updated then\n // it is too late to determine if we should auto scroll down\n\n if (scrolledUpByPx > BOTTOM_SCROLL_MARGIN) {\n this.auto_scroll = false;\n this.buffer.isMessageTrimming = false;\n } else {\n this.auto_scroll = true;\n this.buffer.isMessageTrimming = true;\n }\n\n if (this.force_smooth_scroll !== null) {\n this.smooth_scroll = this.force_smooth_scroll;\n this.force_smooth_scroll = null; // TODO: Enabling smooth_scroll breaks the auto-scroll-to-bottom on fast buffers as\n // it takes time to scroll down and it looks like we're scrolled too far up when\n // detecting if were scrolled up or not. Look into ways around this so that we\n // can enable it as it does look a lot better.\n // } else if (scrolledUpByPx < BOTTOM_SCROLL_MARGIN) {\n // this.smooth_scroll = true;\n } else {\n this.smooth_scroll = false;\n }\n },\n onListResize: function onListResize(e) {\n // The messagelist has resized or had new content added so check if we should auto\n // scroll down to the bottom\n this.maybeScrollToBottom();\n },\n scrollToBottom: function scrollToBottom() {\n this.$el.scrollTop = this.$el.scrollHeight;\n },\n maybeScrollToBottom: function maybeScrollToBottom() {\n if (this.auto_scroll) {\n this.scrollToBottom();\n }\n },\n maybeScrollToId: function maybeScrollToId(id) {\n var messageElement = this.$el.querySelector('.kiwi-messagelist-message[data-message-id=\"' + id + '\"]');\n\n if (messageElement && messageElement.offsetTop) {\n this.$el.scrollTop = messageElement.offsetTop;\n this.auto_scroll = false;\n }\n },\n getSelectedMessages: function getSelectedMessages() {\n var sel = document.getSelection();\n var r = sel.getRangeAt(0);\n var messageEls = (0, _toConsumableArray2.default)(this.$el.querySelectorAll('.kiwi-messagelist-message'));\n var selectedMessageEls = (0, _filter.default)(messageEls).call(messageEls, function (el) {\n return r.intersectsNode(el);\n });\n return selectedMessageEls;\n },\n restrictTextSelection: function restrictTextSelection() {\n // Prevents the selection cursor escaping the message list.\n document.querySelector('body').classList.add('kiwi-unselectable');\n this.$el.style.userSelect = 'text';\n },\n unrestrictTextSelection: function unrestrictTextSelection() {\n // Allows all page elements to be selected again.\n document.querySelector('body').classList.remove('kiwi-unselectable');\n this.$el.style.userSelect = 'auto';\n },\n removeSelections: function removeSelections() {\n var removeNative = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n this.selectedMessages = (0, _create.default)(null);\n var selection = document.getSelection();\n\n if (removeNative && selection) {\n // stops the native browser selection being left behind after ctrl+c\n selection.removeAllRanges();\n }\n },\n addCopyListeners: function addCopyListeners() {\n var _this4 = this;\n\n // Better copy pasting\n var LogFormatter = function LogFormatter(msg) {\n var _context4;\n\n var text = '';\n\n switch (msg.type) {\n case 'privmsg':\n text = (0, _concat.default)(_context4 = \"<\".concat(msg.nick, \"> \")).call(_context4, msg.message);\n break;\n\n case 'nick':\n case 'mode':\n case 'action':\n case 'traffic':\n text = \"\".concat(msg.message);\n break;\n\n default:\n text = msg.message;\n }\n\n if (text.length) {\n var _context5;\n\n return (0, _concat.default)(_context5 = \"[\".concat(new Date(msg.time).toLocaleTimeString({\n hour: '2-digit',\n minute: '2-digit',\n second: '2-digit'\n }), \"] \")).call(_context5, text);\n }\n\n return null;\n };\n\n var copyData = '';\n var selecting = false;\n var selectionChangeOff = null;\n this.listen(document, 'selectstart', function (e) {\n if (!_this4.$el.contains(e.target)) {\n // Selected elsewhere on the page\n copyData = '';\n\n _this4.removeSelections();\n\n return;\n }\n\n _this4.removeSelections();\n\n selectionChangeOff = _this4.listen(document, 'selectionchange', onSelectionChange);\n });\n this.listen(document, 'mouseup', function (e) {\n selectionChangeOff && selectionChangeOff();\n\n _this4.unrestrictTextSelection();\n\n if (selecting) {\n e.preventDefault();\n }\n\n selecting = false;\n });\n\n var onSelectionChange = function onSelectionChange(e) {\n if (!_this4.$el) {\n return true;\n }\n\n copyData = ''; // Store the text data to be copied in this.\n\n var selection = document.getSelection();\n\n if (!selection || !selection.anchorNode || !selection.anchorNode.parentNode.closest('.' + _this4.$el.className)) {\n _this4.unrestrictTextSelection();\n\n _this4.removeSelections();\n\n return true;\n }\n\n _this4.removeSelections(); // Prevent the selection escaping the message list\n\n\n _this4.restrictTextSelection();\n\n if (selection.rangeCount > 0) {\n var _context6, _context7;\n\n selecting = true;\n\n var selectedMesssageEls = _this4.getSelectedMessages();\n\n var selectedMessages = [];\n (0, _forEach.default)(selectedMesssageEls).call(selectedMesssageEls, function (el) {\n var m = _this4.buffer.messagesObj.messageIds[el.dataset.messageId];\n\n if (m) {\n selectedMessages.push(m);\n }\n }); // If only 1 message is selected then treat the selection as native text\n // selection. Most likely copying part of a message only.\n\n if (selectedMessages.length === 1) {\n selectedMessages = [];\n }\n\n _this4.selectedMessages = (0, _create.default)(null);\n (0, _forEach.default)(selectedMessages).call(selectedMessages, function (m) {\n _this4.selectedMessages[m.id] = m;\n }); // Iterate through the selected messages, format and store as a\n // string to be used in the copy handler\n\n copyData = (0, _map.default)(_context6 = (0, _filter.default)(_context7 = (0, _sort.default)(selectedMessages).call(selectedMessages, function (a, b) {\n return a.time > b.time ? 1 : -1;\n })).call(_context7, function (m) {\n var _context8;\n\n return (0, _trim.default)(_context8 = m.message).call(_context8).length;\n })).call(_context6, LogFormatter).join('\\r\\n');\n } else {\n _this4.unrestrictTextSelection();\n }\n\n return false;\n };\n\n this.listen(document, 'copy', function (e) {\n if (!copyData || !copyData.length) {\n // Just do a normal copy if no special data\n return true;\n }\n\n if (navigator.clipboard) {\n // Supports Clipboard API\n navigator.clipboard.writeText(copyData);\n } else {\n var input = document.createElement('textarea');\n document.body.appendChild(input);\n input.innerHTML = copyData;\n input.select();\n document.execCommand('copy');\n document.body.removeChild(input);\n }\n\n return true;\n });\n },\n // Move a messages embeded content to the main media preview\n openEmbedInPreview: function openEmbedInPreview(message) {\n // First open the embed in the main media preview\n var embed = message.embed;\n\n if (embed.type === 'url') {\n this.$state.$emit('mediaviewer.show', embed.payload);\n } else if (embed.type === 'component') {\n this.$state.$emit('mediaviewer.show', {\n component: embed.payload\n });\n } // Remove the embed from the message\n\n\n embed.payload = null;\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"MessageList\"]\r\nwindow._kiwi_exports.components.MessageList = exports.default ? exports.default : exports;\r\n","\"use strict\";\n//\n//\n//\n//\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _Avatar = _interopRequireDefault(require(\"./Avatar\"));\n\n// This component simply wraps the Avatar component so that plugins may override this messagelist\n// avatar separately than the nicklist avatar\nvar _default = {\n c: {\n Avatar: _Avatar.default\n },\n props: ['message', 'user']\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"MessageListAvatar\"]\r\nwindow._kiwi_exports.components.MessageListAvatar = exports.default ? exports.default : exports;\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-statebrowser kiwi-theme-bg\"},[(!_vm.$state.setting('hideSettings'))?_c('div',{staticClass:\"kiwi-statebrowser-appsettings\",attrs:{\"title\":_vm.$t('kiwi_settings')},on:{\"click\":_vm.clickAppSettings}},[_c('i',{staticClass:\"fa fa-cog\",attrs:{\"aria-hidden\":\"true\"}})]):_vm._e(),(_vm.isPersistingState)?_c('state-browser-usermenu',{attrs:{\"network\":_vm.getNetwork}}):_vm._e(),_c('div',{staticClass:\"kiwi-statebrowser-tools\"},_vm._l((_vm.pluginUiElements),function(plugin){return _c('div',{directives:[{name:\"rawElement\",rawName:\"v-rawElement\",value:(plugin.el),expression:\"plugin.el\"}],key:plugin.id,staticClass:\"kiwi-statebrowser-tool\"})}),0),(Object.keys(_vm.provided_networks).length > 0)?_c('div',{staticClass:\"kiwi-statebrowser-availablenetworks\"},[_c('div',{staticClass:\"kiwi-statebrowser-availablenetworks-toggle\",on:{\"click\":function($event){_vm.show_provided_networks=!_vm.show_provided_networks}}},[_vm._v(\" ↪ \"+_vm._s(_vm.$t('state_available'))+\" \")]),_c('div',{staticClass:\"kiwi-statebrowser-availablenetworks-networks\",class:{\n 'kiwi-statebrowser-availablenetworks-networks--open': _vm.show_provided_networks\n }},_vm._l((_vm.provided_networks),function(pNets,pNetTypeName){return _c('div',{key:pNetTypeName,staticClass:\"kiwi-statebrowser-availablenetworks-type\"},[_c('div',{staticClass:\"kiwi-statebrowser-availablenetworks-name\"},[_vm._v(_vm._s(pNetTypeName))]),_vm._l((pNets),function(pNet){return _c('div',{key:pNet.name,staticClass:\"kiwi-statebrowser-availablenetworks-link\",class:[\n pNet.connected?'kiwi-statebrowser-availablenetworks-link--connected':''\n ]},[_c('a',{on:{\"click\":function($event){return _vm.connectProvidedNetwork(pNet)}}},[_vm._v(_vm._s(pNet.name))]),_c('br')])})],2)}),0)]):_vm._e(),_c('div',{staticClass:\"kiwi-statebrowser-scrollarea\"},[_c('div',{staticClass:\"kiwi-statebrowser-networks\"},_vm._l((_vm.networksToShow),function(network){return _c('state-browser-network',{key:network.id,attrs:{\"network\":network,\"sidebar-state\":_vm.sidebarState}})}),1)]),(!_vm.isRestrictedServer)?_c('div',{staticClass:\"kiwi-statebrowser-newnetwork\"},[_c('a',{staticClass:\"u-button u-button-primary\",on:{\"click\":_vm.clickAddNetwork}},[_vm._v(\" \"+_vm._s(_vm.$t('add_network'))+\" \"),_c('i',{staticClass:\"fa fa-plus\",attrs:{\"aria-hidden\":\"true\"}})])]):_vm._e()],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-serverselector\",class:{'kiwi-serverselector--custom': _vm.presetServer === 'custom'}},[(_vm.usePreset && _vm.presetNetworks.length > 0)?_c('div',{staticClass:\"kiwi-serverselector-presets\"},[_c('label',[_c('span',[_vm._v(_vm._s(_vm.$t('server')))]),_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.presetServer),expression:\"presetServer\"}],on:{\"change\":function($event){var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = \"_value\" in o ? o._value : o.value;return val}); _vm.presetServer=$event.target.multiple ? $$selectedVal : $$selectedVal[0]}}},[_c('option',{attrs:{\"value\":\"custom\"}},[_vm._v(\"Custom Server\")]),_c('option',{attrs:{\"disabled\":\"\"}},[_vm._v(\"-----------------\")]),_vm._l((_vm.presetNetworks),function(s){return _c('option',{key:s.name,domProps:{\"value\":_vm.toUri(s)}},[_vm._v(_vm._s(s.name))])})],2)])]):_vm._e(),(_vm.showCustom || _vm.presetNetworks.length === 0 || !_vm.usePreset)?[_c('input-text',{directives:[{name:\"focus\",rawName:\"v-focus\"}],staticClass:\"kiwi-networksettings-connection-address\",attrs:{\"label\":_vm.$t('server')},model:{value:(_vm.connection.server),callback:function ($$v) {_vm.$set(_vm.connection, \"server\", $$v)},expression:\"connection.server\"}}),_c('input-text',{staticClass:\"kiwi-networksettings-connection-port\",attrs:{\"label\":_vm.$t('settings_port'),\"type\":\"number\"},model:{value:(_vm.connection.port),callback:function ($$v) {_vm.$set(_vm.connection, \"port\", $$v)},expression:\"connection.port\"}},[_c('span',{staticClass:\"fa-stack fa-lg kiwi-customserver-tls\",class:{ 'kiwi-customserver-tls--enabled' : _vm.connection.tls },on:{\"click\":_vm.toggleTls}},[(_vm.connection.tls)?_c('i',{staticClass:\"fa fa-lock fa-stack-1x kiwi-customserver-tls-lock\"}):_c('i',{staticClass:\"fa fa-unlock fa-stack-1x kiwi-customserver-tls-minus\"})])])]:_vm._e()],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-wrap kiwi-wrap-error\"},[_c('h2',[_vm._v(\"Kiwi IRC could not start :(\")]),_c('div',[_vm._v(_vm._s(_vm.error))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./ZncLogin.vue?vue&type=template&id=d0abb22c&\"\nimport script from \"./ZncLogin.vue?vue&type=script&lang=js&\"\nexport * from \"./ZncLogin.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ZncLogin.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StateBrowserNetwork.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StateBrowserNetwork.vue?vue&type=style&index=0&lang=css&\"","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../build/webpack/exports-loader.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CommonLayout.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../build/webpack/exports-loader.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CommonLayout.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TypingUsersList.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TypingUsersList.vue?vue&type=style&index=0&lang=css&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar Vue = require('vue');\n\nvar _default = Vue.component('input-prompt', {\n props: ['label', 'hideCancel', 'noprompt', 'block'],\n data: function data() {\n return {\n value: '',\n state: 'pre'\n };\n },\n created: function created() {\n if (this.noprompt) {\n this.prompt();\n }\n },\n methods: {\n prompt: function prompt() {\n var _this = this;\n\n this.state = 'prompt';\n this.$nextTick(function () {\n _this.$el.querySelector('input').focus();\n });\n },\n complete: function complete() {\n this.$emit('submit', this.value);\n this.state = 'pre';\n },\n cancel: function cancel() {\n this.$emit('cancel');\n this.state = 'pre';\n }\n }\n});\n\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nif(!window._kiwi_exports[\"components\"][\"utils\"]) window._kiwi_exports[\"components\"][\"utils\"] = {};\nwindow._kiwi_exports[\"components\"][\"utils\"][\"InputPrompt\"]\r\nwindow._kiwi_exports.components.utils.InputPrompt = exports.default ? exports.default : exports;\r\n","import { render, staticRenderFns } from \"./AwayStatusIndicator.vue?vue&type=template&id=3462e1e5&functional=true&\"\nimport script from \"./AwayStatusIndicator.vue?vue&type=script&lang=js&\"\nexport * from \"./AwayStatusIndicator.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AwayStatusIndicator.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n true,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChannelInfo.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChannelInfo.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./AutoComplete.vue?vue&type=template&id=7ce603d2&\"\nimport script from \"./AutoComplete.vue?vue&type=script&lang=js&\"\nexport * from \"./AutoComplete.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AutoComplete.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { render, staticRenderFns } from \"./ChannelList.vue?vue&type=template&id=20211d72&\"\nimport script from \"./ChannelList.vue?vue&type=script&lang=js&\"\nexport * from \"./ChannelList.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ChannelList.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _typeof = require(\"@babel/runtime-corejs3/helpers/typeof\");\n\nvar _WeakMap = require(\"@babel/runtime-corejs3/core-js-stable/weak-map\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _Object$getOwnPropertyDescriptor = require(\"@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar ipRegex = _interopRequireWildcard(require(\"ip-regex\"));\n\nvar TextFormatting = _interopRequireWildcard(require(\"@/helpers/TextFormatting\"));\n\nvar IrcdDiffs = _interopRequireWildcard(require(\"@/helpers/IrcdDiffs\"));\n\nvar _Html = _interopRequireDefault(require(\"@/libs/renderers/Html\"));\n\nvar _MessageParser = _interopRequireDefault(require(\"@/libs/MessageParser\"));\n\nvar _Avatar = _interopRequireDefault(require(\"./Avatar\"));\n\nvar _AwayStatusIndicator = _interopRequireDefault(require(\"./AwayStatusIndicator\"));\n\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== \"function\") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\n\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nvar _default = {\n components: {\n Avatar: _Avatar.default,\n AwayStatusIndicator: _AwayStatusIndicator.default\n },\n props: ['buffer', 'network', 'user'],\n data: function data() {\n return {\n whoisRequested: false,\n whoisLoading: false\n };\n },\n computed: {\n // Channel modes differ on some IRCds so get them from the network options\n availableChannelModes: function availableChannelModes() {\n var availableModes = [];\n var prefixes = this.network.ircClient.network.options.PREFIX;\n var knownPrefix = {\n q: 'Owner',\n a: 'Admin',\n o: 'Operator',\n h: 'Half-Operator',\n v: 'Voice'\n };\n\n if (!IrcdDiffs.isAChannelModeAdmin(this.network)) {\n delete knownPrefix.a;\n }\n\n if (!IrcdDiffs.isQChannelModeOwner(this.network)) {\n delete knownPrefix.q;\n }\n\n if (!IrcdDiffs.supportsHalfOp(this.network)) {\n delete knownPrefix.h;\n }\n\n (0, _forEach.default)(prefixes).call(prefixes, function (prefix) {\n var mode = prefix.mode;\n\n if (knownPrefix[mode]) {\n availableModes.push({\n mode: mode,\n description: knownPrefix[mode]\n });\n }\n });\n return availableModes;\n },\n areWeAnOp: function areWeAnOp() {\n if (!this.buffer) {\n return false;\n }\n\n return this.buffer.isUserAnOp(this.buffer.getNetwork().nick);\n },\n realname: function realname() {\n var _context;\n\n return (0, _trim.default)(_context = this.user.realname || '').call(_context);\n },\n formattedRealname: function formattedRealname() {\n var blocks = (0, _MessageParser.default)(this.realname, {\n extras: false\n });\n var content = (0, _Html.default)(blocks, false);\n return content;\n },\n isUserOnBuffer: function isUserOnBuffer() {\n if (!this.buffer) {\n return false;\n }\n\n if (!this.user.buffers[this.buffer.id]) {\n // Probably switched buffer while the userbox was open\n return false;\n }\n\n return true;\n },\n userMode: {\n get: function getUserMode() {\n if (!this.buffer) {\n return '';\n }\n\n var userBufferInfo = this.user.buffers[this.buffer.id];\n\n if (!userBufferInfo) {\n // Probably switched buffer while the userbox was open\n return '';\n }\n\n var modes = userBufferInfo.modes;\n return modes.length > 0 ? modes[0] : '';\n },\n // Switch the current user mode for the new one\n set: function setUserMode(newVal) {\n var _context2;\n\n var client = this.network.ircClient;\n var oldVal = this.userMode;\n var changes = [];\n var targets = [];\n\n if (oldVal) {\n changes.push('-' + oldVal);\n targets.push(this.user.nick);\n }\n\n if (newVal) {\n changes.push('+' + newVal);\n targets.push(this.user.nick);\n }\n\n var params = (0, _concat.default)(_context2 = ['MODE', this.buffer.name, changes.join('')]).call(_context2, targets);\n client.raw(params);\n }\n },\n userChannels: function userChannels() {\n var _context3;\n\n var channels = (0, _trim.default)(_context3 = this.user.channels).call(_context3).split(' ');\n\n for (var i = 0; i < channels.length; i++) {\n channels[i] = TextFormatting.linkifyChannels(channels[i]);\n }\n\n return channels.join(' ');\n },\n isSelf: function isSelf() {\n return this.user === this.network.currentUser();\n }\n },\n watch: {\n user: function watchUser() {\n // Reset the whois view since the user is now different\n this.whoisRequested = false;\n this.whoisLoading = false;\n }\n },\n methods: {\n userModeOnThisBuffer: function userModeOnBuffer(user) {\n if (!this.buffer) {\n return '';\n }\n\n var userBufferInfo = user.buffers[this.buffer.id];\n var modes = userBufferInfo.modes;\n return modes.length > 0 ? modes[0] : '';\n },\n openQuery: function openQuery() {\n var buffer = this.$state.addBuffer(this.network.id, this.user.nick);\n this.$state.setActiveBuffer(this.network.id, buffer.name);\n\n if (this.$state.ui.is_narrow) {\n this.$state.$emit('userbox.hide');\n }\n },\n onChannelsClick: function onChannelsClick(event) {\n var channelName = event.target.getAttribute('data-channel-name');\n\n if (channelName) {\n var network = this.buffer.getNetwork();\n this.$state.addBuffer(this.buffer.networkid, channelName);\n network.ircClient.join(channelName);\n }\n },\n updateWhoisData: function updateWhoisData() {\n var _this = this;\n\n this.whoisRequested = true;\n this.whoisLoading = true;\n this.network.ircClient.whois(this.user.nick, function () {\n _this.whoisLoading = false;\n });\n },\n kickUser: function kickUser() {\n var reason = this.$state.setting('buffers.default_kick_reason');\n this.network.ircClient.raw('KICK', this.buffer.name, this.user.nick, reason);\n },\n createBanMask: function createBanMask() {\n // try to ban via user account first\n if (this.user.account) {\n var _context4;\n\n // if EXTBAN is supported use that\n var extban = IrcdDiffs.extbanAccount(this.network);\n\n if (extban) {\n return extban + ':' + this.user.account;\n } // if the account name is in the host ban the host\n // Eg. user@network/user/accountname\n\n\n if ((0, _indexOf.default)(_context4 = this.user.host.toLowerCase()).call(_context4, this.user.account.toLowerCase()) > -1) {\n return '*!*@' + this.user.host;\n }\n } // if an ip address is in the host and not the whole host ban the ip\n // Eg. user@gateway/1.2.3.4\n\n\n var ipTest = new RegExp('(' + ipRegex.v4().source + '|' + ipRegex.v6().source + ')');\n\n if (ipTest.test(this.user.host)) {\n var match = this.user.host.match(ipTest)[0];\n\n if (match !== this.user.host) {\n return '*!*@*' + match + '*';\n }\n } // if an 8 char hex is the username ban by username. Commonly used in gateways\n // Eg. 59d4c432@a.clients.kiwiirc.com\n\n\n var hexTest = /^([a-f0-9]{8})$/i;\n\n if (hexTest.test(this.user.username)) {\n var _match = this.user.username.match(hexTest)[0];\n return '*!' + _match + '@*';\n } // fallback to default_ban_mask from config\n\n\n var mask = this.$state.setting('buffers.default_ban_mask');\n mask = mask.replace('%n', this.user.nick);\n mask = mask.replace('%i', this.user.username);\n mask = mask.replace('%h', this.user.host);\n return mask;\n },\n banUser: function banUser() {\n if (!this.user.username || !this.user.host) {\n return;\n }\n\n var banMask = this.createBanMask();\n this.network.ircClient.raw('MODE', this.buffer.name, '+b', banMask);\n },\n kickbanUser: function kickbanuser() {\n if (!this.user.username || !this.user.host) {\n return;\n }\n\n var banMask = this.createBanMask();\n var reason = this.$state.setting('buffers.default_kick_reason');\n this.network.ircClient.raw('MODE', this.buffer.name, '+b', banMask);\n this.network.ircClient.raw('KICK', this.buffer.name, this.user.nick, reason);\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"UserBox\"]\r\nwindow._kiwi_exports.components.UserBox = exports.default ? exports.default : exports;\r\n","\"use strict\";\n'kiwi public';\n/**\n * batchedAdd prevents a flood of new inserts into state. Based on JS ticks, inserts /sec are\n * counted by each JS tick that inserts an item. Eg. 10 inserts in 1 tick = 1 count. 10 inserts\n * on different JS ticks = 10 counts.\n * After X counts/sec, batch each second worth of new items at the same time.\n */\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = batchedAdd;\n\nvar _setTimeout2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-timeout\"));\n\nfunction batchedAdd(singleFn, batchedFn) {\n var numInsertsSec = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 3;\n var inTick = false;\n var queue = [];\n var numInLastSec = 0;\n var queueLoopTmr = null;\n var loopInterval = 1000;\n var checkSecRateTmr = null;\n\n function queueLoop() {\n numInLastSec = 0;\n\n if (queue.length) {\n // emptying queue before calling batchedFn in case that function triggers\n // code that needs to see that the queue has been processed.\n var q = queue;\n queue = [];\n batchedFn(q);\n queueLoopTmr = (0, _setTimeout2.default)(queueLoop, loopInterval);\n } else {\n queueLoopTmr = null;\n }\n }\n\n function maybeStartLoop() {\n if (!queueLoopTmr) {\n queueLoopTmr = (0, _setTimeout2.default)(queueLoop, loopInterval);\n }\n } // Reset numInLastSec after loopInterval. This allows enough time for the counter to\n // increase to detect batching. Only needs to run if we are not currently batching and\n // only needs to run once at a time.\n\n\n function resetAddCounter() {\n if (!queueLoopTmr && !checkSecRateTmr) {\n checkSecRateTmr = (0, _setTimeout2.default)(function () {\n checkSecRateTmr = null;\n\n if (!queueLoopTmr) {\n numInLastSec = 0;\n }\n }, loopInterval);\n }\n }\n\n function batchFn(item) {\n if (!inTick) {\n numInLastSec++;\n } // If already queuing or we reached our limit on items/sec, queue the item\n\n\n if (queue.length || numInLastSec > numInsertsSec) {\n queue.push(item);\n maybeStartLoop();\n } else {\n inTick = true;\n (0, _setTimeout2.default)(function () {\n inTick = false;\n });\n singleFn(item);\n resetAddCounter();\n }\n }\n\n batchFn.queue = function getQueue() {\n return queue;\n };\n\n return batchFn;\n}\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"libs\"]) window._kiwi_exports[\"libs\"] = {};\nwindow._kiwi_exports[\"libs\"][\"batchedAdd\"]\r\nwindow._kiwi_exports.libs.batchedAdd = exports.default ? exports.default : exports;\r\n","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _setTimeout2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-timeout\"));\n\nvar embedlyTagIncluded = false;\nvar _default = {\n props: ['url', 'showPin', 'iframeSandboxOptions'],\n data: function data() {\n return {\n debouncedUpdateEmbed: null\n };\n },\n computed: {\n settings: function settings() {\n return this.$state.setting('embedly');\n }\n },\n watch: {\n url: function url() {\n this.updateEmbed();\n }\n },\n created: function created() {\n this.updateEmbed();\n },\n methods: {\n updateEmbed: function updateEmbed() {\n var _this = this;\n\n var checkEmbedlyAndShowCard = function checkEmbedlyAndShowCard() {\n // If the embedly function doesn't exist it's probably still loading\n // the embedly script\n if (typeof window.embedly !== 'function') {\n (0, _setTimeout2.default)(checkEmbedlyAndShowCard, 100);\n return;\n }\n\n _this.$nextTick(function () {\n window.embedly('card', _this.$refs.embedlyLink);\n\n _this.$emit('setHeight', 'auto');\n\n if (_this.showPin) {\n // This is inline so set a max height\n _this.$el.style.maxHeight = (_this.settings.maxHeight || 400) + 'px';\n } else {\n // This is main media view set a relative max height\n _this.$emit('setMaxHeight', '54%');\n }\n });\n };\n\n if (!embedlyTagIncluded) {\n var head = document.getElementsByTagName('head')[0];\n var script = document.createElement('script');\n script.type = 'text/javascript';\n var embedlyUrl = this.$state.getSetting('settings.embedly.script') || '//cdn.embedly.com/widgets/platform.js';\n script.src = embedlyUrl;\n head.appendChild(script);\n embedlyTagIncluded = true;\n }\n\n checkEmbedlyAndShowCard();\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"UrlEmbed\"]\r\nwindow._kiwi_exports.components.UrlEmbed = exports.default ? exports.default : exports;\r\n","\"use strict\";\n\nrequire(\"./kiwiirccom\");","import { render, staticRenderFns } from \"./ControlInput.vue?vue&type=template&id=7c84e8be&\"\nimport script from \"./ControlInput.vue?vue&type=script&lang=js&\"\nexport * from \"./ControlInput.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ControlInput.vue?vue&type=style&index=0&lang=less&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { render, staticRenderFns } from \"./kiwiirccom.vue?vue&type=template&id=5b797949&\"\nimport script from \"./kiwiirccom.vue?vue&type=script&lang=js&\"\nexport * from \"./kiwiirccom.vue?vue&type=script&lang=js&\"\nimport style0 from \"./kiwiirccom.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ServerSelector.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ServerSelector.vue?vue&type=style&index=0&lang=css&\"","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StateBrowser.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StateBrowser.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-controlinput kiwi-theme-bg\",class:{\n 'kiwi-controlinput-selfuser--open': _vm.selfuser_open,\n 'kiwi-controlinput--focus': _vm.has_focus,\n }},[_c('div',{staticClass:\"kiwi-controlinput-selfuser\"},[_c('transition',{attrs:{\"name\":\"kiwi-selfuser-trans\"}},[(_vm.networkState==='connected'\n && _vm.selfuser_open === true)?_c('self-user',{attrs:{\"network\":_vm.buffer.getNetwork()},on:{\"close\":function($event){_vm.selfuser_open=false}}}):_vm._e()],1)],1),_c('div',{staticClass:\"kiwi-controlinput-inner\",class:[_vm.selfuser_open ? 'kiwi-controlinput-portrait-hide' : '']},[(_vm.buffer.getNetwork() && _vm.buffer.getNetwork().state === 'connected')?_c('away-status-indicator',{attrs:{\"network\":_vm.buffer.getNetwork(),\"user\":_vm.buffer.getNetwork().currentUser()}}):_vm._e(),(_vm.currentNick)?_c('div',{staticClass:\"kiwi-controlinput-user\",on:{\"click\":_vm.toggleSelfUser}},[_c('span',{staticClass:\"kiwi-controlinput-user-nick\"},[_vm._v(_vm._s(_vm.currentNick))]),_c('i',{staticClass:\"fa\",class:[_vm.selfuser_open ? 'fa-caret-down' : 'fa-caret-up'],attrs:{\"aria-hidden\":\"true\"}})]):_vm._e(),_c('form',{staticClass:\"kiwi-controlinput-form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.submitForm($event)},\"click\":_vm.maybeHidePlugins}},[(_vm.autocomplete_open)?_c('auto-complete',{ref:\"autocomplete\",attrs:{\"items\":_vm.autocomplete_items,\"filter\":_vm.autocomplete_filter,\"buffer\":_vm.buffer},on:{\"temp\":_vm.onAutocompleteTemp,\"selected\":_vm.onAutocompleteSelected,\"cancel\":_vm.onAutocompleteCancel}}):_vm._e(),(_vm.buffer.setting('share_typing'))?_c('typing-users-list',{attrs:{\"buffer\":_vm.buffer}}):_vm._e(),_c('div',{staticClass:\"kiwi-controlinput-input-wrap\"},[_c('irc-input',{ref:\"input\",staticClass:\"kiwi-controlinput-input\",attrs:{\"placeholder\":_vm.$t('input_placeholder'),\"wrap\":\"off\"},on:{\"input\":_vm.inputUpdate,\"keydown\":function($event){return _vm.inputKeyDown($event)},\"keyup\":function($event){return _vm.inputKeyUp($event)},\"click\":_vm.closeInputTool,\"focus\":function($event){_vm.has_focus = true},\"blur\":function($event){_vm.has_focus = false}}})],1),(_vm.shouldShowSendButton)?_c('button',{staticClass:\"kiwi-controlinput-send fa fa-paper-plane\",attrs:{\"type\":\"submit\"}}):_vm._e()],1),(_vm.shouldShowInputButtons)?_c('div',{ref:\"plugins\",staticClass:\"kiwi-controlinput-tools\"},[_c('div',{staticClass:\"kiwi-controlinput-tools-container-expand\",class:{'kiwi-controlinput-tools-container-expand--inverse': !_vm.showPlugins},on:{\"click\":function($event){_vm.showPlugins=!_vm.showPlugins}}},[_c('i',{staticClass:\"fa fa-bars\",attrs:{\"aria-hidden\":\"true\"}})]),_c('transition',{attrs:{\"name\":\"kiwi-plugin-ui-trans\"}},[(_vm.showPlugins)?_c('div',{staticClass:\"kiwi-controlinput-tools-container\"},[(_vm.shouldShowColorPicker)?_c('a',{staticClass:\"kiwi-controlinput-tool\",on:{\"click\":function($event){$event.preventDefault();return _vm.onToolClickTextStyle($event)}}},[_c('i',{staticClass:\"fa fa-adjust\",attrs:{\"aria-hidden\":\"true\"}})]):_vm._e(),(_vm.shouldShowEmojiPicker)?_c('a',{staticClass:\"kiwi-controlinput-tool\",on:{\"click\":function($event){$event.preventDefault();return _vm.onToolClickEmoji($event)}}},[_c('i',{staticClass:\"fa fa-smile-o\",attrs:{\"aria-hidden\":\"true\"}})]):_vm._e(),_vm._l((_vm.pluginUiElements),function(plugin){return _c('div',{directives:[{name:\"rawElement\",rawName:\"v-rawElement\",value:({\n el: plugin.el,\n props: {\n controlinput: _vm.self,\n }\n }),expression:\"{\\n el: plugin.el,\\n props: {\\n controlinput: self,\\n }\\n }\"}],key:plugin.id,staticClass:\"kiwi-controlinput-tool\"})})],2):_vm._e()])],1):_vm._e()],1),_c('div',{staticClass:\"kiwi-controlinput-active-tool\"},[_c(_vm.active_tool,_vm._b({tag:\"component\"},'component',_vm.active_tool_props,false))],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Avatar.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Avatar.vue?vue&type=style&index=0&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _vm._m(0)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('img',{staticClass:\"kiwi-loading-logo\",attrs:{\"src\":require(\"../res/kiwiLoadingLogo.png\")}}),_c('canvas',{staticClass:\"kiwi-loading-animation\"})])}]\n\nexport { render, staticRenderFns }","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _keys = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/keys\"));\n\nvar _GlobalApi = _interopRequireDefault(require(\"@/libs/GlobalApi\"));\n\nvar _Html = _interopRequireDefault(require(\"@/libs/renderers/Html\"));\n\nvar _MessageParser = _interopRequireDefault(require(\"@/libs/MessageParser\"));\n\nvar _BufferSettings = _interopRequireDefault(require(\"./BufferSettings\"));\n\nvar _ChannelInfo = _interopRequireDefault(require(\"./ChannelInfo\"));\n\nvar _ChannelBanlist = _interopRequireDefault(require(\"./ChannelBanlist\"));\n\nvar _AwayStatusIndicator = _interopRequireDefault(require(\"./AwayStatusIndicator\"));\n\nvar _default = {\n components: {\n BufferSettings: _BufferSettings.default,\n ChannelInfo: _ChannelInfo.default,\n ChannelBanlist: _ChannelBanlist.default,\n AwayStatusIndicator: _AwayStatusIndicator.default\n },\n props: ['buffer', 'sidebarState'],\n data: function data() {\n return {\n pluginUiChannelElements: _GlobalApi.default.singleton().channelHeaderPlugins,\n pluginUiQueryElements: _GlobalApi.default.singleton().queryHeaderPlugins,\n prompts: {\n closeChannel: false\n }\n };\n },\n computed: {\n isJoined: function isJoined() {\n var buffer = this.buffer;\n return buffer.getNetwork().state === 'connected' && buffer.joined;\n },\n isConnected: function isConnected() {\n return this.buffer.getNetwork().state === 'connected';\n },\n formattedTopic: function formattedTopic() {\n var blocks = (0, _MessageParser.default)(this.buffer.topic, {\n extras: false\n });\n var content = (0, _Html.default)(blocks);\n return content;\n },\n network: function network() {\n return this.buffer.getNetwork();\n },\n sidebarSection: function sidebarSection() {\n return this.sidebarState.section();\n },\n userOnline: function userOnline() {\n var user = this.$state.getUser(this.buffer.getNetwork().id, this.buffer.name);\n return !!user;\n }\n },\n created: function created() {\n var _this = this;\n\n this.listen(this.$state, 'document.clicked', function (e) {\n // If clicking anywhere else on the page, close all our prompts\n if (!_this.$el.contains(e.target)) {\n var _context;\n\n (0, _forEach.default)(_context = (0, _keys.default)(_this.prompts)).call(_context, function (prompt) {\n _this.prompts[prompt] = false;\n });\n }\n });\n },\n methods: {\n showPrompt: function showPrompt(prompt) {\n this.prompts[prompt] = true;\n },\n isChannel: function isChannel() {\n return this.buffer.isChannel();\n },\n isServer: function isServer() {\n return this.buffer.isServer();\n },\n isQuery: function isQuery() {\n return this.buffer.isQuery();\n },\n isSpecial: function isSpecial() {\n return this.buffer.isSpecial();\n },\n showNetworkSettings: function showNetworkSettings(network) {\n network.showServerBuffer('settings');\n },\n onConnectButtonClick: function onConnectButtonClick() {\n var network = this.buffer.getNetwork();\n\n if (!network.connection.server) {\n network.showServerBuffer('settings');\n } else {\n network.ircClient.connect();\n }\n },\n toggleUser: function toggleUser() {\n var user = this.$state.getUser(this.buffer.getNetwork().id, this.buffer.name);\n this.sidebarState.toggleUser(user);\n },\n joinCurrentBuffer: function joinCurrentBuffer() {\n var network = this.buffer.getNetwork();\n this.buffer.enabled = true;\n network.ircClient.join(this.buffer.name);\n },\n closeCurrentBuffer: function closeCurrentBuffer() {\n this.$state.removeBuffer(this.buffer);\n },\n onHeaderClick: function onHeaderClick(event) {\n var channelName = event.target.getAttribute('data-channel-name');\n\n if (channelName) {\n var network = this.buffer.getNetwork();\n this.$state.addBuffer(this.buffer.networkid, channelName);\n network.ircClient.join(channelName);\n }\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"ContainerHeader\"]\r\nwindow._kiwi_exports.components.ContainerHeader = exports.default ? exports.default : exports;\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-channelbanlist\"},[_c('form',{staticClass:\"u-form kiwi-channelbanlist\",on:{\"submit\":function($event){$event.preventDefault();}}},[_c('a',{staticClass:\"u-link\",on:{\"click\":_vm.updateBanlist}},[_vm._v(_vm._s(_vm.$t('bans_refresh')))]),(_vm.banlist.length > 0)?_c('table',{staticClass:\"kiwi-channelbanlist-table\"},[_c('tr',[_c('th',[_vm._v(_vm._s(_vm.$t('bans_user')))]),_c('th'),_c('th')]),_vm._l((_vm.banlist),function(ban){return _c('tr',{key:ban.banned,attrs:{\"title\":'By ' + ban.banned_by}},[_c('td',{staticClass:\"kiwi-channelbanlist-table-mask\"},[_vm._v(_vm._s(ban.banned))]),_c('td',{staticClass:\"kiwi-channelbanlist-table-bannedat\"},[_vm._v(\" \"+_vm._s((new Date(ban.banned_at * 1000)).toDateString())+\" \")]),_c('td',{staticClass:\"kiwi-channelbanlist-table-actions\"},[_c('i',{staticClass:\"fa fa-trash\",attrs:{\"aria-hidden\":\"true\"},on:{\"click\":function($event){return _vm.removeBan(ban.banned)}}})])])})],2):(_vm.is_refreshing)?_c('div',[_vm._v(\" \"+_vm._s(_vm.$t('bans_refreshing'))+\" \")]):_c('div',{staticClass:\"kiwi-channelbanlist-empty\"},[_vm._v(\" \"+_vm._s(_vm.$t('bans_nobody'))+\" \")])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{key:_vm.url,staticClass:\"kiwi-mediaviewer-embedly\"},[_c('a',{ref:\"embedlyLink\",staticClass:\"kiwi-embedly-card\",attrs:{\"href\":_vm.url,\"data-card-key\":_vm.settings.key,\"data-card-chrome\":\"0\",\"data-card-controls\":\"0\",\"data-card-recommend\":\"0\"}},[_vm._v(_vm._s(_vm.$t('media_loading', {url: _vm.url})))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarState.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarState.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SettingsAdvanced.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SettingsAdvanced.vue?vue&type=style&index=0&lang=css&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _typeof = require(\"@babel/runtime-corejs3/helpers/typeof\");\n\nvar _WeakMap = require(\"@babel/runtime-corejs3/core-js-stable/weak-map\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _Object$getOwnPropertyDescriptor = require(\"@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _regenerator = _interopRequireDefault(require(\"@babel/runtime-corejs3/regenerator\"));\n\nvar _asyncToGenerator2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/asyncToGenerator\"));\n\nvar _find = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/find\"));\n\nvar _promise = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/promise\"));\n\nvar _setTimeout2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-timeout\"));\n\nvar TextFormatting = _interopRequireWildcard(require(\"@/helpers/TextFormatting\"));\n\nvar Misc = _interopRequireWildcard(require(\"@/helpers/Misc\"));\n\nvar _BouncerProvider = _interopRequireDefault(require(\"@/libs/BouncerProvider\"));\n\nvar _IPC = _interopRequireDefault(require(\"@/libs/IPC\"));\n\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== \"function\") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\n\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nvar firstRun = true;\nvar _default = {\n data: function data() {\n return {\n hasOtherTab: false,\n addedNetworkToExisting: false,\n server: null,\n readyToShowOptions: false\n };\n },\n computed: {\n networks: function networks() {\n return this.$state.networks;\n },\n hasFragment: function hasFragment() {\n return window.location.hash && window.location.hash.length > 1;\n }\n },\n created: function created() {\n var _this = this;\n\n this.$state.setting('allowRegisterProtocolHandler', true);\n var server = null;\n\n if (this.hasFragment) {\n server = this.parseFragment();\n this.server = server;\n }\n\n if (server) {\n this.findOtherTabs().then(function (hasOtherTab) {\n if (hasOtherTab) {\n _this.hasOtherTab = true; // Don't start the main kiwi app here as it's already open elsewhere\n } else {\n _this.listenForOtherTabs();\n\n _this.init();\n }\n\n _this.readyToShowOptions = true;\n });\n } else {\n this.listenForOtherTabs();\n this.init();\n }\n },\n methods: {\n listenForOtherTabs: function listenForOtherTabs() {\n var _this2 = this;\n\n _IPC.default.on('message', function (e) {\n // respond to other tabs that are looking\n var msg = e.data;\n\n if (msg.type === 'ping' && _this2.networks.length > 0) {\n _IPC.default.send({\n type: 'pong'\n });\n } else if (msg.type === 'addNetwork') {\n var _context;\n\n var network = (0, _find.default)(_context = _this2.networks).call(_context, function (n) {\n return n.name === msg.server;\n });\n\n if (!network) {\n network = _this2.$state.addNetwork(msg.server, msg.nick || 'Guest' + Math.floor(Math.random() * 100), msg);\n }\n\n network.showServerBuffer('settings');\n }\n });\n },\n addEmptyNetwork: function addEmptyNetwork() {\n var nick = 'Guest' + Math.floor(Math.random() * 100);\n var network = this.$state.addNetwork(TextFormatting.t('new_network'), nick, {});\n network.showServerBuffer('settings');\n },\n findOtherTabs: function findOtherTabs() {\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {\n return _regenerator.default.wrap(function _callee$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n return _context2.abrupt(\"return\", new _promise.default(function (resolve, reject) {\n var handleIPCMessage = function handleIPCMessage(e) {\n var msg = e.data;\n\n if (msg.type === 'pong') {\n clearTimeout(timer);\n resolve(true);\n }\n };\n\n var timer = (0, _setTimeout2.default)(function (e) {\n _IPC.default.removeListener('message', handleIPCMessage);\n\n resolve(false);\n }, 200);\n\n _IPC.default.on('message', handleIPCMessage);\n\n _IPC.default.send({\n type: 'ping'\n });\n }));\n\n case 1:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee);\n }))();\n },\n addNetworkToExistingTab: function addNetworkToExistingTab() {\n var nick = 'Guest' + Math.floor(Math.random() * 100);\n var con = this.server;\n this.$state.addNetwork(TextFormatting.t('new_network'), nick, {});\n\n _IPC.default.send({\n nick: nick,\n server: con.server,\n port: con.port,\n tls: con.tls,\n password: con.password || '',\n type: 'addNetwork'\n });\n\n window.location.hash = '';\n this.addedNetworkToExisting = true;\n },\n addNetwork: function addNetwork() {\n var temporary = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n\n if (!this.server) {\n return;\n }\n\n var con = this.server;\n\n if (temporary) {\n this.$state.persistence.storageKey = null;\n this.$state.persistence.forgetState();\n this.init();\n }\n\n var network = this.$state.getNetworkFromAddress(con.server);\n\n if (!network) {\n network = this.$state.addNetwork(con.server, con.nick || 'Guest' + Math.floor(Math.random() * 100), {\n server: con.server,\n port: con.port,\n tls: con.tls,\n password: con.password || ''\n });\n }\n\n window.location.hash = '';\n network.showServerBuffer('settings');\n this.$emit('start', {\n fallbackComponent: this.constructor\n });\n },\n parseFragment: function parseFragment() {\n if (window.location.hash.substr(1)) {\n var fragment = window.location.hash.substr(1); // Check to see if we're dealing with an encoded irc: uri (browsers do this\n // when clicking an IRC link)\n\n var uriCheck = fragment.substr(0, 7).toLowerCase();\n\n if (uriCheck === 'ircs%3a' || uriCheck.substr(0, 6) === 'irc%3a') {\n fragment = decodeURIComponent(fragment);\n }\n\n var connections = Misc.parseIrcUri(fragment);\n var con = connections[0];\n return con;\n }\n\n return null;\n },\n toggleStateBrowser: function toggleStateBrowser() {\n this.$state.$emit('statebrowser.show');\n },\n init: function init() {\n var _this3 = this;\n\n return (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {\n var persistSetting, _context3, controllerNet, bouncer;\n\n return _regenerator.default.wrap(function _callee2$(_context4) {\n while (1) {\n switch (_context4.prev = _context4.next) {\n case 0:\n if (firstRun) {\n _context4.next = 2;\n break;\n }\n\n return _context4.abrupt(\"return\");\n\n case 2:\n firstRun = false; // persist the buffers in the state by default\n\n persistSetting = _this3.$state.settings.startupOptions.remember_buffers;\n\n if (typeof persistSetting === 'undefined') {\n _this3.$state.persistence.includeBuffers = true;\n } else {\n _this3.$state.persistence.includeBuffers = !!persistSetting;\n }\n\n _this3.$state.persistence.watchStateForChanges();\n\n if (_this3.$state.settings.startupOptions.bouncer) {\n controllerNet = (0, _find.default)(_context3 = _this3.$state.networks).call(_context3, function (n) {\n return n.is_bnc;\n });\n\n if (controllerNet) {\n bouncer = new _BouncerProvider.default(_this3.$state);\n bouncer.enable(controllerNet.connection.server, controllerNet.connection.port, controllerNet.connection.tls, controllerNet.connection.direct, controllerNet.connection.path);\n }\n } // force restricted: false as users need access\n // to network settings to add a network\n\n\n _this3.$state.setSetting('settings.restricted', false);\n\n _this3.$emit('start', {\n fallbackComponent: _this3.constructor\n });\n\n case 9:\n case \"end\":\n return _context4.stop();\n }\n }\n }, _callee2);\n }))();\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nif(!window._kiwi_exports[\"components\"][\"startups\"]) window._kiwi_exports[\"components\"][\"startups\"] = {};\nwindow._kiwi_exports[\"components\"][\"startups\"][\"Personal\"]\r\nwindow._kiwi_exports.components.startups.Personal = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChannelInfo.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChannelInfo.vue?vue&type=style&index=0&lang=css&\"","\"use strict\";\n\nvar _typeof3 = require(\"@babel/runtime-corejs3/helpers/typeof\");\n\nvar _WeakMap = require(\"@babel/runtime-corejs3/core-js-stable/weak-map\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _Object$getOwnPropertyDescriptor = require(\"@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _regenerator = _interopRequireDefault(require(\"@babel/runtime-corejs3/regenerator\"));\n\nvar _asyncToGenerator2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/asyncToGenerator\"));\n\nvar _toConsumableArray2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/toConsumableArray\"));\n\nvar _typeof2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/typeof\"));\n\nvar _parseInt2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/parse-int\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _setInterval3 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-interval\"));\n\nvar _setTimeout3 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-timeout\"));\n\nvar _keys = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/keys\"));\n\nvar _symbol = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/symbol\"));\n\nvar _promise = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/promise\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _splice = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/splice\"));\n\nvar _includes = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/includes\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar _vue = _interopRequireDefault(require(\"vue\"));\n\nvar _json = _interopRequireDefault(require(\"json5\"));\n\nvar _i18next = _interopRequireDefault(require(\"i18next\"));\n\nvar _i18nextXhrBackend = _interopRequireDefault(require(\"i18next-xhr-backend\"));\n\nvar _vueI18next = _interopRequireDefault(require(\"@panter/vue-i18next\"));\n\nvar _vueVirtualScroller = _interopRequireDefault(require(\"vue-virtual-scroller\"));\n\nrequire(\"vue-virtual-scroller/dist/vue-virtual-scroller.css\");\n\nrequire(\"whatwg-fetch\");\n\nrequire(\"intersection-observer\");\n\nvar _available = _interopRequireDefault(require(\"@/res/locales/available.json\"));\n\nvar _enUs = _interopRequireDefault(require(\"@/../static/locales/en-us.json\"));\n\nvar _App = _interopRequireDefault(require(\"@/components/App\"));\n\nvar _StartupError = _interopRequireDefault(require(\"@/components/StartupError\"));\n\nvar _Logger = _interopRequireDefault(require(\"@/libs/Logger\"));\n\nvar _ConfigLoader = _interopRequireDefault(require(\"@/libs/ConfigLoader\"));\n\nvar _state = _interopRequireDefault(require(\"@/libs/state\"));\n\nvar _ThemeManager = _interopRequireDefault(require(\"@/libs/ThemeManager\"));\n\nvar _InputHandler = _interopRequireDefault(require(\"@/libs/InputHandler\"));\n\nvar _StatePersistence = _interopRequireDefault(require(\"@/libs/StatePersistence\"));\n\nvar Storage = _interopRequireWildcard(require(\"@/libs/storage/Local\"));\n\nvar Misc = _interopRequireWildcard(require(\"@/helpers/Misc\"));\n\nvar _GlobalApi = _interopRequireDefault(require(\"@/libs/GlobalApi\"));\n\nvar _AudioManager = require(\"@/libs/AudioManager\");\n\nvar _SoundBleep = require(\"@/libs/SoundBleep\");\n\nvar _WindowTitle = _interopRequireDefault(require(\"@/libs/WindowTitle\"));\n\nvar _configTemplates = require(\"@/res/configTemplates\");\n\nrequire(\"@/components/utils/TabbedView\");\n\nrequire(\"@/components/utils/InputText\");\n\nrequire(\"@/components/utils/IrcInput\");\n\nrequire(\"@/components/utils/InputPrompt\");\n\nrequire(\"@/components/utils/InputConfirm\");\n\nrequire(\"@/thirdparty/\");\n\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== \"function\") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\n\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\n// fetch polyfill\n// polyfill for vue-virtual-scroller & ie11\n// Global utilities\n_vue.default.use(_vueVirtualScroller.default);\n\nvar logLevelMatch = window.location.href.match(/kiwi-loglevel=(\\d)/);\n\nif (logLevelMatch && logLevelMatch[1]) {\n var newLevel = (0, _parseInt2.default)(logLevelMatch[1], 10);\n\n _Logger.default.setLevel(newLevel);\n\n (0, _Logger.default)('Logging level set to', newLevel);\n}\n\nvar log = _Logger.default.namespace('main'); // Add the global API as soon as possible so that things can start listening to it\n\n\nvar api = window.kiwi = _GlobalApi.default.singleton(); // Third party imports now have access to the state and api\n\n/* eslint-disable import/first */\n\n\nfunction getQueryVariable(variable) {\n var query = window.location.search.substring(1);\n var vars = query.split('&');\n\n for (var i = 0; i < vars.length; i++) {\n var pair = vars[i].split('=');\n\n if (pair[0] === variable) {\n return pair[1];\n }\n }\n\n return false;\n} // Add a handy this.listen() fn to Vue instances. Saves on the need to add an event listener\n// and then manually remove them all the time.\n\n\n_vue.default.mixin({\n beforeDestroy: function beforeDestroy() {\n var _context;\n\n (0, _forEach.default)(_context = this.listeningEvents || []).call(_context, function (fn) {\n return fn();\n });\n },\n methods: {\n listen: function listen(source, event, fn) {\n this.listeningEvents = this.listeningEvents || [];\n\n var off = function off() {\n (source.removeEventListener || source.$off || source.off).call(source, event, fn);\n };\n\n this.listeningEvents.push(off);\n (source.addEventListener || source.$on || source.on).call(source, event, fn);\n return off;\n },\n listenOnce: function listenOnce(source, event, _fn) {\n var fn = _fn;\n this.listeningEvents = this.listeningEvents || [];\n\n var off = function off() {\n (source.removeEventListener || source.$off || source.off).call(source, event, fn);\n };\n\n this.listeningEvents.push(off);\n\n if (source.addEventListener) {\n // Create our own once handler as the DOM doesn't support this itself\n fn = function onceFn() {\n source.removeEventListener(event, onceFn);\n fn.apply(void 0, arguments);\n };\n\n source.addEventListener(event, fn);\n } else {\n (source.$once || source.once).call(source, event, fn);\n }\n\n return off;\n }\n }\n}); // Timer functions that are auto cleaned up when a component is destroyed\n\n\n_vue.default.mixin({\n beforeDestroy: function beforeDestroy() {\n var _context2;\n\n (0, _forEach.default)(_context2 = this.timerEvents || []).call(_context2, function (tmr) {\n return clearTimeout(tmr);\n });\n },\n methods: {\n setInterval: function (_setInterval) {\n function setInterval() {\n return _setInterval.apply(this, arguments);\n }\n\n setInterval.toString = function () {\n return _setInterval.toString();\n };\n\n return setInterval;\n }(function () {\n this.timerEvents = this.timerEvents || [];\n\n var v = _setInterval3.default.apply(void 0, arguments);\n\n this.timerEvents.push(v);\n return v;\n }),\n setTimeout: function (_setTimeout) {\n function setTimeout() {\n return _setTimeout.apply(this, arguments);\n }\n\n setTimeout.toString = function () {\n return _setTimeout.toString();\n };\n\n return setTimeout;\n }(function () {\n this.timerEvents = this.timerEvents || [];\n\n var v = _setTimeout3.default.apply(void 0, arguments);\n\n this.timerEvents.push(v);\n return v;\n })\n }\n}); // Make the state available to all components by default\n\n\n_vue.default.mixin({\n computed: {\n $state: function $state() {\n return (0, _state.default)();\n }\n }\n}); // Allow adding existing raw elements to component templates\n// Eg:
\n// Eg: \n\n\n_vue.default.directive('rawElement', {\n bind: function bind(el, binding) {\n if (binding.value.nodeName) {\n el.appendChild(binding.value);\n } else if (binding.value.el) {\n var rawEl = binding.value.el;\n el.appendChild(rawEl); // Add any data attributes to the raw element\n\n if (binding.value.data) {\n var _context3;\n\n (0, _forEach.default)(_context3 = (0, _keys.default)(binding.value.data)).call(_context3, function (key) {\n rawEl.dataset[key] = binding.value.data[key];\n });\n } // Add any properties to the raw element\n\n\n if (binding.value.props) {\n var _context4;\n\n (0, _forEach.default)(_context4 = (0, _keys.default)(binding.value.props)).call(_context4, function (key) {\n rawEl[key] = binding.value.props[key];\n });\n }\n }\n }\n}); // Register a global custom directive called `v-focus`\n\n\n_vue.default.directive('focus', {\n // Support conditional eg. v-focus=\"false\"\n bind: function bind(el, bindings) {\n el.dataset.focus = bindings.value === undefined || !!bindings.value;\n },\n // When the bound element is inserted into the DOM...\n inserted: function inserted(el) {\n // dataset properties are strings\n if (el.dataset.focus !== 'true') {\n return;\n } // Element is input so focus it\n\n\n if (el.tagName === 'INPUT') {\n el.focus();\n return;\n } // Try to focus the first input element\n\n\n var input = el.getElementsByTagName('input')[0];\n\n if (input) {\n input.focus();\n }\n }\n});\n\nvar ROSymbol = (0, _symbol.default)('resizeobserver');\n\n_vue.default.directive('resizeobserver', {\n bind: function bind(el, bindings) {\n var cb = bindings.value || function noop() {};\n\n el[ROSymbol] = new ResizeObserver(cb);\n el[ROSymbol].observe(el);\n },\n unbind: function unbind(el) {\n el[ROSymbol].unobserve(el);\n }\n});\n\nloadApp();\n\nfunction loadApp() {\n var configFile = 'static/config.json';\n var configObj = null;\n /**\n * Finding the config file\n * In order, looks in the following places:\n * 1. If a 'config' argument is in the query string, static/config_THEVALUE_.json\n * 2. If a window.kiwiConfig function exists, use it's return value as the config object.\n * 3. If a is found, then the content becomes the config\n * URL.\n * 4. If a is found, then the\n * content becomes the config JSON without making another web request.\n */\n\n if (getQueryVariable('config')) {\n configFile = 'static/config_' + getQueryVariable('config') + '.json';\n } else if (typeof window.kiwiConfig === 'function') {\n try {\n configObj = window.kiwiConfig();\n } catch (err) {\n log.error('Config file: ' + err.stack);\n showError();\n }\n } else if (document.querySelector('meta[name=\"kiwiconfig\"]')) {\n configFile = document.querySelector('meta[name=\"kiwiconfig\"]').content;\n } else if (document.querySelector('script[name=\"kiwiconfig\"]')) {\n var configContents = document.querySelector('script[name=\"kiwiconfig\"]').innerHTML;\n\n try {\n configObj = _json.default.parse(configContents);\n } catch (parseErr) {\n log.error('Config file: ' + parseErr.stack);\n showError();\n }\n }\n\n var configLoader = new _ConfigLoader.default();\n configLoader.addValueReplacement('protocol', window.location.protocol).addValueReplacement('wsprotocol', window.location.protocol === 'https:' ? 'wss:' : 'ws:').addValueReplacement('tls', window.location.protocol === 'https:').addValueReplacement('hostname', window.location.hostname).addValueReplacement('host', window.location.host).addValueReplacement('port', window.location.port || (window.location.protocol === 'https:' ? 443 : 80)).addValueReplacement('hash', (window.location.hash || '').substr(1)).addValueReplacement('query', (window.location.search || '').substr(1)).addValueReplacement('referrer', window.document.referrer);\n (configObj ? configLoader.loadFromObj(configObj) : configLoader.loadFromUrl(configFile)).then(applyConfig).then(initState).then(initInputCommands).then(initLocales).then(initThemes).then(loadPlugins).then(initSound).then(startApp).catch(showError);\n}\n\nfunction applyConfig(config) {\n Misc.dedotObject(config); // if we have a config template apply that before other configs\n\n if (_configTemplates.configTemplates[config.template]) {\n applyConfigObj(_configTemplates.configTemplates[config.template], (0, _state.default)().settings);\n }\n\n applyConfigObj(config, (0, _state.default)().settings);\n} // Recursively merge an object onto another via Vue.$set\n\n\nfunction applyConfigObj(obj, target) {\n _lodash.default.each(obj, function (val, key) {\n if ((0, _typeof2.default)(val) === 'object') {\n if ((0, _typeof2.default)(target[key]) !== 'object') {\n // Create the correct type of object\n var newVal = _lodash.default.isArray(val) ? [] : {};\n\n _vue.default.set(target, key, newVal);\n }\n\n applyConfigObj(val, target[key]);\n } else {\n _vue.default.set(target, key, val);\n }\n });\n}\n\nfunction loadPlugins() {\n return new _promise.default(function (resolve, reject) {\n var plugins = (0, _state.default)().settings.plugins || [];\n var pluginIdx = -1;\n loadNextScript();\n\n function loadNextScript(sSrc, fOnload) {\n var _context5;\n\n var plugin = plugins[++pluginIdx];\n\n if (!plugin) {\n resolve();\n return;\n }\n\n if ((0, _indexOf.default)(_context5 = plugin.url).call(_context5, '.js') > -1) {\n // The plugin is a .js file so inject it as a script\n var scr = document.createElement('script');\n\n scr.onerror = function () {\n var _context6;\n\n log.error((0, _concat.default)(_context6 = \"Error loading plugin '\".concat(plugin.name, \"' from '\")).call(_context6, plugin.url, \"'\"));\n loadNextScript();\n };\n\n scr.onload = function () {\n loadNextScript();\n };\n\n document.body.appendChild(scr);\n scr.src = plugin.url;\n } else {\n // Treat the plugin as a HTML document and just inject it into the document\n fetch(plugin.url).then(function (response) {\n return response.text();\n }).then(function (pluginRaw) {\n var el = document.createElement('div');\n el.id = 'kiwi_plugin_' + plugin.name.replace(/[ \"']/g, '');\n el.style.display = 'none';\n el.innerHTML = pluginRaw; // The browser won't execute any script elements so we need to extract them and\n // place them into the DOM using our own script elements\n\n var scripts = (0, _toConsumableArray2.default)(el.querySelectorAll('script')); // IE11 does not support nodes.forEach()\n\n (0, _forEach.default)(scripts).call(scripts, function (limitedScr) {\n limitedScr.parentElement.removeChild(limitedScr);\n var scr = document.createElement('script');\n scr.text = limitedScr.text;\n el.appendChild(scr);\n });\n document.body.appendChild(el);\n loadNextScript();\n }).catch(function () {\n var _context7;\n\n log.error((0, _concat.default)(_context7 = \"Error loading plugin '\".concat(plugin.name, \"' from '\")).call(_context7, plugin.url, \"'\"));\n loadNextScript();\n });\n }\n }\n });\n}\n\nfunction initLocales() {\n _vue.default.use(_vueI18next.default); // Make the translation services available via the global API\n\n\n api.i18n = _i18next.default;\n\n _i18next.default.use(_i18nextXhrBackend.default);\n\n _i18next.default.init({\n whitelist: _available.default.locales,\n fallbackLng: 'en-us',\n lowerCaseLng: true,\n backend: {\n loadPath: 'static/locales/{{lng}}.json',\n // allow cross domain requests\n crossDomain: false,\n // allow credentials on cross domain requests\n withCredentials: false\n },\n interpolation: {\n // We let vuejs handle HTML output escaping\n escapeValue: false\n }\n }); // Build in the english translation so it can be used as a fallback\n\n\n _i18next.default.addResourceBundle('en-us', 'translation', _enUs.default); // Override the $t function so that empty translations fallback to en-us\n\n\n _vue.default.mixin({\n computed: {\n $t: function $t() {\n var _this = this;\n\n return function (key, options) {\n var val = _this.$i18n.i18next.t(key, options, _this.$i18n.i18nLoadedAt);\n\n if (!val) {\n var opts = options || {};\n opts.lng = 'en-us';\n val = _this.$i18n.i18next.t(key, opts, _this.$i18n.i18nLoadedAt);\n }\n\n return val;\n };\n }\n }\n });\n\n var setDefaultLanguage = function setDefaultLanguage() {\n var defaultLang = (0, _state.default)().setting('language');\n var preferredLangs = _lodash.default.clone(window.navigator && window.navigator.languages) || []; // our configs default lang overrides all others\n\n if (defaultLang) {\n preferredLangs.unshift(defaultLang);\n } // set a default language\n\n\n _i18next.default.changeLanguage('en-us'); // Go through our browser languages until we find one that we support\n\n\n for (var idx = 0; idx < preferredLangs.length; idx++) {\n var lang = preferredLangs[idx]; // if this is a language such as 'fr', add a following one of 'fr-fr' to cover\n // both cases\n\n if (lang.length === 2) {\n (0, _splice.default)(preferredLangs).call(preferredLangs, idx + 1, 0, lang + '-' + lang);\n }\n\n if ((0, _includes.default)(_lodash.default).call(_lodash.default, _available.default.locales, lang.toLowerCase())) {\n _i18next.default.changeLanguage(lang, function (err, t) {\n if (err) {\n // setting the language failed so set default again\n _i18next.default.changeLanguage('en-us');\n }\n });\n\n break;\n }\n }\n };\n\n setDefaultLanguage(); // Update the language if the setting changes.\n\n (0, _state.default)().$watch('user_settings.language', function (lang) {\n if (!lang && !(0, _state.default)().setting('language')) {\n setDefaultLanguage();\n } else {\n _i18next.default.changeLanguage(lang || (0, _state.default)().setting('language') || 'en-us');\n }\n });\n}\n\nfunction initState() {\n return _initState.apply(this, arguments);\n}\n\nfunction _initState() {\n _initState = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {\n var stateKey, persistLog, persist;\n return _regenerator.default.wrap(function _callee$(_context8) {\n while (1) {\n switch (_context8.prev = _context8.next) {\n case 0:\n stateKey = (0, _state.default)().settings.startupOptions.state_key; // Default to a preset key if it wasn't set\n\n if (typeof stateKey === 'undefined') {\n stateKey = 'kiwi-state';\n }\n\n persistLog = _Logger.default.namespace('StatePersistence');\n persist = new _StatePersistence.default(stateKey || '', (0, _state.default)(), Storage, persistLog);\n persist.includeBuffers = !!(0, _state.default)().settings.startupOptions.remember_buffers;\n\n if (!stateKey) {\n _context8.next = 8;\n break;\n }\n\n _context8.next = 8;\n return persist.loadStateIfExists();\n\n case 8:\n api.setState((0, _state.default)());\n\n case 9:\n case \"end\":\n return _context8.stop();\n }\n }\n }, _callee);\n }));\n return _initState.apply(this, arguments);\n}\n\nfunction initThemes() {\n var themeMgr = _ThemeManager.default.instance((0, _state.default)());\n\n api.setThemeManager(themeMgr);\n var argTheme = getQueryVariable('theme');\n\n if (argTheme) {\n themeMgr.setTheme(argTheme);\n }\n}\n\nfunction initSound() {\n var sound = new _SoundBleep.SoundBleep();\n var bleep = new _AudioManager.AudioManager(sound);\n bleep.listen((0, _state.default)());\n bleep.watchForMessages((0, _state.default)());\n}\n\nfunction initInputCommands() {\n /* eslint-disable no-new */\n new _InputHandler.default((0, _state.default)());\n}\n\nfunction startApp() {\n new _WindowTitle.default((0, _state.default)());\n api.emit('init');\n /* eslint-disable no-new */\n\n new _vue.default({\n el: '#app',\n render: function render(h) {\n return h(_App.default);\n },\n i18n: new _vueI18next.default(_i18next.default)\n });\n api.emit('ready');\n}\n\nfunction showError(err) {\n if (err) {\n log.error('Error starting Kiwi IRC:', err);\n } else {\n log.error('Unknown error starting Kiwi IRC');\n }\n /* eslint-disable no-new */\n\n\n new _vue.default({\n el: '#app',\n render: function render(h) {\n return h(_StartupError.default, {\n props: {\n error: err\n }\n });\n }\n });\n}","\"use strict\";\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.configTemplates = void 0;\n\n/**\n * Configuration templates\n *\n * All the default values for config options throughout kiwi are set here, under\n * the 'default' template object below.\n * If a 'default.template' value is set in the user config, this is used to\n * find the next template object below and is merged over the default config\n * template.\n * The user config (config.json by default) is then merged over the resulting\n * config object.\n *\n * The advanced settings dialog also displays these settings by iterating\n * through the keys. The values must not be null otherwise they will not be\n * shown.\n */\nvar configTemplates = {\n default: {\n plugins: [],\n windowTitle: 'Kiwi IRC - The web IRC client',\n useMonospace: false,\n language: '',\n theme: 'Default',\n themes: [{\n name: 'Default',\n url: 'static/themes/default'\n }],\n // Restricted to a single IRC server\n restricted: true,\n // The startup screen\n startupScreen: 'customServer',\n // Where to find the kiwi server\n kiwiServer: '/webirc/kiwiirc/',\n // If active, all connections will be routed via this BNC server. Network settings\n // will be read and updated to the BNC as they are changed.\n bnc: {\n active: false,\n server: '',\n port: 6667,\n tls: false,\n path: '',\n username: '',\n password: ''\n },\n warnOnExit: true,\n quitMessage: 'Page closed',\n // Default buffer settings\n buffers: {\n messageLayout: 'modern',\n alert_on: 'highlight',\n timestamp_format: '%H:%M:%S',\n // If timestamp_full_format is falsy, the browsers locale date format will be used\n timestamp_full_format: '',\n show_timestamps: true,\n scrollback_size: 250,\n show_hostnames: false,\n show_joinparts: true,\n show_topics: true,\n show_nick_changes: true,\n show_mode_changes: true,\n show_presence_changes: true,\n traffic_as_activity: false,\n coloured_nicklist: true,\n colour_nicknames_in_messages: true,\n block_pms: false,\n show_emoticons: true,\n extra_formatting: true,\n mute_sound: false,\n hide_message_counts: false,\n show_realnames: false,\n default_ban_mask: '*!%i@%h',\n default_kick_reason: 'Your behaviour is not conducive to the desired environment.',\n shared_input: false,\n show_message_info: true,\n who_loop: true,\n share_typing: true,\n // flash_title: message/highlight/off\n flash_title: 'message',\n nicklist_avatars: false,\n show_link_previews: true,\n inline_link_auto_previews: true,\n inline_link_auto_preview_whitelist: '.*',\n show_buffer_groups: true\n },\n // Startup screen default\n startupOptions: {\n server: '',\n port: 6667,\n tls: false,\n channel: '',\n nick: 'kiwi_?',\n direct: false,\n state_key: 'kiwi-state',\n remember_buffers: true,\n nick_format: ''\n },\n autoReconnect: false,\n disconnectOnSaslFail: true,\n allowRegisterProtocolHandler: false,\n noticeActiveBuffer: true,\n nicklistGroupAway: false,\n showChanlistModes: false,\n showAutocomplete: true,\n showEmojiPicker: true,\n showColorPicker: false,\n showSendButton: false,\n showAwayStatusIndicators: true,\n sidebarDefault: 'nicklist',\n showRaw: false,\n useBufferHistory: true,\n hideSettings: null,\n highlights: '',\n teamHighlights: false,\n aliases: \"\\n# General aliases\\n/p /part $1+\\n/me /action $destination $1+\\n/j /join $1+\\n/q /query $1+\\n/w /whois $1+\\n/raw /quote $1+\\n/connect /server $1+\\n/disconnect /quit $1+\\n/cycle $channel? /lines /part $channel | /join $channel\\n/active /back $1+\\n/umode /mode $nick $1+\\n\\n# Op related aliases\\n/op /quote mode $channel +o $1+\\n/deop /quote mode $channel -o $1+\\n/hop /quote mode $channel +h $1+\\n/dehop /quote mode $channel -h $1+\\n/voice /quote mode $channel +v $1+\\n/devoice /quote mode $channel -v $1+\\n/k /kick $channel $1+\\n/bans /mode $channel +b\\n/ban /quote mode $channel +b $1+\\n/unban /quote mode $channel -b $1+\\n\\n# Misc aliases\\n/slap /me slaps $1 around a bit with a large trout\\n/tick /msg $channel \\u2714\",\n embedly: {\n Key: ''\n },\n\n /* eslint-disable quote-props */\n emojis: {\n '-___-': '1f611',\n ':\\'-)': '1f602',\n '\\':-)': '1f605',\n '\\':-D': '1f605',\n '>:-)': '1f606',\n '\\':-(': '1f613',\n '>:-(': '1f620',\n ':\\'-(': '1f622',\n 'O:-)': '1f607',\n '0:-3': '1f607',\n '0:-)': '1f607',\n '0;^)': '1f607',\n 'O;-)': '1f607',\n '0;-)': '1f607',\n 'O:-3': '1f607',\n '-__-': '1f611',\n ':-Þ': '1f61b',\n '<3': '2764',\n '3': '1f494',\n ':\\')': '1f602',\n ':-D': '1f603',\n '\\':)': '1f605',\n '\\'=)': '1f605',\n '\\':D': '1f605',\n '\\'=D': '1f605',\n '>:)': '1f606',\n '>;)': '1f606',\n '>=)': '1f606',\n 'XD': '1f606',\n ';-)': '1f609',\n '*-)': '1f609',\n ';-]': '1f609',\n ';^)': '1f609',\n '\\':(': '1f613',\n '\\'=(': '1f613',\n ':-*': '1f618',\n ':^*': '1f618',\n '>:P': '1f61c',\n 'X-P': '1f61c',\n '>:[': '1f61e',\n ':-(': '1f61e',\n ':-[': '1f61e',\n '>:(': '1f620',\n ':\\'(': '1f622',\n ';-(': '1f622',\n '>.<': '1f623',\n '#-)': '1f635',\n '%-)': '1f635',\n 'X-)': '1f635',\n '\\\\0/': '1f646',\n '\\\\O/': '1f646',\n '0:3': '1f607',\n '0:)': '1f607',\n 'O:)': '1f607',\n 'O=)': '1f607',\n 'O:3': '1f607',\n 'B-)': '1f60e',\n '8-)': '1f60e',\n 'B-D': '1f60e',\n '8-D': '1f60e',\n '-_-': '1f611',\n '>:\\\\': '1f615',\n '>:/': '1f615',\n ':-/': '1f615',\n ':-.': '1f615',\n ':-P': '1f61b',\n ':Þ': '1f61b',\n ':-b': '1f61b',\n ':-O': '1f62e',\n 'O_O': '1f62e',\n '>:O': '1f62e',\n ':-X': '1f636',\n ':-#': '1f636',\n ':-)': '1f642',\n '(y)': '1f44d',\n ':D': '1f603',\n '=D': '1f603',\n ';)': '1f609',\n '*)': '1f609',\n ';]': '1f609',\n ';D': '1f609',\n ':*': '1f618',\n '=*': '1f618',\n ':(': '1f61e',\n ':[': '1f61e',\n '=(': '1f61e',\n ':@': '1f620',\n ';(': '1f622',\n 'D:': '1f628',\n ':$': '1f633',\n '=$': '1f633',\n '#)': '1f635',\n '%)': '1f635',\n 'X)': '1f635',\n 'B)': '1f60e',\n '8)': '1f60e',\n ':/': '1f615',\n ':\\\\': '1f615',\n '=/': '1f615',\n '=\\\\': '1f615',\n ':L': '1f615',\n '=L': '1f615',\n ':P': '1f61b',\n ':p': '1f61b',\n '=P': '1f61b',\n ':b': '1f61b',\n ':O': '1f62e',\n ':X': '1f636',\n ':#': '1f636',\n '=X': '1f636',\n '=#': '1f636',\n ':)': '1f642',\n '=]': '1f642',\n '=)': '1f642',\n ':]': '1f642'\n },\n emojiLocation: 'https://kiwiirc.com/shared/emoji/',\n textFormats: {\n user: '%nick',\n user_full: '%nick (%username@%host)',\n channel_join: '→ %text',\n channel_part: '← %text (%reason)',\n channel_quit: '← %text (%reason)',\n channel_kicked: '← %text (%reason)',\n channel_selfkick: '× %text (%reason)',\n channel_badpassword: '× %text',\n channel_topic: 'ⓘ %text',\n channel_banned: '× %text',\n channel_badkey: '⚠ %text',\n channel_inviteonly: '⚠ %channel %text',\n channel_alreadyin: '⚠ %nick %text',\n channel_limitreached: '⚠ %channel %text',\n channel_invalid_name: '⚠ %channel %text',\n channel_topic_setby: 'ⓘ %text',\n channel_has_been_invited: 'ⓘ %nick %text',\n server_connecting: '%text',\n server_connecting_error: '%text',\n mode: 'ⓘ %text',\n selfmode: 'ⓘ %nick %text',\n nickname_alreadyinuse: '⚠ %text',\n network_disconnected: '%text',\n network_connected: '%text',\n whois_channels: '%text',\n whois_idle_and_signon: '%text',\n whois_away: '%text',\n whois_server: '%text',\n whois_idle: '%text',\n whois_notfound: 'ⓘ %text',\n nick_changed: 'ⓘ %text',\n applet_notfound: '⚠ %text',\n encoding_changed: 'ⓘ %text',\n encoding_invalid: '⚠ %text',\n settings_saved: 'ⓘ %text',\n ignore_title: '%text:',\n ignore_none: '%text',\n ignore_nick: '%text',\n ignore_stop_notice: '%text',\n ignore_stopped: '%text',\n chanop_privs_needed: '⚠ %text',\n no_such_nick: 'ⓘ %nick: %text',\n unknown_command: 'ⓘ %text',\n motd: '%text',\n ctcp_response: '[CTCP %nick reply] %message',\n ctcp_request: '[CTCP %nick] %message',\n privmsg: '%text',\n notice: '[NOTICE] %text',\n action: '* %nick %text',\n whois_ident: '%nick [%nick!%ident@%host] * %text',\n whois_error: '[%nick] %text',\n whois: '%text',\n whowas_ident: 'was [%nick!%ident@%host] * %name',\n whowas_server: 'using %server (%info)',\n whowas_error: '[%nick] %text',\n who: '%nick [%nick!%ident@%host] * %realname',\n quit: '%text',\n rejoin: '%text',\n set_setting: 'ⓘ %text',\n list_aliases: 'ⓘ %text',\n ignored_pattern: 'ⓘ %text',\n wallops: '[WALLOPS] %text',\n message_nick: '%prefix%nick',\n general_error: '%text'\n },\n presetNetworks: []\n },\n // Config template for those hardcore irc veterans\n irc: {\n showEmojiPicker: false,\n sidebarDefault: 'nicklist',\n buffers: {\n messageLayout: 'inline',\n show_hostnames: true,\n coloured_nicklist: false,\n colour_nicknames_in_messages: false,\n show_emoticons: false,\n show_message_info: false,\n share_typing: false,\n inline_link_auto_previews: false\n }\n },\n // Config template for working as part of a team\n team: {\n teamHighlights: true,\n buffers: {\n messageLayout: 'modern',\n show_joinparts: false,\n show_nick_changes: true,\n show_mode_changes: true,\n show_realnames: true\n }\n }\n};\nexports.configTemplates = configTemplates;","import { render, staticRenderFns } from \"./ChannelInfo.vue?vue&type=template&id=118a686e&\"\nimport script from \"./ChannelInfo.vue?vue&type=script&lang=js&\"\nexport * from \"./ChannelInfo.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ChannelInfo.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _typeof = require(\"@babel/runtime-corejs3/helpers/typeof\");\n\nvar _WeakMap = require(\"@babel/runtime-corejs3/core-js-stable/weak-map\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _Object$getOwnPropertyDescriptor = require(\"@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _parseInt2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/parse-int\"));\n\nvar _isNan = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/number/is-nan\"));\n\nvar _url = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/url\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar Misc = _interopRequireWildcard(require(\"@/helpers/Misc\"));\n\nvar _Captcha = _interopRequireDefault(require(\"@/components/Captcha\"));\n\nvar _ServerSelector = _interopRequireDefault(require(\"./ServerSelector\"));\n\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== \"function\") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\n\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nvar _default = {\n components: {\n ServerSelector: _ServerSelector.default,\n Captcha: _Captcha.default\n },\n props: ['network'],\n data: function data() {\n return {\n server_type: 'network',\n znc_username: '',\n znc_network: '',\n znc_password: '',\n show_advanced: false,\n switch_tabs_on_connect: false,\n network_list: []\n };\n },\n computed: {\n settingShowRaw: {\n get: function get() {\n return this.network.setting('show_raw');\n },\n set: function set(val) {\n return this.network.setting('show_raw', val);\n }\n },\n directWs: {\n get: function get() {\n if (!this.network.connection.direct) {\n return '';\n }\n\n var connection = this.network.connection;\n var addr = '';\n addr += connection.tls ? 'wss://' : 'ws://';\n addr += connection.server;\n var port = (0, _parseInt2.default)(connection.port, 10);\n\n if ((0, _isNan.default)(port)) {\n port = connection.tls ? 443 : 80;\n } // Only include the port if needed\n\n\n if (connection.tls && port !== 443 || !connection.tls && port !== 80) {\n addr += ':' + connection.port;\n }\n\n addr += connection.path;\n return addr;\n },\n set: function set(newVal) {\n var url = null;\n\n try {\n url = new _url.default(newVal);\n } catch (e) {\n return;\n }\n\n var connection = this.network.connection;\n connection.tls = url.protocol.toLowerCase() === 'wss:';\n connection.server = url.hostname;\n var port = (0, _parseInt2.default)(url.port, 10);\n\n if ((0, _isNan.default)(port)) {\n port = url.protocol.toLowerCase() === 'wss:' ? 443 : 80;\n }\n\n connection.port = port;\n var u = url.href.replace(url.protocol + '//', '');\n connection.path = u.substr((0, _indexOf.default)(u).call(u, '/'));\n }\n }\n },\n watch: {\n znc_username: function znc_username() {\n this.setZncPass();\n },\n znc_network: function znc_network() {\n this.setZncPass();\n },\n znc_password: function znc_password() {\n this.setZncPass();\n },\n 'network.state': function networkState() {\n if (!this.switch_tabs_on_connect) {\n return;\n }\n\n if (this.network.state === 'connected') {\n this.switch_tabs_on_connect = false;\n this.$state.$emit('server.tab.show', 'messages');\n } else if (this.network.state_error) {\n this.switch_tabs_on_connect = false;\n }\n }\n },\n created: function created() {\n var isZnc = !!(this.network.connection.password || '').match(/^(.*)\\/(.*):(.*)$/);\n this.server_type = isZnc ? 'znc' : 'network';\n\n if (isZnc) {\n var match = (this.network.connection.password || '').match(/^(.*)\\/(.*):(.*)$/);\n this.znc_username = match[1] || '';\n this.znc_network = match[2] || '';\n this.znc_password = match[3] || '';\n }\n\n this.network_list = this.$state.setting('presetNetworks') || [];\n },\n methods: {\n readableStateError: function readableStateError(err) {\n return Misc.networkErrorMessage(err);\n },\n connect: function connect() {\n this.switch_tabs_on_connect = true;\n this.network.ircClient.connect();\n },\n reconnect: function reconnect() {\n this.network.ircClient.connect();\n },\n removeNetwork: function removeNetwork() {\n /* eslint-disable no-restricted-globals, no-alert */\n var confirmed = confirm('Really remove this network? This cannot be undone!');\n\n if (!confirmed) {\n return;\n }\n\n this.$state.removeNetwork(this.network.id);\n this.$state.$emit('active.component');\n },\n setZncPass: function setZncPass() {\n var _context, _context2;\n\n var newPass = (0, _concat.default)(_context = (0, _concat.default)(_context2 = \"\".concat(this.znc_username, \"/\")).call(_context2, this.znc_network, \":\")).call(_context, this.znc_password);\n this.network.connection.password = newPass;\n this.network.connection.nick = this.znc_username;\n },\n toggleTls: function toggleTls() {\n var connection = this.network.connection;\n connection.tls = !connection.tls; // Switching the port only if were currently using the most common TLS/plain text ports\n\n if (connection.tls && connection.port === 6667) {\n connection.port = 6697;\n } else if (!connection.tls && connection.port === 6697) {\n connection.port = 6667;\n }\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"NetworkSettings\"]\r\nwindow._kiwi_exports.components.NetworkSettings = exports.default ? exports.default : exports;\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-statebrowser-channel\",class:{\n 'kiwi-statebrowser-channel-active': _vm.isActiveBuffer(),\n 'kiwi-statebrowser-channel-notjoined': _vm.buffer.isChannel() &&\n !_vm.buffer.joined\n },attrs:{\"data-name\":_vm.buffer.name.toLowerCase()}},[_c('div',{staticClass:\"kiwi-statebrowser-channel-name\",on:{\"click\":function($event){return _vm.$emit('selected')}}},[(_vm.buffer.isQuery() && _vm.awayNotifySupported())?_c('away-status-indicator',{attrs:{\"network\":_vm.network,\"user\":_vm.network.userByName(_vm.buffer.name)}}):_vm._e(),_vm._v(_vm._s(_vm.buffer.name)+\" \")],1),_c('div',{staticClass:\"kiwi-statebrowser-buffer-actions\"},[_c('div',{staticClass:\"kiwi-statebrowser-channel-labels\"},[(_vm.buffer.flags.unread && _vm.showMessageCounts(_vm.buffer))?_c('div',{staticClass:\"kiwi-statebrowser-channel-label\",class:[\n _vm.buffer.flags.highlight ?\n 'kiwi-statebrowser-channel-label--highlight' :\n ''\n ]},[_vm._v(\" \"+_vm._s(_vm.buffer.flags.unread > 999 ? \"999+\": _vm.buffer.flags.unread)+\" \")]):_vm._e()]),_c('div',{staticClass:\"kiwi-statebrowser-channel-leave\",on:{\"click\":function($event){return _vm.closeBuffer(_vm.buffer)}}},[_c('i',{staticClass:\"fa fa-times\",attrs:{\"aria-hidden\":\"true\"}})])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChannelBanlist.vue?vue&type=style&index=0&lang=less&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChannelBanlist.vue?vue&type=style&index=0&lang=less&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomServer.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./CustomServer.vue?vue&type=style&index=0&lang=css&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _typeof = require(\"@babel/runtime-corejs3/helpers/typeof\");\n\nvar _WeakMap = require(\"@babel/runtime-corejs3/core-js-stable/weak-map\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _Object$getOwnPropertyDescriptor = require(\"@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _find = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/find\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _map = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/map\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar Misc = _interopRequireWildcard(require(\"@/helpers/Misc\"));\n\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== \"function\") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\n\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nvar _default2 = {\n props: {\n usePreset: {\n type: Boolean,\n default: true\n },\n networkList: {\n type: Array,\n default: function _default() {\n return [];\n }\n },\n connection: {\n type: Object,\n default: function _default() {}\n }\n },\n data: function data() {\n return {\n name: '',\n presetNetworks: [],\n showCustom: true,\n willEmit: false\n };\n },\n computed: {\n presetServer: {\n set: function set(newVal) {\n if (newVal === 'custom') {\n this.name = '';\n this.connection.server = '';\n this.connection.port = 6697;\n this.connection.tls = true;\n this.showCustom = true;\n } else {\n var addr = Misc.parsePresetServer(newVal);\n this.name = addr.name;\n this.connection.server = addr.server;\n this.connection.port = addr.port;\n this.connection.tls = addr.tls;\n this.showCustom = false;\n }\n },\n get: function get() {\n return this.showCustom ? 'custom' : this.toUri(this.connection);\n }\n }\n },\n created: function created() {\n if (this.networkList) {\n this.importUris(this.networkList);\n } // If the given network is in the preset server list, select it\n\n\n var con = this.connection;\n\n if ((0, _find.default)(_lodash.default).call(_lodash.default, this.presetNetworks, function (s) {\n var match = s.server === con.server && s.port === con.port && s.tls === con.tls;\n return match;\n })) {\n this.showCustom = false;\n }\n },\n methods: {\n toUri: function toUri(s) {\n var _context, _context2;\n\n return (0, _concat.default)(_context = (0, _concat.default)(_context2 = \"\".concat(s.server, \":\")).call(_context2, s.tls ? '+' : '')).call(_context, s.port);\n },\n toggleTls: function toggleTls() {\n this.connection.tls = !this.connection.tls; // Switching the port only if were currently using the most common TLS/plain text ports\n\n if (this.connection.tls && this.connection.port === 6667) {\n this.connection.port = 6697;\n } else if (!this.connection.tls && this.connection.port === 6697) {\n this.connection.port = 6667;\n }\n },\n importUris: function importUris(serverList) {\n // [ 'freenode|irc.freenode.net:+6697', 'irc.snoonet.org:6667' ]\n var servers = (0, _map.default)(serverList).call(serverList, function (s) {\n return Misc.parsePresetServer(s);\n });\n this.$set(this, 'presetNetworks', servers);\n }\n }\n};\nexports.default = _default2;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"ServerSelector\"]\r\nwindow._kiwi_exports.components.ServerSelector = exports.default ? exports.default : exports;\r\n","\"use strict\";\n'kiwi public';\n/** @module */\n\nvar _typeof3 = require(\"@babel/runtime-corejs3/helpers/typeof\");\n\nvar _WeakMap = require(\"@babel/runtime-corejs3/core-js-stable/weak-map\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _Object$getOwnPropertyDescriptor = require(\"@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.linkifyChannels = linkifyChannels;\nexports.createNickColour = createNickColour;\nexports.toInt = toInt;\nexports.hexVal = hexVal;\nexports.mapRange = mapRange;\nexports.formatAndT = formatAndT;\nexports.formatUser = formatUser;\nexports.formatUserFull = formatUserFull;\nexports.formatText = formatText;\nexports.formatDuration = formatDuration;\nexports.formatNumber = formatNumber;\nexports.t = t;\nexports.channelRegex = exports.urlRegex = void 0;\n\nvar _typeof2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/typeof\"));\n\nvar _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _parseInt2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/parse-int\"));\n\nvar _isNan = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/number/is-nan\"));\n\nvar _parseFloat2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/parse-float\"));\n\nvar _state = _interopRequireDefault(require(\"@/libs/state\"));\n\nvar _ThemeManager = _interopRequireDefault(require(\"@/libs/ThemeManager\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar ipRegex = _interopRequireWildcard(require(\"ip-regex\"));\n\nvar _i18next = _interopRequireDefault(require(\"i18next\"));\n\nvar murmurhash3 = _interopRequireWildcard(require(\"murmurhash3js\"));\n\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== \"function\") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\n\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof3(obj) !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nvar urlRegex = new RegExp( // Detect either a protocol or 'www.' to start a URL\n/(([A-Za-z][A-Za-z0-9-]*:\\/\\/)|(www\\.))/.source + '(' + // Hostname and tld\n/([\\w\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF.-]+\\.[a-zA-Z]{2,63})/.source + '|' + // IPv4 address\nipRegex.v4().source + '|' + // IPv6 address\n'(\\\\[?' + ipRegex.v6().source + '\\\\]?)' + ')' + // Optional port..\n/(:[0-9]+)?/.source + // Optional path..\n/(\\/[\\w\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF!:.?$'()[\\]*,;~+=&%@!\\-/]*)?/.source + // Optional fragment\n/(#.*)?/.source, 'i');\nexports.urlRegex = urlRegex;\nvar channelRegex = /(^|\\s)([@+~&%}]*)([#&][^ .,\\007<>\\n\\r]+?)([:;.,<>\\n\\r]+)?$/i;\nexports.channelRegex = channelRegex;\n\nfunction linkifyChannels(word) {\n // \"@#kiwiirc,\" = 3 parts. (prefix=@)(channel=#kiwiirc)(suffix=,)\n return word.replace(channelRegex, function (match, mLead, mPrefix, mChannel, mSuffix) {\n var _context, _context2, _context3, _context4;\n\n var chan = _lodash.default.escape((0, _trim.default)(mChannel).call(mChannel));\n\n var lead = _lodash.default.escape(mLead);\n\n var prefix = _lodash.default.escape(mPrefix);\n\n var suffix = _lodash.default.escape(mSuffix);\n\n var link = (0, _concat.default)(_context = \"\")).call(_context, chan, \"\");\n return (0, _concat.default)(_context2 = (0, _concat.default)(_context3 = (0, _concat.default)(_context4 = \"\".concat(lead)).call(_context4, prefix)).call(_context3, link)).call(_context2, suffix);\n });\n}\n/**\n * Convert a nickname string to a colour code\n * Uses these properties from the CSS theme file:\n * --kiwi-nickcolour-count: 200; - number of available nick colours\n * --kiwi-nickcolour-hueoffset: 0; - moves the hue value by hueoffset amounts\n * --kiwi-nickcolour-saturation: 70; - the nick saturation in HSL value\n * --kiwi-nickcolour-lightness: 40; - the nick lightness in HSL value\n */\n\n\nfunction createNickColour(nick) {\n var _context5, _context6;\n\n var themeMngr = _ThemeManager.default.instance();\n\n var nickLower = (nick || '').toLowerCase();\n var nickNum = murmurhash3.x86.hash32(nickLower);\n var bucketSize = toInt(themeMngr.themeVar('nickcolour-count')) || 200;\n var hueOffset = toInt(themeMngr.themeVar('nickcolour-hueoffset'));\n var hsl = {\n h: mapRange(Math.abs(nickNum) % bucketSize, 0, bucketSize, 0, 360) + hueOffset,\n s: toInt(themeMngr.themeVar('nickcolour-saturation')) || 70,\n l: toInt(themeMngr.themeVar('nickcolour-lightness')) || 40\n };\n return (0, _concat.default)(_context5 = (0, _concat.default)(_context6 = \"hsl(\".concat(hsl.h, \", \")).call(_context6, hsl.s, \"%, \")).call(_context5, hsl.l, \"%)\");\n}\n/**\n * Parse a string to an int, where NaN is 0\n * @param {string} inp\n */\n\n\nfunction toInt(inp) {\n var int = (0, _parseInt2.default)(inp, 10);\n\n if ((0, _isNan.default)(int)) {\n int = 0;\n }\n\n return int;\n}\n/**\n * Extract a substring from a hex string and parse it as an integer\n * @param {string} hash - Source hex string\n * @param {number} index - Start index of substring\n * @param {number} [length] - Length of substring. Defaults to 1.\n */\n\n\nfunction hexVal(hash, index, len) {\n return (0, _parseInt2.default)(hash.substr(index, len || 1), 16);\n}\n/*\n * Re-maps a number from one range to another\n * http://processing.org/reference/map_.html\n */\n\n\nfunction mapRange(value, vMin, vMax, dMin, dMax) {\n var vValue = (0, _parseFloat2.default)(value);\n var vRange = vMax - vMin;\n var dRange = dMax - dMin;\n return (vValue - vMin) * dRange / vRange + dMin;\n}\n/**\n * Format a string according to the configured textFormats, including a\n * translation for the %text formatting variable\n */\n\n\nfunction formatAndT(formatId, formatParams, localeId, localeParams) {\n var body = t(localeId, localeParams);\n\n if (formatParams) {\n formatParams.text = body;\n body = formatText(formatId, formatParams);\n } else {\n body = formatText(formatId, {\n text: body\n });\n }\n\n return body;\n}\n/**\n * Create a user reference string similar to 'nick'\n */\n\n\nfunction formatUser(fNick) {\n var nick = fNick; // Allow passing of a user object or irc-framework event\n\n if ((0, _typeof2.default)(nick) === 'object') {\n nick = nick.nick;\n }\n\n return formatText('user', {\n nick: nick\n });\n}\n/**\n * Create a full user reference similar to 'nick (user@host)'\n */\n\n\nfunction formatUserFull(fNick, fUsername, fHost) {\n var nick = '';\n var username = '';\n var host = ''; // Allow passing of a user object or irc-framework event\n\n if ((0, _typeof2.default)(fNick) === 'object') {\n var user = fNick;\n nick = user.nick;\n username = user.username || user.ident;\n host = user.hostname || user.host;\n } else {\n nick = fNick;\n username = fUsername;\n host = fHost;\n }\n\n return formatText('user_full', {\n nick: nick,\n username: username,\n host: host\n });\n}\n/**\n * Format a string according to the configured textFormats\n */\n\n\nfunction formatText(formatId, formatParams) {\n var format = (0, _state.default)().setting('textFormats.' + formatId);\n var params = formatParams; // Most texts only have a 'text' variable so allow passing of a string for this\n // variable as shorthand.\n\n if (typeof params === 'string') {\n params = {\n text: params\n };\n } // Expand a user mask into its individual parts (nick, ident, hostname)\n\n\n if (params.user) {\n params.nick = params.user.nick || '';\n params.username = params.user.username || '';\n params.host = params.user.hostname || '';\n params.prefix = params.user.prefix || '';\n } // Do the magic. Use the %shorthand syntax to produce output.\n\n\n var result = format.replace(/%([A-Z]{2,})/ig, function (match, key) {\n var ret = '';\n\n if (typeof params[key] !== 'undefined') {\n ret = params[key];\n }\n\n return ret;\n });\n return result;\n} // Convert a given duration in seconds to human readable weeks,days,hours,minutes,seconds\n// only showing the duration parts that are used eg 3666 --> 1 hour, 1 minute, 6 seconds\n\n\nfunction formatDuration(timeSeconds) {\n var seconds = timeSeconds;\n var weeks = Math.floor(seconds / (3600 * 24 * 7));\n seconds -= weeks * 3600 * 24 * 7;\n var days = Math.floor(seconds / (3600 * 24));\n seconds -= days * 3600 * 24;\n var hours = Math.floor(seconds / 3600);\n seconds -= hours * 3600;\n var minutes = Math.floor(seconds / 60);\n seconds -= minutes * 60;\n var tmp = [];\n weeks && tmp.push(t('week', {\n count: weeks\n }));\n (weeks || days) && tmp.push(t('day', {\n count: days\n }));\n (days || hours) && tmp.push(t('hour', {\n count: hours\n }));\n (days || hours || minutes) && tmp.push(t('minute', {\n count: minutes\n }));\n tmp.push(t('second', {\n count: seconds\n }));\n return tmp.join(' ');\n}\n\nfunction formatNumber(num) {\n return num.toString().replace(/(\\d)(?=(\\d{3})+(?!\\d))/g, '$1,');\n}\n\nfunction t(key, options) {\n var val = _i18next.default.t(key, options);\n\n if (!val) {\n var opts = options || {};\n opts.lng = 'en-us';\n val = _i18next.default.t(key, opts);\n }\n\n return val;\n}\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"helpers\"]) window._kiwi_exports[\"helpers\"] = {};\nwindow._kiwi_exports[\"helpers\"][\"TextFormatting\"]\r\nwindow._kiwi_exports.helpers.TextFormatting = exports.default ? exports.default : exports;\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-buffersettings\"},[_c('div',{staticClass:\"kiwi-buffersettings-alerts\"},[_c('h3',[_vm._v(_vm._s(_vm.$t('settings_notify')))]),_c('hr'),_c('form',{staticClass:\"u-form\"},[_c('label',{staticClass:\"u-checkbox-wrapper\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.settingAlertOn),expression:\"settingAlertOn\"}],attrs:{\"type\":\"radio\",\"name\":\"alert_on\",\"value\":\"message\"},domProps:{\"checked\":_vm._q(_vm.settingAlertOn,\"message\")},on:{\"change\":function($event){_vm.settingAlertOn=\"message\"}}}),_c('span',[_vm._v(_vm._s(_vm.$t('settings_notify_all')))])]),_c('label',{staticClass:\"u-checkbox-wrapper\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.settingAlertOn),expression:\"settingAlertOn\"}],attrs:{\"type\":\"radio\",\"name\":\"alert_on\",\"value\":\"highlight\"},domProps:{\"checked\":_vm._q(_vm.settingAlertOn,\"highlight\")},on:{\"change\":function($event){_vm.settingAlertOn=\"highlight\"}}}),_c('span',[_vm._v(_vm._s(_vm.$t('settings_notify_mentioned')))])]),_c('label',{staticClass:\"u-checkbox-wrapper\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.settingAlertOn),expression:\"settingAlertOn\"}],attrs:{\"type\":\"radio\",\"name\":\"alert_on\",\"value\":\"never\"},domProps:{\"checked\":_vm._q(_vm.settingAlertOn,\"never\")},on:{\"change\":function($event){_vm.settingAlertOn=\"never\"}}}),_c('span',[_vm._v(_vm._s(_vm.$t('settings_notify_never')))])])]),_c('h3',[_vm._v(_vm._s(_vm.$t('settings')))]),_c('hr'),_c('form',{staticClass:\"u-form\"},[_c('label',[_c('span',[_vm._v(_vm._s(_vm.$t('settings_notify_mute')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.settingMuteSound),expression:\"settingMuteSound\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.settingMuteSound)?_vm._i(_vm.settingMuteSound,null)>-1:(_vm.settingMuteSound)},on:{\"change\":function($event){var $$a=_vm.settingMuteSound,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.settingMuteSound=$$a.concat([$$v]))}else{$$i>-1&&(_vm.settingMuteSound=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.settingMuteSound=$$c}}}})]),_c('label',[_c('span',[_vm._v(_vm._s(_vm.$t('settings_show_message_counts')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.settingHideMessageCount),expression:\"settingHideMessageCount\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.settingHideMessageCount)?_vm._i(_vm.settingHideMessageCount,null)>-1:(_vm.settingHideMessageCount)},on:{\"change\":function($event){var $$a=_vm.settingHideMessageCount,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.settingHideMessageCount=$$a.concat([$$v]))}else{$$i>-1&&(_vm.settingHideMessageCount=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.settingHideMessageCount=$$c}}}})])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./TextStyle.vue?vue&type=template&id=2a7204ee&\"\nimport script from \"./TextStyle.vue?vue&type=script&lang=js&\"\nexport * from \"./TextStyle.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TextStyle.vue?vue&type=style&index=0&lang=less&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\"use strict\";\n'kiwi public';\n\nvar _typeof = require(\"@babel/runtime-corejs3/helpers/typeof\");\n\nvar _WeakMap = require(\"@babel/runtime-corejs3/core-js-stable/weak-map\");\n\nvar _Object$defineProperty2 = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _Object$getOwnPropertyDescriptor2 = require(\"@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty2(exports, \"__esModule\", {\n value: true\n});\n\nexports.create = create;\n\nvar _slicedToArray2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/slicedToArray\"));\n\nvar _toConsumableArray2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/toConsumableArray\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/defineProperty\"));\n\nvar _assign = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/assign\"));\n\nvar _now = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/date/now\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _flags = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/flags\"));\n\nvar _slice = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/slice\"));\n\nvar _find = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/find\"));\n\nvar _splice = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/splice\"));\n\nvar _filter = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/filter\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _keys = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/keys\"));\n\nvar _entries = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/entries\"));\n\nvar _map = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/map\"));\n\nvar _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\n\nvar _getOwnPropertySymbols = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols\"));\n\nvar _getOwnPropertyDescriptor = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor\"));\n\nvar _getOwnPropertyDescriptors = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors\"));\n\nvar _defineProperties = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/define-properties\"));\n\nvar _defineProperty3 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar _strftime = _interopRequireDefault(require(\"strftime\"));\n\nvar _ircFramework = _interopRequireDefault(require(\"irc-framework\"));\n\nvar TextFormatting = _interopRequireWildcard(require(\"@/helpers/TextFormatting\"));\n\nvar IrcdDiffs = _interopRequireWildcard(require(\"@/helpers/IrcdDiffs\"));\n\nvar _TypingMiddleware = _interopRequireDefault(require(\"./TypingMiddleware\"));\n\nvar _ChathistoryMiddleware = _interopRequireDefault(require(\"./ChathistoryMiddleware\"));\n\nvar ServerConnection = _interopRequireWildcard(require(\"./ServerConnection\"));\n\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== \"function\") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\n\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty2 && _Object$getOwnPropertyDescriptor2; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor2(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty2(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = (0, _keys.default)(object); if (_getOwnPropertySymbols.default) { var symbols = (0, _getOwnPropertySymbols.default)(object); if (enumerableOnly) { symbols = (0, _filter.default)(symbols).call(symbols, function (sym) { return (0, _getOwnPropertyDescriptor.default)(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { var _context27; (0, _forEach.default)(_context27 = ownKeys(Object(source), true)).call(_context27, function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (_getOwnPropertyDescriptors.default) { (0, _defineProperties.default)(target, (0, _getOwnPropertyDescriptors.default)(source)); } else { var _context28; (0, _forEach.default)(_context28 = ownKeys(Object(source))).call(_context28, function (key) { (0, _defineProperty3.default)(target, key, (0, _getOwnPropertyDescriptor.default)(source, key)); }); } } return target; }\n\nfunction create(state, network) {\n var networkid = network.id;\n var ircClient = new _ircFramework.default.Client({\n // Most options are set under the overloaded .connect()\n version: null,\n enable_chghost: true,\n enable_setname: true,\n message_max_length: 350\n });\n ircClient.requestCap('znc.in/self-message');\n ircClient.use((0, _ChathistoryMiddleware.default)());\n ircClient.use(clientMiddleware(state, network));\n ircClient.use((0, _TypingMiddleware.default)()); // Overload the connect() function to make sure we are connecting with the\n // most recent connection details from the network state\n\n var originalIrcClientConnect = ircClient.connect;\n\n ircClient.connect = function connect() {\n // Set some defaults if we don't have eveything\n if (!network.connection.nick) {\n network.connection.nick = 'Guest' + Math.floor(Math.random() * 100);\n }\n\n ircClient.options.host = network.connection.server;\n ircClient.options.port = network.connection.port;\n ircClient.options.tls = network.connection.tls;\n ircClient.options.path = network.connection.path;\n ircClient.options.password = network.connection.password;\n\n if (network.password) {\n ircClient.options.account = {\n account: network.connection.nick,\n password: network.password\n };\n } else {\n // No password so give an empty account config. This forces irc-framework to keep\n // the server password (options.password) separate from SASL\n ircClient.options.account = {};\n }\n\n ircClient.options.nick = network.connection.nick;\n ircClient.options.username = network.username || network.connection.nick;\n ircClient.options.gecos = network.gecos || 'https://kiwiirc.com/';\n ircClient.options.encoding = network.connection.encoding;\n ircClient.options.auto_reconnect = !!state.setting('autoReconnect'); // Apply any irc-fw options specified in kiwiirc config\n\n var configOptions = state.setting('ircFramework');\n\n if (configOptions) {\n (0, _assign.default)(ircClient.options, configOptions);\n }\n\n var eventObj = {\n network: network,\n transport: null\n };\n state.$emit('network.connecting', eventObj);\n\n if (eventObj.transport) {\n // A plugin might use its own transport of some kind\n ircClient.options.transport = eventObj.transport;\n } else if (!network.connection.direct) {\n // A direct connection uses a websocket to connect (note: some browsers limit\n // the number of connections to the same host!).\n // A non-direct connection will connect via the configured kiwi server using\n // with our own irc-framework compatible transport.\n ircClient.options.transport = ServerConnection.createChannelConstructor(state.settings.kiwiServer, (window.location.hash || '').substr(1), networkid);\n } else {\n // Use the irc-framework default transport\n ircClient.options.transport = undefined;\n }\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n originalIrcClientConnect.apply(ircClient, args);\n }; // Overload the raw() function so that we can emit outgoing IRC messages to plugins\n\n\n var originalIrcClientRaw = ircClient.raw;\n\n ircClient.raw = function raw() {\n var message = null;\n\n if ((arguments.length <= 0 ? undefined : arguments[0]) instanceof _ircFramework.default.Message) {\n message = arguments.length <= 0 ? undefined : arguments[0];\n } else {\n var rawString = ircClient.rawString.apply(ircClient, arguments);\n message = _ircFramework.default.ircLineParser(rawString);\n }\n\n var eventObj = {\n network: network,\n message: message,\n handled: false\n };\n state.$emit('ircout', eventObj);\n\n if (!eventObj.handled) {\n originalIrcClientRaw.apply(ircClient, [message]);\n }\n };\n\n ircClient.on('raw', function (event) {\n if (!network.setting('show_raw') && !state.setting('showRaw')) {\n return;\n }\n\n var buffer = state.getOrAddBufferByName(networkid, '*raw');\n state.addMessage(buffer, {\n time: (0, _now.default)(),\n nick: '',\n message: (event.from_server ? '[S] ' : '[C] ') + event.line\n });\n });\n ircClient.on('typing', function (event) {\n var user = state.getUser(network.id, event.nick);\n\n if (user) {\n user.typingStatus(event.target, event.status);\n }\n });\n return ircClient;\n}\n\nfunction clientMiddleware(state, network) {\n var networkid = network.id; // eslint-disable-next-line\n\n var numConnects = 0;\n var isRegistered = false;\n return function middlewareFn(client, rawEvents, parsedEvents) {\n parsedEvents.use(parsedEventsHandler);\n rawEvents.use(rawEventsHandler);\n client.on('connecting', function () {\n network.state_error = '';\n network.state = 'connecting';\n network.last_error = '';\n network.last_error_numeric = 0;\n });\n client.on('connected', function () {\n network.state_error = '';\n network.state = 'connected';\n });\n client.on('socket close', function (err) {\n var _context;\n\n isRegistered = false;\n network.state = 'disconnected';\n network.state_error = err || '';\n (0, _forEach.default)(_context = network.buffers).call(_context, function (buffer) {\n if (!buffer) {\n return;\n }\n\n buffer.joined = false;\n buffer.clearUsers();\n });\n });\n };\n\n function rawEventsHandler(command, event, rawLine, client, next) {\n // Allow plugins to override raw IRC events\n var eventObj = _objectSpread(_objectSpread({}, event), {}, {\n raw: rawLine,\n handled: false\n });\n\n state.$emit('irc.raw', command, eventObj, network);\n\n if (eventObj.handled) {\n return;\n }\n\n state.$emit('irc.raw.' + command, command, eventObj, network);\n\n if (eventObj.handled) {\n return;\n }\n\n if (command === '002') {\n // Your host is server.example.net, running version InspIRCd-2.0\n var param = event.params[1] || '';\n var m = param.match(/running version (.*)$/);\n network.ircd = m ? m[1] : '';\n } // SASL failed auth\n\n\n if (command === '904') {\n if (!network.state !== 'connected') {\n network.last_error = 'Invalid login';\n\n if (state.setting('disconnectOnSaslFail')) {\n network.ircClient.connection.end();\n }\n }\n\n var serverBuffer = network.serverBuffer();\n state.addMessage(serverBuffer, {\n time: (0, _now.default)(),\n nick: '*',\n message: 'Invalid login'\n });\n }\n\n if (command === 'CAP' && network.setting('show_raw_caps')) {\n var _context2;\n\n var params = (0, _toConsumableArray2.default)(event.params);\n\n if ((0, _indexOf.default)(_context2 = params[params.length - 1]).call(_context2, ' ') > -1) {\n params[params.length - 1] = ':' + params[params.length - 1];\n }\n\n var buffer = network.serverBuffer();\n state.addMessage(buffer, {\n time: (0, _now.default)(),\n nick: '',\n message: event.command + ' ' + params.join(' ')\n });\n }\n\n next();\n }\n\n function parsedEventsHandler(command, event, client, next) {\n // Trigger this event through the state object first. If it's been handled\n // somewhere else then we ignore it.\n var ircEventObj = {\n handled: false\n };\n state.$emit('irc.' + command, event, network, ircEventObj);\n\n if (ircEventObj.handled) {\n next();\n return;\n } // Ignore any of the control messages. They're transport related to kiwi internals\n\n\n if (event && event.command === 'CONTROL') {\n next();\n return;\n } // If there is a time difference between this client and the server, convert it\n // to match our local time so it makes sense to the user\n\n\n var eventTime = event && event.time ? network.ircClient.network.timeToLocal(event.time) : (0, _now.default)();\n var serverTime = event && event.time || 0;\n\n if (command === 'channel_redirect') {\n var b = network.bufferByName(event.from);\n\n if (b) {\n (0, _flags.default)(b).redirect_to = event.to;\n }\n }\n\n if (command === 'registered') {\n isRegistered = true;\n network.nick = event.nick;\n state.addUser(networkid, {\n nick: event.nick,\n username: client.user.username\n });\n var serverBuffer = network.serverBuffer();\n state.addMessage(serverBuffer, {\n time: eventTime,\n server_time: serverTime,\n nick: '',\n message: TextFormatting.t('connected_to', {\n network: client.network.name\n })\n }); // Get some extra info about ourselves\n\n client.raw('WHO ' + event.nick);\n\n if (network.auto_commands) {\n var _context3;\n\n (0, _forEach.default)(_context3 = network.auto_commands.split('\\n')).call(_context3, function (line) {\n state.$emit('input.raw', line[0] === '/' ? line : \"/\".concat(line));\n });\n } // Join our channels\n // If under bouncer mode, the bouncer will send the channels were joined to instead.\n\n\n if (!network.connection.bncnetid) {\n var _context4;\n\n (0, _forEach.default)(_context4 = network.buffers).call(_context4, function (buffer) {\n if (buffer.isChannel() && buffer.enabled) {\n client.join(buffer.name, buffer.key);\n }\n });\n }\n\n numConnects++;\n }\n\n if (command === 'server options') {\n // If the network name has changed from the irc-framework default, update ours\n // Also if it isn't a BNC network as the name is then derived from the BNC info instead\n if (client.network.name !== 'Network' && !network.connection.bncnetid) {\n network.name = client.network.name;\n }\n } // Show unhandled data from the server in the servers tab\n\n\n if (command === 'unknown command') {\n if (event.command === '486') {\n // You must log in with services to message this user\n var targetNick = event.params[1];\n var buffer = state.getOrAddBufferByName(network.id, targetNick);\n state.addMessage(buffer, {\n time: eventTime,\n server_time: serverTime,\n nick: '*',\n message: event.params[2],\n type: 'error'\n });\n } else {\n var _buffer = network.serverBuffer();\n\n var message = ''; // Only show non-numeric commands\n\n if (!event.command.match(/^\\d+$/)) {\n message += event.command + ' ';\n }\n\n var containsNick = event.params[0] === network.ircClient.user.nick;\n var isChannelMessage = network.isChannelName(event.params[1]); // Strip out the nick if it's the first params (many commands include this)\n\n if (containsNick && isChannelMessage) {\n var _context5;\n\n var channelBuffer = network.bufferByName(event.params[1]);\n\n if (channelBuffer) {\n _buffer = channelBuffer;\n }\n\n message += (0, _slice.default)(_context5 = event.params).call(_context5, 2).join(', ');\n } else if (containsNick) {\n var _context6;\n\n message += (0, _slice.default)(_context6 = event.params).call(_context6, 1).join(', ');\n } else {\n message += event.params.join(', ');\n }\n\n state.addMessage(_buffer, {\n nick: '',\n message: message\n });\n }\n }\n\n if (command.toLowerCase() === 'batch start chathistory' && client.chathistory) {\n var _context7;\n\n // We have a new batch of messages. To prevent duplicate messages being shown, we remove\n // all messages we have locally in the range of these new messages so that the new block\n // of messages we recieved are displayed accurately. Each message in the block will\n // trigger a 'message' event after this.\n var startTime = 0;\n var endTime = 0;\n (0, _forEach.default)(_context7 = event.commands).call(_context7, function (message) {\n if (message.time && message.time > endTime) {\n endTime = message.time;\n }\n\n if (message.time && message.time < startTime) {\n startTime = message.time;\n }\n });\n\n if (!startTime || !endTime) {\n return;\n }\n\n var _buffer2 = state.getBufferByName(networkid, event.params[0]);\n\n if (_buffer2) {\n _buffer2.clearMessageRange(startTime, endTime);\n }\n }\n\n if (command === 'message') {\n var isPrivateMessage = false;\n var bufferName = event.from_server ? '*' : event.target; // If the message came from a batch then params[0] is the bufferName\n\n if (event.batch && event.batch.type === 'chathistory' && event.batch.params[0]) {\n bufferName = event.batch.params[0];\n isPrivateMessage = !network.isChannelName(bufferName);\n } else if (!event.from_server && event.target === client.user.nick) {\n // PMs should go to a buffer with the name of the other user\n isPrivateMessage = true;\n bufferName = event.nick;\n } // Chanserv sometimes PMs messages about a channel on join in the format of\n // [#channel] welcome!\n // Redirect these to #channel\n\n\n if (event.nick.toLowerCase() === 'chanserv' && isPrivateMessage && event.message[0] === '[') {\n var _context8;\n\n bufferName = event.message.substr(1, (0, _indexOf.default)(_context8 = event.message).call(_context8, ']') - 1);\n } // Notices from somewhere when we don't have an existing buffer for them should go into\n // the server tab. ie. notices from servers\n\n\n if (event.type === 'notice') {\n var existingBuffer = state.getBufferByName(networkid, bufferName);\n var noticeActiveBuffer = state.setting('noticeActiveBuffer');\n var activeBuffer = state.getActiveBuffer();\n var hasActiveBuffer = activeBuffer && activeBuffer.networkid === networkid; // If we don't have a buffer for this notice sender, either show it in our active\n // buffer or the server buffer\n\n if (!existingBuffer) {\n if (noticeActiveBuffer && hasActiveBuffer) {\n bufferName = activeBuffer.name;\n } else {\n bufferName = '*';\n }\n }\n }\n\n var PM_BLOCK_BLOCKED = false; // const PM_BLOCK_NOT_BLOCKED = true;\n\n var PM_BLOCK_REQUIRES_CHECK = null;\n var pmBlock = network.isNickExemptFromPmBlocks(event.nick);\n var blockNewPms = state.setting('buffers.block_pms');\n\n var _buffer3 = state.getBufferByName(networkid, bufferName);\n\n var textFormatType = 'privmsg';\n\n if (event.type === 'action') {\n textFormatType = 'action';\n } else if (event.type === 'notice') {\n textFormatType = 'notice';\n }\n\n var messageBody = TextFormatting.formatText(textFormatType, {\n nick: event.nick,\n username: event.ident,\n host: event.hostname,\n text: event.message\n });\n var _message = {\n time: eventTime,\n server_time: serverTime,\n nick: event.nick,\n message: messageBody,\n type: event.type,\n tags: event.tags || {}\n }; // If this is a new PM and the sending user is not exempt from blocks, ignore it\n\n if (blockNewPms && isPrivateMessage && !_buffer3 && pmBlock === PM_BLOCK_BLOCKED) {\n return;\n } // If we need to manually check if this user is blocked..\n // PM_BLOCK_REQUIRES_CHECK means we should whois the user to get their oper status. We\n // allways allow messages from opers.\n\n\n if (blockNewPms && isPrivateMessage && !_buffer3 && pmBlock === PM_BLOCK_REQUIRES_CHECK) {\n // if the nick is in pendingPms it has already issued a whois request\n var awaitingWhois = !!(0, _find.default)(_lodash.default).call(_lodash.default, network.pendingPms, {\n nick: event.nick\n });\n network.pendingPms.push({\n bufferName: bufferName,\n message: _message\n }); // Don't send another whois if we are already awaiting another\n\n if (awaitingWhois) {\n return;\n }\n\n network.ircClient.whois(event.nick, event.nick, function (whoisData) {\n var _context9;\n\n (0, _forEach.default)(_context9 = network.pendingPms).call(_context9, function (pm, idx, obj) {\n var nickLower = pm.message.nick.toLowerCase();\n\n if (nickLower === whoisData.nick.toLowerCase()) {\n if (whoisData.operator) {\n _buffer3 = state.getOrAddBufferByName(network.id, pm.bufferName);\n state.addMessage(_buffer3, pm.message);\n }\n\n (0, _splice.default)(obj).call(obj, idx, 1);\n }\n });\n });\n return;\n } // Make sure we have a buffer for our message\n\n\n if (!_buffer3) {\n _buffer3 = state.getOrAddBufferByName(networkid, bufferName);\n }\n\n state.addMessage(_buffer3, _message);\n }\n\n if (command === 'wallops') {\n var _buffer4 = state.getOrAddBufferByName(networkid, '*');\n\n var _messageBody = TextFormatting.formatText('wallops', {\n text: event.message\n });\n\n state.addMessage(_buffer4, {\n time: eventTime,\n server_time: serverTime,\n nick: event.nick,\n message: _messageBody,\n type: 'wallops'\n });\n }\n\n if (command === 'join') {\n // If we have any buffers marked as being redirected to this new channel, update\n // that buffer instead of creating a new one\n if (event.nick === client.user.nick) {\n var _context10;\n\n (0, _forEach.default)(_context10 = network.buffers).call(_context10, function (b) {\n if (((0, _flags.default)(b).redirect_to || '').toLowerCase() === event.channel.toLowerCase()) {\n state.$delete((0, _flags.default)(b), 'redirect_to');\n b.rename(event.channel);\n }\n });\n }\n\n var _buffer5 = state.getOrAddBufferByName(networkid, event.channel); // The case does not match, update buffer.name to the casing sent by the server\n\n\n if (_buffer5.name !== event.channel) {\n _buffer5.rename(event.channel);\n }\n\n state.addUserToBuffer(_buffer5, {\n nick: event.nick,\n username: event.ident,\n host: event.hostname,\n realname: event.gecos,\n account: event.account || ''\n });\n\n if (event.nick === client.user.nick) {\n _buffer5.enabled = true;\n _buffer5.joined = true;\n (0, _flags.default)(_buffer5).channel_badkey = false;\n network.ircClient.raw('MODE', event.channel);\n network.ircClient.who(event.channel);\n }\n\n var nick = _buffer5.setting('show_hostnames') ? TextFormatting.formatUserFull(event) : TextFormatting.formatUser(event);\n\n var _messageBody2 = TextFormatting.formatAndT('channel_join', null, 'has_joined', {\n nick: nick\n });\n\n state.addMessage(_buffer5, {\n time: eventTime,\n server_time: serverTime,\n nick: event.nick,\n message: _messageBody2,\n type: 'traffic',\n type_extra: 'join'\n });\n }\n\n if (command === 'kick') {\n var _buffer6 = state.getOrAddBufferByName(networkid, event.channel);\n\n state.removeUserFromBuffer(_buffer6, event.kicked);\n var _messageBody3 = '';\n\n if (event.kicked === client.user.nick) {\n _buffer6.joined = false;\n\n _buffer6.clearUsers();\n\n _messageBody3 = TextFormatting.formatAndT('channel_selfkick', {\n reason: event.message\n }, 'kicked_you_from', {\n nick: TextFormatting.formatUser(event),\n channel: event.channel\n });\n } else {\n _messageBody3 = TextFormatting.formatAndT('channel_kicked', {\n reason: event.message\n }, 'was_kicked_from', {\n nick: event.kicked,\n channel: event.channel,\n chanop: TextFormatting.formatUser(event.nick)\n });\n }\n\n state.addMessage(_buffer6, {\n time: eventTime,\n server_time: serverTime,\n nick: event.nick,\n message: _messageBody3,\n type: 'traffic',\n type_extra: 'kick'\n });\n }\n\n if (command === 'part') {\n var _buffer7 = state.getBufferByName(networkid, event.channel);\n\n if (!_buffer7) {\n return;\n }\n\n state.removeUserFromBuffer(_buffer7, event.nick);\n\n if (event.nick === client.user.nick) {\n _buffer7.joined = false;\n _buffer7.enabled = false;\n\n _buffer7.clearUsers();\n } // Remove the user from network state if no remaining common channels\n\n\n var remainingBuffers = state.getBuffersWithUser(networkid, event.nick);\n\n if (remainingBuffers.length === 0) {\n state.removeUser(networkid, {\n nick: event.nick\n });\n }\n\n var _nick = _buffer7.setting('show_hostnames') ? TextFormatting.formatUserFull(event) : TextFormatting.formatUser(event);\n\n var _messageBody4 = TextFormatting.formatAndT('channel_part', {\n reason: event.message\n }, 'has_left', {\n nick: _nick\n });\n\n state.addMessage(_buffer7, {\n time: eventTime,\n server_time: serverTime,\n nick: event.nick,\n message: _messageBody4,\n type: 'traffic',\n type_extra: 'part'\n });\n }\n\n if (command === 'quit') {\n var buffers = state.getBuffersWithUser(networkid, event.nick);\n (0, _forEach.default)(buffers).call(buffers, function (buffer) {\n if (!buffer) {\n return;\n }\n\n if (event.nick === client.user.nick) {\n buffer.joined = false;\n buffer.clearUsers();\n }\n\n var nick = buffer.setting('show_hostnames') ? TextFormatting.formatUserFull(event) : TextFormatting.formatUser(event);\n var messageBody = TextFormatting.formatAndT('channel_quit', {\n reason: event.message\n }, 'has_left', {\n nick: nick\n });\n state.addMessage(buffer, {\n time: eventTime,\n server_time: serverTime,\n nick: event.nick,\n message: messageBody,\n type: 'traffic',\n type_extra: 'quit'\n });\n });\n state.removeUser(networkid, {\n nick: event.nick\n });\n }\n\n if (command === 'invite') {\n var _buffer8 = network.serverBuffer();\n\n state.addMessage(_buffer8, {\n nick: '*',\n message: TextFormatting.t('invited_you', {\n nick: event.nick,\n channel: event.channel\n })\n });\n }\n\n if (command === 'account') {\n state.addUser(networkid, {\n nick: event.nick,\n account: event.account || ''\n });\n }\n\n if (command === 'whois') {\n var _context11;\n\n var obj = {\n nick: event.nick,\n host: event.hostname,\n username: event.ident,\n away: event.away || '',\n realname: event.real_name,\n hasWhois: true\n }; // Some other optional bits of info\n\n (0, _forEach.default)(_context11 = ['actual_host', 'helpop', 'bot', 'server', 'server_info', 'operator', 'channels', 'modes', 'idle', 'logon', 'registered_nick', 'account', 'secure', 'certfp', 'special']).call(_context11, function (prop) {\n if (typeof event[prop] !== 'undefined') {\n obj[prop] = event[prop];\n }\n });\n state.addUser(networkid, obj);\n }\n\n if (command === 'away') {\n state.addUser(networkid, {\n nick: event.nick,\n away: event.message || ''\n });\n\n var _buffer9 = state.getActiveBuffer();\n\n if (_buffer9 && event.nick === network.nick) {\n network.away = 'away';\n state.addMessage(_buffer9, {\n time: eventTime,\n server_time: serverTime,\n nick: '*',\n type: 'presence',\n message: event.message\n });\n }\n }\n\n if (command === 'back') {\n state.addUser(networkid, {\n nick: event.nick,\n away: ''\n });\n\n var _buffer10 = state.getActiveBuffer();\n\n if (_buffer10 && event.nick === network.nick) {\n network.away = '';\n state.addMessage(_buffer10, {\n time: eventTime,\n server_time: serverTime,\n nick: '*',\n type: 'presence',\n message: event.message\n });\n }\n }\n\n if (command === 'wholist') {\n state.usersTransaction(networkid, function (users) {\n var _context12;\n\n (0, _forEach.default)(_context12 = event.users).call(_context12, function (eventUser) {\n var _context13;\n\n var userObj = {\n nick: eventUser.nick,\n host: eventUser.hostname || undefined,\n username: eventUser.ident || undefined,\n away: eventUser.away ? 'Away' : '',\n realname: eventUser.real_name,\n account: eventUser.account || undefined\n };\n var user = state.addUser(networkid, userObj, users);\n\n if (!user) {\n // Should never happen as this network should always exist\n return;\n }\n\n var buffer = network.bufferByName(eventUser.channel);\n\n if (!buffer || !user.buffers[buffer.id]) {\n return;\n } // Add all the user channel modes\n\n\n var modes = user.buffers[buffer.id].modes;\n (0, _forEach.default)(_context13 = eventUser.channel_modes).call(_context13, function (mode) {\n if ((0, _indexOf.default)(modes).call(modes, mode) === -1) {\n modes.push(mode);\n }\n });\n });\n });\n }\n\n if (command === 'channel list start') {\n network.channel_list_cache = [];\n network.channel_list_state = 'updating';\n }\n\n if (command === 'channel list') {\n var _context14;\n\n network.channel_list_state = 'updating'; // Filter private channels from the channel list\n\n var filteredEvent = (0, _filter.default)(_lodash.default).call(_lodash.default, event, function (o) {\n return o.channel !== '*';\n }); // Store the channels in channel_list_cache before moving it all to\n // channel_list at the end. This gives a huge performance boost since\n // it doesn't need to be all reactive for every update\n\n network.channel_list_cache = (0, _concat.default)(_context14 = network.channel_list_cache || []).call(_context14, filteredEvent);\n }\n\n if (command === 'channel list end') {\n network.channel_list = network.channel_list_cache || [];\n network.channel_list_state = 'updated';\n delete network.channel_list_cache;\n }\n\n if (command === 'motd') {\n var _buffer11 = network.serverBuffer();\n\n var _messageBody5 = TextFormatting.formatText('motd', {\n text: event.motd\n });\n\n state.addMessage(_buffer11, {\n time: eventTime,\n server_time: serverTime,\n nick: '',\n message: _messageBody5,\n type: 'motd'\n });\n }\n\n if (command === 'nick in use' && !client.connection.registered) {\n var _context15;\n\n var newNick = client.user.nick + rand(1, 100);\n\n var _messageBody6 = TextFormatting.formatAndT('nickname_alreadyinuse', null, 'nick_in_use_retrying', {\n nick: client.user.nick,\n newnick: newNick\n });\n\n (0, _forEach.default)(_context15 = network.buffers).call(_context15, function (b) {\n state.addMessage(b, {\n time: eventTime,\n server_time: serverTime,\n nick: '',\n message: _messageBody6,\n type: 'error'\n });\n });\n client.changeNick(newNick);\n }\n\n if (command === 'nick in use' && client.connection.registered) {\n var _buffer12 = state.getActiveBuffer();\n\n _buffer12 && state.addMessage(_buffer12, {\n time: eventTime,\n server_time: serverTime,\n nick: '',\n type: 'error',\n message: \"The nickname '\".concat(event.nick, \"' is already in use!\")\n });\n }\n\n if (command === 'nick') {\n if (event.nick === client.user.nick) {\n network.nick = event.new_nick;\n }\n\n state.changeUserNick(networkid, event.nick, event.new_nick);\n\n var _messageBody7 = TextFormatting.formatAndT('nick_changed', null, 'now_known_as', {\n nick: event.nick,\n newnick: event.new_nick\n });\n\n var _buffers = state.getBuffersWithUser(networkid, event.new_nick);\n\n (0, _forEach.default)(_buffers).call(_buffers, function (buffer) {\n state.addMessage(buffer, {\n time: eventTime,\n server_time: serverTime,\n nick: '',\n message: _messageBody7,\n type: 'nick'\n });\n });\n }\n\n if (command === 'userlist') {\n var _context16, _context17;\n\n var _buffer13 = state.getOrAddBufferByName(networkid, event.channel);\n\n var hadExistingUsers = (0, _filter.default)(_context16 = (0, _keys.default)(_buffer13.users)).call(_context16, function (u) {\n return u !== network.ircClient.user.nick;\n }).length > 0;\n var users = [];\n (0, _forEach.default)(_context17 = event.users).call(_context17, function (user) {\n users.push({\n user: {\n nick: user.nick,\n username: user.ident,\n hostname: user.hostname\n },\n modes: user.modes\n });\n });\n state.addMultipleUsersToBuffer(_buffer13, users);\n\n if (!hadExistingUsers && network.ircClient.chathistory.isSupported()) {\n var correctBuffer = _buffer13.isChannel() || _buffer13.isQuery(); // TODO: If this is a reconnect (numConnects > 1) then paginate backwards\n // until we reach our last message.\n // OR\n // Add a marker at the gap between this new chathistory block starts and when\n // the existing messages end so that we can add a \"load missing messages\"\n // button there or have it auto request them when it scrolls into view\n\n\n if (correctBuffer) {\n _buffer13.requestLatestScrollback();\n }\n }\n }\n\n if (command === 'user updated') {\n var user = network.userByName(event.nick);\n\n if (user) {\n var _context18;\n\n (0, _forEach.default)(_context18 = (0, _entries.default)(event)).call(_context18, function (_ref) {\n var _ref2 = (0, _slicedToArray2.default)(_ref, 2),\n key = _ref2[0],\n val = _ref2[1];\n\n if ((0, _indexOf.default)(key).call(key, 'new_') !== 0) {\n return;\n }\n\n var paramName = key.substr(4);\n\n switch (paramName) {\n case 'gecos':\n user.realname = val;\n break;\n\n case 'ident':\n user.username = val;\n break;\n\n case 'hostname':\n user.host = val;\n break;\n\n default:\n }\n });\n }\n }\n\n if (command === 'channel info') {\n var _buffer14 = network.bufferByName(event.channel);\n\n if (!_buffer14) {\n return;\n }\n\n if (event.modes) {\n var _context19;\n\n var modeStrs = [];\n (0, _forEach.default)(_context19 = event.modes).call(_context19, function (mode) {\n var adding = mode.mode[0] === '+';\n var modeChar = mode.mode.substr(1);\n\n if (adding) {\n state.$set(_buffer14.modes, modeChar, mode.param);\n } else if (!adding) {\n state.$delete(_buffer14.modes, modeChar);\n }\n\n modeStrs.push(mode.mode + (mode.param ? ' ' + mode.param : ''));\n });\n\n if ((0, _flags.default)(_buffer14).requested_modes) {\n state.addMessage(_buffer14, {\n time: eventTime,\n server_time: serverTime,\n nick: '*',\n message: _buffer14.name + ' ' + modeStrs.join(', ')\n });\n }\n }\n\n if (event.created_at) {\n _buffer14.created_at = new Date(event.created_at * 1000);\n }\n\n if (event.created_at && (0, _flags.default)(_buffer14).requested_modes) {\n var tFormat = _buffer14.setting('timestamp_full_format');\n\n var timeCreated = tFormat ? (0, _strftime.default)(tFormat, new Date(event.created_at * 1000)) : new Date(event.created_at * 1000).toLocaleString();\n state.addMessage(_buffer14, {\n time: eventTime,\n server_time: serverTime,\n nick: '*',\n message: _buffer14.name + ' ' + timeCreated\n });\n }\n }\n\n if (command === 'mode') {\n var _buffer15 = network.bufferByName(event.target);\n\n var _modeStrs = {};\n\n if (_buffer15) {\n var _context20;\n\n // Join all the same mode changes together so they can be shown on one\n // line such as \"prawnsalad sets +b on nick1, nick2\"\n (0, _forEach.default)(_context20 = event.modes).call(_context20, function (mode) {\n _modeStrs[mode.mode] = _modeStrs[mode.mode] || []; // If this mode has a user prefix then we need to update the user object\n\n var prefix = (0, _find.default)(_lodash.default).call(_lodash.default, network.ircClient.network.options.PREFIX, {\n mode: mode.mode[1]\n });\n\n if (prefix) {\n var _user = state.getUser(network.id, mode.param);\n\n if (_user) {\n var adding = mode.mode[0] === '+';\n var modes = _user.buffers[_buffer15.id].modes;\n var modeIdx = (0, _indexOf.default)(modes).call(modes, prefix.mode); // Add or remove the mode from the users mode list\n\n if (adding && modeIdx === -1) {\n modes.push(prefix.mode);\n } else if (!adding && modeIdx > -1) {\n (0, _splice.default)(modes).call(modes, modeIdx, 1);\n }\n }\n\n _modeStrs[mode.mode].push({\n target: mode.param\n });\n } else {\n // Not a user prefix, add it as a channel mode\n // TODO: Why are these not appearing as the 'channel info' command?\n var _adding = mode.mode[0] === '+';\n\n var modeChar = mode.mode.substr(1);\n\n if (_adding) {\n state.$set(_buffer15.modes, modeChar, mode.param);\n } else if (!_adding) {\n state.$delete(_buffer15.modes, modeChar);\n }\n\n _modeStrs[mode.mode].push({\n target: _buffer15.name,\n param: mode.param\n });\n }\n }); // Mode -> locale ID mappings\n // If a mode isn't found here, the local ID modes_other is used\n\n var modeLocaleIds = {\n '+o': 'modes_give_ops',\n '-o': 'modes_take_ops',\n '+h': 'modes_give_halfops',\n '-h': 'modes_take_halfops',\n '+v': 'modes_give_voice',\n '-v': 'modes_take_voice',\n '+a': 'modes_give_admin',\n '-a': 'modes_take_admin',\n '+q': 'modes_give_owner',\n '-q': 'modes_take_owner',\n '+b': 'modes_gives_ban',\n '-b': 'modes_takes_ban'\n }; // Some IRCd differences\n\n if (!IrcdDiffs.isQChannelModeOwner(network)) {\n delete modeLocaleIds['+q'];\n delete modeLocaleIds['-q'];\n }\n\n if (!IrcdDiffs.isAChannelModeAdmin(network)) {\n delete modeLocaleIds['+a'];\n delete modeLocaleIds['-a'];\n }\n\n if (!IrcdDiffs.supportsHalfOp(network)) {\n delete modeLocaleIds['+h'];\n delete modeLocaleIds['-h'];\n } // Some modes have specific data for its locale data while most\n // use a default. The returned objects are passed to the translation\n // functions to build the translation\n\n\n var modeLocaleDataBuilders = {\n default: function _default(targets, mode) {\n return {\n mode: mode + (targets[0].param ? ' ' + targets[0].param : ''),\n target: (0, _map.default)(targets).call(targets, function (t) {\n return t.target;\n }).join(', '),\n nick: event.nick\n };\n },\n b: function b(targets, mode) {\n return {\n mode: mode,\n target: targets[0].param ? targets[0].param : '',\n nick: event.nick\n };\n }\n }; // Show one line per mode, listing each effecting user\n\n _lodash.default.each(_modeStrs, function (targets, mode) {\n // Find a locale data builder for this mode\n var builders = modeLocaleDataBuilders;\n var localeDataFn = builders[mode[1]] || builders.default;\n var localeData = localeDataFn(targets, mode); // Translate using the built locale data\n\n var localeKey = modeLocaleIds[mode] || 'modes_other';\n var text = TextFormatting.t(localeKey, localeData);\n var messageBody = TextFormatting.formatText('mode', {\n nick: event.nick,\n username: event.ident,\n host: event.hostname,\n target: (0, _map.default)(targets).call(targets, function (t) {\n return t.target;\n }).join(', '),\n text: text\n });\n state.addMessage(_buffer15, {\n time: eventTime,\n server_time: serverTime,\n nick: '',\n message: messageBody,\n type: 'mode'\n });\n });\n } else {\n var _context21;\n\n // target is not a channel buffer (user mode ?)\n // if mode had param, show in a new line\n var modeslines = {}; // Group each - or + modes to each of their own message lines\n\n (0, _forEach.default)(_context21 = event.modes).call(_context21, function (mode) {\n if (mode.param) {\n modeslines[mode.mode] = ' ' + mode.param;\n } else if (mode.mode[0] === '-') {\n var _context22;\n\n if (!modeslines['-']) {\n modeslines['-'] = '';\n }\n\n modeslines['-'] += (0, _slice.default)(_context22 = mode.mode).call(_context22, 1);\n } else {\n if (!modeslines['+']) {\n modeslines['+'] = '';\n }\n\n if (mode.mode[0] === '+') {\n var _context23;\n\n modeslines['+'] += (0, _slice.default)(_context23 = mode.mode).call(_context23, 1);\n } else {\n modeslines['+'] += mode.mode;\n }\n }\n });\n\n var _serverBuffer = network.serverBuffer();\n\n _lodash.default.each(modeslines, function (mode, value) {\n var text = TextFormatting.t('modes_other', {\n nick: event.nick,\n target: event.target,\n mode: value + mode\n });\n var messageBody = TextFormatting.formatText('mode', {\n nick: event.nick,\n username: event.ident,\n host: event.hostname,\n target: event.target,\n text: text\n });\n state.addMessage(_serverBuffer, {\n time: eventTime,\n server_time: serverTime,\n nick: '',\n message: messageBody,\n type: 'mode'\n });\n });\n }\n }\n\n if (command === 'banlist') {\n var _buffer16 = state.getBufferByName(networkid, event.channel);\n\n if (_buffer16 && (0, _flags.default)(_buffer16).requested_banlist) {\n if (!event.bans || event.bans.length === 0) {\n state.addMessage(_buffer16, {\n time: eventTime,\n server_time: serverTime,\n nick: '',\n message: TextFormatting.t('bans_nobody'),\n type: 'banlist'\n });\n } else {\n var banText = '';\n\n _lodash.default.each(event.bans, function (ban) {\n var _context24, _context25;\n\n var dateStr = new Date(ban.banned_at * 1000).toDateString();\n banText += (0, _concat.default)(_context24 = (0, _concat.default)(_context25 = \"+b \".concat(ban.banned, \" [by \")).call(_context25, ban.banned_by, \", \")).call(_context24, dateStr, \"]\\n\");\n });\n\n state.addMessage(_buffer16, {\n time: eventTime,\n server_time: serverTime,\n nick: '*',\n message: banText,\n type: 'banlist'\n });\n }\n\n (0, _flags.default)(_buffer16).requested_banlist = false;\n }\n }\n\n if (command === 'topic') {\n var _context26;\n\n var _buffer17 = state.getOrAddBufferByName(networkid, event.channel);\n\n _buffer17.topic = event.topic || '';\n var _messageBody8 = '';\n\n if (event.nick) {\n _messageBody8 = TextFormatting.formatAndT('channel_topic', null, 'changed_topic_to', {\n nick: event.nick,\n topic: event.topic\n });\n } else if ((0, _trim.default)(_context26 = _buffer17.topic).call(_context26)) {\n _messageBody8 = TextFormatting.formatText('channel_topic', _buffer17.topic);\n }\n\n if (_messageBody8) {\n state.addMessage(_buffer17, {\n time: eventTime,\n server_time: serverTime,\n nick: '',\n message: _messageBody8,\n type: 'topic'\n });\n }\n }\n\n if (command === 'help') {\n var _buffer18 = state.getOrAddBufferByName(networkid, '*help');\n\n state.addMessage(_buffer18, {\n time: eventTime,\n server_time: serverTime,\n nick: '',\n message: event.help,\n type: 'help',\n tags: event.tags || {}\n });\n }\n\n if (command === 'ctcp response' || command === 'ctcp request') {\n var _buffer19 = network.bufferByName(event.target) || network.serverBuffer();\n\n var textFormatId = command === 'ctcp response' ? 'ctcp_response' : 'ctcp_request';\n\n var _messageBody9 = TextFormatting.formatText(textFormatId, {\n nick: event.nick,\n message: event.message,\n type: event.type\n });\n\n state.addMessage(_buffer19, {\n time: eventTime,\n server_time: serverTime,\n nick: '',\n message: _messageBody9,\n type: 'error'\n });\n\n if (command === 'ctcp request' && event.type === 'VERSION') {\n client.ctcpResponse(event.nick, 'VERSION', 'Kiwi IRC');\n }\n }\n\n if (command === 'nick invalid') {\n var _messageBody10 = TextFormatting.formatText('general_error', {\n text: event.reason\n });\n\n var _buffer20 = state.getActiveBuffer();\n\n state.addMessage(_buffer20, {\n time: eventTime,\n server_time: serverTime,\n nick: '',\n message: _messageBody10,\n type: 'error'\n });\n\n if (!isRegistered) {\n network.last_error_numeric = 432;\n network.last_error = event.reason;\n network.ircClient.quit();\n }\n }\n\n if (command === 'irc error') {\n var _buffer21;\n\n if (event.channel || event.nick) {\n _buffer21 = state.getOrAddBufferByName(network.id, event.channel || event.nick);\n }\n\n if (!_buffer21) {\n _buffer21 = network.serverBuffer();\n }\n\n if (!_buffer21) {\n // we could not find a buffer, this is likely because the network was removed\n return;\n } // TODO: Some of these errors contain a .error property whcih we can match against,\n // ie. password_mismatch.\n\n\n if (event.error === 'bad_channel_key') {\n (0, _flags.default)(_buffer21).channel_badkey = true;\n } // ignore error 432 (erroneous nickname) as it is handled above\n\n\n if (event.reason && network.last_error_numeric !== 432) {\n if (!isRegistered) {\n network.last_error = event.reason;\n }\n\n var _messageBody11 = TextFormatting.formatText('general_error', {\n text: event.reason || event.error\n });\n\n state.addMessage(_buffer21, {\n time: eventTime,\n server_time: serverTime,\n nick: '',\n message: _messageBody11,\n type: 'error'\n });\n } // Getting an error about a channel while we are not joined means that we couldn't join\n // or do some action on it. Disable it until we manually reattempt to join.\n\n\n if (_buffer21.isChannel() && !_buffer21.joined) {\n _buffer21.enabled = false;\n }\n }\n\n next();\n }\n}\n\nfunction rand(min, max) {\n return Math.floor(Math.random() * (max - min + 1) + min);\n}\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"libs\"]) window._kiwi_exports[\"libs\"] = {};\nwindow._kiwi_exports[\"libs\"][\"IrcClient\"]\r\nwindow._kiwi_exports.libs.IrcClient = exports.default ? exports.default : exports;\r\n","import { render, staticRenderFns } from \"./MessageListMessageModern.vue?vue&type=template&id=fe3ccb9c&scoped=true&functional=true&\"\nimport script from \"./MessageListMessageModern.vue?vue&type=script&lang=js&\"\nexport * from \"./MessageListMessageModern.vue?vue&type=script&lang=js&\"\nimport style0 from \"./MessageListMessageModern.vue?vue&type=style&index=0&id=fe3ccb9c&lang=less&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n true,\n null,\n \"fe3ccb9c\",\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppSettings.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppSettings.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Sidebar.vue?vue&type=template&id=6e1b8873&\"\nimport script from \"./Sidebar.vue?vue&type=script&lang=js&\"\nexport * from \"./Sidebar.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Sidebar.vue?vue&type=style&index=0&lang=less&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { render, staticRenderFns } from \"./InputText.vue?vue&type=template&id=54bd521c&\"\nimport script from \"./InputText.vue?vue&type=script&lang=js&\"\nexport * from \"./InputText.vue?vue&type=script&lang=js&\"\nimport style0 from \"./InputText.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StartupError.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StartupError.vue?vue&type=style&index=0&lang=css&\"","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NotConnected.vue?vue&type=style&index=0&lang=less&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NotConnected.vue?vue&type=style&index=0&lang=less&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-personal\"},[_c('h1',[_vm._v(_vm._s(_vm.$t('personal_client')))]),_c('p',[_vm._v(_vm._s(_vm.$t('personal_addjoin')))]),_c('p',[_vm._v(_vm._s(_vm.$t('personal_return')))]),_c('button',{staticClass:\"u-button u-button-primary\",on:{\"click\":_vm.addNetwork}},[_vm._v(\" \"+_vm._s(_vm.$t('personal_add'))+\" \")]),_vm._v(\" \"),_c('br'),(_vm.networks.length>0)?_c('a',{staticClass:\"u-link kiwi-personal-existing-networks\",on:{\"click\":function($event){$event.stopPropagation();return _vm.toggleStateBrowser($event)}}},[_vm._v(\" \"+_vm._s(_vm.$t('personal_saved'))+\" \")]):_vm._e(),_c('div',{staticClass:\"kiwi-aboutnew-content\",class:{'kiwi-aboutnew-content--open': _vm.about_open},domProps:{\"innerHTML\":_vm._s(_vm.aboutContent)}}),_c('div',{staticClass:\"kiwi-aboutnew\"},[_c('div',{staticClass:\"kiwi-aboutnew-sep\"}),_c('a',{staticClass:\"u-link\",on:{\"click\":function($event){_vm.about_open=!_vm.about_open}}},[_vm._v(\" Link to your network / channel \")]),_c('div',{staticClass:\"kiwi-aboutnew-help\"},[_c('a',{on:{\"click\":function($event){_vm.about_open=!_vm.about_open}}},[_c('i',{staticClass:\"fa fa-question-circle\",attrs:{\"aria-hidden\":\"true\"}})])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=35f9c35c&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&lang=less&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\"use strict\";\n'kiwi public';\n/* eslint-disable */\n// command descriptions can be either a static string or a translation key prefixed with locale_id_\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\nvar _default = [{\n command: 'msg',\n alias: [],\n description: 'locale_id_command_msg'\n}, {\n command: 'action',\n alias: [],\n description: 'locale_id_command_action'\n}, {\n command: 'join',\n alias: [],\n description: 'locale_id_command_join'\n}, {\n command: 'part',\n alias: [],\n description: 'locale_id_command_part'\n}, {\n command: 'cycle',\n alias: [],\n description: 'locale_id_command_cycle'\n}, {\n command: 'nick',\n alias: [],\n description: 'locale_id_command_nick'\n}, {\n command: 'query',\n alias: [],\n description: 'locale_id_command_query'\n}, {\n command: 'invite',\n alias: [],\n description: 'locale_id_command_invite'\n}, {\n command: 'topic',\n alias: [],\n description: 'locale_id_command_topic'\n}, {\n command: 'notice',\n alias: [],\n description: 'locale_id_command_notice'\n}, {\n command: 'quote',\n alias: [],\n description: 'locale_id_command_quote'\n}, {\n command: 'kick',\n alias: [],\n description: 'locale_id_command_kick'\n}, {\n command: 'clear',\n alias: [],\n description: 'locale_id_command_clear'\n}, {\n command: 'ctcp',\n alias: [],\n description: 'locale_id_command_ctcp'\n}, {\n command: 'quit',\n alias: [],\n description: 'locale_id_command_quit'\n}, {\n command: 'server',\n alias: [],\n description: 'locale_id_command_server'\n}, {\n command: 'whois',\n alias: [],\n description: 'locale_id_command_whois'\n}, {\n command: 'whowas',\n alias: [],\n description: 'locale_id_command_whowas'\n}, {\n command: 'away',\n alias: [],\n description: 'locale_id_command_away'\n}, {\n command: 'back',\n alias: ['active'],\n description: 'locale_id_command_back'\n}, {\n command: 'encoding',\n alias: [],\n description: 'locale_id_command_encoding'\n}, {\n command: 'ignore',\n alias: [],\n description: 'locale_id_command_ignore'\n}, {\n command: 'unignore',\n alias: [],\n description: 'locale_id_command_unignore'\n}, {\n command: 'dice',\n alias: [],\n description: 'locale_id_command_dice'\n}];\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"res\"]) window._kiwi_exports[\"res\"] = {};\nwindow._kiwi_exports[\"res\"][\"autocompleteCommands\"]\r\nwindow._kiwi_exports.res.autocompleteCommands = exports.default ? exports.default : exports;\r\n","\"use strict\";\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _map = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/map\"));\n\nvar _stringify = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/json/stringify\"));\n\nvar _regenerator = _interopRequireDefault(require(\"@babel/runtime-corejs3/regenerator\"));\n\nvar _asyncToGenerator2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/asyncToGenerator\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/createClass\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar StatePersistence = /*#__PURE__*/function () {\n function StatePersistence(storageKey, state, storage, logger) {\n (0, _classCallCheck2.default)(this, StatePersistence);\n this.storageKey = storageKey;\n this.state = state;\n this.storage = storage;\n this.logger = logger;\n this.isPersisting = false;\n this.includeBuffers = true;\n this.watcher = null;\n this.state.persistence = this;\n }\n\n (0, _createClass2.default)(StatePersistence, [{\n key: \"loadStateIfExists\",\n value: function () {\n var _loadStateIfExists = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {\n var storedState;\n return _regenerator.default.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n if (this.storageKey) {\n _context.next = 2;\n break;\n }\n\n return _context.abrupt(\"return\");\n\n case 2:\n _context.next = 4;\n return this.storage.get(this.storageKey);\n\n case 4:\n storedState = _context.sent;\n\n if (storedState) {\n if (this.logger) {\n this.logger('Importing state', storedState);\n }\n\n this.state.importState(storedState);\n }\n\n case 6:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee, this);\n }));\n\n function loadStateIfExists() {\n return _loadStateIfExists.apply(this, arguments);\n }\n\n return loadStateIfExists;\n }()\n }, {\n key: \"stopWatchingState\",\n value: function stopWatchingState() {\n if (this.watcher) {\n this.watcher();\n this.watcher = null;\n }\n }\n }, {\n key: \"watchStateForChanges\",\n value: function watchStateForChanges() {\n var _this = this;\n\n if (!this.storageKey) {\n return;\n } // Throttle saving the state into storage so we don't thrash the disk\n\n\n var debouncedSaveState = _lodash.default.debounce(function () {\n if (_this.logger) {\n _this.logger('State updated, setting localStorage');\n }\n\n _this.storage.set(_this.storageKey, _this.state.exportState(_this.includeBuffers));\n }, 1000);\n\n this.state.$watch('networks', debouncedSaveState, {\n deep: true\n });\n this.state.$watch('user_settings', debouncedSaveState, {\n deep: true\n }); // We need to touch each property of each buffer for that we want to save our state on.\n // If any of the properties change then the $watch()er will call debouncedSaveState()\n\n this.watcher = this.state.$watch(function () {\n var _context2;\n\n var watchVals = [];\n (0, _forEach.default)(_context2 = _this.state.networks).call(_context2, function (network) {\n var _context3, _context4;\n\n var buffersVals = [];\n buffersVals.push((0, _map.default)(_context3 = network.buffers).call(_context3, function (b) {\n return b.name;\n }).join(','));\n (0, _forEach.default)(_context4 = network.buffers).call(_context4, function (buffer) {\n buffersVals.push([buffer.name, buffer.settings, buffer.joined, buffer.enabled, buffer.last_read]);\n });\n watchVals.push(buffersVals);\n });\n return (0, _stringify.default)(watchVals);\n }, debouncedSaveState);\n this.isPersisting = true;\n }\n }, {\n key: \"forgetState\",\n value: function () {\n var _forgetState = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {\n return _regenerator.default.wrap(function _callee2$(_context5) {\n while (1) {\n switch (_context5.prev = _context5.next) {\n case 0:\n this.state.resetState();\n _context5.next = 3;\n return this.storage.set(this.storageKey, null);\n\n case 3:\n case \"end\":\n return _context5.stop();\n }\n }\n }, _callee2, this);\n }));\n\n function forgetState() {\n return _forgetState.apply(this, arguments);\n }\n\n return forgetState;\n }()\n }]);\n return StatePersistence;\n}();\n\nexports.default = StatePersistence;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"libs\"]) window._kiwi_exports[\"libs\"] = {};\nwindow._kiwi_exports[\"libs\"][\"StatePersistence\"]\r\nwindow._kiwi_exports.libs.StatePersistence = exports.default ? exports.default : exports;\r\n","import { render, staticRenderFns } from \"./ServerSelector.vue?vue&type=template&id=f413800a&\"\nimport script from \"./ServerSelector.vue?vue&type=script&lang=js&\"\nexport * from \"./ServerSelector.vue?vue&type=script&lang=js&\"\nimport style0 from \"./ServerSelector.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\"use strict\";\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\nvar _default = {\n props: ['network'],\n data: function data() {\n return {\n recaptchaUrl: '',\n recaptchaSiteId: '',\n recaptchaResponse: '',\n showCaptcha: false\n };\n },\n created: function created() {\n var _this = this;\n\n var options = this.$state.settings.startupOptions;\n this.recaptchaSiteId = options.recaptchaSiteId || '';\n this.recaptchaUrl = options.recaptchaUrl || 'https://www.google.com/recaptcha/api.js';\n this.listen(this.$state, 'network.connecting', function (event) {\n event.network.ircClient.once('socket connected', function () {\n if (_this.recaptchaResponse) {\n event.network.ircClient.raw('CAPTCHA', _this.recaptchaResponse);\n }\n });\n });\n this.listen(this.$state, 'irc.raw.CAPTCHA', function (command, event, network) {\n if (network !== _this.network) {\n return;\n }\n\n if (event.params[0] === 'NEEDED') {\n _this.loadRecaptcha();\n }\n });\n },\n methods: {\n loadRecaptcha: function loadRecaptcha() {\n var _this2 = this;\n\n this.showCaptcha = true; // Recaptcha calls this callback once it's loaded and ready to be used\n\n window.recaptchaLoaded = function () {\n window.grecaptcha.render(_this2.$refs.captchacontainer, {\n sitekey: _this2.recaptchaSiteId,\n callback: _this2.recaptchaSuccess,\n 'expired-callback': _this2.recaptchaExpired\n });\n };\n\n var scr = document.createElement('script');\n scr.src = this.recaptchaUrl + '?onload=recaptchaLoaded&render=explicit';\n scr.defer = true;\n this.$el.appendChild(scr);\n },\n recaptchaSuccess: function recaptchaSuccess(response) {\n this.recaptchaResponse = response; // If we have a network instance already, send the captcha response\n\n if (this.network && this.network.state === 'connecting') {\n this.network.ircClient.raw('CAPTCHA', response);\n }\n\n this.showCaptcha = false;\n },\n recaptchaExpired: function recaptchaExpired() {\n this.recaptchaResponse = '';\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"Captcha\"]\r\nwindow._kiwi_exports.components.Captcha = exports.default ? exports.default : exports;\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-ircinput\"},[_c('div',{ref:\"editor\",staticClass:\"kiwi-ircinput-editor\",attrs:{\"placeholder\":_vm.placeholder,\"contenteditable\":\"true\",\"role\":\"textbox\",\"spellcheck\":\"true\"},on:{\"keypress\":function($event){_vm.updateValueProps(); _vm.$emit('keypress', $event)},\"keydown\":function($event){_vm.updateValueProps(); _vm.$emit('keydown', $event)},\"keyup\":function($event){_vm.updateValueProps(); _vm.$emit('keyup', $event)},\"textInput\":function($event){_vm.updateValueProps(); _vm.onTextInput($event); _vm.$emit('textInput', $event)},\"mouseup\":function($event){return _vm.updateValueProps();},\"click\":function($event){return _vm.$emit('click', $event)},\"paste\":_vm.onPaste,\"focus\":function($event){return _vm.onFocus()},\"blur\":function($event){return _vm.$emit('blur', $event)}}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./StateBrowser.vue?vue&type=template&id=15af12f8&\"\nimport script from \"./StateBrowser.vue?vue&type=script&lang=js&\"\nexport * from \"./StateBrowser.vue?vue&type=script&lang=js&\"\nimport style0 from \"./StateBrowser.vue?vue&type=style&index=0&lang=less&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { render, staticRenderFns } from \"./CommonLayout.vue?vue&type=template&id=5651b698&\"\nimport script from \"./CommonLayout.vue?vue&type=script&lang=js&\"\nexport * from \"./CommonLayout.vue?vue&type=script&lang=js&\"\nimport style0 from \"./CommonLayout.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { render, staticRenderFns } from \"./LoadingAnimation.vue?vue&type=template&id=0d280fd9&\"\nimport script from \"./LoadingAnimation.vue?vue&type=script&lang=js&\"\nexport * from \"./LoadingAnimation.vue?vue&type=script&lang=js&\"\nimport style0 from \"./LoadingAnimation.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{key:'messagelist-' + _vm.buffer.name,staticClass:\"kiwi-messagelist\",class:{'kiwi-messagelist--smoothscroll': _vm.smooth_scroll},on:{\"click\":function($event){if($event.target !== $event.currentTarget){ return null; }return _vm.onListClick($event)}}},[_c('div',{directives:[{name:\"resizeobserver\",rawName:\"v-resizeobserver\",value:(_vm.onListResize),expression:\"onListResize\"}]},[(_vm.shouldShowChathistoryTools)?_c('div',{staticClass:\"kiwi-messagelist-scrollback\"},[(!_vm.buffer.flag('is_requesting_chathistory'))?_c('a',{staticClass:\"u-link\",on:{\"click\":function($event){return _vm.buffer.requestScrollback()}}},[_vm._v(\" \"+_vm._s(_vm.$t('messages_load'))+\" \")]):_c('a',{staticClass:\"u-link\"},[_vm._v(\"...\")])]):_vm._e(),_vm._l((_vm.filteredMessagesGroupedDay),function(day){return _c('div',{key:day.dayNum},[(_vm.filteredMessagesGroupedDay.length > 1 && day.messages.length > 0)?_c('div',{key:'msgdatemarker' + day.dayNum,staticClass:\"kiwi-messagelist-seperator\"},[_c('span',[_vm._v(_vm._s((new Date(day.messages[0].time)).toDateString()))])]):_vm._e(),_vm._l((day.messages),function(message){return [(_vm.shouldShowUnreadMarker(message))?_c('div',{key:'msgunreadmarker' + message.id,staticClass:\"kiwi-messagelist-seperator\"},[_c('span',[_vm._v(_vm._s(_vm.$t('unread_messages')))])]):_vm._e(),_c('div',{key:'msg' + message.id,class:[\n 'kiwi-messagelist-item',\n _vm.selectedMessages[message.id] ?\n 'kiwi-messagelist-item--selected' :\n ''\n ]},[(message.render() && message.template && message.template.$el)?_c('div',{directives:[{name:\"rawElement\",rawName:\"v-rawElement\",value:(message.template.$el),expression:\"message.template.$el\"}]}):(_vm.listType === 'modern')?_c('message-list-message-modern',{attrs:{\"message\":message,\"idx\":_vm.filteredMessages.indexOf(message),\"ml\":_vm.thisMl}}):(_vm.listType === 'inline')?_c('message-list-message-inline',{attrs:{\"message\":message,\"idx\":_vm.filteredMessages.indexOf(message),\"ml\":_vm.thisMl}}):(_vm.listType === 'compact')?_c('message-list-message-compact',{attrs:{\"message\":message,\"idx\":_vm.filteredMessages.indexOf(message),\"ml\":_vm.thisMl}}):_vm._e()],1)]})],2)}),_c('transition',{attrs:{\"name\":\"kiwi-messagelist-joinloadertrans\"}},[(_vm.shouldShowJoiningLoader)?_c('div',{staticClass:\"kiwi-messagelist-joinloader\"},[_c('LoadingAnimation')],1):_vm._e()]),(_vm.shouldRequestChannelKey)?_c('buffer-key',{attrs:{\"buffer\":_vm.buffer,\"network\":_vm.buffer.getNetwork()}}):_vm._e()],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-nicklist\",class:{\n 'kiwi-nicklist--filtering': _vm.filter_visible,\n 'kiwi-nicklist--avatars': _vm.shouldShowAvatars,\n }},[_c('div',{staticClass:\"kiwi-nicklist-usercount\",on:{\"click\":_vm.toggleUserFilter}},[_c('span',[_vm._v(\" \"+_vm._s(_vm.filter_visible ? _vm.sortedUsers.length : _vm.$t('person', {count: _vm.sortedUsers.length}))+\" \")]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.user_filter),expression:\"user_filter\"}],ref:\"user_filter\",attrs:{\"placeholder\":_vm.$t('filter_users')},domProps:{\"value\":(_vm.user_filter)},on:{\"blur\":_vm.onFilterBlur,\"input\":function($event){if($event.target.composing){ return; }_vm.user_filter=$event.target.value}}}),_c('i',{staticClass:\"fa fa-search\"})]),_c('DynamicScroller',{staticClass:\"kiwi-nicklist-users\",attrs:{\"items\":_vm.sortedUsers,\"min-item-size\":34,\"key-field\":'nick'},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\n var item = ref.item;\n var index = ref.index;\n var active = ref.active;\nreturn [_c('DynamicScrollerItem',{attrs:{\"item\":item,\"active\":active,\"size-dependencies\":[],\"data-index\":index}},[_c('nicklist-user',{key:item.nick,attrs:{\"user\":item,\"nicklist\":_vm.self,\"network\":_vm.network}})],1)]}}])})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-channellist\",class:{'kiwi-channellist-padding-top': !_vm.list.length}},[_c('div',{staticClass:\"kiwi-channellist-content-container\"},[_c('div',{staticClass:\"kiwi-channellist-nav\"},[_c('form',{staticClass:\"u-form u-form--big kiwi-channellist-search\",on:{\"submit\":function($event){$event.preventDefault();}}},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.search),expression:\"search\"}],staticClass:\"u-input\",attrs:{\"placeholder\":_vm.$t('do_search')},domProps:{\"value\":(_vm.search)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.search=$event.target.value}}}),_c('a',{staticClass:\"u-button kiwi-channellist-refresh\",class:{\n 'u-button-primary': !_vm.isLoading,\n 'u-button-secondary': _vm.isLoading,\n },on:{\"click\":_vm.maybeUpdateList}},[(!_vm.isLoading)?_c('i',{staticClass:\"fa fa-refresh\",attrs:{\"aria-hidden\":\"true\"}}):_c('i',{staticClass:\"fa fa-refresh fa-spin\",attrs:{\"aria-hidden\":\"true\"}})])]),(_vm.list.length)?_c('div',{staticClass:\"kiwi-channellist-pagination\"},[_c('a',{on:{\"click\":_vm.prevPage}},[_c('i',{staticClass:\"fa fa-step-backward\",attrs:{\"aria-hidden\":\"true\"}})]),_vm._v(\" \"+_vm._s(_vm.page + 1)+\" / \"+_vm._s(_vm.maxPages + 1)+\" \"),_c('a',{on:{\"click\":_vm.nextPage}},[_c('i',{staticClass:\"fa fa-step-forward\",attrs:{\"aria-hidden\":\"true\"}})])]):_vm._e()]),_c('div',{staticClass:\"kiwi-channellist-table\"},[(!_vm.isLoading && !_vm.noResults)?_c('table',{key:_vm.last_updated,attrs:{\"width\":\"100%\"}},[_c('tbody',_vm._l((_vm.paginated),function(channel){return _c('tr',{key:channel.channel},[_c('td',{staticClass:\"kiwi-channellist-user-center\"},[(channel.num_users >= 0)?_c('span',{staticClass:\"kiwi-channellist-users\"},[_c('i',{staticClass:\"fa fa-user\",attrs:{\"aria-hidden\":\"true\"}}),_vm._v(\" \"+_vm._s(channel.num_users)+\" \")]):_vm._e()]),_c('td',[_c('a',{staticClass:\"u-link\",on:{\"click\":function($event){return _vm.joinChannel(channel.channel)}}},[_vm._v(\" \"+_vm._s(channel.channel)+\" \")])]),_c('td',{staticClass:\"kiwi-channellist-table-topic\"},[_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.formatAndTrimTopic(channel.topic))}})]),_c('td',{staticClass:\"kiwi-channellist-user-center\"},[_c('a',{staticClass:\"u-button u-button-primary\",on:{\"click\":function($event){return _vm.joinChannel(channel.channel)}}},[_vm._v(\" \"+_vm._s(_vm.$t('container_join'))+\" \")])])])}),0)]):(_vm.noResults)?_c('div',{staticClass:\"kiwi-channellist-info\"},[_c('p',[_vm._v(_vm._s(_vm.$t('channel_list_nonefound')))])]):_c('div',{staticClass:\"kiwi-channellist-info\"},[_vm._v(_vm._s(_vm.$t('channel_list_fetch')))])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ContainerHeader.vue?vue&type=style&index=0&lang=less&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ContainerHeader.vue?vue&type=style&index=0&lang=less&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar _ThemeManager = _interopRequireDefault(require(\"@/libs/ThemeManager\"));\n\nvar _GlobalApi = _interopRequireDefault(require(\"@/libs/GlobalApi\"));\n\nvar _localesList = _interopRequireDefault(require(\"@/res/localesList\"));\n\nvar _SettingsAliases = _interopRequireDefault(require(\"./SettingsAliases\"));\n\nvar _SettingsAdvanced = _interopRequireDefault(require(\"./SettingsAdvanced\"));\n\n/**\n * Returns an object for a vuejs computated property on a state settings value\n * This allows default settings from the server config, but overrides with user config\n */\nfunction bindSetting(settingName) {\n return {\n get: function settingGetter() {\n return this.$state.setting(settingName);\n },\n set: function settingSetter(newVal) {\n this.$state.setting(settingName, newVal);\n }\n };\n}\n\nvar _default = {\n components: {\n SettingsAliases: _SettingsAliases.default,\n SettingsAdvanced: _SettingsAdvanced.default\n },\n data: function data() {\n return {\n theme: '',\n customThemeUrl: '',\n pluginUiElements: _GlobalApi.default.singleton().appSettingsPlugins,\n localesList: _localesList.default\n };\n },\n computed: {\n themeSupportsMonospace: function themeSupportsMonospace() {\n var themeMgr = _ThemeManager.default.instance();\n\n var val = themeMgr.themeVar('supports-monospace');\n return val === '1';\n },\n canRegisterProtocolHandler: function canRegisterProtocolHandler() {\n return !!navigator.registerProtocolHandler && this.$state.setting('allowRegisterProtocolHandler');\n },\n timestamps_24h: {\n get: function get24Timestamps() {\n // %H is 24 hour format\n return this.$state.setting('buffers.timestamp_format').substr(0, 2) === '%H';\n },\n set: function set24Timestamps(newVal) {\n var newFormat = newVal ? '%H:%M:%S' : '%l:%M:%S %p';\n this.$state.setting('buffers.timestamp_format', newFormat);\n }\n },\n settings: function getSettings() {\n return this.$state.settings;\n },\n settingShowAutoComplete: bindSetting('showAutocomplete'),\n settingUseMonospace: bindSetting('useMonospace'),\n settingHighlights: bindSetting('highlights'),\n settingBufferColourNicknames: bindSetting('buffers.colour_nicknames_in_messages'),\n settingBufferShowTimestamps: bindSetting('buffers.show_timestamps'),\n settingBufferShowEmoticons: bindSetting('buffers.show_emoticons'),\n settingBufferBlockPms: bindSetting('buffers.block_pms'),\n settingBufferScrollbackSize: bindSetting('buffers.scrollback_size'),\n settingBufferExtraFormatting: bindSetting('buffers.extra_formatting'),\n settingBufferTrafficAsActivity: bindSetting('buffers.traffic_as_activity'),\n settingBufferMuteSound: bindSetting('buffers.mute_sound'),\n settingBufferShareTyping: bindSetting('buffers.share_typing'),\n settingBufferInlineLinkPreviews: bindSetting('buffers.inline_link_auto_previews'),\n settingDefaultBanMask: bindSetting('buffers.default_ban_mask'),\n settingDefaultKickReason: bindSetting('buffers.default_kick_reason'),\n settingAdvancedEnable: {\n get: function getSettingShowAdvancedTab() {\n return this.$state.ui.show_advanced_tab;\n },\n set: function setSettingShowAdvancedTab(newVal) {\n this.$state.ui.show_advanced_tab = newVal;\n }\n },\n settingLanguage: {\n get: function getSettingLanguage() {\n return this.$state.setting('language') || '';\n },\n set: function setSettingLanguage(newVal) {\n this.$state.setting('language', newVal || null);\n }\n },\n messageLayouts: function messageLayouts() {\n return {\n traditional: 'compact',\n modern: 'modern',\n inline: 'inline'\n };\n },\n settingMessageLayout: {\n set: function setSettingMessageLayout(newVal) {\n var l = this.messageLayouts;\n this.$state.setting('buffers.messageLayout', l[newVal] || l.modern);\n },\n get: function get() {\n var s = this.$state.setting('buffers.messageLayout');\n\n var l = _lodash.default.invert(this.messageLayouts);\n\n return l[s];\n }\n }\n },\n created: function created() {\n this.listenForThemeSettings();\n },\n methods: {\n closeSettings: function closeSettings() {\n this.$state.$emit('active.component');\n },\n refreshTheme: function refreshTheme() {\n _ThemeManager.default.instance().reload();\n },\n listenForThemeSettings: function listenForThemeSettings() {\n var _this = this;\n\n var themeMgr = _ThemeManager.default.instance();\n\n var watches = []; // Called when the current theme changes (including url refreshes)\n\n var updateFn = function updateFn() {\n var theme = themeMgr.currentTheme();\n _this.theme = theme.name;\n _this.customThemeUrl = theme.name === 'custom' ? theme.url : '';\n };\n\n var watchTheme = function watchTheme(newVal) {\n themeMgr.setTheme(newVal);\n };\n\n var watchCustomThemeUrl = function watchCustomThemeUrl(newVal) {\n if (themeMgr.currentTheme().name === 'custom') {\n themeMgr.setCustomThemeUrl(newVal);\n }\n }; // Remove all our attached events to cleanup\n\n\n var teardownFn = function teardownFn() {\n _this.$state.$off('theme.change', updateFn);\n\n (0, _forEach.default)(watches).call(watches, function (unwatchFn) {\n return unwatchFn();\n });\n\n _this.$off('hook:destroy', teardownFn);\n }; // Update our info with the latest theme settings before we start\n // listening for changes\n\n\n updateFn();\n this.$state.$on('theme.change', updateFn);\n this.$once('hook:destroyed', teardownFn); // $watch returns a function to stop watching the data field. Add them into\n // an array to make it easier to iterate over them all and unwatch them all\n // when needed.\n\n watches = [this.$watch('theme', watchTheme), this.$watch('customThemeUrl', watchCustomThemeUrl)];\n },\n enableAdvancedTab: function enableAdvancedTab() {\n var _this2 = this;\n\n this.settingAdvancedEnable = true;\n this.$nextTick(function () {\n _this2.$refs.tabs.setActiveByName('advanced');\n\n _this2.$el.scrollTop = 0;\n });\n },\n makeDefaultProtocolHandler: function makeDefaultProtocolHandler() {\n navigator.registerProtocolHandler('irc', document.location.origin + document.location.pathname + '#%s', 'Kiwi IRC');\n navigator.registerProtocolHandler('ircs', document.location.origin + document.location.pathname + '#%s', 'Kiwi IRC');\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"AppSettings\"]\r\nwindow._kiwi_exports.components.AppSettings = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TypingUsersList.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TypingUsersList.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StateBrowserUsermenu.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StateBrowserUsermenu.vue?vue&type=style&index=0&lang=css&\"","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./kiwiirccom.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./kiwiirccom.vue?vue&type=style&index=0&lang=css&\"","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UrlEmbed.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./UrlEmbed.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChannelList.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./ChannelList.vue?vue&type=script&lang=js&\"","\"use strict\";\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.get = get;\nexports.set = set;\n\nvar _promise = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/promise\"));\n\nvar supportedCached = null;\n\nfunction get(name) {\n if (!isSupported()) {\n return _promise.default.resolve();\n }\n\n return new _promise.default(function (resolve) {\n resolve(window.localStorage.getItem(name));\n });\n}\n\nfunction set(name, val) {\n if (!isSupported()) {\n return _promise.default.resolve();\n }\n\n return new _promise.default(function (resolve) {\n resolve(window.localStorage.setItem(name, val));\n });\n}\n\nfunction isSupported() {\n if (supportedCached === null) {\n supportedCached = storageAvailable('localStorage');\n }\n\n return supportedCached;\n} // https://developer.mozilla.org/en-US/docs/Web/API/Web_Storage_API/Using_the_Web_Storage_API#Testing_for_availability\n\n\nfunction storageAvailable(type) {\n var storage;\n\n try {\n var x = '__storage_test__';\n storage = window[type];\n storage.setItem(x, x);\n storage.removeItem(x);\n return true;\n } catch (e) {\n return e instanceof DOMException && ( // everything except Firefox\n e.code === 22 || // Firefox\n e.code === 1014 || // test name field too, because code might not be present\n // everything except Firefox\n e.name === 'QuotaExceededError' || // Firefox\n e.name === 'NS_ERROR_DOM_QUOTA_REACHED') && // acknowledge QuotaExceededError only if there's something already stored\n storage.length !== 0;\n }\n}","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\nvar _default = {\n data: function data() {\n return {\n logo: '',\n c: '',\n x: '',\n Y: [],\n t: 0,\n fontSize: 72,\n font: 'bold ' + 72 + 'px verdana',\n text: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce eu arcu ipsum. ',\n animationFrame: null,\n destroying: false\n };\n },\n mounted: function mounted() {\n var _this = this;\n\n this.logo = this.$el.querySelector('.kiwi-loading-logo');\n this.c = this.$el.querySelector('.kiwi-loading-animation');\n this.x = this.c.getContext('2d');\n var tmpText = '';\n\n for (var i = 0; i < 9; i += 1) {\n tmpText += this.text;\n }\n\n this.text = String(tmpText).match(/.{1,43}/g);\n this.c.width = 1256;\n this.c.height = 1080;\n\n for (var _i = 0; _i < this.text.length; _i += 1) {\n this.Y.push(_i * this.fontSize - 1600);\n }\n\n this.logo.onload = function () {\n if (_this.destroying) {\n // the component has already been destroyed, we nolonger need the animation\n return;\n }\n\n _this.draw();\n };\n },\n beforeDestroy: function beforeDestroy() {\n this.destroying = true;\n cancelAnimationFrame(this.animationFrame);\n },\n methods: {\n draw: function draw() {\n this.x.clearRect(0, 0, this.c.width, this.c.height);\n this.x.globalCompositeOperation = 'source-over';\n this.x.drawImage(this.logo, 0, 0, this.c.width, this.c.height);\n this.x.globalCompositeOperation = 'xor';\n this.x.fillStyle = '#000';\n this.x.font = this.font;\n\n for (var i = 0; i < this.text.length; i += 1) {\n if (this.t % 4.5 < 2) {\n this.Y[i] += (250 + (10 + i) / this.text.length * 4000) / 120;\n\n if (this.Y[i] > i * this.fontSize) {\n this.Y[i] = i * this.fontSize;\n }\n } else {\n if (this.text.length - (this.t % 4.5 - 2) / 2.5 * this.text.length * 1.75 < i) {\n this.Y[i] += 10 + this.Y[i] / 20;\n }\n\n if (this.Y[i] > 1080 || this.Y[i] < 0) {\n this.Y[i] = -1500 + i * this.fontSize;\n }\n }\n\n if (this.Y[i] > -100) {\n this.x.fillText(this.text[i], 0, this.fontSize + this.Y[i]);\n }\n }\n\n this.x.globalCompositeOperation = 'source-out';\n this.x.drawImage(this.logo, 0, 0, this.c.width, this.c.height);\n this.x.globalCompositeOperation = 'source-over';\n this.x.globalAlpha = 0.1;\n this.x.drawImage(this.logo, 0, 0, this.c.width, this.c.height);\n this.x.globalAlpha = 1;\n this.animationFrame = requestAnimationFrame(this.draw);\n this.t += 1 / 40;\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"LoadingAnimation\"]\r\nwindow._kiwi_exports.components.LoadingAnimation = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AwayStatusIndicator.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AwayStatusIndicator.vue?vue&type=style&index=0&lang=css&\"","\"use strict\";\n'kiwi public'; // Do channels support half-op mode\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.supportsHalfOp = supportsHalfOp;\nexports.isAChannelModeAdmin = isAChannelModeAdmin;\nexports.isQChannelModeOwner = isQChannelModeOwner;\nexports.extbanAccount = extbanAccount;\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nfunction supportsHalfOp(network) {\n var ircdType = network.ircd.toLowerCase();\n var notSupported = ['ircd-seven', 'charybdis'];\n\n for (var i = 0; i < notSupported.length; i++) {\n if ((0, _indexOf.default)(ircdType).call(ircdType, notSupported[i]) > -1) {\n return false;\n }\n }\n\n return true;\n} // Does channel mode +a = admin\n\n\nfunction isAChannelModeAdmin(network) {\n var ircdType = network.ircd.toLowerCase();\n var notAdmin = ['ircd-seven', 'charybdis'];\n\n for (var i = 0; i < notAdmin.length; i++) {\n if ((0, _indexOf.default)(ircdType).call(ircdType, notAdmin[i]) > -1) {\n return false;\n }\n }\n\n return true;\n} // Does channel mode +q = owner\n\n\nfunction isQChannelModeOwner(network) {\n var ircdType = network.ircd.toLowerCase();\n var notOwner = ['ircd-seven', 'charybdis'];\n\n for (var i = 0; i < notOwner.length; i++) {\n if ((0, _indexOf.default)(ircdType).call(ircdType, notOwner[i]) > -1) {\n return false;\n }\n }\n\n return true;\n}\n\nfunction extbanAccount(network) {\n // Eg. InspIRCd-2.0\n // Eg. UnrealIRCd-4.0.17\n // Eg. ircd-seven-1.1.7\n // Eg. u2.10.12.10+snircd(1.3.4a)\n var ircdType = network.ircd.toLowerCase(); // Eg. ~,qjncrRa\n // Eg. ,qjncrRa\n\n var extban = network.ircClient.network.supports('EXTBAN') || '';\n\n if (!extban) {\n return '';\n }\n\n var prefix = extban.split(',')[0];\n var type = 'a'; // https://docs.inspircd.org/3/modules/services_account/#extended-bans\n\n if ((0, _indexOf.default)(ircdType).call(ircdType, 'inspircd') > -1) {\n type = 'R';\n }\n\n return prefix + type;\n}\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"helpers\"]) window._kiwi_exports[\"helpers\"] = {};\nwindow._kiwi_exports[\"helpers\"][\"IrcdDiffs\"]\r\nwindow._kiwi_exports.helpers.IrcdDiffs = exports.default ? exports.default : exports;\r\n","import { render, staticRenderFns } from \"./IrcInput.vue?vue&type=template&id=958580d2&\"\nimport script from \"./IrcInput.vue?vue&type=script&lang=js&\"\nexport * from \"./IrcInput.vue?vue&type=script&lang=js&\"\nimport style0 from \"./IrcInput.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MessageList.vue?vue&type=style&index=0&lang=less&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MessageList.vue?vue&type=style&index=0&lang=less&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-bufferkey kiwi-warning-block\"},[_c('form',{on:{\"submit\":function($event){$event.preventDefault();return _vm.joinChannel($event)}}},[_c('label',[_vm._v(_vm._s(_vm.$t('bufferkey_input')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.buffer.key),expression:\"buffer.key\"},{name:\"focus\",rawName:\"v-focus\"}],attrs:{\"type\":\"password\"},domProps:{\"value\":(_vm.buffer.key)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.$set(_vm.buffer, \"key\", $event.target.value)}}}),_c('div',{staticClass:\"kiwi-bufferkey-buttons\"},[_c('span',{staticClass:\"kiwi-bufferkey-button\",on:{\"click\":_vm.joinChannel}},[_c('i',{staticClass:\"fa fa-arrow-circle-o-right\",attrs:{\"aria-hidden\":\"true\"}}),_vm._v(\" \"+_vm._s(_vm.$t('bufferkey_rejoin', {channel: _vm.buffer.name}))+\" \")])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&lang=less&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&lang=less&\"","var render = function (_h,_vm) {\nvar _obj;\nvar _c=_vm._c;return (_vm.props.user && _vm.$options.m.status(_vm.props) !== '')?_c('span',{staticClass:\"kiwi-typingstatusindicator kiwi-typing\",class:( _obj = {\n 'kiwi-typingstatusindicator--paused': _vm.$options.m.status(_vm.props) === 'paused'\n }, _obj[_vm.data.staticClass] = true, _obj )}):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./MessageListAvatar.vue?vue&type=template&id=482f7543&functional=true&\"\nimport script from \"./MessageListAvatar.vue?vue&type=script&lang=js&\"\nexport * from \"./MessageListAvatar.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n true,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../build/webpack/exports-loader.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputPrompt.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../build/webpack/exports-loader.js!../../../node_modules/babel-loader/lib/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputPrompt.vue?vue&type=script&lang=js&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar Vue = require('vue');\n\nvar _default = Vue.component('input-confirm', {\n props: ['label', 'flipConnotation'],\n data: function data() {\n return {\n state: 'pre'\n };\n },\n computed: {\n connoteCss: function connoteCss() {\n return {\n yes: this.flipConnotation ? 'warning' : 'primary',\n no: this.flipConnotation ? 'primary' : 'warning'\n };\n }\n },\n created: function created() {\n if (!this.$slots.default) {\n this.state = 'prompt';\n }\n },\n methods: {\n prompt: function prompt() {\n this.state = 'prompt';\n },\n complete: function complete(val) {\n this.$emit('submit', val);\n this.$emit(val ? 'ok' : 'cancel');\n this.state = 'pre';\n }\n }\n});\n\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nif(!window._kiwi_exports[\"components\"][\"utils\"]) window._kiwi_exports[\"components\"][\"utils\"] = {};\nwindow._kiwi_exports[\"components\"][\"utils\"][\"InputConfirm\"]\r\nwindow._kiwi_exports.components.utils.InputConfirm = exports.default ? exports.default : exports;\r\n","import { render, staticRenderFns } from \"./Welcome.vue?vue&type=template&id=7e27c7c8&\"\nimport script from \"./Welcome.vue?vue&type=script&lang=js&\"\nexport * from \"./Welcome.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Welcome.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import { render, staticRenderFns } from \"./AppSettings.vue?vue&type=template&id=8f888884&\"\nimport script from \"./AppSettings.vue?vue&type=script&lang=js&\"\nexport * from \"./AppSettings.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AppSettings.vue?vue&type=style&index=0&lang=less&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\"use strict\";\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\n\nvar _promise = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/promise\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _keys = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/keys\"));\n\nvar _typeof2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/typeof\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/createClass\"));\n\nvar _xhr = _interopRequireDefault(require(\"xhr\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar _json = _interopRequireDefault(require(\"json5\"));\n\nvar _Logger = _interopRequireDefault(require(\"./Logger\"));\n\nvar log = _Logger.default.namespace('ConfigLoader');\n\nvar ConfigLoader = /*#__PURE__*/function () {\n function ConfigLoader() {\n (0, _classCallCheck2.default)(this, ConfigLoader);\n this.config = (0, _create.default)(null);\n this.valReplacements = (0, _create.default)(null);\n }\n\n (0, _createClass2.default)(ConfigLoader, [{\n key: \"addValueReplacement\",\n value: function addValueReplacement(key, value) {\n this.valReplacements[key] = value;\n return this;\n }\n }, {\n key: \"loadFromUrl\",\n value: function loadFromUrl(configUrl) {\n var _this = this;\n\n return new _promise.default(function (resolve, reject) {\n (0, _xhr.default)({\n url: configUrl\n }, function (err, response) {\n if (err) {\n reject();\n return;\n }\n\n var configObj = null;\n\n try {\n configObj = _json.default.parse(response.body);\n } catch (parseErr) {\n log.error('Config ' + parseErr.message);\n var errMsg = 'Config file error: ' + parseErr.message.replace('JSON5: ', ''); // Convert \"at 22:16\" to \"at line 22, position 16\"\n\n /* eslint-disable arrow-body-style */\n\n errMsg = errMsg.replace(/at (\\d+):(\\d+)/g, function (m, m1, m2) {\n var _context;\n\n return (0, _concat.default)(_context = \"line \".concat(m1, \", position \")).call(_context, m2);\n });\n reject(errMsg);\n return;\n }\n\n _this.setConfig(configObj);\n\n resolve(_this.config);\n });\n });\n }\n }, {\n key: \"loadFromObj\",\n value: function loadFromObj(configObj) {\n var _this2 = this;\n\n return new _promise.default(function (resolve, reject) {\n _this2.setConfig(configObj);\n\n resolve(_this2.config);\n });\n }\n }, {\n key: \"setConfig\",\n value: function setConfig(confObj) {\n var _this3 = this;\n\n var walkObject = function walkObject(obj, target) {\n _lodash.default.each(obj, function (_val, key) {\n var val = _val;\n\n if (typeof val === 'string') {\n val = _this3.insertReplacements(val);\n target[key] = val;\n } else if ((0, _typeof2.default)(val) === 'object') {\n target[key] = _lodash.default.isArray(val) ? [] : {};\n walkObject(val, target[key]);\n } else {\n target[key] = val;\n }\n });\n };\n\n this.config = (0, _create.default)(null);\n walkObject(confObj, this.config);\n }\n }, {\n key: \"insertReplacements\",\n value: function insertReplacements(input) {\n var out = input;\n var keys = (0, _keys.default)(this.valReplacements);\n\n for (var i = 0; i < keys.length; i++) {\n var k = keys[i];\n\n if (input === '{{' + k + '}}') {\n // If we have an exact match, return the exact replacement value we have as\n // it may not be a string\n return this.valReplacements[k];\n }\n\n out = out.replace('{{' + k + '}}', this.valReplacements[k]);\n }\n\n return out;\n }\n }]);\n return ConfigLoader;\n}();\n\nexports.default = ConfigLoader;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"libs\"]) window._kiwi_exports[\"libs\"] = {};\nwindow._kiwi_exports[\"libs\"][\"ConfigLoader\"]\r\nwindow._kiwi_exports.libs.ConfigLoader = exports.default ? exports.default : exports;\r\n","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _filter = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/filter\"));\n\nvar _sort = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/sort\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar _default = {\n props: ['filter', 'buffer', 'items'],\n data: function data() {\n return {\n items_: [{\n text: 'anick1',\n type: 'user'\n }, {\n text: 'anick2',\n type: 'user'\n }, {\n text: 'bnick3',\n type: 'user'\n }, {\n text: 'cnick4'\n }, {\n text: 'dnick5'\n }],\n selected_idx: 0\n };\n },\n computed: {\n filteredItems: function filteredItems() {\n var _context, _context2;\n\n var filterVal = ((0, _filter.default)(this) || '').toLowerCase();\n return (0, _sort.default)(_context = (0, _filter.default)(_context2 = (0, _lodash.default)(this.items)).call(_context2, function (item) {\n var _context3, _context4;\n\n var s = false;\n\n if ((0, _indexOf.default)(_context3 = item.text.toLowerCase()).call(_context3, filterVal) === 0) {\n s = true;\n }\n\n (0, _forEach.default)(_context4 = item.alias || []).call(_context4, function (alias) {\n var _context5;\n\n if ((0, _indexOf.default)(_context5 = alias.toLowerCase()).call(_context5, filterVal) === 0) {\n s = true;\n }\n });\n return s;\n })).call(_context, function (a, b) {\n return a.text.localeCompare(b.text);\n }).value();\n },\n filteredAndLimitedItems: function filteredAndLimitedItems() {\n var _context6,\n _this = this;\n\n return (0, _filter.default)(_context6 = this.filteredItems).call(_context6, function (item, itemIdx, items) {\n var numItems = items.length - 1;\n var idxFrom = _this.selected_idx - 3;\n var idxTo = _this.selected_idx + 3;\n var isInRange = false; // Adjust the number of items before and after the selected item\n // when we reach either end of the list.\n // If we don't do this then this:\n // * Item 1\n // * item 2\n // * Item 3\n // * Item 4\n // * Item 5 < selected\n // Can turn into this:\n // * Item 4\n // * Item 5 < selected\n\n if (idxFrom < 0) {\n idxTo += -idxFrom;\n idxFrom = 0;\n } else if (idxTo > numItems) {\n idxFrom -= idxTo - numItems;\n idxTo = numItems;\n }\n\n if (itemIdx >= idxFrom && itemIdx <= idxTo) {\n isInRange = true;\n } // Keep track of the pre-limited index for item selection\n\n\n item.idx = itemIdx;\n return isInRange;\n });\n },\n selectedItem: function selectedItem() {\n var item = this.filteredItems[this.selected_idx];\n return item || null;\n }\n },\n watch: {\n selected_idx: function watchSelectedIdx() {\n var _this2 = this;\n\n // nextTick() as the DOM hasn't updated yet\n this.$nextTick(function () {\n var el = _this2.$el.querySelector('.kiwi-autocomplete-item--selected');\n\n if (!el) {\n return;\n }\n\n _this2.$el.scrollTop = el.offsetTop - el.getBoundingClientRect().height * 2;\n });\n this.tempCurrentItem();\n },\n filter: function watchFilter() {\n var numItems = this.filteredAndLimitedItems.length - 1;\n\n if (this.selected_idx > numItems) {\n this.selected_idx = numItems;\n }\n }\n },\n mounted: function mounted() {\n this.tempCurrentItem();\n },\n methods: {\n handleOnKeyDown: function handleOnKeyDown(event) {\n var handled = false;\n var cancelKeyCodes = [13, // return\n 32, // space\n 186, // semi-colon\n 188, // comma\n 190 // period\n ];\n\n if ((0, _indexOf.default)(cancelKeyCodes).call(cancelKeyCodes, event.keyCode) > -1) {\n // If no item is selected (ie. on an empty list), leave the return key\n // to do its default action as if the autocomplete box isn't active.\n if (!this.selectedItem) {\n this.cancel();\n } else {\n this.selectCurrentItem();\n\n if (event.keyCode === 13) {\n event.preventDefault();\n }\n\n handled = true;\n }\n } else if (event.keyCode === 38 || event.keyCode === 9 && event.shiftKey) {\n // Up or tab + shift\n if (this.selected_idx > 0) {\n this.selected_idx--;\n } else {\n // Wrap around to the end\n this.selected_idx = this.filteredItems.length - 1;\n }\n\n event.preventDefault();\n handled = true;\n } else if (event.keyCode === 40 && !event.altKey || event.keyCode === 9) {\n // Down or tab\n if (this.selected_idx < this.filteredItems.length - 1) {\n this.selected_idx++;\n } else {\n // Wrap around to the start\n this.selected_idx = 0;\n }\n\n event.preventDefault();\n handled = true;\n } else if (event.keyCode === 16) {\n handled = true;\n }\n\n return handled;\n },\n openQuery: function openQuery(nick) {\n var buffer = this.$state.addBuffer(this.buffer.networkid, nick);\n this.$state.setActiveBuffer(buffer.networkid, buffer.name);\n this.cancel();\n },\n tempCurrentItem: function tempCurrentItem() {\n var item = this.selectedItem;\n\n if (!item) {\n return;\n }\n\n this.$emit('temp', item.value || item.text, item);\n },\n selectCurrentItem: function selectCurrentItem() {\n var item = this.selectedItem;\n var value = '';\n\n if (item) {\n value = item.value || item.text;\n }\n\n this.$emit('selected', value, item);\n },\n cancel: function cancel() {\n this.$emit('cancel');\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"AutoComplete\"]\r\nwindow._kiwi_exports.components.AutoComplete = exports.default ? exports.default : exports;\r\n","import { render, staticRenderFns } from \"./TabbedView.vue?vue&type=template&id=6c7be4c1&\"\nimport script from \"./TabbedView.vue?vue&type=script&lang=js&\"\nexport * from \"./TabbedView.vue?vue&type=script&lang=js&\"\nimport style0 from \"./TabbedView.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StateBrowserUsermenu.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StateBrowserUsermenu.vue?vue&type=script&lang=js&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _typeof = require(\"@babel/runtime-corejs3/helpers/typeof\");\n\nvar _WeakMap = require(\"@babel/runtime-corejs3/core-js-stable/weak-map\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _Object$getOwnPropertyDescriptor = require(\"@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _lastIndexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/last-index-of\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\n\nvar _assign = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/assign\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar Misc = _interopRequireWildcard(require(\"@/helpers/Misc\"));\n\nvar _Logger = _interopRequireDefault(require(\"@/libs/Logger\"));\n\nvar _BouncerProvider = _interopRequireDefault(require(\"@/libs/BouncerProvider\"));\n\nvar _Captcha = _interopRequireDefault(require(\"@/components/Captcha\"));\n\nvar _CommonLayout = _interopRequireDefault(require(\"./CommonLayout\"));\n\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== \"function\") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\n\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nvar log = _Logger.default.namespace('Welcome.vue');\n\nvar _default = {\n components: {\n Captcha: _Captcha.default,\n StartupLayout: _CommonLayout.default\n },\n data: function data() {\n return {\n errorMessage: '',\n network: null,\n channel: '',\n nick: '',\n password: '',\n showChannel: true,\n showPass: true,\n toggablePass: true,\n showNick: true,\n show_password_box: '',\n connectWithoutChannel: false,\n showPlainText: false,\n captchaReady: false\n };\n },\n computed: {\n startupOptions: function startupOptions() {\n return this.$state.settings.startupOptions;\n },\n greetingText: function greetingText() {\n var greeting = this.$state.settings.startupOptions.greetingText;\n return typeof greeting === 'string' ? greeting : this.$t('start_greeting');\n },\n footerText: function footerText() {\n var footer = this.$state.settings.startupOptions.footerText;\n return typeof footer === 'string' ? footer : '';\n },\n buttonText: function buttonText() {\n var greeting = this.$state.settings.startupOptions.buttonText;\n return typeof greeting === 'string' ? greeting : this.$t('start_button');\n },\n isNickValid: function isNickValid() {\n var nickPatternStr = this.$state.setting('startupOptions.nick_format');\n var nickPattern = '';\n\n if (!nickPatternStr) {\n // Nicks cannot start with [0-9- ]\n // ? is not a valid nick character but we allow it as it gets replaced\n // with a number.\n nickPattern = /^[a-z_\\\\[\\]{}^`|][a-z0-9_\\-\\\\[\\]{}^`|]*$/i;\n } else {\n // Support custom pattern matches. Eg. only '@example.com' may be allowed\n // on some IRCDs\n var pattern = '';\n var flags = '';\n\n if (nickPatternStr[0] === '/') {\n // Custom regex\n var pos = (0, _lastIndexOf.default)(nickPatternStr).call(nickPatternStr, '/');\n pattern = nickPatternStr.substring(1, pos);\n flags = nickPatternStr.substr(pos + 1);\n } else {\n // Basic contains rule\n pattern = _lodash.default.escapeRegExp(nickPatternStr);\n flags = 'i';\n }\n\n try {\n nickPattern = new RegExp(pattern, flags);\n } catch (error) {\n log.error('Nick format error: ' + error.message);\n return false;\n }\n }\n\n return this.nick.match(nickPattern);\n },\n readyToStart: function readyToStart() {\n var ready = !!this.nick;\n\n if (!this.connectWithoutChannel && !this.channel) {\n ready = false;\n } // Make sure the channel name starts with a common channel prefix\n\n\n if (!this.connectWithoutChannel) {\n var bufferObjs = Misc.extractBuffers(this.channel);\n (0, _forEach.default)(bufferObjs).call(bufferObjs, function (bufferObj) {\n var _context;\n\n if ((0, _indexOf.default)(_context = '#&').call(_context, bufferObj.name[0]) === -1) {\n ready = false;\n }\n });\n } // If toggling the password is is disabled, assume it is required\n\n\n if (!this.toggablePass && !this.password) {\n ready = false;\n }\n\n if (!this.isNickValid) {\n ready = false;\n }\n\n return ready;\n }\n },\n watch: {\n show_password_box: function show_password_box(newVal) {\n if (newVal === false) {\n // clear the password when show password is unchecked\n this.password = '';\n }\n }\n },\n created: function created() {\n var _context2;\n\n var options = this.startupOptions;\n var connectOptions = this.connectOptions(); // Take some settings from a previous network if available\n\n var previousNet = null;\n\n if ((0, _trim.default)(_context2 = connectOptions.hostname).call(_context2)) {\n var _context3;\n\n previousNet = this.$state.getNetworkFromAddress((0, _trim.default)(_context3 = connectOptions.hostname).call(_context3));\n }\n\n if (previousNet && previousNet.connection.nick) {\n this.nick = previousNet.connection.nick;\n } else if (Misc.queryStringVal('nick')) {\n this.nick = Misc.queryStringVal('nick');\n } else {\n this.nick = options.nick;\n }\n\n this.nick = this.processNickRandomNumber(this.nick || '');\n\n if (options.password) {\n this.password = options.password;\n } else if (previousNet && previousNet.password) {\n this.password = previousNet.password;\n this.show_password_box = true;\n } else if (Misc.queryStringVal('show_password_box')) {\n this.show_password_box = true;\n } else {\n this.password = '';\n }\n\n this.channel = decodeURIComponent(window.location.hash) || options.channel || '';\n this.showChannel = typeof options.showChannel === 'boolean' ? options.showChannel : true;\n this.showNick = typeof options.showNick === 'boolean' ? options.showNick : true;\n this.showPass = typeof options.showPassword === 'boolean' ? options.showPassword : true;\n this.toggablePass = typeof options.toggablePassword === 'boolean' ? options.toggablePassword : true;\n this.connectWithoutChannel = !!options.allowNoChannel;\n\n if (options.bouncer) {\n this.toggablePass = false;\n this.showPass = true;\n this.showChannel = false;\n this.connectWithoutChannel = true;\n var bouncer = new _BouncerProvider.default(this.$state);\n bouncer.enable(connectOptions.hostname, connectOptions.port, connectOptions.tls, connectOptions.direct, connectOptions.direct_path);\n }\n\n if (options.autoConnect && this.nick && (this.channel || this.connectWithoutChannel)) {\n this.startUp();\n }\n },\n methods: {\n onAltClose: function onAltClose(event) {\n if (event.channel) {\n this.channel = event.channel;\n }\n\n if (event.nick) {\n this.nick = event.nick;\n }\n\n if (event.password) {\n this.password = event.password;\n }\n\n if (event.error) {\n this.errorMessage = event.error;\n }\n\n this.$state.settings.startupOptions.altComponent = null;\n },\n readableStateError: function readableStateError(err) {\n return Misc.networkErrorMessage(err);\n },\n formSubmit: function formSubmit() {\n if (this.readyToStart) {\n this.startUp();\n }\n },\n startUp: function startUp() {\n var _this = this;\n\n this.errorMessage = '';\n var options = (0, _assign.default)({}, this.$state.settings.startupOptions);\n var connectOptions = this.connectOptions();\n var netAddress = (0, _trim.default)(_lodash.default).call(_lodash.default, connectOptions.hostname); // Check if we have this network already\n\n var net = this.network || this.$state.getNetworkFromAddress(netAddress);\n var password = this.password; // If the network doesn't already exist, add a new one\n\n net = net || this.$state.addNetwork('Network', this.nick, {\n server: netAddress,\n port: connectOptions.port,\n tls: connectOptions.tls,\n password: password,\n encoding: (0, _trim.default)(_lodash.default).call(_lodash.default, options.encoding),\n direct: connectOptions.direct,\n path: connectOptions.direct_path || '',\n gecos: options.gecos,\n username: options.username\n }); // Clear the server buffer in case it already existed and contains messages relating to\n // the previous connection, such as errors. They are now redundant since this is a\n // new connection.\n\n net.serverBuffer().clearMessages(); // If we retreived an existing network, update the nick+password with what\n // the user has just put in place\n\n net.connection.nick = this.nick;\n\n if (options.bouncer) {\n var _context4;\n\n // Bouncer mode uses server PASS\n net.connection.password = (0, _concat.default)(_context4 = \"\".concat(this.nick, \":\")).call(_context4, password);\n net.password = '';\n } else {\n net.connection.password = '';\n net.password = password;\n }\n\n if ((0, _trim.default)(_lodash.default).call(_lodash.default, options.encoding || '')) {\n net.connection.encoding = (0, _trim.default)(_lodash.default).call(_lodash.default, options.encoding);\n }\n\n this.network = net; // Only switch to the first channel we join if multiple are being joined\n\n var hasSwitchedActiveBuffer = false;\n var bufferObjs = Misc.extractBuffers(this.channel);\n (0, _forEach.default)(bufferObjs).call(bufferObjs, function (bufferObj) {\n var newBuffer = _this.$state.addBuffer(net.id, bufferObj.name);\n\n newBuffer.enabled = true;\n\n if (newBuffer && !hasSwitchedActiveBuffer) {\n _this.$state.setActiveBuffer(net.id, newBuffer.name);\n\n hasSwitchedActiveBuffer = true;\n }\n\n if (bufferObj.key) {\n newBuffer.key = bufferObj.key;\n }\n }); // switch to server buffer if no channels are joined\n\n if (!options.bouncer && !hasSwitchedActiveBuffer) {\n this.$state.setActiveBuffer(net.id, net.serverBuffer().name);\n }\n\n net.ircClient.connect();\n\n var onRegistered = function onRegistered() {\n if (_this.$refs.layout) {\n _this.$refs.layout.close();\n }\n\n net.ircClient.off('registered', onRegistered);\n net.ircClient.off('close', onClosed);\n };\n\n var onClosed = function onClosed() {\n net.ircClient.off('registered', onRegistered);\n net.ircClient.off('close', onClosed);\n };\n\n net.ircClient.once('registered', onRegistered);\n net.ircClient.once('close', onClosed);\n },\n processNickRandomNumber: function processNickRandomNumber(nick) {\n // Replace ? with a random number\n var tmp = (nick || '').replace(/\\?/g, function () {\n return Math.floor(Math.random() * 100).toString();\n });\n return (0, _trim.default)(_lodash.default).call(_lodash.default, tmp);\n },\n handleCaptcha: function handleCaptcha(isReady) {\n this.captchaReady = isReady;\n },\n connectOptions: function connectOptions() {\n var options = (0, _assign.default)({}, this.$state.settings.startupOptions);\n var connectOptions = Misc.connectionInfoFromConfig(options); // If a server isn't specified in the config, set some defaults\n // The webircgateway will have a default network set and will connect\n // there instead. This just removes the requirement of specifying the same\n // irc network address in both the server-side and client side configs\n\n connectOptions.hostname = connectOptions.hostname || 'default';\n\n if (!connectOptions.port && connectOptions.direct) {\n connectOptions.port = connectOptions.tls ? 443 : 80;\n } else if (!connectOptions.port && !connectOptions.direct) {\n connectOptions.port = connectOptions.tls ? 6697 : 6667;\n }\n\n return connectOptions;\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nif(!window._kiwi_exports[\"components\"][\"startups\"]) window._kiwi_exports[\"components\"][\"startups\"] = {};\nwindow._kiwi_exports[\"components\"][\"startups\"][\"Welcome\"]\r\nwindow._kiwi_exports.components.startups.Welcome = exports.default ? exports.default : exports;\r\n","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _typeof = require(\"@babel/runtime-corejs3/helpers/typeof\");\n\nvar _WeakMap = require(\"@babel/runtime-corejs3/core-js-stable/weak-map\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _Object$getOwnPropertyDescriptor = require(\"@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _regenerator = _interopRequireDefault(require(\"@babel/runtime-corejs3/regenerator\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _parseInt2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/parse-int\"));\n\nvar _setTimeout2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-timeout\"));\n\nvar _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\n\nvar _asyncToGenerator2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/asyncToGenerator\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar Misc = _interopRequireWildcard(require(\"@/helpers/Misc\"));\n\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== \"function\") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\n\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nvar _default = {\n data: function data() {\n return {\n title: 'Where are you connecting today?',\n buttonText: '',\n server_type: 'default',\n server: '',\n tls: false,\n nick: '',\n password: '',\n encoding: 'utf8',\n channel: '',\n znc_network: '',\n znc_network_support: true,\n direct: false,\n direct_path: '',\n show_type_switcher: true,\n show_password_box: false,\n is_connecting: false,\n network: null\n };\n },\n created: function () {\n var _created = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {\n var _this = this;\n\n var saveThisSessionsState, network, fragment, uriCheck, connections, con;\n return _regenerator.default.wrap(function _callee$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n saveThisSessionsState = false; // If we have networks from a previous state, launch directly into it\n\n if (this.$state.networks.length > 0) {\n network = this.$state.networks[0];\n this.$state.setActiveBuffer(network.id, network.serverBuffer().name);\n saveThisSessionsState = true;\n this.$emit('start');\n } else if (window.location.hash.substr(1)) {\n fragment = window.location.hash.substr(1); // Check to see if we're dealing with an encoded irc: uri (browsers do this\n // when clicking an IRC link)\n\n uriCheck = fragment.substr(0, 7).toLowerCase();\n\n if (uriCheck === 'ircs%3a' || uriCheck.substr(0, 6) === 'irc%3a') {\n fragment = decodeURIComponent(fragment);\n }\n\n connections = Misc.parseIrcUri(fragment); // If more than 1 connection string is given, skip the connection screen\n // and add them all right away.\n\n if (connections.length === 0) {\n saveThisSessionsState = true;\n this.applyDefaults();\n } else if (connections.length === 1) {\n saveThisSessionsState = false;\n this.server_type = 'default_simple';\n this.show_type_switcher = false;\n con = connections[0];\n this.server = con.server + ':' + con.port;\n this.tls = con.tls;\n this.nick = this.processNickRandomNumber(con.nick);\n this.channel = con.channels.join(',');\n this.direct = con.direct;\n this.encoding = con.encoding;\n\n if (con.params.type === 'znc') {\n // Older ZNC versions only support user:pass while newer supports\n // user/network:pass. Setting the network to _ denotes that we are\n // connecting to an older ZNC without network support.\n if (con.params.network === '_') {\n this.znc_network_support = false;\n } else {\n this.znc_network = con.params.network || '';\n }\n\n this.server_type = 'znc';\n this.title = 'Enter your password to connect to ZNC';\n } else {\n this.title = 'Enter a nickname to join';\n }\n } else if (connections.length > 1) {\n saveThisSessionsState = false;\n (0, _forEach.default)(connections).call(connections, function (con, idx) {\n var _context;\n\n var net = _this.$state.addNetwork(con.server, con.nick, {\n server: con.server,\n port: con.port,\n tls: con.tls,\n password: con.password || ''\n });\n\n (0, _forEach.default)(_context = con.channels).call(_context, function (channelName) {\n var buffer = _this.$state.addBuffer(net.id, channelName);\n\n buffer.enabled = true;\n }); // Set the first server buffer active\n\n if (idx === 0) {\n _this.$state.setActiveBuffer(net.id, net.serverBuffer().name);\n }\n });\n this.$emit('start');\n }\n } else {\n saveThisSessionsState = true;\n this.applyDefaults();\n }\n\n if (this.$state.settings.startupOptions.greetingText) {\n this.title = this.$state.settings.startupOptions.greetingText;\n }\n\n if (this.$state.settings.startupOptions.buttonText) {\n this.buttonText = this.$state.settings.startupOptions.buttonText;\n } else {\n this.buttonText = this.$t('connect');\n }\n\n if (saveThisSessionsState) {\n this.$state.persistence.watchStateForChanges();\n }\n\n case 5:\n case \"end\":\n return _context2.stop();\n }\n }\n }, _callee, this);\n }));\n\n function created() {\n return _created.apply(this, arguments);\n }\n\n return created;\n }(),\n methods: {\n readableStateError: function readableStateError(err) {\n return Misc.networkErrorMessage(err);\n },\n startUp: function startUp() {\n var _this2 = this;\n\n var net;\n\n if (!this.nick) {\n this.$el.querySelector('.kiwi-customserver-nick input').focus();\n return;\n }\n\n var nick = this.nick;\n\n if (this.server_type === 'znc') {\n // Older ZNC versions only support user:pass while newer supports user/network:pass\n var password = nick;\n\n if (this.znc_network) {\n password += '/' + this.znc_network;\n }\n\n password += ':' + this.password;\n net = this.$state.addNetwork('ZNC', 'ZNC', {\n server: this.server.split(':')[0],\n port: (0, _parseInt2.default)(this.server.split(':')[1] || 6667, 10),\n tls: this.tls,\n password: password\n });\n } else {\n net = this.$state.addNetwork('Network', nick, {\n server: this.server.split(':')[0],\n port: (0, _parseInt2.default)(this.server.split(':')[1] || 6667, 10),\n tls: this.tls,\n password: this.password,\n direct: this.direct,\n path: this.direct_path,\n encoding: this.encoding\n });\n }\n\n if (net) {\n var hasSetActiveBuffer = false;\n var bufferObjs = Misc.extractBuffers(this.channel);\n (0, _forEach.default)(bufferObjs).call(bufferObjs, function (bufferObj, idx) {\n var buffer = _this2.$state.addBuffer(net.id, bufferObj.name);\n\n buffer.enabled = true;\n\n if (bufferObj.key) {\n buffer.key = bufferObj.key;\n }\n\n if (idx === 0) {\n _this2.$state.setActiveBuffer(net.id, buffer.name);\n\n hasSetActiveBuffer = true;\n }\n });\n\n if (!hasSetActiveBuffer) {\n this.$state.setActiveBuffer(net.id, net.serverBuffer().name);\n }\n\n this.is_connecting = true;\n this.network = net;\n net.ircClient.connect();\n\n var onRegistered = function onRegistered() {\n (0, _setTimeout2.default)(function () {\n _this2.is_connecting = false;\n }, 1000);\n\n _this2.$emit('start');\n\n net.ircClient.off('registered', onRegistered);\n net.ircClient.off('close', onClosed);\n };\n\n var onClosed = function onClosed() {\n (0, _setTimeout2.default)(function () {\n _this2.is_connecting = false;\n }, 1000);\n net.ircClient.off('registered', onRegistered);\n net.ircClient.off('close', onClosed);\n };\n\n net.ircClient.once('registered', onRegistered);\n net.ircClient.once('close', onClosed);\n }\n },\n processNickRandomNumber: function processNickRandomNumber(nick) {\n // Replace ? with a random number\n var tmp = (nick || '').replace(/\\?/g, function () {\n return Math.floor(Math.random() * 100).toString();\n });\n return (0, _trim.default)(_lodash.default).call(_lodash.default, tmp);\n },\n infoClick: function infoClick() {\n if (this.network) {\n var net = this.network;\n this.$state.setActiveBuffer(net.id, net.serverBuffer().name);\n }\n\n this.$emit('start');\n },\n applyDefaults: function applyDefaults() {\n this.server = this.$state.settings.startupOptions.server;\n this.tls = this.$state.settings.startupOptions.tls;\n this.nick = this.processNickRandomNumber(this.$state.settings.startupOptions.nick);\n this.channel = this.$state.settings.startupOptions.channel;\n this.direct = this.$state.settings.startupOptions.direct;\n this.direct_path = this.$state.settings.startupOptions.direct_path;\n this.encoding = this.$state.settings.startupOptions.encoding; // Only include the port in the server box if it's not the default\n\n if (this.$state.settings.startupOptions.port.toString() !== '6667') {\n this.server += ':' + this.$state.settings.startupOptions.port.toString();\n }\n\n this.title = 'Where are you connecting today?';\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nif(!window._kiwi_exports[\"components\"][\"startups\"]) window._kiwi_exports[\"components\"][\"startups\"] = {};\nwindow._kiwi_exports[\"components\"][\"startups\"][\"CustomServer\"]\r\nwindow._kiwi_exports.components.startups.CustomServer = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputText.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./InputText.vue?vue&type=style&index=0&lang=css&\"","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MessageListAvatar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./MessageListAvatar.vue?vue&type=script&lang=js&\"","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppSettings.vue?vue&type=style&index=0&lang=less&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppSettings.vue?vue&type=style&index=0&lang=less&\"","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TabbedView.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TabbedView.vue?vue&type=style&index=0&lang=css&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _filter = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/filter\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _reverse = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/reverse\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar _Html = _interopRequireDefault(require(\"@/libs/renderers/Html\"));\n\nvar _MessageParser = _interopRequireDefault(require(\"@/libs/MessageParser\"));\n\nvar _default = {\n props: ['network'],\n data: function data() {\n return {\n sidebarOpen: false,\n page: 0,\n page_size: 200,\n search: '',\n last_updated: 0\n };\n },\n computed: {\n noResults: function noResults() {\n return this.listState === 'updated' && this.filteredList.length === 0;\n },\n isLoading: function isLoading() {\n return this.listState === 'updating';\n },\n listState: function listState() {\n return this.network.channel_list_state;\n },\n list: function list() {\n return this.network.channel_list || [];\n },\n filteredList: function filteredList() {\n var _this = this,\n _context4;\n\n var list = [];\n\n if (this.search.length <= 2) {\n list = this.list;\n } else {\n var _context;\n\n list = (0, _filter.default)(_context = this.list).call(_context, function (channel) {\n var _context2, _context3;\n\n var found = false;\n\n if ((0, _indexOf.default)(_context2 = channel.channel.toLowerCase()).call(_context2, _this.search) > -1) {\n found = true;\n }\n\n if ((0, _indexOf.default)(_context3 = channel.topic.toLowerCase()).call(_context3, _this.search) > -1) {\n found = true;\n }\n\n return found;\n });\n }\n\n return (0, _reverse.default)(_context4 = _lodash.default.sortBy(list, 'num_users')).call(_context4);\n },\n paginated: function paginated() {\n var offset = this.page * this.page_size;\n var list = this.filteredList;\n var channels = [];\n\n for (var i = offset; i < offset + this.page_size; i++) {\n if (list[i]) {\n channels.push(list[i]);\n }\n }\n\n return channels;\n },\n maxPages: function maxPages() {\n return Math.floor(this.filteredList.length / this.page_size);\n },\n canGoForward: function canGoForward() {\n return this.page * this.page_size >= this.filteredList.length;\n },\n canGoBackward: function canGoBackward() {\n return this.page > 0;\n }\n },\n watch: {\n search: function search() {\n this.page = 0;\n }\n },\n methods: {\n nextPage: function nextPage() {\n if (this.page < this.maxPages) {\n this.page++;\n }\n },\n prevPage: function prevPage() {\n if (this.page > 0) {\n this.page--;\n }\n },\n maybeUpdateList: function maybeUpdateList() {\n if (this.listState !== 'updating') {\n this.network.ircClient.raw('LIST');\n }\n },\n formatAndTrimTopic: function formatAndTrimTopic(rawTopic) {\n var showModes = this.$state.setting('showChanlistModes');\n var topic = showModes ? rawTopic : rawTopic.replace(/^\\[([^\\]]+)\\] ?/, '');\n var blocks = (0, _MessageParser.default)(topic, {\n extras: false\n });\n var content = (0, _Html.default)(blocks);\n return content;\n },\n joinChannel: function joinChannel(channelName) {\n this.$state.addBuffer(this.network.id, channelName);\n this.network.ircClient.join(channelName);\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"ChannelList\"]\r\nwindow._kiwi_exports.components.ChannelList = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StateBrowserBuffer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./StateBrowserBuffer.vue?vue&type=script&lang=js&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _filter = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/filter\"));\n\nvar _values = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/values\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/defineProperty\"));\n\nvar _TypingStatusIndicator = _interopRequireDefault(require(\"./TypingStatusIndicator\"));\n\nvar _default = {\n components: {\n TypingStatusIndicator: _TypingStatusIndicator.default\n },\n props: ['buffer'],\n computed: {\n users: function users() {\n if (this.buffer.isQuery()) {\n // if this is a query return the target as users\n var network = this.$state.getActiveNetwork();\n var user = this.$state.getUser(network.id, this.buffer.name);\n return user ? (0, _defineProperty2.default)({}, user.nick, user) : {};\n }\n\n return this.buffer.users;\n },\n typingUsers: function typingUsers() {\n var _context,\n _this = this;\n\n var myNick = this.$state.getActiveNetwork().nick;\n return (0, _filter.default)(_context = (0, _values.default)(this.users)).call(_context, function (u) {\n return u.nick !== myNick && u.typingStatus(_this.buffer.name).status;\n });\n }\n },\n methods: {\n userColour: function userColour(user) {\n return user && this.buffer.setting('colour_nicknames_in_messages') ? user.getColour() : '';\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"TypingUsersList\"]\r\nwindow._kiwi_exports.components.TypingUsersList = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NicklistUser.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NicklistUser.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-sidebar kiwi-theme-bg\",class:['kiwi-sidebar-section-' + _vm.section]},[(!_vm.sidebarState.isOpen)?_c('span',{staticClass:\"kiwi-sidebar-options\"},[_c('div',{staticClass:\"kiwi-sidebar-close\",on:{\"click\":function($event){return _vm.sidebarState.close()}}},[_vm._v(\" \"+_vm._s(_vm.$t('close'))),_c('i',{staticClass:\"fa fa-times\",attrs:{\"aria-hidden\":\"true\"}})])]):_vm._e(),(_vm.sidebarState.activeComponent)?[_c(_vm.sidebarState.activeComponent,{tag:\"component\",attrs:{\"network\":_vm.network,\"buffer\":_vm.buffer,\"sidebar-state\":_vm.sidebarState}})]:(_vm.buffer)?[(_vm.buffer.isChannel())?[(_vm.section === 'settings')?_c('div',{staticClass:\"kiwi-sidebar-buffersettings\",on:{\"click\":function($event){$event.stopPropagation();}}},[_c('tabbed-view',[_c('tabbed-tab',{attrs:{\"header\":_vm.$t('settings'),\"focus\":true}},[_c('h3',[_vm._v(_vm._s(_vm.$t('channel_settings')))]),_c('hr'),_c('channel-info',{attrs:{\"buffer\":_vm.buffer}}),_c('div',{staticClass:\"kiwi-sidebar-settings\"},[_c('h3',[_vm._v(_vm._s(_vm.$t('side_settings')))]),_c('hr'),_c('form',{staticClass:\"u-form\"},[_c('label',{staticClass:\"u-checkbox-wrapper\"},[_c('span',[_vm._v(_vm._s(_vm.$t('side_joins')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.settingShowJoinParts),expression:\"settingShowJoinParts\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.settingShowJoinParts)?_vm._i(_vm.settingShowJoinParts,null)>-1:(_vm.settingShowJoinParts)},on:{\"change\":function($event){var $$a=_vm.settingShowJoinParts,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.settingShowJoinParts=$$a.concat([$$v]))}else{$$i>-1&&(_vm.settingShowJoinParts=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.settingShowJoinParts=$$c}}}})]),_c('label',{staticClass:\"u-checkbox-wrapper\"},[_c('span',[_vm._v(_vm._s(_vm.$t('side_topics')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.settingShowTopics),expression:\"settingShowTopics\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.settingShowTopics)?_vm._i(_vm.settingShowTopics,null)>-1:(_vm.settingShowTopics)},on:{\"change\":function($event){var $$a=_vm.settingShowTopics,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.settingShowTopics=$$a.concat([$$v]))}else{$$i>-1&&(_vm.settingShowTopics=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.settingShowTopics=$$c}}}})]),_c('label',{staticClass:\"u-checkbox-wrapper\"},[_c('span',[_vm._v(_vm._s(_vm.$t('side_nick_changes')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.settingShowNickChanges),expression:\"settingShowNickChanges\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.settingShowNickChanges)?_vm._i(_vm.settingShowNickChanges,null)>-1:(_vm.settingShowNickChanges)},on:{\"change\":function($event){var $$a=_vm.settingShowNickChanges,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.settingShowNickChanges=$$a.concat([$$v]))}else{$$i>-1&&(_vm.settingShowNickChanges=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.settingShowNickChanges=$$c}}}})]),_c('label',{staticClass:\"u-checkbox-wrapper\"},[_c('span',[_vm._v(_vm._s(_vm.$t('side_mode_changes')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.settingShowModeChanges),expression:\"settingShowModeChanges\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.settingShowModeChanges)?_vm._i(_vm.settingShowModeChanges,null)>-1:(_vm.settingShowModeChanges)},on:{\"change\":function($event){var $$a=_vm.settingShowModeChanges,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.settingShowModeChanges=$$a.concat([$$v]))}else{$$i>-1&&(_vm.settingShowModeChanges=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.settingShowModeChanges=$$c}}}})]),_c('label',{staticClass:\"u-checkbox-wrapper\"},[_c('span',[_vm._v(_vm._s(_vm.$t('side_formatting')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.settingExtraFormatting),expression:\"settingExtraFormatting\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.settingExtraFormatting)?_vm._i(_vm.settingExtraFormatting,null)>-1:(_vm.settingExtraFormatting)},on:{\"change\":function($event){var $$a=_vm.settingExtraFormatting,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.settingExtraFormatting=$$a.concat([$$v]))}else{$$i>-1&&(_vm.settingExtraFormatting=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.settingExtraFormatting=$$c}}}})]),_c('label',{staticClass:\"u-checkbox-wrapper\"},[_c('span',[_vm._v(_vm._s(_vm.$t('side_colours')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.settingColouredNicklist),expression:\"settingColouredNicklist\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.settingColouredNicklist)?_vm._i(_vm.settingColouredNicklist,null)>-1:(_vm.settingColouredNicklist)},on:{\"change\":function($event){var $$a=_vm.settingColouredNicklist,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.settingColouredNicklist=$$a.concat([$$v]))}else{$$i>-1&&(_vm.settingColouredNicklist=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.settingColouredNicklist=$$c}}}})]),_c('label',{staticClass:\"u-checkbox-wrapper\"},[_c('span',[_vm._v(_vm._s(_vm.$t('settings_share_typing')))]),_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.settingShareTyping),expression:\"settingShareTyping\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.settingShareTyping)?_vm._i(_vm.settingShareTyping,null)>-1:(_vm.settingShareTyping)},on:{\"change\":function($event){var $$a=_vm.settingShareTyping,$$el=$event.target,$$c=$$el.checked?(true):(false);if(Array.isArray($$a)){var $$v=null,$$i=_vm._i($$a,$$v);if($$el.checked){$$i<0&&(_vm.settingShareTyping=$$a.concat([$$v]))}else{$$i>-1&&(_vm.settingShareTyping=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.settingShareTyping=$$c}}}})])])])],1),_c('tabbed-tab',{attrs:{\"header\":_vm.$t('access')}},[_c('a',{staticClass:\"u-link kiwi-sidebar-accesstab\",class:{\n 'kiwi-sidebar-accesstab--active': _vm.accessTab === 'banlist'\n },on:{\"click\":function($event){_vm.accessTab='banlist'}}},[_vm._v(\" \"+_vm._s(_vm.$t('banned'))+\" \")]),_c('a',{staticClass:\"u-link kiwi-sidebar-accesstab\",class:{\n 'kiwi-sidebar-accesstab--active': _vm.accessTab === 'invitelist'\n },on:{\"click\":function($event){_vm.accessTab='invitelist'}}},[_vm._v(\" \"+_vm._s(_vm.$t('invited'))+\" \")]),(_vm.accessTab==='banlist')?_c('channel-banlist',{attrs:{\"buffer\":_vm.buffer}}):_vm._e(),(_vm.accessTab==='invitelist')?_c('channel-invitelist',{attrs:{\"buffer\":_vm.buffer}}):_vm._e()],1),_c('tabbed-tab',{attrs:{\"header\":_vm.$t('notifications')}},[_c('buffer-settings',{attrs:{\"buffer\":_vm.buffer}})],1),_vm._l((_vm.pluginUiElements),function(item){return _c('tabbed-tab',{key:item.id,attrs:{\"header\":item.title}},[_c(item.component,_vm._b({tag:\"div\"},'div',item.props,false))],1)})],2)],1):(_vm.section === 'user')?_c('div',{staticClass:\"kiwi-sidebar-userbox\",on:{\"click\":function($event){$event.stopPropagation();}}},[_c('user-box',{attrs:{\"user\":_vm.sidebarState.sidebarUser,\"buffer\":_vm.buffer,\"network\":_vm.network}})],1):(_vm.section === 'nicklist')?_c('nicklist',{attrs:{\"network\":_vm.network,\"buffer\":_vm.buffer,\"sidebar-state\":_vm.sidebarState}}):(_vm.section === 'about')?_c('sidebar-about-buffer',{attrs:{\"network\":_vm.network,\"buffer\":_vm.buffer,\"sidebar-state\":_vm.sidebarState}}):_vm._e()]:(_vm.buffer.isQuery())?[(_vm.section === 'user')?_c('div',{staticClass:\"kiwi-sidebar-userbox\",on:{\"click\":function($event){$event.stopPropagation();}}},[_c('user-box',{attrs:{\"user\":_vm.sidebarState.sidebarUser,\"buffer\":_vm.buffer,\"network\":_vm.network}})],1):_vm._e()]:_vm._e()]:[_vm._v(\" \"+_vm._s(_vm.$t('side_buffer'))+\" \")]],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _typeof = require(\"@babel/runtime-corejs3/helpers/typeof\");\n\nvar _WeakMap = require(\"@babel/runtime-corejs3/core-js-stable/weak-map\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _Object$getOwnPropertyDescriptor = require(\"@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\n\nvar TextFormatting = _interopRequireWildcard(require(\"@/helpers/TextFormatting\"));\n\nvar _AwayStatusIndicator = _interopRequireDefault(require(\"./AwayStatusIndicator\"));\n\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== \"function\") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\n\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nvar _default = {\n components: {\n AwayStatusIndicator: _AwayStatusIndicator.default\n },\n props: {\n network: Object\n },\n data: function data() {\n return {\n new_nick: '',\n error_message: '',\n self_user_settings_open: false\n };\n },\n computed: {\n modeString: function modeString() {\n var _context;\n\n var str = '';\n (0, _forEach.default)(_context = this.network.ircClient.user.modes).call(_context, function (mode) {\n str += mode;\n }); // Only show the + if there are modes to show\n\n if (str) {\n str = '+' + str;\n }\n\n return str;\n },\n netUser: function netUser() {\n return this.network.ircClient.user;\n },\n awayStatus: {\n get: function get() {\n return this.network.currentUser().away;\n },\n set: function set(val) {\n this.network.ircClient.raw('AWAY', val ? 'Currently away' : '');\n }\n }\n },\n created: function created() {\n var _this = this;\n\n this.listen(this.network.ircClient, 'nick in use', function (event) {\n _this.error_message = TextFormatting.t('error_nick_in_use', {\n nick: event.nick\n });\n });\n },\n methods: {\n openSelfActions: function openSelfActions() {\n this.self_user_settings_open = true;\n },\n openProfile: function openProfile() {\n this.$state.$emit('userbox.show', this.network.currentUser());\n },\n closeSelfUser: function closeSelfUser() {\n this.$emit('close');\n },\n onNewNickSubmit: function onNewNickSubmit(newVal) {\n this.new_nick = newVal;\n this.changeNick();\n },\n changeNick: function changeNick() {\n var _context2;\n\n var nick = (0, _trim.default)(_context2 = this.new_nick).call(_context2);\n\n if (nick.length === 0) {\n this.error_message = TextFormatting.t('error_empty_nick');\n return;\n }\n\n if (nick.match(/(^[0-9])|(\\s)/)) {\n this.error_message = TextFormatting.t('error_no_number');\n return;\n }\n\n this.error_message = '';\n this.network.ircClient.changeNick(nick);\n this.userNameCancel();\n },\n userNameCancel: function userNameCancel() {\n this.self_user_settings_open = false;\n },\n networkSupportsAway: function networkSupportsAway() {\n return this.network.ircClient.network.cap.isEnabled('away-notify');\n },\n checkUserAway: function checkUserAway() {\n return !!this.network.currentUser().away;\n },\n getUserFromString: function getUserFromString(name) {\n return this.$state.getUser(this.network.id, name);\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"SelfUser\"]\r\nwindow._kiwi_exports.components.SelfUser = exports.default ? exports.default : exports;\r\n","\"use strict\";\n'kiwi public';\n/** @module */\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.extractBuffers = extractBuffers;\nexports.extractURL = extractURL;\nexports.stripStyles = stripStyles;\nexports.mentionsNick = mentionsNick;\nexports.queryStringVal = queryStringVal;\nexports.networkErrorMessage = networkErrorMessage;\nexports.connectionInfoFromConfig = connectionInfoFromConfig;\nexports.matchUri = matchUri;\nexports.parseIrcUri = parseIrcUri;\nexports.parsePresetServer = parsePresetServer;\nexports.dedotObject = dedotObject;\nexports.replaceObjectProps = replaceObjectProps;\nexports.dateIso = dateIso;\nexports.parseIntZero = parseIntZero;\n\nvar _typeof2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/typeof\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\n\nvar _map = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/map\"));\n\nvar _parseInt2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/parse-int\"));\n\nvar _keys = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/keys\"));\n\nvar _isNan = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/number/is-nan\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar _strftime = _interopRequireDefault(require(\"strftime\"));\n\nvar _TextFormatting = require(\"./TextFormatting\");\n\nvar strftimeUTC = _strftime.default.timezone('+0');\n/**\n * Extract an array of buffers from a string, parsing multiple buffer names and channel keys\n * \"#chan,#chan2\" => 2 channels without a key\n * \"#chan,#chan2 key\" => 2 channels, the first having a key\n * \"#chan,#chan2 key1,key2\" => 2 channels, both having a key\n * \"#chan,#chan2 ,key2\" => 2 channels, the second having a key\n * @param {string} str List of buffer names and channel keys\n */\n\n\nfunction extractBuffers(str) {\n var spaceIdx = (0, _indexOf.default)(str).call(str, ' ');\n if (spaceIdx === -1) spaceIdx = str.length;\n var bufferNames = str.substr(0, spaceIdx).split(',');\n var keys = str.substr(spaceIdx + 1).split(',');\n var buffers = [];\n (0, _forEach.default)(bufferNames).call(bufferNames, function (bufferName, idx) {\n // return if bufferName is empty\n if (!(0, _trim.default)(bufferName).call(bufferName)) {\n return;\n }\n\n buffers.push({\n name: bufferName,\n key: keys[idx] || ''\n });\n });\n return buffers;\n}\n\nfunction extractURL(str) {\n var matches = str.match(_TextFormatting.urlRegex);\n return matches ? matches[0] : '';\n}\n\nfunction stripStyles(str) {\n return str.replace(/(\\x03[0-9]{0,2})?([\\x02\\x16\\x1d\\x1f]+)?/g, '');\n}\n/**\n * Does a string mention a nickname?\n * @param {string} input The string to search within\n * @param {string} nick The nick to search for\n */\n\n\nfunction mentionsNick(input, nick) {\n var _context, _context2;\n\n if ((0, _indexOf.default)(_context = input.toLowerCase()).call(_context, nick.toLowerCase()) === -1) {\n return false;\n }\n\n var punc = '\\\\s,.!:;+()\\\\[\\\\]?¿\\\\/<>@-';\n\n var escapedNick = _lodash.default.escapeRegExp(nick);\n\n var stylesStrippedInput = stripStyles(input);\n var r = new RegExp((0, _concat.default)(_context2 = \"(^|[\".concat(punc, \"])\").concat(escapedNick, \"([\")).call(_context2, punc, \"]|$)\"), 'i');\n return r.test(stylesStrippedInput);\n}\n/**\n * Get a query string value from the current URL\n * @param {string} _name The query string variable name\n * @param {string} _url The full URL to extract the variable from\n */\n\n\nfunction queryStringVal(_name, _url) {\n var url = _url || window.location.href;\n\n var name = _lodash.default.escapeRegExp(_name);\n\n var regex = new RegExp('[?&]' + name + '(=([^]*)|&|#|$)');\n var results = regex.exec(url);\n\n if (!results) {\n return null;\n }\n\n if (!results[2]) {\n return '';\n }\n\n return decodeURIComponent(results[2].replace(/\\+/g, ' '));\n}\n/**\n * Convert a known error code to a human readable message\n * @param {string} err The error message from the network connection\n */\n\n\nfunction networkErrorMessage(err) {\n var errs = {\n err_unknown_host: 'Unknown domain name or host',\n err_forbidden: 'Forbidden to connect',\n err_timeout: 'Took too long to connect',\n err_refused: 'The server refused the connection',\n err_tls: 'Could not connect securely',\n err_proxy: 'The Kiwi IRC server had an error'\n };\n return errs[err] || 'Unknown error';\n}\n/**\n * Take a users connection object (usually from startupOptions) and normalise a connection\n * settings object. Parses websocket/direct/kiwiServer/etc options and creates a single\n * object that Kiwi can consistently read from.\n * @param {Object} config User provided connection config object\n */\n\n\nfunction connectionInfoFromConfig(config) {\n var connection = {\n tls: false,\n port: 0,\n hostname: '',\n direct: false,\n direct_path: ''\n };\n var wsUri = config.websocket ? matchUri(config.websocket) : null;\n\n if (wsUri) {\n var _context3;\n\n connection.direct = true;\n connection.tls = (0, _indexOf.default)(_context3 = ['wss', 'https', 'ircs']).call(_context3, wsUri.protocol) > -1;\n connection.port = wsUri.port;\n connection.hostname = wsUri.hostname;\n connection.direct_path = wsUri.path;\n\n if (wsUri.search) {\n connection.direct_path += '?' + wsUri.search;\n }\n } else {\n connection.tls = config.tls;\n connection.port = config.port;\n connection.hostname = config.server;\n connection.direct = !!config.direct;\n connection.direct_path = config.direct_path || '';\n }\n\n return connection;\n}\n\nfunction matchUri(uri) {\n var reg = /(?:([a-z]+):\\/\\/)?([a-z.0-9-]+)(?::(?:(\\+)?([0-9]+)))?(?:\\/([^?]*))?(?:\\?(.*))?/;\n /*\n 0: \"ws://hostname.com:6676/erferf?foo=val\"\n 1: \"ws\"\n 2: \"hostname.com\"\n 3: undefined\n 4: \"6676\"\n 5: \"erferf\"\n 6: \"foo=var\"\n */\n\n var m = uri.match(reg);\n\n if (!m) {\n return null;\n }\n\n return {\n protocol: (m[1] || '').toLowerCase(),\n hostname: m[2] || '',\n port: parseIntZero(m[4] || ''),\n path: '/' + (m[5] || ''),\n search: m[6] || ''\n };\n}\n/**\n * Parse a connection string into an object\n * E.g. [ircs?://]irc.network.net:[+]6667/channel?nick=mynick;\n * Multiple connections may be given, separated by ;\n * @param {string} str The connection string URI\n */\n\n\nfunction parseIrcUri(str) {\n var _context4;\n\n var reg = /(?:(ircs?):\\/\\/)?([a-z.0-9-]+)(?::(?:(\\+)?([0-9]+)))?(?:\\/([^?]*))?(?:\\?(.*))?/;\n var connections = [];\n (0, _forEach.default)(_context4 = str.split(';')).call(_context4, function (connectionString) {\n var _context5, _context6;\n\n if (!connectionString) {\n return;\n }\n\n var m = connectionString.match(reg);\n\n if (!m) {\n return;\n }\n\n var tls = m[1] === 'ircs' || !!m[3];\n var params = (0, _create.default)(null);\n (0, _forEach.default)(_context5 = (m[6] || '').split('&')).call(_context5, function (p) {\n var parts = p.split('=');\n\n if (parts.length === 2) {\n params[parts[0].toLowerCase()] = parts[1];\n }\n });\n var channels = m[5] || params.channel || '';\n channels = (0, _map.default)(_context6 = (0, _lodash.default)(channels.split(',')).compact()).call(_context6, function (_channelName) {\n var hasPrefix = _channelName[0] === '#' || _channelName[0] === '&';\n var channelName = hasPrefix ? _channelName : '#' + _channelName;\n return channelName;\n });\n connections.push({\n tls: tls,\n server: m[2],\n port: (0, _parseInt2.default)(m[4] || (tls ? 6697 : 6667), 10),\n channels: channels,\n nick: params.nick || '',\n encoding: params.encoding || 'utf8',\n params: params\n });\n });\n return connections;\n}\n/**\n * Parse preset server string to an object\n * format: freenode|irc.freenode.net:+6697\n * @param {string} input Preset server string\n */\n\n\nfunction parsePresetServer(input) {\n var ret = {\n name: '',\n server: '',\n port: 6667,\n tls: false\n };\n\n ret.toUri = function () {\n var _context7, _context8;\n\n return (0, _concat.default)(_context7 = (0, _concat.default)(_context8 = \"\".concat(ret.server, \":\")).call(_context8, ret.tls ? '+' : '')).call(_context7, ret.port);\n };\n\n var val = input;\n var pipePos = (0, _indexOf.default)(val).call(val, '|');\n\n if (pipePos > -1) {\n ret.name = val.substr(0, pipePos);\n val = val.substr(pipePos + 1);\n }\n\n var colonPos = (0, _indexOf.default)(val).call(val, ':');\n\n if (colonPos === -1) {\n ret.server = val;\n val = '';\n } else {\n ret.server = val.substr(0, colonPos);\n val = val.substr(colonPos + 1);\n }\n\n if (val[0] === '+') {\n ret.tls = true;\n val = val.substr(1);\n }\n\n if (val.length > 0) {\n ret.port = (0, _parseInt2.default)(val, 10);\n val = '';\n }\n\n if (!ret.name) {\n ret.name = ret.server;\n }\n\n return ret;\n}\n/**\n * Scan though an object and extend any dot notated keys\n * @param {Object} confObj Source object to traverse\n */\n\n\nfunction dedotObject(confObj, _place) {\n var place = _place || [];\n var regex = /\\w\\.\\w/;\n\n _lodash.default.each(confObj, function (val, key) {\n var ourPlace = (0, _concat.default)(place).call(place, [key]);\n\n if ((0, _typeof2.default)(val) === 'object') {\n dedotObject(confObj[key], ourPlace);\n return;\n }\n\n if (regex.test(key)) {\n delete confObj[key];\n\n _lodash.default.set(confObj, ourPlace.join('.'), val);\n }\n });\n}\n/**\n * Replace the target object with source, while keeping the target object reference intact.\n * Delete all the properties from the target object and copy the properties from source\n * over to the target.\n * a = {one: 1, two: 2, three: 3}\n * b = {four: 4, five: 5, six: 6}\n * replaceObjectProps(a, b)\n * a.one === undefined;\n * a.six === 6;\n * @param {Object} target The target object that will be replaced\n * @param {Object} source The source object from which all properties will be copied from\n */\n\n\nfunction replaceObjectProps(target, source) {\n var _context9, _context10;\n\n (0, _forEach.default)(_context9 = (0, _keys.default)(target)).call(_context9, function (prop) {\n return delete target[prop];\n });\n (0, _forEach.default)(_context10 = (0, _keys.default)(source)).call(_context10, function (prop) {\n target[prop] = source[prop];\n });\n}\n/**\n * Create an ISO8601 formatted date\n * @param {Date} date The date object to create the time from. Defaults to the current time\n */\n\n\nfunction dateIso(date) {\n var d = date || new Date();\n return strftimeUTC('%Y-%m-%dT%H:%M:%S.%LZ', d);\n}\n/**\n * Cast a string to an int, returning 0 if it fails\n * @param {String} inp The number as a string to convert to an int\n */\n\n\nfunction parseIntZero(inp) {\n var int = (0, _parseInt2.default)(inp, 10);\n return (0, _isNan.default)(int) ? 0 : int;\n}\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"helpers\"]) window._kiwi_exports[\"helpers\"] = {};\nwindow._kiwi_exports[\"helpers\"][\"Misc\"]\r\nwindow._kiwi_exports.helpers.Misc = exports.default ? exports.default : exports;\r\n","\"use strict\";\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/createClass\"));\n\nvar _eventEmitter = _interopRequireDefault(require(\"event-emitter\"));\n\nvar NetworkProvider = /*#__PURE__*/function () {\n function NetworkProvider() {\n (0, _classCallCheck2.default)(this, NetworkProvider);\n (0, _eventEmitter.default)(this);\n this.providers = [];\n }\n\n (0, _createClass2.default)(NetworkProvider, [{\n key: \"addProvider\",\n value: function addProvider(provider) {\n var _this = this;\n\n this.providers.push(provider);\n provider.on('networks', function (networks) {\n _this.emit('networks', _this.availableNetworks());\n });\n }\n }, {\n key: \"availableNetworks\",\n value: function availableNetworks() {\n var _context;\n\n var networks = (0, _create.default)(null);\n (0, _forEach.default)(_context = this.providers).call(_context, function (provider) {\n var pType = provider.type;\n\n if (provider.networks.length > 0) {\n var _context2;\n\n networks[pType] = networks[pType] || [];\n networks[pType] = (0, _concat.default)(_context2 = networks[pType]).call(_context2, provider.networks);\n }\n });\n return networks;\n }\n }]);\n return NetworkProvider;\n}();\n\nexports.default = NetworkProvider;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"libs\"]) window._kiwi_exports[\"libs\"] = {};\nwindow._kiwi_exports[\"libs\"][\"NetworkProvider\"]\r\nwindow._kiwi_exports.libs.NetworkProvider = exports.default ? exports.default : exports;\r\n","\"use strict\";\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _bind = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/bind\"));\n\nvar _construct = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/reflect/construct\"));\n\nvar _stringify = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/json/stringify\"));\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/createClass\"));\n\nvar _assertThisInitialized2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/assertThisInitialized\"));\n\nvar _inherits2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/inherits\"));\n\nvar _possibleConstructorReturn2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/possibleConstructorReturn\"));\n\nvar _getPrototypeOf2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/getPrototypeOf\"));\n\nvar _eventemitter = _interopRequireDefault(require(\"eventemitter3\"));\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = (0, _construct.default)(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !_construct.default) return false; if (_construct.default.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call((0, _construct.default)(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nvar IpcBroadcastChannel = /*#__PURE__*/function (_EventEmitter) {\n (0, _inherits2.default)(IpcBroadcastChannel, _EventEmitter);\n\n var _super = _createSuper(IpcBroadcastChannel);\n\n function IpcBroadcastChannel() {\n var _context;\n\n var _this;\n\n (0, _classCallCheck2.default)(this, IpcBroadcastChannel);\n _this = _super.call(this);\n _this.bc = new BroadcastChannel('kiwi-ipc');\n _this.bc.onmessage = (0, _bind.default)(_context = _this.onmessage).call(_context, (0, _assertThisInitialized2.default)(_this));\n return _this;\n }\n\n (0, _createClass2.default)(IpcBroadcastChannel, [{\n key: \"send\",\n value: function send(msg) {\n if (this.bc) {\n this.bc.postMessage(msg);\n }\n }\n }, {\n key: \"onmessage\",\n value: function onmessage(msg) {\n this.emit('message', msg);\n }\n }]);\n return IpcBroadcastChannel;\n}(_eventemitter.default);\n\nvar IpcLocalStorage = /*#__PURE__*/function (_EventEmitter2) {\n (0, _inherits2.default)(IpcLocalStorage, _EventEmitter2);\n\n var _super2 = _createSuper(IpcLocalStorage);\n\n function IpcLocalStorage() {\n var _context2;\n\n var _this2;\n\n (0, _classCallCheck2.default)(this, IpcLocalStorage);\n _this2 = _super2.call(this);\n window.addEventListener('storage', (0, _bind.default)(_context2 = _this2.onmessage).call(_context2, (0, _assertThisInitialized2.default)(_this2)));\n return _this2;\n }\n\n (0, _createClass2.default)(IpcLocalStorage, [{\n key: \"send\",\n value: function send(msg) {\n localStorage.setItem('kiwi-ipc', (0, _stringify.default)(msg));\n localStorage.removeItem('kiwi-ipc');\n }\n }, {\n key: \"onmessage\",\n value: function onmessage(msg) {\n if (msg.key === 'kiwi-ipc' && msg.newValue) {\n try {\n var parsedMsg = {\n data: JSON.parse(msg.newValue)\n };\n this.emit('message', parsedMsg);\n } catch (e) {\n this.emit('error');\n }\n }\n }\n }]);\n return IpcLocalStorage;\n}(_eventemitter.default);\n\nvar _default = window.BroadcastChannel ? new IpcBroadcastChannel() : new IpcLocalStorage();\n\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"libs\"]) window._kiwi_exports[\"libs\"] = {};\nwindow._kiwi_exports[\"libs\"][\"IPC\"]\r\nwindow._kiwi_exports.libs.IPC = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarAboutBuffer.vue?vue&type=style&index=0&lang=less&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./SidebarAboutBuffer.vue?vue&type=style&index=0&lang=less&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _typeof = require(\"@babel/runtime-corejs3/helpers/typeof\");\n\nvar _WeakMap = require(\"@babel/runtime-corejs3/core-js-stable/weak-map\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _Object$getOwnPropertyDescriptor = require(\"@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _flags = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/flags\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _filter = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/filter\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _setTimeout2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-timeout\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar Misc = _interopRequireWildcard(require(\"@/helpers/Misc\"));\n\nvar bufferTools = _interopRequireWildcard(require(\"@/libs/bufferTools\"));\n\nvar _BufferSettings = _interopRequireDefault(require(\"./BufferSettings\"));\n\nvar _StateBrowserBuffer = _interopRequireDefault(require(\"./StateBrowserBuffer\"));\n\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== \"function\") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\n\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nvar _default = {\n components: {\n BufferSettings: _BufferSettings.default,\n Buffer: _StateBrowserBuffer.default\n },\n props: ['network', 'sidebarState'],\n data: function data() {\n return {\n collapsed: false,\n channel_filter: '',\n channel_filter_display: false,\n channel_add_display: false,\n channel_add_input_has_focus: false,\n channel_add_input: '',\n show_channels: true,\n show_queries: true\n };\n },\n computed: {\n serverBuffer: function serverBuffer() {\n return this.network.serverBuffer();\n },\n isActiveNetwork: function isActiveNetwork() {\n return this.$state.getActiveNetwork() === this.network;\n },\n totalNetworkCount: function totalNetworkCount() {\n return this.$state.networks.length;\n },\n serverUnread: function serverUnread() {\n var _context;\n\n if (!this.collapsed) {\n return (0, _flags.default)(this.serverBuffer).unread;\n }\n\n var totalUnread = 0;\n (0, _forEach.default)(_context = this.network.buffers).call(_context, function (buffer) {\n if (buffer.isSpecial()) {\n return;\n }\n\n totalUnread += (0, _flags.default)(buffer).unread;\n });\n return totalUnread;\n },\n serverHighlight: function serverHighlight() {\n var _context2;\n\n if (!this.collapsed) {\n return (0, _flags.default)(this.serverBuffer).highlight;\n }\n\n var highlight = false;\n (0, _forEach.default)(_context2 = this.network.buffers).call(_context2, function (buffer) {\n if (buffer.isSpecial()) {\n return;\n }\n\n if ((0, _flags.default)(buffer).highlight) {\n highlight = true;\n }\n });\n return highlight;\n },\n filteredBuffers: function filteredBuffers() {\n var filter = this.channel_filter;\n var filtered = [];\n\n if (!filter) {\n filtered = this.network.buffers;\n } else {\n filtered = (0, _filter.default)(_lodash.default).call(_lodash.default, this.network.buffers, function (buffer) {\n var name = buffer.name.toLowerCase();\n return (0, _indexOf.default)(name).call(name, filter) > -1;\n });\n }\n\n return bufferTools.orderBuffers(filtered);\n },\n filteredBuffersByType: function filteredBuffersByType() {\n var _context3;\n\n var ret = {\n other: [],\n channels: [],\n queries: []\n };\n (0, _forEach.default)(_context3 = this.filteredBuffers).call(_context3, function (bufferObj) {\n if (bufferObj.isChannel()) {\n ret.channels.push(bufferObj);\n } else if (bufferObj.isQuery()) {\n ret.queries.push(bufferObj);\n } else {\n // This is buffers like *raw, *bnc, *status etc\n ret.other.push(bufferObj);\n }\n });\n return ret;\n },\n channelActivity: function channelActivity() {\n return this.activityFromBuffers(this.filteredBuffersByType.channels);\n },\n queryActivity: function queryActivity() {\n return this.activityFromBuffers(this.filteredBuffersByType.queries);\n },\n showBufferGroups: function showBufferGroups() {\n return this.$state.setting('buffers.show_buffer_groups');\n }\n },\n methods: {\n activityFromBuffers: function activityFromBuffers(buffers) {\n var totalUnread = 0;\n var highlight = false;\n (0, _forEach.default)(buffers).call(buffers, function (buffer) {\n if (buffer.isSpecial()) {\n return;\n }\n\n totalUnread += (0, _flags.default)(buffer).unread;\n\n if (!highlight && (0, _flags.default)(buffer).highlight) {\n highlight = true;\n }\n });\n return {\n highlights: highlight,\n unread: totalUnread\n };\n },\n onNewChannelInputFocus: function onNewChannelInputFocus() {\n // Auto insert the # if no value is already in. Easier for mobile users\n if (!this.channel_add_input) {\n this.channel_add_input = '#';\n }\n\n this.channel_add_input_has_focus = true;\n },\n onNewChannelInputBlur: function onNewChannelInputBlur() {\n // Remove the # since we may have auto inserted it as they tabbed past\n if (this.channel_add_input === '#') {\n this.channel_add_input = '';\n } // If nothing was entered into the input box, hide it just to clean up the UI\n\n\n if (!this.channel_add_input) {\n this.channel_add_display = false;\n }\n\n this.channel_add_input_has_focus = false;\n },\n submitNewChannelForm: function submitNewChannelForm() {\n var _this = this;\n\n var newChannelVal = this.channel_add_input;\n this.channel_add_input = '#';\n var network = this.network;\n var bufferObjs = Misc.extractBuffers(newChannelVal); // Only switch to the first channel we join if multiple are being joined\n\n var hasSwitchedActiveBuffer = false;\n (0, _forEach.default)(bufferObjs).call(bufferObjs, function (bufferObj) {\n var chanName = bufferObj.name;\n var ignoreNames = ['#0', '0', '&0'];\n\n if ((0, _indexOf.default)(ignoreNames).call(ignoreNames, chanName) > -1 || chanName.replace(/[#&]/g, '') === '') {\n return;\n }\n\n var newBuffer = _this.$state.addBuffer(network.id, chanName);\n\n if (newBuffer && !hasSwitchedActiveBuffer) {\n _this.$state.setActiveBuffer(network.id, newBuffer.name);\n\n hasSwitchedActiveBuffer = true;\n }\n\n if (bufferObj.key) {\n newBuffer.key = bufferObj.key;\n }\n\n if (network.isChannelName(chanName)) {\n network.ircClient.join(chanName, bufferObj.key);\n }\n });\n },\n onChannelFilterInputBlur: function onChannelFilterInputBlur() {\n var _this2 = this;\n\n // Hacky, but if we remove the channel filter UI at this blur event and the user\n // clicked a link in this filter UI, then the click event will not hit the target\n // link as it has been removed before the event reaches it.\n (0, _setTimeout2.default)(function () {\n _this2.closeFilterChannel();\n }, 200);\n },\n showMessageCounts: function showMessageCounts(buffer) {\n return !buffer.setting('hide_message_counts');\n },\n setActiveBuffer: function switchContainer(buffer) {\n // Clear any active component to show the buffer again\n this.$state.$emit('active.component', null);\n this.$state.setActiveBuffer(buffer.networkid, buffer.name);\n\n if (this.$state.ui.is_narrow) {\n this.$state.$emit('statebrowser.hide');\n }\n },\n showNetworkSettings: function showNetworkSettings(network) {\n network.showServerBuffer('settings');\n },\n showNetworkChannels: function showNetworkChannels(network) {\n network.showServerBuffer('channels');\n },\n onSearchChannelClick: function onSearchChannelClick() {\n // If we have no other buffers than the server buffer, take them straight\n // to the channel list for searching\n if (this.network.buffers.length > 1) {\n this.toggleFilterChannel();\n } else {\n this.network.showServerBuffer('channels');\n }\n },\n toggleAddChannel: function toggleAddChannel() {\n this.channel_add_display = !this.channel_add_display;\n this.channel_filter_display = false;\n },\n toggleFilterChannel: function toggleFilterChannel() {\n this.channel_filter_display = !this.channel_filter_display;\n this.channel_add_display = false;\n },\n toggleSection: function toggleSection(type) {\n if (type === 'channels') {\n this.show_channels = !this.show_channels;\n } else if (type === 'queries') {\n this.show_queries = !this.show_queries;\n }\n },\n closeFilterChannel: function closeFilterChannel() {\n this.channel_filter = '';\n this.channel_filter_display = false;\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"StateBrowserNetwork\"]\r\nwindow._kiwi_exports.components.StateBrowserNetwork = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Container.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Container.vue?vue&type=style&index=0&lang=css&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\nvar _default = {\n components: {},\n props: ['buffer', 'message'],\n data: function data() {\n return {\n requestingInput: false\n };\n },\n computed: {},\n methods: {\n urlPreview: function urlPreview(url) {\n this.$state.$emit('mediaviewer.show', url);\n },\n areWeAnOp: function areWeAnOp() {\n var ourNick = this.buffer.getNetwork().nick;\n return this.buffer.isUserAnOp(ourNick);\n },\n isSelf: function isSelf() {\n var user = this.$state.getUser(this.buffer.getNetwork().id, this.message.nick);\n return this.buffer.getNetwork().ircClient.user.nick === user.nick;\n },\n onBan: function onBan(reason) {\n var network = this.buffer.getNetwork();\n network.ircClient.mode(this.buffer.name, '+b', this.message.nick);\n },\n onKick: function onKick(promptedReason) {\n var network = this.buffer.getNetwork();\n var defaultReason = this.$state.setting('buffers.default_kick_reason');\n var reason = promptedReason || defaultReason;\n network.ircClient.raw('KICK', this.buffer.name, this.message.nick, reason);\n },\n openQuery: function openQuery() {\n var network = this.buffer.getNetwork();\n var buffer = this.$state.addBuffer(network.id, this.message.nick);\n this.$state.setActiveBuffer(network.id, buffer.name);\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"MessageInfo\"]\r\nwindow._kiwi_exports.components.MessageInfo = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NetworkSettings.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../build/webpack/exports-loader.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./NetworkSettings.vue?vue&type=script&lang=js&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-container\",class:{\n /* 'kiwi-container-' + bufferType: true, */\n 'kiwi-container--sidebar-drawn': _vm.sidebarState.isDrawn,\n 'kiwi-container--sidebar-open': _vm.sidebarState.isOpen,\n 'kiwi-container--no-sidebar': _vm.buffer && _vm.buffer.isSpecial,\n}},[(_vm.buffer)?[_c('div',{staticClass:\"kiwi-container-toggledraw-statebrowser\",on:{\"click\":function($event){$event.stopPropagation();return _vm.toggleStateBrowser($event)}}},[_c('div',{staticClass:\"kiwi-container-toggledraw-statebrowser-messagecount\",class:[\n _vm.unreadMessages.highlight ?\n 'kiwi-container-toggledraw-statebrowser-messagecount--highlight' :\n '' ]},[_c('span',{staticClass:\"kiwi-container-statebrowser-messagecount-alert\"},[_vm._v(\" \"+_vm._s(_vm.unreadMessages.count > 999 ? '999+' : _vm.unreadMessages.count)+\" \")]),_vm._m(0)])]),_c('container-header',{attrs:{\"buffer\":_vm.buffer,\"sidebar-state\":_vm.sidebarState}}),_vm._t(\"before\"),(_vm.buffer.getNetwork().state !== 'connected' && !_vm.buffer.isServer())?_c('not-connected',{attrs:{\"buffer\":_vm.buffer,\"network\":_vm.buffer.getNetwork()}}):_vm._e(),_c('div',{staticClass:\"kiwi-container-content\"},[(_vm.buffer.isServer())?[_c('server-view',{attrs:{\"network\":_vm.network}})]:[_c('message-list',{attrs:{\"buffer\":_vm.buffer}}),(!_vm.buffer.isSpecial())?_c('sidebar',{attrs:{\"network\":_vm.network,\"buffer\":_vm.buffer,\"sidebar-state\":_vm.sidebarState}}):_vm._e()],_vm._t(\"after\")],2)]:[_c('div',{staticClass:\"kiwi-container-empty\"},[_c('h4',[_vm._v(_vm._s(_vm.$t('container_welcome')))]),_c('a',{staticClass:\"u-button\",on:{\"click\":function($event){$event.stopPropagation();return _vm.toggleStateBrowser($event)}}},[_vm._v(\" \"+_vm._s(_vm.$t('container_statebrowser'))+\" \")])])]],2)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',{staticClass:\"kiwi-container-statebrowser-messagecount-close\"},[_c('i',{staticClass:\"fa fa-times\",attrs:{\"aria-hidden\":\"true\"}})])}]\n\nexport { render, staticRenderFns }","var render, staticRenderFns\nimport script from \"./SidebarState.vue?vue&type=script&lang=js&\"\nexport * from \"./SidebarState.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar Vue = require('vue');\n\nVue.component('tabbed-tab', {\n props: {\n header: {\n status: String\n },\n focus: {\n status: Boolean\n },\n name: {\n status: String\n }\n },\n data: function data() {\n return {\n active: false\n };\n },\n template: 'Some quick examples on how you can link directly to your network or channels. Even better, embed them into an iframe directly on your website.
As a bonus, you can link to multiple IRC networks at the same time:
Or maybe you host a ZNC server and want to link to it:
All your settings and networks will be remembered for when you come back. You won't need to be re-entering your favourite networks every time you open Kiwi anymore.
Now that over 50% of internet usage is now on mobile, Kiwi has complete mobile support with new layouts and messages. Everything is accessible with just your fingers.
Opening photos and videos within Kiwi now gets pinned at the bottom of the screen. This lets you switch channels, keep talking without it going off-screen, and have that permenant youtube video playing while you're talking.
When connecting to a ZNC server, Kiwi will now automatically detect it and look for any other networks in your ZNC account. If any are found then they are shown in a list - just one click away from connecting to it.
A full alias editor to create command aliases to handle users in your channel, administrate your network or project, or even join multiple commands into a single helpful command. Created by a simple text editor that lets you copy/paste/share your aliases wherever you please.
If you're a power IRC user or like to get indepth, Kiwi now uses the raw IRC protocol directly in the browser. Look at the raw IRC messages going back and forth, send raw commands, or use it's scripting to test out new protocol ideas and experiments.
IRC is being pushed forward by the IRCv3 working group which brings us new features that any IRC client can be using. Not only taking part, but Kiwi is one of the most IRCv3 complete web clients that exists.
\";\n// Exports\nmodule.exports = code;","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-serverview\"},[_c('div',{staticClass:\"kiwi-serverview-inner\"},[_c('tabbed-view',{key:_vm.network.id,ref:\"tabs\",on:{\"changed\":_vm.tabChanged}},[_c('tabbed-tab',{attrs:{\"header\":_vm.$t('messages'),\"focus\":_vm.hasMessages,\"name\":\"messages\"}},[_c('message-list',{attrs:{\"buffer\":_vm.serverBuffer}})],1),(!_vm.restrictedServer)?_c('tabbed-tab',{attrs:{\"header\":_vm.$t('settings'),\"focus\":!_vm.hasMessages,\"name\":\"settings\"}},[_c('network-settings',{attrs:{\"network\":_vm.network}})],1):_vm._e(),(_vm.networkConnected)?_c('tabbed-tab',{attrs:{\"header\":_vm.$t('channels'),\"name\":\"channels\"}},[_c('channel-list',{attrs:{\"network\":_vm.network}})],1):_vm._e(),_vm._l((_vm.pluginUiElements),function(item){return _c('tabbed-tab',{key:item.id,attrs:{\"header\":item.title}},[_c(item.component,_vm._b({tag:\"div\"},'div',item.props,false))],1)})],2)],1)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Welcome.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Welcome.vue?vue&type=style&index=0&lang=css&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\n\nvar _filter = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/filter\"));\n\nvar _NetworkProvider = _interopRequireDefault(require(\"@/libs/NetworkProvider\"));\n\nvar _GlobalApi = _interopRequireDefault(require(\"@/libs/GlobalApi\"));\n\nvar _StateBrowserNetwork = _interopRequireDefault(require(\"./StateBrowserNetwork\"));\n\nvar _StateBrowserUsermenu = _interopRequireDefault(require(\"./StateBrowserUsermenu\"));\n\nvar _AppSettings = _interopRequireDefault(require(\"./AppSettings\"));\n\nvar _BufferSettings = _interopRequireDefault(require(\"./BufferSettings\"));\n\nvar netProv = new _NetworkProvider.default();\nvar _default = {\n components: {\n BufferSettings: _BufferSettings.default,\n StateBrowserNetwork: _StateBrowserNetwork.default,\n StateBrowserUsermenu: _StateBrowserUsermenu.default\n },\n props: ['networks', 'sidebarState'],\n data: function data() {\n return {\n show_provided_networks: false,\n provided_networks: (0, _create.default)(null),\n pluginUiElements: _GlobalApi.default.singleton().stateBrowserPlugins\n };\n },\n computed: {\n getNetwork: function getNetwork() {\n return this.$state.getActiveNetwork();\n },\n isPersistingState: function isPersistingState() {\n return !!this.$state.persistence;\n },\n isRestrictedServer: function isRestrictedServer() {\n return !!this.$state.settings.restricted;\n },\n networksToShow: function networksToShow() {\n var _context;\n\n return (0, _filter.default)(_context = this.networks).call(_context, function (net) {\n return !net.hidden;\n });\n }\n },\n created: function created() {\n var _this = this;\n\n netProv.on('networks', function (networks) {\n _this.provided_networks = networks;\n });\n },\n methods: {\n clickAddNetwork: function clickAddNetwork() {\n var nick = 'Guest' + Math.floor(Math.random() * 100);\n var network = this.$state.getNetworkFromAddress('');\n\n if (typeof network === 'undefined') {\n network = this.$state.addNetwork('Network', nick, {});\n }\n\n network.showServerBuffer('settings');\n },\n clickAppSettings: function clickAppSettings() {\n this.$state.$emit('active.component.toggle', _AppSettings.default);\n },\n hideStatebrowser: function hideStatebrowser() {\n this.$state.$emit('statebrowser.hide');\n },\n connectProvidedNetwork: function connectProvidedNetwork(pNet) {\n var net = this.$state.addNetwork(pNet.name, pNet.nick, {\n server: pNet.server,\n port: pNet.port,\n tls: pNet.tls,\n password: pNet.password\n });\n net.ircClient.connect();\n }\n }\n};\nexports.default = _default;\r\nwindow._kiwi_exports = window._kiwi_exports || {};\r\nif(!window._kiwi_exports[\"components\"]) window._kiwi_exports[\"components\"] = {};\nwindow._kiwi_exports[\"components\"][\"StateBrowser\"]\r\nwindow._kiwi_exports.components.StateBrowser = exports.default ? exports.default : exports;\r\n","import mod from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextStyle.vue?vue&type=style&index=0&lang=less&\"; export default mod; export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--10-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--10-oneOf-1-2!../../../node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../build/webpack/exports-loader.js!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./TextStyle.vue?vue&type=style&index=0&lang=less&\"","import { render, staticRenderFns } from \"./UserBox.vue?vue&type=template&id=e1f770aa&\"\nimport script from \"./UserBox.vue?vue&type=script&lang=js&\"\nexport * from \"./UserBox.vue?vue&type=script&lang=js&\"\nimport style0 from \"./UserBox.vue?vue&type=style&index=0&lang=less&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-settings-advanced\"},[_c('div',{staticClass:\"kiwi-settings-advanced-notice\"},[_vm._v(_vm._s(_vm.$t('settings_advanced_header')))]),_c('form',{staticClass:\"u-form\"},[_c('div',{staticClass:\"kiwi-settings-advanced-filter-container\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.filterString),expression:\"filterString\"}],staticClass:\"u-input\",attrs:{\"placeholder\":_vm.$t('settings_advanced_filter')},domProps:{\"value\":(_vm.filterString)},on:{\"input\":function($event){if($event.target.composing){ return; }_vm.filterString=$event.target.value}}}),(!_vm.filterString)?_c('i',{staticClass:\"fa fa-search\",attrs:{\"aria-hidden\":\"true\"}}):_c('i',{staticClass:\"fa fa-times\",attrs:{\"aria-hidden\":\"true\"},on:{\"click\":function($event){_vm.filterString = ''}}})]),_c('table',{staticClass:\"u-table kiwi-settings-advanced-table\",attrs:{\"cellspacing\":\"0\"}},[(_vm.filteredSettings.length === 0)?_c('tr',[_c('td',{staticClass:\"kiwi-settings-advanced-noresult\"},[_vm._v(\" \"+_vm._s(_vm.filterString)+\" - \"+_vm._s(_vm.$t('not_found'))+\" \")])]):_vm._l((_vm.filteredSettings),function(setting){return _c('tr',{key:setting.key,class:{'kiwi-advanced-setting': !setting.modified,\n 'kiwi-advanced-setting--modified': setting.modified,\n }},[_c('td',[_c('label',{attrs:{\"for\":'setting-' + setting.key}},[_vm._v(_vm._s(setting.key))])]),(setting.modified)?_c('td',[_c('a',{staticClass:\"u-link\",on:{\"click\":function($event){return _vm.resetValue($event, setting.key)}}},[_vm._v(\" \"+_vm._s(_vm.$t('settings_advanced_reset'))+\" \"),_c('i',{staticClass:\"fa fa-undo\",staticStyle:{\"margin-left\":\"10px\"}})])]):_c('td'),_c('td',[(setting.type === 'boolean')?_c('input',{attrs:{\"id\":'setting-' + setting.key,\"type\":\"checkbox\"},domProps:{\"checked\":setting.val},on:{\"change\":function($event){return _vm.updateSetting($event, setting.key)}}}):(setting.type === 'number')?_c('input',{staticClass:\"u-input\",attrs:{\"id\":'setting-' + setting.key,\"type\":\"number\"},domProps:{\"value\":setting.val},on:{\"keydown\":function($event){if(!$event.type.indexOf('key')&&$event.keyCode!==13){ return null; }return $event.target.blur()},\"change\":function($event){return _vm.updateSetting($event, setting.key)},\"blur\":function($event){return _vm.updateSetting($event, setting.key)}}}):_c('input',{staticClass:\"u-input\",attrs:{\"id\":'setting-' + setting.key},domProps:{\"value\":setting.val},on:{\"keydown\":function($event){if(!$event.type.indexOf('key')&&$event.keyCode!==13){ return null; }return $event.target.blur()},\"blur\":function($event){return _vm.updateSetting($event, setting.key)}}})])])})],2)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import mod from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LoadingAnimation.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../build/webpack/exports-loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./LoadingAnimation.vue?vue&type=style&index=0&lang=css&\"","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _typeof = require(\"@babel/runtime-corejs3/helpers/typeof\");\n\nvar _WeakMap = require(\"@babel/runtime-corejs3/core-js-stable/weak-map\");\n\nvar _Object$defineProperty = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\nvar _Object$getOwnPropertyDescriptor = require(\"@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\n_Object$defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nexports.default = void 0;\n\nvar _toConsumableArray2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/toConsumableArray\"));\n\nvar _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\n\nvar _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _setTimeout2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-timeout\"));\n\nvar _parseInt2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/parse-int\"));\n\nvar _filter = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/filter\"));\n\nvar _values = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/values\"));\n\nvar _lastIndexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/last-index-of\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar htmlparser = _interopRequireWildcard(require(\"htmlparser2\"));\n\nvar Colours = _interopRequireWildcard(require(\"@/helpers/Colours\"));\n\nvar Misc = _interopRequireWildcard(require(\"@/helpers/Misc\"));\n\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== \"function\") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\n\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nvar Vue = require('vue');\n\nvar _default = Vue.component('irc-input', {\n props: ['placeholder'],\n data: function data() {\n return {\n last_known_value: '',\n text_value: '',\n current_el: null,\n current_el_pos: 0,\n default_colour: null,\n code_map: (0, _create.default)(null)\n };\n },\n computed: {\n editor: function editor() {\n return this.$refs.editor;\n }\n },\n mounted: function mounted() {\n this.resetStyles();\n },\n methods: {\n onTextInput: function onTextInput(event) {\n // Mobile devices trigger a textInput event for things such as autocompletion\n // and suggested words. Unfortunately they end with a return character which\n // is not what we expect, so prevent the original event from inserting anything\n // and manually place it in with the current word.\n if (event.data[event.data.length - 1] === '\\n') {\n var _context;\n\n event.preventDefault();\n this.setCurrentWord((0, _trim.default)(_context = event.data).call(_context));\n }\n },\n onPaste: function onPaste(event) {\n var _this = this;\n\n event.preventDefault();\n\n if (typeof event.clipboardData !== 'undefined') {\n var _context2;\n\n var ignoreThisPaste = false;\n var clpData = event.clipboardData;\n (0, _forEach.default)(_context2 = clpData.types).call(_context2, function (type) {\n var ignoreTypes = ['Files', 'image'];\n (0, _forEach.default)(ignoreTypes).call(ignoreTypes, function (ig) {\n if ((0, _indexOf.default)(type).call(type, ig) > -1) {\n ignoreThisPaste = true;\n }\n });\n });\n\n if (ignoreThisPaste) {\n return;\n }\n\n document.execCommand('insertText', false, clpData.getData('text/plain'));\n } else {\n // IE11\n var clpText = window.clipboardData.getData('Text');\n\n if (!clpText) {\n return;\n }\n\n var selection = window.getSelection();\n var range = selection.getRangeAt(0);\n\n if (range) {\n range.deleteContents();\n range.insertNode(document.createTextNode(clpText));\n }\n }\n\n (0, _setTimeout2.default)(function () {\n _this.updateValueProps();\n }, 0);\n },\n onFocus: function onFocus(event) {\n // when the input is empty there are no children to remember the current colour\n // so upon regaining focus we must set the current colour again\n if (!this.getRawText() && this.default_colour) {\n this.setColour(this.default_colour.code, this.default_colour.colour);\n }\n\n this.$emit('focus', event);\n },\n updateValueProps: function updateValueProps() {\n var selection = window.getSelection();\n\n if (selection.rangeCount === 0) {\n return;\n }\n\n this.current_el_pos = selection.anchorOffset;\n this.current_el = selection.anchorNode;\n this.maybeEmitInput();\n },\n selectionToEnd: function selectionToEnd() {\n // Move the caret to the end\n var el = this.$refs.editor.lastChild || this.$refs.editor;\n this.current_el = el;\n\n if (el.nodeType === 3) {\n this.current_el_pos = el.length;\n } else {\n this.current_el_pos = 0;\n }\n },\n setValue: function setValue(newVal) {\n this.value = newVal;\n this.$refs.editor.innerHTML = newVal;\n },\n getValue: function getValue() {\n return this.$refs.editor.innerHTML;\n },\n maybeEmitInput: function maybeEmitInput() {\n var currentHtml = this.$refs.editor.innerHTML;\n\n if (this.last_known_value !== currentHtml) {\n this.$emit('input', currentHtml);\n this.last_known_value = currentHtml;\n }\n },\n buildIrcText: function buildIrcText() {\n var _this2 = this,\n _context6;\n\n var source = this.$refs.editor.innerHTML;\n var textValue = ''; // Toggles are IRC style and colour codes that should be reset at the end of\n // the current tag\n\n var toggles = [];\n\n function addToggle(t) {\n toggles[toggles.length - 1] += t;\n }\n\n function getToggles() {\n return toggles[toggles.length - 1];\n }\n\n var parser = new htmlparser.Parser({\n onopentag: function onopentag(name, attribs) {\n toggles.push('');\n var codeLookup = '';\n\n if (attribs.style) {\n var _context3, _context4, _context5;\n\n var match = attribs.style.match(/color: ([^;]+)/);\n\n if (match) {\n codeLookup = match[1];\n var mappedCode = _this2.code_map[codeLookup];\n\n if (!mappedCode) {\n // If we didn't have an IRC code for this colour, convert the\n // colour to its hex form and check if we have that instead\n var m = codeLookup.match(/^rgb\\((\\d+),\\s*(\\d+),\\s*(\\d+)\\)$/);\n\n if (m) {\n var hex = Colours.rgb2hex({\n r: (0, _parseInt2.default)(m[1], 10),\n g: (0, _parseInt2.default)(m[2], 10),\n b: (0, _parseInt2.default)(m[3], 10)\n });\n mappedCode = _this2.code_map[hex];\n }\n }\n\n if (mappedCode) {\n textValue += '\\x03' + mappedCode;\n addToggle('\\x03' + mappedCode);\n }\n }\n\n if ((0, _indexOf.default)(_context3 = attribs.style).call(_context3, 'bold') > -1) {\n textValue += '\\x02';\n addToggle('\\x02');\n }\n\n if ((0, _indexOf.default)(_context4 = attribs.style).call(_context4, 'italic') > -1) {\n textValue += '\\x1d';\n addToggle('\\x1d');\n }\n\n if ((0, _indexOf.default)(_context5 = attribs.style).call(_context5, 'underline') > -1) {\n textValue += '\\x1f';\n addToggle('\\x1f');\n } // Welcome to the IE/Edge sucks section, time to do crazy things\n // IE11 doesnt support document.execCommand('styleWithCSS')\n // so we have individual nodes instead, which are handled below\n\n } else if (attribs.color) {\n // IE likes to remove spaces from rgb(1, 2, 3)\n // it also likes converting rgb to hex\n var _mappedCode = _this2.code_map[attribs.color] || _this2.code_map[attribs.color.replace(/,/g, ', ')] || _this2.code_map[Colours.hex2rgb(attribs.color)];\n\n if (_mappedCode) {\n textValue += '\\x03' + _mappedCode;\n addToggle('\\x03' + _mappedCode);\n }\n } else if (name === 'strong') {\n textValue += '\\x02';\n addToggle('\\x02');\n } else if (name === 'em') {\n textValue += '\\x1d';\n addToggle('\\x1d');\n } else if (name === 'u') {\n textValue += '\\x1f';\n addToggle('\\x1f');\n } else if (name === 'div' || name === 'br') {\n // divs and breaks are both considered newlines. For each line we need to\n // close all current toggles and then reopen them for the next so that the\n // styles continue .\n textValue += getToggles();\n textValue += '\\n';\n textValue += getToggles();\n }\n\n if (attribs.src && _this2.code_map[attribs.src]) {\n textValue += _this2.code_map[attribs.src];\n }\n },\n ontext: function ontext(text) {\n textValue += text;\n },\n onclosetag: function onclosetag(tagName) {\n textValue += getToggles();\n toggles.pop();\n }\n }, {\n decodeEntities: true\n });\n parser.write(source);\n parser.end(); // Firefox likes to add