solid-ui 2.4.27-42274662 → 2.4.27-4735a19d

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -5,21 +5,21 @@ var _typeof = require("@babel/runtime/helpers/typeof");
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.privKeyUrl = void 0;
9
- exports.privateKeyExists = privateKeyExists;
10
- exports.pubKeyUrl = void 0;
11
- exports.publicKeyExists = publicKeyExists;
8
+ exports.getExistingPrivateKey = getExistingPrivateKey;
9
+ exports.getExistingPublicKey = getExistingPublicKey;
10
+ exports.getKeyIfExists = getKeyIfExists;
11
+ exports.pubKeyUrl = exports.privKeyUrl = exports.getPodRoot = void 0;
12
12
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
13
13
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
14
- var debug = _interopRequireWildcard(require("../debug"));
15
- var _signature = require("../chat/signature");
14
+ var debug = _interopRequireWildcard(require("../../debug"));
16
15
  var _solidLogic = require("solid-logic");
17
- var ns = _interopRequireWildcard(require("../ns"));
16
+ var ns = _interopRequireWildcard(require("../../ns"));
18
17
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
19
18
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
19
+ // import { CERT } from '../../chat/signature'
20
+
20
21
  var getPodRoot = /*#__PURE__*/function () {
21
22
  var _ref = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(webId) {
22
- var _podRoot;
23
23
  var webIdURL, storages, podRoot, path, _res$headers$get, res;
24
24
  return _regenerator["default"].wrap(function _callee$(_context) {
25
25
  while (1) switch (_context.prev = _context.next) {
@@ -65,7 +65,7 @@ var getPodRoot = /*#__PURE__*/function () {
65
65
  });
66
66
  if (!podRoot) podRoot = storages[0];
67
67
  case 21:
68
- return _context.abrupt("return", (_podRoot = podRoot) === null || _podRoot === void 0 ? void 0 : _podRoot.value);
68
+ return _context.abrupt("return", podRoot);
69
69
  case 22:
70
70
  case "end":
71
71
  return _context.stop();
@@ -76,6 +76,7 @@ var getPodRoot = /*#__PURE__*/function () {
76
76
  return _ref.apply(this, arguments);
77
77
  };
78
78
  }();
79
+ exports.getPodRoot = getPodRoot;
79
80
  var pubKeyUrl = /*#__PURE__*/function () {
80
81
  var _ref2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(webId) {
81
82
  return _regenerator["default"].wrap(function _callee2$(_context2) {
@@ -85,7 +86,7 @@ var pubKeyUrl = /*#__PURE__*/function () {
85
86
  _context2.next = 3;
86
87
  return getPodRoot(webId);
87
88
  case 3:
88
- _context2.t0 = _context2.sent;
89
+ _context2.t0 = _context2.sent.value;
89
90
  return _context2.abrupt("return", _context2.t0 + 'profile/keys/publicKey.ttl');
90
91
  case 7:
91
92
  _context2.prev = 7;
@@ -102,88 +103,88 @@ var pubKeyUrl = /*#__PURE__*/function () {
102
103
  };
103
104
  }();
104
105
  exports.pubKeyUrl = pubKeyUrl;
105
- function publicKeyExists(_x3) {
106
- return _publicKeyExists.apply(this, arguments);
106
+ function getExistingPublicKey(_x3, _x4) {
107
+ return _getExistingPublicKey.apply(this, arguments);
107
108
  }
108
- function _publicKeyExists() {
109
- _publicKeyExists = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4(webId) {
110
- var publicKeyUrl;
109
+ function _getExistingPublicKey() {
110
+ _getExistingPublicKey = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4(webId, publicKeyUrl) {
111
111
  return _regenerator["default"].wrap(function _callee4$(_context4) {
112
112
  while (1) switch (_context4.prev = _context4.next) {
113
113
  case 0:
114
114
  _context4.next = 2;
115
- return pubKeyUrl(webId);
115
+ return getKeyIfExists(webId, publicKeyUrl, 'publicKey');
116
116
  case 2:
117
- publicKeyUrl = _context4.sent;
118
- _context4.next = 5;
119
- return keyExists(webId, publicKeyUrl, 'PublicKey');
120
- case 5:
121
117
  return _context4.abrupt("return", _context4.sent);
122
- case 6:
118
+ case 3:
123
119
  case "end":
124
120
  return _context4.stop();
125
121
  }
126
122
  }, _callee4);
127
123
  }));
128
- return _publicKeyExists.apply(this, arguments);
124
+ return _getExistingPublicKey.apply(this, arguments);
129
125
  }
130
126
  var privKeyUrl = /*#__PURE__*/function () {
131
127
  var _ref3 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3(webId) {
128
+ var _store$any, _settings;
129
+ var settings, _settings2, podRoot;
132
130
  return _regenerator["default"].wrap(function _callee3$(_context3) {
133
131
  while (1) switch (_context3.prev = _context3.next) {
134
132
  case 0:
135
- _context3.prev = 0;
136
- _context3.next = 3;
133
+ settings = (_store$any = _solidLogic.store.any(webId, ns.space('preferencesFile'), null, webId.doc())) === null || _store$any === void 0 ? void 0 : _store$any.value;
134
+ settings = (_settings = settings) === null || _settings === void 0 ? void 0 : _settings.split('/').slice(0, -1).join('/');
135
+ _context3.prev = 2;
136
+ _context3.next = 5;
137
137
  return getPodRoot(webId);
138
- case 3:
139
- _context3.t0 = _context3.sent;
140
- return _context3.abrupt("return", _context3.t0 + 'profile/keys/privateKey.ttl');
141
- case 7:
142
- _context3.prev = 7;
143
- _context3.t1 = _context3["catch"](0);
144
- throw new Error(_context3.t1);
145
- case 10:
138
+ case 5:
139
+ podRoot = _context3.sent;
140
+ if ((_settings2 = settings) !== null && _settings2 !== void 0 && _settings2.startsWith(podRoot.value)) {
141
+ _context3.next = 8;
142
+ break;
143
+ }
144
+ throw new Error("/settings/ is expected to be in ".concat(podRoot.value));
145
+ case 8:
146
+ return _context3.abrupt("return", "".concat(settings, "/keys/privateKey.ttl"));
147
+ case 11:
148
+ _context3.prev = 11;
149
+ _context3.t0 = _context3["catch"](2);
150
+ throw new Error(_context3.t0);
151
+ case 14:
146
152
  case "end":
147
153
  return _context3.stop();
148
154
  }
149
- }, _callee3, null, [[0, 7]]);
155
+ }, _callee3, null, [[2, 11]]);
150
156
  }));
151
- return function privKeyUrl(_x4) {
157
+ return function privKeyUrl(_x5) {
152
158
  return _ref3.apply(this, arguments);
153
159
  };
154
160
  }();
155
161
  exports.privKeyUrl = privKeyUrl;
156
- function privateKeyExists(_x5) {
157
- return _privateKeyExists.apply(this, arguments);
162
+ function getExistingPrivateKey(_x6, _x7) {
163
+ return _getExistingPrivateKey.apply(this, arguments);
158
164
  }
159
- function _privateKeyExists() {
160
- _privateKeyExists = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee5(webId) {
161
- var privateKeyUrl;
165
+ function _getExistingPrivateKey() {
166
+ _getExistingPrivateKey = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee5(webId, privateKeyUrl) {
162
167
  return _regenerator["default"].wrap(function _callee5$(_context5) {
163
168
  while (1) switch (_context5.prev = _context5.next) {
164
169
  case 0:
165
170
  _context5.next = 2;
166
- return privKeyUrl(webId);
171
+ return getKeyIfExists(webId, privateKeyUrl, 'privateKey');
167
172
  case 2:
168
- privateKeyUrl = _context5.sent;
169
- _context5.next = 5;
170
- return keyExists(webId, privateKeyUrl, 'PrivateKey');
171
- case 5:
172
173
  return _context5.abrupt("return", _context5.sent);
173
- case 6:
174
+ case 3:
174
175
  case "end":
175
176
  return _context5.stop();
176
177
  }
177
178
  }, _callee5);
178
179
  }));
179
- return _privateKeyExists.apply(this, arguments);
180
+ return _getExistingPrivateKey.apply(this, arguments);
180
181
  }
181
- function keyExists(_x6, _x7, _x8) {
182
- return _keyExists.apply(this, arguments);
182
+ function getKeyIfExists(_x8, _x9, _x10) {
183
+ return _getKeyIfExists.apply(this, arguments);
183
184
  }
184
- function _keyExists() {
185
- _keyExists = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee6(webId, keyUrl, keyType) {
186
- var key, _err$response, data, contentType, response;
185
+ function _getKeyIfExists() {
186
+ _getKeyIfExists = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee6(webId, keyUrl, keyType) {
187
+ var key;
187
188
  return _regenerator["default"].wrap(function _callee6$(_context6) {
188
189
  while (1) switch (_context6.prev = _context6.next) {
189
190
  case 0:
@@ -191,35 +192,33 @@ function _keyExists() {
191
192
  _context6.next = 3;
192
193
  return _solidLogic.store.fetcher.load(keyUrl);
193
194
  case 3:
194
- key = _solidLogic.store.any(webId, _solidLogic.store.sym(_signature.CERT + keyType));
195
+ key = _solidLogic.store.any(webId, ns.solid(keyType)); // store.sym(CERT + keyType))
195
196
  return _context6.abrupt("return", key === null || key === void 0 ? void 0 : key.value);
196
197
  case 7:
197
198
  _context6.prev = 7;
198
199
  _context6.t0 = _context6["catch"](0);
199
- if (!((_context6.t0 === null || _context6.t0 === void 0 ? void 0 : (_err$response = _context6.t0.response) === null || _err$response === void 0 ? void 0 : _err$response.status) === 404)) {
200
+ if (!(_context6.t0.response.status === 404)) {
200
201
  _context6.next = 24;
201
202
  break;
202
203
  }
203
- _context6.prev = 10;
204
- // create privateKey resource
205
- data = '';
206
- contentType = 'text/turtle';
207
- _context6.next = 15;
204
+ debug.log('createIfNotExists: doc does NOT exist, will create... ' + keyUrl);
205
+ _context6.prev = 11;
206
+ _context6.next = 14;
208
207
  return _solidLogic.store.fetcher.webOperation('PUT', keyUrl, {
209
- data: data,
210
- contentType: contentType
208
+ data: '',
209
+ contentType: 'text/turtle'
211
210
  });
212
- case 15:
213
- response = _context6.sent;
214
- _context6.next = 22;
211
+ case 14:
212
+ _context6.next = 20;
215
213
  break;
216
- case 18:
217
- _context6.prev = 18;
218
- _context6.t1 = _context6["catch"](10);
214
+ case 16:
215
+ _context6.prev = 16;
216
+ _context6.t1 = _context6["catch"](11);
219
217
  debug.log('createIfNotExists doc FAILED: ' + keyUrl + ': ' + _context6.t1);
220
218
  throw _context6.t1;
221
- case 22:
219
+ case 20:
222
220
  delete _solidLogic.store.fetcher.requested[keyUrl]; // delete cached 404 error
221
+ // debug.log('createIfNotExists doc created ok ' + doc)
223
222
  return _context6.abrupt("return", undefined);
224
223
  case 24:
225
224
  debug.log('createIfNotExists doc FAILED: ' + keyUrl + ': ' + _context6.t0);
@@ -228,8 +227,8 @@ function _keyExists() {
228
227
  case "end":
229
228
  return _context6.stop();
230
229
  }
231
- }, _callee6, null, [[0, 7], [10, 18]]);
230
+ }, _callee6, null, [[0, 7], [11, 16]]);
232
231
  }));
233
- return _keyExists.apply(this, arguments);
232
+ return _getKeyIfExists.apply(this, arguments);
234
233
  }
235
- //# sourceMappingURL=cryptoKeyHelpers.js.map
234
+ //# sourceMappingURL=accessData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"accessData.js","names":["debug","_interopRequireWildcard","require","_solidLogic","ns","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","getPodRoot","_ref","_asyncToGenerator2","_regenerator","mark","_callee","webId","webIdURL","storages","podRoot","path","_res$headers$get","res","wrap","_callee$","_context","prev","next","URL","uri","store","fetcher","load","each","space","doc","length","pathname","substring","lastIndexOf","sym","origin","webOperation","sent","headers","includes","value","abrupt","warn","concat","find","storage","stop","_x","apply","arguments","exports","pubKeyUrl","_ref2","_callee2","_callee2$","_context2","t0","t1","Error","_x2","getExistingPublicKey","_x3","_x4","_getExistingPublicKey","_callee4","publicKeyUrl","_callee4$","_context4","getKeyIfExists","privKeyUrl","_ref3","_callee3","_store$any","_settings","settings","_settings2","_callee3$","_context3","any","split","slice","join","startsWith","_x5","getExistingPrivateKey","_x6","_x7","_getExistingPrivateKey","_callee5","privateKeyUrl","_callee5$","_context5","_x8","_x9","_x10","_getKeyIfExists","_callee6","keyUrl","keyType","_callee6$","_context6","solid","response","status","log","data","contentType","requested","undefined"],"sources":["../../../src/utils/keyHelpers/accessData.ts"],"sourcesContent":["import * as debug from '../../debug'\n// import { CERT } from '../../chat/signature'\nimport { store } from 'solid-logic'\nimport * as ns from '../../ns'\nimport { NamedNode } from 'rdflib'\n\nexport const getPodRoot = async (webId: NamedNode) => {\n const webIdURL = new URL(webId.uri)\n // find storages in webId document\n await store.fetcher.load(webId.uri)\n const storages = store.each(webId, ns.space('storage'), null, webId.doc())\n var podRoot: NamedNode | undefined\n if (!storages?.length) {\n // find storage recursively in webId URL\n let path = webIdURL.pathname\n while (path.length) {\n path = path.substring(0, path.lastIndexOf('/'))\n podRoot = store.sym(webIdURL.origin + path + '/')\n const res = await store.fetcher.webOperation('HEAD', podRoot.uri)\n if (res.headers.get('link')?.includes(ns.space('Storage').value)) break\n if (!path) debug.warn(`Current user storage not found for\\n${webId}`)\n }\n } else {\n // give preference to storage in webId root\n podRoot = storages.find((storage) => webIdURL.origin === new URL(storage.value).origin) as NamedNode\n if (!podRoot) podRoot = storages[0] as NamedNode\n }\n return podRoot as NamedNode\n}\n\nexport const pubKeyUrl = async (webId: NamedNode) => {\n try {\n return (await getPodRoot(webId)).value + 'profile/keys/publicKey.ttl'\n } catch (err) { throw new Error(err) }\n}\n\nexport async function getExistingPublicKey (webId: NamedNode, publicKeyUrl: string) {\n // find publickey\n return await getKeyIfExists(webId, publicKeyUrl, 'publicKey')\n}\n\nexport const privKeyUrl = async (webId: NamedNode) => {\n let settings = store.any(webId, ns.space('preferencesFile'), null, webId.doc())?.value\n settings = settings?.split('/').slice(0, -1).join('/')\n try {\n const podRoot = await getPodRoot(webId)\n if (!settings?.startsWith(podRoot.value)) throw new Error(`/settings/ is expected to be in ${podRoot.value}`)\n return `${settings}/keys/privateKey.ttl`\n } catch (err) { throw new Error(err) }\n}\n\nexport async function getExistingPrivateKey (webId: NamedNode, privateKeyUrl: string) {\n // find privateKey\n return await getKeyIfExists(webId, privateKeyUrl, 'privateKey')\n}\n\ntype KeyType = 'publicKey' | 'privateKey'\n\nexport async function getKeyIfExists (webId: NamedNode, keyUrl: string, keyType: KeyType) {\n try {\n await store.fetcher.load(keyUrl)\n const key = store.any(webId, ns.solid(keyType)) // store.sym(CERT + keyType))\n return key?.value // as NamedNode\n } catch (err) {\n if (err.response.status === 404) {\n debug.log(\n 'createIfNotExists: doc does NOT exist, will create... ' + keyUrl\n )\n try {\n await store.fetcher.webOperation('PUT', keyUrl, {\n data: '',\n contentType: 'text/turtle'\n })\n } catch (err) {\n debug.log('createIfNotExists doc FAILED: ' + keyUrl + ': ' + err)\n throw err\n }\n delete store.fetcher.requested[keyUrl] // delete cached 404 error\n // debug.log('createIfNotExists doc created ok ' + doc)\n return undefined // response\n } else {\n debug.log('createIfNotExists doc FAILED: ' + keyUrl + ': ' + err)\n throw err\n }\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * set ACL
3
+ * @param keyDoc
4
+ * @param aclBody
5
+ */
6
+ export declare function setAcl(keyDoc: string, aclBody: string): Promise<void>;
7
+ /**
8
+ * key container ACL
9
+ * @param me
10
+ * @returns aclBody
11
+ */
12
+ export declare const keyContainerAclBody: (me: string) => string;
13
+ /**
14
+ * Read only ACL
15
+ * @param keyDoc
16
+ * @param me
17
+ * @returns aclBody
18
+ */
19
+ export declare const keyAclBody: (keyDoc: any, me: any) => string;
20
+ //# sourceMappingURL=acl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acl.d.ts","sourceRoot":"","sources":["../../../src/utils/keyHelpers/acl.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,wBAAsB,MAAM,CAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,iBAsB5D;AAED;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,OAAQ,MAAM,WAe7C,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,UAAU,kCAatB,CAAA"}
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.keyContainerAclBody = exports.keyAclBody = void 0;
9
+ exports.setAcl = setAcl;
10
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
12
+ var debug = _interopRequireWildcard(require("../../debug"));
13
+ var _solidLogic = require("solid-logic");
14
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
15
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
16
+ /**
17
+ * set ACL
18
+ * @param keyDoc
19
+ * @param aclBody
20
+ */
21
+ function setAcl(_x, _x2) {
22
+ return _setAcl.apply(this, arguments);
23
+ }
24
+ /**
25
+ * key container ACL
26
+ * @param me
27
+ * @returns aclBody
28
+ */
29
+ function _setAcl() {
30
+ _setAcl = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(keyDoc, aclBody) {
31
+ var keyAclDoc, _err$response;
32
+ return _regenerator["default"].wrap(function _callee$(_context) {
33
+ while (1) switch (_context.prev = _context.next) {
34
+ case 0:
35
+ _context.next = 2;
36
+ return _solidLogic.store.fetcher.load(keyDoc);
37
+ case 2:
38
+ // FIXME: check the Why value on this quad:
39
+ debug.log(_solidLogic.store.statementsMatching(_solidLogic.store.sym(keyDoc), _solidLogic.store.sym('http://www.iana.org/assignments/link-relations/acl')));
40
+ keyAclDoc = _solidLogic.store.any(_solidLogic.store.sym(keyDoc), _solidLogic.store.sym('http://www.iana.org/assignments/link-relations/acl'));
41
+ if (keyAclDoc) {
42
+ _context.next = 6;
43
+ break;
44
+ }
45
+ throw new Error('Key ACL doc not found!');
46
+ case 6:
47
+ _context.prev = 6;
48
+ _context.next = 9;
49
+ return _solidLogic.store.fetcher.webOperation('PUT', keyAclDoc.value, {
50
+ data: aclBody,
51
+ contentType: 'text/turtle'
52
+ });
53
+ case 9:
54
+ _context.next = 16;
55
+ break;
56
+ case 11:
57
+ _context.prev = 11;
58
+ _context.t0 = _context["catch"](6);
59
+ if (!((_context.t0 === null || _context.t0 === void 0 ? void 0 : (_err$response = _context.t0.response) === null || _err$response === void 0 ? void 0 : _err$response.status) !== 404)) {
60
+ _context.next = 15;
61
+ break;
62
+ }
63
+ throw new Error(_context.t0);
64
+ case 15:
65
+ debug.log('delete ' + keyAclDoc.value + ' ' + _context.t0.response.status); // should test 404 and 2xx
66
+ case 16:
67
+ case "end":
68
+ return _context.stop();
69
+ }
70
+ }, _callee, null, [[6, 11]]);
71
+ }));
72
+ return _setAcl.apply(this, arguments);
73
+ }
74
+ var keyContainerAclBody = function keyContainerAclBody(me) {
75
+ var aclBody = "\n@prefix : <#>.\n@prefix acl: <http://www.w3.org/ns/auth/acl#>.\n@prefix foaf: <http://xmlns.com/foaf/0.1/>.\n@prefix key: <./>.\n\n:ReadWrite\n a acl:Authorization;\n acl:accessTo key:;\n acl:default key:;\n acl:agent <".concat(me, ">;\n acl:mode acl:Read, acl:Write.\n");
76
+ return aclBody;
77
+ };
78
+
79
+ /**
80
+ * Read only ACL
81
+ * @param keyDoc
82
+ * @param me
83
+ * @returns aclBody
84
+ */
85
+ exports.keyContainerAclBody = keyContainerAclBody;
86
+ var keyAclBody = function keyAclBody(keyDoc, me) {
87
+ var keyAgent = 'acl:agentClass foaf:Agent'; // publicKey
88
+ if (me !== null && me !== void 0 && me.length) keyAgent = "acl:agent <".concat(me, ">"); // privateKey
89
+ var aclBody = "\n@prefix foaf: <http://xmlns.com/foaf/0.1/>.\n@prefix acl: <http://www.w3.org/ns/auth/acl#>.\n<#Read>\n a acl:Authorization;\n ".concat(keyAgent, ";\n acl:accessTo <").concat(keyDoc.split('/').pop(), ">;\n acl:mode acl:Read.\n");
90
+ return aclBody;
91
+ };
92
+ exports.keyAclBody = keyAclBody;
93
+ //# sourceMappingURL=acl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acl.js","names":["debug","_interopRequireWildcard","require","_solidLogic","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","setAcl","_x","_x2","_setAcl","apply","arguments","_asyncToGenerator2","_regenerator","mark","_callee","keyDoc","aclBody","keyAclDoc","_err$response","wrap","_callee$","_context","prev","next","store","fetcher","load","log","statementsMatching","sym","any","Error","webOperation","value","data","contentType","t0","response","status","stop","keyContainerAclBody","me","concat","exports","keyAclBody","keyAgent","length","split","pop"],"sources":["../../../src/utils/keyHelpers/acl.ts"],"sourcesContent":["import * as debug from '../../debug'\nimport { store } from 'solid-logic'\n\n/**\n * set ACL\n * @param keyDoc\n * @param aclBody\n */\nexport async function setAcl (keyDoc: string, aclBody: string) {\n // Some servers don't present a Link http response header\n // if the container doesn't exist yet, refetch the resource\n\n await store.fetcher.load(keyDoc)\n\n // FIXME: check the Why value on this quad:\n debug.log(store.statementsMatching(store.sym(keyDoc), store.sym('http://www.iana.org/assignments/link-relations/acl')))\n const keyAclDoc = store.any(store.sym(keyDoc), store.sym('http://www.iana.org/assignments/link-relations/acl'))\n if (!keyAclDoc) {\n throw new Error('Key ACL doc not found!')\n }\n\n try {\n await store.fetcher.webOperation('PUT', keyAclDoc.value, {\n data: aclBody,\n contentType: 'text/turtle'\n })\n } catch (err) {\n if (err?.response?.status !== 404) { throw new Error(err) }\n debug.log('delete ' + keyAclDoc.value + ' ' + err.response.status) // should test 404 and 2xx\n }\n}\n\n/**\n * key container ACL\n * @param me\n * @returns aclBody\n */\nexport const keyContainerAclBody = (me: string) => {\n const aclBody = `\n@prefix : <#>.\n@prefix acl: <http://www.w3.org/ns/auth/acl#>.\n@prefix foaf: <http://xmlns.com/foaf/0.1/>.\n@prefix key: <./>.\n\n:ReadWrite\n a acl:Authorization;\n acl:accessTo key:;\n acl:default key:;\n acl:agent <${me}>;\n acl:mode acl:Read, acl:Write.\n`\n return aclBody\n}\n\n/**\n * Read only ACL\n * @param keyDoc\n * @param me\n * @returns aclBody\n */\nexport const keyAclBody = (keyDoc, me) => {\n let keyAgent = 'acl:agentClass foaf:Agent' // publicKey\n if (me?.length) keyAgent = `acl:agent <${me}>` // privateKey\n const aclBody = `\n@prefix foaf: <http://xmlns.com/foaf/0.1/>.\n@prefix acl: <http://www.w3.org/ns/auth/acl#>.\n<#Read>\n a acl:Authorization;\n ${keyAgent};\n acl:accessTo <${keyDoc.split('/').pop()}>;\n acl:mode acl:Read.\n`\n return aclBody\n}\n"],"mappings":"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"}
@@ -5,8 +5,8 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.versionInfo = void 0;
7
7
  var versionInfo = {
8
- buildTime: '2023-05-06T21:42:08Z',
9
- commit: '422746626a80c2dcc046c9712a0589d1903a2dbf',
8
+ buildTime: '2023-05-24T19:29:55Z',
9
+ commit: '4735a19d193ae5edaed6ad5b9979eb106e7b316f',
10
10
  npmInfo: {
11
11
  'solid-ui': '2.4.27',
12
12
  npm: '8.19.4',
@@ -1 +1 @@
1
- {"version":3,"file":"versionInfo.js","names":["versionInfo","buildTime","commit","npmInfo","npm","node","v8","uv","zlib","brotli","ares","modules","nghttp2","napi","llhttp","openssl","cldr","icu","tz","unicode","ngtcp2","nghttp3","exports"],"sources":["../src/versionInfo.ts"],"sourcesContent":["export const versionInfo = {\n buildTime: '2023-05-06T21:42:08Z',\n commit: '422746626a80c2dcc046c9712a0589d1903a2dbf',\n npmInfo:\n{\n 'solid-ui': '2.4.27',\n npm: '8.19.4',\n node: '16.20.0',\n v8: '9.4.146.26-node.26',\n uv: '1.43.0',\n zlib: '1.2.11',\n brotli: '1.0.9',\n ares: '1.19.0',\n modules: '93',\n nghttp2: '1.47.0',\n napi: '8',\n llhttp: '6.0.10',\n openssl: '1.1.1t+quic',\n cldr: '41.0',\n icu: '71.1',\n tz: '2022f',\n unicode: '14.0',\n ngtcp2: '0.8.1',\n nghttp3: '0.7.0'\n}\n}\n"],"mappings":";;;;;;AAAO,IAAMA,WAAW,GAAG;EACzBC,SAAS,EAAE,sBAAsB;EACjCC,MAAM,EAAE,0CAA0C;EAClDC,OAAO,EACT;IACE,UAAU,EAAE,QAAQ;IACpBC,GAAG,EAAE,QAAQ;IACbC,IAAI,EAAE,SAAS;IACfC,EAAE,EAAE,oBAAoB;IACxBC,EAAE,EAAE,QAAQ;IACZC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE,OAAO;IACfC,IAAI,EAAE,QAAQ;IACdC,OAAO,EAAE,IAAI;IACbC,OAAO,EAAE,QAAQ;IACjBC,IAAI,EAAE,GAAG;IACTC,MAAM,EAAE,QAAQ;IAChBC,OAAO,EAAE,aAAa;IACtBC,IAAI,EAAE,MAAM;IACZC,GAAG,EAAE,MAAM;IACXC,EAAE,EAAE,OAAO;IACXC,OAAO,EAAE,MAAM;IACfC,MAAM,EAAE,OAAO;IACfC,OAAO,EAAE;EACX;AACA,CAAC;AAAAC,OAAA,CAAAtB,WAAA,GAAAA,WAAA"}
1
+ {"version":3,"file":"versionInfo.js","names":["versionInfo","buildTime","commit","npmInfo","npm","node","v8","uv","zlib","brotli","ares","modules","nghttp2","napi","llhttp","openssl","cldr","icu","tz","unicode","ngtcp2","nghttp3","exports"],"sources":["../src/versionInfo.ts"],"sourcesContent":["export const versionInfo = {\n buildTime: '2023-05-24T19:29:55Z',\n commit: '4735a19d193ae5edaed6ad5b9979eb106e7b316f',\n npmInfo:\n{\n 'solid-ui': '2.4.27',\n npm: '8.19.4',\n node: '16.20.0',\n v8: '9.4.146.26-node.26',\n uv: '1.43.0',\n zlib: '1.2.11',\n brotli: '1.0.9',\n ares: '1.19.0',\n modules: '93',\n nghttp2: '1.47.0',\n napi: '8',\n llhttp: '6.0.10',\n openssl: '1.1.1t+quic',\n cldr: '41.0',\n icu: '71.1',\n tz: '2022f',\n unicode: '14.0',\n ngtcp2: '0.8.1',\n nghttp3: '0.7.0'\n}\n}\n"],"mappings":";;;;;;AAAO,IAAMA,WAAW,GAAG;EACzBC,SAAS,EAAE,sBAAsB;EACjCC,MAAM,EAAE,0CAA0C;EAClDC,OAAO,EACT;IACE,UAAU,EAAE,QAAQ;IACpBC,GAAG,EAAE,QAAQ;IACbC,IAAI,EAAE,SAAS;IACfC,EAAE,EAAE,oBAAoB;IACxBC,EAAE,EAAE,QAAQ;IACZC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE,OAAO;IACfC,IAAI,EAAE,QAAQ;IACdC,OAAO,EAAE,IAAI;IACbC,OAAO,EAAE,QAAQ;IACjBC,IAAI,EAAE,GAAG;IACTC,MAAM,EAAE,QAAQ;IAChBC,OAAO,EAAE,aAAa;IACtBC,IAAI,EAAE,MAAM;IACZC,GAAG,EAAE,MAAM;IACXC,EAAE,EAAE,OAAO;IACXC,OAAO,EAAE,MAAM;IACfC,MAAM,EAAE,OAAO;IACfC,OAAO,EAAE;EACX;AACA,CAAC;AAAAC,OAAA,CAAAtB,WAAA,GAAAA,WAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "solid-ui",
3
- "version": "2.4.27-42274662",
3
+ "version": "2.4.27-4735a19d",
4
4
  "description": "UI library for writing Solid read-write-web applications",
5
5
  "main": "./lib/index.js",
6
6
  "types": "./lib/index.d.ts",
@@ -1,6 +0,0 @@
1
- import { NamedNode } from 'rdflib';
2
- export declare const pubKeyUrl: (webId: NamedNode) => Promise<string>;
3
- export declare function publicKeyExists(webId: NamedNode): Promise<string | undefined>;
4
- export declare const privKeyUrl: (webId: NamedNode) => Promise<string>;
5
- export declare function privateKeyExists(webId: NamedNode): Promise<string | undefined>;
6
- //# sourceMappingURL=cryptoKeyHelpers.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cryptoKeyHelpers.d.ts","sourceRoot":"","sources":["../../src/utils/cryptoKeyHelpers.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AA0BlC,eAAO,MAAM,SAAS,UAAiB,SAAS,oBAI/C,CAAA;AAED,wBAAsB,eAAe,CAAE,KAAK,EAAE,SAAS,+BAItD;AAED,eAAO,MAAM,UAAU,UAAiB,SAAS,oBAIhD,CAAA;AAED,wBAAsB,gBAAgB,CAAE,KAAK,EAAE,SAAS,+BAIvD"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"cryptoKeyHelpers.js","names":["debug","_interopRequireWildcard","require","_signature","_solidLogic","ns","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","getPodRoot","_ref","_asyncToGenerator2","_regenerator","mark","_callee","webId","_podRoot","webIdURL","storages","podRoot","path","_res$headers$get","res","wrap","_callee$","_context","prev","next","URL","uri","store","fetcher","load","each","space","doc","length","pathname","substring","lastIndexOf","sym","origin","webOperation","sent","headers","includes","value","abrupt","warn","concat","find","storage","stop","_x","apply","arguments","pubKeyUrl","_ref2","_callee2","_callee2$","_context2","t0","t1","Error","_x2","exports","publicKeyExists","_x3","_publicKeyExists","_callee4","publicKeyUrl","_callee4$","_context4","keyExists","privKeyUrl","_ref3","_callee3","_callee3$","_context3","_x4","privateKeyExists","_x5","_privateKeyExists","_callee5","privateKeyUrl","_callee5$","_context5","_x6","_x7","_x8","_keyExists","_callee6","keyUrl","keyType","_err$response","data","contentType","response","_callee6$","_context6","any","CERT","status","log","requested","undefined"],"sources":["../../src/utils/cryptoKeyHelpers.ts"],"sourcesContent":["import * as debug from '../debug'\nimport { CERT } from '../chat/signature'\nimport { store } from 'solid-logic'\nimport * as ns from '../ns'\nimport { NamedNode } from 'rdflib'\n\nconst getPodRoot = async (webId: NamedNode) => {\n const webIdURL = new URL(webId.uri)\n // find storages in webId document\n await store.fetcher.load(webId.uri)\n const storages = store.each(webId, ns.space('storage'), null, webId.doc())\n var podRoot: NamedNode | undefined\n if (!storages?.length) {\n // find storage recursively in webId URL\n let path = webIdURL.pathname\n while (path.length) {\n path = path.substring(0, path.lastIndexOf('/'))\n podRoot = store.sym(webIdURL.origin + path + '/')\n const res = await store.fetcher.webOperation('HEAD', podRoot.uri)\n if (res.headers.get('link')?.includes(ns.space('Storage').value)) break\n if (!path) debug.warn(`Current user storage not found for\\n${webId}`)\n }\n } else {\n // give preference to storage in webId root\n podRoot = storages.find((storage) => webIdURL.origin === new URL(storage.value).origin) as NamedNode\n if (!podRoot) podRoot = storages[0] as NamedNode\n }\n return podRoot?.value\n}\n\nexport const pubKeyUrl = async (webId: NamedNode) => {\n try {\n return await getPodRoot(webId) + 'profile/keys/publicKey.ttl'\n } catch (err) { throw new Error(err) }\n}\n\nexport async function publicKeyExists (webId: NamedNode) {\n // find publickey\n const publicKeyUrl = await pubKeyUrl(webId)\n return await keyExists(webId, publicKeyUrl, 'PublicKey')\n}\n\nexport const privKeyUrl = async (webId: NamedNode) => {\n try {\n return await getPodRoot(webId) + 'profile/keys/privateKey.ttl'\n } catch (err) { throw new Error(err) }\n}\n\nexport async function privateKeyExists (webId: NamedNode) {\n // find privateKey\n const privateKeyUrl = await privKeyUrl(webId)\n return await keyExists(webId, privateKeyUrl, 'PrivateKey')\n}\n\ntype KeyType = 'PublicKey' | 'PrivateKey'\n\nasync function keyExists (webId: NamedNode, keyUrl: string, keyType: KeyType) {\n try {\n await store.fetcher.load(keyUrl)\n const key = store.any(webId, store.sym(CERT + keyType))\n return key?.value // as NamedNode\n } catch (err) {\n if (err?.response?.status === 404) { // If PATCH on some server do not all create intermediate containers\n try {\n // create privateKey resource\n const data = ''\n const contentType = 'text/turtle'\n const response = await store.fetcher.webOperation('PUT', keyUrl, {\n data,\n contentType\n })\n } catch (err) {\n debug.log('createIfNotExists doc FAILED: ' + keyUrl + ': ' + err)\n throw err\n }\n delete store.fetcher.requested[keyUrl] // delete cached 404 error\n return undefined\n }\n debug.log('createIfNotExists doc FAILED: ' + keyUrl + ': ' + err)\n throw err\n }\n}\n"],"mappings":"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"}