Item
sequenceDiagram actor User participant ImageVault participant Item participant LiveEditor User->>ImageVault: Item選択 ImageVault->>Item: Item情報取得 Item-->>ImageVault: Item情報返送 ImageVault->>User: Item詳細表示 User->>Item: LiveEditorへの移動指示 Item->>LiveEditor: Item情報送信 LiveEditor-->>Item: 受信確認 LiveEditor->>User: ItemをLiveEditorに表示``
classDiagram class Item { -string id -string filename -string path -Date createdDate -Date modifiedDate -List~string~ tags -Map~string, any~ metadata -ImageData imageData +getID() string +getFilename() string +getPath() string +getCreatedDate() Date +getModifiedDate() Date +getTags() List~string~ +addTag(tag: string) +removeTag(tag: string) +getMetadata(key: string) any +setMetadata(key: string, value: any) +getImageData() ImageData +moveToLiveEditor() } class ImageData { -int width -int height -string format -byte[] data +getWidth() int +getHeight() int +getFormat() string +getData() byte[] } class ItemManager { -Map~string, Item~ items +getItem(id: string) Item +addItem(item: Item) +removeItem(id: string) +updateItem(id: string, newData: Item) +getAllItems() List~Item~ } class LiveEditorInterface { +openInLiveEditor(item: Item) } Item "1" *-- "1" ImageData ItemManager "1" *-- "*" Item Item "1" --> "1" LiveEditorInterface : uses