From f09f540bbcedbeb8085d7c25b65908ae48909820 Mon Sep 17 00:00:00 2001 From: Arne Hassel Date: Mon, 5 Aug 2019 20:59:13 +0200 Subject: [PATCH 1/6] Alternative solution to https://github.com/solid/solid-ui/issues/78 --- src/acl.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/acl.js b/src/acl.js index 71b96405d..2d5cded04 100644 --- a/src/acl.js +++ b/src/acl.js @@ -356,8 +356,10 @@ UI.acl.getACLorDefault = function (doc, callbackFunction) { // statusBlock.textContent += (" ACCESS set at " + uri + ". End search.") var defaults = kb.each(undefined, ACL('default'), kb.sym(uri), defaultACLDoc) .concat(kb.each(undefined, ACL('defaultForNew'), kb.sym(uri), defaultACLDoc)) - if (!defaults.length) { + if (!defaults.length && left < right) { tryParent(uri) // Keep searching + } else if (left >= right) { + callbackFunction(false, true, 404, 'Found no ACL resource') } else { var defaultHolder = kb.sym(uri) callbackFunction(true, false, doc, aclDoc, defaultHolder, defaultACLDoc) From 261eb7fcdec6d486323c11877abb33b7235b973d Mon Sep 17 00:00:00 2001 From: Arne Hassel Date: Tue, 6 Aug 2019 11:49:17 +0200 Subject: [PATCH 2/6] Hopefully how it should work --- src/acl.js | 30 +++++++++++++----------------- 1 file changed, 13 insertions(+), 17 deletions(-) diff --git a/src/acl.js b/src/acl.js index 2d5cded04..365a066aa 100644 --- a/src/acl.js +++ b/src/acl.js @@ -337,6 +337,9 @@ UI.acl.getACLorDefault = function (doc, callbackFunction) { } var right = uri.lastIndexOf('/') var left = uri.indexOf('/', uri.indexOf('//') + 2) + if (left >= right) { + return callbackFunction(false, true, 404, 'Found no ACL resource') + } uri = uri.slice(0, right + 1) var doc2 = $rdf.sym(uri) UI.acl.getACL(doc2, function (ok, status, defaultACLDoc) { @@ -345,26 +348,19 @@ UI.acl.getACLorDefault = function (doc, callbackFunction) { } else if (status === 403) { return callbackFunction(false, true, status, '( default ACL file FORBIDDEN. Stop.' + uri + ')') } else if (status === 404) { - if (left >= right) { - return callbackFunction(false, true, 499, 'Nothing to hold a default') - } else { - tryParent(uri) - } + return tryParent(uri) } else if (status !== 200) { return callbackFunction(false, true, status, "Error status '" + status + "' searching for default for " + doc2) - } else { // 200 - // statusBlock.textContent += (" ACCESS set at " + uri + ". End search.") - var defaults = kb.each(undefined, ACL('default'), kb.sym(uri), defaultACLDoc) - .concat(kb.each(undefined, ACL('defaultForNew'), kb.sym(uri), defaultACLDoc)) - if (!defaults.length && left < right) { - tryParent(uri) // Keep searching - } else if (left >= right) { - callbackFunction(false, true, 404, 'Found no ACL resource') - } else { - var defaultHolder = kb.sym(uri) - callbackFunction(true, false, doc, aclDoc, defaultHolder, defaultACLDoc) - } } + // 200 + // statusBlock.textContent += (" ACCESS set at " + uri + ". End search.") + var defaults = kb.each(undefined, ACL('default'), kb.sym(uri), defaultACLDoc) + .concat(kb.each(undefined, ACL('defaultForNew'), kb.sym(uri), defaultACLDoc)) + if (!defaults.length) { + return tryParent(uri) // Keep searching + } + var defaultHolder = kb.sym(uri) + return callbackFunction(true, false, doc, aclDoc, defaultHolder, defaultACLDoc) }) } // tryParent From 3aec54b60ede10c9ed52c06249b6cd60729187b2 Mon Sep 17 00:00:00 2001 From: Arne Hassel Date: Tue, 6 Aug 2019 11:55:11 +0200 Subject: [PATCH 3/6] Added one more defaultForNew+default fix Also added a TODO, for Tim to review --- src/acl-control.js | 3 ++- src/signin.js | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/acl-control.js b/src/acl-control.js index 7573c30d0..7fb34ae46 100644 --- a/src/acl-control.js +++ b/src/acl-control.js @@ -544,7 +544,8 @@ UI.aclControl.ACLControlBox5 = function (subject, dom, noun, kb, callback) { } else { box.isContainer = targetDoc.uri.slice(-1) === '/' // Give default for all directories if (defa) { - var defaults = kb.each(undefined, ACL('defaultForNew'), defaultHolder, defaultACLDoc) + var defaults = kb.each(undefined, ACL('default'), defaultHolder, defaultACLDoc) + .concat(kb.each(undefined, ACL('defaultForNew'), defaultHolder, defaultACLDoc)) if (!defaults.length) { statusBlock.textContent += ' (No defaults given.)' } else { diff --git a/src/signin.js b/src/signin.js index c65a0c2a4..301816e59 100644 --- a/src/signin.js +++ b/src/signin.js @@ -776,6 +776,7 @@ function genACLText (docURI, me, aclURI, options = {}) { g.add(a, UI.ns.rdf('type'), auth('Authorization'), acl) g.add(a, auth('accessTo'), doc, acl) if (options.defaultForNew) { + // TODO: Should this be auth('default') instead? g.add(a, auth('defaultForNew'), doc, acl) } g.add(a, auth('agent'), me, acl) From 0d2806ea6f74c4915eaa4b0219069c00bc7a0b37 Mon Sep 17 00:00:00 2001 From: Arne Hassel Date: Tue, 6 Aug 2019 12:14:04 +0200 Subject: [PATCH 4/6] Upgrading to latest version of rdflib --- package-lock.json | 526 +++++++++++++++++++++------------------------- package.json | 2 +- 2 files changed, 240 insertions(+), 288 deletions(-) diff --git a/package-lock.json b/package-lock.json index 7fd876573..3801506e0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13,11 +13,28 @@ } }, "@solid/cli": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@solid/cli/-/cli-0.1.0.tgz", - "integrity": "sha512-+VYDgDxsAKa48MGnoaX2CUwh0gLrTdqYY6lrxxWGwCHiFChGsg95RRbHOYz9c97+QcCltcHpMZ2AelGZrU673A==", + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@solid/cli/-/cli-0.1.1.tgz", + "integrity": "sha512-NRmSKWGycV2u/YDHTB2DWa7JIH9lK/WqT7HEuaRfWWhxlxSiM52p08aJw90qavEp6pWIz+2Os4kRQpQqJU2oiQ==", "requires": { - "@trust/oidc-rp": "0.6.0" + "@solid/oidc-rp": "^0.9.0" + }, + "dependencies": { + "@solid/oidc-rp": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/@solid/oidc-rp/-/oidc-rp-0.9.0.tgz", + "integrity": "sha512-y2gBGp/0+f6D+TEZ+AxjEY2Qx1aqcN0smNR2W+PjaVXGio0t4HXh68kKoSPpSiGd84aMQY9GJfG2ZsVskqjdsg==", + "requires": { + "@solid/jose": "0.1.8", + "@trust/json-document": "^0.1.4", + "@trust/webcrypto": "0.9.2", + "base64url": "^3.0.0", + "node-fetch": "^2.1.2", + "standard-http-error": "^2.0.1", + "text-encoding": "^0.6.4", + "whatwg-url": "^6.4.1" + } + } } }, "@solid/jose": { @@ -46,35 +63,6 @@ "whatwg-url": "^6.4.1" } }, - "@trust/jose": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/@trust/jose/-/jose-0.1.7.tgz", - "integrity": "sha512-JlWY97+Q1pU2CN08Ux5oN1/CXcvxLtQ5YkL4UhgVs4z9TR/+I4rKqhqoZQ0TDGPvCLP1QaT7F6bHbKswbDwgOQ==", - "requires": { - "@trust/json-document": "^0.1.4", - "@trust/webcrypto": "^0.0.2", - "base64url": "^2.0.0", - "text-encoding": "^0.6.1" - }, - "dependencies": { - "@trust/webcrypto": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/@trust/webcrypto/-/webcrypto-0.0.2.tgz", - "integrity": "sha1-53xpouYSudOSJRxZZscxaFN+Jmc=", - "requires": { - "base64url": "^2.0.0", - "node-rsa": "^0.4.0", - "pem-jwk": "^1.5.1", - "text-encoding": "^0.6.1" - } - }, - "base64url": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/base64url/-/base64url-2.0.0.tgz", - "integrity": "sha1-6sFuA+oUOO/5Qj1puqNiYu0fcLs=" - } - } - }, "@trust/json-document": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/@trust/json-document/-/json-document-0.1.4.tgz", @@ -90,47 +78,6 @@ "elliptic": "^6.4.0" } }, - "@trust/oidc-rp": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/@trust/oidc-rp/-/oidc-rp-0.6.0.tgz", - "integrity": "sha512-6PgV0WI+gq6nGMjlg8oSxj7VgmS/m8Y61s6HPNBu3mX/NSVvnrXk+MqqR7KdxlBk84ti65O76HGSRNelJrRbeA==", - "requires": { - "@trust/jose": "^0.1.7", - "@trust/json-document": "^0.1.4", - "@trust/webcrypto": "0.4.0", - "base64url": "^2.0.0", - "node-fetch": "^1.7.3", - "text-encoding": "^0.6.4", - "whatwg-url": "^6.2.1" - }, - "dependencies": { - "@trust/webcrypto": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/@trust/webcrypto/-/webcrypto-0.4.0.tgz", - "integrity": "sha1-zIcSyomn5x01P877ZrJwemec9jU=", - "requires": { - "@trust/keyto": "^0.3.0", - "base64url": "^2.0.0", - "node-rsa": "^0.4.0", - "text-encoding": "^0.6.1" - } - }, - "base64url": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/base64url/-/base64url-2.0.0.tgz", - "integrity": "sha1-6sFuA+oUOO/5Qj1puqNiYu0fcLs=" - }, - "node-fetch": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", - "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==", - "requires": { - "encoding": "^0.1.11", - "is-stream": "^1.0.1" - } - } - } - }, "@trust/webcrypto": { "version": "0.9.2", "resolved": "https://registry.npmjs.org/@trust/webcrypto/-/webcrypto-0.9.2.tgz", @@ -167,9 +114,9 @@ } }, "ajv": { - "version": "6.10.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.0.tgz", - "integrity": "sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg==", + "version": "6.10.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz", + "integrity": "sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw==", "requires": { "fast-deep-equal": "^2.0.1", "fast-json-stable-stringify": "^2.0.0", @@ -294,7 +241,7 @@ }, "async": { "version": "0.9.2", - "resolved": "http://registry.npmjs.org/async/-/async-0.9.2.tgz", + "resolved": "https://registry.npmjs.org/async/-/async-0.9.2.tgz", "integrity": "sha1-rqdNXmHB+JlhO/ZL2mbUx48v0X0=" }, "async-each": { @@ -1231,6 +1178,13 @@ "readdirp": "^2.0.0" } }, + "chownr": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.2.tgz", + "integrity": "sha512-GkfeAQh+QNy3wquu9oIZr6SS5x7wGdSgNQvD10X3r+AZr1Oys22HW8kAmDMvNg2+Dm0TeGaEuO8gFwdBXxwO8A==", + "dev": true, + "optional": true + }, "circular-json": { "version": "0.3.3", "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz", @@ -1308,9 +1262,9 @@ } }, "combined-stream": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.7.tgz", - "integrity": "sha512-brWl9y6vOB1xYPZcpZde3N9zDByXTosAeMDo4p1wzo6UMOX4vumB+TP1RZ76sfE6Md68Q0NJSrE/gbezd4Ul+w==", + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", "requires": { "delayed-stream": "~1.0.0" } @@ -1636,7 +1590,7 @@ }, "es6-promise": { "version": "2.3.0", - "resolved": "http://registry.npmjs.org/es6-promise/-/es6-promise-2.3.0.tgz", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-2.3.0.tgz", "integrity": "sha1-lu258v2wGZWCKyY92KratnSBgbw=" }, "es6-set": { @@ -2033,40 +1987,6 @@ "object-assign": "^4.0.1" } }, - "file-fetch": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/file-fetch/-/file-fetch-1.2.0.tgz", - "integrity": "sha512-DzwKhcH/afS7thk5hao1kVJXIqMNB2pz0DFpjpA5IlIAA0nSqi/fqFQpX++NP9IK+Te7Z1ZxA5KTWKmdzio+tA==", - "requires": { - "concat-stream": "^2.0.0", - "mime-types": "^2.1.17", - "node-fetch": "^2.3.0", - "readable-error": "^1.0.0" - }, - "dependencies": { - "concat-stream": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", - "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", - "requires": { - "buffer-from": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.0.2", - "typedarray": "^0.0.6" - } - }, - "readable-stream": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.3.0.tgz", - "integrity": "sha512-EsI+s3k3XsW+fU8fQACLN59ky34AZ14LoeVZpYwmZvldCFo0r0gnelwF2TcMjLor/BTL5aDJVBMkss0dthToPw==", - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - } - } - }, "filename-regex": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", @@ -2158,10 +2078,32 @@ "map-cache": "^0.2.2" } }, - "fs": { - "version": "0.0.1-security", - "resolved": "https://registry.npmjs.org/fs/-/fs-0.0.1-security.tgz", - "integrity": "sha1-invTcYa23d84E/I4WLV+yq9eQdQ=" + "fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "dependencies": { + "graceful-fs": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.1.tgz", + "integrity": "sha512-b9usnbDGnD928gJB3LrCmxoibr3VE4U2SMo5PBuBnokWyDADTqDPXg4YpwKF1trpH+UbGp7QLicO3+aWEy0+mw==" + } + } + }, + "fs-minipass": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.6.tgz", + "integrity": "sha512-crhvyXcMejjv3Z5d2Fa9sf5xLYVCF5O1c71QxbVnbLsmYMBEvDAftewesN/HhY03YRoA7zOMxjNGrF5svGaaeQ==", + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } }, "fs-readdir-recursive": { "version": "1.1.0", @@ -2236,13 +2178,6 @@ "concat-map": "0.0.1" } }, - "chownr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.0.1.tgz", - "integrity": "sha1-4qdQQqlVGQi+vSW4Uj1fl2nXkYE=", - "dev": true, - "optional": true - }, "code-point-at": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", @@ -2302,16 +2237,6 @@ "dev": true, "optional": true }, - "fs-minipass": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.5.tgz", - "integrity": "sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ==", - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -2437,27 +2362,6 @@ "dev": true, "optional": true }, - "minipass": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.2.4.tgz", - "integrity": "sha512-hzXIWWet/BzWhYs2b+u7dRHlruXhwdgvlTMDKC6Cb1U7ps6Ac6yQlR39xsbjWJE377YTCtKwIXIpJ5oP+j5y8g==", - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "^5.1.1", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.1.0.tgz", - "integrity": "sha512-4T6Ur/GctZ27nHfpt9THOdRZNgyJ9FZchYO1ceg5S8Q3DNLCKYy44nCZzgCJgcvx2UM8czmqak5BCxJMrq37lA==", - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, "mkdirp": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", @@ -2740,22 +2644,6 @@ "dev": true, "optional": true }, - "tar": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.1.tgz", - "integrity": "sha512-O+v1r9yN4tOsvl90p5HAP4AEqbYhx4036AGMm075fH9F8Qwi3oJ+v4u50FkT/KkvywNGtwkk0zRI+8eYm1X/xg==", - "dev": true, - "optional": true, - "requires": { - "chownr": "^1.0.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.2.4", - "minizlib": "^1.1.0", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.1", - "yallist": "^3.0.2" - } - }, "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", @@ -2779,13 +2667,6 @@ "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", "dev": true, "optional": true - }, - "yallist": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.2.tgz", - "integrity": "sha1-hFK0u36Dx8GI2AQcGoN8dz1ti7k=", - "dev": true, - "optional": true } } }, @@ -2878,8 +2759,7 @@ "graceful-fs": { "version": "4.1.15", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", - "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", - "dev": true + "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==" }, "har-schema": { "version": "2.0.0", @@ -3342,7 +3222,8 @@ "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true }, "isobject": { "version": "2.1.0", @@ -3386,9 +3267,9 @@ "dev": true }, "js-yaml": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.12.0.tgz", - "integrity": "sha512-PIt2cnwmPfL4hKNwqeiuz4bKfnzHTBv6HyVgjahA6mPLwPDzjDWrplJBMjHUFxku/N3FlmrbyPclad+I+4mJ3A==", + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", + "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", "dev": true, "requires": { "argparse": "^1.0.7", @@ -3442,6 +3323,14 @@ "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", "dev": true }, + "jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "requires": { + "graceful-fs": "^4.1.6" + } + }, "jsonify": { "version": "0.0.0", "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", @@ -3540,9 +3429,10 @@ } }, "lodash": { - "version": "4.17.11", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", - "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==" + "version": "4.17.15", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", + "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", + "dev": true }, "lodash.cond": { "version": "4.5.2", @@ -3648,10 +3538,31 @@ "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", "dev": true }, + "minipass": { + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.3.5.tgz", + "integrity": "sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA==", + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" + } + }, + "minizlib": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.2.1.tgz", + "integrity": "sha512-7+4oTUOWKg7AuL3vloEWekXY2/D20cevzsrNT2kGWm+39J9hGTCBv8VI5Pm5lXZ/o3/mdR4f8rflAPhnQb8mPA==", + "dev": true, + "optional": true, + "requires": { + "minipass": "^2.2.1" + } + }, "mixin-deep": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz", - "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", + "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", "dev": true, "optional": true, "requires": { @@ -3694,7 +3605,7 @@ }, "n3": { "version": "0.4.5", - "resolved": "http://registry.npmjs.org/n3/-/n3-0.4.5.tgz", + "resolved": "https://registry.npmjs.org/n3/-/n3-0.4.5.tgz", "integrity": "sha1-W3DTq2ohyejUyb2io9TZCQm+tQg=" }, "nan": { @@ -3765,9 +3676,9 @@ "integrity": "sha512-MOd8pV3fxENbryESLgVIeaGKrdl+uaYhCSSVkjeOb/31/njTpcis5aWfdqgNlHIrKOLRbMnfPINPOML2CIFeXA==" }, "node-forge": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.8.2.tgz", - "integrity": "sha512-mXQ9GBq1N3uDCyV1pdSzgIguwgtVpM7f5/5J4ipz12PKWElmPpVWLDuWl8iXmhysr21+WmX/OJ5UKx82wjomgg==" + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.8.5.tgz", + "integrity": "sha512-vFMQIWt+J/7FLNyKouZ9TazT74PRV3wgv9UT4cRjC8BffxFbKXkgIWR42URCPSnHm/QDz6BOlb2Q0U4+VQT67Q==" }, "node-rsa": { "version": "0.4.2", @@ -4040,32 +3951,6 @@ "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", "dev": true }, - "pem-jwk": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/pem-jwk/-/pem-jwk-1.5.1.tgz", - "integrity": "sha1-eoY3/S9nqCflfAxC4cI8P9Us+wE=", - "requires": { - "asn1.js": "1.0.3" - }, - "dependencies": { - "asn1.js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-1.0.3.tgz", - "integrity": "sha1-KBuj7B8kSP52X5Kk7s+IP+E2S1Q=", - "requires": { - "bn.js": "^1.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, - "bn.js": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-1.3.0.tgz", - "integrity": "sha1-DbTL+W+PI7dC9by50ap6mZSgXoM=", - "optional": true - } - } - }, "performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", @@ -4182,7 +4067,8 @@ "process-nextick-args": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", - "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==" + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", + "dev": true }, "progress": { "version": "1.1.8", @@ -4191,9 +4077,9 @@ "dev": true }, "psl": { - "version": "1.1.31", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.31.tgz", - "integrity": "sha512-/6pt4+C+T+wZUieKR620OpzN/LlnNKuWjy1iFLQ/UG35JqHlR/89MP1d96dUfkf6Dne3TuLQzOYEYshJ+Hx8mw==" + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.3.0.tgz", + "integrity": "sha512-avHdspHO+9rQTLbv1RO+MPYeP/SzsCoxofjVnHanETfQhTJrmB0HlDoW+EiN/R+C0BZ+gERab9NY0lPN2TxNag==" }, "punycode": { "version": "2.1.1", @@ -4243,10 +4129,11 @@ } }, "rdflib": { - "version": "0.20.1", - "resolved": "https://registry.npmjs.org/rdflib/-/rdflib-0.20.1.tgz", - "integrity": "sha512-5G1t7rURqPdsYE+mjpDW2e9/H19XFMuChTIjPFPtH2tI0fma+xlJYwrSgmd1aOm45SOYKpqwJfTSIvFpmP2n+g==", + "version": "0.21.1", + "resolved": "https://registry.npmjs.org/rdflib/-/rdflib-0.21.1.tgz", + "integrity": "sha512-NGcKNkeHCUKQwpbkmmNzcm+QwveCZSdb11EbaVW7XGMCwDrHni6f1AbqD5Hy0pdzRfMmidkAerORbsj02oPSdw==", "requires": { + "@babel/runtime": "^7.4.4", "async": "^0.9.x", "jsonld": "^0.4.5", "n3": "^0.4.1", @@ -4255,6 +4142,19 @@ "xmldom": "^0.1.22" }, "dependencies": { + "@babel/runtime": { + "version": "7.5.5", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.5.5.tgz", + "integrity": "sha512-28QvEGyQyNkB0/m2B4FU7IEZGK2NUrcMtT6BZEFALTguLk+AUT6ofsHtPk5QyjAdUkpMJ+/Em+quwz4HOt30AQ==", + "requires": { + "regenerator-runtime": "^0.13.2" + } + }, + "regenerator-runtime": { + "version": "0.13.3", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.3.tgz", + "integrity": "sha512-naKIZz2GQ8JWh///G7L3X6LaQUAMp2lvb1rvwwsURe/VXwD6VMfr+/1NuNw3ag8v2kY1aQ/go5SNn79O9JU7yw==" + }, "solid-auth-client": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/solid-auth-client/-/solid-auth-client-2.3.0.tgz", @@ -4269,18 +4169,11 @@ } } }, - "readable-error": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/readable-error/-/readable-error-1.0.0.tgz", - "integrity": "sha512-CLnInu5bUphmFiZ3pD/BC6+Cg4/BzK6ZMvWfd0b2QMzYo159Z/f/nVFQ9L5IeMrqUxy0EFsp3XJ+BRfLfY13IQ==", - "requires": { - "readable-stream": "^2.3.3" - } - }, "readable-stream": { "version": "2.3.6", "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "dev": true, "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -4871,9 +4764,9 @@ "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==" }, "set-value": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz", - "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", + "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", "dev": true, "optional": true, "requires": { @@ -5038,31 +4931,30 @@ } }, "solid-auth-cli": { - "version": "0.1.13", - "resolved": "https://registry.npmjs.org/solid-auth-cli/-/solid-auth-cli-0.1.13.tgz", - "integrity": "sha512-mRZ4eaWniGd9jLRzSWD3n9EwMfTcmwlfXK5MggIzSQOyXa1XJCWxHnJDL0DWTX5sMi1ovYa6RI4u6TNOzsEZiw==", + "version": "0.1.14", + "resolved": "https://registry.npmjs.org/solid-auth-cli/-/solid-auth-cli-0.1.14.tgz", + "integrity": "sha512-G1xhi4hASPW5hib1UxN10rm0X2lTYqqNQELJ4neRjcM07qWnkKUG08Q4fMFz5xeKAWjDh8ytqhvq5M349/CZsw==", "requires": { - "@solid/cli": "^0.1.0", + "@solid/cli": "^0.1.1", "async": "^2.6.1", - "file-fetch": "^1.1.1", - "fs": "0.0.1-security", "isomorphic-fetch": "^2.2.1", "jsonld": "^1.4.0", - "n3": "^1.0.3" + "n3": "^1.0.3", + "solid-rest": "^1.0.2" }, "dependencies": { "async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.2.tgz", - "integrity": "sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==", + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", "requires": { - "lodash": "^4.17.11" + "lodash": "^4.17.14" } }, "jsonld": { - "version": "1.5.4", - "resolved": "https://registry.npmjs.org/jsonld/-/jsonld-1.5.4.tgz", - "integrity": "sha512-+cJ5JmXBBlf0zagJDiz1NsnMBQyd4p+LV8x8UQfjCVBhFDcL6hWduDXMUp8XOgLtt8L9LjRCbUj1NL+tU17GqA==", + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/jsonld/-/jsonld-1.6.2.tgz", + "integrity": "sha512-eMzFHqhF2kPMrMUjw8+Lz9IF1QkrxTOIfVndkP/OpuoZs31VdDtfDs8mLa5EOC/ROdemFTQGLdYPZbRtmMe2Yw==", "requires": { "rdf-canonize": "^1.0.2", "request": "^2.88.0", @@ -5070,10 +4962,15 @@ "xmldom": "0.1.19" } }, + "lodash": { + "version": "4.17.15", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", + "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==" + }, "n3": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/n3/-/n3-1.0.5.tgz", - "integrity": "sha512-IAYc2P5UYbfYCSVoud9iITl1r2IWW/8pyMYbqTeG38RujMPlm10NfTUrz1l4YMFOsh7MbMwb+W/bibcciGYmVg==" + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/n3/-/n3-1.1.1.tgz", + "integrity": "sha512-GEJXn+wc0f4l2noP1N/rMUH9Gei1DQ8IDN03eBsH+uQKkNQUOLgL7ZJVaDjY+pP3LmbLxL1LpUg/AvZ7Kc7KVw==" }, "xmldom": { "version": "0.1.19", @@ -5104,6 +5001,58 @@ "resolved": "https://registry.npmjs.org/solid-namespace/-/solid-namespace-0.2.0.tgz", "integrity": "sha512-yQGQlTNDVtcMfzLz7OwL6Z8lJy9rN1ep0MgX28DPcja0DtA5pu1MzTpBVD9kvXl9X6eSEX73I7IYt0cUim0DrA==" }, + "solid-rest": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/solid-rest/-/solid-rest-1.0.7.tgz", + "integrity": "sha512-OiNKV1nW00RVdnd88HfCVIcY+LKI6VAc6DbY0Tujy5/eiURkCnxqAkMJXLd10lKmpQZ2NNYpsfBN/QWnoIBczA==", + "requires": { + "concat-stream": "^2.0.0", + "fs-extra": "^8.0.1", + "mime-types": "^2.1.24", + "node-fetch": "^2.6.0" + }, + "dependencies": { + "concat-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz", + "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==", + "requires": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.0.2", + "typedarray": "^0.0.6" + } + }, + "mime-db": { + "version": "1.40.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", + "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==" + }, + "mime-types": { + "version": "2.1.24", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", + "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", + "requires": { + "mime-db": "1.40.0" + } + }, + "node-fetch": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.0.tgz", + "integrity": "sha512-8dG4H5ujfvFiqDmVu9fQ5bOHUC15JMjMY/Zumv26oOvvVJjM67KF8koCWIabKQ1GJIa9r2mMZscBq/TbdOcmNA==" + }, + "readable-stream": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.4.0.tgz", + "integrity": "sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, "source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", @@ -5348,6 +5297,22 @@ } } }, + "tar": { + "version": "4.4.10", + "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.10.tgz", + "integrity": "sha512-g2SVs5QIxvo6OLp0GudTqEf05maawKUxXru104iaayWA09551tFCTI8f1Asb4lPfkBr91k07iL4c11XO3/b0tA==", + "dev": true, + "optional": true, + "requires": { + "chownr": "^1.1.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.3.5", + "minizlib": "^1.2.1", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.2", + "yallist": "^3.0.3" + } + }, "text-encoding": { "version": "0.6.4", "resolved": "http://registry.npmjs.org/text-encoding/-/text-encoding-0.6.4.tgz", @@ -5475,41 +5440,16 @@ "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" }, "union-value": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", - "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", + "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", "dev": true, "optional": true, "requires": { "arr-union": "^3.1.0", "get-value": "^2.0.6", "is-extendable": "^0.1.1", - "set-value": "^0.4.3" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "optional": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "set-value": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/set-value/-/set-value-0.4.3.tgz", - "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", - "dev": true, - "optional": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.1", - "to-object-path": "^0.3.0" - } - } + "set-value": "^2.0.1" } }, "uniq": { @@ -5518,6 +5458,11 @@ "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=", "dev": true }, + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==" + }, "unset-value": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", @@ -5672,6 +5617,13 @@ "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", "dev": true + }, + "yallist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.3.tgz", + "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==", + "dev": true, + "optional": true } } } diff --git a/package.json b/package.json index 339317dee..e80078384 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "escape-html": "^1.0.3", "mime-types": "^2.1.20", "node-uuid": "^1.4.7", - "rdflib": ">=0.20.1", + "rdflib": "^0.21.1", "solid-auth-client": "^2.2.13", "solid-auth-tls": "^0.1.2", "solid-namespace": "0.2.0" From 71c7b4533aa6dfac3920f88ac23bea72265bc071 Mon Sep 17 00:00:00 2001 From: Arne Hassel Date: Tue, 6 Aug 2019 12:14:15 +0200 Subject: [PATCH 5/6] 0.12.8-0 --- package-lock.json | 2 +- package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/package-lock.json b/package-lock.json index 3801506e0..10a584e1c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "solid-ui", - "version": "0.12.7", + "version": "0.12.8-0", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index e80078384..d867b3572 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "solid-ui", - "version": "0.12.7", + "version": "0.12.8-0", "description": "UI library for writing Solid read-write-web applications", "main": "./lib/index.js", "files": [ From 4df5c9ebd691bb1da0c87f4f7d6016195cb7a9bd Mon Sep 17 00:00:00 2001 From: Arne Hassel Date: Tue, 6 Aug 2019 15:37:58 +0200 Subject: [PATCH 6/6] Small fixes to be able to create ACL files for folders --- src/acl-control.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/acl-control.js b/src/acl-control.js index 7fb34ae46..03c252761 100644 --- a/src/acl-control.js +++ b/src/acl-control.js @@ -562,11 +562,11 @@ UI.aclControl.ACLControlBox5 = function (subject, dom, noun, kb, callback) { editPlease.textContent = 'Set specific sharing\nfor this ' + noun editPlease.style.cssText = bigButtonStyle editPlease.addEventListener('click', async function (event) { - kb2.forEach(st => { + kb2.statements.forEach(st => { kb.add(st.subject, st.predicate, st.object, targetACLDoc) }) try { - fetcher.putBack(targetACLDoc) + kb.fetcher.putBack(targetACLDoc) } catch (e) { let msg = ' Error writing back access control file! ' + e console.error(msg)