mirror of
https://github.com/sern-handler/handler
synced 2026-06-13 03:12:15 +00:00
chore: remove utils folder in favor of single file
This commit is contained in:
@@ -1,12 +1,32 @@
|
||||
import { Err, Ok } from 'ts-results-es';
|
||||
import { ApplicationCommandOptionType, AutocompleteInteraction } from 'discord.js';
|
||||
import type { SernAutocompleteData, SernOptionsData } from '../../types/module';
|
||||
|
||||
|
||||
//function wrappers for empty ok / err
|
||||
export const ok = () => Ok.EMPTY;
|
||||
export const err = () => Err.EMPTY;
|
||||
|
||||
export function partition<T, V>(arr: (T & V)[], condition: (e: T & V) => boolean): [T[], V[]] {
|
||||
const t: T[] = [];
|
||||
const v: V[] = [];
|
||||
for (const el of arr) {
|
||||
if (condition(el)) {
|
||||
t.push(el as T);
|
||||
} else {
|
||||
v.push(el as V);
|
||||
}
|
||||
}
|
||||
return [t, v];
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Uses an iterative DFS to check if an autocomplete node exists
|
||||
* @param iAutocomplete
|
||||
* @param options
|
||||
*/
|
||||
export default function treeSearch(
|
||||
export function treeSearch(
|
||||
iAutocomplete: AutocompleteInteraction,
|
||||
options: SernOptionsData[] | undefined,
|
||||
): SernAutocompleteData | undefined {
|
||||
@@ -1,28 +0,0 @@
|
||||
import * as Files from '../module-loading/readFile';
|
||||
import { basename } from 'path';
|
||||
import { Err, Ok } from 'ts-results-es';
|
||||
/**
|
||||
*
|
||||
* @param modName
|
||||
* @param absPath
|
||||
*/
|
||||
export function nameOrFilename(modName: string | undefined, absPath: string) {
|
||||
return modName ?? Files.fmtFileName(basename(absPath));
|
||||
}
|
||||
|
||||
//function wrappers for empty ok / err
|
||||
export const ok = () => Ok.EMPTY;
|
||||
export const err = () => Err.EMPTY;
|
||||
|
||||
export function partition<T, V>(arr: (T & V)[], condition: (e: T & V) => boolean): [T[], V[]] {
|
||||
const t: T[] = [];
|
||||
const v: V[] = [];
|
||||
for (const el of arr) {
|
||||
if (condition(el)) {
|
||||
t.push(el as T);
|
||||
} else {
|
||||
v.push(el as V);
|
||||
}
|
||||
}
|
||||
return [t, v];
|
||||
}
|
||||
Reference in New Issue
Block a user