@powerhousedao/design-system 5.0.0-staging.12 → 5.0.0-staging.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/connect/components/drop-zone/drop-zone.d.ts +18 -0
- package/dist/src/connect/components/drop-zone/drop-zone.d.ts.map +1 -0
- package/dist/src/connect/components/drop-zone/drop-zone.js +22 -0
- package/dist/src/connect/components/drop-zone/drop-zone.js.map +1 -0
- package/dist/src/connect/components/drop-zone/index.d.ts +2 -0
- package/dist/src/connect/components/drop-zone/index.d.ts.map +1 -0
- package/dist/src/connect/components/drop-zone/index.js +2 -0
- package/dist/src/connect/components/drop-zone/index.js.map +1 -0
- package/dist/src/connect/components/drop-zone/upload-file-list-container.d.ts +13 -0
- package/dist/src/connect/components/drop-zone/upload-file-list-container.d.ts.map +1 -0
- package/dist/src/connect/components/drop-zone/upload-file-list-container.js +14 -0
- package/dist/src/connect/components/drop-zone/upload-file-list-container.js.map +1 -0
- package/dist/src/connect/components/drop-zone/use-upload-tracker.d.ts +15 -0
- package/dist/src/connect/components/drop-zone/use-upload-tracker.d.ts.map +1 -0
- package/dist/src/connect/components/drop-zone/use-upload-tracker.js +179 -0
- package/dist/src/connect/components/drop-zone/use-upload-tracker.js.map +1 -0
- package/dist/src/connect/components/drop-zone/utils.d.ts +19 -0
- package/dist/src/connect/components/drop-zone/utils.d.ts.map +1 -0
- package/dist/src/connect/components/drop-zone/utils.js +58 -0
- package/dist/src/connect/components/drop-zone/utils.js.map +1 -0
- package/dist/src/connect/components/index.d.ts +3 -0
- package/dist/src/connect/components/index.d.ts.map +1 -1
- package/dist/src/connect/components/index.js +3 -0
- package/dist/src/connect/components/index.js.map +1 -1
- package/dist/src/connect/components/upload-file-item/components/error-details.d.ts +8 -0
- package/dist/src/connect/components/upload-file-item/components/error-details.d.ts.map +1 -0
- package/dist/src/connect/components/upload-file-item/components/error-details.js +8 -0
- package/dist/src/connect/components/upload-file-item/components/error-details.js.map +1 -0
- package/dist/src/connect/components/upload-file-item/components/header.d.ts +11 -0
- package/dist/src/connect/components/upload-file-item/components/header.d.ts.map +1 -0
- package/dist/src/connect/components/upload-file-item/components/header.js +29 -0
- package/dist/src/connect/components/upload-file-item/components/header.js.map +1 -0
- package/dist/src/connect/components/upload-file-item/components/index.d.ts +5 -0
- package/dist/src/connect/components/upload-file-item/components/index.d.ts.map +1 -0
- package/dist/src/connect/components/upload-file-item/components/index.js +5 -0
- package/dist/src/connect/components/upload-file-item/components/index.js.map +1 -0
- package/dist/src/connect/components/upload-file-item/components/progress-bar.d.ts +8 -0
- package/dist/src/connect/components/upload-file-item/components/progress-bar.d.ts.map +1 -0
- package/dist/src/connect/components/upload-file-item/components/progress-bar.js +9 -0
- package/dist/src/connect/components/upload-file-item/components/progress-bar.js.map +1 -0
- package/dist/src/connect/components/upload-file-item/components/status-row.d.ts +10 -0
- package/dist/src/connect/components/upload-file-item/components/status-row.d.ts.map +1 -0
- package/dist/src/connect/components/upload-file-item/components/status-row.js +51 -0
- package/dist/src/connect/components/upload-file-item/components/status-row.js.map +1 -0
- package/dist/src/connect/components/upload-file-item/index.d.ts +2 -0
- package/dist/src/connect/components/upload-file-item/index.d.ts.map +1 -0
- package/dist/src/connect/components/upload-file-item/index.js +2 -0
- package/dist/src/connect/components/upload-file-item/index.js.map +1 -0
- package/dist/src/connect/components/upload-file-item/upload-file-item.d.ts +26 -0
- package/dist/src/connect/components/upload-file-item/upload-file-item.d.ts.map +1 -0
- package/dist/src/connect/components/upload-file-item/upload-file-item.js +12 -0
- package/dist/src/connect/components/upload-file-item/upload-file-item.js.map +1 -0
- package/dist/src/connect/components/upload-file-list/index.d.ts +3 -0
- package/dist/src/connect/components/upload-file-list/index.d.ts.map +1 -0
- package/dist/src/connect/components/upload-file-list/index.js +3 -0
- package/dist/src/connect/components/upload-file-list/index.js.map +1 -0
- package/dist/src/connect/components/upload-file-list/upload-file-list.d.ts +10 -0
- package/dist/src/connect/components/upload-file-list/upload-file-list.d.ts.map +1 -0
- package/dist/src/connect/components/upload-file-list/upload-file-list.js +13 -0
- package/dist/src/connect/components/upload-file-list/upload-file-list.js.map +1 -0
- package/dist/src/connect/components/upload-file-list/utils.d.ts +2 -0
- package/dist/src/connect/components/upload-file-list/utils.d.ts.map +1 -0
- package/dist/src/connect/components/upload-file-list/utils.js +6 -0
- package/dist/src/connect/components/upload-file-list/utils.js.map +1 -0
- package/dist/src/connect/hooks/drag-and-drop/use-drop.d.ts +7 -7
- package/dist/src/connect/hooks/drag-and-drop/use-drop.d.ts.map +1 -1
- package/dist/src/connect/hooks/drag-and-drop/use-drop.js +44 -11
- package/dist/src/connect/hooks/drag-and-drop/use-drop.js.map +1 -1
- package/dist/src/powerhouse/components/icon-components/AnalyticsProcessorModule.d.ts +3 -0
- package/dist/src/powerhouse/components/icon-components/AnalyticsProcessorModule.d.ts.map +1 -0
- package/dist/src/powerhouse/components/icon-components/AnalyticsProcessorModule.js +5 -0
- package/dist/src/powerhouse/components/icon-components/AnalyticsProcessorModule.js.map +1 -0
- package/dist/src/powerhouse/components/icon-components/AppModule.d.ts +3 -0
- package/dist/src/powerhouse/components/icon-components/AppModule.d.ts.map +1 -0
- package/dist/src/powerhouse/components/icon-components/AppModule.js +5 -0
- package/dist/src/powerhouse/components/icon-components/AppModule.js.map +1 -0
- package/dist/src/powerhouse/components/icon-components/CodegenProcessorModule.d.ts +3 -0
- package/dist/src/powerhouse/components/icon-components/CodegenProcessorModule.d.ts.map +1 -0
- package/dist/src/powerhouse/components/icon-components/CodegenProcessorModule.js +5 -0
- package/dist/src/powerhouse/components/icon-components/CodegenProcessorModule.js.map +1 -0
- package/dist/src/powerhouse/components/icon-components/DocumentIcons.d.ts +3 -0
- package/dist/src/powerhouse/components/icon-components/DocumentIcons.d.ts.map +1 -0
- package/dist/src/powerhouse/components/icon-components/DocumentIcons.js +5 -0
- package/dist/src/powerhouse/components/icon-components/DocumentIcons.js.map +1 -0
- package/dist/src/powerhouse/components/icon-components/DocumentModel.d.ts +3 -0
- package/dist/src/powerhouse/components/icon-components/DocumentModel.d.ts.map +1 -0
- package/dist/src/powerhouse/components/icon-components/DocumentModel.js +5 -0
- package/dist/src/powerhouse/components/icon-components/DocumentModel.js.map +1 -0
- package/dist/src/powerhouse/components/icon-components/DocumentModelModule.d.ts +3 -0
- package/dist/src/powerhouse/components/icon-components/DocumentModelModule.d.ts.map +1 -0
- package/dist/src/powerhouse/components/icon-components/DocumentModelModule.js +5 -0
- package/dist/src/powerhouse/components/icon-components/DocumentModelModule.js.map +1 -0
- package/dist/src/powerhouse/components/icon-components/EditorModule.d.ts +3 -0
- package/dist/src/powerhouse/components/icon-components/EditorModule.d.ts.map +1 -0
- package/dist/src/powerhouse/components/icon-components/EditorModule.js +5 -0
- package/dist/src/powerhouse/components/icon-components/EditorModule.js.map +1 -0
- package/dist/src/powerhouse/components/icon-components/PackageModule.d.ts +3 -0
- package/dist/src/powerhouse/components/icon-components/PackageModule.d.ts.map +1 -0
- package/dist/src/powerhouse/components/icon-components/PackageModule.js +5 -0
- package/dist/src/powerhouse/components/icon-components/PackageModule.js.map +1 -0
- package/dist/src/powerhouse/components/icon-components/PowerhouseDocumentModule.d.ts +3 -0
- package/dist/src/powerhouse/components/icon-components/PowerhouseDocumentModule.d.ts.map +1 -0
- package/dist/src/powerhouse/components/icon-components/PowerhouseDocumentModule.js +5 -0
- package/dist/src/powerhouse/components/icon-components/PowerhouseDocumentModule.js.map +1 -0
- package/dist/src/powerhouse/components/icon-components/RelationalProcessorModule.d.ts +3 -0
- package/dist/src/powerhouse/components/icon-components/RelationalProcessorModule.d.ts.map +1 -0
- package/dist/src/powerhouse/components/icon-components/RelationalProcessorModule.js +5 -0
- package/dist/src/powerhouse/components/icon-components/RelationalProcessorModule.js.map +1 -0
- package/dist/src/powerhouse/components/icon-components/SubgraphModule.d.ts +3 -0
- package/dist/src/powerhouse/components/icon-components/SubgraphModule.d.ts.map +1 -0
- package/dist/src/powerhouse/components/icon-components/SubgraphModule.js +5 -0
- package/dist/src/powerhouse/components/icon-components/SubgraphModule.js.map +1 -0
- package/dist/src/powerhouse/components/icon-components/index.d.ts +1 -1
- package/dist/src/powerhouse/components/icon-components/index.d.ts.map +1 -1
- package/dist/src/powerhouse/components/icon-components/index.js +33 -0
- package/dist/src/powerhouse/components/icon-components/index.js.map +1 -1
- package/dist/style.css +112 -0
- package/dist/tsconfig.lib.tsbuildinfo +1 -1
- package/package.json +5 -5
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { Node } from "document-drive";
|
|
2
|
+
import { type ComponentPropsWithoutRef, type ReactNode } from "react";
|
|
3
|
+
import { type OnAddFileWithProgress } from "./utils.js";
|
|
4
|
+
export type DropZoneProps = ComponentPropsWithoutRef<"div"> & {
|
|
5
|
+
readonly title?: string;
|
|
6
|
+
readonly subtitle?: string;
|
|
7
|
+
readonly node?: Node;
|
|
8
|
+
readonly enable?: boolean;
|
|
9
|
+
readonly children?: ReactNode;
|
|
10
|
+
readonly onAddFile?: OnAddFileWithProgress;
|
|
11
|
+
readonly onMoveNode?: (src: Node, target: Node | undefined) => Promise<void> | void;
|
|
12
|
+
readonly onCopyNode?: (src: Node, target: Node | undefined) => Promise<void> | void;
|
|
13
|
+
readonly setSelectedNode?: (nodeOrNodeSlug: Node | string | undefined) => void;
|
|
14
|
+
readonly useLocalStorage?: boolean;
|
|
15
|
+
readonly driveId?: string;
|
|
16
|
+
};
|
|
17
|
+
export declare function DropZone(props: DropZoneProps): import("react/jsx-runtime").JSX.Element;
|
|
18
|
+
//# sourceMappingURL=drop-zone.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drop-zone.d.ts","sourceRoot":"","sources":["../../../../../src/connect/components/drop-zone/drop-zone.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,KAAK,wBAAwB,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAKtE,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAExD,MAAM,MAAM,aAAa,GAAG,wBAAwB,CAAC,KAAK,CAAC,GAAG;IAC5D,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC;IACrB,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC;IAC9B,QAAQ,CAAC,SAAS,CAAC,EAAE,qBAAqB,CAAC;IAC3C,QAAQ,CAAC,UAAU,CAAC,EAAE,CACpB,GAAG,EAAE,IAAI,EACT,MAAM,EAAE,IAAI,GAAG,SAAS,KACrB,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC1B,QAAQ,CAAC,UAAU,CAAC,EAAE,CACpB,GAAG,EAAE,IAAI,EACT,MAAM,EAAE,IAAI,GAAG,SAAS,KACrB,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC1B,QAAQ,CAAC,eAAe,CAAC,EAAE,CACzB,cAAc,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,KACtC,IAAI,CAAC;IACV,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAC;IACnC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,wBAAgB,QAAQ,CAAC,KAAK,EAAE,aAAa,2CA0E5C"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Icon } from "#powerhouse";
|
|
3
|
+
import { twMerge } from "tailwind-merge";
|
|
4
|
+
import { useDrop } from "../../hooks/drag-and-drop/use-drop.js";
|
|
5
|
+
import { UploadFileListContainer } from "./upload-file-list-container.js";
|
|
6
|
+
import { useUploadTracker } from "./use-upload-tracker.js";
|
|
7
|
+
export function DropZone(props) {
|
|
8
|
+
const { title = "Drag your documents", subtitle = "to drop them in the currently selected folder.", node, enable = true, children, onAddFile, onMoveNode, onCopyNode, setSelectedNode, useLocalStorage = false, driveId, className, ...delegatedProps } = props;
|
|
9
|
+
// Upload tracking with the new hook
|
|
10
|
+
const { uploadsArray, uploadsCount, createUploadHandler, clearAllUploads, removeUpload, } = useUploadTracker(useLocalStorage, driveId);
|
|
11
|
+
// Create the upload handler from the hook
|
|
12
|
+
const handleAddFile = createUploadHandler(onAddFile) ?? (async () => { });
|
|
13
|
+
const { isDropTarget, dropProps } = useDrop({
|
|
14
|
+
node,
|
|
15
|
+
onAddFile: handleAddFile,
|
|
16
|
+
onMoveNode: onMoveNode ?? (async () => { }),
|
|
17
|
+
onCopyNode: onCopyNode ?? (async () => { }),
|
|
18
|
+
trackNestedDrag: true,
|
|
19
|
+
});
|
|
20
|
+
return (_jsxs("div", { className: twMerge("relative", className), ...(enable ? dropProps : {}), ...delegatedProps, children: [children, enable && isDropTarget && (_jsx("div", { className: "fixed inset-0 z-[1000] flex min-h-screen w-screen items-center justify-center bg-black/50", children: _jsx("div", { className: "rounded-[24px] bg-white p-6 shadow-[1px_4px_15px_rgba(74,88,115,0.25)]", children: _jsxs("div", { className: "relative flex h-[130px] w-[400px] flex-col items-center justify-start overflow-visible rounded-lg border border-dashed border-black px-4 py-6", children: [_jsx("div", { className: "text-center text-base leading-5 text-zinc-500", children: title }), _jsx("div", { className: "text-center text-base leading-5 text-zinc-500", children: subtitle }), _jsx("span", { className: "pointer-events-none absolute -bottom-16 left-1/2 z-10 -translate-x-1/2", children: _jsx(Icon, { name: "DocumentIcons", size: 144, "aria-hidden": "true" }) })] }) }) })), _jsx(UploadFileListContainer, { uploadsArray: uploadsArray, uploadsCount: uploadsCount, removeUpload: removeUpload, clearAllUploads: clearAllUploads, setSelectedNode: setSelectedNode })] }));
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=drop-zone.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drop-zone.js","sourceRoot":"","sources":["../../../../../src/connect/components/drop-zone/drop-zone.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAGnC,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,uCAAuC,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAyB3D,MAAM,UAAU,QAAQ,CAAC,KAAoB;IAC3C,MAAM,EACJ,KAAK,GAAG,qBAAqB,EAC7B,QAAQ,GAAG,gDAAgD,EAC3D,IAAI,EACJ,MAAM,GAAG,IAAI,EACb,QAAQ,EACR,SAAS,EACT,UAAU,EACV,UAAU,EACV,eAAe,EACf,eAAe,GAAG,KAAK,EACvB,OAAO,EACP,SAAS,EACT,GAAG,cAAc,EAClB,GAAG,KAAK,CAAC;IAEV,oCAAoC;IACpC,MAAM,EACJ,YAAY,EACZ,YAAY,EACZ,mBAAmB,EACnB,eAAe,EACf,YAAY,GACb,GAAG,gBAAgB,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;IAE/C,0CAA0C;IAC1C,MAAM,aAAa,GAAG,mBAAmB,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,GAAE,CAAC,CAAC,CAAC;IAEzE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;QAC1C,IAAI;QACJ,SAAS,EAAE,aAAa;QACxB,UAAU,EAAE,UAAU,IAAI,CAAC,KAAK,IAAI,EAAE,GAAE,CAAC,CAAC;QAC1C,UAAU,EAAE,UAAU,IAAI,CAAC,KAAK,IAAI,EAAE,GAAE,CAAC,CAAC;QAC1C,eAAe,EAAE,IAAI;KACtB,CAAC,CAAC;IAEH,OAAO,CACL,eACE,SAAS,EAAE,OAAO,CAAC,UAAU,EAAE,SAAS,CAAC,KACrC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,KACzB,cAAc,aAEjB,QAAQ,EAER,MAAM,IAAI,YAAY,IAAI,CACzB,cAAK,SAAS,EAAC,2FAA2F,YACxG,cAAK,SAAS,EAAC,wEAAwE,YACrF,eAAK,SAAS,EAAC,+IAA+I,aAC5J,cAAK,SAAS,EAAC,+CAA+C,YAC3D,KAAK,GACF,EACN,cAAK,SAAS,EAAC,+CAA+C,YAC3D,QAAQ,GACL,EAEN,eAAM,SAAS,EAAC,wEAAwE,YACtF,KAAC,IAAI,IAAC,IAAI,EAAC,eAAe,EAAC,IAAI,EAAE,GAAG,iBAAc,MAAM,GAAG,GACtD,IACH,GACF,GACF,CACP,EAGD,KAAC,uBAAuB,IACtB,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,YAAY,EAC1B,eAAe,EAAE,eAAe,EAChC,eAAe,EAAE,eAAe,GAChC,IACE,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/connect/components/drop-zone/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/connect/components/drop-zone/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAsB,MAAM,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Node } from "document-drive";
|
|
2
|
+
import { type ComponentPropsWithoutRef } from "react";
|
|
3
|
+
import { type UploadTracker } from "./utils.js";
|
|
4
|
+
export type UploadFileListContainerProps = ComponentPropsWithoutRef<"div"> & {
|
|
5
|
+
readonly uploadsArray: (UploadTracker | undefined)[];
|
|
6
|
+
readonly uploadsCount: number;
|
|
7
|
+
readonly removeUpload: (uploadId: string) => void;
|
|
8
|
+
readonly clearAllUploads: () => void;
|
|
9
|
+
readonly setSelectedNode?: (nodeOrNodeSlug: Node | string | undefined) => void;
|
|
10
|
+
readonly onClose?: () => void;
|
|
11
|
+
};
|
|
12
|
+
export declare function UploadFileListContainer(props: UploadFileListContainerProps): import("react/jsx-runtime").JSX.Element | null;
|
|
13
|
+
//# sourceMappingURL=upload-file-list-container.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"upload-file-list-container.d.ts","sourceRoot":"","sources":["../../../../../src/connect/components/drop-zone/upload-file-list-container.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,OAAO,CAAC;AAGtD,OAAO,EAAyB,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAEvE,MAAM,MAAM,4BAA4B,GAAG,wBAAwB,CAAC,KAAK,CAAC,GAAG;IAC3E,QAAQ,CAAC,YAAY,EAAE,CAAC,aAAa,GAAG,SAAS,CAAC,EAAE,CAAC;IACrD,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,YAAY,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAClD,QAAQ,CAAC,eAAe,EAAE,MAAM,IAAI,CAAC;IACrC,QAAQ,CAAC,eAAe,CAAC,EAAE,CACzB,cAAc,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,KACtC,IAAI,CAAC;IACV,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CAC/B,CAAC;AAEF,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,4BAA4B,kDA+B1E"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { twMerge } from "tailwind-merge";
|
|
3
|
+
import { UploadFileList } from "../upload-file-list/index.js";
|
|
4
|
+
import { mapUploadsToFileItems } from "./utils.js";
|
|
5
|
+
export function UploadFileListContainer(props) {
|
|
6
|
+
const { uploadsArray, uploadsCount, removeUpload, clearAllUploads, setSelectedNode, onClose, className, ...delegatedProps } = props;
|
|
7
|
+
// Don't render if there are no uploads
|
|
8
|
+
if (uploadsCount === 0)
|
|
9
|
+
return null;
|
|
10
|
+
const items = mapUploadsToFileItems(uploadsArray, removeUpload, setSelectedNode);
|
|
11
|
+
const handleClose = onClose ?? clearAllUploads;
|
|
12
|
+
return (_jsx("div", { className: twMerge("fixed bottom-4 right-4 z-[1001]", className), ...delegatedProps, children: _jsx(UploadFileList, { items: items, onClose: handleClose }) }));
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=upload-file-list-container.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"upload-file-list-container.js","sourceRoot":"","sources":["../../../../../src/connect/components/drop-zone/upload-file-list-container.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,qBAAqB,EAAsB,MAAM,YAAY,CAAC;AAavE,MAAM,UAAU,uBAAuB,CAAC,KAAmC;IACzE,MAAM,EACJ,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,eAAe,EACf,OAAO,EACP,SAAS,EACT,GAAG,cAAc,EAClB,GAAG,KAAK,CAAC;IAEV,uCAAuC;IACvC,IAAI,YAAY,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAEpC,MAAM,KAAK,GAAG,qBAAqB,CACjC,YAAY,EACZ,YAAY,EACZ,eAAe,CAChB,CAAC;IAEF,MAAM,WAAW,GAAG,OAAO,IAAI,eAAe,CAAC;IAE/C,OAAO,CACL,cACE,SAAS,EAAE,OAAO,CAAC,iCAAiC,EAAE,SAAS,CAAC,KAC5D,cAAc,YAElB,KAAC,cAAc,IAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,GAAI,GAClD,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { Node } from "document-drive";
|
|
2
|
+
import { type OnAddFileWithProgress, type UploadTracker } from "./utils.js";
|
|
3
|
+
type UploadsState = {
|
|
4
|
+
[uploadId: string]: UploadTracker | undefined;
|
|
5
|
+
};
|
|
6
|
+
export declare function useUploadTracker(useLocalStorage?: boolean, driveId?: string): {
|
|
7
|
+
uploads: UploadsState;
|
|
8
|
+
uploadsArray: (UploadTracker | undefined)[];
|
|
9
|
+
uploadsCount: number;
|
|
10
|
+
createUploadHandler: (onAddFile?: OnAddFileWithProgress) => ((file: File, parent: Node | undefined) => Promise<void>) | undefined;
|
|
11
|
+
removeUpload: (uploadId: string) => void;
|
|
12
|
+
clearAllUploads: () => void;
|
|
13
|
+
};
|
|
14
|
+
export {};
|
|
15
|
+
//# sourceMappingURL=use-upload-tracker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-upload-tracker.d.ts","sourceRoot":"","sources":["../../../../../src/connect/components/drop-zone/use-upload-tracker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAG3C,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,aAAa,EAInB,MAAM,YAAY,CAAC;AAGpB,KAAK,YAAY,GAAG;IAClB,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS,CAAC;CAC/C,CAAC;AA4HF,wBAAgB,gBAAgB,CAAC,eAAe,UAAQ,EAAE,OAAO,CAAC,EAAE,MAAM;;;;sCAsCzD,qBAAqB,aAGZ,IAAI,UAAU,IAAI,GAAG,SAAS;6BAkDV,MAAM;;EA+BnD"}
|
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
import { useCallback, useEffect, useReducer } from "react";
|
|
2
|
+
import { formatFileSize, generateId, mapProgressStageToStatus, } from "./utils.js";
|
|
3
|
+
// Reducer function
|
|
4
|
+
function uploadsReducer(state, action) {
|
|
5
|
+
switch (action.type) {
|
|
6
|
+
case "ADD_UPLOAD":
|
|
7
|
+
return {
|
|
8
|
+
...state,
|
|
9
|
+
[action.payload.id]: {
|
|
10
|
+
id: action.payload.id,
|
|
11
|
+
fileName: action.payload.fileName,
|
|
12
|
+
fileSize: action.payload.fileSize,
|
|
13
|
+
status: "pending",
|
|
14
|
+
progress: 0,
|
|
15
|
+
fileNode: undefined,
|
|
16
|
+
},
|
|
17
|
+
};
|
|
18
|
+
case "UPDATE_PROGRESS": {
|
|
19
|
+
const currentUpload = state[action.payload.id];
|
|
20
|
+
if (!currentUpload)
|
|
21
|
+
return state;
|
|
22
|
+
return {
|
|
23
|
+
...state,
|
|
24
|
+
[action.payload.id]: {
|
|
25
|
+
...currentUpload,
|
|
26
|
+
status: mapProgressStageToStatus(action.payload.progress.stage),
|
|
27
|
+
progress: action.payload.progress.progress,
|
|
28
|
+
errorDetails: action.payload.progress.error,
|
|
29
|
+
// Update documentType if provided
|
|
30
|
+
...(action.payload.progress.documentType && {
|
|
31
|
+
documentType: action.payload.progress.documentType,
|
|
32
|
+
}),
|
|
33
|
+
},
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
case "SET_FILE_NODE": {
|
|
37
|
+
const uploadToUpdate = state[action.payload.id];
|
|
38
|
+
if (!uploadToUpdate)
|
|
39
|
+
return state;
|
|
40
|
+
return {
|
|
41
|
+
...state,
|
|
42
|
+
[action.payload.id]: {
|
|
43
|
+
...uploadToUpdate,
|
|
44
|
+
fileNode: action.payload.fileNode,
|
|
45
|
+
},
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
case "SET_ERROR": {
|
|
49
|
+
const failedUpload = state[action.payload.id];
|
|
50
|
+
if (!failedUpload)
|
|
51
|
+
return state;
|
|
52
|
+
return {
|
|
53
|
+
...state,
|
|
54
|
+
[action.payload.id]: {
|
|
55
|
+
...failedUpload,
|
|
56
|
+
status: "failed",
|
|
57
|
+
errorDetails: action.payload.error,
|
|
58
|
+
},
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
case "REMOVE_UPLOAD": {
|
|
62
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
63
|
+
const { [action.payload.id]: removed, ...rest } = state;
|
|
64
|
+
return rest;
|
|
65
|
+
}
|
|
66
|
+
case "CLEAR_ALL_UPLOADS": {
|
|
67
|
+
return {};
|
|
68
|
+
}
|
|
69
|
+
default:
|
|
70
|
+
return state;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
// Hook
|
|
74
|
+
export function useUploadTracker(useLocalStorage = false, driveId) {
|
|
75
|
+
const getInitialState = useCallback(() => {
|
|
76
|
+
if (useLocalStorage && driveId) {
|
|
77
|
+
try {
|
|
78
|
+
const stored = localStorage.getItem(`uploadTracker_${driveId}`);
|
|
79
|
+
if (stored) {
|
|
80
|
+
const parsed = JSON.parse(stored);
|
|
81
|
+
return parsed;
|
|
82
|
+
}
|
|
83
|
+
return {};
|
|
84
|
+
}
|
|
85
|
+
catch (error) {
|
|
86
|
+
console.error("Failed to load upload tracker from localStorage:", error);
|
|
87
|
+
return {};
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
return {};
|
|
91
|
+
}, [useLocalStorage, driveId]);
|
|
92
|
+
const [uploads, dispatch] = useReducer(uploadsReducer, getInitialState());
|
|
93
|
+
// Save to localStorage whenever uploads change
|
|
94
|
+
useEffect(() => {
|
|
95
|
+
if (useLocalStorage && driveId) {
|
|
96
|
+
try {
|
|
97
|
+
localStorage.setItem(`uploadTracker_${driveId}`, JSON.stringify(uploads));
|
|
98
|
+
}
|
|
99
|
+
catch (error) {
|
|
100
|
+
console.error("Failed to save upload tracker to localStorage:", error);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
}, [uploads, useLocalStorage, driveId]);
|
|
104
|
+
const createUploadHandler = useCallback((onAddFile) => {
|
|
105
|
+
if (!onAddFile)
|
|
106
|
+
return undefined;
|
|
107
|
+
return async (file, parent) => {
|
|
108
|
+
const fileId = generateId();
|
|
109
|
+
// Add upload to tracking
|
|
110
|
+
dispatch({
|
|
111
|
+
type: "ADD_UPLOAD",
|
|
112
|
+
payload: {
|
|
113
|
+
id: fileId,
|
|
114
|
+
fileName: file.name,
|
|
115
|
+
fileSize: formatFileSize(file.size),
|
|
116
|
+
},
|
|
117
|
+
});
|
|
118
|
+
// Create progress callback for this specific file
|
|
119
|
+
const progressCallback = (progress) => {
|
|
120
|
+
dispatch({
|
|
121
|
+
type: "UPDATE_PROGRESS",
|
|
122
|
+
payload: {
|
|
123
|
+
id: fileId,
|
|
124
|
+
progress,
|
|
125
|
+
},
|
|
126
|
+
});
|
|
127
|
+
};
|
|
128
|
+
try {
|
|
129
|
+
// Call the original onAddFile with our progress callback
|
|
130
|
+
const fileNode = await onAddFile(file, parent, progressCallback);
|
|
131
|
+
// Store the FileNode
|
|
132
|
+
dispatch({
|
|
133
|
+
type: "SET_FILE_NODE",
|
|
134
|
+
payload: {
|
|
135
|
+
id: fileId,
|
|
136
|
+
fileNode: fileNode || undefined,
|
|
137
|
+
},
|
|
138
|
+
});
|
|
139
|
+
}
|
|
140
|
+
catch (error) {
|
|
141
|
+
dispatch({
|
|
142
|
+
type: "SET_ERROR",
|
|
143
|
+
payload: {
|
|
144
|
+
id: fileId,
|
|
145
|
+
error: error instanceof Error ? error.message : "Unknown error",
|
|
146
|
+
},
|
|
147
|
+
});
|
|
148
|
+
}
|
|
149
|
+
};
|
|
150
|
+
}, []);
|
|
151
|
+
const removeUpload = useCallback((uploadId) => {
|
|
152
|
+
dispatch({
|
|
153
|
+
type: "REMOVE_UPLOAD",
|
|
154
|
+
payload: {
|
|
155
|
+
id: uploadId,
|
|
156
|
+
},
|
|
157
|
+
});
|
|
158
|
+
}, []);
|
|
159
|
+
const clearAllUploads = useCallback(() => {
|
|
160
|
+
dispatch({
|
|
161
|
+
type: "CLEAR_ALL_UPLOADS",
|
|
162
|
+
});
|
|
163
|
+
}, []);
|
|
164
|
+
const getUploadsArray = useCallback(() => {
|
|
165
|
+
return Object.values(uploads);
|
|
166
|
+
}, [uploads]);
|
|
167
|
+
const getUploadsCount = useCallback(() => {
|
|
168
|
+
return Object.keys(uploads).length;
|
|
169
|
+
}, [uploads]);
|
|
170
|
+
return {
|
|
171
|
+
uploads,
|
|
172
|
+
uploadsArray: getUploadsArray(),
|
|
173
|
+
uploadsCount: getUploadsCount(),
|
|
174
|
+
createUploadHandler,
|
|
175
|
+
removeUpload,
|
|
176
|
+
clearAllUploads,
|
|
177
|
+
};
|
|
178
|
+
}
|
|
179
|
+
//# sourceMappingURL=use-upload-tracker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-upload-tracker.js","sourceRoot":"","sources":["../../../../../src/connect/components/drop-zone/use-upload-tracker.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { DocumentTypeIcon, FileUploadProgress } from "@powerhousedao/reactor-browser";
|
|
2
|
+
import type { Node } from "document-drive";
|
|
3
|
+
import type { UploadFileItemProps } from "../upload-file-item/index.js";
|
|
4
|
+
export type UploadTracker = {
|
|
5
|
+
id: string;
|
|
6
|
+
fileName: string;
|
|
7
|
+
fileSize: string;
|
|
8
|
+
status: "pending" | "uploading" | "success" | "failed";
|
|
9
|
+
progress: number;
|
|
10
|
+
errorDetails?: string;
|
|
11
|
+
fileNode?: Node;
|
|
12
|
+
documentType?: DocumentTypeIcon;
|
|
13
|
+
};
|
|
14
|
+
export type OnAddFileWithProgress = (file: File, parent: Node | undefined, onProgress?: (progress: FileUploadProgress) => void) => Promise<Node | undefined> | Node | undefined;
|
|
15
|
+
export declare function generateId(): string;
|
|
16
|
+
export declare function formatFileSize(bytes: number): string;
|
|
17
|
+
export declare function mapProgressStageToStatus(stage: FileUploadProgress["stage"]): UploadTracker["status"];
|
|
18
|
+
export declare function mapUploadsToFileItems(uploadsArray: (UploadTracker | undefined)[], removeUpload: (uploadId: string) => void, setSelectedNodeFn?: (nodeOrNodeSlug: Node | string | undefined) => void): UploadFileItemProps[];
|
|
19
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../src/connect/components/drop-zone/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,kBAAkB,EACnB,MAAM,gCAAgC,CAAC;AACxC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAGxE,MAAM,MAAM,aAAa,GAAG;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,CAAC;IACvD,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,IAAI,CAAC;IAChB,YAAY,CAAC,EAAE,gBAAgB,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,CAClC,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,IAAI,GAAG,SAAS,EACxB,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,kBAAkB,KAAK,IAAI,KAChD,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;AAGlD,wBAAgB,UAAU,IAAI,MAAM,CAEnC;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAMpD;AAED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,kBAAkB,CAAC,OAAO,CAAC,GACjC,aAAa,CAAC,QAAQ,CAAC,CAczB;AAED,wBAAgB,qBAAqB,CACnC,YAAY,EAAE,CAAC,aAAa,GAAG,SAAS,CAAC,EAAE,EAC3C,YAAY,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,EACxC,iBAAiB,CAAC,EAAE,CAAC,cAAc,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,KAAK,IAAI,GACtE,mBAAmB,EAAE,CAoCvB"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
// Utility functions
|
|
2
|
+
export function generateId() {
|
|
3
|
+
return `upload_${Date.now()}_${Math.random().toString(36).substring(2, 9)}`;
|
|
4
|
+
}
|
|
5
|
+
export function formatFileSize(bytes) {
|
|
6
|
+
if (bytes === 0)
|
|
7
|
+
return "0 Bytes";
|
|
8
|
+
const k = 1024;
|
|
9
|
+
const sizes = ["Bytes", "KB", "MB", "GB"];
|
|
10
|
+
const i = Math.floor(Math.log(bytes) / Math.log(k));
|
|
11
|
+
return `${parseFloat((bytes / Math.pow(k, i)).toFixed(2))} ${sizes[i]}`;
|
|
12
|
+
}
|
|
13
|
+
export function mapProgressStageToStatus(stage) {
|
|
14
|
+
switch (stage) {
|
|
15
|
+
case "loading":
|
|
16
|
+
case "initializing":
|
|
17
|
+
return "pending";
|
|
18
|
+
case "uploading":
|
|
19
|
+
return "uploading";
|
|
20
|
+
case "complete":
|
|
21
|
+
return "success";
|
|
22
|
+
case "failed":
|
|
23
|
+
return "failed";
|
|
24
|
+
default:
|
|
25
|
+
return "pending";
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
export function mapUploadsToFileItems(uploadsArray, removeUpload, setSelectedNodeFn) {
|
|
29
|
+
return uploadsArray
|
|
30
|
+
.filter((upload) => upload !== undefined)
|
|
31
|
+
.map((upload) => ({
|
|
32
|
+
fileName: upload.fileName,
|
|
33
|
+
fileSize: upload.fileSize,
|
|
34
|
+
status: upload.status,
|
|
35
|
+
progress: upload.progress,
|
|
36
|
+
errorDetails: upload.errorDetails,
|
|
37
|
+
documentType: upload.documentType,
|
|
38
|
+
onClose: () => {
|
|
39
|
+
removeUpload(upload.id);
|
|
40
|
+
},
|
|
41
|
+
onOpenDocument: upload.status === "success"
|
|
42
|
+
? () => {
|
|
43
|
+
if (upload.fileNode && setSelectedNodeFn) {
|
|
44
|
+
setSelectedNodeFn(upload.fileNode);
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
console.error("Opening document for upload:", upload.id, "- fileNode not available or setSelectedNode not provided");
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
: undefined,
|
|
51
|
+
onFindResolution: upload.status === "failed"
|
|
52
|
+
? () => {
|
|
53
|
+
console.log("Finding resolution for upload:", upload.id);
|
|
54
|
+
}
|
|
55
|
+
: undefined,
|
|
56
|
+
}));
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../src/connect/components/drop-zone/utils.ts"],"names":[],"mappings":"AAyBA,oBAAoB;AACpB,MAAM,UAAU,UAAU;IACxB,OAAO,UAAU,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;AAC9E,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAa;IAC1C,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAClC,MAAM,CAAC,GAAG,IAAI,CAAC;IACf,MAAM,KAAK,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC1C,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,OAAO,GAAG,UAAU,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;AAC1E,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,KAAkC;IAElC,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,SAAS,CAAC;QACf,KAAK,cAAc;YACjB,OAAO,SAAS,CAAC;QACnB,KAAK,WAAW;YACd,OAAO,WAAW,CAAC;QACrB,KAAK,UAAU;YACb,OAAO,SAAS,CAAC;QACnB,KAAK,QAAQ;YACX,OAAO,QAAQ,CAAC;QAClB;YACE,OAAO,SAAS,CAAC;IACrB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,YAA2C,EAC3C,YAAwC,EACxC,iBAAuE;IAEvE,OAAO,YAAY;SAChB,MAAM,CACL,CAAC,MAAM,EAAwC,EAAE,CAAC,MAAM,KAAK,SAAS,CACvE;SACA,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAChB,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,OAAO,EAAE,GAAG,EAAE;YACZ,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC1B,CAAC;QACD,cAAc,EACZ,MAAM,CAAC,MAAM,KAAK,SAAS;YACzB,CAAC,CAAC,GAAG,EAAE;gBACH,IAAI,MAAM,CAAC,QAAQ,IAAI,iBAAiB,EAAE,CAAC;oBACzC,iBAAiB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACrC,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,KAAK,CACX,8BAA8B,EAC9B,MAAM,CAAC,EAAE,EACT,0DAA0D,CAC3D,CAAC;gBACJ,CAAC;YACH,CAAC;YACH,CAAC,CAAC,SAAS;QACf,gBAAgB,EACd,MAAM,CAAC,MAAM,KAAK,QAAQ;YACxB,CAAC,CAAC,GAAG,EAAE;gBACH,OAAO,CAAC,GAAG,CAAC,gCAAgC,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YAC3D,CAAC;YACH,CAAC,CAAC,SAAS;KAChB,CAAC,CAAC,CAAC;AACR,CAAC"}
|
|
@@ -8,6 +8,7 @@ export * from "./disclosure/index.js";
|
|
|
8
8
|
export * from "./divider/index.js";
|
|
9
9
|
export * from "./document-timeline/index.js";
|
|
10
10
|
export * from "./document-toolbar/index.js";
|
|
11
|
+
export * from "./drop-zone/index.js";
|
|
11
12
|
export * from "./dropdown-menu/index.js";
|
|
12
13
|
export * from "./editor-action-buttons/index.js";
|
|
13
14
|
export * from "./editor-undo-redo-buttons/index.js";
|
|
@@ -30,4 +31,6 @@ export * from "./tabs/index.js";
|
|
|
30
31
|
export * from "./toast/index.js";
|
|
31
32
|
export * from "./toggle/index.js";
|
|
32
33
|
export * from "./tooltip/index.js";
|
|
34
|
+
export * from "./upload-file-item/index.js";
|
|
35
|
+
export * from "./upload-file-list/index.js";
|
|
33
36
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/connect/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AACjD,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AACjD,cAAc,qCAAqC,CAAC;AACpD,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/connect/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AACjD,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AACjD,cAAc,qCAAqC,CAAC;AACpD,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,6BAA6B,CAAC"}
|
|
@@ -8,6 +8,7 @@ export * from "./disclosure/index.js";
|
|
|
8
8
|
export * from "./divider/index.js";
|
|
9
9
|
export * from "./document-timeline/index.js";
|
|
10
10
|
export * from "./document-toolbar/index.js";
|
|
11
|
+
export * from "./drop-zone/index.js";
|
|
11
12
|
export * from "./dropdown-menu/index.js";
|
|
12
13
|
export * from "./editor-action-buttons/index.js";
|
|
13
14
|
export * from "./editor-undo-redo-buttons/index.js";
|
|
@@ -30,4 +31,6 @@ export * from "./tabs/index.js";
|
|
|
30
31
|
export * from "./toast/index.js";
|
|
31
32
|
export * from "./toggle/index.js";
|
|
32
33
|
export * from "./tooltip/index.js";
|
|
34
|
+
export * from "./upload-file-item/index.js";
|
|
35
|
+
export * from "./upload-file-list/index.js";
|
|
33
36
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/connect/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AACjD,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AACjD,cAAc,qCAAqC,CAAC;AACpD,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/connect/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AACjD,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kCAAkC,CAAC;AACjD,cAAc,qCAAqC,CAAC;AACpD,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,uBAAuB,CAAC;AACtC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,6BAA6B,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { type UploadFileItemStatus } from "../upload-file-item.js";
|
|
2
|
+
type ErrorDetailsProps = {
|
|
3
|
+
readonly status: UploadFileItemStatus;
|
|
4
|
+
readonly errorDetails?: string;
|
|
5
|
+
};
|
|
6
|
+
export declare function ErrorDetails(props: ErrorDetailsProps): import("react/jsx-runtime").JSX.Element | null;
|
|
7
|
+
export {};
|
|
8
|
+
//# sourceMappingURL=error-details.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error-details.d.ts","sourceRoot":"","sources":["../../../../../../src/connect/components/upload-file-item/components/error-details.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAEnE,KAAK,iBAAiB,GAAG;IACvB,QAAQ,CAAC,MAAM,EAAE,oBAAoB,CAAC;IACtC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAChC,CAAC;AAEF,wBAAgB,YAAY,CAAC,KAAK,EAAE,iBAAiB,kDAUpD"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
export function ErrorDetails(props) {
|
|
3
|
+
const { status, errorDetails } = props;
|
|
4
|
+
if (!(status === "failed" && errorDetails))
|
|
5
|
+
return null;
|
|
6
|
+
return (_jsx("div", { className: "break-words text-xs leading-[18px] text-gray-500", children: errorDetails }));
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=error-details.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error-details.js","sourceRoot":"","sources":["../../../../../../src/connect/components/upload-file-item/components/error-details.tsx"],"names":[],"mappings":";AAOA,MAAM,UAAU,YAAY,CAAC,KAAwB;IACnD,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,KAAK,CAAC;IAEvC,IAAI,CAAC,CAAC,MAAM,KAAK,QAAQ,IAAI,YAAY,CAAC;QAAE,OAAO,IAAI,CAAC;IAExD,OAAO,CACL,cAAK,SAAS,EAAC,kDAAkD,YAC9D,YAAY,GACT,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { type ComponentPropsWithoutRef } from "react";
|
|
2
|
+
import type { DocumentTypeIcon } from "@powerhousedao/reactor-browser";
|
|
3
|
+
type HeaderProps = ComponentPropsWithoutRef<"div"> & {
|
|
4
|
+
readonly fileName: string;
|
|
5
|
+
readonly fileSize: string;
|
|
6
|
+
readonly documentType?: DocumentTypeIcon;
|
|
7
|
+
readonly onClose?: () => void;
|
|
8
|
+
};
|
|
9
|
+
export declare function Header(props: HeaderProps): import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=header.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"header.d.ts","sourceRoot":"","sources":["../../../../../../src/connect/components/upload-file-item/components/header.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,OAAO,CAAC;AACtD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAEvE,KAAK,WAAW,GAAG,wBAAwB,CAAC,KAAK,CAAC,GAAG;IACnD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,YAAY,CAAC,EAAE,gBAAgB,CAAC;IACzC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CAC/B,CAAC;AAyBF,wBAAgB,MAAM,CAAC,KAAK,EAAE,WAAW,2CAqCxC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Icon } from "#powerhouse";
|
|
3
|
+
function getDocumentIcon(documentType) {
|
|
4
|
+
switch (documentType) {
|
|
5
|
+
case "analytics-processor":
|
|
6
|
+
return "AnalyticsProcessorModule";
|
|
7
|
+
case "relational-processor":
|
|
8
|
+
return "RelationalProcessorModule";
|
|
9
|
+
case "codegen-processor":
|
|
10
|
+
return "CodegenProcessorModule";
|
|
11
|
+
case "app":
|
|
12
|
+
return "AppModule";
|
|
13
|
+
case "document-model":
|
|
14
|
+
return "DocumentModelModule";
|
|
15
|
+
case "editor":
|
|
16
|
+
return "EditorModule";
|
|
17
|
+
case "package":
|
|
18
|
+
return "PackageModule";
|
|
19
|
+
case "subgraph":
|
|
20
|
+
return "SubgraphModule";
|
|
21
|
+
default:
|
|
22
|
+
return "PowerhouseDocumentModule";
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
export function Header(props) {
|
|
26
|
+
const { fileName, fileSize, documentType, onClose, ...delegatedProps } = props;
|
|
27
|
+
return (_jsxs("div", { className: "flex items-center gap-2", ...delegatedProps, children: [_jsx("div", { className: "flex h-9 w-7 flex-shrink-0 items-center justify-center", children: _jsx(Icon, { name: getDocumentIcon(documentType), size: 48, className: "text-gray-600" }) }), _jsxs("div", { className: "flex flex-1 flex-col gap-0.5", children: [_jsx("div", { className: "text-xs font-medium leading-[18px] text-gray-900", children: fileName }), _jsx("div", { className: "text-xs font-medium leading-[18px] text-gray-500", children: fileSize })] }), onClose && (_jsx("div", { className: "flex h-9 w-[18px] flex-shrink-0 items-start justify-center", children: _jsx("button", { type: "button", onClick: onClose, className: "flex h-[18px] w-[18px] items-center justify-center text-gray-600 hover:text-gray-800", "aria-label": "Close", children: _jsx(Icon, { name: "XmarkLight", size: 18 }) }) }))] }));
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=header.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"header.js","sourceRoot":"","sources":["../../../../../../src/connect/components/upload-file-item/components/header.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAiB,MAAM,aAAa,CAAC;AAWlD,SAAS,eAAe,CAAC,YAA+B;IACtD,QAAQ,YAAY,EAAE,CAAC;QACrB,KAAK,qBAAqB;YACxB,OAAO,0BAA0B,CAAC;QACpC,KAAK,sBAAsB;YACzB,OAAO,2BAA2B,CAAC;QACrC,KAAK,mBAAmB;YACtB,OAAO,wBAAwB,CAAC;QAClC,KAAK,KAAK;YACR,OAAO,WAAW,CAAC;QACrB,KAAK,gBAAgB;YACnB,OAAO,qBAAqB,CAAC;QAC/B,KAAK,QAAQ;YACX,OAAO,cAAc,CAAC;QACxB,KAAK,SAAS;YACZ,OAAO,eAAe,CAAC;QACzB,KAAK,UAAU;YACb,OAAO,gBAAgB,CAAC;QAC1B;YACE,OAAO,0BAA0B,CAAC;IACtC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,KAAkB;IACvC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,cAAc,EAAE,GACpE,KAAK,CAAC;IAER,OAAO,CACL,eAAK,SAAS,EAAC,yBAAyB,KAAK,cAAc,aACzD,cAAK,SAAS,EAAC,wDAAwD,YACrE,KAAC,IAAI,IACH,IAAI,EAAE,eAAe,CAAC,YAAY,CAAC,EACnC,IAAI,EAAE,EAAE,EACR,SAAS,EAAC,eAAe,GACzB,GACE,EAEN,eAAK,SAAS,EAAC,8BAA8B,aAC3C,cAAK,SAAS,EAAC,kDAAkD,YAC9D,QAAQ,GACL,EACN,cAAK,SAAS,EAAC,kDAAkD,YAC9D,QAAQ,GACL,IACF,EAEL,OAAO,IAAI,CACV,cAAK,SAAS,EAAC,4DAA4D,YACzE,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,OAAO,EAChB,SAAS,EAAC,sFAAsF,gBACrF,OAAO,YAElB,KAAC,IAAI,IAAC,IAAI,EAAC,YAAY,EAAC,IAAI,EAAE,EAAE,GAAI,GAC7B,GACL,CACP,IACG,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/connect/components/upload-file-item/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/connect/components/upload-file-item/components/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { type UploadFileItemStatus } from "../upload-file-item.js";
|
|
2
|
+
type ProgressBarProps = {
|
|
3
|
+
readonly status: UploadFileItemStatus;
|
|
4
|
+
readonly progress?: number;
|
|
5
|
+
};
|
|
6
|
+
export declare function ProgressBar(props: ProgressBarProps): import("react/jsx-runtime").JSX.Element | null;
|
|
7
|
+
export {};
|
|
8
|
+
//# sourceMappingURL=progress-bar.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"progress-bar.d.ts","sourceRoot":"","sources":["../../../../../../src/connect/components/upload-file-item/components/progress-bar.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAEnE,KAAK,gBAAgB,GAAG;IACtB,QAAQ,CAAC,MAAM,EAAE,oBAAoB,CAAC;IACtC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,kDAelD"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
export function ProgressBar(props) {
|
|
3
|
+
const { status, progress = 0 } = props;
|
|
4
|
+
if (status !== "uploading")
|
|
5
|
+
return null;
|
|
6
|
+
const clamped = Math.min(100, Math.max(0, progress));
|
|
7
|
+
return (_jsx("div", { className: "h-2 w-full overflow-hidden rounded-sm bg-gray-200", children: _jsx("div", { className: "h-full bg-blue-900 transition-all duration-300 ease-out", style: { width: `${clamped}%` } }) }));
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=progress-bar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"progress-bar.js","sourceRoot":"","sources":["../../../../../../src/connect/components/upload-file-item/components/progress-bar.tsx"],"names":[],"mappings":";AAOA,MAAM,UAAU,WAAW,CAAC,KAAuB;IACjD,MAAM,EAAE,MAAM,EAAE,QAAQ,GAAG,CAAC,EAAE,GAAG,KAAK,CAAC;IAEvC,IAAI,MAAM,KAAK,WAAW;QAAE,OAAO,IAAI,CAAC;IAExC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;IAErD,OAAO,CACL,cAAK,SAAS,EAAC,mDAAmD,YAChE,cACE,SAAS,EAAC,yDAAyD,EACnE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,OAAO,GAAG,EAAE,GAC/B,GACE,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { type UploadFileItemStatus } from "../upload-file-item.js";
|
|
2
|
+
type StatusRowProps = {
|
|
3
|
+
readonly status: UploadFileItemStatus;
|
|
4
|
+
readonly progress?: number;
|
|
5
|
+
readonly onOpenDocument?: () => void;
|
|
6
|
+
readonly onFindResolution?: () => void;
|
|
7
|
+
};
|
|
8
|
+
export declare function StatusRow(props: StatusRowProps): import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
export {};
|
|
10
|
+
//# sourceMappingURL=status-row.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status-row.d.ts","sourceRoot":"","sources":["../../../../../../src/connect/components/upload-file-item/components/status-row.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAEnE,KAAK,cAAc,GAAG;IACpB,QAAQ,CAAC,MAAM,EAAE,oBAAoB,CAAC;IACtC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IACrC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,IAAI,CAAC;CACxC,CAAC;AAgDF,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,2CAiC9C"}
|