Skip to content

Commit f3f06e6

Browse files
committed
refactor(vite): remove pdf-elements runtime patch plugin
Signed-off-by: Vitor Mattos <1079143+vitormattos@users.noreply.github.com>
1 parent 5af2630 commit f3f06e6

1 file changed

Lines changed: 0 additions & 52 deletions

File tree

vite.config.mjs

Lines changed: 0 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -6,57 +6,6 @@
66
import { createAppConfig } from '@nextcloud/vite-config'
77
import { resolve } from 'node:path'
88

9-
const patchPdfElementsRuntimeFixes = {
10-
name: 'patch-pdf-elements-runtime-fixes',
11-
enforce: 'pre',
12-
transform(code, id) {
13-
if (!id.includes('/@libresign/pdf-elements/')) {
14-
return null
15-
}
16-
if (!id.endsWith('/dist/index.mjs')
17-
&& !id.endsWith('/src/components/DraggableElement.vue')
18-
&& !id.endsWith('/src/components/PDFElements.vue')) {
19-
return null
20-
}
21-
22-
let replaced = code
23-
24-
// Drag/resize listeners must be non-passive because handleMove calls preventDefault.
25-
replaced = replaced.replace(
26-
/window\.addEventListener\((['"])touchmove\1,\s*this\.boundHandleMove\)/g,
27-
'window.addEventListener($1touchmove$1, this.boundHandleMove, { passive: false })',
28-
)
29-
30-
// Adding-mode touchmove also needs to be non-passive.
31-
replaced = replaced.replace(
32-
/document\.addEventListener\((['"])touchmove\1,\s*this\.handleMouseMove,\s*\{\s*passive:\s*(?:!0|true)\s*\}\)/g,
33-
'document.addEventListener($1touchmove$1, this.handleMouseMove, { passive: false })',
34-
)
35-
36-
// Guard against race where add mode ends while RAF callback is still queued.
37-
replaced = replaced.replace(
38-
/const s = this\.pendingHoverClientPos;\s*if \(!s\) return;/g,
39-
'if (!this.isAddingMode || !this.previewElement) { this.pendingHoverClientPos = null; return; } const s = this.pendingHoverClientPos; if (!s) return;',
40-
)
41-
42-
// Defensive access to preview element dimensions in async mobile flow.
43-
replaced = replaced.replace(/this\.previewElement\.width/g, '(this.previewElement?.width || 0)')
44-
replaced = replaced.replace(/this\.previewElement\.height/g, '(this.previewElement?.height || 0)')
45-
46-
// Keep toolbar above by default, but place below when signature is near top.
47-
replaced = replaced.replace(
48-
/const e = this\.pagesScale \|\| 1, t = this\.mode === "drag", i = this\.mode === "resize", s = t \? this\.offsetX : 0, n = t \? this\.offsetY : 0, a = i \? this\.resizeOffsetX : 0, o = i \? this\.resizeOffsetY : 0, r = i \? this\.resizeOffsetW : 0, h = this\.object\.x \+ s \+ a, l = this\.object\.y \+ n \+ o, u = this\.object\.width \+ r, d = l - 60, g = d < 0 \? l \+ 8 : d;/g,
49-
'const e = this.pagesScale || 1, t = this.mode === "drag", i = this.mode === "resize", s = t ? this.offsetX : 0, n = t ? this.offsetY : 0, a = i ? this.resizeOffsetX : 0, o = i ? this.resizeOffsetY : 0, r = i ? this.resizeOffsetW : 0, h = i ? this.resizeOffsetH : 0, l = this.object.x + s + a, u = this.object.y + n + o, c = this.object.width + r, d = this.object.height + h, g = u * e < 72, f = g ? u + d : u, b = g ? "translate(-50%, 8px)" : "translate(-50%, calc(-100% - 8px))";',
50-
)
51-
replaced = replaced.replace(
52-
/left: `\$\{\(h \+ u \/ 2\) \* e\}px`,\s*top: `\$\{g \* e\}px`,\s*transform: "translateX\(-50%\)"/g,
53-
'left: `${(l + c / 2) * e}px`, top: `${f * e}px`, transform: b',
54-
)
55-
56-
return replaced === code ? null : { code: replaced, map: null }
57-
},
58-
}
59-
609
export default createAppConfig({
6110
main: resolve('src/main.ts'),
6211
init: resolve('src/init.ts'),
@@ -76,7 +25,6 @@ export default createAppConfig({
7625
},
7726
},
7827
plugins: [
79-
patchPdfElementsRuntimeFixes,
8028
{
8129
name: 'vue-devtools',
8230
config(_, { mode }) {

0 commit comments

Comments
 (0)