{"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/startups/CustomServer.vue?2bdd","webpack:///./src/components/Avatar.vue?021a","webpack:///./src/components/utils/InputConfirm.vue?7413","webpack:///./src/components/startups/ZncLogin.vue?8e48","webpack:///./src/components/utils/IrcInput.vue?3e92","webpack:///./src/components/MessageList.vue?c608","webpack:///./src/thirdparty/kiwiirccom.vue?7d18","webpack:///./src/libs/MessageFormatter.js","webpack:///./src/components/utils/InputPrompt.vue?c051","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?961d","webpack:///./src/components/utils/InputText.vue?d4fa","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?0802","webpack:///./src/libs/ThemeManager.js","webpack:///./src/components/utils/InputConfirm.vue?26e8","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?071d","webpack:///./src/components/MessageInfo.vue?5c1d","webpack:///./src/components/AwayStatusIndicator.vue?b9aa","webpack:///./src/components/NotConnected.vue?f890","webpack:///./src/components/NicklistUser.vue?04de","webpack:///./src/components/TypingUsersList.vue?e190","webpack:///./src/components/startups/CommonLayout.vue?c656","webpack:///./src/thirdparty/kiwiirccom.vue?938e","webpack:///./src/components/utils/IrcInput.vue?fdcf","webpack:///./src/components/StateBrowser.vue?b090","webpack:///./src/components/ChannelInfo.vue?d5f6","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/ControlInput.vue?f591","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?2ff4","webpack:///./src/components/StartupError.vue?2645","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/components/utils/IrcInput.vue?ffa7","webpack:///./src/components/AutoComplete.vue?860a","webpack:///./src/libs/batchedAdd.js","webpack:///./src/thirdparty/index.js","webpack:///./src/components/TypingUsersList.vue?36ee","webpack:///./src/components/startups/Welcome.vue?5dde","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/Avatar.vue?eabd","webpack:///./src/components/LoadingAnimation.vue?028b","webpack:///./src/components/ContainerHeader.vue?a8e3","webpack:///./src/components/ChannelBanlist.vue?5e05","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/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?16db","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/UserBox.vue?810e","webpack:///./src/components/StartupError.vue?f239","webpack:///./src/components/NotConnected.vue?a936","webpack:///./src/thirdparty/kiwiirccom.vue?7677","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/StateBrowser.vue?8c18","webpack:///./src/components/startups/CommonLayout.vue?b4ed","webpack:///./src/components/LoadingAnimation.vue?a8d8","webpack:///./src/components/Nicklist.vue?9832","webpack:///./src/components/ChannelList.vue?d54e","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/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?acd9","webpack:///./src/components/App.vue?0284","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/TypingUsersList.vue?5fa8","webpack:///./src/components/NicklistUser.vue?de0f","webpack:///./src/components/ServerSelector.vue?d3f6","webpack:///./src/components/Sidebar.vue?3095","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?e783","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?c486","webpack:///./src/components/Captcha.vue?c6e9","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?91df","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?1098","webpack:///./src/components/utils/TabbedView.vue?0722","webpack:///./src/libs/ChathistoryMiddleware.js","webpack:///./src/components/SidebarAboutBuffer.vue?2808","webpack:///./src/components/MessageInfo.vue?2118","webpack:///./src/components/SelfUser.vue?c7e9","webpack:///./src/components/MessageListMessageModern.vue?f965","webpack:///./src/components/utils/InputPrompt.vue?60ce","webpack:///./src/components/startups/Personal.vue?1fa3","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?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/ControlInput.vue?a75e","webpack:///./src/components/Avatar.vue?7f0d","webpack:///./src/libs/state/UserState.js","webpack:///./src/components/StateBrowserUsermenu.vue?278f","webpack:///./src/components/startups/CustomServer.vue?d1f0","webpack:///./src/components/startups/Personal.vue?8c27","webpack:///./src/components/startups/CommonLayout.vue?6bff","webpack:///./src/components/NicklistUser.vue?0319","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?a1e7","webpack:///./src/components/StateBrowserNetwork.vue?4486","webpack:///./src/libs/Message.js","webpack:///./src/components/MediaViewer.vue?39d1","webpack:///./src/components/MessageListMessageModern.vue?0c2d","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/MessageListMessageCompact.vue?cc3a","webpack:///./src/components/SelfUser.vue?50cf","webpack:///./src/libs/SoundBleep.js","webpack:///./src/components/AppSettings.vue?f4b9","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?5b62","webpack:///./src/components/SettingsAdvanced.vue?f320","webpack:///./src/components/MessageListMessageInline.vue?9b2b","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/ContainerHeader.vue?f4b3","webpack:///./src/components/Container.vue?3c20","webpack:///./src/components/startups/CustomServer.vue?5e89","webpack:///./src/components/ControlInput.vue?7f8f","webpack:///./src/components/ContainerHeader.vue?64d0","webpack:///./src/thirdparty/about.html","webpack:///./src/components/ServerView.vue?e712","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?ffc5","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/MessageListMessageCompact.vue?93f6","webpack:///./src/components/Sidebar.vue?274a","webpack:///./src/components/startups/Welcome.vue?410d","webpack:///./src/components/Avatar.vue?21c4","webpack:///./src/components/TypingStatusIndicator.vue?5d4b","webpack:///./src/libs/AudioManager.js","webpack:///./src/components/inputtools/Emoji.vue?c1e1","webpack:///./src/libs/InputHandler.js","webpack:///./src/components/TypingStatusIndicator.vue","webpack:///./src/libs/MessageParser.js","webpack:///./src/components/ChannelInvitelist.vue?f03f","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/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/App.vue?5f5a","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/App.vue?10ef","webpack:///./src/components/startups/CommonLayout.vue?e37b","webpack:///./src/components/StateBrowserUsermenu.vue?c34c","webpack:///./src/components/startups/Personal.vue?2d70","webpack:///./src/components/NicklistUser.vue?b449","webpack:///./src/libs/ServerConnection.js","webpack:///./src/components/MessageListAvatar.vue?1c38","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","_interopRequireDefault","_Object$defineProperty","requestPermission","show","listenForNewMessages","_assign","_bind","_setTimeout2","_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","_interopRequireWildcard","_setImmediate2","_indexOf","_create","_classCallCheck2","_createClass2","_vue","_common","IrcClient","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","_this$ircClient","ircClient","connect","getBufferByName","val","input","chanPrefixes","network","supports","tabName","_this2","setActiveBuffer","serverBuffer","buffers","getBuffersWithUser","buffer","isUserAnOp","user","getUser","hasWhois","operator","frameworkClient","methods","props","avatar","firstNickLetter","hasAvatar","small","large","avatarStyle","style","url","size","colour","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","class","smooth_scroll","target","currentTarget","onListClick","directives","rawName","flag","requestScrollback","_l","day","dayNum","filteredMessagesGroupedDay","messages","Date","time","toDateString","shouldShowUnreadMarker","selectedMessages","template","$el","listType","filteredMessages","indexOf","thisMl","getNetwork","parse","createNewBlock","_parseInt2","_keys","_forEach","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","_k","keyCode","cancel","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","urlPreview","requestingInput","openQuery","areWeAnOp","isSelf","onKick","onBan","Vue","plainTextEnabled","inputIdCache","inputId","Math","floor","random","toString","currentValue","set","updateValue","newValue","isEdgeBrowser","navigator","appVersion","utils","InputText","showPlainText","isArray","_i","$$a","$$el","$$c","checked","$$i","_q","$slots","_now","_find","_trim","createdInstance","ThemeManager","listenForIrcEvents","varsEl","varName","document","querySelector","getComputedStyle","v","getPropertyValue","themes","currentThemeName","toLowerCase","theme","isMatch","theTheme","availableThemes","currentTheme","replace","instance","event","ctcpType","reload","parts","split","qs","connoteCss","yes","no","hex2rgb","rgb2hex","rgb2hsl","hsl2rgb","rgb2rgbString","_slice","_map","_hex","shorthandRegex","hex","g","b","rgb","join","max","min","h","hsl","hue2rgb","_p","q","round","helpers","Colours","_some","_reduce","_flags","_filter","_splice","_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","chathistory_request_count","messagesObj","messageIds","onNetworkConnecting","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","chathistoryFuncName","lastMessage","earliest","current","ignoreTypes","validType","Error","firstMessage","latest","existingMessageIds","then","hasNewMessages","commands","msg","tags","msgid","finally","_this3","before","delayed","clearTimeout","_context6","markAsRead","allowedUpdate","bnc","bufferSeen","flagName","addUserBatch","nickLower","_context7","hasMode","userMode","currentUser","userObj","pull","queue","$delete","_context8","_this4","each","addMessageBatch","newMessage","addMessage","fnNames","privmsg","action","notice","fnName","reason","part","networkState","historySupport","messagesInBatchQueue","getLoadingState","bufferState","addSingleUser","u","addMultipleUsers","clone","addSingleMessage","isMessageTrimming","trimMessages","orderedMessages","inPlace","noFilter","addMultipleMessages","newMessages","_context9","toAdd","scrollbackSize","_context10","removed","nextLoop","on001","command","eventNetwork","updateWhoStatusLoop","bufferByName","whoLoop","isJoined","hasAwayNotify","cap","who","_state","toggleSelfAway","isUserSelf","isAway","raw","toggle","shouldShowStatus","awayNotifyEnabled","Boolean","AwayStatusIndicator","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","tag","BouncerMiddleware","text","eCode","location","onImgClick","_obj","$options","connecting","shouldShowLoading","reconnect","channel","showNetworkSettings","closing","backgroundStyle","startupOptions","infoBackground","backgroundImage","infoContent","startApp","removeEventListener","persistence","watchStateForChanges","$parent","addEventListener","startups","CommonLayout","_regenerator","_asyncToGenerator2","TextFormatting","_about","firstRun","ctor","about_open","aboutContent","showServerBuffer","toggleStateBrowser","init","mark","_callee","wrap","prev","fallbackComponent","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","is_usermenu_open","userInitial","initial","charAt","toUpperCase","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","userModePrefix","inject","MessageInfo","MediaViewer","Number","_sort","_Html","_MessageParser","pluginUiSections","aboutBufferPlugins","closedSections","formattedTopic","highlights","isHighlight","html","toggleSection","section","SidebarAboutBuffer","selfuser_open","has_focus","toggleSelfUser","submitForm","maybeHidePlugins","autocomplete_items","autocomplete_filter","onAutocompleteTemp","onAutocompleteSelected","onAutocompleteCancel","inputUpdate","inputKeyDown","inputKeyUp","closeInputTool","showPlugins","onToolClickTextStyle","onToolClickEmoji","plugin","controlinput","self","active_tool","_b","active_tool_props","StartupError","_construct","_toConsumableArray2","_inherits2","_possibleConstructorReturn2","_getPrototypeOf2","_eventemitter","_json","_compareVersions","_Logger","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","Super","NewTarget","Reflect","sham","Proxy","e","singletonInstance","pluginsToInit","nextPluginId","GlobalApi","_EventEmitter","_super","version","JSON5","controlInputPlugins","stateBrowserPlugins","channelHeaderPlugins","queryHeaderPlugins","sideBarPlugins","appSettingsPlugins","isReady","initPlugins","pluginName","initPlugin","pluginLogger","err","stack","modPath","mod","stateEmit","thisEmit","themeManager","element","extend","tab","dest","source","require","replaceObjectProps","_CommonLayout","StartupLayout","loading","statusMessage","greeting","startUp","_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","auto_scroll","force_smooth_scroll","chathistoryAvailable","hover_nick","message_info_open","timeToClose","startClosing","useExtraFormatting","shouldShowChathistoryTools","isCorrectBufferType","shouldRequestChannelKey","ourNick","days","lastDay","shouldShowJoiningLoader","checkScrollingState","maybeScrollToBottom","oldBuffer","scrollToBottom","mounted","addCopyListeners","opt","maybeScrollToId","isHoveringOverMessage","toggleMessageInfo","canShowInfoForMessage","sel","getSelection","rangeCount","range","getRangeAt","collapsed","previous","lastRead","shouldShowDateChangeMarker","getDay","showInfoForTypes","bufferSetting","formatTime","formatTimeFull","format","toLocaleString","formatMessage","toHtml","isMessageHighlight","userColour","openUserBox","onMessageDblClick","messageClickTmr","dataNick","getAttribute","userByName","onMessageClick","delay","isLink","tagName","channelName","userNick","embed","payload","ui","is_touch","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","_Avatar","MessageListAvatar","clickAppSettings","keys","provided_networks","show_provided_networks","pNets","pNetTypeName","pNet","connectProvidedNetwork","sidebarState","isRestrictedServer","clickAddNetwork","noprompt","focus","InputPrompt","ipRegex","IrcdDiffs","whoisRequested","whoisLoading","availableChannelModes","availableModes","prefixes","knownPrefix","isAChannelModeAdmin","isQChannelModeOwner","supportsHalfOp","description","formattedRealname","realname","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","placeholder","updateValueProps","onTextInput","onPaste","onFocus","item","selected_idx","selectCurrentItem","batchedAdd","singleFn","batchedFn","numInsertsSec","inTick","numInLastSec","queueLoopTmr","loopInterval","checkSecRateTmr","queueLoop","maybeStartLoop","resetAddCounter","batchFn","typingUsers","altComponent","onAltClose","errorMessage","toggablePass","footerText","_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","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","_includes","_typeof2","_symbol","_setTimeout3","_setInterval3","_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","getElementsByTagName","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","applyConfigObj","obj","plugins","pluginIdx","loadNextScript","sSrc","fOnload","scr","onerror","onload","src","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","unshift","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","nick_format","autoReconnect","disconnectOnSaslFail","allowRegisterProtocolHandler","noticeActiveBuffer","nicklistGroupAway","showChanlistModes","showAutocomplete","showEmojiPicker","showColorPicker","showSendButton","showAwayStatusIndicators","sidebarDefault","showRaw","useBufferHistory","hideSettings","teamHighlights","embedly","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","presetNetworks","irc","team","_url","_isNan","_Captcha","_ServerSelector","ServerSelector","Captcha","server_type","znc_username","znc_password","show_advanced","switch_tabs_on_connect","network_list","settingShowRaw","directWs","addr","setZncPass","isZnc","newPass","toggleTls","_default2","usePreset","networkList","showCustom","willEmit","presetServer","parseFormatted","toUri","importUris","ret","pipePos","colonPos","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","timeSeconds","seconds","weeks","hours","minutes","tmp","count","settingAlertOn","settingMuteSound","settingHideMessageCount","_Object$defineProperty2","_defineProperty2","_defineProperties","_getOwnPropertyDescriptors","_getOwnPropertyDescriptor","_getOwnPropertySymbols","_defineProperty3","_TypingMiddleware","_ChathistoryMiddleware","ServerConnection","ownKeys","enumerableOnly","symbols","sym","_objectSpread","_context26","_context27","Client","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","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","_context11","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","_buffer14","_context18","modeStrs","adding","modeChar","tFormat","timeCreated","_buffer15","_modeStrs","_context19","modeIdx","_adding","modeLocaleIds","modeLocaleDataBuilders","builders","localeDataFn","localeData","localeKey","_context20","modeslines","_context21","_context22","_serverBuffer","_buffer16","bans","banText","_context23","_context24","dateStr","_context25","_buffer17","_messageBody8","_buffer18","textFormatId","_messageBody9","ctcpResponse","_messageBody10","_buffer19","_buffer20","_messageBody11","ignore","server_info","$$selectedVal","filter","selected","map","_value","multiple","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","filter_visible","shouldShowAvatars","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","flipConnotation","InputConfirm","_xhr","ConfigLoader","valReplacements","configUrl","errMsg","m1","m2","setConfig","confObj","walkObject","_val","insertReplacements","out","items_","filteredItems","filterVal","items","localeCompare","filteredAndLimitedItems","itemIdx","numItems","idxFrom","idxTo","isInRange","selectedItem","getBoundingClientRect","tempCurrentItem","handleOnKeyDown","cancelKeyCodes","shiftKey","altKey","AutoComplete","_lastIndexOf","showChannel","showNick","connectWithoutChannel","captchaReady","footer","ready","bufferObjs","extractBuffers","bufferObj","nickPatternStr","nickPattern","pattern","escapeRegExp","connectOptions","previousNet","queryStringVal","processNickRandomNumber","showPassword","toggablePassword","allowNoChannel","direct_path","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","TypingStatusIndicator","getActiveNetwork","myNick","TypingUsersList","isOpen","activeComponent","settingShowJoinParts","settingShowTopics","settingShowNickChanges","settingShowModeChanges","settingExtraFormatting","settingColouredNicklist","settingShareTyping","accessTab","sidebarUser","error_message","self_user_settings_open","modeString","netUser","awayStatus","openSelfActions","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","_place","place","ourPlace","date","_eventEmitter","NetworkProvider","providers","provider","availableNetworks","pType","_assertThisInitialized2","IpcBroadcastChannel","bc","BroadcastChannel","onmessage","postMessage","IpcLocalStorage","_EventEmitter2","_super2","parsedMsg","JSON","IPC","channel_filter","channel_filter_display","channel_add_display","channel_add_input_has_focus","channel_add_input","isActiveNetwork","totalNetworkCount","serverUnread","totalUnread","serverHighlight","highlight","filteredBuffers","filtered","orderBuffers","onNewChannelInputFocus","onNewChannelInputBlur","submitNewChannelForm","newChannelVal","chanName","ignoreNames","onChannelFilterInputBlur","closeFilterChannel","awayNotifySupported","showMessageCounts","isActiveBuffer","active_network","active_buffer","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","instance_num","messageTypesToShowSetting","traffic","presence","hiddenMessageTypes","getBufferFromDirection","ordered","getNetworkFromDirection","inviteListSorter","aMask","invited","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","getSetting","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","embedlyTagIncluded","embedlyKey","updateEmbed","isIframe","checkEmbedlyAndShowCard","embedlyLink","head","script","_NicklistUser","intlCollator","strCompare","compare","global","Collator","numeric","NicklistUser","userbox_user","prefixOrders","nickMap","bufferUsers","nickFilter","lowercaseNick","bufferId","bufferA","bufferB","_msg","modesA","modesB","aP","bP","useColouredNicks","openUserbox","Nicklist","UserState","typingState","_target","typing","started","timeout","delete","timeoutLen","nicklist","injections","_slicedToArray2","_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","_syncBncNetwork","_callee3","clientBuffer","existingBuffers","bncBuffer","_x4","_addNetworkToState","_callee4","_x5","server_password","controller","snapshot","networkInfo","snapshotCurrentNetworks","_this5","netname","tryNetworkName","bncNetworkPassword","_bncNetworkPassword$s","_bncNetworkPassword$s2","app_width","hasNick","showBufferSettings","showAbout","toggleNicklist","toggleBufferSettings","toggleAbout","SidebarState","_defineProperty","nextId","writable","extractMessageId","bodyTemplate","messageList","hasRendered","userList","maybeAutoEmbed","showLinkPreviews","whitelistRegex","componentProps","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","unpin","_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","desc","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","logon","actual_ip","actual_hostname","idleSeconds","logonTime","logonDate","whowas","_this7","whowasData","names","addReadBuffer","clear","echo","spacePos","serverAddr","serverPort","serverTls","serverPassword","beep","_trimInstanceProperty","parseMessage","_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","typingMiddleware","activeTyping","lastSentStatus","TypingMiddleware","stateBrowserDrawOpen","emitDocumentClick","emitBufferPaste","themeUrl","hasStarted","startupComponent","mediaviewerUrl","mediaviewerComponent","mediaviewerComponentProps","mediaviewerIframe","activeComponentProps","fallbackComponentProps","_NetworkState","_BufferState","_UserState","_Message","createNewState","stateObj","user_settings","sessionId","last_active_buffers","app_height","favicon_counter","availableStartups","toExport","networkObj","cloneDeep","stateStr","importObj","importNetwork","impBuffer","$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","_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.20358fdd.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 _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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.requestPermission = requestPermission;\nexports.show = show;\nexports.listenForNewMessages = listenForNewMessages;\n\nvar _assign = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/assign\"));\n\nvar _bind = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/bind\"));\n\nvar _setTimeout2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-timeout\"));\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=44d09d1c&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=44d09d1c&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 \"44d09d1c\",\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 _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _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 _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _setImmediate2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-immediate\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\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\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: \"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 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 return NetworkState;\n}();\n\nexports.default = NetworkState;","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'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 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 : this.avatar(props).large;\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&\"","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 }","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 _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 = parse;\nexports.createNewBlock = createNewBlock;\n\nvar _assign = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/assign\"));\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 _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 _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\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 _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _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 _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _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","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 _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _now = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/date/now\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _find = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/find\"));\n\nvar _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\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 _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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.hex2rgb = hex2rgb;\nexports.rgb2hex = rgb2hex;\nexports.rgb2hsl = rgb2hsl;\nexports.hsl2rgb = hsl2rgb;\nexports.rgb2rgbString = rgb2rgbString;\n\nvar _slice = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/slice\"));\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\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=f88f3ac2&\"\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=19cb3f7a&\"\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 _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _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 _now = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/date/now\"));\n\nvar _setTimeout2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-timeout\"));\n\nvar _some = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/some\"));\n\nvar _assign = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/assign\"));\n\nvar _reduce = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/reduce\"));\n\nvar _flags = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/flags\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _filter = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/filter\"));\n\nvar _splice = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/splice\"));\n\nvar _find = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/find\"));\n\nvar _bind = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/bind\"));\n\nvar _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\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\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; // 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: \"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: \"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 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 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.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 _context9;\n\n bufferState.messagesObj.messages = (0, _concat.default)(_context9 = bufferState.messagesObj.messages).call(_context9, toAdd);\n (0, _forEach.default)(toAdd).call(toAdd, function (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 _context10;\n\n var removed = (0, _splice.default)(_context10 = bufferState.messagesObj.messages).call(_context10, 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 _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _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 _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 = bouncerMiddleware;\n\nvar _keys = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/keys\"));\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 _promise = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/promise\"));\n\nvar _parseInt2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/parse-int\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _ircFramework = require(\"irc-framework\");\n\nvar Misc = _interopRequireWildcard(require(\"@/helpers/Misc\"));\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 (_h,_vm) {\nvar _obj;\nvar _c=_vm._c;return (_vm.$options.m.shouldShowStatus(_vm.props))?_c('span',{staticClass:\"kiwi-awaystatusindicator\",class:( _obj = {\n 'kiwi-awaystatusindicator--away': _vm.props.user && _vm.props.user.isAway(),\n 'kiwi-awaystatusindicator--self': _vm.$options.m.isUserSelf(_vm.props)\n }, _obj[_vm.data.staticClass] = true, _obj ),on:{\"click\":function($event){return _vm.$options.m.toggleSelfAway(_vm.props)}}}):_vm._e()}\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-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=f1a1d6b2&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=59987590&\"\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","\"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 _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _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\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 _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _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'kiwi public';\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\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 TextFormatting = _interopRequireWildcard(require(\"@/helpers/TextFormatting\"));\n\nvar _AwayStatusIndicator = _interopRequireDefault(require(\"./AwayStatusIndicator\"));\n\nvar _default = {\n components: {\n AwayStatusIndicator: _AwayStatusIndicator.default\n },\n props: ['network'],\n data: function data() {\n return {\n is_usermenu_open: false\n };\n },\n computed: {\n userInitial: function userInitial() {\n var initial = 'U';\n\n if (this.network && this.network.nick) {\n initial = this.network.nick.charAt(0).toUpperCase();\n }\n\n return initial;\n },\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() : 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 _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _parseInt2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/parse-int\"));\n\nvar _slice = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/slice\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\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 _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 _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _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 _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _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 _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","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\"},[(_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!./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 _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _construct = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/reflect/construct\"));\n\nvar _slice = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/slice\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _toConsumableArray2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/toConsumableArray\"));\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 _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 _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 { Date.prototype.toString.call((0, _construct.default)(Date, [], 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: \"addUi\",\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 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: \"log\",\n get: function get() {\n return _Logger.default;\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 _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _find = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/find\"));\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 _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 _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _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 _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar Misc = _interopRequireWildcard(require(\"@/helpers/Misc\"));\n\nvar _CommonLayout = _interopRequireDefault(require(\"./CommonLayout\"));\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=16e4bd89&\"\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 _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\n\nvar _sort = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/sort\"));\n\nvar _map = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/map\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _filter = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/filter\"));\n\nvar _toConsumableArray2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/toConsumableArray\"));\n\nvar _setTimeout2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-timeout\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _bind = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/bind\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _flags = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/flags\"));\n\nvar _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\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\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 _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _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-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=6a59392d&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=c151b764&\"\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'kiwi public';\n\nvar _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _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 _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\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 _AwayStatusIndicator = _interopRequireDefault(require(\"./AwayStatusIndicator\"));\n\nvar _default = {\n components: {\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 formattedRealname: function formattedRealname() {\n var blocks = (0, _MessageParser.default)(this.user.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 _context;\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)(_context = ['MODE', this.buffer.name, changes.join('')]).call(_context, targets);\n client.raw(params);\n }\n },\n userChannels: function userChannels() {\n var _context2;\n\n var channels = (0, _trim.default)(_context2 = this.user.channels).call(_context2).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 _context3;\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)(_context3 = this.user.host.toLowerCase()).call(_context3, 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","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 }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-autocomplete kiwi-theme-bg\"},_vm._l((_vm.filteredAndLimitedItems),function(item){return _c('div',{key:item.type+item.text,class:{\n 'kiwi-autocomplete-item': true,\n 'kiwi-autocomplete-item--selected': item.idx === _vm.selected_idx},on:{\"click\":function($event){_vm.selected_idx = item.idx; _vm.selectCurrentItem()}}},[(item.type === 'user')?[_c('span',{staticClass:\"kiwi-autocomplete-item-value\"},[_vm._v(_vm._s(item.text))]),_c('span',{staticClass:\"u-link kiwi-autocomplete-item-action\",on:{\"click\":function($event){$event.stopPropagation();return _vm.openQuery(item.text)}}},[_vm._v(\" \"+_vm._s(_vm.$t('send_message'))+\" \")])]:(item.type === 'command')?[_c('span',{staticClass:\"kiwi-autocomplete-item-value\"},[_vm._v(_vm._s(item.text))]),_c('span',{staticClass:\"u-link kiwi-autocomplete-item-description\"},[_vm._v(\" \"+_vm._s(item.description)+\" \")])]:[_c('span',{staticClass:\"kiwi-autocomplete-item-value\"},[_vm._v(_vm._s(item.text))])]],2)}),0)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\"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 _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 = 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\nrequire(\"./kiwiirccom\");","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-typinguserslist\"},[_vm._l((_vm.typingUsers),function(user,idx){return _c('span',{key:user.nick,style:({ color: _vm.userColour(user) })},[_vm._v(\" \"+_vm._s(user.nick)+_vm._s(_vm.typingUsers.length - 1 > idx ? ',' : '')+\" \")])}),_vm._v(\" \"+_vm._s(_vm.typingUsers.length > 0 ? '…' : '')+\" \")],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('startup-layout',{ref:\"layout\",staticClass:\"kiwi-welcome-simple\",scopedSlots:_vm._u([(_vm.startupOptions.altComponent)?{key:\"connection\",fn:function(){return [_c(_vm.startupOptions.altComponent,{tag:\"component\",on:{\"close\":_vm.onAltClose}})]},proxy:true}:{key:\"connection\",fn:function(){return [_c('form',{staticClass:\"u-form u-form--big kiwi-welcome-simple-form\",on:{\"submit\":function($event){$event.preventDefault();return _vm.formSubmit($event)}}},[_c('h2',{domProps:{\"innerHTML\":_vm._s(_vm.greetingText)}}),(_vm.errorMessage)?_c('div',{staticClass:\"kiwi-welcome-simple-error\"},[_vm._v(_vm._s(_vm.errorMessage))]):(_vm.network && (_vm.network.last_error || _vm.network.state_error))?_c('div',{staticClass:\"kiwi-welcome-simple-error\"},[(!_vm.network.last_error && _vm.network.state_error)?_c('span',[_vm._v(\" \"+_vm._s(_vm.$t('network_noconnect'))+\" \")]):_vm._e(),_c('span',[_vm._v(\" \"+_vm._s(_vm.network.last_error || _vm.readableStateError(_vm.network.state_error))+\" \")])]):_vm._e(),_c('input-text',{directives:[{name:\"focus\",rawName:\"v-focus\",value:(!_vm.nick || !_vm.show_password_box),expression:\"!nick || !show_password_box\"}],attrs:{\"label\":_vm.$t('nick'),\"type\":\"text\"},model:{value:(_vm.nick),callback:function ($$v) {_vm.nick=$$v},expression:\"nick\"}}),(_vm.showPass && _vm.toggablePass)?_c('div',{staticClass:\"kiwi-welcome-simple-input-container\"},[_c('label',{staticClass:\"kiwi-welcome-simple-have-password\"},[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.show_password_box),expression:\"show_password_box\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.show_password_box)?_vm._i(_vm.show_password_box,null)>-1:(_vm.show_password_box)},on:{\"change\":function($event){var $$a=_vm.show_password_box,$$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.show_password_box=$$a.concat([$$v]))}else{$$i>-1&&(_vm.show_password_box=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{_vm.show_password_box=$$c}}}}),_c('span',[_vm._v(\" \"+_vm._s(_vm.$t('password_have'))+\" \")])])]):_vm._e(),(_vm.showPass && (_vm.show_password_box || !_vm.toggablePass))?_c('div',{staticClass:\"kiwi-welcome-simple-input-container\"},[_c('input-text',{directives:[{name:\"focus\",rawName:\"v-focus\",value:(_vm.nick || _vm.show_password_box),expression:\"nick || show_password_box\"}],attrs:{\"show-plain-text\":true,\"label\":_vm.$t('password'),\"type\":\"password\"},model:{value:(_vm.password),callback:function ($$v) {_vm.password=$$v},expression:\"password\"}})],1):_vm._e(),(_vm.showChannel)?_c('div',{staticClass:\"kiwi-welcome-simple-input-container\"},[_c('input-text',{attrs:{\"label\":_vm.$t('channel')},model:{value:(_vm.channel),callback:function ($$v) {_vm.channel=$$v},expression:\"channel\"}})],1):_vm._e(),_c('captcha',{attrs:{\"network\":_vm.network}}),(!_vm.network || _vm.network.state === 'disconnected')?_c('button',{staticClass:\"u-button u-button-primary u-submit kiwi-welcome-simple-start\",attrs:{\"disabled\":!_vm.readyToStart,\"type\":\"submit\"},domProps:{\"innerHTML\":_vm._s(_vm.buttonText)}}):_c('button',{staticClass:\"u-button u-button-primary u-submit kiwi-welcome-simple-start\",attrs:{\"disabled\":\"\"}},[_c('i',{staticClass:\"fa fa-spin fa-spinner\",attrs:{\"aria-hidden\":\"true\"}})]),_c('div',{domProps:{\"innerHTML\":_vm._s(_vm.footerText)}})],1)]},proxy:true}],null,true)})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./ControlInput.vue?vue&type=template&id=5fae6b90&\"\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&\"","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 _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _keys = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/keys\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\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 }","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 _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _regenerator = _interopRequireDefault(require(\"@babel/runtime-corejs3/regenerator\"));\n\nvar _setTimeout2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-timeout\"));\n\nvar _promise = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/promise\"));\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 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\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 _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\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 _includes = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/includes\"));\n\nvar _splice = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/splice\"));\n\nvar _toConsumableArray2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/toConsumableArray\"));\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 _promise = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/promise\"));\n\nvar _typeof2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/typeof\"));\n\nvar _symbol = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/symbol\"));\n\nvar _keys = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/keys\"));\n\nvar _setTimeout3 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-timeout\"));\n\nvar _setInterval3 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-interval\"));\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 _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\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 },\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: '%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 _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _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 _url = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/url\"));\n\nvar _isNan = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/number/is-nan\"));\n\nvar _parseInt2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/parse-int\"));\n\nvar Misc = _interopRequireWildcard(require(\"@/helpers/Misc\"));\n\nvar _Captcha = _interopRequireDefault(require(\"@/components/Captcha\"));\n\nvar _ServerSelector = _interopRequireDefault(require(\"./ServerSelector\"));\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","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 _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _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 _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 _find = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/find\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\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 = this.parseFormatted(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 // parseFormatted - Parse freenode|irc.freenode.net:+6697 links\n parseFormatted: function parseFormatted(input) {\n var ret = {\n name: '',\n server: '',\n port: 6667,\n tls: false\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 importUris: function importUris(serverList) {\n var _this = this;\n\n // [ 'freenode|irc.freenode.net:+6697', 'irc.snoonet.org:6667' ]\n var servers = (0, _map.default)(serverList).call(serverList, function (s) {\n return _this.parseFormatted(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 _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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.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 _parseFloat2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/parse-float\"));\n\nvar _isNan = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/number/is-nan\"));\n\nvar _parseInt2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/parse-int\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\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\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 _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\n\nvar _Object$defineProperty2 = require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\");\n\n_Object$defineProperty2(exports, \"__esModule\", {\n value: true\n});\n\nexports.create = create;\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/define-property\"));\n\nvar _defineProperties = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/define-properties\"));\n\nvar _getOwnPropertyDescriptors = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors\"));\n\nvar _getOwnPropertyDescriptor = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor\"));\n\nvar _getOwnPropertySymbols = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols\"));\n\nvar _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\n\nvar _map = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/map\"));\n\nvar _keys = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/keys\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _filter = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/filter\"));\n\nvar _splice = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/splice\"));\n\nvar _find = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/find\"));\n\nvar _slice = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/slice\"));\n\nvar _flags = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/flags\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _toConsumableArray2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/toConsumableArray\"));\n\nvar _defineProperty3 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/defineProperty\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _now = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/date/now\"));\n\nvar _assign = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/assign\"));\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 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 _context26; (0, _forEach.default)(_context26 = ownKeys(Object(source), true)).call(_context26, function (key) { (0, _defineProperty3.default)(target, key, source[key]); }); } else if (_getOwnPropertyDescriptors.default) { (0, _defineProperties.default)(target, (0, _getOwnPropertyDescriptors.default)(source)); } else { var _context27; (0, _forEach.default)(_context27 = ownKeys(Object(source))).call(_context27, function (key) { (0, _defineProperty2.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 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: (0, _now.default)(),\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: (0, _now.default)(),\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; // PMs should go to a buffer with the name of the other user\n\n if (!event.from_server && event.target === client.user.nick) {\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: (0, _now.default)(),\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: (0, _now.default)(),\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: (0, _now.default)(),\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: (0, _now.default)(),\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', '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: (0, _now.default)(),\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: (0, _now.default)(),\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 === 'channel info') {\n var _buffer14 = network.bufferByName(event.channel);\n\n if (!_buffer14) {\n return;\n }\n\n if (event.modes) {\n var _context18;\n\n var modeStrs = [];\n (0, _forEach.default)(_context18 = event.modes).call(_context18, 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 _context19;\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)(_context19 = event.modes).call(_context19, 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 _context20;\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)(_context20 = event.modes).call(_context20, function (mode) {\n if (mode.param) {\n modeslines[mode.mode] = ' ' + mode.param;\n } else if (mode.mode[0] === '-') {\n var _context21;\n\n if (!modeslines['-']) {\n modeslines['-'] = '';\n }\n\n modeslines['-'] += (0, _slice.default)(_context21 = mode.mode).call(_context21, 1);\n } else {\n if (!modeslines['+']) {\n modeslines['+'] = '';\n }\n\n if (mode.mode[0] === '+') {\n var _context22;\n\n modeslines['+'] += (0, _slice.default)(_context22 = mode.mode).call(_context22, 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: (0, _now.default)(),\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 _context23, _context24;\n\n var dateStr = new Date(ban.banned_at * 1000).toDateString();\n banText += (0, _concat.default)(_context23 = (0, _concat.default)(_context24 = \"+b \".concat(ban.banned, \" [by \")).call(_context24, ban.banned_by, \", \")).call(_context23, 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 _context25;\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)(_context25 = _buffer17.topic).call(_context25)) {\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 === 'ctcp response' || command === 'ctcp request') {\n var _buffer18 = 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(_buffer18, {\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 _buffer19 = state.getActiveBuffer();\n\n state.addMessage(_buffer19, {\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 _buffer20;\n\n if (event.channel || event.nick) {\n _buffer20 = state.getOrAddBufferByName(network.id, event.channel || event.nick);\n }\n\n if (!_buffer20) {\n _buffer20 = network.serverBuffer();\n }\n\n if (!_buffer20) {\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)(_buffer20).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(_buffer20, {\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 (_buffer20.isChannel() && !_buffer20.joined) {\n _buffer20.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","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"kiwi-userbox\"},[(_vm.isSelf)?_c('span',{staticClass:\"kiwi-userbox-selfprofile\"},[_vm._v(\" \"+_vm._s(_vm.$t('user_you'))+\" \")]):_vm._e(),_c('div',{staticClass:\"kiwi-userbox-header\"},[_c('h3',[_c('away-status-indicator',{attrs:{\"network\":_vm.network,\"user\":_vm.user}}),_vm._v(\" \"+_vm._s(_vm.user.nick)+\" \"),(_vm.userMode)?_c('span',{staticClass:\"kiwi-userbox-modestring\"},[_vm._v(\"+\"+_vm._s(_vm.userMode))]):_vm._e()],1),_c('div',{staticClass:\"kiwi-userbox-usermask\"},[_vm._v(_vm._s(_vm.user.username)+\"@\"+_vm._s(_vm.user.host))])]),_c('div',{staticClass:\"kiwi-userbox-basicinfo\"},[_c('span',{staticClass:\"kiwi-userbox-basicinfo-title\"},[_vm._v(_vm._s(_vm.$t('whois_realname'))+\":\")]),_c('span',{staticClass:\"kiwi-userbox-basicinfo-data\",domProps:{\"innerHTML\":_vm._s(_vm.formattedRealname)}})]),_c('p',{staticClass:\"kiwi-userbox-actions\"},[(!_vm.isSelf && !_vm.buffer.isQuery())?_c('a',{staticClass:\"kiwi-userbox-action\",on:{\"click\":_vm.openQuery}},[_c('i',{staticClass:\"fa fa-comment-o\",attrs:{\"aria-hidden\":\"true\"}}),_vm._v(\" \"+_vm._s(_vm.$t('send_a_message'))+\" \")]):_vm._e(),(!_vm.whoisRequested)?_c('a',{staticClass:\"kiwi-userbox-action\",on:{\"click\":_vm.updateWhoisData}},[_c('i',{staticClass:\"fa fa-question-circle\",attrs:{\"aria-hidden\":\"true\"}}),_vm._v(\" \"+_vm._s(_vm.$t('more_information'))+\" \")]):_vm._e()]),(!_vm.isSelf)?_c('form',{staticClass:\"u-form kiwi-userbox-ignoreuser\"},[_c('label',[_c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.user.ignore),expression:\"user.ignore\"}],attrs:{\"type\":\"checkbox\"},domProps:{\"checked\":Array.isArray(_vm.user.ignore)?_vm._i(_vm.user.ignore,null)>-1:(_vm.user.ignore)},on:{\"change\":function($event){var $$a=_vm.user.ignore,$$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.$set(_vm.user, \"ignore\", $$a.concat([$$v])))}else{$$i>-1&&(_vm.$set(_vm.user, \"ignore\", $$a.slice(0,$$i).concat($$a.slice($$i+1))))}}else{_vm.$set(_vm.user, \"ignore\", $$c)}}}}),_c('span',[_vm._v(\" \"+_vm._s(_vm.$t('ignore_user'))+\" \")])])]):_vm._e(),(_vm.whoisRequested)?_c('div',{staticClass:\"kiwi-userbox-whois\",class:[_vm.whoisLoading?'kiwi-userbox-whois--loading':'']},[(_vm.whoisLoading)?[_c('i',{staticClass:\"fa fa-spinner\",attrs:{\"aria-hidden\":\"true\"}})]:[_c('span',{staticClass:\"kiwi-userbox-whois-line\"},[_vm._v(\" \"+_vm._s(_vm.user.away ? _vm.$t('whois_status') + ': ' + _vm.user.away : _vm.$t('whois_status_available'))+\" \")]),(_vm.user.account)?_c('span',{staticClass:\"kiwi-userbox-whois-line\"},[_vm._v(\" \"+_vm._s(_vm.$t('user_account', {user: _vm.user.account}))+\" \")]):_vm._e(),_c('span',{staticClass:\"kiwi-userbox-whois-line\"},[_vm._v(\" \"+_vm._s(_vm.$t('user_realname', {realname: _vm.user.realname}))+\" \")]),(_vm.user.bot)?_c('span',{staticClass:\"kiwi-userbox-whois-line\"},[_vm._v(_vm._s(_vm.$t('user_bot')))]):_vm._e(),(_vm.user.helpop)?_c('span',{staticClass:\"kiwi-userbox-whois-line\"},[_vm._v(\" \"+_vm._s(_vm.$t('user_help'))+\" \")]):_vm._e(),(_vm.user.operator)?_c('span',{staticClass:\"kiwi-userbox-whois-line\"},[_vm._v(\" \"+_vm._s(_vm.$t('user_op'))+\" \")]):_vm._e(),(_vm.user.server)?_c('span',{staticClass:\"kiwi-userbox-whois-line\"},[_vm._v(\" \"+_vm._s(_vm.$t('user_server', { server: _vm.user.server, info: (_vm.user.server_info ? (\"(\" + (_vm.user.server_info) + \")\") : '') }))+\" \")]):_vm._e(),(_vm.user.secure)?_c('span',{staticClass:\"kiwi-userbox-whois-line\"},[_vm._v(\" \"+_vm._s(_vm.$t('user_secure'))+\" \")]):_vm._e(),(_vm.user.channels)?_c('span',{staticClass:\"kiwi-userbox-whois-line\",domProps:{\"innerHTML\":_vm._s(_vm.$t('user_channels', {channels: _vm.userChannels}))},on:{\"click\":function($event){return _vm.onChannelsClick($event)}}}):_vm._e()]],2):_vm._e(),(_vm.buffer.isChannel() && _vm.areWeAnOp && !_vm.isSelf)?_c('div',{staticClass:\"kiwi-userbox-opactions\"},[_c('form',{staticClass:\"u-form\",on:{\"submit\":function($event){$event.preventDefault();}}},[(_vm.isUserOnBuffer)?_c('label',[_vm._v(\" \"+_vm._s(_vm.$t('user_access'))+\" \"),_c('select',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.userMode),expression:\"userMode\"}],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.userMode=$event.target.multiple ? $$selectedVal : $$selectedVal[0]}}},[_vm._l((_vm.availableChannelModes),function(mode){return _c('option',{key:mode.mode,domProps:{\"value\":mode.mode}},[_vm._v(\" \"+_vm._s(mode.description)+\" \")])}),_c('option',{attrs:{\"value\":\"\"}},[_vm._v(_vm._s(_vm.$t('user_normal')))])],2)]):_vm._e(),(_vm.isUserOnBuffer)?_c('label',[_c('button',{staticClass:\"u-button u-button-secondary\\n kiwi-userbox-opaction-kick kiwi-userbox-opaction\",on:{\"click\":_vm.kickUser}},[_c('i',{staticClass:\"fa fa-sign-out\",attrs:{\"aria-hidden\":\"true\"}}),_vm._v(\" \"+_vm._s(_vm.$t('user_kick'))+\" \")])]):_vm._e(),_c('label',[_c('button',{staticClass:\"u-button u-button-secondary\\n kiwi-userbox-opaction-ban kiwi-userbox-opaction\",on:{\"click\":_vm.banUser}},[_c('i',{staticClass:\"fa fa-ban\",attrs:{\"aria-hidden\":\"true\"}}),_vm._v(\" \"+_vm._s(_vm.$t('user_ban'))+\" \")])]),(_vm.isUserOnBuffer)?_c('label',[_c('button',{staticClass:\"u-button u-button-secondary\\n kiwi-userbox-opaction-kickban kiwi-userbox-opaction\",on:{\"click\":_vm.kickbanUser}},[_c('i',{staticClass:\"fa fa-exclamation-triangle\",attrs:{\"aria-hidden\":\"true\"}}),_vm._v(\" \"+_vm._s(_vm.$t('user_kickban'))+\" \")])]):_vm._e()])]):_vm._e()])}\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!./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=5f4aa20c&\"\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 _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _stringify = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/json/stringify\"));\n\nvar _map = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/map\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\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=5136ddfa&\"\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","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',{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'kiwi public';\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _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!./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 _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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.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 _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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.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=28587516&\"\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&\"","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=f29f0168&\"\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=610c0267&\"\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 _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _keys = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/keys\"));\n\nvar _typeof2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/typeof\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _promise = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/promise\"));\n\nvar _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\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 _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _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 _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 _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 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'kiwi public';\n\nvar _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\n\nvar _assign = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/assign\"));\n\nvar _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\n\nvar _lastIndexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/last-index-of\"));\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 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\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: false,\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 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 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 if (!this.nick.match(nickPattern)) {\n ready = false;\n }\n\n return ready;\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 (Misc.queryStringVal('nick')) {\n this.nick = Misc.queryStringVal('nick');\n } else if (previousNet && previousNet.connection.nick) {\n this.nick = previousNet.connection.nick;\n } else {\n this.nick = options.nick;\n }\n\n this.nick = this.processNickRandomNumber(this.nick || '');\n this.password = options.password || '';\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 _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _trim = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/trim\"));\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 _regenerator = _interopRequireDefault(require(\"@babel/runtime-corejs3/regenerator\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\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\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 _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _reverse = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/reverse\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _filter = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/filter\"));\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","\"use strict\";\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n'kiwi public';\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _values = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/values\"));\n\nvar _filter = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/filter\"));\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-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-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'kiwi public';\n\nvar _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _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 TextFormatting = _interopRequireWildcard(require(\"@/helpers/TextFormatting\"));\n\nvar _AwayStatusIndicator = _interopRequireDefault(require(\"./AwayStatusIndicator\"));\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 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 _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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.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.dedotObject = dedotObject;\nexports.replaceObjectProps = replaceObjectProps;\nexports.dateIso = dateIso;\nexports.parseIntZero = parseIntZero;\n\nvar _isNan = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/number/is-nan\"));\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 _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 _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\n\nvar _concat = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/concat\"));\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 _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, _context3;\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 = (0, _concat.default)(_context3 = \"(^|[\".concat(punc, \"])\")).call(_context3, 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 _context4;\n\n connection.direct = true;\n connection.tls = (0, _indexOf.default)(_context4 = ['wss', 'https', 'ircs']).call(_context4, 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 _context5;\n\n var reg = /(?:(ircs?):\\/\\/)?([a-z.0-9-]+)(?::(?:(\\+)?([0-9]+)))?(?:\\/([^?]*))?(?:\\?(.*))?/;\n var connections = [];\n (0, _forEach.default)(_context5 = str.split(';')).call(_context5, function (connectionString) {\n var _context6, _context7;\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)(_context6 = (m[6] || '').split('&')).call(_context6, 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)(_context7 = (0, _lodash.default)(channels.split(',')).compact()).call(_context7, 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 * 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 _context8, _context9;\n\n (0, _forEach.default)(_context8 = (0, _keys.default)(target)).call(_context8, function (prop) {\n return delete target[prop];\n });\n (0, _forEach.default)(_context9 = (0, _keys.default)(source)).call(_context9, 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 _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _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 _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\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 _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _stringify = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/json/stringify\"));\n\nvar _construct = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/reflect/construct\"));\n\nvar _bind = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/bind\"));\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 { Date.prototype.toString.call((0, _construct.default)(Date, [], 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'kiwi public';\n\nvar _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _setTimeout2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/set-timeout\"));\n\nvar _indexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/index-of\"));\n\nvar _filter = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/filter\"));\n\nvar _forEach = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/for-each\"));\n\nvar _flags = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/flags\"));\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 _AwayStatusIndicator = _interopRequireDefault(require(\"./AwayStatusIndicator\"));\n\nvar _default = {\n components: {\n BufferSettings: _BufferSettings.default,\n AwayStatusIndicator: _AwayStatusIndicator.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 };\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 },\n methods: {\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 closeBuffer: function closeBuffer(buffer) {\n this.$state.removeBuffer(buffer);\n },\n awayNotifySupported: function awayNotifySupported() {\n return this.network.ircClient.network.cap.isEnabled('away-notify');\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 isActiveBuffer: function isActiveBuffer(buffer) {\n return buffer.networkid === this.$state.ui.active_network && buffer.name === this.$state.ui.active_buffer;\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 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 _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _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 _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _filter = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/filter\"));\n\nvar _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\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=60d846c0&\"\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 _interopRequireWildcard = require(\"@babel/runtime-corejs3/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime-corejs3/helpers/interopRequireDefault\");\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 _lastIndexOf = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/last-index-of\"));\n\nvar _values = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/instance/values\"));\n\nvar _toConsumableArray2 = _interopRequireDefault(require(\"@babel/runtime-corejs3/helpers/esm/toConsumableArray\"));\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 _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 _create = _interopRequireDefault(require(\"@babel/runtime-corejs3/core-js-stable/object/create\"));\n\nvar _lodash = _interopRequireDefault(require(\"lodash\"));\n\nvar htmlparser = _interopRequireWildcard(require(\"htmlparser2\"));\n\nvar Colours = _interopRequireWildcard(require(\"@/helpers/Colours\"));\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\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) 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 /* eslint max-len: off */\n\n parser.write(source);\n parser.end();\n return textValue;\n },\n reset: function reset(rawHtml) {\n this.$refs.editor.innerHTML = rawHtml || '';\n this.current_el_pos = 0;\n this.current_el = this.$refs.editor; // Firefox inserts a