alinea
Version:
[](https://npmjs.org/package/alinea) [](https://packagephobia.com/result?p=alinea)
50 lines (48 loc) • 1.24 kB
JavaScript
import "../../chunks/chunk-U5RRZUYZ.js";
// src/core/media/MediaSchema.tsx
import { Hint } from "alinea/core/Hint";
import { type } from "alinea/core/Type";
import { hidden } from "alinea/input/hidden";
import { path } from "alinea/input/path";
import { text } from "alinea/input/text";
import { Meta } from "../Meta.js";
var MediaLibrary = type("Media directory", {
title: text("Title"),
path: path("Path"),
[Meta]: {
isContainer: true,
contains: ["MediaLibrary"]
}
});
var MediaFile = type("File", {
title: text("Title"),
path: path("Path"),
location: hidden("Location", Hint.String()),
extension: hidden("Extension", Hint.String()),
size: hidden("File size", Hint.Number()),
hash: hidden("Hash", Hint.String()),
width: hidden("Image width", Hint.Number()),
height: hidden("Image height", Hint.Number()),
preview: hidden("Preview", Hint.String()),
averageColor: hidden("Average color", Hint.String()),
focus: hidden(
"Focus",
Hint.Object({
x: Hint.Number(),
y: Hint.Number()
})
),
thumbHash: hidden("Blur hash", Hint.String()),
[Meta]: {
isHidden: true
}
});
var MediaSchema = {
MediaLibrary,
MediaFile
};
export {
MediaFile,
MediaLibrary,
MediaSchema
};