docxodus 4.0.2 → 4.1.0

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/react.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { useState, useEffect, useCallback, useRef, createElement, useMemo } from "react";
2
- import { initialize, convertDocxToHtml, compareDocuments, compareDocumentsToHtml, getRevisions, getAnnotations, addAnnotation, addAnnotationWithTarget, removeAnnotation, hasAnnotations, getDocumentStructure, isInitialized, } from "./index.js";
2
+ import { initialize, convertDocxToHtml, compareDocuments, compareDocumentsToHtml, getRevisions, getAnnotations, addAnnotation, addAnnotationWithTarget, removeAnnotation, hasAnnotations, getDocumentStructure, getDocumentMetadata, renderPageRange, isInitialized, } from "./index.js";
3
3
  import { AnnotationLabelMode, DocumentElementType, targetElement, targetParagraph, targetParagraphRange, targetRun, targetTable, targetTableRow, targetTableCell, targetTableColumn, targetSearch, targetSearchInElement, findElementById, findElementsByType, getParagraphs, getTables, getTableColumns, } from "./types.js";
4
4
  import { PaginationEngine, } from "./pagination.js";
5
5
  export { AnnotationLabelMode, DocumentElementType, targetElement, targetParagraph, targetParagraphRange, targetRun, targetTable, targetTableRow, targetTableCell, targetTableColumn, targetSearch, targetSearchInElement, findElementById, findElementsByType, getParagraphs, getTables, getTableColumns, };
@@ -184,6 +184,8 @@ export function useConversion(wasmBasePath) {
184
184
  }
185
185
  setIsConverting(true);
186
186
  setError(null);
187
+ // Yield to allow React to render the loading state before WASM blocks
188
+ await new Promise(resolve => requestAnimationFrame(resolve));
187
189
  try {
188
190
  const result = await convertToHtml(document, options);
189
191
  setHtml(result);
@@ -246,6 +248,8 @@ export function useComparison(wasmBasePath) {
246
248
  }
247
249
  setIsComparing(true);
248
250
  setError(null);
251
+ // Yield to allow React to render the loading state before WASM blocks
252
+ await new Promise(resolve => requestAnimationFrame(resolve));
249
253
  try {
250
254
  const docResult = await docxodus.compare(original, modified, options);
251
255
  setResult(docResult);
@@ -268,6 +272,8 @@ export function useComparison(wasmBasePath) {
268
272
  }
269
273
  setIsComparing(true);
270
274
  setError(null);
275
+ // Yield to allow React to render the loading state before WASM blocks
276
+ await new Promise(resolve => requestAnimationFrame(resolve));
271
277
  try {
272
278
  const htmlResult = await docxodus.compareToHtml(original, modified, options);
273
279
  setHtml(htmlResult);
@@ -557,6 +563,8 @@ export function useAnnotations(document, wasmBasePath) {
557
563
  }
558
564
  setIsLoading(true);
559
565
  setError(null);
566
+ // Yield to allow React to render the loading state before WASM blocks
567
+ await new Promise(resolve => requestAnimationFrame(resolve));
560
568
  try {
561
569
  const annots = await docxodus.getAnnotations(documentBytes);
562
570
  setAnnotations(annots);
@@ -579,6 +587,8 @@ export function useAnnotations(document, wasmBasePath) {
579
587
  }
580
588
  setIsLoading(true);
581
589
  setError(null);
590
+ // Yield to allow React to render the loading state before WASM blocks
591
+ await new Promise(resolve => requestAnimationFrame(resolve));
582
592
  try {
583
593
  const response = await docxodus.addAnnotation(documentBytes, request);
584
594
  if (response.success && response.documentBytes) {
@@ -608,6 +618,8 @@ export function useAnnotations(document, wasmBasePath) {
608
618
  }
609
619
  setIsLoading(true);
610
620
  setError(null);
621
+ // Yield to allow React to render the loading state before WASM blocks
622
+ await new Promise(resolve => requestAnimationFrame(resolve));
611
623
  try {
612
624
  const response = await docxodus.removeAnnotation(documentBytes, annotationId);
613
625
  if (response.success && response.documentBytes) {
@@ -814,6 +826,8 @@ export function useDocumentStructure(document, wasmBasePath) {
814
826
  }
815
827
  setIsLoading(true);
816
828
  setError(null);
829
+ // Yield to allow React to render the loading state before WASM blocks
830
+ await new Promise(resolve => requestAnimationFrame(resolve));
817
831
  try {
818
832
  const struct = await docxodus.getDocumentStructure(document);
819
833
  setStructure(struct);
@@ -876,4 +890,363 @@ export function useDocumentStructure(document, wasmBasePath) {
876
890
  getColumns,
877
891
  };
878
892
  }
893
+ /**
894
+ * Hook for managing virtual/lazy pagination of documents.
895
+ *
896
+ * @param document - DOCX file as File object or Uint8Array
897
+ * @param options - Virtual pagination options
898
+ * @param wasmBasePath - Optional custom path to WASM files
899
+ * @returns Virtual pagination state and operations
900
+ *
901
+ * @example
902
+ * ```tsx
903
+ * function LazyDocViewer({ docxFile }: { docxFile: File }) {
904
+ * const { metadata, pageStates, loadPages, isLoading } = useVirtualPagination(
905
+ * docxFile,
906
+ * { scale: 0.8, bufferPages: 2 }
907
+ * );
908
+ *
909
+ * if (isLoading) return <div>Loading document info...</div>;
910
+ * if (!metadata) return null;
911
+ *
912
+ * return (
913
+ * <div>
914
+ * <p>Document has {metadata.estimatedPageCount} estimated pages</p>
915
+ * {pageStates.map(page => (
916
+ * <div key={page.pageNumber}>
917
+ * {page.status === "loaded"
918
+ * ? <div dangerouslySetInnerHTML={{ __html: page.html! }} />
919
+ * : <div style={{ height: page.estimatedHeight }}>Loading...</div>
920
+ * }
921
+ * </div>
922
+ * ))}
923
+ * </div>
924
+ * );
925
+ * }
926
+ * ```
927
+ */
928
+ export function useVirtualPagination(document, options = {}, wasmBasePath) {
929
+ const docxodus = useDocxodus(wasmBasePath);
930
+ const [metadata, setMetadata] = useState(null);
931
+ const [pageStates, setPageStates] = useState([]);
932
+ const [isLoading, setIsLoading] = useState(false);
933
+ const [error, setError] = useState(null);
934
+ // Convert File to Uint8Array
935
+ const documentBytesRef = useRef(null);
936
+ const { scale = 1.0 } = options;
937
+ // Calculate total height
938
+ const totalHeight = useMemo(() => {
939
+ const gap = options.pageGap ?? 16;
940
+ return pageStates.reduce((sum, page) => sum + page.estimatedHeight * scale + gap, 0);
941
+ }, [pageStates, scale, options.pageGap]);
942
+ // Convert document to bytes
943
+ useEffect(() => {
944
+ if (!document) {
945
+ documentBytesRef.current = null;
946
+ return;
947
+ }
948
+ let cancelled = false;
949
+ const loadBytes = async () => {
950
+ try {
951
+ if (document instanceof Uint8Array) {
952
+ documentBytesRef.current = document;
953
+ }
954
+ else {
955
+ const buffer = await document.arrayBuffer();
956
+ if (!cancelled) {
957
+ documentBytesRef.current = new Uint8Array(buffer);
958
+ }
959
+ }
960
+ }
961
+ catch (err) {
962
+ if (!cancelled) {
963
+ setError(err instanceof Error ? err : new Error(String(err)));
964
+ }
965
+ }
966
+ };
967
+ loadBytes();
968
+ return () => {
969
+ cancelled = true;
970
+ };
971
+ }, [document]);
972
+ // Load metadata when document and WASM are ready
973
+ useEffect(() => {
974
+ if (!docxodus.isReady || !document) {
975
+ return;
976
+ }
977
+ let cancelled = false;
978
+ const loadMetadata = async () => {
979
+ setIsLoading(true);
980
+ setError(null);
981
+ try {
982
+ // Yield to main thread before heavy WASM work
983
+ await new Promise(resolve => requestAnimationFrame(resolve));
984
+ const meta = await getDocumentMetadata(document);
985
+ if (cancelled)
986
+ return;
987
+ setMetadata(meta);
988
+ // Create placeholder states for all pages
989
+ const pageCount = meta.estimatedPageCount;
990
+ const defaultHeight = meta.sections[0]?.contentHeightPt ?? 648;
991
+ const states = [];
992
+ for (let i = 1; i <= pageCount; i++) {
993
+ // Find which section this page belongs to (estimate)
994
+ let sectionIndex = 0;
995
+ let pagesAccum = 0;
996
+ for (let s = 0; s < meta.sections.length; s++) {
997
+ const section = meta.sections[s];
998
+ const sectionPages = Math.max(1, Math.ceil((section.paragraphCount + section.tableCount * 3) / 25));
999
+ pagesAccum += sectionPages;
1000
+ if (i <= pagesAccum) {
1001
+ sectionIndex = s;
1002
+ break;
1003
+ }
1004
+ }
1005
+ const section = meta.sections[sectionIndex] ?? meta.sections[0];
1006
+ const estimatedHeight = section?.contentHeightPt ?? defaultHeight;
1007
+ states.push({
1008
+ pageNumber: i,
1009
+ status: "placeholder",
1010
+ estimatedHeight,
1011
+ sectionIndex,
1012
+ });
1013
+ }
1014
+ setPageStates(states);
1015
+ }
1016
+ catch (err) {
1017
+ if (!cancelled) {
1018
+ setError(err instanceof Error ? err : new Error(String(err)));
1019
+ }
1020
+ }
1021
+ finally {
1022
+ if (!cancelled) {
1023
+ setIsLoading(false);
1024
+ }
1025
+ }
1026
+ };
1027
+ loadMetadata();
1028
+ return () => {
1029
+ cancelled = true;
1030
+ };
1031
+ }, [docxodus.isReady, document]);
1032
+ // Load specific pages
1033
+ const loadPages = useCallback(async (startPage, endPage) => {
1034
+ if (!documentBytesRef.current || !docxodus.isReady) {
1035
+ return;
1036
+ }
1037
+ // Mark pages as loading
1038
+ setPageStates(prev => prev.map(page => {
1039
+ if (page.pageNumber >= startPage && page.pageNumber <= endPage) {
1040
+ if (page.status === "placeholder") {
1041
+ return { ...page, status: "loading" };
1042
+ }
1043
+ }
1044
+ return page;
1045
+ }));
1046
+ try {
1047
+ // Yield to main thread
1048
+ await new Promise(resolve => requestAnimationFrame(resolve));
1049
+ const html = await renderPageRange(documentBytesRef.current, startPage, endPage, {
1050
+ paginationScale: scale,
1051
+ ...options.renderOptions,
1052
+ });
1053
+ // Update page states with loaded HTML
1054
+ setPageStates(prev => prev.map(page => {
1055
+ if (page.pageNumber >= startPage && page.pageNumber <= endPage) {
1056
+ options.onPageLoaded?.(page.pageNumber, html);
1057
+ return {
1058
+ ...page,
1059
+ status: "loaded",
1060
+ html,
1061
+ };
1062
+ }
1063
+ return page;
1064
+ }));
1065
+ }
1066
+ catch (err) {
1067
+ const errorMsg = err instanceof Error ? err.message : String(err);
1068
+ setPageStates(prev => prev.map(page => {
1069
+ if (page.pageNumber >= startPage && page.pageNumber <= endPage) {
1070
+ return {
1071
+ ...page,
1072
+ status: "error",
1073
+ error: errorMsg,
1074
+ };
1075
+ }
1076
+ return page;
1077
+ }));
1078
+ setError(err instanceof Error ? err : new Error(String(err)));
1079
+ }
1080
+ }, [docxodus.isReady, scale, options]);
1081
+ const isPageLoaded = useCallback((pageNumber) => {
1082
+ const page = pageStates.find(p => p.pageNumber === pageNumber);
1083
+ return page?.status === "loaded";
1084
+ }, [pageStates]);
1085
+ return {
1086
+ metadata,
1087
+ pageStates,
1088
+ isLoading,
1089
+ error,
1090
+ totalHeight,
1091
+ loadPages,
1092
+ isPageLoaded,
1093
+ };
1094
+ }
1095
+ /**
1096
+ * Virtual scrolling document viewer component.
1097
+ *
1098
+ * Renders document pages lazily as they come into view, dramatically reducing
1099
+ * initial load time and memory usage for large documents.
1100
+ *
1101
+ * @example
1102
+ * ```tsx
1103
+ * function DocumentViewer() {
1104
+ * const [doc, setDoc] = useState<File | null>(null);
1105
+ *
1106
+ * return (
1107
+ * <div>
1108
+ * <input
1109
+ * type="file"
1110
+ * accept=".docx"
1111
+ * onChange={e => setDoc(e.target.files?.[0] ?? null)}
1112
+ * />
1113
+ * <VirtualPaginatedDocument
1114
+ * document={doc}
1115
+ * scale={0.8}
1116
+ * bufferPages={3}
1117
+ * onPageVisible={page => console.log(`Page ${page} visible`)}
1118
+ * />
1119
+ * </div>
1120
+ * );
1121
+ * }
1122
+ * ```
1123
+ */
1124
+ export function VirtualPaginatedDocument({ document, scale = 1.0, bufferPages = 3, pageGap = 16, backgroundColor = "#f0f0f0", cssPrefix = "vpage-", className, style, onPageVisible, onMetadataLoaded, wasmBasePath, renderOptions, }) {
1125
+ const containerRef = useRef(null);
1126
+ const observerRef = useRef(null);
1127
+ const loadingPagesRef = useRef(new Set());
1128
+ const { metadata, pageStates, isLoading, error, loadPages, isPageLoaded, } = useVirtualPagination(document, {
1129
+ scale,
1130
+ bufferPages,
1131
+ cssPrefix,
1132
+ backgroundColor,
1133
+ pageGap,
1134
+ onPageVisible,
1135
+ renderOptions,
1136
+ }, wasmBasePath);
1137
+ // Notify when metadata is loaded
1138
+ useEffect(() => {
1139
+ if (metadata) {
1140
+ onMetadataLoaded?.(metadata);
1141
+ }
1142
+ }, [metadata, onMetadataLoaded]);
1143
+ // Set up IntersectionObserver for lazy loading
1144
+ useEffect(() => {
1145
+ if (!containerRef.current || !metadata || pageStates.length === 0) {
1146
+ return;
1147
+ }
1148
+ // Calculate buffer margin based on average page height
1149
+ const avgHeight = pageStates.reduce((sum, p) => sum + p.estimatedHeight, 0) / pageStates.length;
1150
+ const bufferPx = bufferPages * avgHeight * scale;
1151
+ observerRef.current = new IntersectionObserver((entries) => {
1152
+ entries.forEach(async (entry) => {
1153
+ if (!entry.isIntersecting)
1154
+ return;
1155
+ const pageNum = parseInt(entry.target.getAttribute("data-page") ?? "0", 10);
1156
+ if (pageNum <= 0)
1157
+ return;
1158
+ // Notify visibility
1159
+ onPageVisible?.(pageNum);
1160
+ // Load page if not already loaded/loading
1161
+ if (!isPageLoaded(pageNum) && !loadingPagesRef.current.has(pageNum)) {
1162
+ loadingPagesRef.current.add(pageNum);
1163
+ await loadPages(pageNum, pageNum);
1164
+ loadingPagesRef.current.delete(pageNum);
1165
+ }
1166
+ });
1167
+ }, {
1168
+ root: containerRef.current,
1169
+ rootMargin: `${bufferPx}px 0px`,
1170
+ threshold: 0,
1171
+ });
1172
+ // Observe all placeholder elements
1173
+ const placeholders = containerRef.current.querySelectorAll(`[data-page]`);
1174
+ placeholders.forEach(el => observerRef.current?.observe(el));
1175
+ return () => {
1176
+ observerRef.current?.disconnect();
1177
+ };
1178
+ }, [metadata, pageStates, bufferPages, scale, loadPages, isPageLoaded, onPageVisible]);
1179
+ // Container styles
1180
+ const containerStyle = {
1181
+ backgroundColor,
1182
+ minHeight: "100vh",
1183
+ overflow: "auto",
1184
+ display: "flex",
1185
+ flexDirection: "column",
1186
+ alignItems: "center",
1187
+ padding: pageGap,
1188
+ gap: pageGap,
1189
+ ...style,
1190
+ };
1191
+ // Loading state
1192
+ if (isLoading) {
1193
+ return createElement("div", {
1194
+ className,
1195
+ style: { ...containerStyle, justifyContent: "center" },
1196
+ }, "Loading document...");
1197
+ }
1198
+ // Error state
1199
+ if (error) {
1200
+ return createElement("div", {
1201
+ className,
1202
+ style: { ...containerStyle, color: "red" },
1203
+ }, `Error: ${error.message}`);
1204
+ }
1205
+ // Empty state
1206
+ if (!document || !metadata || pageStates.length === 0) {
1207
+ return createElement("div", {
1208
+ className,
1209
+ style: containerStyle,
1210
+ }, "No document loaded");
1211
+ }
1212
+ // Render virtual pages
1213
+ return createElement("div", {
1214
+ ref: containerRef,
1215
+ className,
1216
+ style: containerStyle,
1217
+ }, pageStates.map(page => {
1218
+ const section = metadata.sections[page.sectionIndex] ?? metadata.sections[0];
1219
+ const width = (section?.pageWidthPt ?? 612) * scale;
1220
+ const height = page.estimatedHeight * scale;
1221
+ const pageStyle = {
1222
+ width,
1223
+ minHeight: height,
1224
+ backgroundColor: "white",
1225
+ boxShadow: "0 2px 8px rgba(0,0,0,0.15)",
1226
+ position: "relative",
1227
+ };
1228
+ if (page.status === "loaded" && page.html) {
1229
+ return createElement("div", {
1230
+ key: page.pageNumber,
1231
+ "data-page": page.pageNumber,
1232
+ className: `${cssPrefix}page ${cssPrefix}loaded`,
1233
+ style: pageStyle,
1234
+ dangerouslySetInnerHTML: { __html: page.html },
1235
+ });
1236
+ }
1237
+ // Placeholder
1238
+ return createElement("div", {
1239
+ key: page.pageNumber,
1240
+ "data-page": page.pageNumber,
1241
+ className: `${cssPrefix}page ${cssPrefix}placeholder`,
1242
+ style: {
1243
+ ...pageStyle,
1244
+ display: "flex",
1245
+ alignItems: "center",
1246
+ justifyContent: "center",
1247
+ color: "#999",
1248
+ },
1249
+ }, page.status === "loading" ? "Loading..." : `Page ${page.pageNumber}`);
1250
+ }));
1251
+ }
879
1252
  //# sourceMappingURL=react.js.map
package/dist/react.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"react.js","sourceRoot":"","sources":["../src/react.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"react.js","sourceRoot":"","sources":["../src/react.ts"],"names":[],"mappings":"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"}