This repository has been archived on 2026-04-20. You can view files and clone it, but you cannot make any changes to it's state, such as pushing and creating new issues, pull requests or comments.
AsaJS/src/analyzer/utils.ts

20 lines
723 B
TypeScript

import { paths } from "../types/vanilla/paths.js"
import fs from "fs"
import path from "path"
import jsonc from "jsonc-parser"
export const vanilla_ui_defs = Object.values(paths)
const vanillaUIDefsMap = new Map<string, Set<string>>()
export function readUIDefs(pack_folder: string): string[] {
const { ui_defs } = jsonc.parse(fs.readFileSync(path.join("custom", pack_folder, "ui/_ui_defs.json"), "utf-8"))
return ui_defs
}
export function uiFiles(pack_folder: string): Set<string> {
if (vanillaUIDefsMap.has(pack_folder)) return vanillaUIDefsMap.get(pack_folder)!
const ui_defs = readUIDefs(pack_folder)
const set = new Set(ui_defs.concat(...vanilla_ui_defs))
vanillaUIDefsMap.set(pack_folder, set)
return set
}