lyfe1 / plugins /filters.js
Ayanokojix23's picture
hello world
bb69f9b
const { getFilter, bot, setFilter, deleteFilter, lydia } = require('../lib/')
bot(
{
pattern: 'stop ?(.*)',
desc: 'Delete filters in chat',
type: 'group',
onlyGroup: true,
},
async (message, match) => {
if (!match) return await message.send(`*Example : .stop hi*`)
const isDel = await deleteFilter(message.jid, match, message.id)
if (!isDel) return await message.send(`_${match} not found in filters_`)
return await message.send(`_${match} deleted._`)
}
)
bot(
{
pattern: 'filter ?(.*)',
desc: 'filter in groups',
type: 'group',
onlyGroup: true,
},
async (message, match) => {
match = match.match(/[\'\"](.*?)[\'\"]/gms)
if (!match) {
const filters = await getFilter(message.jid, message.id)
if (!filters.length)
return await message.send(`_Not set any filter_\n*Example filter 'hi' 'hello'*`)
let msg = ''
filters.map(({ pattern }) => {
msg += `- ${pattern}\n`
})
return await message.send(msg.trim())
} else {
if (match.length < 2) {
return await message.send(`Example filter 'hi' 'hello'`)
}
const k = match[0].replace(/['"]+/g, '')
const v = match[1].replace(/['"]+/g, '')
if (k && v) await setFilter(message.jid, k, v, match[0][0] === "'" ? true : false, message.id)
await message.send(`_${k}_ added to filters.`)
}
}
)
bot({ on: 'text', fromMe: false, type: 'filterOrLydia' }, async (message, match, ctx) => {
const filters = await getFilter(message.jid, message.id)
for (const { pattern, text } of filters) {
const regexPattern = new RegExp(`(?:^|\\W)${pattern}(?:$|\\W)`, 'i')
if (regexPattern.test(message.text)) {
return await message.send(text, {
quoted: message.data,
})
}
}
const isLydia = await lydia(message)
if (isLydia) return await message.send(isLydia, { quoted: message.data })
})
bot({ on: 'text', fromMe: true, type: 'lydia' }, async (message, match) => {
const isLydia = await lydia(message)
if (isLydia) return await message.send(isLydia, { quoted: message.data })
})