@genkit-ai/dotprompt
Version:
Genkit AI framework `.prompt` file format and management library.
53 lines • 1.33 kB
JavaScript
import {
__async
} from "./chunk-RGHW4PYM.mjs";
import { readFileSync } from "fs";
import { basename } from "path";
import {
defineDotprompt,
Dotprompt,
DotpromptRef
} from "./prompt.js";
import { loadPromptFolder, lookupPrompt } from "./registry.js";
import { defineHelper, definePartial } from "./template.js";
function prompt(registry, name, options) {
return __async(this, null, function* () {
var _a;
return yield lookupPrompt(
registry,
name,
options == null ? void 0 : options.variant,
(_a = options == null ? void 0 : options.dir) != null ? _a : "./prompts"
);
});
}
function promptRef(name, options) {
return new DotpromptRef(name, options);
}
function loadPromptFile(registry, path) {
return Dotprompt.parse(
registry,
basename(path).split(".")[0],
readFileSync(path, "utf-8")
);
}
function loadPromptUrl(registry, name, url) {
return __async(this, null, function* () {
const fetch = (yield import("node-fetch")).default;
const response = yield fetch(url);
const text = yield response.text();
return Dotprompt.parse(registry, name, text);
});
}
export {
Dotprompt,
defineDotprompt,
defineHelper,
definePartial,
loadPromptFile,
loadPromptFolder,
loadPromptUrl,
prompt,
promptRef
};
//# sourceMappingURL=index.mjs.map