solid-logic 1.3.17-8a332867 → 1.3.17-a849582e

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.
Files changed (115) hide show
  1. package/jest.config.js +1 -1
  2. package/lib/acl/aclLogic.d.ts +12 -30
  3. package/lib/acl/aclLogic.d.ts.map +1 -1
  4. package/lib/acl/aclLogic.js +151 -116
  5. package/lib/acl/aclLogic.js.map +1 -1
  6. package/lib/authn/SolidAuthnLogic.d.ts.map +1 -1
  7. package/lib/authn/SolidAuthnLogic.js +2 -2
  8. package/lib/authn/SolidAuthnLogic.js.map +1 -1
  9. package/lib/chat/chatLogic.d.ts +16 -0
  10. package/lib/chat/chatLogic.d.ts.map +1 -0
  11. package/lib/chat/{ChatLogic.js → chatLogic.js} +82 -87
  12. package/lib/chat/chatLogic.js.map +1 -0
  13. package/lib/discovery/discoveryLogic.d.ts +6 -9
  14. package/lib/discovery/discoveryLogic.d.ts.map +1 -1
  15. package/lib/discovery/discoveryLogic.js +95 -89
  16. package/lib/discovery/discoveryLogic.js.map +1 -1
  17. package/lib/inbox/inboxLogic.d.ts +7 -0
  18. package/lib/inbox/inboxLogic.d.ts.map +1 -0
  19. package/lib/inbox/{InboxLogic.js → inboxLogic.js} +58 -64
  20. package/lib/inbox/inboxLogic.js.map +1 -0
  21. package/lib/index.d.ts +10 -13
  22. package/lib/index.d.ts.map +1 -1
  23. package/lib/index.js +76 -44
  24. package/lib/index.js.map +1 -1
  25. package/lib/logic/CustomError.d.ts +4 -0
  26. package/lib/logic/CustomError.d.ts.map +1 -1
  27. package/lib/logic/CustomError.js +17 -1
  28. package/lib/logic/CustomError.js.map +1 -1
  29. package/lib/logic/solidLogicSingleton.d.ts +35 -3
  30. package/lib/logic/solidLogicSingleton.d.ts.map +1 -1
  31. package/lib/logic/solidLogicSingleton.js +87 -8
  32. package/lib/logic/solidLogicSingleton.js.map +1 -1
  33. package/lib/profile/profileLogic.d.ts +13 -0
  34. package/lib/profile/profileLogic.d.ts.map +1 -0
  35. package/lib/profile/profileLogic.js +268 -0
  36. package/lib/profile/profileLogic.js.map +1 -0
  37. package/lib/typeIndex/typeIndexLogic.d.ts +31 -21
  38. package/lib/typeIndex/typeIndexLogic.d.ts.map +1 -1
  39. package/lib/typeIndex/typeIndexLogic.js +650 -295
  40. package/lib/typeIndex/typeIndexLogic.js.map +1 -1
  41. package/lib/types.d.ts +17 -0
  42. package/lib/types.d.ts.map +1 -1
  43. package/lib/util/containerLogic.d.ts +11 -0
  44. package/lib/util/containerLogic.d.ts.map +1 -0
  45. package/lib/{profile/ProfileLogic.js → util/containerLogic.js} +53 -44
  46. package/lib/util/containerLogic.js.map +1 -0
  47. package/lib/util/utilityLogic.d.ts +15 -0
  48. package/lib/util/utilityLogic.d.ts.map +1 -0
  49. package/lib/util/utilityLogic.js +272 -0
  50. package/lib/util/utilityLogic.js.map +1 -0
  51. package/lib/util/utils.d.ts +8 -0
  52. package/lib/util/utils.d.ts.map +1 -0
  53. package/lib/util/utils.js +48 -0
  54. package/lib/util/utils.js.map +1 -0
  55. package/package.json +3 -1
  56. package/src/acl/aclLogic.ts +135 -119
  57. package/src/authn/SolidAuthnLogic.ts +3 -2
  58. package/src/chat/chatLogic.ts +225 -0
  59. package/src/discovery/discoveryLogic.ts +42 -85
  60. package/src/inbox/inboxLogic.ts +57 -0
  61. package/src/index.ts +71 -30
  62. package/src/logic/CustomError.ts +5 -1
  63. package/src/logic/solidLogicSingleton.ts +160 -7
  64. package/src/profile/profileLogic.ts +134 -0
  65. package/src/typeIndex/typeIndexLogic.ts +417 -153
  66. package/src/types.ts +7 -3
  67. package/src/util/containerLogic.ts +54 -0
  68. package/src/util/ns.js +5 -0
  69. package/src/util/utilityLogic.ts +155 -0
  70. package/src/util/utils.ts +52 -0
  71. package/test/aclLogic.test.ts +13 -4
  72. package/test/chatLogic.test.ts +70 -71
  73. package/test/container.test.ts +56 -0
  74. package/test/discoveryLogic.test.ts +503 -531
  75. package/test/helpers/dataSetup.ts +134 -0
  76. package/test/helpers/setup.ts +1 -0
  77. package/test/inboxLogic.test.ts +39 -38
  78. package/test/logic.test.ts +11 -9
  79. package/test/profileLogic.test.ts +246 -0
  80. package/test/typeIndexLogic.test.ts +49 -22
  81. package/test/typeIndexLogicPart2.test.ts +485 -0
  82. package/test/utilityLogic.test.ts +172 -126
  83. package/test/utils.test.ts +32 -0
  84. package/lib/chat/ChatLogic.d.ts +0 -26
  85. package/lib/chat/ChatLogic.d.ts.map +0 -1
  86. package/lib/chat/ChatLogic.js.map +0 -1
  87. package/lib/chat/determineChatContainer.d.ts +0 -3
  88. package/lib/chat/determineChatContainer.d.ts.map +0 -1
  89. package/lib/chat/determineChatContainer.js +0 -12
  90. package/lib/chat/determineChatContainer.js.map +0 -1
  91. package/lib/inbox/InboxLogic.d.ts +0 -18
  92. package/lib/inbox/InboxLogic.d.ts.map +0 -1
  93. package/lib/inbox/InboxLogic.js.map +0 -1
  94. package/lib/logic/SolidLogic.d.ts +0 -48
  95. package/lib/logic/SolidLogic.d.ts.map +0 -1
  96. package/lib/logic/SolidLogic.js +0 -321
  97. package/lib/logic/SolidLogic.js.map +0 -1
  98. package/lib/profile/ProfileLogic.d.ts +0 -13
  99. package/lib/profile/ProfileLogic.d.ts.map +0 -1
  100. package/lib/profile/ProfileLogic.js.map +0 -1
  101. package/lib/util/UtilityLogic.d.ts +0 -33
  102. package/lib/util/UtilityLogic.d.ts.map +0 -1
  103. package/lib/util/UtilityLogic.js +0 -240
  104. package/lib/util/UtilityLogic.js.map +0 -1
  105. package/lib/util/uri.d.ts +0 -3
  106. package/lib/util/uri.d.ts.map +0 -1
  107. package/lib/util/uri.js +0 -9
  108. package/lib/util/uri.js.map +0 -1
  109. package/src/chat/ChatLogic.ts +0 -244
  110. package/src/chat/determineChatContainer.ts +0 -14
  111. package/src/inbox/InboxLogic.ts +0 -66
  112. package/src/logic/SolidLogic.ts +0 -262
  113. package/src/profile/ProfileLogic.ts +0 -44
  114. package/src/util/UtilityLogic.ts +0 -161
  115. package/src/util/uri.ts +0 -5
@@ -1,4 +1,27 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
2
25
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
26
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
27
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -35,30 +58,20 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
35
58
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
59
  }
37
60
  };
61
+ var __importDefault = (this && this.__importDefault) || function (mod) {
62
+ return (mod && mod.__esModule) ? mod : { "default": mod };
63
+ };
38
64
  Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.registerInstanceInTypeIndex = exports.getAppInstances = exports.getScopedAppInstances = exports.getScopedAppsFromIndex = exports.uniqueNodes = exports.loadAllTypeIndexes = exports.loadCommunityTypeIndexes = exports.loadTypeIndexesFor = exports.loadPreferences = exports.loadProfile = exports.followOrCreateLink = exports.suggestPrivateTypeIndex = exports.suggestPublicTypeIndex = exports.suggestPreferencesFile = exports.loadOrCreateIfNotExists = void 0;
65
+ exports.deleteTypeIndexRegistration = exports.registerInstanceInTypeIndex = exports.getAppInstances = exports.getScopedAppInstances = exports.getScopedAppsFromIndex = exports.uniqueNodes = exports.loadAllTypeIndexes = exports.loadCommunityTypeIndexes = exports.loadTypeIndexesFor = exports.loadPreferences = exports.loadProfile = exports.followOrCreateLink = exports.suggestPrivateTypeIndex = exports.suggestPublicTypeIndex = exports.suggestPreferencesFile = exports.loadOrCreateIfNotExists = void 0;
40
66
  var rdflib_1 = require("rdflib");
41
- // import * as debug from '../util/debug'
42
- // import { getContainerMembers } from '../util/UtilityLogic'
67
+ var $rdf = __importStar(require("rdflib"));
68
+ var utils_1 = require("../util/utils");
69
+ var solid_namespace_1 = __importDefault(require("solid-namespace"));
43
70
  var solidLogicSingleton_1 = require("../logic/solidLogicSingleton");
44
- var uri_1 = require("../util/uri");
45
- var authn = solidLogicSingleton_1.solidLogicSingleton.authn;
46
- var currentUser = authn.currentUser;
47
- var ns = {
48
- dct: (0, rdflib_1.Namespace)('http://purl.org/dc/terms/'),
49
- ldp: (0, rdflib_1.Namespace)('http://www.w3.org/ns/ldp#'),
50
- meeting: (0, rdflib_1.Namespace)('http://www.w3.org/ns/pim/meeting#'),
51
- rdf: (0, rdflib_1.Namespace)('http://www.w3.org/1999/02/22-rdf-syntax-ns#'),
52
- schema: (0, rdflib_1.Namespace)('http://schema.org/'),
53
- solid: (0, rdflib_1.Namespace)('http://www.w3.org/ns/solid/terms#'),
54
- space: (0, rdflib_1.Namespace)('http://www.w3.org/ns/pim/space#'),
55
- stat: (0, rdflib_1.Namespace)('http://www.w3.org/ns/posix/stat#'),
56
- vcard: (0, rdflib_1.Namespace)('http://www.w3.org/2006/vcard/ns#'),
57
- wf: (0, rdflib_1.Namespace)('http://www.w3.org/2005/01/wf/flow#'),
58
- xsd: (0, rdflib_1.Namespace)('http://www.w3.org/2001/XMLSchema#')
59
- };
60
- /** Create a resource if it really does not exist
61
- * Be absolutely sure something does not exist before creating a new empty file
71
+ var ns = (0, solid_namespace_1.default)($rdf);
72
+ /**
73
+ * Create a resource if it really does not exist
74
+ * Be absolutely sure something does not exist before creating a new empty file
62
75
  * as otherwise existing could be deleted.
63
76
  * @param doc {NamedNode} - The resource
64
77
  */
@@ -76,27 +89,21 @@ function loadOrCreateIfNotExists(store, doc) {
76
89
  case 2:
77
90
  err_1 = _a.sent();
78
91
  if (err_1.response.status === 404) {
79
- // console.log('createIfNotExists doc does NOT exist, will create: ' + doc)
80
92
  try {
81
93
  store.fetcher.webOperation('PUT', doc, { data: '', contentType: 'text/turtle' });
82
94
  }
83
95
  catch (err) {
84
96
  msg = 'createIfNotExists: PUT FAILED: ' + doc + ': ' + err;
85
- // console.log(msg)
86
97
  throw new Error(msg);
87
98
  }
88
99
  delete store.fetcher.requested[doc.uri]; // delete cached 404 error
89
- // console.log('createIfNotExists doc created ok ' + doc)
90
100
  }
91
101
  else {
92
102
  msg = 'createIfNotExists doc load error NOT 404: ' + doc + ': ' + err_1;
93
- // console.log(msg)
94
103
  throw new Error(msg); // @@ add nested errors
95
104
  }
96
105
  return [3 /*break*/, 3];
97
- case 3:
98
- // console.log('createIfNotExists doc exists, all good ' + doc)
99
- return [2 /*return*/, response];
106
+ case 3: return [2 /*return*/, response];
100
107
  }
101
108
  });
102
109
  });
@@ -123,7 +130,7 @@ function suggestPrivateTypeIndex(preferencesFile) {
123
130
  exports.suggestPrivateTypeIndex = suggestPrivateTypeIndex;
124
131
  /* Follow link from this doc to another thing, or else make a new link
125
132
  **
126
- ** return: null no ld one and failed to make a new one
133
+ ** return: null no ld one and failed to make a new one
127
134
  */
128
135
  function followOrCreateLink(store, subject, predicate, object, doc) {
129
136
  return __awaiter(this, void 0, void 0, function () {
@@ -134,12 +141,9 @@ function followOrCreateLink(store, subject, predicate, object, doc) {
134
141
  case 1:
135
142
  _a.sent();
136
143
  result = store.any(subject, predicate, null, doc);
137
- // console.log('@@ followOrCreateLink result ', result)
138
144
  if (result)
139
145
  return [2 /*return*/, result];
140
146
  if (!store.updater.editable(doc)) {
141
- // console.log(`followOrCreateLink: Can't modify ${doc} so can't make new link to ${object}.`)
142
- // console.log('followOrCreateLink @@ connectedStatements', store.connectedStatements(subject))
143
147
  return [2 /*return*/, null];
144
148
  }
145
149
  _a.label = 2;
@@ -165,9 +169,7 @@ function followOrCreateLink(store, subject, predicate, object, doc) {
165
169
  err_3 = _a.sent();
166
170
  console.warn("followOrCreateLink: Error loading or saving new linked document: ".concat(object, ": ").concat(err_3));
167
171
  return [3 /*break*/, 8];
168
- case 8:
169
- // console.log(`followOrCreateLink: Success loading or saving new linked document: ${object}.`)
170
- return [2 /*return*/, object];
172
+ case 8: return [2 /*return*/, object];
171
173
  }
172
174
  });
173
175
  });
@@ -175,26 +177,24 @@ function followOrCreateLink(store, subject, predicate, object, doc) {
175
177
  exports.followOrCreateLink = followOrCreateLink;
176
178
  function loadProfile(store, user) {
177
179
  return __awaiter(this, void 0, void 0, function () {
180
+ var err_4;
178
181
  return __generator(this, function (_a) {
179
182
  switch (_a.label) {
180
183
  case 0:
181
- // console.log(' @@ loadProfile: user', user)
182
184
  if (!user) {
183
185
  throw new Error("loadProfile: no user given.");
184
186
  }
185
- // try {
186
- return [4 /*yield*/, store.fetcher.load(user.doc())
187
- // } catch (err) {
188
- // throw new Error(`Unable to load profile of user ${user}: ${err}`)
189
- //}
190
- ];
187
+ _a.label = 1;
191
188
  case 1:
192
- // try {
189
+ _a.trys.push([1, 3, , 4]);
190
+ return [4 /*yield*/, store.fetcher.load(user.doc())];
191
+ case 2:
193
192
  _a.sent();
194
- // } catch (err) {
195
- // throw new Error(`Unable to load profile of user ${user}: ${err}`)
196
- //}
197
- return [2 /*return*/, user.doc()];
193
+ return [3 /*break*/, 4];
194
+ case 3:
195
+ err_4 = _a.sent();
196
+ throw new Error("Unable to load profile of user ".concat(user, ": ").concat(err_4));
197
+ case 4: return [2 /*return*/, user.doc()];
198
198
  }
199
199
  });
200
200
  });
@@ -202,28 +202,19 @@ function loadProfile(store, user) {
202
202
  exports.loadProfile = loadProfile;
203
203
  function loadPreferences(store, user) {
204
204
  return __awaiter(this, void 0, void 0, function () {
205
- var possiblePreferencesFile, preferencesFile, message, err_4;
205
+ var possiblePreferencesFile, preferencesFile, message, err_5;
206
206
  return __generator(this, function (_a) {
207
207
  switch (_a.label) {
208
- case 0:
209
- // console.log('loadPreferences @@ user', user)
210
- return [4 /*yield*/, loadProfile(store, user)];
208
+ case 0: return [4 /*yield*/, loadProfile(store, user)];
211
209
  case 1:
212
- // console.log('loadPreferences @@ user', user)
213
210
  _a.sent();
214
211
  possiblePreferencesFile = suggestPreferencesFile(user);
215
- return [4 /*yield*/, followOrCreateLink(store, user, ns.space('preferencesFile'), possiblePreferencesFile, user.doc())
216
- // const preferencesFile = store.any(user, ns.space('preferencesFile'), undefined, profile)
217
- // console.log('loadPreferences @@ pref file', preferencesFile)
218
- ];
212
+ return [4 /*yield*/, followOrCreateLink(store, user, ns.space('preferencesFile'), possiblePreferencesFile, user.doc())];
219
213
  case 2:
220
214
  preferencesFile = _a.sent();
221
- // const preferencesFile = store.any(user, ns.space('preferencesFile'), undefined, profile)
222
- // console.log('loadPreferences @@ pref file', preferencesFile)
223
215
  if (!preferencesFile) {
224
216
  message = "User ".concat(user, " has no pointer in profile to preferences file.");
225
217
  console.warn(message);
226
- // throw new Error()
227
218
  return [2 /*return*/, undefined];
228
219
  }
229
220
  _a.label = 3;
@@ -234,10 +225,8 @@ function loadPreferences(store, user) {
234
225
  _a.sent();
235
226
  return [3 /*break*/, 6];
236
227
  case 5:
237
- err_4 = _a.sent();
238
- return [2 /*return*/, undefined
239
- // throw new Error(`Unable to load preferences file ${preferencesFile} of user <${user}>: ${err}`)
240
- ];
228
+ err_5 = _a.sent();
229
+ return [2 /*return*/, undefined];
241
230
  case 6: return [2 /*return*/, preferencesFile];
242
231
  }
243
232
  });
@@ -246,21 +235,17 @@ function loadPreferences(store, user) {
246
235
  exports.loadPreferences = loadPreferences;
247
236
  function loadTypeIndexesFor(store, user) {
248
237
  return __awaiter(this, void 0, void 0, function () {
249
- var profile, suggestion, publicTypeIndex, publicScopes, preferencesFile, err_5, privateScopes, suggestedPrivateTypeIndex, privateTypeIndex, _a, scopes, files, err_6;
238
+ var profile, suggestion, publicTypeIndex, publicScopes, preferencesFile, err_6, privateScopes, suggestedPrivateTypeIndex, privateTypeIndex, _a, scopes, files, err_7;
250
239
  return __generator(this, function (_b) {
251
240
  switch (_b.label) {
252
241
  case 0:
253
- // console.log('@@ loadTypeIndexesFor user', user)
254
242
  if (!user)
255
243
  throw new Error("loadTypeIndexesFor: No user given");
256
244
  return [4 /*yield*/, loadProfile(store, user)];
257
245
  case 1:
258
246
  profile = _b.sent();
259
247
  suggestion = suggestPublicTypeIndex(user);
260
- return [4 /*yield*/, followOrCreateLink(store, user, ns.solid('publicTypeIndex'), suggestion, profile)
261
- // const publicTypeIndex = store.any(user, ns.solid('publicTypeIndex'), undefined, profile)
262
- // console.log('@@ loadTypeIndexesFor publicTypeIndex', publicTypeIndex)
263
- ];
248
+ return [4 /*yield*/, followOrCreateLink(store, user, ns.solid('publicTypeIndex'), suggestion, profile)];
264
249
  case 2:
265
250
  publicTypeIndex = _b.sent();
266
251
  publicScopes = publicTypeIndex ? [{ label: 'public', index: publicTypeIndex, agent: user }] : [];
@@ -272,7 +257,7 @@ function loadTypeIndexesFor(store, user) {
272
257
  preferencesFile = _b.sent();
273
258
  return [3 /*break*/, 6];
274
259
  case 5:
275
- err_5 = _b.sent();
260
+ err_6 = _b.sent();
276
261
  preferencesFile = null;
277
262
  return [3 /*break*/, 6];
278
263
  case 6:
@@ -304,8 +289,8 @@ function loadTypeIndexesFor(store, user) {
304
289
  _b.sent();
305
290
  return [3 /*break*/, 14];
306
291
  case 13:
307
- err_6 = _b.sent();
308
- console.warn('Problems loading type index: ', err_6);
292
+ err_7 = _b.sent();
293
+ console.warn('Problems loading type index: ', err_7);
309
294
  return [3 /*break*/, 14];
310
295
  case 14: return [2 /*return*/, scopes];
311
296
  }
@@ -322,7 +307,7 @@ function loadCommunityTypeIndexes(store, user) {
322
307
  case 1:
323
308
  preferencesFile = _c.sent();
324
309
  if (!preferencesFile) return [3 /*break*/, 6];
325
- communities = store.each(user, ns.solid('community'), undefined, preferencesFile);
310
+ communities = store.each(user, ns.solid('community'), undefined, preferencesFile).concat(store.each(user, ns.solid('community'), undefined, user.doc()));
326
311
  result = [];
327
312
  _i = 0, communities_1 = communities;
328
313
  _c.label = 2;
@@ -337,10 +322,7 @@ function loadCommunityTypeIndexes(store, user) {
337
322
  case 4:
338
323
  _i++;
339
324
  return [3 /*break*/, 2];
340
- case 5:
341
- // const communityTypeIndexesPromises = communities.map(async community => await loadTypeIndexesFor(store, community as NamedNode))
342
- // const result1 = Promise.all(communityTypeIndexesPromises)
343
- return [2 /*return*/, result];
325
+ case 5: return [2 /*return*/, result];
344
326
  case 6: return [2 /*return*/, []]; // No communities
345
327
  }
346
328
  });
@@ -373,16 +355,23 @@ function uniqueNodes(arr) {
373
355
  exports.uniqueNodes = uniqueNodes;
374
356
  function getScopedAppsFromIndex(store, scope, theClass) {
375
357
  return __awaiter(this, void 0, void 0, function () {
376
- var index, registrations, directInstances, instances, instanceContainers, containers, i, cont, contents;
358
+ var index, registrations, relevant, directInstances, instances, instanceContainers, containers, i, cont, contents;
377
359
  return __generator(this, function (_a) {
378
360
  switch (_a.label) {
379
361
  case 0:
380
362
  index = scope.index;
381
- registrations = store.each(undefined, ns.solid('forClass'), theClass, index);
382
- directInstances = registrations.map(function (reg) { return store.each(reg, ns.solid('instance'), null, index); }).flat();
363
+ registrations = store.statementsMatching(null, ns.solid('instance'), null, index)
364
+ .concat(store.statementsMatching(null, ns.solid('instanceContainer'), null, index))
365
+ .map(function (st) { return st.subject; });
366
+ relevant = theClass ? registrations.filter(function (reg) { return store.any(reg, ns.solid('forClass'), null, index).sameTerm(theClass); })
367
+ : registrations;
368
+ directInstances = relevant.map(function (reg) { return store.each(reg, ns.solid('instance'), null, index); }).flat();
383
369
  instances = uniqueNodes(directInstances);
384
- instanceContainers = registrations.map(function (reg) { return store.each(reg, ns.solid('instanceContainer'), null, index); }).flat();
370
+ instanceContainers = relevant.map(function (reg) { return store.each(reg, ns.solid('instanceContainer'), null, index); }).flat();
385
371
  containers = uniqueNodes(instanceContainers);
372
+ if (containers.length > 0) {
373
+ console.log('@@ getScopedAppsFromIndex containers ', containers);
374
+ }
386
375
  i = 0;
387
376
  _a.label = 1;
388
377
  case 1:
@@ -392,7 +381,6 @@ function getScopedAppsFromIndex(store, scope, theClass) {
392
381
  case 2:
393
382
  _a.sent();
394
383
  contents = store.each(cont, ns.ldp('contains'), null, cont);
395
- // if (contents.length) console.log('getScopedAppsFromIndex @@ instanceContainer contents:', contents)
396
384
  instances = instances.concat(contents);
397
385
  _a.label = 3;
398
386
  case 3:
@@ -441,7 +429,7 @@ function getAppInstances(store, klass) {
441
429
  return __generator(this, function (_a) {
442
430
  switch (_a.label) {
443
431
  case 0:
444
- user = currentUser();
432
+ user = solidLogicSingleton_1.authn.currentUser();
445
433
  if (!user)
446
434
  throw new Error('getAppInstances: Must be logged in to find apps.');
447
435
  return [4 /*yield*/, getScopedAppInstances(store, klass, user)];
@@ -453,18 +441,18 @@ function getAppInstances(store, klass) {
453
441
  });
454
442
  }
455
443
  exports.getAppInstances = getAppInstances;
456
- /**
444
+ /*
457
445
  * Register a new app in a type index
458
446
  * used in chat in bookmark.js (solid-ui)
459
447
  * Returns the registration object if successful else null
460
448
  */
461
449
  function registerInstanceInTypeIndex(store, instance, index, theClass) {
462
450
  return __awaiter(this, void 0, void 0, function () {
463
- var registration, ins, err_7, msg;
451
+ var registration, ins, err_8, msg;
464
452
  return __generator(this, function (_a) {
465
453
  switch (_a.label) {
466
454
  case 0:
467
- registration = (0, uri_1.newThing)(index);
455
+ registration = (0, utils_1.newThing)(index);
468
456
  ins = [
469
457
  // See https://github.com/solid/solid/blob/main/proposals/data-discovery.md
470
458
  (0, rdflib_1.st)(registration, ns.rdf('type'), ns.solid('TypeRegistration'), index),
@@ -474,14 +462,13 @@ function registerInstanceInTypeIndex(store, instance, index, theClass) {
474
462
  _a.label = 1;
475
463
  case 1:
476
464
  _a.trys.push([1, 3, , 4]);
477
- console.log('patching index', ins);
478
465
  return [4 /*yield*/, store.updater.update([], ins)];
479
466
  case 2:
480
467
  _a.sent();
481
468
  return [3 /*break*/, 4];
482
469
  case 3:
483
- err_7 = _a.sent();
484
- msg = "Unable to register ".concat(instance, " in index ").concat(index, ": ").concat(err_7);
470
+ err_8 = _a.sent();
471
+ msg = "Unable to register ".concat(instance, " in index ").concat(index, ": ").concat(err_8);
485
472
  console.warn(msg);
486
473
  return [2 /*return*/, null];
487
474
  case 4: return [2 /*return*/, registration];
@@ -490,5 +477,24 @@ function registerInstanceInTypeIndex(store, instance, index, theClass) {
490
477
  });
491
478
  }
492
479
  exports.registerInstanceInTypeIndex = registerInstanceInTypeIndex;
480
+ function deleteTypeIndexRegistration(store, item) {
481
+ return __awaiter(this, void 0, void 0, function () {
482
+ var reg, statements;
483
+ return __generator(this, function (_a) {
484
+ switch (_a.label) {
485
+ case 0:
486
+ reg = store.the(null, ns.solid('instance'), item.instance, item.scope.index);
487
+ if (!reg)
488
+ throw new Error("deleteTypeIndexRegistration: No registration found for ".concat(item.instance));
489
+ statements = store.statementsMatching(reg, null, null, item.scope.index);
490
+ return [4 /*yield*/, store.updater.update(statements, [])];
491
+ case 1:
492
+ _a.sent();
493
+ return [2 /*return*/];
494
+ }
495
+ });
496
+ });
497
+ }
498
+ exports.deleteTypeIndexRegistration = deleteTypeIndexRegistration;
493
499
  // ENDS
494
500
  //# sourceMappingURL=discoveryLogic.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"discoveryLogic.js","sourceRoot":"","sources":["../../src/discovery/discoveryLogic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"discoveryLogic.js","sourceRoot":"","sources":["../../src/discovery/discoveryLogic.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { NamedNode } from "rdflib";
2
+ export declare function createInboxLogic(store: any, profileLogic: any, utilityLogic: any, containerLogic: any, aclLogic: any): {
3
+ createInboxFor: (peerWebId: string, nick: string) => Promise<string>;
4
+ getNewMessages: (user?: NamedNode | undefined) => Promise<string[]>;
5
+ markAsRead: (url: string, date: Date) => Promise<void>;
6
+ };
7
+ //# sourceMappingURL=inboxLogic.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inboxLogic.d.ts","sourceRoot":"","sources":["../../src/inbox/inboxLogic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAGnC,wBAAgB,gBAAgB,CAAC,KAAK,KAAA,EAAE,YAAY,KAAA,EAAE,YAAY,KAAA,EAAE,cAAc,KAAA,EAAE,QAAQ,KAAA;gCAE/C,MAAM,QAAQ,MAAM;sDAiB1D,QAAQ,MAAM,EAAE,CAAC;sBASS,MAAM,QAAQ,IAAI;EAyBlD"}
@@ -36,59 +36,28 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
36
36
  }
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.InboxLogic = void 0;
40
- /**
41
- * Inbox-related logic
42
- */
43
- var InboxLogic = /** @class */ (function () {
44
- function InboxLogic(store, ns, profile, util) {
45
- this.store = store;
46
- this.ns = ns;
47
- this.profile = profile;
48
- this.util = util;
49
- }
50
- InboxLogic.prototype.getNewMessages = function (user) {
51
- return __awaiter(this, void 0, void 0, function () {
52
- var inbox, urls;
53
- var _this = this;
54
- return __generator(this, function (_a) {
55
- switch (_a.label) {
56
- case 0:
57
- if (!!user) return [3 /*break*/, 2];
58
- return [4 /*yield*/, this.profile.loadMe()];
59
- case 1:
60
- user = _a.sent();
61
- _a.label = 2;
62
- case 2: return [4 /*yield*/, this.profile.getMainInbox(user)];
63
- case 3:
64
- inbox = _a.sent();
65
- return [4 /*yield*/, this.util.getContainerMembers(inbox.value)];
66
- case 4:
67
- urls = _a.sent();
68
- return [2 /*return*/, urls.filter(function (url) { return !_this.util.isContainer(url); })];
69
- }
70
- });
71
- });
72
- };
73
- InboxLogic.prototype.createInboxFor = function (peerWebId, nick) {
39
+ exports.createInboxLogic = void 0;
40
+ var utils_1 = require("../util/utils");
41
+ function createInboxLogic(store, profileLogic, utilityLogic, containerLogic, aclLogic) {
42
+ function createInboxFor(peerWebId, nick) {
74
43
  return __awaiter(this, void 0, void 0, function () {
75
44
  var myWebId, podRoot, ourInbox, aclDocUrl;
76
45
  return __generator(this, function (_a) {
77
46
  switch (_a.label) {
78
- case 0: return [4 /*yield*/, this.profile.loadMe()];
47
+ case 0: return [4 /*yield*/, profileLogic.loadMe()];
79
48
  case 1:
80
- myWebId = (_a.sent());
81
- return [4 /*yield*/, this.profile.getPodRoot(myWebId)];
49
+ myWebId = _a.sent();
50
+ return [4 /*yield*/, profileLogic.getPodRoot(myWebId)];
82
51
  case 2:
83
52
  podRoot = _a.sent();
84
53
  ourInbox = "".concat(podRoot.value, "p2p-inboxes/").concat(encodeURIComponent(nick), "/");
85
- return [4 /*yield*/, this.util.createContainer(ourInbox)];
54
+ return [4 /*yield*/, containerLogic.createContainer(ourInbox)];
86
55
  case 3:
87
56
  _a.sent();
88
- return [4 /*yield*/, this.util.findAclDocUrl(ourInbox)];
57
+ return [4 /*yield*/, aclLogic.findAclDocUrl(ourInbox)];
89
58
  case 4:
90
59
  aclDocUrl = _a.sent();
91
- return [4 /*yield*/, this.util.setSinglePeerAccess({
60
+ return [4 /*yield*/, utilityLogic.setSinglePeerAccess({
92
61
  ownerWebId: myWebId.value,
93
62
  peerWebId: peerWebId,
94
63
  accessToModes: 'acl:Append',
@@ -100,47 +69,72 @@ var InboxLogic = /** @class */ (function () {
100
69
  }
101
70
  });
102
71
  });
103
- };
104
- InboxLogic.prototype.markAsRead = function (url, date) {
105
- var _a;
72
+ }
73
+ function getNewMessages(user) {
74
+ return __awaiter(this, void 0, void 0, function () {
75
+ var inbox, urls;
76
+ return __generator(this, function (_a) {
77
+ switch (_a.label) {
78
+ case 0:
79
+ if (!!user) return [3 /*break*/, 2];
80
+ return [4 /*yield*/, profileLogic.loadMe()];
81
+ case 1:
82
+ user = _a.sent();
83
+ _a.label = 2;
84
+ case 2: return [4 /*yield*/, profileLogic.getMainInbox(user)];
85
+ case 3:
86
+ inbox = _a.sent();
87
+ return [4 /*yield*/, containerLogic.getContainerMembers(inbox.value)];
88
+ case 4:
89
+ urls = _a.sent();
90
+ return [2 /*return*/, urls.filter(function (url) { return !containerLogic.isContainer(url); })];
91
+ }
92
+ });
93
+ });
94
+ }
95
+ function markAsRead(url, date) {
106
96
  return __awaiter(this, void 0, void 0, function () {
107
97
  var downloaded, archiveUrl, options, uploaded;
108
- var _b;
109
- return __generator(this, function (_c) {
110
- switch (_c.label) {
111
- case 0: return [4 /*yield*/, this.util.underlyingFetch.fetch(url)];
98
+ var _a;
99
+ return __generator(this, function (_b) {
100
+ switch (_b.label) {
101
+ case 0: return [4 /*yield*/, store.fetcher._fetch(url)];
112
102
  case 1:
113
- downloaded = _c.sent();
103
+ downloaded = _b.sent();
114
104
  if (downloaded.status !== 200) {
115
105
  throw new Error("Not OK! ".concat(url));
116
106
  }
117
- archiveUrl = this.util.getArchiveUrl(url, date);
118
- _b = {
107
+ archiveUrl = (0, utils_1.getArchiveUrl)(url, date);
108
+ _a = {
119
109
  method: 'PUT'
120
110
  };
121
111
  return [4 /*yield*/, downloaded.text()];
122
112
  case 2:
123
- options = (_b.body = _c.sent(),
124
- _b.headers = [
113
+ options = (_a.body = _b.sent(),
114
+ _a.headers = [
125
115
  ['Content-Type', downloaded.headers.get('Content-Type') || 'application/octet-stream']
126
116
  ],
127
- _b);
128
- return [4 /*yield*/, this.util.underlyingFetch.fetch(archiveUrl, options)];
117
+ _a);
118
+ return [4 /*yield*/, store.fetcher._fetch(archiveUrl, options)];
129
119
  case 3:
130
- uploaded = _c.sent();
120
+ uploaded = _b.sent();
131
121
  if (!(uploaded.status.toString()[0] === '2')) return [3 /*break*/, 5];
132
- return [4 /*yield*/, ((_a = this.store.fetcher) === null || _a === void 0 ? void 0 : _a._fetch(url, {
122
+ return [4 /*yield*/, store.fetcher._fetch(url, {
133
123
  method: 'DELETE'
134
- }))];
124
+ })];
135
125
  case 4:
136
- _c.sent();
137
- _c.label = 5;
126
+ _b.sent();
127
+ _b.label = 5;
138
128
  case 5: return [2 /*return*/];
139
129
  }
140
130
  });
141
131
  });
132
+ }
133
+ return {
134
+ createInboxFor: createInboxFor,
135
+ getNewMessages: getNewMessages,
136
+ markAsRead: markAsRead
142
137
  };
143
- return InboxLogic;
144
- }());
145
- exports.InboxLogic = InboxLogic;
146
- //# sourceMappingURL=InboxLogic.js.map
138
+ }
139
+ exports.createInboxLogic = createInboxLogic;
140
+ //# sourceMappingURL=inboxLogic.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inboxLogic.js","sourceRoot":"","sources":["../../src/inbox/inboxLogic.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,uCAA8C;AAE9C,SAAgB,gBAAgB,CAAC,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,QAAQ;IAExF,SAAe,cAAc,CAAC,SAAiB,EAAE,IAAY;;;;;4BAChC,qBAAM,YAAY,CAAC,MAAM,EAAE,EAAA;;wBAAhD,OAAO,GAAc,SAA2B;wBAC3B,qBAAM,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,EAAA;;wBAA3D,OAAO,GAAc,SAAsC;wBAC3D,QAAQ,GAAG,UAAG,OAAO,CAAC,KAAK,yBAAe,kBAAkB,CAAC,IAAI,CAAC,MAAG,CAAC;wBAC5E,qBAAM,cAAc,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAA;;wBAA9C,SAA8C,CAAC;wBAC7B,qBAAM,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAA;;wBAAlD,SAAS,GAAG,SAAsC;wBACxD,qBAAM,YAAY,CAAC,mBAAmB,CAAC;gCACrC,UAAU,EAAE,OAAO,CAAC,KAAK;gCACzB,SAAS,WAAA;gCACT,aAAa,EAAE,YAAY;gCAC3B,MAAM,EAAE,QAAQ;6BACjB,CAAC,EAAA;;wBALF,SAKE,CAAC;wBACH,sBAAO,QAAQ,EAAC;;;;KACnB;IAED,SAAe,cAAc,CACzB,IAAgB;;;;;;6BAEZ,CAAC,IAAI,EAAL,wBAAK;wBACA,qBAAM,YAAY,CAAC,MAAM,EAAE,EAAA;;wBAAlC,IAAI,GAAG,SAA2B,CAAC;;4BAEvB,qBAAM,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,EAAA;;wBAA7C,KAAK,GAAG,SAAqC;wBACtC,qBAAM,cAAc,CAAC,mBAAmB,CAAC,KAAK,CAAC,KAAK,CAAC,EAAA;;wBAA5D,IAAI,GAAG,SAAqD;wBAClE,sBAAO,IAAI,CAAC,MAAM,CAAC,UAAA,GAAG,IAAI,OAAA,CAAC,cAAc,CAAC,WAAW,CAAC,GAAG,CAAC,EAAhC,CAAgC,CAAC,EAAC;;;;KAC/D;IAED,SAAe,UAAU,CAAC,GAAW,EAAE,IAAU;;;;;;4BAC5B,qBAAM,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,EAAA;;wBAA5C,UAAU,GAAG,SAA+B;wBAClD,IAAI,UAAU,CAAC,MAAM,KAAK,GAAG,EAAE;4BAC7B,MAAM,IAAI,KAAK,CAAC,kBAAW,GAAG,CAAE,CAAC,CAAC;yBACnC;wBACK,UAAU,GAAG,IAAA,qBAAa,EAAC,GAAG,EAAE,IAAI,CAAC,CAAC;;4BAE1C,MAAM,EAAE,KAAK;;wBACP,qBAAM,UAAU,CAAC,IAAI,EAAE,EAAA;;wBAFzB,OAAO,IAEX,OAAI,GAAE,SAAuB;4BAC7B,UAAO,GAAE;gCACP,CAAC,cAAc,EAAE,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,0BAA0B,CAAC;6BACvF;+BACF;wBACgB,qBAAM,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,OAAO,CAAC,EAAA;;wBAA1D,QAAQ,GAAG,SAA+C;6BAC5D,CAAA,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAA,EAArC,wBAAqC;wBACvC,qBAAM,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE;gCAC9B,MAAM,EAAE,QAAQ;6BACjB,CAAC,EAAA;;wBAFF,SAEE,CAAC;;;;;;KAEN;IACD,OAAO;QACL,cAAc,gBAAA;QACd,cAAc,gBAAA;QACd,UAAU,YAAA;KACX,CAAA;AACH,CAAC;AArDD,4CAqDC"}