function M(o){window.enmity.plugins.registerPlugin(o)}const y=window.enmity.modules.common.Constants;window.enmity.modules.common.Clipboard,window.enmity.modules.common.Assets,window.enmity.modules.common.Messages,window.enmity.modules.common.Clyde,window.enmity.modules.common.Avatars,window.enmity.modules.common.Native;const n=window.enmity.modules.common.React;window.enmity.modules.common.Dispatcher,window.enmity.modules.common.Storage;const N=window.enmity.modules.common.Toasts;window.enmity.modules.common.Dialog,window.enmity.modules.common.Token,window.enmity.modules.common.REST,window.enmity.modules.common.Settings,window.enmity.modules.common.Users;const _=window.enmity.modules.common.Navigation;window.enmity.modules.common.NavigationNative,window.enmity.modules.common.NavigationStack,window.enmity.modules.common.Theme;const T=window.enmity.modules.common.Linking,P=window.enmity.modules.common.StyleSheet;window.enmity.modules.common.ColorMap,window.enmity.modules.common.Components,window.enmity.modules.common.Locale,window.enmity.modules.common.Profiles,window.enmity.modules.common.Lodash,window.enmity.modules.common.Logger,window.enmity.modules.common.Flux,window.enmity.modules.common.SVG,window.enmity.modules.common.Scenes,window.enmity.modules.common.Moment;function x(o){return window.enmity.patcher.create(o)}var g="MarkAllAsRead",A="1.0.0",B="mark all messages as read",L=[{name:"mafu",id:"519760564755365888"}],V="#9393ff",O={name:g,version:A,description:B,authors:L,color:V};const{components:e}=window.enmity;e.Alert,e.Button,e.FlatList;const H=e.Image;e.ImageBackground,e.KeyboardAvoidingView,e.Modal,e.Pressable,e.RefreshControl;const U=e.ScrollView;e.SectionList,e.StatusBar,e.StyleSheet,e.Switch;const p=e.Text;e.TextInput,e.TouchableHighlight,e.TouchableOpacity,e.TouchableWithoutFeedback,e.Touchable;const h=e.View;e.VirtualizedList,e.Form,e.FormArrow,e.FormCTA,e.FormCTAButton,e.FormCardSection,e.FormCheckbox,e.FormDivider,e.FormHint,e.FormIcon,e.FormInput,e.FormLabel,e.FormRadio;const i=e.FormRow,S=e.FormSection;e.FormSelect,e.FormSubLabel;const C=e.FormSwitch;e.FormTernaryCheckBox,e.FormText,e.FormTextColors,e.FormTextSizes;function a(o){return window.enmity.assets.getIDByName(o)}const f={byProps:(...o)=>window.enmity.modules.filters.byProps(...o),byName:(o,t)=>window.enmity.modules.filters.byName(o,t),byTypeName:(o,t)=>window.enmity.modules.filters.byTypeName(o,t),byDisplayName:(o,t)=>window.enmity.modules.filters.byDisplayName(o,t)};function z(...o){return window.enmity.modules.bulk(...o)}function G(...o){return window.enmity.modules.getByProps(...o)}window.enmity.modules.common;const E=a("ic_dm");a("ic_forum_channel");const Y=a("img_account_sync_github_white"),j=a("Discord"),q=a("img_account_sync_twitter_white"),K=G("acceptInviteAndTransitionToInviteChannel");var W=({settings:o})=>{const t=P.createThemedStyleSheet({container:{flexDirection:"row",justifyContent:"center",alignItems:"center"},image:{width:70,height:70,marginTop:20,marginLeft:20},title:{flexDirection:"column"},name:{fontSize:30,paddingTop:20,paddingLeft:20,paddingRight:30,color:y.ThemeColorMap.HEADER_PRIMARY},author:{fontSize:15,paddingLeft:50,color:y.ThemeColorMap.HEADER_SECONDARY},info:{height:45,paddingTop:3,paddingBottom:3,justifyContent:"center",alignItems:"center"},footer:{color:y.ThemeColorMap.HEADER_SECONDARY,textAlign:"center",paddingTop:10,paddingBottom:20}});return n.createElement(U,null,n.createElement(h,{style:t.container},n.createElement(H,{source:{uri:"https://avatars.githubusercontent.com/u/43488869"},style:t.image}),n.createElement(h,{style:t.title},n.createElement(p,{style:t.name},"MarkAllAsRead"),n.createElement(p,{style:t.author},"by mafu"))),n.createElement(S,{title:"ADD CONFIRMATION"},n.createElement(i,{label:"DM",leading:n.createElement(i.Icon,{source:E}),trailing:n.createElement(C,{value:o.getBoolean("dm",!0),onValueChange:r=>{o.set("dm",r)}})}),n.createElement(i,{label:"Server",leading:n.createElement(i.Icon,{source:E}),trailing:n.createElement(C,{value:o.getBoolean("server",!0),onValueChange:r=>{o.set("server",r)}})})),n.createElement(S,{title:"INFORMATION"},n.createElement(i,{label:"Follow me on Twitter",style:t.info,trailing:i.Arrow,leading:n.createElement(i.Icon,{source:q}),onPress:()=>{T.openURL("https://twitter.com/m4fn3")}}),n.createElement(i,{label:"Visit my server for help",style:t.info,trailing:i.Arrow,leading:n.createElement(i.Icon,{source:j}),onPress:()=>{K.acceptInviteAndTransitionToInviteChannel({inviteKey:"TrCqPTCrdq",context:{location:"Invite Button Embed"},callback:()=>{_.pop()}})}}),n.createElement(i,{label:"Check Source on GitHub",style:t.info,trailing:i.Arrow,leading:n.createElement(i.Icon,{source:Y}),onPress:()=>{T.openURL("https://github.com/m4fn3/MarkAllAsRead")}})),n.createElement(p,{style:t.footer},`v${A}`))};function $(o,t,r){return window.enmity.utilities.findInReactTree(o,t,r)}function F(o,t,r){return window.enmity.settings.get(o,t,r)}const v=x("MarkAllAsRead"),[J,R,k]=z(f.byProps("bulkAck"),f.byProps("getChannel"),f.byProps("getAllReadStates")),Q=a("ic_rulebook_16px"),X={...O,onStart(){const o=v.after(h,"render",(t,r,D)=>{const I=$(D,d=>{var w,u,s;return((w=d.props)==null?void 0:w.guildId)&&((u=d.props)==null?void 0:u.yPos)&&((s=d.props)==null?void 0:s.onClose)});I&&(v.after(I.type,"render",(d,w,u)=>{u.props.rows.unshift({icon:Q,text:"MarkAllAsRead",onClick:()=>{let s=[];const b=k.getAllReadStates().map(l=>({...l})).filter(l=>k.hasUnread(l.channelId));if(F(g,"dm",!0)){const l=b.filter(m=>{var c;return(c=R.getChannel(m.channelId))==null?void 0:c.isDM()}).map(m=>({channelId:m.channelId,messageId:m._lastMessageId}));s.push(...l)}if(F(g,"server",!0)){const l=b.filter(m=>{var c;return Boolean((c=R.getChannel(m.channelId))==null?void 0:c.getGuildId())}).map(m=>({channelId:m.channelId,messageId:m._lastMessageId}));s.push(...l)}J.bulkAck(s),N.open({content:"Marked all messages as read",source:a("ic_check_24px")})}})}),o())})},onStop(){v.unpatchAll()},getSettingsPanel({settings:o}){return n.createElement(W,{settings:o})}};M(X);