solid-logic 3.1.1-2e1ed31 → 3.1.1-32b551f
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/README.md +58 -37
- package/dist/acl/aclLogic.d.ts.map +1 -1
- package/dist/acl/aclLogic.js +11 -16
- package/dist/acl/aclLogic.js.map +1 -1
- package/dist/authSession/authSession.js +2 -5
- package/dist/authSession/authSession.js.map +1 -1
- package/dist/authn/SolidAuthnLogic.js +13 -51
- package/dist/authn/SolidAuthnLogic.js.map +1 -1
- package/dist/authn/authUtil.d.ts.map +1 -1
- package/dist/authn/authUtil.js +7 -48
- package/dist/authn/authUtil.js.map +1 -1
- package/dist/chat/chatLogic.d.ts.map +1 -1
- package/dist/chat/chatLogic.js +20 -23
- package/dist/chat/chatLogic.js.map +1 -1
- package/dist/inbox/inboxLogic.d.ts.map +1 -1
- package/dist/inbox/inboxLogic.js +3 -7
- package/dist/inbox/inboxLogic.js.map +1 -1
- package/dist/index.js +11 -28
- package/dist/index.js.map +1 -1
- package/dist/issuer/issuerLogic.js +1 -4
- package/dist/issuer/issuerLogic.js.map +1 -1
- package/dist/logic/CustomError.js +7 -18
- package/dist/logic/CustomError.js.map +1 -1
- package/dist/logic/solidLogic.d.ts.map +1 -1
- package/dist/logic/solidLogic.js +19 -56
- package/dist/logic/solidLogic.js.map +1 -1
- package/dist/logic/solidLogicSingleton.d.ts +2 -1
- package/dist/logic/solidLogicSingleton.d.ts.map +1 -1
- package/dist/logic/solidLogicSingleton.js +21 -44
- package/dist/logic/solidLogicSingleton.js.map +1 -1
- package/dist/profile/profileLogic.d.ts.map +1 -1
- package/dist/profile/profileLogic.js +17 -54
- package/dist/profile/profileLogic.js.map +1 -1
- package/dist/{solid-logic.esm.external.js → solid-logic.esm.js} +6168 -11537
- package/dist/solid-logic.esm.js.map +1 -0
- package/dist/solid-logic.esm.min.js +32 -0
- package/dist/solid-logic.esm.min.js.map +1 -0
- package/dist/solid-logic.js +6603 -34836
- package/dist/solid-logic.js.map +1 -1
- package/dist/solid-logic.min.js +10 -19
- package/dist/solid-logic.min.js.map +1 -1
- package/dist/typeIndex/typeIndexLogic.d.ts.map +1 -1
- package/dist/typeIndex/typeIndexLogic.js +15 -55
- package/dist/typeIndex/typeIndexLogic.js.map +1 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +1 -2
- package/dist/util/containerLogic.js +4 -7
- package/dist/util/containerLogic.js.map +1 -1
- package/dist/util/debug.js +4 -11
- package/dist/util/debug.js.map +1 -1
- package/dist/util/ns.js +3 -42
- package/dist/util/ns.js.map +1 -1
- package/dist/util/utilityLogic.js +15 -51
- package/dist/util/utilityLogic.js.map +1 -1
- package/dist/util/utils.js +11 -19
- package/dist/util/utils.js.map +1 -1
- package/dist/versionInfo.js +26 -29
- package/dist/versionInfo.js.map +1 -1
- package/package.json +9 -19
- package/dist/789.solid-logic.js +0 -11
- package/dist/789.solid-logic.js.map +0 -1
- package/dist/789.solid-logic.min.js +0 -1
- package/dist/841.solid-logic.js +0 -12133
- package/dist/841.solid-logic.js.map +0 -1
- package/dist/841.solid-logic.min.js +0 -73
- package/dist/841.solid-logic.min.js.map +0 -1
- package/dist/solid-logic.esm.external.js.map +0 -1
- package/dist/solid-logic.esm.external.min.js +0 -32
- package/dist/solid-logic.esm.external.min.js.map +0 -1
- package/dist/solid-logic.external.js +0 -12802
- package/dist/solid-logic.external.js.map +0 -1
- package/dist/solid-logic.external.min.js +0 -32
- package/dist/solid-logic.external.min.js.map +0 -1
package/README.md
CHANGED
|
@@ -10,69 +10,71 @@ Core business logic of SolidOS which can be used for any webapp as well.
|
|
|
10
10
|
|
|
11
11
|
# Usage
|
|
12
12
|
|
|
13
|
-
## Install via npm
|
|
13
|
+
## 📦 Install via npm
|
|
14
14
|
|
|
15
15
|
```sh
|
|
16
|
-
npm install solid-logic
|
|
16
|
+
npm install solid-logic rdflib
|
|
17
17
|
```
|
|
18
18
|
|
|
19
|
+
> **Important**: `rdflib` is a peer dependency - you must install it separately.
|
|
20
|
+
|
|
19
21
|
### Import in your project (ESM/TypeScript)
|
|
20
22
|
|
|
21
23
|
```js
|
|
22
|
-
import {
|
|
24
|
+
import { solidLogicSingleton, store, authn } from 'solid-logic';
|
|
25
|
+
|
|
26
|
+
// Example usage
|
|
27
|
+
console.log('Current user:', authn.currentUser());
|
|
23
28
|
```
|
|
24
29
|
|
|
25
|
-
## Use directly in a browser
|
|
30
|
+
## 🌐 Use directly in a browser
|
|
31
|
+
|
|
32
|
+
Both UMD and ESM bundles externalize rdflib to keep bundle sizes small and avoid version conflicts.
|
|
26
33
|
|
|
27
|
-
|
|
28
|
-
* the UMD bundles come in 2 flavours, with rdflib bundled together and without;
|
|
29
|
-
* the ESM bundles do not contain rdflib, so it must be imported separately.
|
|
34
|
+
## Available Files
|
|
30
35
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
-
|
|
36
|
-
-
|
|
36
|
+
| Format | File | Usage | Global Variable |
|
|
37
|
+
|--------|------|-------|----------------|
|
|
38
|
+
| UMD | `dist/solid-logic.js` | Development | `window.SolidLogic` |
|
|
39
|
+
| UMD | `dist/solid-logic.min.js` | Production | `window.SolidLogic` |
|
|
40
|
+
| ESM | `dist/solid-logic.esm.js` | Development | Import only |
|
|
41
|
+
| ESM | `dist/solid-logic.esm.min.js` | Production | Import only |
|
|
37
42
|
|
|
43
|
+
### UMD Bundle (Script Tags)
|
|
38
44
|
|
|
39
|
-
|
|
45
|
+
**⚠️ Important**: Load rdflib **before** solid-logic or you'll get `$rdf is not defined` errors.
|
|
40
46
|
|
|
41
47
|
```html
|
|
42
|
-
<!-- Load
|
|
43
|
-
<script src="https://
|
|
44
|
-
|
|
45
|
-
<!--
|
|
46
|
-
<!-- Load solid-logic UMD bundle -->
|
|
48
|
+
<!-- 1. Load rdflib first (creates window.$rdf) -->
|
|
49
|
+
<script src="https://cdn.jsdelivr.net/npm/rdflib/dist/rdflib.min.js"></script>
|
|
50
|
+
|
|
51
|
+
<!-- 2. Load solid-logic (expects $rdf to exist) -->
|
|
47
52
|
<script src="https://unpkg.com/solid-logic/dist/solid-logic.min.js"></script>
|
|
48
|
-
|
|
49
|
-
<!-- script src="https://cdn.jsdelivr.net/npm/solid-logic/dist/solid-logic.min.js"></script -->
|
|
50
|
-
<!-- or -->
|
|
51
|
-
<!-- script src="dist/solid-logic.js"></script -->
|
|
53
|
+
|
|
52
54
|
<script>
|
|
53
55
|
// Access via global variable
|
|
54
|
-
const
|
|
56
|
+
const { solidLogicSingleton, store, authn } = window.SolidLogic;
|
|
57
|
+
|
|
55
58
|
// Example usage
|
|
56
|
-
|
|
59
|
+
console.log('Store:', store);
|
|
60
|
+
console.log('Authentication:', authn.currentUser());
|
|
57
61
|
</script>
|
|
58
62
|
```
|
|
59
63
|
|
|
60
|
-
|
|
61
|
-
### ESM bundle (import as module)
|
|
64
|
+
### ESM Bundle (Native Modules)
|
|
62
65
|
|
|
63
66
|
```html
|
|
64
67
|
<script type="module">
|
|
65
|
-
import * as $rdf from 'https://esm.sh/rdflib'
|
|
66
|
-
import {
|
|
68
|
+
import * as $rdf from 'https://esm.sh/rdflib';
|
|
69
|
+
import { solidLogicSingleton, store, authn } from 'https://esm.sh/solid-logic';
|
|
67
70
|
|
|
68
71
|
// Example usage
|
|
69
|
-
|
|
72
|
+
console.log('Store:', store);
|
|
73
|
+
console.log('Authentication:', authn.currentUser());
|
|
70
74
|
</script>
|
|
71
75
|
```
|
|
72
76
|
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
### ESM bundle with import map (bare specifiers)
|
|
77
|
+
### ESM with Import Maps (Recommended)
|
|
76
78
|
|
|
77
79
|
```html
|
|
78
80
|
<script type="importmap">
|
|
@@ -84,14 +86,33 @@ or
|
|
|
84
86
|
}
|
|
85
87
|
</script>
|
|
86
88
|
<script type="module">
|
|
87
|
-
|
|
88
|
-
import {
|
|
89
|
+
import * as $rdf from 'rdflib';
|
|
90
|
+
import { solidLogicSingleton, store, authn } from 'solid-logic';
|
|
89
91
|
|
|
90
|
-
// Example usage
|
|
91
|
-
|
|
92
|
+
// Example usage - cleaner imports!
|
|
93
|
+
console.log('Store:', store);
|
|
94
|
+
console.log('Authentication:', authn.currentUser());
|
|
92
95
|
</script>
|
|
93
96
|
```
|
|
94
97
|
|
|
98
|
+
## Common Exports
|
|
99
|
+
|
|
100
|
+
```js
|
|
101
|
+
import {
|
|
102
|
+
solidLogicSingleton, // Complete singleton instance
|
|
103
|
+
store, // RDF store
|
|
104
|
+
authn, // Authentication logic
|
|
105
|
+
authSession, // Authentication session
|
|
106
|
+
ACL_LINK, // ACL constants
|
|
107
|
+
getSuggestedIssuers, // Identity provider suggestions
|
|
108
|
+
createTypeIndexLogic, // Type index functionality
|
|
109
|
+
// Error classes
|
|
110
|
+
UnauthorizedError,
|
|
111
|
+
NotFoundError,
|
|
112
|
+
FetchError
|
|
113
|
+
} from 'solid-logic';
|
|
114
|
+
```
|
|
115
|
+
|
|
95
116
|
# How to develop
|
|
96
117
|
|
|
97
118
|
Check the scripts in the `package.json` for build, watch, lint and test.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aclLogic.d.ts","sourceRoot":"","sources":["../../src/acl/aclLogic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,SAAS,EAA6B,MAAM,QAAQ,CAAA;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AAInC,eAAO,MAAM,QAAQ,WAEpB,CAAA;AAED,wBAAgB,cAAc,CAAC,KAAK,KAAA,GAAG,QAAQ,
|
|
1
|
+
{"version":3,"file":"aclLogic.d.ts","sourceRoot":"","sources":["../../src/acl/aclLogic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,SAAS,EAA6B,MAAM,QAAQ,CAAA;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AAInC,eAAO,MAAM,QAAQ,WAEpB,CAAA;AAED,wBAAgB,cAAc,CAAC,KAAK,KAAA,GAAG,QAAQ,CAiJ9C"}
|
package/dist/acl/aclLogic.js
CHANGED
|
@@ -1,15 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const
|
|
6
|
-
const ns_1 = require("../util/ns");
|
|
7
|
-
exports.ACL_LINK = (0, rdflib_1.sym)('http://www.iana.org/assignments/link-relations/acl');
|
|
8
|
-
function createAclLogic(store) {
|
|
9
|
-
const ns = ns_1.ns;
|
|
1
|
+
import { graph, Namespace, serialize, sym } from 'rdflib';
|
|
2
|
+
import { ns as namespace } from '../util/ns';
|
|
3
|
+
export const ACL_LINK = sym('http://www.iana.org/assignments/link-relations/acl');
|
|
4
|
+
export function createAclLogic(store) {
|
|
5
|
+
const ns = namespace;
|
|
10
6
|
async function findAclDocUrl(url) {
|
|
11
7
|
await store.fetcher.load(url);
|
|
12
|
-
const docNode = store.any(url,
|
|
8
|
+
const docNode = store.any(url, ACL_LINK);
|
|
13
9
|
if (!docNode) {
|
|
14
10
|
throw new Error(`No ACL link discovered for ${url}`);
|
|
15
11
|
}
|
|
@@ -29,7 +25,7 @@ function createAclLogic(store) {
|
|
|
29
25
|
* @returns Resolves with aclDoc uri on successful write
|
|
30
26
|
*/
|
|
31
27
|
function setACLUserPublic(docURI, me, options) {
|
|
32
|
-
const aclDoc = store.any(store.sym(docURI),
|
|
28
|
+
const aclDoc = store.any(store.sym(docURI), ACL_LINK);
|
|
33
29
|
return Promise.resolve()
|
|
34
30
|
.then(() => {
|
|
35
31
|
if (aclDoc) {
|
|
@@ -68,10 +64,9 @@ function createAclLogic(store) {
|
|
|
68
64
|
}
|
|
69
65
|
return fetcher.load(docURI).then(result => {
|
|
70
66
|
if (!result.ok) {
|
|
71
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
72
67
|
throw new Error('fetchACLRel: While loading:' + result.error);
|
|
73
68
|
}
|
|
74
|
-
const aclDoc = store.any(store.sym(docURI),
|
|
69
|
+
const aclDoc = store.any(store.sym(docURI), ACL_LINK);
|
|
75
70
|
if (!aclDoc) {
|
|
76
71
|
throw new Error('fetchACLRel: No Link rel=ACL header for ' + docURI);
|
|
77
72
|
}
|
|
@@ -88,8 +83,8 @@ function createAclLogic(store) {
|
|
|
88
83
|
*/
|
|
89
84
|
function genACLText(docURI, me, aclURI, options = {}) {
|
|
90
85
|
const optPublic = options.public || [];
|
|
91
|
-
const g =
|
|
92
|
-
const auth =
|
|
86
|
+
const g = graph();
|
|
87
|
+
const auth = Namespace('http://www.w3.org/ns/auth/acl#');
|
|
93
88
|
let a = g.sym(`${aclURI}#a1`);
|
|
94
89
|
const acl = g.sym(aclURI);
|
|
95
90
|
const doc = g.sym(docURI);
|
|
@@ -111,7 +106,7 @@ function createAclLogic(store) {
|
|
|
111
106
|
g.add(a, auth('mode'), auth(optPublic[p]), acl); // Like 'Read' etc
|
|
112
107
|
}
|
|
113
108
|
}
|
|
114
|
-
return
|
|
109
|
+
return serialize(acl, g, aclURI);
|
|
115
110
|
}
|
|
116
111
|
return {
|
|
117
112
|
findAclDocUrl,
|
package/dist/acl/aclLogic.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aclLogic.js","sourceRoot":"","sources":["../../src/acl/aclLogic.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"aclLogic.js","sourceRoot":"","sources":["../../src/acl/aclLogic.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.authSession = void 0;
|
|
4
|
-
const solid_client_authn_browser_1 = require("@inrupt/solid-client-authn-browser");
|
|
5
|
-
exports.authSession = new solid_client_authn_browser_1.Session();
|
|
1
|
+
import { Session, } from '@inrupt/solid-client-authn-browser';
|
|
2
|
+
export const authSession = new Session();
|
|
6
3
|
//# sourceMappingURL=authSession.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authSession.js","sourceRoot":"","sources":["../../src/authSession/authSession.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"authSession.js","sourceRoot":"","sources":["../../src/authSession/authSession.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,GACR,MAAM,oCAAoC,CAAA;AAE3C,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,OAAO,EAAE,CAAA"}
|
|
@@ -1,59 +1,22 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
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 () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.SolidAuthnLogic = void 0;
|
|
37
|
-
const rdflib_1 = require("rdflib");
|
|
38
|
-
const authUtil_1 = require("./authUtil");
|
|
39
|
-
const debug = __importStar(require("../util/debug"));
|
|
40
|
-
const solid_client_authn_browser_1 = require("@inrupt/solid-client-authn-browser");
|
|
41
|
-
class SolidAuthnLogic {
|
|
42
|
-
session;
|
|
1
|
+
import { namedNode, sym } from 'rdflib';
|
|
2
|
+
import { appContext, offlineTestID } from './authUtil';
|
|
3
|
+
import * as debug from '../util/debug';
|
|
4
|
+
import { EVENTS } from '@inrupt/solid-client-authn-browser';
|
|
5
|
+
export class SolidAuthnLogic {
|
|
43
6
|
constructor(solidAuthSession) {
|
|
44
7
|
this.session = solidAuthSession;
|
|
45
8
|
}
|
|
46
9
|
// we created authSession getter because we want to access it as authn.authSession externally
|
|
47
10
|
get authSession() { return this.session; }
|
|
48
11
|
currentUser() {
|
|
49
|
-
const app =
|
|
12
|
+
const app = appContext();
|
|
50
13
|
if (app.viewingNoAuthPage) {
|
|
51
|
-
return
|
|
14
|
+
return sym(app.webId);
|
|
52
15
|
}
|
|
53
16
|
if (this && this.session && this.session.info && this.session.info.webId && this.session.info.isLoggedIn) {
|
|
54
|
-
return
|
|
17
|
+
return sym(this.session.info.webId);
|
|
55
18
|
}
|
|
56
|
-
return
|
|
19
|
+
return offlineTestID(); // null unless testing
|
|
57
20
|
}
|
|
58
21
|
/**
|
|
59
22
|
* Retrieves currently logged in webId from either
|
|
@@ -68,7 +31,7 @@ class SolidAuthnLogic {
|
|
|
68
31
|
if (preLoginRedirectHash) {
|
|
69
32
|
window.localStorage.setItem('preLoginRedirectHash', preLoginRedirectHash);
|
|
70
33
|
}
|
|
71
|
-
this.session.events.on(
|
|
34
|
+
this.session.events.on(EVENTS.SESSION_RESTORED, (url) => {
|
|
72
35
|
debug.log(`Session restored to ${url}`);
|
|
73
36
|
if (document.location.toString() !== url)
|
|
74
37
|
history.replaceState(null, '', url);
|
|
@@ -103,7 +66,7 @@ class SolidAuthnLogic {
|
|
|
103
66
|
window.localStorage.setItem('preLoginRedirectHash', '');
|
|
104
67
|
}
|
|
105
68
|
// Check to see if already logged in / have the WebID
|
|
106
|
-
let me =
|
|
69
|
+
let me = offlineTestID();
|
|
107
70
|
if (me) {
|
|
108
71
|
return Promise.resolve(setUserCallback ? setUserCallback(me) : me);
|
|
109
72
|
}
|
|
@@ -127,7 +90,7 @@ class SolidAuthnLogic {
|
|
|
127
90
|
let webIdUri;
|
|
128
91
|
if (webId) {
|
|
129
92
|
webIdUri = (typeof webId === 'string') ? webId : webId.uri;
|
|
130
|
-
const me =
|
|
93
|
+
const me = namedNode(webIdUri);
|
|
131
94
|
if (context) {
|
|
132
95
|
context.me = me;
|
|
133
96
|
}
|
|
@@ -139,9 +102,8 @@ class SolidAuthnLogic {
|
|
|
139
102
|
* @returns {Promise<string|null>} Resolves with WebID URI or null
|
|
140
103
|
*/
|
|
141
104
|
webIdFromSession(session) {
|
|
142
|
-
const webId = session
|
|
105
|
+
const webId = (session === null || session === void 0 ? void 0 : session.webId) && session.isLoggedIn ? session.webId : null;
|
|
143
106
|
return webId;
|
|
144
107
|
}
|
|
145
108
|
}
|
|
146
|
-
exports.SolidAuthnLogic = SolidAuthnLogic;
|
|
147
109
|
//# sourceMappingURL=SolidAuthnLogic.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SolidAuthnLogic.js","sourceRoot":"","sources":["../../src/authn/SolidAuthnLogic.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SolidAuthnLogic.js","sourceRoot":"","sources":["../../src/authn/SolidAuthnLogic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAa,GAAG,EAAE,MAAM,QAAQ,CAAA;AAClD,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AACtD,OAAO,KAAK,KAAK,MAAM,eAAe,CAAA;AACtC,OAAO,EAAE,MAAM,EAAW,MAAM,oCAAoC,CAAA;AAGpE,MAAM,OAAO,eAAe;IAG1B,YAAY,gBAAyB;QACnC,IAAI,CAAC,OAAO,GAAG,gBAAgB,CAAA;IACjC,CAAC;IAED,6FAA6F;IAC7F,IAAI,WAAW,KAAa,OAAO,IAAI,CAAC,OAAO,CAAA,CAAC,CAAC;IAEjD,WAAW;QACT,MAAM,GAAG,GAAG,UAAU,EAAE,CAAA;QACxB,IAAI,GAAG,CAAC,iBAAiB,EAAE,CAAC;YAC1B,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACvB,CAAC;QACD,IAAI,IAAI,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACzG,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QACrC,CAAC;QACD,OAAO,aAAa,EAAE,CAAA,CAAC,sBAAsB;IAC/C,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,SAAS,CACb,eAA6C;QAE7C,yCAAyC;QACzC,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAA;QAC/D,IAAI,oBAAoB,EAAE,CAAC;YACzB,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,sBAAsB,EAAE,oBAAoB,CAAC,CAAA;QAC3E,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC,GAAG,EAAE,EAAE;YACtD,KAAK,CAAC,GAAG,CAAC,uBAAuB,GAAG,EAAE,CAAC,CAAA;YACvC,IAAI,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,KAAK,GAAG;gBAAE,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,CAAA;QAC/E,CAAC,CAAC,CAAA;QAEF;;WAEG;QACH,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QACjD,WAAW,CAAC,IAAI,GAAG,EAAE,CAAA;QACrB,MAAM,IAAI,CAAC,OAAO;aACf,sBAAsB,CAAC;YACtB,sBAAsB,EAAE,IAAI;YAC5B,GAAG,EAAE,WAAW,CAAC,IAAI;SACtB,CAAC,CAAA;QAEJ,qDAAqD;QACrD,MAAM,qBAAqB,GAAG,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAA;QACjF,IAAI,qBAAqB,EAAE,CAAC;YAC1B,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;YAC5C,IAAI,MAAM,CAAC,IAAI,KAAK,qBAAqB,EAAE,CAAC;gBAC1C,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;oBACtB,2DAA2D;oBAC3D,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,QAAQ,CAAC,KAAK,EAAE,qBAAqB,CAAC,CAAA;gBAChE,CAAC;qBAAM,CAAC;oBACN,gEAAgE;oBAChE,QAAQ,CAAC,IAAI,GAAG,qBAAqB,CAAA;gBACvC,CAAC;gBACD,MAAM,CAAC,IAAI,GAAG,qBAAqB,CAAA;YACrC,CAAC;YACD,qHAAqH;YACrH,qHAAqH;YACrH,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,sBAAsB,EAAE,EAAE,CAAC,CAAA;QACzD,CAAC;QAED,qDAAqD;QACrD,IAAI,EAAE,GAAG,aAAa,EAAE,CAAA;QACxB,IAAI,EAAE,EAAE,CAAC;YACP,OAAO,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;QACpE,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QACtD,IAAI,KAAK,EAAE,CAAC;YACV,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QAC3B,CAAC;QAED,IAAI,EAAE,EAAE,CAAC;YACP,KAAK,CAAC,GAAG,CAAC,iBAAiB,EAAE,qBAAqB,CAAC,CAAA;QACrD,CAAC;QAED,OAAO,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;IACpE,CAAC;IAED;;;;;;OAMG;IACH,QAAQ,CACN,KAAgC,EAChC,OAA+B;QAE/B,IAAI,QAAgB,CAAA;QACpB,IAAI,KAAK,EAAE,CAAC;YACV,QAAQ,GAAG,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAA;YAC1D,MAAM,EAAE,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAA;YAC9B,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAO,CAAC,EAAE,GAAG,EAAE,CAAA;YACjB,CAAC;YACD,OAAO,EAAE,CAAA;QACX,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED;;OAEG;IACH,gBAAgB,CAAE,OAAiD;QACjE,MAAM,KAAK,GAAG,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,KAAI,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;QACzE,OAAO,KAAK,CAAA;IACd,CAAC;CAEF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authUtil.d.ts","sourceRoot":"","sources":["../../src/authn/authUtil.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAO,MAAM,QAAQ,CAAA;AAGvC;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"authUtil.d.ts","sourceRoot":"","sources":["../../src/authn/authUtil.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAO,MAAM,QAAQ,CAAA;AAGvC;;;;;GAKG;AACH,eAAO,MAAM,UAAU,QAAM,GAuB5B,CAAA;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,IAAK,SAAS,GAAG,IAAI,CAyBjD"}
|
package/dist/authn/authUtil.js
CHANGED
|
@@ -1,53 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
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 () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.appContext = void 0;
|
|
37
|
-
exports.offlineTestID = offlineTestID;
|
|
38
|
-
const rdflib_1 = require("rdflib");
|
|
39
|
-
const debug = __importStar(require("../util/debug"));
|
|
1
|
+
import { sym } from 'rdflib';
|
|
2
|
+
import * as debug from '../util/debug';
|
|
40
3
|
/**
|
|
41
4
|
* find a user or app's context as set in window.SolidAppContext
|
|
42
5
|
* this is a const, not a function, because we have problems to jest mock it otherwise
|
|
43
6
|
* see: https://github.com/facebook/jest/issues/936#issuecomment-545080082 for more
|
|
44
7
|
* @return {any} - an appContext object
|
|
45
8
|
*/
|
|
46
|
-
|
|
47
|
-
const appContext = () => {
|
|
48
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
9
|
+
export const appContext = () => {
|
|
49
10
|
let { SolidAppContext } = window;
|
|
50
|
-
SolidAppContext
|
|
11
|
+
SolidAppContext || (SolidAppContext = {});
|
|
51
12
|
SolidAppContext.viewingNoAuthPage = false;
|
|
52
13
|
if (SolidAppContext.noAuth && window.document) {
|
|
53
14
|
const currentPage = window.document.location.href;
|
|
@@ -69,7 +30,6 @@ const appContext = () => {
|
|
|
69
30
|
}
|
|
70
31
|
return SolidAppContext;
|
|
71
32
|
};
|
|
72
|
-
exports.appContext = appContext;
|
|
73
33
|
/**
|
|
74
34
|
* Returns `sym($SolidTestEnvironment.username)` if
|
|
75
35
|
* `$SolidTestEnvironment.username` is defined as a global
|
|
@@ -77,14 +37,13 @@ exports.appContext = appContext;
|
|
|
77
37
|
* returns testID defined in the HTML page
|
|
78
38
|
* @returns {NamedNode|null}
|
|
79
39
|
*/
|
|
80
|
-
function offlineTestID() {
|
|
81
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
40
|
+
export function offlineTestID() {
|
|
82
41
|
const { $SolidTestEnvironment } = window;
|
|
83
42
|
if (typeof $SolidTestEnvironment !== 'undefined' &&
|
|
84
43
|
$SolidTestEnvironment.username) {
|
|
85
44
|
// Test setup
|
|
86
45
|
debug.log('Assuming the user is ' + $SolidTestEnvironment.username);
|
|
87
|
-
return
|
|
46
|
+
return sym($SolidTestEnvironment.username);
|
|
88
47
|
}
|
|
89
48
|
// hack that makes SolidOS work in offline mode by adding the webId directly in html
|
|
90
49
|
// example usage: https://github.com/solidos/mashlib/blob/29b8b53c46bf02e0e219f0bacd51b0e9951001dd/test/contact/local.html#L37
|
|
@@ -98,7 +57,7 @@ function offlineTestID() {
|
|
|
98
57
|
if (!id)
|
|
99
58
|
return null;
|
|
100
59
|
debug.log('Assuming user is ' + id);
|
|
101
|
-
return
|
|
60
|
+
return sym(id);
|
|
102
61
|
}
|
|
103
62
|
return null;
|
|
104
63
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authUtil.js","sourceRoot":"","sources":["../../src/authn/authUtil.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"authUtil.js","sourceRoot":"","sources":["../../src/authn/authUtil.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,GAAG,EAAE,MAAM,QAAQ,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,eAAe,CAAA;AAEtC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,GAAO,EAAE;IAC/B,IAAI,EAAE,eAAe,EAAE,GAAQ,MAAM,CAAA;IACrC,eAAe,KAAf,eAAe,GAAK,EAAE,EAAA;IACtB,eAAe,CAAC,iBAAiB,GAAG,KAAK,CAAA;IACzC,IAAI,eAAe,CAAC,MAAM,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC5C,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAA;QACjD,IAAI,WAAW,CAAC,UAAU,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;YACrD,eAAe,CAAC,iBAAiB,GAAG,IAAI,CAAA;YACxC,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;YACnE,IAAI,MAAM,EAAE,CAAC;gBACT,IAAI,UAAU,GAAG,eAAe,CAAC,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAA;gBACvE,IAAI,UAAU,EAAE,CAAC;oBACjB,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC,CAAA;oBAClC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;wBACjD,MAAM,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;wBAClC,eAAe,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;wBAC5C,eAAe,CAAC,iBAAiB,GAAG,KAAK,CAAA;oBAC7C,CAAC;gBACD,CAAC;YACL,CAAC;QACD,CAAC;IACL,CAAC;IACD,OAAO,eAAe,CAAA;AAC1B,CAAC,CAAA;AAED;;;;;;GAMG;AACH,MAAM,UAAU,aAAa;IACzB,MAAM,EAAE,qBAAqB,EAAE,GAAQ,MAAM,CAAA;IAC7C,IACE,OAAO,qBAAqB,KAAK,WAAW;QAC5C,qBAAqB,CAAC,QAAQ,EAC9B,CAAC;QACD,aAAa;QACb,KAAK,CAAC,GAAG,CAAC,uBAAuB,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAA;QACnE,OAAO,GAAG,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAA;IAC5C,CAAC;IACD,oFAAoF;IACpF,8HAA8H;IAC9H,IACE,OAAO,QAAQ,KAAK,WAAW;QAC/B,QAAQ,CAAC,QAAQ;QACjB,CAAC,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,kBAAkB,EAC5D,CAAC;QACD,MAAM,GAAG,GAAG,QAAQ,CAAC,cAAc,CAAC,WAAW,CAAC,CAAA;QAChD,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAA;QACrB,MAAM,EAAE,GAAG,GAAG,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAA;QACrC,IAAI,CAAC,EAAE;YAAE,OAAO,IAAI,CAAA;QACpB,KAAK,CAAC,GAAG,CAAC,mBAAmB,GAAG,EAAE,CAAC,CAAA;QACnC,OAAO,GAAG,CAAC,EAAE,CAAC,CAAA;IAChB,CAAC;IACD,OAAO,IAAI,CAAA;AACf,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chatLogic.d.ts","sourceRoot":"","sources":["../../src/chat/chatLogic.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAA4C,MAAM,UAAU,CAAA;AAM9E,wBAAgB,eAAe,CAAC,KAAK,KAAA,EAAE,YAAY,KAAA,GAAG,SAAS,
|
|
1
|
+
{"version":3,"file":"chatLogic.d.ts","sourceRoot":"","sources":["../../src/chat/chatLogic.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAA4C,MAAM,UAAU,CAAA;AAM9E,wBAAgB,eAAe,CAAC,KAAK,KAAA,EAAE,YAAY,KAAA,GAAG,SAAS,CAyN9D"}
|
package/dist/chat/chatLogic.js
CHANGED
|
@@ -1,19 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const rdflib_1 = require("rdflib");
|
|
5
|
-
const ns_1 = require("../util/ns");
|
|
6
|
-
const utils_1 = require("../util/utils");
|
|
1
|
+
import { NamedNode, st, term } from 'rdflib';
|
|
2
|
+
import { ns as namespace } from '../util/ns';
|
|
3
|
+
import { determineChatContainer, newThing } from '../util/utils';
|
|
7
4
|
const CHAT_LOCATION_IN_CONTAINER = 'index.ttl#this';
|
|
8
|
-
function createChatLogic(store, profileLogic) {
|
|
9
|
-
const ns =
|
|
5
|
+
export function createChatLogic(store, profileLogic) {
|
|
6
|
+
const ns = namespace;
|
|
10
7
|
async function setAcl(chatContainer, me, invitee) {
|
|
11
8
|
// Some servers don't present a Link http response header
|
|
12
9
|
// if the container doesn't exist yet, so refetch the container
|
|
13
10
|
// now that it has been created:
|
|
14
11
|
await store.fetcher.load(chatContainer);
|
|
15
12
|
// FIXME: check the Why value on this quad:
|
|
16
|
-
const chatAclDoc = store.any(chatContainer, new
|
|
13
|
+
const chatAclDoc = store.any(chatContainer, new NamedNode('http://www.iana.org/assignments/link-relations/acl'));
|
|
17
14
|
if (!chatAclDoc) {
|
|
18
15
|
throw new Error('Chat ACL doc not found!');
|
|
19
16
|
}
|
|
@@ -46,11 +43,11 @@ function createChatLogic(store, profileLogic) {
|
|
|
46
43
|
throw new Error('Private type index not found!');
|
|
47
44
|
}
|
|
48
45
|
await store.fetcher.load(privateTypeIndex);
|
|
49
|
-
const reg =
|
|
46
|
+
const reg = newThing(privateTypeIndex);
|
|
50
47
|
const ins = [
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
48
|
+
st(reg, ns.rdf('type'), ns.solid('TypeRegistration'), privateTypeIndex.doc()),
|
|
49
|
+
st(reg, ns.solid('forClass'), ns.meeting('LongChat'), privateTypeIndex.doc()),
|
|
50
|
+
st(reg, ns.solid('instance'), chatThing, privateTypeIndex.doc()),
|
|
54
51
|
];
|
|
55
52
|
await new Promise((resolve, reject) => {
|
|
56
53
|
store.updater.update([], ins, function (_uri, ok, errm) {
|
|
@@ -66,11 +63,10 @@ function createChatLogic(store, profileLogic) {
|
|
|
66
63
|
async function findChat(invitee) {
|
|
67
64
|
const me = await profileLogic.loadMe();
|
|
68
65
|
const podRoot = await profileLogic.getPodRoot(me);
|
|
69
|
-
const chatContainer =
|
|
66
|
+
const chatContainer = determineChatContainer(invitee, podRoot);
|
|
70
67
|
let exists = true;
|
|
71
68
|
try {
|
|
72
|
-
await store.fetcher.load(new
|
|
73
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
69
|
+
await store.fetcher.load(new NamedNode(chatContainer.value + 'index.ttl#this'));
|
|
74
70
|
}
|
|
75
71
|
catch (e) {
|
|
76
72
|
exists = false;
|
|
@@ -96,12 +92,12 @@ function createChatLogic(store, profileLogic) {
|
|
|
96
92
|
const newChatDoc = newInstance.doc();
|
|
97
93
|
kb.add(newInstance, ns.rdf('type'), ns.meeting('LongChat'), newChatDoc);
|
|
98
94
|
kb.add(newInstance, ns.dc('title'), 'Chat channel', newChatDoc);
|
|
99
|
-
kb.add(newInstance, ns.dc('created'),
|
|
95
|
+
kb.add(newInstance, ns.dc('created'), term(new Date(Date.now())), newChatDoc);
|
|
100
96
|
if (newPaneOptions.me) {
|
|
101
97
|
kb.add(newInstance, ns.dc('author'), newPaneOptions.me, newChatDoc);
|
|
102
98
|
}
|
|
103
99
|
return new Promise(function (resolve, reject) {
|
|
104
|
-
updater
|
|
100
|
+
updater === null || updater === void 0 ? void 0 : updater.put(newChatDoc, kb.statementsMatching(undefined, undefined, undefined, newChatDoc), 'text/turtle', function (uri2, ok, message) {
|
|
105
101
|
if (ok) {
|
|
106
102
|
resolve({
|
|
107
103
|
...newPaneOptions,
|
|
@@ -123,7 +119,7 @@ function createChatLogic(store, profileLogic) {
|
|
|
123
119
|
async function getChat(invitee, createIfMissing = true) {
|
|
124
120
|
const { me, chatContainer, exists } = await findChat(invitee);
|
|
125
121
|
if (exists) {
|
|
126
|
-
return new
|
|
122
|
+
return new NamedNode(chatContainer.value + CHAT_LOCATION_IN_CONTAINER);
|
|
127
123
|
}
|
|
128
124
|
if (createIfMissing) {
|
|
129
125
|
const chatThing = await createChatThing(chatContainer, me);
|
|
@@ -135,6 +131,7 @@ function createChatLogic(store, profileLogic) {
|
|
|
135
131
|
return null;
|
|
136
132
|
}
|
|
137
133
|
async function sendInvite(invitee, chatThing) {
|
|
134
|
+
var _a;
|
|
138
135
|
await store.fetcher.load(invitee.doc());
|
|
139
136
|
const inviteeInbox = store.any(invitee, ns.ldp('inbox'), undefined, invitee.doc());
|
|
140
137
|
if (!inviteeInbox) {
|
|
@@ -144,13 +141,13 @@ function createChatLogic(store, profileLogic) {
|
|
|
144
141
|
<> a <http://www.w3.org/ns/pim/meeting#LongChatInvite> ;
|
|
145
142
|
${ns.rdf('seeAlso')} <${chatThing.value}> .
|
|
146
143
|
`;
|
|
147
|
-
const inviteResponse = await store.fetcher
|
|
144
|
+
const inviteResponse = await ((_a = store.fetcher) === null || _a === void 0 ? void 0 : _a.webOperation('POST', inviteeInbox.value, {
|
|
148
145
|
data: inviteBody,
|
|
149
146
|
contentType: 'text/turtle',
|
|
150
|
-
});
|
|
151
|
-
const locationStr = inviteResponse
|
|
147
|
+
}));
|
|
148
|
+
const locationStr = inviteResponse === null || inviteResponse === void 0 ? void 0 : inviteResponse.headers.get('location');
|
|
152
149
|
if (!locationStr) {
|
|
153
|
-
throw new Error(`Invite sending returned a ${inviteResponse
|
|
150
|
+
throw new Error(`Invite sending returned a ${inviteResponse === null || inviteResponse === void 0 ? void 0 : inviteResponse.status}`);
|
|
154
151
|
}
|
|
155
152
|
}
|
|
156
153
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chatLogic.js","sourceRoot":"","sources":["../../src/chat/chatLogic.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"chatLogic.js","sourceRoot":"","sources":["../../src/chat/chatLogic.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inboxLogic.d.ts","sourceRoot":"","sources":["../../src/inbox/inboxLogic.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"inboxLogic.d.ts","sourceRoot":"","sources":["../../src/inbox/inboxLogic.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAGrC,wBAAgB,gBAAgB,CAAC,KAAK,KAAA,EAAE,YAAY,KAAA,EAAE,YAAY,KAAA,EAAE,cAAc,KAAA,EAAE,QAAQ,KAAA,GAAG,UAAU,CAqDxG"}
|