From d38abe38506267d460c60a29529119ed3b2635f5 Mon Sep 17 00:00:00 2001 From: James Fenn Date: Wed, 9 Dec 2020 14:43:54 -0500 Subject: [PATCH] fix node-persist dependency errors --- example-nodejs/src/index.js | 3 --- gitrest/build.gradle | 4 +--- .../jsMain/kotlin/me/jfenn/gitrest/service/DiskCache.kt | 4 ++++ npm/package.json | 3 ++- npm/test.js | 9 ++++++++- 5 files changed, 15 insertions(+), 8 deletions(-) diff --git a/example-nodejs/src/index.js b/example-nodejs/src/index.js index a7d10f2..f6448e7 100644 --- a/example-nodejs/src/index.js +++ b/example-nodejs/src/index.js @@ -1,9 +1,6 @@ const { Client } = require("git-rest-wrapper-gitrest"); let gitrest = new Client({ - cache: { - type: "disk" - }, tokens: { 'a.b': "c" } diff --git a/gitrest/build.gradle b/gitrest/build.gradle index f5e99a8..c217a14 100644 --- a/gitrest/build.gradle +++ b/gitrest/build.gradle @@ -58,7 +58,7 @@ kotlin { nodejs() browser { dceTask { - keep 'git-rest-wrapper-gitrest.RequestProvider', "ktor-ktor-io.\$\$importsForInline\$\$.ktor-ktor-io.io.ktor.utils.io" + keep 'git-rest-wrapper-gitrest.Client', "ktor-ktor-io.\$\$importsForInline\$\$.ktor-ktor-io.io.ktor.utils.io" } compilations.all { kotlinOptions { @@ -147,8 +147,6 @@ kotlin { implementation npm("node-fetch", "2.6.0") implementation npm("text-encoding", "0.7.0") implementation npm("abort-controller", "3.0.0") - - implementation npm("node-persist", "3.1.0") } } jsTest { diff --git a/gitrest/src/jsMain/kotlin/me/jfenn/gitrest/service/DiskCache.kt b/gitrest/src/jsMain/kotlin/me/jfenn/gitrest/service/DiskCache.kt index b3b3312..3510601 100644 --- a/gitrest/src/jsMain/kotlin/me/jfenn/gitrest/service/DiskCache.kt +++ b/gitrest/src/jsMain/kotlin/me/jfenn/gitrest/service/DiskCache.kt @@ -5,6 +5,7 @@ import me.jfenn.gitrest.model.GitrestConfig import me.jfenn.gitrest.model.Repo import kotlin.js.Date import kotlin.js.Promise +import kotlin.js.jsTypeOf external fun require(module: String): dynamic @@ -20,6 +21,9 @@ class DiskCache( private var promisePersist: Promise? = null private suspend fun getPersist() : dynamic { + if (js("typeof localStorage") != "undefined") + persist = js("localStorage") + if (persist == null) { persist = require("node-persist") promisePersist = (persist.init() as Promise) diff --git a/npm/package.json b/npm/package.json index 0b7f81f..22ee688 100644 --- a/npm/package.json +++ b/npm/package.json @@ -23,7 +23,8 @@ "dependencies": { "abort-controller": "^3.0.0", "node-fetch": "^2.6.0", - "text-encoding": "^0.7.0" + "text-encoding": "^0.7.0", + "node-persist": "^3.1.0" }, "bundledDependencies": [ "kotlin", diff --git a/npm/test.js b/npm/test.js index 22de9d6..3764855 100644 --- a/npm/test.js +++ b/npm/test.js @@ -1,6 +1,13 @@ const { Client } = require('./index.js'); -let provider = new Client(); +let provider = new Client({ + cache: { + type: 'disk' + }, + tokens: { + 'a.b': "c" + } +}); // simple usability test, probably shouldn't break anytime soon... provider.getUser("fennifith").then((user) => { -- GitLab