Subject: [bug#68941] [PATCH 18/44] gnu: Add node-side-channel.

From: Nicolas Graves <[email-masked]>
Date: Tue, 6 Feb 2024 00:19:06 +0100

* gnu/packages/node-xyz.scm (node-side-channel): New variable.
---
 gnu/packages/node-xyz.scm | 39 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 39 insertions(+)

diff --git a/gnu/packages/node-xyz.scm b/gnu/packages/node-xyz.scm
index 4019b8ea81..f36eb3f8bd 100644
--- a/gnu/packages/node-xyz.scm
+++ b/gnu/packages/node-xyz.scm
@@ -1834,6 +1834,45 @@ (define-public node-serialport
 projects.  It combines a high-level Node.js stream interface with a useful
 default set of parsers and bindings.")))
 
+(define-public node-side-channel
+  (package
+    (name "node-side-channel")
+    (version "1.0.4")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/ljharb/side-channel")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0p2p8avsh2gmr5qvws246vz8781zyc60zrkgcmww8i43drf633bw"))))
+    (build-system node-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'patch-dependencies 'delete-dependencies
+           (lambda args
+             (delete-dependencies
+              '("@ljharb/eslint-config"
+                "aud"
+                "auto-changelog"
+                "eclint"
+                "eslint"
+                "in-publish"
+                "npmignore"
+                "nyc"
+                "safe-publish-latest"
+                "tape")))))
+       #:tests? #f))  ; FIXME tests depend on node-tape.
+    (inputs
+     (list node-call-bind node-get-intrinsic node-object-inspect))
+    (home-page "https://github.com/ljharb/side-channel")
+    (synopsis "String information about any Javascript in a side channel")
+    (description "This package provides a Javascript function to store any
+value in a side channel.  It uses WeakMap if available.")
+    (license license:expat)))
+
 (define-public node-sqlite3
   (package
     (name "node-sqlite3")
-- 
2.41.0