2022-10-19 07:52:29 +00:00
|
|
|
import { base64DecodeDataUrl } from "../../plugos/asset_bundle/base64.ts";
|
2022-10-14 13:11:33 +00:00
|
|
|
import { syscall } from "./syscall.ts";
|
|
|
|
|
|
|
|
export async function readAsset(
|
|
|
|
name: string,
|
|
|
|
encoding: "utf8" | "dataurl" = "utf8",
|
|
|
|
): Promise<string> {
|
2022-10-14 13:53:51 +00:00
|
|
|
const dataUrl = await syscall("asset.readAsset", name) as string;
|
2022-10-14 13:11:33 +00:00
|
|
|
switch (encoding) {
|
|
|
|
case "utf8":
|
2022-10-19 07:52:29 +00:00
|
|
|
return new TextDecoder().decode(base64DecodeDataUrl(dataUrl));
|
2022-10-14 13:11:33 +00:00
|
|
|
case "dataurl":
|
2022-10-14 13:53:51 +00:00
|
|
|
return dataUrl;
|
2022-10-14 13:11:33 +00:00
|
|
|
}
|
|
|
|
}
|