solid-logic 1.3.16-a52e4345 → 1.3.17-1274f5aa

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.
package/lib/index.d.ts CHANGED
@@ -5,7 +5,7 @@ declare const chat: import("./chat/ChatLogic").ChatLogic;
5
5
  declare const profile: import("./profile/ProfileLogic").ProfileLogic;
6
6
  export { setACLUserPublic, genACLText } from './acl/aclLogic';
7
7
  export { ensureTypeIndexes, loadTypeIndexes, registerInTypeIndex, loadIndex } from './typeIndex/typeIndexLogic';
8
- export { loadProfile, loadPreferences, loadTypeIndexesFor, loadCommunityTypeIndexes, loadAllTypeIndexes } from './discovery/discoveryLogic';
8
+ export { deleteTypeIndexRegistration, followOrCreateLink, getAppInstances, getScopedAppInstances, getScopedAppsFromIndex, loadAllTypeIndexes, loadCommunityTypeIndexes, loadOrCreateIfNotExists, loadPreferences, loadProfile, loadTypeIndexesFor, registerInstanceInTypeIndex, suggestPreferencesFile, suggestPrivateTypeIndex, suggestPublicTypeIndex, uniqueNodes } from './discovery/discoveryLogic';
9
9
  export { SolidLogic } from './logic/SolidLogic';
10
10
  export { offlineTestID, appContext } from './authn/authUtil';
11
11
  export { ACL_LINK } from './util/UtilityLogic';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,QAAA,MAAM,KAAK,8BAA4B,CAAA;AACvC,QAAA,MAAM,WAAW,sDAAwC,CAAA;AACzD,QAAA,MAAM,KAAK,4BAA4B,CAAA;AAEvC,QAAA,MAAM,IAAI,sCAA2B,CAAA;AACrC,QAAA,MAAM,OAAO,+CAA8B,CAAA;AAE3C,OAAO,EACL,gBAAgB,EAChB,UAAU,EACX,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACnB,SAAS,EACV,MAAM,4BAA4B,CAAA;AAEnC,OAAO,EACL,WAAW,EACX,eAAe,EACf,kBAAkB,EAClB,wBAAwB,EACxB,kBAAkB,EACnB,MAAM,4BAA4B,CAAA;AAEnC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAE3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACjE,OAAO,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AACvI,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,QAAA,MAAM,KAAK,8BAA4B,CAAA;AACvC,QAAA,MAAM,WAAW,sDAAwC,CAAA;AACzD,QAAA,MAAM,KAAK,4BAA4B,CAAA;AAEvC,QAAA,MAAM,IAAI,sCAA2B,CAAA;AACrC,QAAA,MAAM,OAAO,+CAA8B,CAAA;AAE3C,OAAO,EACL,gBAAgB,EAChB,UAAU,EACX,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACnB,SAAS,EACV,MAAM,4BAA4B,CAAA;AAInC,OAAO,EACL,2BAA2B,EAC3B,kBAAkB,EAClB,eAAe,EACf,qBAAqB,EACrB,sBAAsB,EACtB,kBAAkB,EAClB,wBAAwB,EACxB,uBAAuB,EACvB,eAAe,EACf,WAAW,EACX,kBAAkB,EAClB,2BAA2B,EAC3B,sBAAsB,EACtB,uBAAuB,EACvB,sBAAsB,EACtB,WAAW,EACZ,MAAM,4BAA4B,CAAA;AAEnC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAE3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACjE,OAAO,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AACvI,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAA"}
package/lib/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.profile = exports.chat = exports.store = exports.authSession = exports.authn = exports.FetchError = exports.NotFoundError = exports.SameOriginForbiddenError = exports.CrossOriginForbiddenError = exports.UnauthorizedError = exports.solidLogicSingleton = exports.getSuggestedIssuers = exports.ACL_LINK = exports.appContext = exports.offlineTestID = exports.SolidLogic = exports.loadAllTypeIndexes = exports.loadCommunityTypeIndexes = exports.loadTypeIndexesFor = exports.loadPreferences = exports.loadProfile = exports.loadIndex = exports.registerInTypeIndex = exports.loadTypeIndexes = exports.ensureTypeIndexes = exports.genACLText = exports.setACLUserPublic = void 0;
3
+ exports.profile = exports.chat = exports.store = exports.authSession = exports.authn = exports.FetchError = exports.NotFoundError = exports.SameOriginForbiddenError = exports.CrossOriginForbiddenError = exports.UnauthorizedError = exports.solidLogicSingleton = exports.getSuggestedIssuers = exports.ACL_LINK = exports.appContext = exports.offlineTestID = exports.SolidLogic = exports.uniqueNodes = exports.suggestPublicTypeIndex = exports.suggestPrivateTypeIndex = exports.suggestPreferencesFile = exports.registerInstanceInTypeIndex = exports.loadTypeIndexesFor = exports.loadProfile = exports.loadPreferences = exports.loadOrCreateIfNotExists = exports.loadCommunityTypeIndexes = exports.loadAllTypeIndexes = exports.getScopedAppsFromIndex = exports.getScopedAppInstances = exports.getAppInstances = exports.followOrCreateLink = exports.deleteTypeIndexRegistration = exports.loadIndex = exports.registerInTypeIndex = exports.loadTypeIndexes = exports.ensureTypeIndexes = exports.genACLText = exports.setACLUserPublic = void 0;
4
4
  // Make these variables directly accessible as it is what you need most of the time
5
5
  // This also makes these variable globaly accesible in mashlib
6
6
  var solidLogicSingleton_1 = require("./logic/solidLogicSingleton");
@@ -22,12 +22,25 @@ Object.defineProperty(exports, "ensureTypeIndexes", { enumerable: true, get: fun
22
22
  Object.defineProperty(exports, "loadTypeIndexes", { enumerable: true, get: function () { return typeIndexLogic_1.loadTypeIndexes; } });
23
23
  Object.defineProperty(exports, "registerInTypeIndex", { enumerable: true, get: function () { return typeIndexLogic_1.registerInTypeIndex; } });
24
24
  Object.defineProperty(exports, "loadIndex", { enumerable: true, get: function () { return typeIndexLogic_1.loadIndex; } });
25
+ // Generate by
26
+ // grep export src/discovery/discoveryLogic.ts | sed -e 's/export //g' | sed -e 's/async //g'| sed -e 's/function //g' | sed -e 's/ .*/,/g' | sort
25
27
  var discoveryLogic_1 = require("./discovery/discoveryLogic");
26
- Object.defineProperty(exports, "loadProfile", { enumerable: true, get: function () { return discoveryLogic_1.loadProfile; } });
28
+ Object.defineProperty(exports, "deleteTypeIndexRegistration", { enumerable: true, get: function () { return discoveryLogic_1.deleteTypeIndexRegistration; } });
29
+ Object.defineProperty(exports, "followOrCreateLink", { enumerable: true, get: function () { return discoveryLogic_1.followOrCreateLink; } });
30
+ Object.defineProperty(exports, "getAppInstances", { enumerable: true, get: function () { return discoveryLogic_1.getAppInstances; } });
31
+ Object.defineProperty(exports, "getScopedAppInstances", { enumerable: true, get: function () { return discoveryLogic_1.getScopedAppInstances; } });
32
+ Object.defineProperty(exports, "getScopedAppsFromIndex", { enumerable: true, get: function () { return discoveryLogic_1.getScopedAppsFromIndex; } });
33
+ Object.defineProperty(exports, "loadAllTypeIndexes", { enumerable: true, get: function () { return discoveryLogic_1.loadAllTypeIndexes; } });
34
+ Object.defineProperty(exports, "loadCommunityTypeIndexes", { enumerable: true, get: function () { return discoveryLogic_1.loadCommunityTypeIndexes; } });
35
+ Object.defineProperty(exports, "loadOrCreateIfNotExists", { enumerable: true, get: function () { return discoveryLogic_1.loadOrCreateIfNotExists; } });
27
36
  Object.defineProperty(exports, "loadPreferences", { enumerable: true, get: function () { return discoveryLogic_1.loadPreferences; } });
37
+ Object.defineProperty(exports, "loadProfile", { enumerable: true, get: function () { return discoveryLogic_1.loadProfile; } });
28
38
  Object.defineProperty(exports, "loadTypeIndexesFor", { enumerable: true, get: function () { return discoveryLogic_1.loadTypeIndexesFor; } });
29
- Object.defineProperty(exports, "loadCommunityTypeIndexes", { enumerable: true, get: function () { return discoveryLogic_1.loadCommunityTypeIndexes; } });
30
- Object.defineProperty(exports, "loadAllTypeIndexes", { enumerable: true, get: function () { return discoveryLogic_1.loadAllTypeIndexes; } });
39
+ Object.defineProperty(exports, "registerInstanceInTypeIndex", { enumerable: true, get: function () { return discoveryLogic_1.registerInstanceInTypeIndex; } });
40
+ Object.defineProperty(exports, "suggestPreferencesFile", { enumerable: true, get: function () { return discoveryLogic_1.suggestPreferencesFile; } });
41
+ Object.defineProperty(exports, "suggestPrivateTypeIndex", { enumerable: true, get: function () { return discoveryLogic_1.suggestPrivateTypeIndex; } });
42
+ Object.defineProperty(exports, "suggestPublicTypeIndex", { enumerable: true, get: function () { return discoveryLogic_1.suggestPublicTypeIndex; } });
43
+ Object.defineProperty(exports, "uniqueNodes", { enumerable: true, get: function () { return discoveryLogic_1.uniqueNodes; } });
31
44
  var SolidLogic_1 = require("./logic/SolidLogic");
32
45
  Object.defineProperty(exports, "SolidLogic", { enumerable: true, get: function () { return SolidLogic_1.SolidLogic; } });
33
46
  var authUtil_1 = require("./authn/authUtil");
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,mFAAmF;AACnF,8DAA8D;AAC9D,mEAAiE;AACjE,IAAM,KAAK,GAAG,yCAAmB,CAAC,KAAK,CAAA;AAmC9B,sBAAK;AAlCd,IAAM,WAAW,GAAG,yCAAmB,CAAC,KAAK,CAAC,WAAW,CAAA;AAkCzC,kCAAW;AAjC3B,IAAM,KAAK,GAAG,yCAAmB,CAAC,KAAK,CAAA;AAiCV,sBAAK;AA/BlC,IAAM,IAAI,GAAG,yCAAmB,CAAC,IAAI,CAAA;AA+BD,oBAAI;AA9BxC,IAAM,OAAO,GAAG,yCAAmB,CAAC,OAAO,CAAA;AA8BD,0BAAO;AA5BjD,2CAGuB;AAFrB,4GAAA,gBAAgB,OAAA;AAChB,sGAAA,UAAU,OAAA;AAGZ,6DAKmC;AAJjC,mHAAA,iBAAiB,OAAA;AACjB,iHAAA,eAAe,OAAA;AACf,qHAAA,mBAAmB,OAAA;AACnB,2GAAA,SAAS,OAAA;AAGX,6DAMmC;AALjC,6GAAA,WAAW,OAAA;AACX,iHAAA,eAAe,OAAA;AACf,oHAAA,kBAAkB,OAAA;AAClB,0HAAA,wBAAwB,OAAA;AACxB,oHAAA,kBAAkB,OAAA;AAGpB,iDAA+C;AAAtC,wGAAA,UAAU,OAAA;AACnB,6CAA4D;AAAnD,yGAAA,aAAa,OAAA;AAAE,sGAAA,UAAU,OAAA;AAClC,oDAA8C;AAArC,wGAAA,QAAQ,OAAA;AACjB,oDAA0D;AAAjD,kHAAA,mBAAmB,OAAA;AAE5B,6EAA6E;AAC7E,mEAAiE;AAAxD,0HAAA,mBAAmB,OAAA;AAC5B,mDAAuI;AAA9H,gHAAA,iBAAiB,OAAA;AAAE,wHAAA,yBAAyB,OAAA;AAAE,uHAAA,wBAAwB,OAAA;AAAE,4GAAA,aAAa,OAAA;AAAE,yGAAA,UAAU,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,mFAAmF;AACnF,8DAA8D;AAC9D,mEAAiE;AACjE,IAAM,KAAK,GAAG,yCAAmB,CAAC,KAAK,CAAA;AAgD9B,sBAAK;AA/Cd,IAAM,WAAW,GAAG,yCAAmB,CAAC,KAAK,CAAC,WAAW,CAAA;AA+CzC,kCAAW;AA9C3B,IAAM,KAAK,GAAG,yCAAmB,CAAC,KAAK,CAAA;AA8CV,sBAAK;AA5ClC,IAAM,IAAI,GAAG,yCAAmB,CAAC,IAAI,CAAA;AA4CD,oBAAI;AA3CxC,IAAM,OAAO,GAAG,yCAAmB,CAAC,OAAO,CAAA;AA2CD,0BAAO;AAzCjD,2CAGuB;AAFrB,4GAAA,gBAAgB,OAAA;AAChB,sGAAA,UAAU,OAAA;AAGZ,6DAKmC;AAJjC,mHAAA,iBAAiB,OAAA;AACjB,iHAAA,eAAe,OAAA;AACf,qHAAA,mBAAmB,OAAA;AACnB,2GAAA,SAAS,OAAA;AAGX,cAAc;AACd,oJAAoJ;AACpJ,6DAiBmC;AAhBjC,6HAAA,2BAA2B,OAAA;AAC3B,oHAAA,kBAAkB,OAAA;AAClB,iHAAA,eAAe,OAAA;AACf,uHAAA,qBAAqB,OAAA;AACrB,wHAAA,sBAAsB,OAAA;AACtB,oHAAA,kBAAkB,OAAA;AAClB,0HAAA,wBAAwB,OAAA;AACxB,yHAAA,uBAAuB,OAAA;AACvB,iHAAA,eAAe,OAAA;AACf,6GAAA,WAAW,OAAA;AACX,oHAAA,kBAAkB,OAAA;AAClB,6HAAA,2BAA2B,OAAA;AAC3B,wHAAA,sBAAsB,OAAA;AACtB,yHAAA,uBAAuB,OAAA;AACvB,wHAAA,sBAAsB,OAAA;AACtB,6GAAA,WAAW,OAAA;AAGb,iDAA+C;AAAtC,wGAAA,UAAU,OAAA;AACnB,6CAA4D;AAAnD,yGAAA,aAAa,OAAA;AAAE,sGAAA,UAAU,OAAA;AAClC,oDAA8C;AAArC,wGAAA,QAAQ,OAAA;AACjB,oDAA0D;AAAjD,kHAAA,mBAAmB,OAAA;AAE5B,6EAA6E;AAC7E,mEAAiE;AAAxD,0HAAA,mBAAmB,OAAA;AAC5B,mDAAuI;AAA9H,gHAAA,iBAAiB,OAAA;AAAE,wHAAA,yBAAyB,OAAA;AAAE,uHAAA,wBAAwB,OAAA;AAAE,4GAAA,aAAa,OAAA;AAAE,yGAAA,UAAU,OAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"typeIndexLogic.js","sourceRoot":"","sources":["../../src/typeIndex/typeIndexLogic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typeIndexLogic.js","sourceRoot":"","sources":["../../src/typeIndex/typeIndexLogic.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "solid-logic",
3
- "version": "1.3.16-a52e4345",
3
+ "version": "1.3.17-1274f5aa",
4
4
  "description": "Core business logic of Solid OS",
5
5
  "main": "lib/index.js",
6
6
  "scripts": {
@@ -8,6 +8,7 @@
8
8
  "clean": "rm -rf lib",
9
9
  "lint": "eslint ./src",
10
10
  "test": "jest",
11
+ "test-debug": "node --inspect-brk ./node_modules/.bin/jest -i --env jest-environment-node-debug",
11
12
  "preversion": "npm test",
12
13
  "postversion": "git push --follow-tags",
13
14
  "ignore:prepublishOnly": "npm run build",
@@ -31,10 +32,11 @@
31
32
  "@babel/preset-env": "~7.16.11",
32
33
  "@babel/preset-typescript": "~7.16.7",
33
34
  "@types/jest": "^27.4.1",
34
- "@typescript-eslint/eslint-plugin": "^5.17.0",
35
- "@typescript-eslint/parser": "^5.17.0",
36
- "eslint": "^8.12.0",
35
+ "@typescript-eslint/eslint-plugin": "^5.19.0",
36
+ "@typescript-eslint/parser": "^5.19.0",
37
+ "eslint": "^8.13.0",
37
38
  "jest": "^27.5.1",
39
+ "jest-environment-node-debug": "^2.0.0",
38
40
  "jest-fetch-mock": "^3.0.3",
39
41
  "typescript": "^4.6.3"
40
42
  },
@@ -4,21 +4,21 @@ import * as debug from '../util/debug'
4
4
  import { Session } from "@inrupt/solid-client-authn-browser";
5
5
  import { AuthenticationContext, AuthnLogic } from "../types";
6
6
  export class SolidAuthnLogic implements AuthnLogic {
7
- private session: Session;
7
+ private session: Session;
8
8
 
9
9
  constructor(solidAuthSession: Session) {
10
10
  this.session = solidAuthSession;
11
11
  }
12
-
12
+
13
13
  // we created authSession getter because we want to access it as authn.authSession externally
14
- get authSession():Session { return this.session }
14
+ get authSession():Session { return this.session }
15
15
 
16
16
  currentUser(): NamedNode | null {
17
17
  const app = appContext()
18
18
  if (app.viewingNoAuthPage) {
19
19
  return sym(app.webId)
20
20
  }
21
- if (this.session.info.webId && this.session.info.isLoggedIn) {
21
+ if (this && this.session && this.session.info && this.session.info.webId && this.session.info.isLoggedIn) {
22
22
  return sym(this.session.info.webId)
23
23
  }
24
24
  return offlineTestID() // null unless testing
@@ -120,4 +120,4 @@ export class SolidAuthnLogic implements AuthnLogic {
120
120
  return webId
121
121
  }
122
122
 
123
- }
123
+ }
@@ -1,90 +1,280 @@
1
- import { NamedNode, Namespace, LiveStore } from "rdflib";
1
+ import { NamedNode, Namespace, LiveStore, sym, st } from "rdflib";
2
+ import { solidLogicSingleton } from "../logic/solidLogicSingleton"
3
+ import { newThing } from "../util/uri"
4
+ const { authn } = solidLogicSingleton
5
+ const { currentUser } = authn
2
6
 
3
- type TypeIndex = { label: string, index: NamedNode, agent: NamedNode } ;
7
+ type TypeIndexScope = { label: string, index: NamedNode, agent: NamedNode } ;
8
+ type ScopedApp = { instance: NamedNode, scope: TypeIndexScope }
4
9
 
5
- const ns ={
6
- solid: Namespace('http://www.w3.org/ns/solid/terms#'),
7
- space: Namespace('http://www.w3.org/ns/pim/space#')
10
+ const ns = {
11
+ dct: Namespace('http://purl.org/dc/terms/'),
12
+ ldp: Namespace('http://www.w3.org/ns/ldp#'),
13
+ meeting: Namespace('http://www.w3.org/ns/pim/meeting#'),
14
+ rdf: Namespace('http://www.w3.org/1999/02/22-rdf-syntax-ns#'),
15
+ schema: Namespace('http://schema.org/'),
16
+ solid: Namespace('http://www.w3.org/ns/solid/terms#'),
17
+ space: Namespace('http://www.w3.org/ns/pim/space#'),
18
+ stat: Namespace('http://www.w3.org/ns/posix/stat#'),
19
+ vcard: Namespace('http://www.w3.org/2006/vcard/ns#'),
20
+ wf: Namespace('http://www.w3.org/2005/01/wf/flow#'),
21
+ xsd: Namespace('http://www.w3.org/2001/XMLSchema#')
22
+
23
+ }
24
+
25
+ /** Create a resource if it really does not exist
26
+ * Be absolutely sure something does not exist before creating a new empty file
27
+ * as otherwise existing could be deleted.
28
+ * @param doc {NamedNode} - The resource
29
+ */
30
+ export async function loadOrCreateIfNotExists (store: LiveStore, doc: NamedNode) {
31
+ let response
32
+ try {
33
+ response = await store.fetcher.load(doc)
34
+ } catch (err) {
35
+ if (err.response.status === 404) {
36
+ try {
37
+ store.fetcher.webOperation('PUT', doc, {data: '', contentType: 'text/turtle'})
38
+ } catch (err) {
39
+ const msg = 'createIfNotExists: PUT FAILED: ' + doc + ': ' + err
40
+ throw new Error(msg)
41
+ }
42
+ delete store.fetcher.requested[doc.uri] // delete cached 404 error
43
+ } else {
44
+ const msg = 'createIfNotExists doc load error NOT 404: ' + doc + ': ' + err
45
+ throw new Error(msg) // @@ add nested errors
46
+ }
47
+ }
48
+ return response
49
+ }
50
+
51
+ export function suggestPreferencesFile (me:NamedNode) {
52
+ const stripped = me.uri.replace('/profile/', '/').replace('/public/', '/')
53
+ // const stripped = me.uri.replace(\/[p|P]rofile/\g, '/').replace(\/[p|P]ublic/\g, '/')
54
+ const folderURI = stripped.split('/').slice(0,-1).join('/') + '/Settings/'
55
+ const fileURI = folderURI + 'Preferences.ttl'
56
+ return sym(fileURI)
8
57
  }
9
58
 
10
- export async function loadProfile(store: LiveStore, user) {
59
+ export function suggestPublicTypeIndex (me:NamedNode) {
60
+ return sym(me.doc().dir()?.uri + 'publicTypeIndex.ttl')
61
+ }
62
+ // Note this one is based off the pref file not the profile
63
+
64
+ export function suggestPrivateTypeIndex (preferencesFile:NamedNode) {
65
+ return sym(preferencesFile.doc().dir()?.uri + 'privateTypeIndex.ttl')
66
+ }
67
+ /* Follow link from this doc to another thing, or else make a new link
68
+ **
69
+ ** return: null no ld one and failed to make a new one
70
+ */
71
+ export async function followOrCreateLink (store: LiveStore, subject: NamedNode, predicate: NamedNode,
72
+ object: NamedNode, doc:NamedNode):Promise<NamedNode | null> {
73
+ await store.fetcher.load(doc)
74
+ const result = store.any(subject, predicate, null, doc)
75
+
76
+ if (result) return result as NamedNode
77
+ if (!store.updater.editable(doc)) {
78
+ return null
79
+ }
80
+ try {
81
+ await store.updater.update([], [ st(subject, predicate, object, doc)])
82
+ } catch (err) {
83
+ console.warn(`followOrCreateLink: Error making link in ${doc} to ${object}: ${err}`)
84
+ return null
85
+ }
86
+
87
+ try {
88
+ await loadOrCreateIfNotExists(store, object)
89
+ // store.fetcher.webOperation('PUT', object, { data: '', contentType: 'text/turtle'})
90
+ } catch (err) {
91
+ console.warn(`followOrCreateLink: Error loading or saving new linked document: ${object}: ${err}`)
92
+ }
93
+ return object
94
+ }
95
+
96
+ export async function loadProfile (store: LiveStore, user: NamedNode) {
11
97
  if (!user) {
12
98
  throw new Error(`loadProfile: no user given.`)
13
99
  }
14
100
  try {
15
101
  await store.fetcher.load(user.doc())
16
102
  } catch (err) {
17
- throw new Error(`Unable to load profile of user <${user}>: ${err}`)
103
+ throw new Error(`Unable to load profile of user ${user}: ${err}`)
18
104
  }
19
105
  return user.doc()
20
106
  }
21
107
 
22
- export async function loadPreferences(store: LiveStore, user): Promise <NamedNode | undefined > {
23
- const profile = await loadProfile(store as LiveStore, user)
24
- const preferencesFile = store.any(user, ns.space('preferencesFile'), undefined, profile)
108
+ export async function loadPreferences (store: LiveStore, user: NamedNode): Promise <NamedNode | undefined > {
109
+ await loadProfile(store as LiveStore, user)
110
+
111
+ const possiblePreferencesFile = suggestPreferencesFile(user)
112
+
113
+ const preferencesFile = await followOrCreateLink(store, user, ns.space('preferencesFile') as NamedNode, possiblePreferencesFile, user.doc())
114
+
25
115
  if (!preferencesFile) {
26
- // throw new Error(`USer ${user} has no pointer in profile to preferences file.`)
116
+ const message = `User ${user} has no pointer in profile to preferences file.`
117
+ console.warn(message)
27
118
  return undefined
28
119
  }
29
120
  try {
30
- store.fetcher.load(preferencesFile as NamedNode)
121
+ await store.fetcher.load(preferencesFile as NamedNode)
31
122
  } catch (err) { // Mabeb a permission propblem or origin problem
32
123
  return undefined
33
- // throw new Error(`Unable to load preferences file ${preferencesFile} of user <${user}>: ${err}`)
34
124
  }
35
125
  return preferencesFile as NamedNode
36
126
  }
37
127
 
38
- export async function loadTypeIndexesFor(store: LiveStore, user:NamedNode): Promise<Array<TypeIndex>> {
128
+ export async function loadTypeIndexesFor (store: LiveStore, user:NamedNode): Promise<Array<TypeIndexScope>> {
39
129
  if (!user) throw new Error(`loadTypeIndexesFor: No user given`)
40
130
  const profile = await loadProfile(store, user)
41
- const publicTypeIndex = store.any(user, ns.solid('publicTypeIndex'), undefined, profile)
42
- if (publicTypeIndex) {
43
- try {
44
- await store.fetcher.load(publicTypeIndex as NamedNode)
45
- } catch {
46
- // never mind
47
- }
131
+
132
+ const suggestion = suggestPublicTypeIndex(user)
133
+
134
+ const publicTypeIndex = await followOrCreateLink(store, user, ns.solid('publicTypeIndex') as NamedNode, suggestion, profile)
135
+
136
+ const publicScopes = publicTypeIndex ? [ { label: 'public', index: publicTypeIndex as NamedNode, agent: user } ] : []
137
+
138
+ let preferencesFile
139
+ try {
140
+ preferencesFile = await loadPreferences(store, user)
141
+ } catch (err) {
142
+ preferencesFile = null
48
143
  }
49
- const pub = publicTypeIndex ? [ { label: 'public', index: publicTypeIndex as NamedNode, agent: user } ] : []
50
144
 
51
- const preferencesFile = await loadPreferences(store, user)
52
- if (preferencesFile) { // watch out - can be in either as spec was not clear
53
- const privateTypeIndexes = store.each(user, ns.solid('privateTypeIndex'), undefined, preferencesFile as NamedNode)
54
- .concat(store.each(user, ns.solid('privateTypeIndex'), undefined, profile))
55
- const priv = privateTypeIndexes.length > 0 ? [ { label: 'priSo @@@@@vate', index: privateTypeIndexes[0] as NamedNode, agent: user } ] : []
56
- return pub.concat(priv)
145
+ let privateScopes
146
+ if (preferencesFile) { // watch out - can be in either as spec was not clear. Legacy is profile.
147
+ // If there is a legacy one linked from the profile, use that.
148
+ // Otherwiae use or make one linked from Preferences
149
+ const suggestedPrivateTypeIndex = suggestPrivateTypeIndex(preferencesFile)
150
+
151
+ const privateTypeIndex = store.any(user, ns.solid('privateTypeIndex'), undefined, profile) ||
152
+
153
+ await followOrCreateLink(store, user, ns.solid('privateTypeIndex') as NamedNode, suggestedPrivateTypeIndex, preferencesFile);
154
+
155
+ privateScopes = privateTypeIndex ? [ { label: 'private', index: privateTypeIndex as NamedNode, agent: user } ] : []
156
+ } else {
157
+ privateScopes = []
57
158
  }
58
- return pub
159
+ const scopes = publicScopes.concat(privateScopes)
160
+ if (scopes.length === 0) return scopes
161
+ const files = scopes.map(scope => scope.index)
162
+ try {
163
+ await store.fetcher.load(files)
164
+ } catch (err) {
165
+ console.warn('Problems loading type index: ', err)
166
+ }
167
+ return scopes
59
168
  }
60
169
 
61
- export async function loadCommunityTypeIndexes (store:LiveStore, user:NamedNode): Promise<TypeIndex[][]> {
170
+ export async function loadCommunityTypeIndexes (store:LiveStore, user:NamedNode): Promise<TypeIndexScope[][]> {
62
171
  const preferencesFile = await loadPreferences(store, user)
63
- if (preferencesFile) {
64
- const communities = store.each(user, ns.solid('community'), undefined, preferencesFile as NamedNode)
65
- const communityTypeIndexesPromise = communities.map(async community => await loadTypeIndexesFor(store, community as NamedNode))
66
- const result1 = Promise.all(communityTypeIndexesPromise)
67
- // const result2 = Promise.all(result1)
68
- // const flat = result2.flat()
69
- return result1
70
- // const communityTypeIndexes = await Promise.all(communityTypeIndexesPromise)
71
- /*
72
- let result = [] as TypeIndex[]
73
- for(const community of communities) {
74
- result = result.concat(await loadTypeIndexesFor(store, community as NamedNode)) as TypeIndex[] // @@ how oto make functional with async?
172
+ if (preferencesFile) { // For now, pick up communities as simple links from the preferences file.
173
+ const communities = store.each(user, ns.solid('community'), undefined, preferencesFile as NamedNode).concat(
174
+ store.each(user, ns.solid('community'), undefined, user.doc() as NamedNode)
175
+ )
176
+ let result = []
177
+ for (const org of communities) {
178
+ result = result.concat(await loadTypeIndexesFor(store, org as NamedNode) as any)
75
179
  }
76
- */
77
- // return communityTypeIndexesPromise.resolve()
180
+ return result
78
181
  }
79
- return []
182
+ return [] // No communities
80
183
  }
81
184
 
82
185
  export async function loadAllTypeIndexes (store:LiveStore, user:NamedNode) {
83
186
  return (await loadTypeIndexesFor(store, user)).concat((await loadCommunityTypeIndexes(store, user)).flat())
84
187
  }
85
188
 
86
- /*
87
- export async function getAppInstances (store:LiveStore, klass: NamedNode) {
189
+ // Utility: remove duplicates from Array of NamedNodes
88
190
 
191
+ export function uniqueNodes (arr: NamedNode[]): NamedNode[] {
192
+ const uris = arr.map(x => x.uri)
193
+ const set = new Set(uris)
194
+ const uris2 = Array.from(set)
195
+ const arr2 = uris2.map(u => new NamedNode(u))
196
+ return arr2 // Array.from(new Set(arr.map(x => x.uri))).map(u => sym(u))
89
197
  }
90
- */
198
+
199
+ export async function getScopedAppsFromIndex (store, scope, theClass: NamedNode | null) {
200
+ const index = scope.index
201
+ const registrations = store.statementsMatching(null, ns.solid('instance'), null, index)
202
+ .concat(store.statementsMatching(null, ns.solid('instanceContainer'), null, index))
203
+ .map(st => st.subject)
204
+ const relevant = theClass ? registrations.filter(reg => store.any(reg, ns.solid('forClass'), null, index).sameTerm(theClass))
205
+ : registrations
206
+ const directInstances = relevant.map(reg => store.each(reg as NamedNode, ns.solid('instance'), null, index)).flat()
207
+ let instances = uniqueNodes(directInstances)
208
+
209
+ const instanceContainers = relevant.map(
210
+ reg => store.each(reg as NamedNode, ns.solid('instanceContainer'), null, index)).flat()
211
+
212
+ // instanceContainers may be deprocatable if no one has used them
213
+
214
+ const containers = uniqueNodes(instanceContainers)
215
+ if (containers.length > 0) { console.log('@@ getScopedAppsFromIndex containers ', containers)}
216
+ for (let i = 0; i < containers.length; i++) {
217
+ const cont = containers[i]
218
+ await store.fetcher.load(cont)
219
+ const contents = store.each(cont, ns.ldp('contains'), null, cont)
220
+ instances = instances.concat(contents)
221
+ }
222
+ return instances.map(instance => { return {instance, scope}})
223
+ }
224
+
225
+
226
+ export async function getScopedAppInstances (store:LiveStore, klass: NamedNode, user: NamedNode):Promise<ScopedApp[]> {
227
+ const scopes = await loadAllTypeIndexes(store, user)
228
+ let scopedApps = []
229
+ for (const scope of scopes) {
230
+ const scopedApps0 = await getScopedAppsFromIndex(store, scope, klass) as any
231
+ scopedApps = scopedApps.concat(scopedApps0)
232
+ }
233
+ return scopedApps
234
+ }
235
+ // This is the function signature which used to be in solid-ui/logic
236
+ // Recommended to use getScopedAppInstances instead as it provides more information.
237
+ //
238
+ export async function getAppInstances (store:LiveStore, klass: NamedNode): Promise<NamedNode[]> {
239
+ const user = currentUser()
240
+ if (!user) throw new Error('getAppInstances: Must be logged in to find apps.')
241
+ const scopedAppInstances = await getScopedAppInstances(store, klass, user)
242
+ return scopedAppInstances.map(scoped => scoped.instance)
243
+ }
244
+ /**
245
+ * Register a new app in a type index
246
+ * used in chat in bookmark.js (solid-ui)
247
+ * Returns the registration object if successful else null
248
+ */
249
+ export async function registerInstanceInTypeIndex (
250
+ store:LiveStore,
251
+ instance: NamedNode,
252
+ index: NamedNode,
253
+ theClass: NamedNode,
254
+ // agent: NamedNode
255
+ ): Promise<NamedNode | null> {
256
+ const registration = newThing(index)
257
+ const ins = [
258
+ // See https://github.com/solid/solid/blob/main/proposals/data-discovery.md
259
+ st(registration, ns.rdf('type'), ns.solid('TypeRegistration'), index),
260
+ st(registration, ns.solid('forClass'), theClass, index),
261
+ st(registration, ns.solid('instance'), instance, index)
262
+ ]
263
+ try {
264
+ await store.updater.update([], ins)
265
+ } catch (err) {
266
+ const msg = `Unable to register ${instance} in index ${index}: ${err}`
267
+ console.warn(msg)
268
+ return null
269
+ }
270
+ return registration
271
+ }
272
+
273
+ export async function deleteTypeIndexRegistration (store: LiveStore, item) {
274
+ const reg = store.the(null, ns.solid('instance'), item.instance, item.scope.index) as NamedNode
275
+ if (!reg) throw new Error(`deleteTypeIndexRegistration: No registration found for ${item.instance}`)
276
+ const statements = store.statementsMatching(reg, null, null, item.scope.index)
277
+ await store.updater.update(statements, [])
278
+ }
279
+
280
+ // ENDS
package/src/index.ts CHANGED
@@ -20,12 +20,25 @@ export {
20
20
  loadIndex
21
21
  } from './typeIndex/typeIndexLogic'
22
22
 
23
+ // Generate by
24
+ // grep export src/discovery/discoveryLogic.ts | sed -e 's/export //g' | sed -e 's/async //g'| sed -e 's/function //g' | sed -e 's/ .*/,/g' | sort
23
25
  export {
24
- loadProfile,
26
+ deleteTypeIndexRegistration,
27
+ followOrCreateLink,
28
+ getAppInstances,
29
+ getScopedAppInstances,
30
+ getScopedAppsFromIndex,
31
+ loadAllTypeIndexes,
32
+ loadCommunityTypeIndexes,
33
+ loadOrCreateIfNotExists,
25
34
  loadPreferences,
35
+ loadProfile,
26
36
  loadTypeIndexesFor,
27
- loadCommunityTypeIndexes,
28
- loadAllTypeIndexes
37
+ registerInstanceInTypeIndex,
38
+ suggestPreferencesFile,
39
+ suggestPrivateTypeIndex,
40
+ suggestPublicTypeIndex,
41
+ uniqueNodes
29
42
  } from './discovery/discoveryLogic'
30
43
 
31
44
  export { SolidLogic } from './logic/SolidLogic'
@@ -43,7 +43,7 @@ return context
43
43
 
44
44
  export async function loadTypeIndexes (context: AuthenticationContext) {
45
45
  try {
46
- await loadPreferences(solidLogicSingleton.store, context.me)
46
+ await loadPreferences(solidLogicSingleton.store, context.me as NamedNode)
47
47
  } catch (error) {
48
48
  debug.warn(error.message) as undefined
49
49
  }