UNPKG

@sapphire/framework

Version:

Discord bot framework built for advanced and amazing bots.

1 lines 2.85 kB
{"version":3,"sources":["../../../../../../src/lib/utils/application-commands/compute-differences/contexts.ts"],"names":[],"mappings":";;;AAGO,UAAU,4BAAA,CAChB,kBACA,WAC+B,EAAA;AAE/B,EAAI,IAAA,CAAC,gBAAoB,IAAA,WAAA,EAAa,MAAQ,EAAA;AAC7C,IAAM,MAAA;AAAA,MACL,GAAK,EAAA,UAAA;AAAA,MACL,QAAU,EAAA,qBAAA;AAAA,MACV,QAAU,EAAA;AAAA,KACX;AAAA,GAGQ,MAAA,IAAA,gBAAA,EAAkB,MAAU,IAAA,CAAC,aAAa,MAAQ,EAAA;AAC1D,IAAM,MAAA;AAAA,MACL,GAAK,EAAA,UAAA;AAAA,MACL,QAAU,EAAA,kBAAA;AAAA,MACV,QAAU,EAAA;AAAA,KACX;AAAA,GACD,MAAA,IAES,aAAa,MAAQ,EAAA;AAC7B,IAAA,IAAI,KAAQ,GAAA,CAAA;AAEZ,IAAA,KAAA,MAAW,cAAc,WAAa,EAAA;AACrC,MAAA,MAAM,YAAe,GAAA,KAAA,EAAA;AAErB,MAAI,IAAA,gBAAA,CAAkB,YAAY,CAAA,KAAM,UAAY,EAAA;AACnD,QAAM,MAAA;AAAA,UACL,GAAA,EAAK,YAAY,YAAY,CAAA,CAAA,CAAA;AAAA,UAC7B,QAAU,EAAA,CAAA,cAAA,EAAiB,gBAAmB,GAAA,YAAY,CAAC,CAAA,CAAA;AAAA,UAC3D,QAAA,EAAU,iBAAiB,UAAU,CAAA;AAAA,SACtC;AAAA;AACD;AAGD,IAAI,IAAA,KAAA,GAAQ,iBAAkB,MAAQ,EAAA;AACrC,MAAI,IAAA,IAAA;AAEJ,MAAA,OAAA,CAAQ,IAAO,GAAA,gBAAA,CAAkB,KAAK,CAAA,MAAO,MAAW,EAAA;AACvD,QAAM,MAAA;AAAA,UACL,GAAA,EAAK,YAAY,KAAK,CAAA,CAAA,CAAA;AAAA,UACtB,QAAA,EAAU,WAAW,IAAI,CAAA,QAAA,CAAA;AAAA,UACzB,QAAU,EAAA,CAAA,kBAAA;AAAA,SACX;AAEA,QAAA,KAAA,EAAA;AAAA;AACD;AACD;AAEF;AAlDiB,MAAA,CAAA,4BAAA,EAAA,8BAAA,CAAA","file":"contexts.mjs","sourcesContent":["import type { InteractionContextType } from 'discord.js';\nimport type { CommandDifference } from './_shared';\n\nexport function* checkInteractionContextTypes(\n\texistingContexts?: InteractionContextType[],\n\tnewContexts?: InteractionContextType[]\n): Generator<CommandDifference> {\n\t// 0. No existing contexts and now we have contexts\n\tif (!existingContexts && newContexts?.length) {\n\t\tyield {\n\t\t\tkey: 'contexts',\n\t\t\toriginal: 'no contexts present',\n\t\t\texpected: 'contexts present'\n\t\t};\n\t}\n\t// 1. Existing contexts and now we have no contexts\n\telse if (existingContexts?.length && !newContexts?.length) {\n\t\tyield {\n\t\t\tkey: 'contexts',\n\t\t\toriginal: 'contexts present',\n\t\t\texpected: 'no contexts present'\n\t\t};\n\t}\n\t// 2. Maybe changes in order or additions, log\n\telse if (newContexts?.length) {\n\t\tlet index = 0;\n\n\t\tfor (const newContext of newContexts) {\n\t\t\tconst currentIndex = index++;\n\n\t\t\tif (existingContexts![currentIndex] !== newContext) {\n\t\t\t\tyield {\n\t\t\t\t\tkey: `contexts[${currentIndex}]`,\n\t\t\t\t\toriginal: `contexts type ${existingContexts?.[currentIndex]}`,\n\t\t\t\t\texpected: `contexts type ${newContext}`\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\n\t\tif (index < existingContexts!.length) {\n\t\t\tlet type: InteractionContextType;\n\n\t\t\twhile ((type = existingContexts![index]) !== undefined) {\n\t\t\t\tyield {\n\t\t\t\t\tkey: `contexts[${index}]`,\n\t\t\t\t\toriginal: `context ${type} present`,\n\t\t\t\t\texpected: `no context present`\n\t\t\t\t};\n\n\t\t\t\tindex++;\n\t\t\t}\n\t\t}\n\t}\n}\n"]}