feat: add PdfPageObject type to scene format
This commit is contained in:
@@ -58,7 +58,7 @@ function isGifAsset(asset: string): boolean {
|
|||||||
|
|
||||||
export interface SceneItem {
|
export interface SceneItem {
|
||||||
id: string;
|
id: string;
|
||||||
type: 'image' | 'video' | 'text' | 'drawing' | 'group' | 'sticky' | 'markdown';
|
type: 'image' | 'video' | 'text' | 'drawing' | 'group' | 'sticky' | 'markdown' | 'pdf-page';
|
||||||
displayObject: Container;
|
displayObject: Container;
|
||||||
data: AnySceneObject;
|
data: AnySceneObject;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
|
|
||||||
export interface SceneObject {
|
export interface SceneObject {
|
||||||
id: string;
|
id: string;
|
||||||
type: 'image' | 'video' | 'text' | 'group' | 'drawing' | 'sticky' | 'markdown';
|
type: 'image' | 'video' | 'text' | 'group' | 'drawing' | 'sticky' | 'markdown' | 'pdf-page';
|
||||||
x: number;
|
x: number;
|
||||||
y: number;
|
y: number;
|
||||||
w: number;
|
w: number;
|
||||||
@@ -94,7 +94,19 @@ export interface MarkdownObject extends SceneObject {
|
|||||||
cornerRadius: number; // border radius, default 10
|
cornerRadius: number; // border radius, default 10
|
||||||
}
|
}
|
||||||
|
|
||||||
export type AnySceneObject = ImageObject | VideoObject | TextObject | DrawingObject | GroupObject | StickyObject | MarkdownObject;
|
export interface PdfPageObject extends SceneObject {
|
||||||
|
type: 'pdf-page';
|
||||||
|
asset: string | null; // high-res asset key — null until pdf-hires job completes
|
||||||
|
thumb: string | null; // thumbnail asset key — null until pdf-thumbnail job completes
|
||||||
|
pdfImageId: string; // source PDF's image ID
|
||||||
|
pdfName: string; // original filename
|
||||||
|
pageNumber: number; // 1-indexed
|
||||||
|
pageCount: number; // total pages in source PDF
|
||||||
|
nativeW: number; // pixel dimensions at 200 DPI
|
||||||
|
nativeH: number;
|
||||||
|
}
|
||||||
|
|
||||||
|
export type AnySceneObject = ImageObject | VideoObject | TextObject | DrawingObject | GroupObject | StickyObject | MarkdownObject | PdfPageObject;
|
||||||
|
|
||||||
export interface SceneData {
|
export interface SceneData {
|
||||||
v: 2;
|
v: 2;
|
||||||
|
|||||||
Reference in New Issue
Block a user