@docmentis/udoc-viewer 0.6.19 → 0.6.21

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 (50) hide show
  1. package/README.md +23 -1
  2. package/dist/package.json +1 -1
  3. package/dist/src/UDocClient.d.ts +11 -0
  4. package/dist/src/UDocClient.d.ts.map +1 -1
  5. package/dist/src/UDocClient.js +1 -1
  6. package/dist/src/UDocClient.js.map +1 -1
  7. package/dist/src/UDocViewer.d.ts +44 -6
  8. package/dist/src/UDocViewer.d.ts.map +1 -1
  9. package/dist/src/UDocViewer.js +64 -9
  10. package/dist/src/UDocViewer.js.map +1 -1
  11. package/dist/src/index.d.ts +1 -1
  12. package/dist/src/index.d.ts.map +1 -1
  13. package/dist/src/index.js.map +1 -1
  14. package/dist/src/ui/viewer/actions.d.ts +16 -1
  15. package/dist/src/ui/viewer/actions.d.ts.map +1 -1
  16. package/dist/src/ui/viewer/components/Spread.d.ts.map +1 -1
  17. package/dist/src/ui/viewer/components/Spread.js +4 -0
  18. package/dist/src/ui/viewer/components/Spread.js.map +1 -1
  19. package/dist/src/ui/viewer/components/Viewport.d.ts.map +1 -1
  20. package/dist/src/ui/viewer/components/Viewport.js +33 -2
  21. package/dist/src/ui/viewer/components/Viewport.js.map +1 -1
  22. package/dist/src/ui/viewer/effects.d.ts.map +1 -1
  23. package/dist/src/ui/viewer/effects.js +12 -5
  24. package/dist/src/ui/viewer/effects.js.map +1 -1
  25. package/dist/src/ui/viewer/navigation.d.ts +11 -0
  26. package/dist/src/ui/viewer/navigation.d.ts.map +1 -1
  27. package/dist/src/ui/viewer/navigation.js.map +1 -1
  28. package/dist/src/ui/viewer/reducer.d.ts.map +1 -1
  29. package/dist/src/ui/viewer/reducer.js +45 -7
  30. package/dist/src/ui/viewer/reducer.js.map +1 -1
  31. package/dist/src/ui/viewer/search/search.d.ts.map +1 -1
  32. package/dist/src/ui/viewer/search/search.js +74 -25
  33. package/dist/src/ui/viewer/search/search.js.map +1 -1
  34. package/dist/src/ui/viewer/shell.d.ts.map +1 -1
  35. package/dist/src/ui/viewer/shell.js +1 -0
  36. package/dist/src/ui/viewer/shell.js.map +1 -1
  37. package/dist/src/ui/viewer/state.d.ts +12 -1
  38. package/dist/src/ui/viewer/state.d.ts.map +1 -1
  39. package/dist/src/ui/viewer/state.js +5 -0
  40. package/dist/src/ui/viewer/state.js.map +1 -1
  41. package/dist/src/ui/viewer/text/render.d.ts.map +1 -1
  42. package/dist/src/ui/viewer/text/render.js +51 -12
  43. package/dist/src/ui/viewer/text/render.js.map +1 -1
  44. package/dist/src/wasm/udoc.d.ts +65 -65
  45. package/dist/src/wasm/udoc.js +10 -10
  46. package/dist/src/wasm/udoc_bg.wasm +0 -0
  47. package/dist/src/wasm/udoc_bg.wasm.d.ts +3 -3
  48. package/dist/src/worker/worker-inline.js +1 -1
  49. package/dist/src/worker/worker.js +9 -9
  50. package/package.json +1 -1
@@ -90,13 +90,20 @@ function renderFlat(layer, layout, scale) {
90
90
  measurements[i] = pendingSpans[i].span.offsetWidth;
91
91
  }
92
92
  for (let i = 0; i < pendingSpans.length; i++) {
93
- const { span, targetWidth } = pendingSpans[i];
93
+ const { span, targetWidth, angle } = pendingSpans[i];
94
94
  const naturalWidth = measurements[i];
95
+ const hasRotation = Math.abs(angle) > 0.1;
95
96
  if (naturalWidth > 0 && targetWidth > 0) {
96
97
  const sx = targetWidth / naturalWidth;
97
98
  if (Math.abs(sx - 1) > 0.001) {
98
- span.style.transform = `scaleX(${sx})`;
99
+ span.style.transform = hasRotation ? `rotate(${angle}deg) scaleX(${sx})` : `scaleX(${sx})`;
99
100
  }
101
+ else if (hasRotation) {
102
+ span.style.transform = `rotate(${angle}deg)`;
103
+ }
104
+ }
105
+ else if (hasRotation) {
106
+ span.style.transform = `rotate(${angle}deg)`;
100
107
  }
101
108
  span.style.width = px(naturalWidth);
102
109
  }
@@ -133,12 +140,16 @@ function flattenRun(base, run, scale, pending) {
133
140
  if (!c.text || c.glyphs.length === 0)
134
141
  return null;
135
142
  const fontSize = c.fontSize * effectiveScaleY;
136
- const x = combined.translateX * scale;
137
- const y = (combined.translateY - c.ascent * effectiveScaleY) * scale;
143
+ const ascent = c.ascent * effectiveScaleY;
138
144
  const height = (c.ascent + c.descent) * effectiveScaleY * scale;
139
145
  const lastGlyph = c.glyphs[c.glyphs.length - 1];
140
146
  const targetWidth = (lastGlyph.x + lastGlyph.advance) * effectiveScaleX * scale;
141
- const angle = Math.atan2(combined.skewY, combined.scaleX) * (180 / Math.PI);
147
+ const angleRad = Math.atan2(combined.skewY, combined.scaleX);
148
+ const angle = angleRad * (180 / Math.PI);
149
+ // Position the span's top-left so that after CSS rotate(angle) around (0,0),
150
+ // the baseline origin (local 0, ascent) lands at the transform's translate.
151
+ const x = (combined.translateX + Math.sin(angleRad) * ascent) * scale;
152
+ const y = (combined.translateY - Math.cos(angleRad) * ascent) * scale;
142
153
  const span = document.createElement("span");
143
154
  span.className = "udoc-text-run";
144
155
  span.textContent = c.text;
@@ -148,18 +159,18 @@ function flattenRun(base, run, scale, pending) {
148
159
  span.style.lineHeight = px(height);
149
160
  span.style.height = px(height);
150
161
  span.style.transformOrigin = "0 0";
151
- if (Math.abs(angle) > 0.1) {
152
- span.style.transform = `rotate(${angle}deg)`;
153
- }
154
- pending.push({ span, targetWidth });
162
+ pending.push({ span, targetWidth, angle });
155
163
  return span;
156
164
  }
157
165
  if (c.type === "space" || c.type === "tab") {
158
166
  const fontSize = c.fontSize * effectiveScaleY;
159
- const x = combined.translateX * scale;
160
- const y = (combined.translateY - c.ascent * effectiveScaleY) * scale;
167
+ const ascent = c.ascent * effectiveScaleY;
161
168
  const width = c.advance * effectiveScaleX * scale;
162
169
  const height = (c.ascent + c.descent) * effectiveScaleY * scale;
170
+ const angleRad = Math.atan2(combined.skewY, combined.scaleX);
171
+ const angle = angleRad * (180 / Math.PI);
172
+ const x = (combined.translateX + Math.sin(angleRad) * ascent) * scale;
173
+ const y = (combined.translateY - Math.cos(angleRad) * ascent) * scale;
163
174
  const span = document.createElement("span");
164
175
  span.className = "udoc-text-run";
165
176
  span.textContent = c.type === "tab" ? "\t" : " ";
@@ -169,6 +180,10 @@ function flattenRun(base, run, scale, pending) {
169
180
  span.style.lineHeight = px(height);
170
181
  span.style.width = px(width);
171
182
  span.style.height = px(height);
183
+ if (Math.abs(angle) > 0.1) {
184
+ span.style.transformOrigin = "0 0";
185
+ span.style.transform = `rotate(${angle}deg)`;
186
+ }
172
187
  return span;
173
188
  }
174
189
  if (c.type === "break") {
@@ -181,6 +196,20 @@ function flattenRun(base, run, scale, pending) {
181
196
  span.style.overflow = "hidden";
182
197
  return span;
183
198
  }
199
+ if (c.type === "paragraphEnd") {
200
+ const x = combined.translateX * scale;
201
+ const y = combined.translateY * scale;
202
+ const width = c.advance * effectiveScaleX * scale;
203
+ const span = document.createElement("span");
204
+ span.className = "udoc-text-run";
205
+ span.textContent = "\n";
206
+ span.style.left = px(x);
207
+ span.style.top = px(y);
208
+ span.style.width = px(width);
209
+ span.style.fontSize = "1px";
210
+ span.style.lineHeight = "1px";
211
+ return span;
212
+ }
184
213
  if (c.type === "inlineDrawing") {
185
214
  const x = combined.translateX * scale;
186
215
  const y = combined.translateY * scale;
@@ -314,7 +343,7 @@ function buildRunHierarchical(run, baseline, effectiveWidth, lineHeight, scale,
314
343
  span.style.lineHeight = px(lineHeight * scale);
315
344
  span.style.transformOrigin = "0 0";
316
345
  const targetWidth = effectiveWidth * scale;
317
- pending.push({ span, targetWidth });
346
+ pending.push({ span, targetWidth, angle: 0 });
318
347
  return span;
319
348
  }
320
349
  if (c.type === "space" || c.type === "tab") {
@@ -338,6 +367,16 @@ function buildRunHierarchical(run, baseline, effectiveWidth, lineHeight, scale,
338
367
  span.style.overflow = "hidden";
339
368
  return span;
340
369
  }
370
+ if (c.type === "paragraphEnd") {
371
+ const span = document.createElement("span");
372
+ span.className = "udoc-text-run";
373
+ span.textContent = "\n";
374
+ span.style.left = px(run.x * scale);
375
+ span.style.width = px(effectiveWidth * scale);
376
+ span.style.fontSize = "1px";
377
+ span.style.lineHeight = px(lineHeight * scale);
378
+ return span;
379
+ }
341
380
  if (c.type === "inlineDrawing") {
342
381
  const span = document.createElement("span");
343
382
  span.className = "udoc-text-run";
@@ -1 +1 @@
1
- {"version":3,"file":"render.js","sourceRoot":"","sources":["../../../../../src/ui/viewer/text/render.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"render.js","sourceRoot":"","sources":["../../../../../src/ui/viewer/text/render.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,5 @@
1
1
  /* tslint:disable */
2
2
  /* eslint-disable */
3
- export type JsViewerLayoutMode = "single-page" | "double-page-odd-right" | "double-page-odd-left";
4
-
5
3
  export type JsViewerScrollMode = "spread" | "continuous";
6
4
 
7
5
  export interface JsViewerPreferences {
@@ -9,6 +7,8 @@ export interface JsViewerPreferences {
9
7
  scrollMode?: JsViewerScrollMode;
10
8
  }
11
9
 
10
+ export type JsViewerLayoutMode = "single-page" | "double-page-odd-right" | "double-page-odd-left";
11
+
12
12
 
13
13
  export type Orientation = "horizontal" | "vertical";
14
14
  export type SideDirection = "left" | "right" | "up" | "down";
@@ -105,22 +105,15 @@ export interface FontUsageEntry {
105
105
  }
106
106
 
107
107
 
108
- export interface JsLayoutTable {
109
- width: number;
110
- height: number;
111
- columns: JsLayoutTableColumn[];
112
- rows: JsLayoutTableRow[];
113
- }
114
-
115
- export interface JsLayoutTableColumn {
108
+ export interface JsLayoutTableCell {
109
+ colIndex: number;
110
+ colSpan: number;
111
+ rowSpan: number;
116
112
  x: number;
117
- width: number;
118
- }
119
-
120
- export interface JsLayoutTableRow {
121
113
  y: number;
114
+ width: number;
122
115
  height: number;
123
- cells: JsLayoutTableCell[];
116
+ parcel?: JsLayoutParcel;
124
117
  }
125
118
 
126
119
  export interface JsLayoutLine {
@@ -134,23 +127,11 @@ export interface JsLayoutLine {
134
127
  content: JsLayoutLineContent;
135
128
  }
136
129
 
137
- export type JsLayoutLineContent = ({ type: "runList" } & JsLayoutRunList) | ({ type: "table" } & JsLayoutTable);
138
-
139
- export interface JsLayoutRunList {
140
- baseline: number;
141
- width: number;
142
- height: number;
143
- runs: JsLayoutRun[];
144
- }
145
-
146
- export interface JsLayoutGrid {
130
+ export interface JsLayoutRun {
147
131
  x: number;
148
- y: number;
149
132
  width: number;
150
- height: number;
151
- scale: number;
152
- columns: JsLayoutGridColumn[];
153
- rows: JsLayoutGridRow[];
133
+ transform: JsTransform;
134
+ content: JsLayoutRunContent;
154
135
  }
155
136
 
156
137
  export interface JsLayoutParcel {
@@ -161,7 +142,11 @@ export interface JsLayoutParcel {
161
142
  lines: JsLayoutLine[];
162
143
  }
163
144
 
164
- export type JsLayoutRunContent = { type: "glyphs"; text: string; fontSize: number; ascent: number; descent: number; glyphs: JsLayoutGlyph[] } | { type: "space"; advance: number; fontSize: number; ascent: number; descent: number } | { type: "tab"; advance: number; fontSize: number; ascent: number; descent: number } | { type: "paragraphEnd"; advance: number } | { type: "break" } | { type: "inlineDrawing"; width: number; height: number };
145
+ export interface JsLayoutGridRow {
146
+ y: number;
147
+ height: number;
148
+ cells: JsLayoutGridCell[];
149
+ }
165
150
 
166
151
  export interface JsLayoutPage {
167
152
  width: number;
@@ -170,35 +155,36 @@ export interface JsLayoutPage {
170
155
  grid?: JsLayoutGrid;
171
156
  }
172
157
 
173
- export interface JsLayoutGridColumn {
174
- x: number;
158
+ export interface JsLayoutRunList {
159
+ baseline: number;
175
160
  width: number;
161
+ height: number;
162
+ runs: JsLayoutRun[];
176
163
  }
177
164
 
178
- export interface JsLayoutGlyph {
179
- x: number;
180
- y: number;
181
- advance: number;
182
- /**
183
- * Byte offset of this glyph\'s source character relative to the parent run\'s text.
184
- */
185
- offset: number;
165
+ export interface JsLayoutTable {
166
+ width: number;
167
+ height: number;
168
+ columns: JsLayoutTableColumn[];
169
+ rows: JsLayoutTableRow[];
186
170
  }
187
171
 
188
- export interface JsTransform {
189
- scaleX: number;
190
- skewY: number;
191
- skewX: number;
192
- scaleY: number;
193
- translateX: number;
194
- translateY: number;
172
+ export type JsLayoutRunContent = { type: "glyphs"; text: string; fontSize: number; ascent: number; descent: number; glyphs: JsLayoutGlyph[] } | { type: "space"; advance: number; fontSize: number; ascent: number; descent: number } | { type: "tab"; advance: number; fontSize: number; ascent: number; descent: number } | { type: "paragraphEnd"; advance: number } | { type: "break" } | { type: "inlineDrawing"; width: number; height: number };
173
+
174
+ export interface JsLayoutTableRow {
175
+ y: number;
176
+ height: number;
177
+ cells: JsLayoutTableCell[];
195
178
  }
196
179
 
197
- export interface JsLayoutRun {
180
+ export interface JsLayoutGrid {
198
181
  x: number;
182
+ y: number;
199
183
  width: number;
200
- transform: JsTransform;
201
- content: JsLayoutRunContent;
184
+ height: number;
185
+ scale: number;
186
+ columns: JsLayoutGridColumn[];
187
+ rows: JsLayoutGridRow[];
202
188
  }
203
189
 
204
190
  export interface JsLayoutGridCell {
@@ -210,28 +196,42 @@ export interface JsLayoutGridCell {
210
196
  parcel?: JsLayoutParcel;
211
197
  }
212
198
 
199
+ export interface JsLayoutGridColumn {
200
+ x: number;
201
+ width: number;
202
+ }
203
+
204
+ export interface JsLayoutGlyph {
205
+ x: number;
206
+ y: number;
207
+ advance: number;
208
+ /**
209
+ * Byte offset of this glyph\'s source character relative to the parent run\'s text.
210
+ */
211
+ offset: number;
212
+ }
213
+
213
214
  export interface JsLayoutFrame {
214
215
  transform: JsTransform;
215
216
  parcel?: JsLayoutParcel;
216
217
  }
217
218
 
218
- export interface JsLayoutTableCell {
219
- colIndex: number;
220
- colSpan: number;
221
- rowSpan: number;
219
+ export interface JsLayoutTableColumn {
222
220
  x: number;
223
- y: number;
224
221
  width: number;
225
- height: number;
226
- parcel?: JsLayoutParcel;
227
222
  }
228
223
 
229
- export interface JsLayoutGridRow {
230
- y: number;
231
- height: number;
232
- cells: JsLayoutGridCell[];
224
+ export interface JsTransform {
225
+ scaleX: number;
226
+ skewY: number;
227
+ skewX: number;
228
+ scaleY: number;
229
+ translateX: number;
230
+ translateY: number;
233
231
  }
234
232
 
233
+ export type JsLayoutLineContent = ({ type: "runList" } & JsLayoutRunList) | ({ type: "table" } & JsLayoutTable);
234
+
235
235
 
236
236
  export class Wasm {
237
237
  free(): void;
@@ -783,9 +783,9 @@ export interface InitOutput {
783
783
  readonly wasm_set_visibility_group_visible: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => void;
784
784
  readonly wasm_setup_telemetry: (a: number, b: number, c: number) => void;
785
785
  readonly wasm_viewer_preferences: (a: number, b: number, c: number, d: number) => void;
786
- readonly __wasm_bindgen_func_elem_2698: (a: number, b: number, c: number) => void;
787
- readonly __wasm_bindgen_func_elem_2682: (a: number, b: number) => void;
788
- readonly __wasm_bindgen_func_elem_16896: (a: number, b: number, c: number, d: number) => void;
786
+ readonly __wasm_bindgen_func_elem_2710: (a: number, b: number, c: number) => void;
787
+ readonly __wasm_bindgen_func_elem_2694: (a: number, b: number) => void;
788
+ readonly __wasm_bindgen_func_elem_20199: (a: number, b: number, c: number, d: number) => void;
789
789
  readonly __wbindgen_export: (a: number, b: number) => number;
790
790
  readonly __wbindgen_export2: (a: number, b: number, c: number, d: number) => number;
791
791
  readonly __wbindgen_export3: (a: number) => void;
@@ -259,12 +259,12 @@ if (!('encodeInto' in cachedTextEncoder)) {
259
259
 
260
260
  let WASM_VECTOR_LEN = 0;
261
261
 
262
- function __wasm_bindgen_func_elem_2698(arg0, arg1, arg2) {
263
- wasm.__wasm_bindgen_func_elem_2698(arg0, arg1, addHeapObject(arg2));
262
+ function __wasm_bindgen_func_elem_2710(arg0, arg1, arg2) {
263
+ wasm.__wasm_bindgen_func_elem_2710(arg0, arg1, addHeapObject(arg2));
264
264
  }
265
265
 
266
- function __wasm_bindgen_func_elem_16896(arg0, arg1, arg2, arg3) {
267
- wasm.__wasm_bindgen_func_elem_16896(arg0, arg1, addHeapObject(arg2), addHeapObject(arg3));
266
+ function __wasm_bindgen_func_elem_20199(arg0, arg1, arg2, arg3) {
267
+ wasm.__wasm_bindgen_func_elem_20199(arg0, arg1, addHeapObject(arg2), addHeapObject(arg3));
268
268
  }
269
269
 
270
270
  const __wbindgen_enum_GpuBufferBindingType = ["uniform", "storage", "read-only-storage"];
@@ -1990,7 +1990,7 @@ function __wbg_get_imports() {
1990
1990
  const a = state0.a;
1991
1991
  state0.a = 0;
1992
1992
  try {
1993
- return __wasm_bindgen_func_elem_16896(a, state0.b, arg0, arg1);
1993
+ return __wasm_bindgen_func_elem_20199(a, state0.b, arg0, arg1);
1994
1994
  } finally {
1995
1995
  state0.a = a;
1996
1996
  }
@@ -2470,16 +2470,16 @@ function __wbg_get_imports() {
2470
2470
  const ret = arg0;
2471
2471
  return addHeapObject(ret);
2472
2472
  };
2473
+ imports.wbg.__wbindgen_cast_9d97beea3493d3db = function(arg0, arg1) {
2474
+ // Cast intrinsic for `Closure(Closure { dtor_idx: 212, function: Function { arguments: [Externref], shim_idx: 213, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.
2475
+ const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_2694, __wasm_bindgen_func_elem_2710);
2476
+ return addHeapObject(ret);
2477
+ };
2473
2478
  imports.wbg.__wbindgen_cast_cb9088102bce6b30 = function(arg0, arg1) {
2474
2479
  // Cast intrinsic for `Ref(Slice(U8)) -> NamedExternref("Uint8Array")`.
2475
2480
  const ret = getArrayU8FromWasm0(arg0, arg1);
2476
2481
  return addHeapObject(ret);
2477
2482
  };
2478
- imports.wbg.__wbindgen_cast_d5be308fce034eae = function(arg0, arg1) {
2479
- // Cast intrinsic for `Closure(Closure { dtor_idx: 210, function: Function { arguments: [Externref], shim_idx: 211, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.
2480
- const ret = makeMutClosure(arg0, arg1, wasm.__wasm_bindgen_func_elem_2682, __wasm_bindgen_func_elem_2698);
2481
- return addHeapObject(ret);
2482
- };
2483
2483
  imports.wbg.__wbindgen_cast_d6cd19b81560fd6e = function(arg0) {
2484
2484
  // Cast intrinsic for `F64 -> Externref`.
2485
2485
  const ret = arg0;
Binary file
@@ -48,9 +48,9 @@ export const wasm_set_license: (a: number, b: number, c: number, d: number) => v
48
48
  export const wasm_set_visibility_group_visible: (a: number, b: number, c: number, d: number, e: number, f: number, g: number) => void;
49
49
  export const wasm_setup_telemetry: (a: number, b: number, c: number) => void;
50
50
  export const wasm_viewer_preferences: (a: number, b: number, c: number, d: number) => void;
51
- export const __wasm_bindgen_func_elem_2698: (a: number, b: number, c: number) => void;
52
- export const __wasm_bindgen_func_elem_2682: (a: number, b: number) => void;
53
- export const __wasm_bindgen_func_elem_16896: (a: number, b: number, c: number, d: number) => void;
51
+ export const __wasm_bindgen_func_elem_2710: (a: number, b: number, c: number) => void;
52
+ export const __wasm_bindgen_func_elem_2694: (a: number, b: number) => void;
53
+ export const __wasm_bindgen_func_elem_20199: (a: number, b: number, c: number, d: number) => void;
54
54
  export const __wbindgen_export: (a: number, b: number) => number;
55
55
  export const __wbindgen_export2: (a: number, b: number, c: number, d: number) => number;
56
56
  export const __wbindgen_export3: (a: number) => void;