From 2011928003a7d861ee93584449c7bb984906b18c Mon Sep 17 00:00:00 2001
From: Pedro Santos <pedro.santos@moxy.studio>
Date: Wed, 18 Dec 2019 17:36:15 +0000
Subject: [PATCH] feat: add localResolve option to dag.get

---
 src/dag/get.js     | 10 ++++++++++
 src/dag/resolve.js |  1 +
 2 files changed, 11 insertions(+)

diff --git a/src/dag/get.js b/src/dag/get.js
index 93847b2e6..6297012d8 100644
--- a/src/dag/get.js
+++ b/src/dag/get.js
@@ -25,6 +25,16 @@ module.exports = config => {
       options = options || {}
 
       const resolved = await dagResolve(cid, path, options)
+
+      // TODO: delete this comment
+      // Return like this to be consistent with what core dag/get is returning
+      if (options.localResolve) {
+        return {
+          value: resolved.cid,
+          remainderPath: resolved.remPath
+        }
+      }
+
       const block = await getBlock(resolved.cid, options)
       const dagResolver = resolvers[block.cid.codec]
 
diff --git a/src/dag/resolve.js b/src/dag/resolve.js
index cb7014a41..16de7f381 100644
--- a/src/dag/resolve.js
+++ b/src/dag/resolve.js
@@ -18,6 +18,7 @@ module.exports = configure(({ ky }) => {
 
     const searchParams = new URLSearchParams(options.searchParams)
     searchParams.set('arg', cidPath)
+    if (options.localResolve) searchParams.set('localResolve', options.localResolve)
 
     const res = await ky.post('dag/resolve', {
       timeout: options.timeout,