alinea
Version:
[](https://npmjs.org/package/alinea) [](https://packagephobia.com/result?p=alinea)
30 lines (28 loc) • 728 B
JavaScript
import "../../chunks/chunk-U5RRZUYZ.js";
// src/core/util/Hints.ts
import { Hint } from "../Hint.js";
import { Schema } from "../Schema.js";
function richTextHint(schema) {
const from = { name: "TextDoc", package: "alinea/core" };
if (!schema)
return Hint.Extern(from);
return Hint.Extern(from, rowsOf(Schema.hint(schema)));
}
function listHint(schema) {
return Hint.Array(rowsOf(Schema.hint(schema)));
}
function rowsOf(union) {
const options = union.options;
const types = options.map((def) => {
return Hint.Definition(
def.name,
def.fields,
Hint.Extern({ name: "ListRow", package: "alinea/input/list" })
);
});
return Hint.Union(types);
}
export {
listHint,
richTextHint
};