add peek
This commit is contained in:
		
							parent
							
								
									8ea671bad3
								
							
						
					
					
						commit
						b67347b18e
					
				
					 2 changed files with 37 additions and 3 deletions
				
			
		| 
						 | 
					@ -1,15 +1,16 @@
 | 
				
			||||||
const {addCommand} = require("../lib/command");
 | 
					const {addCommand} = require("../lib/command");
 | 
				
			||||||
const {startPrompt} = require("../lib/prompt");
 | 
					const {startPrompt} = require("../lib/prompt");
 | 
				
			||||||
const {processMessage} = require("../lib/messages");
 | 
					const {processMessage} = require("../lib/messages");
 | 
				
			||||||
 | 
					const {listChannels} = require("./listChannels");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
async function getHistory(limit = 20) {
 | 
					async function getHistory(limit = 20, channel = null) {
 | 
				
			||||||
  if (!comcord.state.currentChannel) {
 | 
					  if (!channel && !comcord.state.currentChannel) {
 | 
				
			||||||
    console.log("<not in a channel>");
 | 
					    console.log("<not in a channel>");
 | 
				
			||||||
    return;
 | 
					    return;
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  const messages = await comcord.client.getMessages(
 | 
					  const messages = await comcord.client.getMessages(
 | 
				
			||||||
    comcord.state.currentChannel,
 | 
					    channel ?? comcord.state.currentChannel,
 | 
				
			||||||
    {limit}
 | 
					    {limit}
 | 
				
			||||||
  );
 | 
					  );
 | 
				
			||||||
  messages.reverse();
 | 
					  messages.reverse();
 | 
				
			||||||
| 
						 | 
					@ -44,3 +45,35 @@ addCommand("R", "extended history", function () {
 | 
				
			||||||
    await getExtendedHistory(input);
 | 
					    await getExtendedHistory(input);
 | 
				
			||||||
  });
 | 
					  });
 | 
				
			||||||
});
 | 
					});
 | 
				
			||||||
 | 
					addCommand("p", "peek at channel", function () {
 | 
				
			||||||
 | 
					  if (!comcord.state.currentGuild) {
 | 
				
			||||||
 | 
					    console.log("<not in a guild>");
 | 
				
			||||||
 | 
					    return;
 | 
				
			||||||
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  listChannels();
 | 
				
			||||||
 | 
					  startPrompt(":peek> ", async function (input) {
 | 
				
			||||||
 | 
					    console.log("");
 | 
				
			||||||
 | 
					    if (input == "") {
 | 
				
			||||||
 | 
					      return;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    let target;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    const guild = comcord.client.guilds.get(comcord.state.currentGuild);
 | 
				
			||||||
 | 
					    const channels = [...guild.channels.values()].filter((c) => c.type == 0);
 | 
				
			||||||
 | 
					    channels.sort((a, b) => a.position - b.position);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    for (const channel of channels) {
 | 
				
			||||||
 | 
					      if (channel.name.toLowerCase().indexOf(input.toLowerCase()) > -1) {
 | 
				
			||||||
 | 
					        target = channel.id;
 | 
				
			||||||
 | 
					        break;
 | 
				
			||||||
 | 
					      }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    if (target == null) {
 | 
				
			||||||
 | 
					      console.log("<channel not found>");
 | 
				
			||||||
 | 
					    } else {
 | 
				
			||||||
 | 
					      await getHistory(20, target);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  });
 | 
				
			||||||
 | 
					});
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -267,6 +267,7 @@ client.on("messageReactionAdd", async function (msg, emoji, reactor) {
 | 
				
			||||||
    referencedMessage: reply,
 | 
					    referencedMessage: reply,
 | 
				
			||||||
    author: reactor?.user ?? client.users.get(reactor.id),
 | 
					    author: reactor?.user ?? client.users.get(reactor.id),
 | 
				
			||||||
    timestamp: Date.now(),
 | 
					    timestamp: Date.now(),
 | 
				
			||||||
 | 
					    mentions: [],
 | 
				
			||||||
    content: `*reacted with ${emoji.id ? `:${emoji.name}:` : emoji.name}*`,
 | 
					    content: `*reacted with ${emoji.id ? `:${emoji.name}:` : emoji.name}*`,
 | 
				
			||||||
  };
 | 
					  };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue