Skip to content

TypeError: Cannot read properties of null (reading 'removeChild') #139

@quoctienkt

Description

@quoctienkt

Hi! 👋

Firstly, thanks for your work on this project! 🙂

Today I used patch-package to patch pptx-automizer@0.6.1 for the project I'm working on.

Context:

I'm following this piece of code to replace Text for my power point file, but it failed and show error, I cannot provide the power point file because it's private to my company source.
https://github.com/singerla/pptx-automizer/blob/main/__tests__/get-all-text-element-ids.test.ts

Issue:

Screenshot 2024-12-19 230255

[Event Logged] - documentTemplates::editPptxDocumentTemplateWithTagsData_failed
TypeError: Cannot read properties of null (reading 'removeChild')
    at XmlHelper.remove (/home/tiendang/projects/f-gen-ai/server/node_modules/pptx-automizer/dist/helper/xml-helper.js:355:29)
    at /home/tiendang/projects/f-gen-ai/server/node_modules/pptx-automizer/dist/classes/has-shapes.js:656:44
    at Array.forEach (<anonymous>)
    at Slide.removeDuplicatePlaceholders (/home/tiendang/projects/f-gen-ai/server/node_modules/pptx-automizer/dist/classes/has-shapes.js:653:36)
    at Slide.<anonymous> (/home/tiendang/projects/f-gen-ai/server/node_modules/pptx-automizer/dist/classes/has-shapes.js:618:22)
    at Generator.next (<anonymous>)
    at fulfilled (/home/tiendang/projects/f-gen-ai/server/node_modules/pptx-automizer/dist/classes/has-shapes.js:5:58)

Here is the diff that solved my problem:

diff --git a/node_modules/pptx-automizer/dist/helper/xml-helper.js b/node_modules/pptx-automizer/dist/helper/xml-helper.js
index 47e5785..9077db0 100644
--- a/node_modules/pptx-automizer/dist/helper/xml-helper.js
+++ b/node_modules/pptx-automizer/dist/helper/xml-helper.js
@@ -352,7 +352,7 @@ class XmlHelper {
         }
     }
     static remove(toRemove) {
-        toRemove.parentNode.removeChild(toRemove);
+        toRemove.parentNode?.removeChild(toRemove);
     }
     static moveChild(childToMove, insertBefore) {
         const parent = childToMove.parentNode;

This issue body was partially generated by patch-package.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions