UNPKG

@launchmenu/core

Version:

An environment for visual keyboard controlled applets

40 lines 3.55 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.adjustSearchable = void 0; /** * Alters the result returned by a searchable * @param searchable The searchable to modify * @param modify The modifier function * @param recurse Whether to recursively apply this adjuster to the retrieved children * @returns A new searchable */ function adjustSearchable(searchable, modify, recurse = true) { return { ID: "ID" in modify && modify.ID ? modify.ID(searchable.ID) : searchable.ID, async search(query, hook, executer) { var _a, _b; let original = await searchable.search(query, hook, executer); if (recurse && original.children) original = { ...original, children: (_a = original.children) === null || _a === void 0 ? void 0 : _a.map(child => adjustSearchable(child, modify, recurse)), }; const args = { query, hook, executer }; if (modify instanceof Function) return await modify(original, args); return { item: modify.item ? await modify.item(original.item, args) : original.item, children: modify.children ? await modify.children((_b = original.children) !== null && _b !== void 0 ? _b : [], args) : original.children, patternMatch: modify.patternMatch ? await modify.patternMatch(original.patternMatch, args) : original.patternMatch, }; }, }; } exports.adjustSearchable = adjustSearchable; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRqdXN0U2VhcmNoYWJsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91dGlscy9zZWFyY2hFeGVjdXRlci9hZGp1c3RTZWFyY2hhYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUdBOzs7Ozs7R0FNRztBQUNILFNBQWdCLGdCQUFnQixDQUM1QixVQUE2QixFQUM3QixNQUFpQyxFQUNqQyxVQUFtQixJQUFJO0lBRXZCLE9BQU87UUFDSCxFQUFFLEVBQUUsSUFBSSxJQUFJLE1BQU0sSUFBSSxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLEVBQUU7UUFDMUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLFFBQVE7O1lBQzlCLElBQUksUUFBUSxHQUFHLE1BQU0sVUFBVSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBQzlELElBQUksT0FBTyxJQUFJLFFBQVEsQ0FBQyxRQUFRO2dCQUM1QixRQUFRLEdBQUc7b0JBQ1AsR0FBRyxRQUFRO29CQUNYLFFBQVEsUUFBRSxRQUFRLENBQUMsUUFBUSwwQ0FBRSxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FDckMsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FDM0M7aUJBQ0osQ0FBQztZQUVOLE1BQU0sSUFBSSxHQUFHLEVBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUMsQ0FBQztZQUNyQyxJQUFJLE1BQU0sWUFBWSxRQUFRO2dCQUFFLE9BQU8sTUFBTSxNQUFNLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ3BFLE9BQU87Z0JBQ0gsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJO29CQUNiLENBQUMsQ0FBQyxNQUFNLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUM7b0JBQ3hDLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSTtnQkFDbkIsUUFBUSxFQUFFLE1BQU0sQ0FBQyxRQUFRO29CQUNyQixDQUFDLENBQUMsTUFBTSxNQUFNLENBQUMsUUFBUSxPQUFDLFFBQVEsQ0FBQyxRQUFRLG1DQUFJLEVBQUUsRUFBRSxJQUFJLENBQUM7b0JBQ3RELENBQUMsQ0FBQyxRQUFRLENBQUMsUUFBUTtnQkFDdkIsWUFBWSxFQUFFLE1BQU0sQ0FBQyxZQUFZO29CQUM3QixDQUFDLENBQUMsTUFBTSxNQUFNLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDO29CQUN4RCxDQUFDLENBQUMsUUFBUSxDQUFDLFlBQVk7YUFDOUIsQ0FBQztRQUNOLENBQUM7S0FDSixDQUFDO0FBQ04sQ0FBQztBQWhDRCw0Q0FnQ0MifQ==