clean up some todos, add favicon helper

This commit is contained in:
bignutty 2025-01-28 04:10:35 +01:00
parent 22e9b463a2
commit 7153c3ddaa
13 changed files with 32 additions and 31 deletions

View file

@ -5,17 +5,17 @@ const { PERMISSION_GROUPS } = require('#constants');
const { getMessageAttachment, validateAttachment } = require('#utils/attachment');
const { createEmbed, formatPaginationEmbeds, page } = require('#utils/embed');
const { acknowledge } = require('#utils/interactions');
const { favicon } = require("#utils/markdown");
const { editOrReply } = require('#utils/message')
const { STATICS } = require('#utils/statics')
const { ApplicationCommandTypes, InteractionContextTypes, ApplicationIntegrationTypes } = require("detritus-client/lib/constants");
// TODO: create a favicon() util
function createReverseImageSearchResultPage(context, result, source) {
let res = page(
createEmbed("default", context, {
author: {
iconUrl: `https://www.google.com/s2/favicons?domain=${encodeURIComponent(result.url)}&sz=256`,
iconUrl: favicon(result.url),
name: result.name,
url: result.url
},

View file

@ -4,16 +4,16 @@ const { PERMISSION_GROUPS } = require('#constants');
const { createEmbed, formatPaginationEmbeds, page } = require('#utils/embed');
const { acknowledge } = require('#utils/interactions');
const { favicon } = require("#utils/markdown");
const { editOrReply } = require('#utils/message')
const { STATICS } = require('#utils/statics')
const { ApplicationCommandOptionTypes, InteractionContextTypes, ApplicationIntegrationTypes } = require('detritus-client/lib/constants');
// TODO: create a favicon() util
function createImageResultPage(context, result) {
let res = page(createEmbed("default", context, {
author: {
iconUrl: `https://www.google.com/s2/favicons?domain=${encodeURIComponent(result.url)}&sz=256`,
iconUrl: favicon(result.url),
name: result.title,
url: result.url
},

View file

@ -5,7 +5,7 @@ const { format } = require('#utils/ansi');
const { createEmbed, formatPaginationEmbeds, page } = require('#utils/embed');
const { acknowledge } = require('#utils/interactions');
const { link, citation, icon, smallPill, pill, codeblock } = require('#utils/markdown')
const { link, citation, icon, smallPill, pill, codeblock, favicon} = require('#utils/markdown')
const { editOrReply } = require('#utils/message')
const { STATICS } = require('#utils/statics')
@ -44,14 +44,13 @@ const SEARCH_CARD_TYPES = {
PIVOT_IMAGES: 100
}
// TODO: create a favicon() util
function createSearchResultPage(context, result, doodle){
let res;
switch(result.type){
case SEARCH_CARD_TYPES.SEARCH_RESULT:
res = createEmbed("default", context, {
author: {
iconUrl: `https://www.google.com/s2/favicons?domain=${encodeURIComponent(result.url)}&sz=256`,
iconUrl: favicon(result.url),
name: result.title,
url: result.url
},

View file

@ -127,8 +127,7 @@ module.exports = {
currentView = createEmbed("default", context, {
author: {
// TODO: emoji_placeholder_small
iconUrl: ico || STATIC_ASSETS.emoji_placeholder_large,
iconUrl: ico || STATIC_ASSETS.emoji_placeholder,
name: `${res.data.name} • Emoji ${res.data.metadata.version.emoji}`,
url: res.data.link
},

View file

@ -5,16 +5,16 @@ const { PERMISSION_GROUPS } = require("#constants");
const { validateAttachment } = require("#utils/attachment");
const { createEmbed, formatPaginationEmbeds, page } = require("#utils/embed");
const { acknowledge } = require("#utils/interactions");
const { favicon } = require("#utils/markdown");
const { editOrReply } = require("#utils/message");
const { ApplicationCommandOptionTypes, InteractionContextTypes, ApplicationIntegrationTypes } = require('detritus-client/lib/constants');
// TODO: create a favicon() util
function createReverseImageSearchResultPage(context, result, source) {
let res = page(
createEmbed("default", context, {
author: {
iconUrl: `https://www.google.com/s2/favicons?domain=${encodeURIComponent(result.url)}&sz=256`,
iconUrl: favicon(result.url),
name: result.name,
url: result.url
},

View file

@ -4,15 +4,15 @@ const { PERMISSION_GROUPS } = require('#constants');
const { createEmbed, formatPaginationEmbeds, page } = require('#utils/embed');
const { acknowledge } = require('#utils/interactions');
const { favicon } = require("#utils/markdown");
const { editOrReply } = require('#utils/message')
const { STATICS } = require('#utils/statics')
// TODO: create a favicon() util
function createImageResultPage(context, result) {
let res = page(
createEmbed("default", context, {
author: {
iconUrl: `https://www.google.com/s2/favicons?domain=${encodeURIComponent(result.url)}&sz=256`,
iconUrl: favicon(result.url),
name: result.title,
url: result.url
},

View file

@ -4,18 +4,17 @@ const { PERMISSION_GROUPS } = require('#constants');
const { createEmbed, formatPaginationEmbeds, page } = require('#utils/embed');
const { acknowledge } = require('#utils/interactions');
const { citation, link, codeblock } = require('#utils/markdown')
const { citation, link, codeblock, favicon} = require('#utils/markdown')
const { editOrReply } = require('#utils/message')
const { STATICS } = require('#utils/statics')
// TODO: create a favicon() util
function createSearchResultPage(context, entry){
let res;
switch(entry.type){
case 1: // WebPage
res = page(createEmbed("default", context, {
author: {
iconUrl: `https://www.google.com/s2/favicons?domain=${encodeURIComponent(entry.result.url)}&sz=256`,
iconUrl: favicon(entry.result.url),
name: entry.result.title,
url: entry.result.url
},

View file

@ -4,14 +4,14 @@ const { PERMISSION_GROUPS } = require('#constants');
const { createEmbed, formatPaginationEmbeds, page } = require('#utils/embed');
const { acknowledge } = require('#utils/interactions');
const { favicon } = require("#utils/markdown");
const { editOrReply } = require('#utils/message')
const { STATICS } = require('#utils/statics')
// TODO: create a favicon() util
function createImageResultPage(context, result) {
let res = page(createEmbed("default", context, {
author: {
iconUrl: `https://www.google.com/s2/favicons?domain=${encodeURIComponent(result.url)}&sz=256`,
iconUrl: favicon(result.url),
name: result.title,
url: result.url
},

View file

@ -1,11 +1,11 @@
const { google } = require('#api');
const { paginator } = require('#client');
const { PERMISSION_GROUPS } = require('#constants');
const { format } = require('#utils/ansi');
const { format } = require('#utils/ansi');
const { createEmbed, formatPaginationEmbeds, page } = require('#utils/embed');
const { acknowledge } = require('#utils/interactions');
const { link, citation, icon, codeblock, pill, smallPill } = require('#utils/markdown')
const { link, citation, icon, codeblock, pill, smallPill, favicon} = require('#utils/markdown')
const { editOrReply } = require('#utils/message')
const { STATICS } = require('#utils/statics')
@ -22,8 +22,6 @@ function renderFooter(context, doodle){
}
// These have to be synced with the backend (search_service/endpoints/google).
const SEARCH_CARD_TYPES = {
UNKNONW: 0,
SEARCH_RESULT: 1,
@ -44,14 +42,13 @@ const SEARCH_CARD_TYPES = {
PIVOT_IMAGES: 100
}
// TODO: create a favicon() util
function createSearchResultPage(context, result, doodle){
let res;
switch(result.type){
case SEARCH_CARD_TYPES.SEARCH_RESULT:
res = createEmbed("default", context, {
author: {
iconUrl: `https://www.google.com/s2/favicons?domain=${encodeURIComponent(result.url)}&sz=256`,
iconUrl: favicon(result.url),
name: result.title,
url: result.url
},

View file

@ -5,15 +5,15 @@ const { PERMISSION_GROUPS } = require('#constants');
const { getRecentImage } = require("#utils/attachment");
const { createEmbed, formatPaginationEmbeds, page } = require('#utils/embed');
const { acknowledge } = require('#utils/interactions');
const { favicon } = require("#utils/markdown");
const { editOrReply } = require('#utils/message')
const { STATICS } = require('#utils/statics')
// TODO: create a favicon() util
function createReverseImageSearchResultPage(context, result, source) {
let res = page(
createEmbed("default", context, {
author: {
iconUrl: `https://www.google.com/s2/favicons?domain=${encodeURIComponent(result.url)}&sz=256`,
iconUrl: favicon(result.url),
name: result.name,
url: result.url
},

View file

@ -88,8 +88,7 @@ module.exports = {
currentView = createEmbed("default", context, {
author: {
// TODO: emoji_placeholder_small
iconUrl: newIcon || STATIC_ASSETS.emoji_placeholder_large,
iconUrl: newIcon || STATIC_ASSETS.emoji_placeholder,
name: `${newView.data.name} `,
url: newView.data.link
},
@ -145,8 +144,7 @@ module.exports = {
currentView = createEmbed("default", context, {
author: {
// TODO: emoji_placeholder_small
iconUrl: ico || STATIC_ASSETS.emoji_placeholder_large,
iconUrl: ico || STATIC_ASSETS.emoji_placeholder,
name: `${res.data.name} `,
url: res.data.link
},

View file

@ -1668,7 +1668,6 @@ module.exports.MESSAGE_BLOCK_REASONS = Object.freeze({
message: "the server's AutoMod setup",
support_article: 4421269296535
},
// TODO: Handle permissions properly, this works as a "hack" for now.e
50013: {
message: "the channel's permission setup",
support_article: 10543994968087

View file

@ -40,6 +40,16 @@ module.exports.iconAsEmojiObject = function(icon){
}
/**
* Creates a favicon image via google s2
* @param {string} url Url
* @param {Number} size Favicon Size
* @returns {string} Favicon URL
*/
module.exports.favicon = function(url, size = 256){
return `https://www.google.com/s2/favicons?domain=${encodeURIComponent(url)}&sz=${size}`
}
module.exports.weatherIcon = function(icon){
if(!_iconExists("weather_" + icon)) return _icon("calendar");
return _icon("weather_" + icon)