guix_mirror_bot pushed a commit to branch master
in repository guix.

commit 2371b4502852b11dfd11ddd48cb9a11a2f66a89e
Author: Daniel Khodabakhsh <[email protected]>
AuthorDate: Tue Jun 24 16:19:00 2025 -0700

    gnu: Add node-fast-xml-parser.
    
    * gnu/packages/node-xyz.scm (node-fast-xml-parser): New variable.
    
    Change-Id: I1e569fed347895d0409b65110f184e90f7d9222c
    Signed-off-by: Andreas Enge <[email protected]>
---
 gnu/packages/node-xyz.scm | 43 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 43 insertions(+)

diff --git a/gnu/packages/node-xyz.scm b/gnu/packages/node-xyz.scm
index 163df9167d..7217b7783f 100644
--- a/gnu/packages/node-xyz.scm
+++ b/gnu/packages/node-xyz.scm
@@ -595,6 +595,49 @@ multiple node.js files, while providing useful information 
about output and exit
 codes.")
     (license license:expat)))
 
+(define-public node-fast-xml-parser
+  (package
+    (name "node-fast-xml-parser")
+    (version "4.5.3")
+    (source (origin
+      (method git-fetch)
+      (uri (git-reference
+        (url "https://github.com/NaturalIntelligence/fast-xml-parser";)
+        (commit "f8d4d427a31a52d4df82260ac1973d94ad73335b")))
+      (file-name (git-file-name name version))
+      (sha256 (base32 "1wc5mgihrgync0vj79gk7g367rssqhzmzxl41kdhhcya045bis85"))
+      (modules '((guix build utils)))
+      (snippet #~(begin
+        (delete-file-recursively "lib")))))
+    (build-system node-build-system)
+    (inputs (list node-strnum))
+    (arguments (list
+      #:tests? #f ; FIXME: Tests require 'nyc'.
+      #:phases #~(modify-phases %standard-phases
+        (add-before 'patch-dependencies 'modify-package (lambda _
+          (modify-json
+            (delete-dev-dependencies))))
+        (replace 'build (lambda _
+          (define output "output")
+          (mkdir output)
+          (for-each
+            (lambda (file) (install-file file output))
+            (list "CHANGELOG.md" "LICENSE" "package.json" "README.md"))
+          (copy-recursively "src" (string-append output "/src"))
+          (chdir output))))))
+    (synopsis "Validate XML, Parse XML, Build XML without C/C++ based 
libraries")
+    (description "Validate XML, Parse XML to JS Object, or Build XML from JS 
Object\
+ without C/C++ based libraries and no callback.
+  * Validate XML data syntactically. Use detailed-xml-validator to verify 
business rules.
+  * Parse XML to JS Objectand vice versa
+  * Common JS, ESM, and browser compatible
+  * Faster than any other pure JS implementation.
+It can handle big files (tested up to 100mb). XML Entities, HTML entities, and 
DOCTYPE\
+ entites are supported. Unpaired tags (Eg <br> in HTML), stop nodes (Eg 
<script> in HTML)\
+ are supported. It can also preserve Order of tags in JS object")
+    (home-page (git-reference-url (origin-uri source)))
+    (license license:expat)))
+
 (define-public node-fastest-levenshtein
   (package
     (name "node-fastest-levenshtein")

Reply via email to