import React from "react"; import { EventName, createComponent } from "@lit/react"; import { WeavyComponents } from "@weavy/uikit-web"; import type { FileDeleteForeverEventType, FileEditNameEventType, FileOpenEventType, FileRenameEventType, FileRestoreEventType, FileSubscribeEventType, FileTrashEventType, } from "@weavy/uikit-web/dist/types/types/files.events.d.ts"; import type { OrderEventType } from "@weavy/uikit-web/dist/types/types/lists.events.d.ts"; import type { FileOrderType } from "@weavy/uikit-web/dist/types/types/files.types.d.ts"; import { onWyAction, onWyPreviewClose, onWyPreviewOpen } from "../blocks/events"; // Creates a React component from a Lit component export const WyFilesList = createComponent({ react: React, tagName: "wy-files-list", elementClass: WeavyComponents.WyFilesList, events: { onFileOpen: "file-open" satisfies FileOpenEventType["type"] as EventName, onOrder: "order" satisfies OrderEventType["type"] as EventName>, onEditName: "edit-name" satisfies FileEditNameEventType["type"] as EventName, onRename: "rename" satisfies FileRenameEventType["type"] as EventName, onTrash: "trash" satisfies FileTrashEventType["type"] as EventName, onRestore: "restore" satisfies FileRestoreEventType["type"] as EventName, onDeleteForever: "delete-forever" satisfies FileDeleteForeverEventType["type"] as EventName, onSubscribe: "subscribe" satisfies FileSubscribeEventType["type"] as EventName, onWyAction, onWyPreviewOpen, onWyPreviewClose }, });