@powerhousedao/design-system 5.0.0-staging.12 → 5.0.0-staging.14

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.
Files changed (119) hide show
  1. package/dist/src/connect/components/drop-zone/drop-zone.d.ts +18 -0
  2. package/dist/src/connect/components/drop-zone/drop-zone.d.ts.map +1 -0
  3. package/dist/src/connect/components/drop-zone/drop-zone.js +22 -0
  4. package/dist/src/connect/components/drop-zone/drop-zone.js.map +1 -0
  5. package/dist/src/connect/components/drop-zone/index.d.ts +2 -0
  6. package/dist/src/connect/components/drop-zone/index.d.ts.map +1 -0
  7. package/dist/src/connect/components/drop-zone/index.js +2 -0
  8. package/dist/src/connect/components/drop-zone/index.js.map +1 -0
  9. package/dist/src/connect/components/drop-zone/upload-file-list-container.d.ts +13 -0
  10. package/dist/src/connect/components/drop-zone/upload-file-list-container.d.ts.map +1 -0
  11. package/dist/src/connect/components/drop-zone/upload-file-list-container.js +14 -0
  12. package/dist/src/connect/components/drop-zone/upload-file-list-container.js.map +1 -0
  13. package/dist/src/connect/components/drop-zone/use-upload-tracker.d.ts +15 -0
  14. package/dist/src/connect/components/drop-zone/use-upload-tracker.d.ts.map +1 -0
  15. package/dist/src/connect/components/drop-zone/use-upload-tracker.js +179 -0
  16. package/dist/src/connect/components/drop-zone/use-upload-tracker.js.map +1 -0
  17. package/dist/src/connect/components/drop-zone/utils.d.ts +19 -0
  18. package/dist/src/connect/components/drop-zone/utils.d.ts.map +1 -0
  19. package/dist/src/connect/components/drop-zone/utils.js +58 -0
  20. package/dist/src/connect/components/drop-zone/utils.js.map +1 -0
  21. package/dist/src/connect/components/index.d.ts +3 -0
  22. package/dist/src/connect/components/index.d.ts.map +1 -1
  23. package/dist/src/connect/components/index.js +3 -0
  24. package/dist/src/connect/components/index.js.map +1 -1
  25. package/dist/src/connect/components/upload-file-item/components/error-details.d.ts +8 -0
  26. package/dist/src/connect/components/upload-file-item/components/error-details.d.ts.map +1 -0
  27. package/dist/src/connect/components/upload-file-item/components/error-details.js +8 -0
  28. package/dist/src/connect/components/upload-file-item/components/error-details.js.map +1 -0
  29. package/dist/src/connect/components/upload-file-item/components/header.d.ts +11 -0
  30. package/dist/src/connect/components/upload-file-item/components/header.d.ts.map +1 -0
  31. package/dist/src/connect/components/upload-file-item/components/header.js +29 -0
  32. package/dist/src/connect/components/upload-file-item/components/header.js.map +1 -0
  33. package/dist/src/connect/components/upload-file-item/components/index.d.ts +5 -0
  34. package/dist/src/connect/components/upload-file-item/components/index.d.ts.map +1 -0
  35. package/dist/src/connect/components/upload-file-item/components/index.js +5 -0
  36. package/dist/src/connect/components/upload-file-item/components/index.js.map +1 -0
  37. package/dist/src/connect/components/upload-file-item/components/progress-bar.d.ts +8 -0
  38. package/dist/src/connect/components/upload-file-item/components/progress-bar.d.ts.map +1 -0
  39. package/dist/src/connect/components/upload-file-item/components/progress-bar.js +9 -0
  40. package/dist/src/connect/components/upload-file-item/components/progress-bar.js.map +1 -0
  41. package/dist/src/connect/components/upload-file-item/components/status-row.d.ts +10 -0
  42. package/dist/src/connect/components/upload-file-item/components/status-row.d.ts.map +1 -0
  43. package/dist/src/connect/components/upload-file-item/components/status-row.js +51 -0
  44. package/dist/src/connect/components/upload-file-item/components/status-row.js.map +1 -0
  45. package/dist/src/connect/components/upload-file-item/index.d.ts +2 -0
  46. package/dist/src/connect/components/upload-file-item/index.d.ts.map +1 -0
  47. package/dist/src/connect/components/upload-file-item/index.js +2 -0
  48. package/dist/src/connect/components/upload-file-item/index.js.map +1 -0
  49. package/dist/src/connect/components/upload-file-item/upload-file-item.d.ts +26 -0
  50. package/dist/src/connect/components/upload-file-item/upload-file-item.d.ts.map +1 -0
  51. package/dist/src/connect/components/upload-file-item/upload-file-item.js +12 -0
  52. package/dist/src/connect/components/upload-file-item/upload-file-item.js.map +1 -0
  53. package/dist/src/connect/components/upload-file-list/index.d.ts +3 -0
  54. package/dist/src/connect/components/upload-file-list/index.d.ts.map +1 -0
  55. package/dist/src/connect/components/upload-file-list/index.js +3 -0
  56. package/dist/src/connect/components/upload-file-list/index.js.map +1 -0
  57. package/dist/src/connect/components/upload-file-list/upload-file-list.d.ts +10 -0
  58. package/dist/src/connect/components/upload-file-list/upload-file-list.d.ts.map +1 -0
  59. package/dist/src/connect/components/upload-file-list/upload-file-list.js +13 -0
  60. package/dist/src/connect/components/upload-file-list/upload-file-list.js.map +1 -0
  61. package/dist/src/connect/components/upload-file-list/utils.d.ts +2 -0
  62. package/dist/src/connect/components/upload-file-list/utils.d.ts.map +1 -0
  63. package/dist/src/connect/components/upload-file-list/utils.js +6 -0
  64. package/dist/src/connect/components/upload-file-list/utils.js.map +1 -0
  65. package/dist/src/connect/hooks/drag-and-drop/use-drop.d.ts +7 -7
  66. package/dist/src/connect/hooks/drag-and-drop/use-drop.d.ts.map +1 -1
  67. package/dist/src/connect/hooks/drag-and-drop/use-drop.js +44 -11
  68. package/dist/src/connect/hooks/drag-and-drop/use-drop.js.map +1 -1
  69. package/dist/src/powerhouse/components/icon-components/AnalyticsProcessorModule.d.ts +3 -0
  70. package/dist/src/powerhouse/components/icon-components/AnalyticsProcessorModule.d.ts.map +1 -0
  71. package/dist/src/powerhouse/components/icon-components/AnalyticsProcessorModule.js +5 -0
  72. package/dist/src/powerhouse/components/icon-components/AnalyticsProcessorModule.js.map +1 -0
  73. package/dist/src/powerhouse/components/icon-components/AppModule.d.ts +3 -0
  74. package/dist/src/powerhouse/components/icon-components/AppModule.d.ts.map +1 -0
  75. package/dist/src/powerhouse/components/icon-components/AppModule.js +5 -0
  76. package/dist/src/powerhouse/components/icon-components/AppModule.js.map +1 -0
  77. package/dist/src/powerhouse/components/icon-components/CodegenProcessorModule.d.ts +3 -0
  78. package/dist/src/powerhouse/components/icon-components/CodegenProcessorModule.d.ts.map +1 -0
  79. package/dist/src/powerhouse/components/icon-components/CodegenProcessorModule.js +5 -0
  80. package/dist/src/powerhouse/components/icon-components/CodegenProcessorModule.js.map +1 -0
  81. package/dist/src/powerhouse/components/icon-components/DocumentIcons.d.ts +3 -0
  82. package/dist/src/powerhouse/components/icon-components/DocumentIcons.d.ts.map +1 -0
  83. package/dist/src/powerhouse/components/icon-components/DocumentIcons.js +5 -0
  84. package/dist/src/powerhouse/components/icon-components/DocumentIcons.js.map +1 -0
  85. package/dist/src/powerhouse/components/icon-components/DocumentModel.d.ts +3 -0
  86. package/dist/src/powerhouse/components/icon-components/DocumentModel.d.ts.map +1 -0
  87. package/dist/src/powerhouse/components/icon-components/DocumentModel.js +5 -0
  88. package/dist/src/powerhouse/components/icon-components/DocumentModel.js.map +1 -0
  89. package/dist/src/powerhouse/components/icon-components/DocumentModelModule.d.ts +3 -0
  90. package/dist/src/powerhouse/components/icon-components/DocumentModelModule.d.ts.map +1 -0
  91. package/dist/src/powerhouse/components/icon-components/DocumentModelModule.js +5 -0
  92. package/dist/src/powerhouse/components/icon-components/DocumentModelModule.js.map +1 -0
  93. package/dist/src/powerhouse/components/icon-components/EditorModule.d.ts +3 -0
  94. package/dist/src/powerhouse/components/icon-components/EditorModule.d.ts.map +1 -0
  95. package/dist/src/powerhouse/components/icon-components/EditorModule.js +5 -0
  96. package/dist/src/powerhouse/components/icon-components/EditorModule.js.map +1 -0
  97. package/dist/src/powerhouse/components/icon-components/PackageModule.d.ts +3 -0
  98. package/dist/src/powerhouse/components/icon-components/PackageModule.d.ts.map +1 -0
  99. package/dist/src/powerhouse/components/icon-components/PackageModule.js +5 -0
  100. package/dist/src/powerhouse/components/icon-components/PackageModule.js.map +1 -0
  101. package/dist/src/powerhouse/components/icon-components/PowerhouseDocumentModule.d.ts +3 -0
  102. package/dist/src/powerhouse/components/icon-components/PowerhouseDocumentModule.d.ts.map +1 -0
  103. package/dist/src/powerhouse/components/icon-components/PowerhouseDocumentModule.js +5 -0
  104. package/dist/src/powerhouse/components/icon-components/PowerhouseDocumentModule.js.map +1 -0
  105. package/dist/src/powerhouse/components/icon-components/RelationalProcessorModule.d.ts +3 -0
  106. package/dist/src/powerhouse/components/icon-components/RelationalProcessorModule.d.ts.map +1 -0
  107. package/dist/src/powerhouse/components/icon-components/RelationalProcessorModule.js +5 -0
  108. package/dist/src/powerhouse/components/icon-components/RelationalProcessorModule.js.map +1 -0
  109. package/dist/src/powerhouse/components/icon-components/SubgraphModule.d.ts +3 -0
  110. package/dist/src/powerhouse/components/icon-components/SubgraphModule.d.ts.map +1 -0
  111. package/dist/src/powerhouse/components/icon-components/SubgraphModule.js +5 -0
  112. package/dist/src/powerhouse/components/icon-components/SubgraphModule.js.map +1 -0
  113. package/dist/src/powerhouse/components/icon-components/index.d.ts +1 -1
  114. package/dist/src/powerhouse/components/icon-components/index.d.ts.map +1 -1
  115. package/dist/src/powerhouse/components/icon-components/index.js +33 -0
  116. package/dist/src/powerhouse/components/icon-components/index.js.map +1 -1
  117. package/dist/style.css +112 -0
  118. package/dist/tsconfig.lib.tsbuildinfo +1 -1
  119. 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,2 @@
1
+ export { DropZone, type DropZoneProps } from "./drop-zone.js";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -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,2 @@
1
+ export { DropZone } from "./drop-zone.js";
2
+ //# sourceMappingURL=index.js.map
@@ -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,5 @@
1
+ export { ErrorDetails } from "./error-details.js";
2
+ export { Header } from "./header.js";
3
+ export { ProgressBar } from "./progress-bar.js";
4
+ export { StatusRow } from "./status-row.js";
5
+ //# sourceMappingURL=index.d.ts.map
@@ -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,5 @@
1
+ export { ErrorDetails } from "./error-details.js";
2
+ export { Header } from "./header.js";
3
+ export { ProgressBar } from "./progress-bar.js";
4
+ export { StatusRow } from "./status-row.js";
5
+ //# sourceMappingURL=index.js.map
@@ -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"}