solid-ui 2.4.27-e6d67dd8 → 2.4.27-eed9bea8

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.
@@ -1 +1 @@
1
- {"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../src/chat/keys.ts"],"names":[],"mappings":"AAQA,wBAAgB,kBAAkB,IAAK,MAAM,CAE5C;AAED,wBAAgB,iBAAiB,CAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAE7D;AAED,wBAAsB,YAAY,CAAE,KAAK,KAAA,+BAaxC;AAED,wBAAsB,aAAa,CAAE,KAAK,EAAE,MAAM,mBAqDjD"}
1
+ {"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../src/chat/keys.ts"],"names":[],"mappings":"AAQA,wBAAgB,kBAAkB,IAAK,MAAM,CAE5C;AAED,wBAAgB,iBAAiB,CAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAE7D;AAED,wBAAsB,YAAY,CAAE,KAAK,KAAA,+BAaxC;AAED,wBAAsB,aAAa,CAAE,KAAK,EAAE,MAAM,mBAuDjD"}
package/lib/chat/keys.js CHANGED
@@ -63,7 +63,7 @@ function getPrivateKey(_x2) {
63
63
  }
64
64
  function _getPrivateKey() {
65
65
  _getPrivateKey = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(webId) {
66
- var publicKeyDoc, privateKeyDoc, publicKey, privateKey, validPublicKey, del, add, newPublicKey;
66
+ var publicKeyDoc, privateKeyDoc, publicKey, privateKey, validPublicKey, del, add, newPublicKey, keyContainer;
67
67
  return _regenerator["default"].wrap(function _callee2$(_context2) {
68
68
  while (1) switch (_context2.prev = _context2.next) {
69
69
  case 0:
@@ -89,7 +89,7 @@ function _getPrivateKey() {
89
89
 
90
90
  // create key pair or repair publicKey
91
91
  if (!(!privateKey || !publicKey || !validPublicKey)) {
92
- _context2.next = 27;
92
+ _context2.next = 30;
93
93
  break;
94
94
  }
95
95
  del = [];
@@ -120,8 +120,12 @@ function _getPrivateKey() {
120
120
  _context2.next = 27;
121
121
  return saveKey(publicKeyDoc, del, add);
122
122
  case 27:
123
+ keyContainer = privateKeyDoc.substring(0, privateKeyDoc.lastIndexOf('/') + 1);
124
+ _context2.next = 30;
125
+ return setAcl(keyContainer, keyContainerAclBody(webId));
126
+ case 30:
123
127
  return _context2.abrupt("return", privateKey);
124
- case 28:
128
+ case 31:
125
129
  case "end":
126
130
  return _context2.stop();
127
131
  }
@@ -129,104 +133,113 @@ function _getPrivateKey() {
129
133
  }));
130
134
  return _getPrivateKey.apply(this, arguments);
131
135
  }
132
- function setAcl(_x3) {
136
+ var keyContainerAclBody = function keyContainerAclBody(me) {
137
+ 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:agent <".concat(me, ">;\n acl:mode acl:Read, acl:Write.\n:Read\n a acl:Authorization;\n acl:accessTo key:;\n acl:default key:;\n acl:agentClass foaf:Agent;\n acl:mode acl:Read.\n");
138
+ return aclBody;
139
+ };
140
+ var keyAclBody = function keyAclBody(keyDoc, me) {
141
+ var keyAgent = 'acl:agentClass foaf:Agent'; // publicKey
142
+ if (me !== null && me !== void 0 && me.length) keyAgent = "acl:agent <".concat(me, ">"); // privateKey
143
+ 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, acl:Control. # NSS issue: missing acl link header with READ only\n");
144
+ return aclBody;
145
+ };
146
+ function setAcl(_x3, _x4) {
133
147
  return _setAcl.apply(this, arguments);
134
148
  }
135
149
  function _setAcl() {
136
- _setAcl = (0, _asyncToGenerator2["default"])(function (keyDoc) {
137
- var me = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
138
- return /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
139
- var keyAclDoc, keyAgent, aclBody, aclResponse;
140
- return _regenerator["default"].wrap(function _callee3$(_context3) {
141
- while (1) switch (_context3.prev = _context3.next) {
142
- case 0:
143
- _context3.next = 2;
144
- return _solidLogic.store.fetcher.load(keyDoc);
145
- case 2:
146
- // FIXME: check the Why value on this quad:
147
- keyAclDoc = _solidLogic.store.any($rdf.sym(keyDoc), $rdf.sym('http://www.iana.org/assignments/link-relations/acl'));
148
- if (keyAclDoc) {
149
- _context3.next = 5;
150
- break;
151
- }
152
- throw new Error('Key ACL doc not found!');
153
- case 5:
154
- keyAgent = 'acl:agentClass foaf:agent';
155
- if (me !== null && me !== void 0 && me.length) keyAgent = "acl:agent <".concat(me, ">");
156
- 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");
157
- _context3.next = 10;
158
- return _solidLogic.store.fetcher.webOperation('PUT', keyAclDoc.value, {
159
- data: aclBody,
160
- contentType: 'text/turtle'
161
- });
162
- case 10:
163
- aclResponse = _context3.sent;
164
- case 11:
165
- case "end":
166
- return _context3.stop();
167
- }
168
- }, _callee3);
169
- })();
170
- });
150
+ _setAcl = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3(keyDoc, aclBody) {
151
+ var keyAclDoc, aclResponse;
152
+ return _regenerator["default"].wrap(function _callee3$(_context3) {
153
+ while (1) switch (_context3.prev = _context3.next) {
154
+ case 0:
155
+ _context3.next = 2;
156
+ return _solidLogic.store.fetcher.load(keyDoc);
157
+ case 2:
158
+ // FIXME: check the Why value on this quad:
159
+ keyAclDoc = _solidLogic.store.any($rdf.sym(keyDoc), $rdf.sym('http://www.iana.org/assignments/link-relations/acl'));
160
+ if (keyAclDoc) {
161
+ _context3.next = 5;
162
+ break;
163
+ }
164
+ throw new Error('Key ACL doc not found!');
165
+ case 5:
166
+ _context3.next = 7;
167
+ return _solidLogic.store.fetcher.webOperation('PUT', keyAclDoc.value, {
168
+ data: aclBody,
169
+ contentType: 'text/turtle'
170
+ });
171
+ case 7:
172
+ aclResponse = _context3.sent;
173
+ case 8:
174
+ case "end":
175
+ return _context3.stop();
176
+ }
177
+ }, _callee3);
178
+ }));
171
179
  return _setAcl.apply(this, arguments);
172
180
  }
173
- function saveKey(_x4, _x5, _x6) {
181
+ function saveKey(_x5, _x6, _x7) {
174
182
  return _saveKey.apply(this, arguments);
175
183
  }
176
184
  function _saveKey() {
177
185
  _saveKey = (0, _asyncToGenerator2["default"])(function (keyDoc, del, add) {
178
186
  var me = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '';
179
187
  return /*#__PURE__*/_regenerator["default"].mark(function _callee4() {
180
- var keyAclDoc, response;
188
+ var keyAclDoc, response, aclBody;
181
189
  return _regenerator["default"].wrap(function _callee4$(_context4) {
182
190
  while (1) switch (_context4.prev = _context4.next) {
183
191
  case 0:
184
- _context4.prev = 0;
192
+ _context4.next = 2;
193
+ return _solidLogic.store.updater.updateMany(del, add);
194
+ case 2:
195
+ _context4.next = 4;
196
+ return _solidLogic.store.fetcher.load(keyDoc);
197
+ case 4:
198
+ _context4.prev = 4;
185
199
  // get keyAcldoc
186
200
  keyAclDoc = _solidLogic.store.any($rdf.sym(keyDoc), $rdf.sym('http://www.iana.org/assignments/link-relations/acl'));
187
201
  if (keyAclDoc) {
188
- _context4.next = 4;
202
+ _context4.next = 8;
189
203
  break;
190
204
  }
191
205
  throw new Error("".concat(keyDoc, " ACL doc not found!"));
192
- case 4:
193
- _context4.prev = 4;
194
- _context4.next = 7;
206
+ case 8:
207
+ _context4.prev = 8;
208
+ _context4.next = 11;
195
209
  return _solidLogic.store.fetcher.webOperation('DELETE', keyAclDoc.value);
196
- case 7:
210
+ case 11:
197
211
  response = _context4.sent;
198
212
  // this may fail if webId is not an owner
199
213
  debug.log('delete ' + keyAclDoc.value + ' ' + response.status); // should test 404 and 2xx
200
- _context4.next = 16;
214
+ _context4.next = 20;
201
215
  break;
202
- case 11:
203
- _context4.prev = 11;
204
- _context4.t0 = _context4["catch"](4);
216
+ case 15:
217
+ _context4.prev = 15;
218
+ _context4.t0 = _context4["catch"](8);
205
219
  if (!(_context4.t0.response.status !== 404)) {
206
- _context4.next = 15;
220
+ _context4.next = 19;
207
221
  break;
208
222
  }
209
223
  throw new Error(_context4.t0);
210
- case 15:
224
+ case 19:
211
225
  debug.log('delete ' + keyAclDoc.value + ' ' + _context4.t0.response.status); // should test 404 and 2xx
212
- case 16:
213
- _context4.next = 18;
214
- return _solidLogic.store.updater.updateMany(del, add);
215
- case 18:
216
- _context4.next = 20;
217
- return setAcl(keyDoc, me);
218
226
  case 20:
219
- _context4.next = 25;
227
+ // create READ only ACL
228
+ aclBody = keyAclBody(keyDoc, me);
229
+ _context4.next = 23;
230
+ return setAcl(keyDoc, aclBody);
231
+ case 23:
232
+ _context4.next = 28;
220
233
  break;
221
- case 22:
222
- _context4.prev = 22;
223
- _context4.t1 = _context4["catch"](0);
224
- throw new Error(_context4.t1);
225
234
  case 25:
235
+ _context4.prev = 25;
236
+ _context4.t1 = _context4["catch"](4);
237
+ throw new Error(_context4.t1);
238
+ case 28:
226
239
  case "end":
227
240
  return _context4.stop();
228
241
  }
229
- }, _callee4, null, [[0, 22], [4, 11]]);
242
+ }, _callee4, null, [[4, 25], [8, 15]]);
230
243
  })();
231
244
  });
232
245
  return _saveKey.apply(this, arguments);
@@ -1 +1 @@
1
- {"version":3,"file":"keys.js","names":["debug","_interopRequireWildcard","require","_secp256k","_utils","_signature","_solidLogic","$rdf","_cryptoKeyHelpers","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","generatePrivateKey","bytesToHex","schnorr","utils","randomPrivateKey","generatePublicKey","privateKey","getPublicKey","_x","_getPublicKey","apply","arguments","_asyncToGenerator2","_regenerator","mark","_callee","webId","publicKeyDoc","wrap","_callee$","_context","prev","next","store","fetcher","load","pubKeyUrl","any","sym","CERT","abrupt","value","t0","undefined","stop","getPrivateKey","_x2","_getPrivateKey","_callee2","privateKeyDoc","publicKey","validPublicKey","del","add","newPublicKey","_callee2$","_context2","privKeyUrl","publicKeyExists","sent","privateKeyExists","confirm","st","literal","saveKey","lit","log","setAcl","_x3","_setAcl","keyDoc","me","length","_callee3","keyAclDoc","keyAgent","aclBody","aclResponse","_callee3$","_context3","Error","concat","split","pop","webOperation","data","contentType","_x4","_x5","_x6","_saveKey","_callee4","response","_callee4$","_context4","status","updater","updateMany","t1"],"sources":["../../src/chat/keys.ts"],"sourcesContent":["import * as debug from '../debug'\r\nimport { schnorr } from '@noble/curves/secp256k1'\r\nimport { bytesToHex } from '@noble/hashes/utils'\r\nimport { CERT } from './signature'\r\nimport { store } from 'solid-logic'\r\nimport * as $rdf from 'rdflib'\r\nimport { publicKeyExists, pubKeyUrl, privKeyUrl, privateKeyExists } from '../utils/cryptoKeyHelpers'\r\n\r\nexport function generatePrivateKey (): string {\r\n return bytesToHex(schnorr.utils.randomPrivateKey())\r\n}\r\n\r\nexport function generatePublicKey (privateKey: string): string {\r\n return bytesToHex(schnorr.getPublicKey(privateKey))\r\n}\r\n\r\nexport async function getPublicKey (webId) {\r\n await store.fetcher.load(webId)\r\n const publicKeyDoc = pubKeyUrl(webId)\r\n try {\r\n await store.fetcher.load(publicKeyDoc) // url.href)\r\n const key = store.any(store.sym(webId), store.sym(CERT + 'PublicKey'))\r\n return key?.value // as NamedNode\r\n } catch (err) {\r\n return undefined\r\n }\r\n // this is called in display message and should not try to create a publicKeyDoc\r\n // const publicKey = await publicKeyExists(webId)\r\n // return publicKey\r\n}\r\n\r\nexport async function getPrivateKey (webId: string) {\r\n await store.fetcher.load(webId)\r\n // find keys url's\r\n const publicKeyDoc = pubKeyUrl(webId)\r\n const privateKeyDoc = privKeyUrl(webId)\r\n\r\n // find key pair\r\n const publicKey = await publicKeyExists(webId)\r\n let privateKey = await privateKeyExists(webId)\r\n\r\n // is publicKey valid ?\r\n let validPublicKey = true\r\n if (privateKey && (publicKey !== generatePublicKey(privateKey as string))) {\r\n if (confirm('This is strange the publicKey is not valid for\\n' + webId +\r\n '\\'shall we repair keeping the private key ?')) validPublicKey = false\r\n }\r\n\r\n // create key pair or repair publicKey\r\n if (!privateKey || !publicKey || !validPublicKey) {\r\n let del: any[] = []\r\n let add: any[] = []\r\n // if (privateKey) del.push($rdf.st($rdf.sym(webId), $rdf.sym(CERT + 'PrivateKey'), $rdf.lit(privateKey), $rdf.sym(privateKeyDoc)))\r\n\r\n if (!privateKey) {\r\n // add = []\r\n privateKey = generatePrivateKey()\r\n add = [$rdf.st($rdf.sym(webId), $rdf.sym(CERT + 'PrivateKey'), $rdf.literal(privateKey), $rdf.sym(privateKeyDoc))]\r\n await saveKey(privateKeyDoc, [], add, webId)\r\n }\r\n if (!publicKey || !validPublicKey) {\r\n del = []\r\n // delete invalid public key\r\n if (publicKey) {\r\n del = [$rdf.st($rdf.sym(webId), $rdf.sym(CERT + 'PublicKey'), $rdf.lit(publicKey), $rdf.sym(publicKeyDoc))]\r\n debug.log(del)\r\n }\r\n // update new valid key\r\n const newPublicKey = generatePublicKey(privateKey)\r\n add = [$rdf.st($rdf.sym(webId), $rdf.sym(CERT + 'PublicKey'), $rdf.literal(newPublicKey), $rdf.sym(publicKeyDoc))]\r\n await saveKey(publicKeyDoc, del, add)\r\n }\r\n /* debug.log('new key pair ' + webId)\r\n debug.log('newPrivateKey-1 ' + privateKey)\r\n debug.log('newPublicKey-1 ' + publicKey) */\r\n /* debug.log('del')\r\n debug.log(del)\r\n debug.log('add')\r\n debug.log(add) */\r\n // await store.updater.updateMany(del, add)\r\n // TODO create READ ACL's\r\n // await setAcl() // depends on which key has been updated\r\n }\r\n return privateKey as string\r\n}\r\n\r\nasync function setAcl (keyDoc, me = '') {\r\n // Some servers don't present a Link http response header\r\n // if the container doesn't exist yet, so refetch the container\r\n // now that it has been created:\r\n await store.fetcher.load(keyDoc)\r\n\r\n // FIXME: check the Why value on this quad:\r\n const keyAclDoc = store.any($rdf.sym(keyDoc), $rdf.sym('http://www.iana.org/assignments/link-relations/acl'))\r\n if (!keyAclDoc) {\r\n throw new Error('Key ACL doc not found!')\r\n }\r\n\r\n let keyAgent = 'acl:agentClass foaf:agent'\r\n if (me?.length) keyAgent = `acl:agent <${me}>`\r\n const aclBody = `\r\n@prefix foaf: <http://xmlns.com/foaf/0.1/>.\r\n@prefix acl: <http://www.w3.org/ns/auth/acl#>.\r\n<#Read>\r\n a acl:Authorization;\r\n ${keyAgent};\r\n acl:accessTo <${keyDoc.split('/').pop()}>;\r\n acl:mode acl:Read.\r\n`\r\n const aclResponse = await store.fetcher.webOperation('PUT', keyAclDoc.value, {\r\n data: aclBody,\r\n contentType: 'text/turtle'\r\n })\r\n}\r\n\r\nasync function saveKey (keyDoc, del, add, me = '') {\r\n try {\r\n // get keyAcldoc\r\n const keyAclDoc = store.any($rdf.sym(keyDoc), $rdf.sym('http://www.iana.org/assignments/link-relations/acl'))\r\n if (!keyAclDoc) {\r\n throw new Error(`${keyDoc} ACL doc not found!`)\r\n }\r\n // delete READ only keyAclDoc. This is possible if the webId is an owner\r\n try {\r\n const response = await store.fetcher.webOperation('DELETE', keyAclDoc.value) // this may fail if webId is not an owner\r\n debug.log('delete ' + keyAclDoc.value + ' ' + response.status) // should test 404 and 2xx\r\n } catch (err) {\r\n if (err.response.status !== 404) { throw new Error(err) }\r\n debug.log('delete ' + keyAclDoc.value + ' ' + err.response.status) // should test 404 and 2xx\r\n }\r\n\r\n // save key\r\n await store.updater.updateMany(del, add) // or a promise store.updater.update ?\r\n\r\n // create READ only ACL\r\n await setAcl(keyDoc, me)\r\n } catch (err) { throw new Error(err) }\r\n}\r\n"],"mappings":"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"}
1
+ {"version":3,"file":"keys.js","names":["debug","_interopRequireWildcard","require","_secp256k","_utils","_signature","_solidLogic","$rdf","_cryptoKeyHelpers","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","generatePrivateKey","bytesToHex","schnorr","utils","randomPrivateKey","generatePublicKey","privateKey","getPublicKey","_x","_getPublicKey","apply","arguments","_asyncToGenerator2","_regenerator","mark","_callee","webId","publicKeyDoc","wrap","_callee$","_context","prev","next","store","fetcher","load","pubKeyUrl","any","sym","CERT","abrupt","value","t0","undefined","stop","getPrivateKey","_x2","_getPrivateKey","_callee2","privateKeyDoc","publicKey","validPublicKey","del","add","newPublicKey","keyContainer","_callee2$","_context2","privKeyUrl","publicKeyExists","sent","privateKeyExists","confirm","st","literal","saveKey","lit","log","substring","lastIndexOf","setAcl","keyContainerAclBody","me","aclBody","concat","keyAclBody","keyDoc","keyAgent","length","split","pop","_x3","_x4","_setAcl","_callee3","keyAclDoc","aclResponse","_callee3$","_context3","Error","webOperation","data","contentType","_x5","_x6","_x7","_saveKey","_callee4","response","_callee4$","_context4","updater","updateMany","status","t1"],"sources":["../../src/chat/keys.ts"],"sourcesContent":["import * as debug from '../debug'\r\nimport { schnorr } from '@noble/curves/secp256k1'\r\nimport { bytesToHex } from '@noble/hashes/utils'\r\nimport { CERT } from './signature'\r\nimport { store } from 'solid-logic'\r\nimport * as $rdf from 'rdflib'\r\nimport { publicKeyExists, pubKeyUrl, privKeyUrl, privateKeyExists } from '../utils/cryptoKeyHelpers'\r\n\r\nexport function generatePrivateKey (): string {\r\n return bytesToHex(schnorr.utils.randomPrivateKey())\r\n}\r\n\r\nexport function generatePublicKey (privateKey: string): string {\r\n return bytesToHex(schnorr.getPublicKey(privateKey))\r\n}\r\n\r\nexport async function getPublicKey (webId) {\r\n await store.fetcher.load(webId)\r\n const publicKeyDoc = pubKeyUrl(webId)\r\n try {\r\n await store.fetcher.load(publicKeyDoc) // url.href)\r\n const key = store.any(store.sym(webId), store.sym(CERT + 'PublicKey'))\r\n return key?.value // as NamedNode\r\n } catch (err) {\r\n return undefined\r\n }\r\n // this is called in display message and should not try to create a publicKeyDoc\r\n // const publicKey = await publicKeyExists(webId)\r\n // return publicKey\r\n}\r\n\r\nexport async function getPrivateKey (webId: string) {\r\n await store.fetcher.load(webId)\r\n // find keys url's\r\n const publicKeyDoc = pubKeyUrl(webId)\r\n const privateKeyDoc = privKeyUrl(webId)\r\n\r\n // find key pair\r\n const publicKey = await publicKeyExists(webId)\r\n let privateKey = await privateKeyExists(webId)\r\n\r\n // is publicKey valid ?\r\n let validPublicKey = true\r\n if (privateKey && (publicKey !== generatePublicKey(privateKey as string))) {\r\n if (confirm('This is strange the publicKey is not valid for\\n' + webId +\r\n '\\'shall we repair keeping the private key ?')) validPublicKey = false\r\n }\r\n\r\n // create key pair or repair publicKey\r\n if (!privateKey || !publicKey || !validPublicKey) {\r\n let del: any[] = []\r\n let add: any[] = []\r\n // if (privateKey) del.push($rdf.st($rdf.sym(webId), $rdf.sym(CERT + 'PrivateKey'), $rdf.lit(privateKey), $rdf.sym(privateKeyDoc)))\r\n\r\n if (!privateKey) {\r\n // add = []\r\n privateKey = generatePrivateKey()\r\n add = [$rdf.st($rdf.sym(webId), $rdf.sym(CERT + 'PrivateKey'), $rdf.literal(privateKey), $rdf.sym(privateKeyDoc))]\r\n await saveKey(privateKeyDoc, [], add, webId)\r\n }\r\n if (!publicKey || !validPublicKey) {\r\n del = []\r\n // delete invalid public key\r\n if (publicKey) {\r\n del = [$rdf.st($rdf.sym(webId), $rdf.sym(CERT + 'PublicKey'), $rdf.lit(publicKey), $rdf.sym(publicKeyDoc))]\r\n debug.log(del)\r\n }\r\n // update new valid key\r\n const newPublicKey = generatePublicKey(privateKey)\r\n add = [$rdf.st($rdf.sym(webId), $rdf.sym(CERT + 'PublicKey'), $rdf.literal(newPublicKey), $rdf.sym(publicKeyDoc))]\r\n await saveKey(publicKeyDoc, del, add)\r\n }\r\n const keyContainer = privateKeyDoc.substring(0, privateKeyDoc.lastIndexOf('/') + 1)\r\n await setAcl(keyContainer, keyContainerAclBody(webId))\r\n /* debug.log('new key pair ' + webId)\r\n debug.log('newPrivateKey-1 ' + privateKey)\r\n debug.log('newPublicKey-1 ' + publicKey) */\r\n /* debug.log('del')\r\n debug.log(del)\r\n debug.log('add')\r\n debug.log(add) */\r\n // await store.updater.updateMany(del, add)\r\n // TODO create READ ACL's\r\n // await setAcl() // depends on which key has been updated\r\n }\r\n return privateKey as string\r\n}\r\n\r\nconst keyContainerAclBody = (me: string) => {\r\n const aclBody = `\r\n@prefix : <#>.\r\n@prefix acl: <http://www.w3.org/ns/auth/acl#>.\r\n@prefix foaf: <http://xmlns.com/foaf/0.1/>.\r\n@prefix key: <./>.\r\n\r\n:ReadWrite\r\n a acl:Authorization;\r\n acl:accessTo key:;\r\n acl:agent <${me}>;\r\n acl:mode acl:Read, acl:Write.\r\n:Read\r\n a acl:Authorization;\r\n acl:accessTo key:;\r\n acl:default key:;\r\n acl:agentClass foaf:Agent;\r\n acl:mode acl:Read.\r\n`\r\n return aclBody\r\n}\r\n\r\nconst keyAclBody = (keyDoc, me) => {\r\n let keyAgent = 'acl:agentClass foaf:Agent' // publicKey\r\n if (me?.length) keyAgent = `acl:agent <${me}>` // privateKey\r\n const aclBody = `\r\n@prefix foaf: <http://xmlns.com/foaf/0.1/>.\r\n@prefix acl: <http://www.w3.org/ns/auth/acl#>.\r\n<#Read>\r\n a acl:Authorization;\r\n ${keyAgent};\r\n acl:accessTo <${keyDoc.split('/').pop()}>;\r\n acl:mode acl:Read, acl:Control. # NSS issue: missing acl link header with READ only\r\n`\r\n return aclBody\r\n}\r\n\r\nasync function setAcl (keyDoc, aclBody) {\r\n // Some servers don't present a Link http response header\r\n // if the container doesn't exist yet, so refetch the container\r\n // now that it has been created:\r\n await store.fetcher.load(keyDoc)\r\n\r\n // FIXME: check the Why value on this quad:\r\n const keyAclDoc = store.any($rdf.sym(keyDoc), $rdf.sym('http://www.iana.org/assignments/link-relations/acl'))\r\n if (!keyAclDoc) {\r\n throw new Error('Key ACL doc not found!')\r\n }\r\n\r\n /* let keyAgent = `acl:agent <${me}>;\\n` // privateKey\r\n if (!me?.length) keyAgent = `acl:agent <${me}>;\\n` + ' acl:agentClass foaf:Agent' // publicKey NSS issue\r\n const aclBody = `\r\n@prefix foaf: <http://xmlns.com/foaf/0.1/>.\r\n@prefix acl: <http://www.w3.org/ns/auth/acl#>.\r\n<#Read>\r\n a acl:Authorization;\r\n acl:agent <${me}>;\r\n ${keyAgent};\r\n acl:accessTo <${keyDoc.split('/').pop()}>;\r\n acl:mode acl:Read, acl:Control. # NSS issue: missing acl link header with READ only\r\n` */\r\n const aclResponse = await store.fetcher.webOperation('PUT', keyAclDoc.value, {\r\n data: aclBody,\r\n contentType: 'text/turtle'\r\n })\r\n}\r\n\r\nasync function saveKey (keyDoc, del, add, me = '') {\r\n // save key\r\n await store.updater.updateMany(del, add) // or a promise store.updater.update ?\r\n await store.fetcher.load(keyDoc)\r\n\r\n try {\r\n // get keyAcldoc\r\n const keyAclDoc = store.any($rdf.sym(keyDoc), $rdf.sym('http://www.iana.org/assignments/link-relations/acl'))\r\n if (!keyAclDoc) {\r\n throw new Error(`${keyDoc} ACL doc not found!`)\r\n }\r\n // delete READ only keyAclDoc. This is possible if the webId is an owner\r\n try {\r\n const response = await store.fetcher.webOperation('DELETE', keyAclDoc.value) // this may fail if webId is not an owner\r\n debug.log('delete ' + keyAclDoc.value + ' ' + response.status) // should test 404 and 2xx\r\n } catch (err) {\r\n if (err.response.status !== 404) { throw new Error(err) }\r\n debug.log('delete ' + keyAclDoc.value + ' ' + err.response.status) // should test 404 and 2xx\r\n }\r\n\r\n // create READ only ACL\r\n const aclBody = keyAclBody(keyDoc, me)\r\n await setAcl(keyDoc, aclBody)\r\n } catch (err) { throw new Error(err) }\r\n}\r\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cryptoKeyHelpers.d.ts","sourceRoot":"","sources":["../../src/utils/cryptoKeyHelpers.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,SAAS,UAAW,MAAM,WAStC,CAAA;AAED,wBAAsB,eAAe,CAAE,KAAK,EAAE,MAAM,+BAInD;AAED,eAAO,MAAM,UAAU,UAAW,MAAM,WASvC,CAAA;AAED,wBAAsB,gBAAgB,CAAE,KAAK,EAAE,MAAM,+BAIpD"}
1
+ {"version":3,"file":"cryptoKeyHelpers.d.ts","sourceRoot":"","sources":["../../src/utils/cryptoKeyHelpers.ts"],"names":[],"mappings":"AAgBA,eAAO,MAAM,SAAS,UAAW,MAAM,WAStC,CAAA;AAED,wBAAsB,eAAe,CAAE,KAAK,EAAE,MAAM,+BAInD;AAED,eAAO,MAAM,UAAU,UAAW,MAAM,WASvC,CAAA;AAED,wBAAsB,gBAAgB,CAAE,KAAK,EAAE,MAAM,+BAIpD"}
@@ -16,6 +16,18 @@ var _signature = require("../chat/signature");
16
16
  var _solidLogic = require("solid-logic");
17
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); }
18
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
+ // find podRoot from space:storage for subdomain/suffix podServers
20
+ /* export const podRoot = (webId: string) => {
21
+ await store.fetcher.load(webId)
22
+ const url = new URL(webId)
23
+ // find storage in webId
24
+ const storage = store.each(store.sym(webId), store.sym('http://www.w3.org/ns/pim/space#storage'))
25
+ const pod = storage.length === 1 ? storage : storage.find(node => url.origin === new URL(node.value).origin)
26
+ const podRoot = Array.isArray(pod) ? pod[0] : pod
27
+ if (!podRoot?.value) throw Error('No space:storage in ' + webId)
28
+ return podRoot.value
29
+ } */
30
+
19
31
  var pubKeyUrl = function pubKeyUrl(webId) {
20
32
  var url = new URL(webId);
21
33
  // find storage in webId
@@ -25,7 +37,7 @@ var pubKeyUrl = function pubKeyUrl(webId) {
25
37
  });
26
38
  var podUrl = Array.isArray(pod) ? pod[0] : pod;
27
39
  if (!(podUrl !== null && podUrl !== void 0 && podUrl.value)) throw Error('No space:storage in ' + webId);
28
- var publicKeyUrl = podUrl.value + 'profile/keys/publicKey.ttl';
40
+ var publicKeyUrl = (podUrl === null || podUrl === void 0 ? void 0 : podUrl.value) + 'profile/keys/publicKey.ttl';
29
41
  return publicKeyUrl;
30
42
  };
31
43
  exports.pubKeyUrl = pubKeyUrl;
@@ -1 +1 @@
1
- {"version":3,"file":"cryptoKeyHelpers.js","names":["debug","_interopRequireWildcard","require","_signature","_solidLogic","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","pubKeyUrl","webId","url","URL","storage","store","each","sym","pod","length","find","node","origin","value","podUrl","Array","isArray","Error","publicKeyUrl","exports","publicKeyExists","_x","_publicKeyExists","apply","arguments","_asyncToGenerator2","_regenerator","mark","_callee","wrap","_callee$","_context","prev","next","keyExists","abrupt","sent","stop","privKeyUrl","privateKeyUrl","privateKeyExists","_x2","_privateKeyExists","_callee2","_callee2$","_context2","_x3","_x4","_x5","_keyExists","_callee3","keyUrl","keyType","_err$response","data","contentType","response","_callee3$","_context3","fetcher","load","any","CERT","t0","status","webOperation","t1","log","requested","undefined"],"sources":["../../src/utils/cryptoKeyHelpers.ts"],"sourcesContent":["import * as debug from '../debug'\nimport { CERT } from '../chat/signature'\nimport { store } from 'solid-logic'\n\nexport const pubKeyUrl = (webId: string) => {\n const url = new URL(webId)\n // find storage in webId\n const storage = store.each(store.sym(webId), store.sym('http://www.w3.org/ns/pim/space#storage'))\n const pod = storage.length === 1 ? storage : storage.find(node => url.origin === new URL(node.value).origin)\n const podUrl = Array.isArray(pod) ? pod[0] : pod\n if (!podUrl?.value) throw Error('No space:storage in ' + webId)\n const publicKeyUrl = podUrl.value + 'profile/keys/publicKey.ttl'\n return publicKeyUrl\n}\n\nexport async function publicKeyExists (webId: string) {\n // find publickey\n const publicKeyUrl = pubKeyUrl(webId)\n return await keyExists(webId, publicKeyUrl, 'PublicKey')\n}\n\nexport const privKeyUrl = (webId: string) => {\n const url = new URL(webId)\n // find storage in webId\n const storage = store.each(store.sym(webId), store.sym('http://www.w3.org/ns/pim/space#storage'))\n const pod = storage.length === 1 ? storage : storage.find(node => url.origin === new URL(node.value).origin)\n const podUrl = Array.isArray(pod) ? pod[0] : pod\n if (!podUrl?.value) throw Error('Expected space:storage in ' + webId)\n const privateKeyUrl = podUrl?.value + 'profile/keys/privateKey.ttl'\n return privateKeyUrl\n}\n\nexport async function privateKeyExists (webId: string) {\n // find privateKey\n const privateKeyUrl = privKeyUrl(webId)\n return await keyExists(webId, privateKeyUrl, 'PrivateKey')\n}\n\ntype KeyType = 'PublicKey' | 'PrivateKey'\n\nasync function keyExists (webId, keyUrl, keyType: KeyType) {\n try {\n await store.fetcher.load(keyUrl)\n const key = store.any(store.sym(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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"}
1
+ {"version":3,"file":"cryptoKeyHelpers.js","names":["debug","_interopRequireWildcard","require","_signature","_solidLogic","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","pubKeyUrl","webId","url","URL","storage","store","each","sym","pod","length","find","node","origin","value","podUrl","Array","isArray","Error","publicKeyUrl","exports","publicKeyExists","_x","_publicKeyExists","apply","arguments","_asyncToGenerator2","_regenerator","mark","_callee","wrap","_callee$","_context","prev","next","keyExists","abrupt","sent","stop","privKeyUrl","privateKeyUrl","privateKeyExists","_x2","_privateKeyExists","_callee2","_callee2$","_context2","_x3","_x4","_x5","_keyExists","_callee3","keyUrl","keyType","_err$response","data","contentType","response","_callee3$","_context3","fetcher","load","any","CERT","t0","status","webOperation","t1","log","requested","undefined"],"sources":["../../src/utils/cryptoKeyHelpers.ts"],"sourcesContent":["import * as debug from '../debug'\nimport { CERT } from '../chat/signature'\nimport { store } from 'solid-logic'\n\n// find podRoot from space:storage for subdomain/suffix podServers\n/* export const podRoot = (webId: string) => {\n await store.fetcher.load(webId)\n const url = new URL(webId)\n // find storage in webId\n const storage = store.each(store.sym(webId), store.sym('http://www.w3.org/ns/pim/space#storage'))\n const pod = storage.length === 1 ? storage : storage.find(node => url.origin === new URL(node.value).origin)\n const podRoot = Array.isArray(pod) ? pod[0] : pod\n if (!podRoot?.value) throw Error('No space:storage in ' + webId)\n return podRoot.value\n} */\n\nexport const pubKeyUrl = (webId: string) => {\n const url = new URL(webId)\n // find storage in webId\n const storage = store.each(store.sym(webId), store.sym('http://www.w3.org/ns/pim/space#storage'))\n const pod = storage.length === 1 ? storage : storage.find(node => url.origin === new URL(node.value).origin)\n const podUrl = Array.isArray(pod) ? pod[0] : pod\n if (!podUrl?.value) throw Error('No space:storage in ' + webId)\n const publicKeyUrl = podUrl?.value + 'profile/keys/publicKey.ttl'\n return publicKeyUrl\n}\n\nexport async function publicKeyExists (webId: string) {\n // find publickey\n const publicKeyUrl = pubKeyUrl(webId)\n return await keyExists(webId, publicKeyUrl, 'PublicKey')\n}\n\nexport const privKeyUrl = (webId: string) => {\n const url = new URL(webId)\n // find storage in webId\n const storage = store.each(store.sym(webId), store.sym('http://www.w3.org/ns/pim/space#storage'))\n const pod = storage.length === 1 ? storage : storage.find(node => url.origin === new URL(node.value).origin)\n const podUrl = Array.isArray(pod) ? pod[0] : pod\n if (!podUrl?.value) throw Error('Expected space:storage in ' + webId)\n const privateKeyUrl = podUrl?.value + 'profile/keys/privateKey.ttl'\n return privateKeyUrl\n}\n\nexport async function privateKeyExists (webId: string) {\n // find privateKey\n const privateKeyUrl = privKeyUrl(webId)\n return await keyExists(webId, privateKeyUrl, 'PrivateKey')\n}\n\ntype KeyType = 'PublicKey' | 'PrivateKey'\n\nasync function keyExists (webId, keyUrl, keyType: KeyType) {\n try {\n await store.fetcher.load(keyUrl)\n const key = store.any(store.sym(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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"}
@@ -5,8 +5,8 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.versionInfo = void 0;
7
7
  var versionInfo = {
8
- buildTime: '2023-04-29T23:09:27Z',
9
- commit: 'e6d67dd8caf3c8261ced536258b78723fd07f0a8',
8
+ buildTime: '2023-04-30T22:04:09Z',
9
+ commit: 'eed9bea818c9a1a52b4631274b5251b239530355',
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-04-29T23:09:27Z',\n commit: 'e6d67dd8caf3c8261ced536258b78723fd07f0a8',\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-04-30T22:04:09Z',\n commit: 'eed9bea818c9a1a52b4631274b5251b239530355',\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-e6d67dd8",
3
+ "version": "2.4.27-eed9bea8",
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",