@noeldemartin/solid-utils 0.1.1-next.7b4ae3cff8eddb646fb583cde8416341461a0f08 → 0.1.1-next.8987fd38d01bd74fdde315a5f60c5f95f5183cd2
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/.nvmrc +1 -1
- package/dist/noeldemartin-solid-utils.cjs.js +1 -1
- package/dist/noeldemartin-solid-utils.cjs.js.map +1 -1
- package/dist/noeldemartin-solid-utils.d.ts +79 -17
- package/dist/noeldemartin-solid-utils.esm.js +1 -1
- package/dist/noeldemartin-solid-utils.esm.js.map +1 -1
- package/dist/noeldemartin-solid-utils.umd.js +90 -0
- package/dist/noeldemartin-solid-utils.umd.js.map +1 -0
- package/package.json +11 -13
- package/src/errors/MalformedSolidDocumentError.ts +2 -2
- package/src/errors/NetworkRequestError.ts +5 -4
- package/src/errors/NotFoundError.ts +2 -2
- package/src/errors/UnauthorizedError.ts +2 -2
- package/src/errors/UnsuccessfulNetworkRequestError.ts +23 -0
- package/src/errors/index.ts +1 -0
- package/src/helpers/auth.ts +82 -16
- package/src/helpers/identifiers.ts +56 -0
- package/src/helpers/index.ts +2 -0
- package/src/helpers/interop.ts +68 -30
- package/src/helpers/io.ts +133 -66
- package/src/helpers/jsonld.ts +21 -1
- package/src/helpers/testing.ts +24 -25
- package/src/helpers/vocabs.ts +4 -2
- package/src/helpers/wac.ts +45 -0
- package/src/models/SolidDocument.ts +38 -37
- package/src/models/SolidStore.ts +61 -0
- package/src/models/index.ts +2 -1
- package/src/plugins/jest/matchers.ts +5 -7
- package/src/types/n3.d.ts +9 -0
|
@@ -11,13 +11,18 @@ declare global {
|
|
|
11
11
|
}
|
|
12
12
|
|
|
13
13
|
}
|
|
14
|
-
import {
|
|
14
|
+
import { JSError } from '@noeldemartin/utils';
|
|
15
|
+
import type { JSErrorOptions } from '@noeldemartin/utils';
|
|
15
16
|
import type { Quad } from 'rdf-js';
|
|
16
17
|
|
|
17
|
-
export declare type AnyFetch = (input: any, options?: any) => Promise<
|
|
18
|
+
export declare type AnyFetch = (input: any, options?: any) => Promise<Response>;
|
|
19
|
+
|
|
20
|
+
export declare function compactJsonLDGraph(jsonld: JsonLDGraph): Promise<JsonLDGraph>;
|
|
18
21
|
|
|
19
22
|
export declare function createPrivateTypeIndex(user: SolidUserProfile, fetch?: Fetch): Promise<string>;
|
|
20
23
|
|
|
24
|
+
export declare function createPublicTypeIndex(user: SolidUserProfile, fetch?: Fetch): Promise<string>;
|
|
25
|
+
|
|
21
26
|
export declare function createSolidDocument(url: string, body: string, fetch?: Fetch): Promise<SolidDocument>;
|
|
22
27
|
|
|
23
28
|
export declare function defineIRIPrefix(name: string, value: string): void;
|
|
@@ -42,7 +47,17 @@ export declare function fetchLoginUserProfile(loginUrl: string, fetch?: Fetch):
|
|
|
42
47
|
|
|
43
48
|
export declare function fetchSolidDocument(url: string, fetch?: Fetch): Promise<SolidDocument>;
|
|
44
49
|
|
|
45
|
-
export declare function
|
|
50
|
+
export declare function fetchSolidDocumentACL(documentUrl: string, fetch: Fetch): Promise<{
|
|
51
|
+
url: string;
|
|
52
|
+
effectiveUrl: string;
|
|
53
|
+
document: SolidDocument;
|
|
54
|
+
}>;
|
|
55
|
+
|
|
56
|
+
export declare function fetchSolidDocumentIfFound(url: string, fetch?: Fetch): Promise<SolidDocument | null>;
|
|
57
|
+
|
|
58
|
+
export declare function findContainerRegistrations(typeIndexUrl: string, type: string | string[], fetch?: Fetch): Promise<string[]>;
|
|
59
|
+
|
|
60
|
+
export declare function findInstanceRegistrations(typeIndexUrl: string, type: string | string[], fetch?: Fetch): Promise<string[]>;
|
|
46
61
|
|
|
47
62
|
export declare function installChaiPlugin(): void;
|
|
48
63
|
|
|
@@ -61,6 +76,7 @@ export declare type JsonLD = Partial<{
|
|
|
61
76
|
export declare function jsonldEquals(expected: JsonLD, actual: JsonLD): Promise<EqualityResult>;
|
|
62
77
|
|
|
63
78
|
export declare type JsonLDGraph = {
|
|
79
|
+
'@context'?: Record<string, unknown>;
|
|
64
80
|
'@graph': JsonLDResource[];
|
|
65
81
|
};
|
|
66
82
|
|
|
@@ -68,52 +84,64 @@ export declare type JsonLDResource = Omit<JsonLD, '@id'> & {
|
|
|
68
84
|
'@id': string;
|
|
69
85
|
};
|
|
70
86
|
|
|
71
|
-
export declare function jsonldToQuads(jsonld: JsonLD): Promise<Quad[]>;
|
|
87
|
+
export declare function jsonldToQuads(jsonld: JsonLD, baseIRI?: string): Promise<Quad[]>;
|
|
72
88
|
|
|
73
|
-
export declare class MalformedSolidDocumentError extends
|
|
89
|
+
export declare class MalformedSolidDocumentError extends JSError {
|
|
74
90
|
readonly documentUrl: string | null;
|
|
75
91
|
readonly documentFormat: SolidDocumentFormat;
|
|
76
92
|
readonly malformationDetails: string;
|
|
77
93
|
constructor(documentUrl: string | null, documentFormat: SolidDocumentFormat, malformationDetails: string);
|
|
78
94
|
}
|
|
79
95
|
|
|
80
|
-
export declare
|
|
96
|
+
export declare function mintJsonLDIdentifiers(jsonld: JsonLD): JsonLDResource;
|
|
97
|
+
|
|
98
|
+
export declare class NetworkRequestError extends JSError {
|
|
81
99
|
readonly url: string;
|
|
82
|
-
constructor(url: string);
|
|
100
|
+
constructor(url: string, options?: JSErrorOptions);
|
|
83
101
|
}
|
|
84
102
|
|
|
85
103
|
export declare function normalizeSparql(sparql: string): string;
|
|
86
104
|
|
|
87
|
-
export declare class NotFoundError extends
|
|
105
|
+
export declare class NotFoundError extends JSError {
|
|
88
106
|
readonly url: string;
|
|
89
107
|
constructor(url: string);
|
|
90
108
|
}
|
|
91
109
|
|
|
110
|
+
export declare function parseResourceSubject(subject: string): SubjectParts;
|
|
111
|
+
|
|
112
|
+
export declare function parseTurtle(turtle: string, options?: Partial<ParsingOptions>): Promise<RDFGraphData>;
|
|
113
|
+
|
|
92
114
|
export declare interface ParsingOptions {
|
|
93
|
-
|
|
115
|
+
baseIRI: string;
|
|
94
116
|
normalizeBlankNodes: boolean;
|
|
95
117
|
}
|
|
96
118
|
|
|
119
|
+
export declare function quadsToJsonLD(quads: Quad[]): Promise<JsonLDGraph>;
|
|
120
|
+
|
|
97
121
|
export declare function quadsToTurtle(quads: Quad[]): string;
|
|
98
122
|
|
|
99
123
|
export declare function quadToTurtle(quad: Quad): string;
|
|
100
124
|
|
|
101
125
|
export declare type RDFContext = Record<string, string>;
|
|
102
126
|
|
|
103
|
-
export declare
|
|
127
|
+
export declare interface RDFGraphData {
|
|
128
|
+
quads: Quad[];
|
|
129
|
+
containsRelativeIRIs: boolean;
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
export declare class SolidDocument extends SolidStore {
|
|
104
133
|
readonly url: string;
|
|
105
134
|
readonly headers: Headers;
|
|
106
|
-
private quads;
|
|
107
135
|
constructor(url: string, quads: Quad[], headers: Headers);
|
|
108
|
-
isEmpty(): boolean;
|
|
109
136
|
isPersonalProfile(): boolean;
|
|
110
137
|
isStorage(): boolean;
|
|
138
|
+
isUserWritable(): boolean;
|
|
139
|
+
getUserPermissions(): SolidDocumentPermission[];
|
|
140
|
+
getPublicPermissions(): SolidDocumentPermission[];
|
|
111
141
|
getLastModified(): Date | null;
|
|
112
|
-
|
|
113
|
-
statement(subject?: string, predicate?: string, object?: string): Quad | null;
|
|
114
|
-
contains(subject: string, predicate?: string, object?: string): boolean;
|
|
115
|
-
getThing(subject: string): SolidThing;
|
|
142
|
+
protected expandIRI(iri: string): string;
|
|
116
143
|
private getLatestDocumentDate;
|
|
144
|
+
private getPermissionsFromWAC;
|
|
117
145
|
}
|
|
118
146
|
|
|
119
147
|
export declare function solidDocumentExists(url: string, fetch?: Fetch): Promise<boolean>;
|
|
@@ -122,6 +150,26 @@ export declare enum SolidDocumentFormat {
|
|
|
122
150
|
Turtle = "Turtle"
|
|
123
151
|
}
|
|
124
152
|
|
|
153
|
+
export declare enum SolidDocumentPermission {
|
|
154
|
+
Read = "read",
|
|
155
|
+
Write = "write",
|
|
156
|
+
Append = "append",
|
|
157
|
+
Control = "control"
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
export declare class SolidStore {
|
|
161
|
+
private quads;
|
|
162
|
+
constructor(quads?: Quad[]);
|
|
163
|
+
isEmpty(): boolean;
|
|
164
|
+
getQuads(): Quad[];
|
|
165
|
+
addQuads(quads: Quad[]): void;
|
|
166
|
+
statements(subject?: string, predicate?: string, object?: string): Quad[];
|
|
167
|
+
statement(subject?: string, predicate?: string, object?: string): Quad | null;
|
|
168
|
+
contains(subject: string, predicate?: string, object?: string): boolean;
|
|
169
|
+
getThing(subject: string): SolidThing;
|
|
170
|
+
protected expandIRI(iri: string): string;
|
|
171
|
+
}
|
|
172
|
+
|
|
125
173
|
export declare class SolidThing {
|
|
126
174
|
readonly url: string;
|
|
127
175
|
private quads;
|
|
@@ -133,6 +181,8 @@ export declare class SolidThing {
|
|
|
133
181
|
export declare interface SolidUserProfile {
|
|
134
182
|
webId: string;
|
|
135
183
|
storageUrls: string[];
|
|
184
|
+
cloaked: boolean;
|
|
185
|
+
writableProfileUrl: string | null;
|
|
136
186
|
name?: string;
|
|
137
187
|
avatarUrl?: string;
|
|
138
188
|
oidcIssuerUrl?: string;
|
|
@@ -146,6 +196,12 @@ export declare function sparqlToQuads(sparql: string, options?: Partial<ParsingO
|
|
|
146
196
|
|
|
147
197
|
export declare function sparqlToQuadsSync(sparql: string, options?: Partial<ParsingOptions>): Record<string, Quad[]>;
|
|
148
198
|
|
|
199
|
+
export declare interface SubjectParts {
|
|
200
|
+
containerUrl?: string;
|
|
201
|
+
documentName?: string;
|
|
202
|
+
resourceHash?: string;
|
|
203
|
+
}
|
|
204
|
+
|
|
149
205
|
export declare function turtleEquals(expected: string, actual: string): EqualityResult;
|
|
150
206
|
|
|
151
207
|
export declare function turtleToQuads(turtle: string, options?: Partial<ParsingOptions>): Promise<Quad[]>;
|
|
@@ -154,13 +210,19 @@ export declare function turtleToQuadsSync(turtle: string, options?: Partial<Pars
|
|
|
154
210
|
|
|
155
211
|
export declare type TypedFetch = (input: RequestInfo, options?: RequestInit) => Promise<Response>;
|
|
156
212
|
|
|
157
|
-
export declare class UnauthorizedError extends
|
|
213
|
+
export declare class UnauthorizedError extends JSError {
|
|
158
214
|
readonly url: string;
|
|
159
215
|
readonly responseStatus?: number;
|
|
160
216
|
constructor(url: string, responseStatus?: number);
|
|
161
217
|
get forbidden(): boolean | undefined;
|
|
162
218
|
}
|
|
163
219
|
|
|
220
|
+
export declare class UnsuccessfulNetworkRequestError extends JSError {
|
|
221
|
+
response: Response;
|
|
222
|
+
constructor(response: Response);
|
|
223
|
+
constructor(message: string, response: Response);
|
|
224
|
+
}
|
|
225
|
+
|
|
164
226
|
export declare function updateSolidDocument(url: string, body: string, fetch?: Fetch): Promise<void>;
|
|
165
227
|
|
|
166
228
|
export { }
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import"core-js/modules/es.reflect.construct.js";import e from"@babel/runtime/helpers/esm/classCallCheck";import t from"@babel/runtime/helpers/esm/inherits";import r from"@babel/runtime/helpers/esm/possibleConstructorReturn";import n from"@babel/runtime/helpers/esm/getPrototypeOf";import"core-js/modules/es.array.concat.js";import{Error as o,parseDate as u,objectWithoutEmpty as s,arr as a,arrayFilter as c,arrayReplace as i,silenced as l,urlParentDirectory as f,urlRoute as p,urlRoot as d,uuid as m,pull as v,arrayRemove as h}from"@noeldemartin/utils";import y from"@babel/runtime/helpers/esm/createClass";import j from"@babel/runtime/helpers/esm/asyncToGenerator";import w from"@babel/runtime/regenerator";import"core-js/modules/es.array.map.js";import"core-js/modules/es.regexp.exec.js";import"core-js/modules/es.string.replace.js";import"core-js/modules/es.function.name.js";import"core-js/modules/es.array.from.js";import"core-js/modules/es.symbol.js";import"core-js/modules/es.symbol.description.js";import"core-js/modules/es.symbol.iterator.js";import b from"@babel/runtime/helpers/esm/toConsumableArray";import x from"@babel/runtime/helpers/esm/slicedToArray";import"core-js/modules/es.array.slice.js";import"core-js/modules/es.array.filter.js";import"core-js/modules/es.array.flat-map.js";import"core-js/modules/es.array.unscopables.flat-map.js";import"core-js/modules/es.array.iterator.js";import"core-js/modules/es.object.to-string.js";import"core-js/modules/es.set.js";import"core-js/modules/es.string.iterator.js";import"core-js/modules/esnext.set.add-all.js";import"core-js/modules/esnext.set.delete-all.js";import"core-js/modules/esnext.set.difference.js";import"core-js/modules/esnext.set.every.js";import"core-js/modules/esnext.set.filter.js";import"core-js/modules/esnext.set.find.js";import"core-js/modules/esnext.set.intersection.js";import"core-js/modules/esnext.set.is-disjoint-from.js";import"core-js/modules/esnext.set.is-subset-of.js";import"core-js/modules/esnext.set.is-superset-of.js";import"core-js/modules/esnext.set.join.js";import"core-js/modules/esnext.set.map.js";import"core-js/modules/esnext.set.reduce.js";import"core-js/modules/esnext.set.some.js";import"core-js/modules/esnext.set.symmetric-difference.js";import"core-js/modules/esnext.set.union.js";import"core-js/modules/web.dom-collections.iterator.js";import"core-js/modules/es.array.join.js";import"core-js/modules/es.object.entries.js";import"core-js/modules/es.string.match-all.js";import"core-js/modules/es.array.includes.js";import"core-js/modules/es.promise.js";import"core-js/modules/es.array.flat.js";import{Writer as g,Parser as k,BlankNode as E,Quad as T}from"n3";import{toRDF as R}from"jsonld";import A from"md5";import"core-js/modules/es.string.match.js";import"core-js/modules/es.array.find.js";import"core-js/modules/es.string.starts-with.js";import"core-js/modules/es.string.split.js";import"core-js/modules/es.regexp.constructor.js";import"core-js/modules/es.regexp.to-string.js";import"core-js/modules/es.object.keys.js";import"core-js/modules/web.dom-collections.for-each.js";function I(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var o,u=n(e);if(t){var s=n(this).constructor;o=Reflect.construct(u,arguments,s)}else o=u.apply(this,arguments);return r(this,o)}}var P;!function(e){e.Turtle="Turtle"}(P||(P={}));var S=function(r){t(MalformedSolidDocumentError,o);var n=I(MalformedSolidDocumentError);function MalformedSolidDocumentError(t,r,o){var u;return e(this,MalformedSolidDocumentError),(u=n.call(this,function(e,t,r){return e?"Malformed ".concat(t," document found at ").concat(e," - ").concat(r):"Malformed ".concat(t," document - ").concat(r)}(t,r,o))).documentUrl=t,u.documentFormat=r,u.malformationDetails=o,u}return MalformedSolidDocumentError}();function U(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var o,u=n(e);if(t){var s=n(this).constructor;o=Reflect.construct(u,arguments,s)}else o=u.apply(this,arguments);return r(this,o)}}var q=function(r){t(NetworkRequestError,o);var n=U(NetworkRequestError);function NetworkRequestError(t){var r;return e(this,NetworkRequestError),(r=n.call(this,"Request failed trying to fetch ".concat(t))).url=t,r}return NetworkRequestError}();function D(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var o,u=n(e);if(t){var s=n(this).constructor;o=Reflect.construct(u,arguments,s)}else o=u.apply(this,arguments);return r(this,o)}}var N=function(r){t(NotFoundError,o);var n=D(NotFoundError);function NotFoundError(t){var r;return e(this,NotFoundError),(r=n.call(this,"Document with '".concat(t,"' url not found"))).url=t,r}return NotFoundError}();function B(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var o,u=n(e);if(t){var s=n(this).constructor;o=Reflect.construct(u,arguments,s)}else o=u.apply(this,arguments);return r(this,o)}}var C=function(r){t(UnauthorizedError,o);var n=B(UnauthorizedError);function UnauthorizedError(t,r){var o;return e(this,UnauthorizedError),(o=n.call(this,function(e,t){return"Unauthorized".concat(403===t?" (Forbidden)":"",": ").concat(e)}(t,r))).url=t,o.responseStatus=r,o}return y(UnauthorizedError,[{key:"forbidden",get:function(){return void 0!==this.responseStatus?403===this.responseStatus:void 0}}]),UnauthorizedError}(),O={foaf:"http://xmlns.com/foaf/0.1/",pim:"http://www.w3.org/ns/pim/space#",purl:"http://purl.org/dc/terms/",rdfs:"http://www.w3.org/1999/02/22-rdf-syntax-ns#",schema:"https://schema.org/",solid:"http://www.w3.org/ns/solid/terms#",vcard:"http://www.w3.org/2006/vcard/ns#"};function z(e,t){O[e]=t}function M(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(e.startsWith("http"))return e;var r=e.split(":"),n=x(r,2),o=n[0],u=n[1];if(u){var s,a,c,i=null!==(s=null!==(a=O[o])&&void 0!==a?a:null===(c=t.extraContext)||void 0===c?void 0:c[o])&&void 0!==s?s:null;if(!i)throw new Error("Can't expand IRI with unknown prefix: '".concat(e,"'"));return i+u}if(!t.defaultPrefix)throw new Error("Can't expand IRI without a default prefix: '".concat(e,"'"));return t.defaultPrefix+o}var L=function(){function t(r,n){e(this,t),this.url=r,this.quads=n}return y(t,[{key:"value",value:function(e){var t;return null===(t=this.quads.find((function(t){return t.predicate.value===M(e)})))||void 0===t?void 0:t.object.value}},{key:"values",value:function(e){return this.quads.filter((function(t){return t.predicate.value===M(e)})).map((function(e){return e.object.value}))}}]),t}(),F=function(){function t(r,n,o){e(this,t),this.url=r,this.quads=n,this.headers=o}return y(t,[{key:"isEmpty",value:function(){return 0===this.statements.length}},{key:"isPersonalProfile",value:function(){return!!this.statement(this.url,M("rdfs:type"),M("foaf:PersonalProfileDocument"))}},{key:"isStorage",value:function(){var e;return!(null===(e=this.headers.get("Link"))||void 0===e||!e.match(/<http:\/\/www\.w3\.org\/ns\/pim\/space#Storage>;[^,]+rel="type"/))}},{key:"getLastModified",value:function(){var e,t,r,n;return null!==(e=null!==(t=null!==(r=u(this.headers.get("last-modified")))&&void 0!==r?r:u(null===(n=this.statement(this.url,"purl:modified"))||void 0===n?void 0:n.object.value))&&void 0!==t?t:this.getLatestDocumentDate())&&void 0!==e?e:null}},{key:"statements",value:function(e,t,r){var n=this;return this.quads.filter((function(o){return!(r&&o.object.value!==M(r,{defaultPrefix:n.url})||e&&o.subject.value!==M(e,{defaultPrefix:n.url})||t&&o.predicate.value!==M(t,{defaultPrefix:n.url}))}))}},{key:"statement",value:function(e,t,r){var n=this,o=this.quads.find((function(o){return!(r&&o.object.value!==M(r,{defaultPrefix:n.url})||e&&o.subject.value!==M(e,{defaultPrefix:n.url})||t&&o.predicate.value!==M(t,{defaultPrefix:n.url}))}));return null!=o?o:null}},{key:"contains",value:function(e,t,r){return null!==this.statement(e,t,r)}},{key:"getThing",value:function(e){var t=this.statements(e);return new L(e,t)}},{key:"getLatestDocumentDate",value:function(){var e=[].concat(b(this.statements(void 0,"purl:modified")),b(this.statements(void 0,"purl:created"))).map((function(e){return u(e.object.value)})).filter((function(e){return null!==e}));return e.length>0?e.reduce((function(e,t){return e>t?e:t})):null}}]),t}();function Q(e){return"@graph"in e}function $(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=function(e,t){if(!e)return;if("string"==typeof e)return H(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return H(e,t)}(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var u,s=!0,a=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return s=e.done,e},e:function(e){a=!0,u=e},f:function(){try{s||null==r.return||r.return()}finally{if(a)throw u}}}}function H(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function J(e,t){return _.apply(this,arguments)}function _(){return(_=j(w.mark((function e(t,r){var n,o,u;return w.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n={headers:{Accept:"text/turtle"}},e.prev=1,e.next=4,r(t,n);case 4:if(404!==(o=e.sent).status){e.next=7;break}throw new N(t);case 7:if(![401,403].includes(o.status)){e.next=9;break}throw new C(t,o.status);case 9:return e.next=11,o.text();case 11:return u=e.sent,e.abrupt("return",{body:u,headers:o.headers});case 15:if(e.prev=15,e.t0=e.catch(1),!(e.t0 instanceof C)){e.next=19;break}throw e.t0;case 19:throw new q(t);case 20:case"end":return e.stop()}}),e,null,[[1,15]])})))).apply(this,arguments)}function G(e){var t,r=e.slice(0),n={},o=a(e).flatMap((function(e,t){var r,o=c(["BlankNode"===e.object.termType?e.object.value:null,"BlankNode"===e.subject.termType?e.subject.value:null]),u=$(o);try{for(u.s();!(r=u.n()).done;){var s,a=r.value;n[a]=null!==(s=n[a])&&void 0!==s?s:new Set,n[a].add(t)}}catch(e){u.e(e)}finally{u.f()}return o})).filter().unique(),u=$(o);try{var s=function(){var o,u=t.value,s=A(a(n[u]).map((function(t){return e[t]})).filter((function(e){var t=e.subject,r=t.termType,n=t.value;return"BlankNode"===r&&n===u})).map((function(e){var t=e.predicate,r=e.object;return"BlankNode"===r.termType?t.value:t.value+r.value})).sorted().join()),c=$(n[u]);try{for(c.s();!(o=c.n()).done;){for(var l=o.value,f=r[l],p={subject:f.subject,object:f.object},d=0,m=Object.entries(p);d<m.length;d++){var v=x(m[d],2),h=v[0],y=v[1];"BlankNode"===y.termType&&y.value===u&&(p[h]=new E(s))}i(r,f,new T(p.subject,f.predicate,p.object))}}catch(e){c.e(e)}finally{c.f()}};for(u.s();!(t=u.n()).done;)s()}catch(e){u.e(e)}finally{u.f()}return r}function W(e,t,r){return X.apply(this,arguments)}function X(){return(X=j(w.mark((function e(t,r,n){var o,u;return w.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=null!==(o=n)&&void 0!==o?o:window.fetch,e.next=3,ce(r);case 3:return u=e.sent,e.next=6,n(t,{method:"PUT",headers:{"Content-Type":"text/turtle"},body:r});case 6:return e.abrupt("return",new F(t,u,new Headers({})));case 7:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function K(e,t){return V.apply(this,arguments)}function V(){return(V=j(w.mark((function e(t,r){var n,o,u,s;return w.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,J(t,null!=r?r:window.fetch);case 2:return n=e.sent,o=n.body,u=n.headers,e.next=7,ce(o,{documentUrl:t});case 7:return s=e.sent,e.abrupt("return",new F(t,s,u));case 9:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Y(e){return Z.apply(this,arguments)}function Z(){return(Z=j(w.mark((function e(t){var r;return w.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!Q(t)){e.next=5;break}return e.next=3,Promise.all(t["@graph"].map(Y));case 3:return r=e.sent,e.abrupt("return",r.flat());case 5:return e.abrupt("return",R(t));case 6:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ee(e){var t=ae(e);return Object.entries(t).reduce((function(e,t){var r=x(t,2),n=r[0],o=r[1].map((function(e){return" "+re(e)})).sort().join("\n");return e.concat("".concat(n.toUpperCase()," DATA {\n").concat(o,"\n}"))}),[]).join(" ;\n")}function te(e){return(new g).quadsToString(e)}function re(e){return(new g).quadsToString([e]).slice(0,-1)}function ne(e,t){return oe.apply(this,arguments)}function oe(){return(oe=j(w.mark((function e(t,r){var n;return w.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,K(t,r);case 3:return n=e.sent,e.abrupt("return",!n.isEmpty());case 7:return e.prev=7,e.t0=e.catch(0),e.abrupt("return",!1);case 10:case"end":return e.stop()}}),e,null,[[0,7]])})))).apply(this,arguments)}function ue(e){return se.apply(this,arguments)}function se(){return(se=j(w.mark((function e(t){var r,n,o,u=arguments;return w.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=u.length>1&&void 0!==u[1]?u[1]:{},n=t.matchAll(/(\w+) DATA {([^}]+)}/g),o={},e.next=5,Promise.all(b(n).map(function(){var e=j(w.mark((function e(t){var n,u;return w.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t[1].toLowerCase(),u=t[2],e.next=4,ce(u,r);case 4:o[n]=e.sent;case 5:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()));case 5:return e.abrupt("return",o);case 6:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ae(e){var t,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=e.matchAll(/(\w+) DATA {([^}]+)}/g),o={},u=$(n);try{for(u.s();!(t=u.n()).done;){var s=t.value,a=s[1].toLowerCase(),c=s[2];o[a]=le(c,r)}}catch(e){u.e(e)}finally{u.f()}return o}function ce(e){return ie.apply(this,arguments)}function ie(){return(ie=j(w.mark((function e(t){var r,n,o,u,a=arguments;return w.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=a.length>1&&void 0!==a[1]?a[1]:{},n=s({baseIRI:r.documentUrl}),o=new k(n),u=[],e.abrupt("return",new Promise((function(e,n){o.parse(t,(function(t,o){var s;t?n(new S(null!==(s=r.documentUrl)&&void 0!==s?s:null,P.Turtle,t.message)):o?u.push(o):r.normalizeBlankNodes?e(G(u)):e(u)}))})));case 5:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function le(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=s({baseIRI:t.documentUrl}),n=new k(r);try{var o=n.parse(e);return t.normalizeBlankNodes?G(o):o}catch(e){var u;throw new S(null!==(u=t.documentUrl)&&void 0!==u?u:null,P.Turtle,e.message)}}function fe(e,t,r){return pe.apply(this,arguments)}function pe(){return(pe=j(w.mark((function e(t,r,n){var o;return w.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=null!==(o=n)&&void 0!==o?o:window.fetch,e.next=3,n(t,{method:"PATCH",headers:{"Content-Type":"application/sparql-update"},body:r});case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function de(e,t){return me.apply(this,arguments)}function me(){return(me=j(w.mark((function e(t,r){var n,o,u,a,c,i,d,m,v,h,y,j,b,x;return w.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return m=p(t),e.next=3,K(m,r);case 3:if((v=e.sent).isPersonalProfile()){e.next=6;break}throw new Error("Document at ".concat(m," is not a profile."));case 6:h=v.statements(t,"pim:storage").map((function(e){return e.object.value})),y=v.statement(t,"solid:publicTypeIndex"),j=v.statement(t,"solid:privateTypeIndex"),b=f(m);case 10:if(!b||0!==h.length){e.next=20;break}return e.next=13,l(K(b,r));case 13:if(null==(x=e.sent)||!x.isStorage()){e.next=17;break}return h.push(b),e.abrupt("break",20);case 17:b=f(b),e.next=10;break;case 20:return e.abrupt("return",s({webId:t,storageUrls:h,name:null!==(n=null===(o=v.statement(t,"vcard:fn"))||void 0===o?void 0:o.object.value)&&void 0!==n?n:null===(u=v.statement(t,"foaf:name"))||void 0===u?void 0:u.object.value,avatarUrl:null!==(a=null===(c=v.statement(t,"vcard:hasPhoto"))||void 0===c?void 0:c.object.value)&&void 0!==a?a:null===(i=v.statement(t,"foaf:img"))||void 0===i?void 0:i.object.value,oidcIssuerUrl:null===(d=v.statement(t,"solid:oidcIssuer"))||void 0===d?void 0:d.object.value,publicTypeIndexUrl:null==y?void 0:y.object.value,privateTypeIndexUrl:null==j?void 0:j.object.value}));case 21:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ve(e,t){return he.apply(this,arguments)}function he(){return(he=j(w.mark((function e(t,r){var n,o,u;return w.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return u=l((function(e){return de(e,r)})),e.next=3,u(t);case 3:if(e.t2=o=e.sent,e.t1=null!==e.t2,!e.t1){e.next=7;break}e.t1=void 0!==o;case 7:if(!e.t1){e.next=11;break}e.t3=o,e.next=14;break;case 11:return e.next=13,u(t.replace(/\/$/,"").concat("/profile/card#me"));case 13:e.t3=e.sent;case 14:if(e.t4=n=e.t3,e.t0=null!==e.t4,!e.t0){e.next=18;break}e.t0=void 0!==n;case 18:if(!e.t0){e.next=22;break}e.t5=n,e.next=25;break;case 22:return e.next=24,u(d(t).concat("/profile/card#me"));case 24:e.t5=e.sent;case 25:return e.abrupt("return",e.t5);case 26:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ye(e,t){return je.apply(this,arguments)}function je(){return(je=j(w.mark((function e(t,r){var n,o,u;return w.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=null!==(n=r)&&void 0!==n?n:window.fetch,o=t.storageUrls[0],u="".concat(o,"settings/privateTypeIndex"),e.next=5,ne(u,r);case 5:if(!e.sent){e.next=9;break}e.t0="".concat(o,"settings/privateTypeIndex-").concat(m()),e.next=10;break;case 9:e.t0=u;case 10:return e.abrupt("return",e.t0);case 11:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function we(e,t){return be.apply(this,arguments)}function be(){return(be=j(w.mark((function e(t,r){var n,o,u;return w.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=null!==(n=r)&&void 0!==n?n:window.fetch,e.next=3,ye(t,r);case 3:return o=e.sent,"\n <> a\n <http://www.w3.org/ns/solid/terms#TypeIndex>,\n <http://www.w3.org/ns/solid/terms#UnlistedDocument> .\n ",u="\n INSERT DATA {\n <".concat(t.webId,"> <http://www.w3.org/ns/solid/terms#privateTypeIndex> <").concat(o,"> .\n }\n "),W(o,"\n <> a\n <http://www.w3.org/ns/solid/terms#TypeIndex>,\n <http://www.w3.org/ns/solid/terms#UnlistedDocument> .\n ",r),fe(t.webId,u,r),e.abrupt("return",o);case 9:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function xe(e,t,r){return ge.apply(this,arguments)}function ge(){return(ge=j(w.mark((function e(t,r,n){var o,u,s;return w.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,K(t,n);case 2:return u=e.sent,s=u.statements(void 0,"rdfs:type","solid:TypeRegistration").find((function(e){return u.contains(e.subject.value,"solid:forClass",r)&&u.contains(e.subject.value,"solid:instanceContainer")})),e.abrupt("return",s&&null!==(o=u.getThing(s.subject.value))&&void 0!==o?o:null);case 5:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ke(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=function(e,t){if(!e)return;if("string"==typeof e)return Ee(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return Ee(e,t)}(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var u,s=!0,a=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return s=e.done,e},e:function(e){a=!0,u=e},f:function(){try{s||null==r.return||r.return()}finally{if(a)throw u}}}}function Ee(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function Te(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var o,u=n(e);if(t){var s=n(this).constructor;o=Reflect.construct(u,arguments,s)}else o=u.apply(this,arguments);return r(this,o)}}var Re={},Ae={"%uuid%":"[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}"},Ie=function(r){t(ExpectedQuadAssertionError,o);var n=Te(ExpectedQuadAssertionError);function ExpectedQuadAssertionError(t){var r;return e(this,ExpectedQuadAssertionError),(r=n.call(this,"Couldn't find the following triple: ".concat(re(t)))).expectedQuad=t,r}return ExpectedQuadAssertionError}();function Pe(e,t){var r,n=ke(e);try{var o=function(){var e=r.value,n=t.find((function(t){return n=t,function(e,t){if(e.termType!==t.termType)return!1;if("Literal"===e.termType&&"Literal"===t.termType){if(e.datatype.value!==t.datatype.value)return!1;if(!Se(e.value))return"http://www.w3.org/2001/XMLSchema#dateTime"===e.datatype.value?new Date(e.value).getTime()===new Date(t.value).getTime():e.value===t.value}return Ue(e.value,t.value)}((r=e).object,n.object)&&Ue(r.subject.value,n.subject.value)&&Ue(r.predicate.value,n.predicate.value);var r,n}));if(!n)throw new Ie(e);h(t,n)};for(n.s();!(r=n.n()).done;)o()}catch(e){n.e(e)}finally{n.f()}}function Se(e){return/\[\[(.*\]\[)?([^\]]+)\]\]/.test(e)}function Ue(e,t){if(!Se(e))return e===t;var r=[];if(!(e in Re)){var n,o=e.matchAll(/\[\[((.*?)\]\[)?([^\]]+)\]\]/g),u=[],s=e,a=ke(o);try{for(a.s();!(n=a.n()).done;){var c=n.value;c[2]&&r.push(c[2]),u.push(c[3]),s=s.replace(c[0],"%PATTERN".concat(u.length-1,"%"))}}catch(e){a.e(e)}finally{a.f()}s=s.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");for(var i=0,l=Object.entries(u);i<l.length;i++){var f,p=x(l[i],2),d=p[0],m=p[1];s=s.replace("%PATTERN".concat(d,"%"),null!==(f=Ae[m])&&void 0!==f?f:m)}Re[e]=new RegExp(s)}return Re[e].test(t)}function qe(){Re={}}function De(e,t){return Ne.apply(this,arguments)}function Ne(){return(Ne=j(w.mark((function e(t,r){var n,o,u,s,a;return w.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return qe(),e.next=3,Y(t);case 3:return n=e.sent,e.next=6,Y(r);case 6:if(o=e.sent,u=te(n),s=te(o),a=function(e,t){return{success:e,message:t,expected:u,actual:s}},n.length===o.length){e.next=12;break}return e.abrupt("return",a(!1,"Expected ".concat(n.length," triples, found ").concat(o.length,".")));case 12:e.prev=12,Pe(n,o),e.next=21;break;case 16:if(e.prev=16,e.t0=e.catch(12),e.t0 instanceof Ie){e.next=20;break}throw e.t0;case 20:return e.abrupt("return",a(!1,e.t0.message));case 21:return e.abrupt("return",a(!0,"jsonld matches"));case 22:case"end":return e.stop()}}),e,null,[[12,16]])})))).apply(this,arguments)}function Be(e,t){var r;qe();for(var n=ae(e,{normalizeBlankNodes:!0}),o=ae(t,{normalizeBlankNodes:!0}),u=function(r,n){return{success:r,message:n,expected:e,actual:t}},s=0,a=Object.keys(n);s<a.length;s++){var c=a[s];if(!(c in o))return u(!1,"Couldn't find expected ".concat(c," operation."));var i=v(n,c),l=v(o,c);if(i.length!==l.length)return u(!1,"Expected ".concat(i.length," ").concat(c," triples, found ").concat(l.length,"."));try{Pe(i,l)}catch(e){if(!(e instanceof Ie))throw e;return u(!1,"Couldn't find the following ".concat(c," triple: ").concat(re(e.expectedQuad)))}}var f=null!==(r=Object.keys(o)[0])&&void 0!==r?r:null;return f?u(!1,"Did not expect to find ".concat(f," triples.")):u(!0,"sparql matches")}function Ce(e,t){qe();var r=le(e,{normalizeBlankNodes:!0}),n=le(t,{normalizeBlankNodes:!0}),o=function(r,n){return{success:r,message:n,expected:e,actual:t}};if(r.length!==n.length)return o(!1,"Expected ".concat(r.length," triples, found ").concat(n.length,"."));try{Pe(r,n)}catch(e){if(!(e instanceof Ie))throw e;return o(!1,e.message)}return o(!0,"turtle matches")}var Oe={turtle:function(e){var t=this._obj,r=this.assert.bind(this),n=Ce(e,t);r(n.success,n.message,"",n.expected,n.actual)},sparql:function(e){var t=this._obj,r=this.assert.bind(this),n=Be(e,t);r(n.success,n.message,"",n.expected,n.actual)}};function ze(){chai.use((function(e){return Object.entries(Oe).forEach((function(t){var r=x(t,2),n=r[0],o=r[1];return e.Assertion.addMethod(n,o)}))}))}function Me(e,t){var r=e.success,n=t.context.utils;return{pass:r,message:r?function(){return[e.message,n.matcherHint(t.hint),["Expected: not ".concat(n.printExpected(t.expected)),"Received: ".concat(n.printReceived(t.received))].join("\n")].join("\n\n")}:function(){return[e.message,n.matcherHint(t.hint)].join("\n\n")}}}var Le={toEqualJsonLD:function(e,t){var r=this;return j(w.mark((function n(){var o;return w.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,De(t,e);case 2:return o=n.sent,n.abrupt("return",Me(o,{context:r,hint:"toEqualJsonLD",expected:t,received:e}));case 4:case"end":return n.stop()}}),n)})))()},toEqualSparql:function(e,t){return Me(Be(t,e),{context:this,hint:"toEqualSparql",expected:ee(t),received:ee(e)})}};function Fe(){expect.extend(Le)}export{S as MalformedSolidDocumentError,q as NetworkRequestError,N as NotFoundError,F as SolidDocument,P as SolidDocumentFormat,L as SolidThing,C as UnauthorizedError,we as createPrivateTypeIndex,W as createSolidDocument,z as defineIRIPrefix,M as expandIRI,ve as fetchLoginUserProfile,K as fetchSolidDocument,xe as findContainerRegistration,ze as installChaiPlugin,Fe as installJestPlugin,Q as isJsonLDGraph,De as jsonldEquals,Y as jsonldToQuads,ee as normalizeSparql,re as quadToTurtle,te as quadsToTurtle,ne as solidDocumentExists,Be as sparqlEquals,ue as sparqlToQuads,ae as sparqlToQuadsSync,Ce as turtleEquals,ce as turtleToQuads,le as turtleToQuadsSync,fe as updateSolidDocument};
|
|
1
|
+
import"core-js/modules/es.object.to-string.js";import"core-js/modules/es.reflect.to-string-tag.js";import"core-js/modules/es.reflect.construct.js";import e from"@babel/runtime/helpers/esm/classCallCheck";import t from"@babel/runtime/helpers/esm/assertThisInitialized";import r from"@babel/runtime/helpers/esm/inherits";import n from"@babel/runtime/helpers/esm/possibleConstructorReturn";import o from"@babel/runtime/helpers/esm/getPrototypeOf";import s from"@babel/runtime/helpers/esm/defineProperty";import"core-js/modules/es.array.concat.js";import{JSError as u,parseDate as a,stringMatch as c,arrayFilter as i,objectWithoutEmpty as l,stringMatchAll as f,arr as p,tap as d,arrayReplace as m,urlRoot as v,silenced as h,urlParentDirectory as y,urlRoute as b,objectDeepClone as j,urlParse as w,uuid as x,isObject as g,isArray as k,pull as R,arrayRemove as I,urlResolve as E,requireUrlParentDirectory as P}from"@noeldemartin/utils";import T from"@babel/runtime/helpers/esm/createClass";import"core-js/modules/es.object.keys.js";import"core-js/modules/es.symbol.js";import"core-js/modules/es.array.filter.js";import"core-js/modules/esnext.async-iterator.filter.js";import"core-js/modules/esnext.iterator.filter.js";import"core-js/modules/es.object.get-own-property-descriptor.js";import"core-js/modules/es.object.get-own-property-descriptors.js";import A from"@babel/runtime/helpers/esm/slicedToArray";import O from"@babel/runtime/helpers/esm/asyncToGenerator";import q from"@babel/runtime/regenerator";import"core-js/modules/esnext.async-iterator.for-each.js";import"core-js/modules/esnext.iterator.constructor.js";import"core-js/modules/esnext.iterator.for-each.js";import"core-js/modules/web.dom-collections.for-each.js";import"core-js/modules/es.array.map.js";import"core-js/modules/esnext.async-iterator.map.js";import"core-js/modules/esnext.iterator.map.js";import"core-js/modules/es.object.entries.js";import"core-js/modules/esnext.async-iterator.some.js";import"core-js/modules/esnext.iterator.some.js";import"core-js/modules/es.object.values.js";import"core-js/modules/es.array.find.js";import"core-js/modules/esnext.async-iterator.find.js";import"core-js/modules/esnext.iterator.find.js";import"core-js/modules/es.regexp.exec.js";import"core-js/modules/es.string.replace.js";import U from"@babel/runtime/helpers/esm/toConsumableArray";import"core-js/modules/es.array.slice.js";import"core-js/modules/es.string.starts-with.js";import"core-js/modules/es.string.split.js";import"core-js/modules/es.function.name.js";import"core-js/modules/es.array.from.js";import"core-js/modules/es.regexp.test.js";import"core-js/modules/es.symbol.description.js";import"core-js/modules/es.symbol.iterator.js";import"core-js/modules/es.array.flat-map.js";import"core-js/modules/es.array.unscopables.flat-map.js";import"core-js/modules/esnext.async-iterator.flat-map.js";import"core-js/modules/esnext.iterator.flat-map.js";import"core-js/modules/es.array.iterator.js";import"core-js/modules/es.set.js";import"core-js/modules/es.string.iterator.js";import"core-js/modules/esnext.set.add-all.js";import"core-js/modules/esnext.set.delete-all.js";import"core-js/modules/esnext.set.difference.js";import"core-js/modules/esnext.set.every.js";import"core-js/modules/esnext.set.filter.js";import"core-js/modules/esnext.set.find.js";import"core-js/modules/esnext.set.intersection.js";import"core-js/modules/esnext.set.is-disjoint-from.js";import"core-js/modules/esnext.set.is-subset-of.js";import"core-js/modules/esnext.set.is-superset-of.js";import"core-js/modules/esnext.set.join.js";import"core-js/modules/esnext.set.map.js";import"core-js/modules/esnext.set.reduce.js";import"core-js/modules/esnext.set.some.js";import"core-js/modules/esnext.set.symmetric-difference.js";import"core-js/modules/esnext.set.union.js";import"core-js/modules/web.dom-collections.iterator.js";import"core-js/modules/es.array.join.js";import"core-js/modules/esnext.async-iterator.reduce.js";import"core-js/modules/esnext.iterator.reduce.js";import"core-js/modules/es.array.sort.js";import"core-js/modules/es.promise.js";import"core-js/modules/es.array.includes.js";import"core-js/modules/es.array.flat.js";import"core-js/modules/es.array.unscopables.flat.js";import S from"md5";import{compactJsonLD as C,jsonLDToRDF as D,TurtleParser as N,jsonLDFromRDF as B,TurtleWriter as z,createBlankNode as L,createQuad as M}from"@noeldemartin/solid-utils-external";import"core-js/modules/es.string.match.js";import"core-js/modules/es.string.includes.js";import"core-js/modules/es.regexp.constructor.js";import"core-js/modules/es.regexp.sticky.js";import"core-js/modules/es.regexp.to-string.js";function Q(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var r,s=o(e);if(t){var u=o(this).constructor;r=Reflect.construct(s,arguments,u)}else r=s.apply(this,arguments);return n(this,r)}}var W;!function(e){e.Turtle="Turtle"}(W||(W={}));var F=function(n){r(MalformedSolidDocumentError,u);var o=Q(MalformedSolidDocumentError);function MalformedSolidDocumentError(r,n,u){var a;return e(this,MalformedSolidDocumentError),a=o.call(this,function(e,t,r){return e?"Malformed ".concat(t," document found at ").concat(e," - ").concat(r):"Malformed ".concat(t," document - ").concat(r)}(r,n,u)),s(t(a),"documentUrl",void 0),s(t(a),"documentFormat",void 0),s(t(a),"malformationDetails",void 0),a.documentUrl=r,a.documentFormat=n,a.malformationDetails=u,a}return MalformedSolidDocumentError}();function H(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var r,s=o(e);if(t){var u=o(this).constructor;r=Reflect.construct(s,arguments,u)}else r=s.apply(this,arguments);return n(this,r)}}var $=function(n){r(NetworkRequestError,u);var o=H(NetworkRequestError);function NetworkRequestError(r,n){var u;return e(this,NetworkRequestError),u=o.call(this,"Request failed trying to fetch ".concat(r),n),s(t(u),"url",void 0),u.url=r,u}return NetworkRequestError}();function _(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var r,s=o(e);if(t){var u=o(this).constructor;r=Reflect.construct(s,arguments,u)}else r=s.apply(this,arguments);return n(this,r)}}var J=function(n){r(NotFoundError,u);var o=_(NotFoundError);function NotFoundError(r){var n;return e(this,NotFoundError),n=o.call(this,"Document with '".concat(r,"' url not found")),s(t(n),"url",void 0),n.url=r,n}return NotFoundError}();function G(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var r,s=o(e);if(t){var u=o(this).constructor;r=Reflect.construct(s,arguments,u)}else r=s.apply(this,arguments);return n(this,r)}}var X=function(n){r(UnauthorizedError,u);var o=G(UnauthorizedError);function UnauthorizedError(r,n){var u;return e(this,UnauthorizedError),u=o.call(this,function(e,t){return"Unauthorized".concat(403===t?" (Forbidden)":"",": ").concat(e)}(r,n)),s(t(u),"url",void 0),s(t(u),"responseStatus",void 0),u.url=r,u.responseStatus=n,u}return T(UnauthorizedError,[{key:"forbidden",get:function(){return void 0!==this.responseStatus?403===this.responseStatus:void 0}}]),UnauthorizedError}();function K(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var r,s=o(e);if(t){var u=o(this).constructor;r=Reflect.construct(s,arguments,u)}else r=s.apply(this,arguments);return n(this,r)}}var V=function(n){r(UnsuccessfulRequestError,u);var o=K(UnsuccessfulRequestError);function UnsuccessfulRequestError(r,n){var u;return e(this,UnsuccessfulRequestError),u=o.call(this,function(e,t){var r;return t=null!==(r=t)&&void 0!==r?r:e,"string"==typeof e?"".concat(e," (returned ").concat(t.status," status code)"):"Request to ".concat(t.url," returned ").concat(t.status," status code")}(r,n)),s(t(u),"response",void 0),u.response=null!=n?n:r,u}return UnsuccessfulRequestError}(),Y={acl:"http://www.w3.org/ns/auth/acl#",foaf:"http://xmlns.com/foaf/0.1/",pim:"http://www.w3.org/ns/pim/space#",purl:"http://purl.org/dc/terms/",rdf:"http://www.w3.org/1999/02/22-rdf-syntax-ns#",rdfs:"http://www.w3.org/2000/01/rdf-schema#",schema:"https://schema.org/",solid:"http://www.w3.org/ns/solid/terms#",vcard:"http://www.w3.org/2006/vcard/ns#"};function Z(e,t){Y[e]=t}function ee(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(e.startsWith("http"))return e;var r=e.split(":"),n=A(r,2),o=n[0],s=n[1];if(o&&s){var u,a,c,i=null!==(u=null!==(a=Y[o])&&void 0!==a?a:null===(c=t.extraContext)||void 0===c?void 0:c[o])&&void 0!==u?u:null;if(!i)throw new Error("Can't expand IRI with unknown prefix: '".concat(e,"'"));return i+s}if(!t.defaultPrefix)throw new Error("Can't expand IRI without a default prefix: '".concat(e,"'"));return t.defaultPrefix+o}var te,re=function(){function t(r,n){e(this,t),s(this,"url",void 0),s(this,"quads",void 0),this.url=r,this.quads=n}return T(t,[{key:"value",value:function(e){var t;return null===(t=this.quads.find((function(t){return t.predicate.value===ee(e)})))||void 0===t?void 0:t.object.value}},{key:"values",value:function(e){return this.quads.filter((function(t){return t.predicate.value===ee(e)})).map((function(e){return e.object.value}))}}]),t}(),ne=function(){function t(){var r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];e(this,t),s(this,"quads",void 0),this.quads=r}return T(t,[{key:"isEmpty",value:function(){return 0===this.statements.length}},{key:"getQuads",value:function(){return this.quads.slice(0)}},{key:"addQuads",value:function(e){var t;(t=this.quads).push.apply(t,U(e))}},{key:"statements",value:function(e,t,r){var n=this;return this.quads.filter((function(o){return!(r&&o.object.value!==n.expandIRI(r)||e&&o.subject.value!==n.expandIRI(e)||t&&o.predicate.value!==n.expandIRI(t))}))}},{key:"statement",value:function(e,t,r){var n=this,o=this.quads.find((function(o){return!(r&&o.object.value!==n.expandIRI(r)||e&&o.subject.value!==n.expandIRI(e)||t&&o.predicate.value!==n.expandIRI(t))}));return null!=o?o:null}},{key:"contains",value:function(e,t,r){return null!==this.statement(e,t,r)}},{key:"getThing",value:function(e){var t=this.statements(e);return new re(e,t)}},{key:"expandIRI",value:function(e){return ee(e)}}]),t}();function oe(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var r,s=o(e);if(t){var u=o(this).constructor;r=Reflect.construct(s,arguments,u)}else r=s.apply(this,arguments);return n(this,r)}}!function(e){e.Read="read",e.Write="write",e.Append="append",e.Control="control"}(te||(te={}));var se=function(n){r(u,ne);var o=oe(u);function u(r,n,a){var c;return e(this,u),c=o.call(this,n),s(t(c),"url",void 0),s(t(c),"headers",void 0),c.url=r,c.headers=a,c}return T(u,[{key:"isPersonalProfile",value:function(){return!!this.statement(this.url,ee("rdf:type"),ee("foaf:PersonalProfileDocument"))}},{key:"isStorage",value:function(){var e;return!(null===(e=this.headers.get("Link"))||void 0===e||!e.match(/<http:\/\/www\.w3\.org\/ns\/pim\/space#Storage>;[^,]+rel="type"/))}},{key:"isUserWritable",value:function(){return this.getUserPermissions().includes(te.Write)}},{key:"getUserPermissions",value:function(){return this.getPermissionsFromWAC("user")}},{key:"getPublicPermissions",value:function(){return this.getPermissionsFromWAC("public")}},{key:"getLastModified",value:function(){var e,t,r,n;return null!==(e=null!==(t=null!==(r=a(this.headers.get("last-modified")))&&void 0!==r?r:a(null===(n=this.statement(this.url,"purl:modified"))||void 0===n?void 0:n.object.value))&&void 0!==t?t:this.getLatestDocumentDate())&&void 0!==e?e:null}},{key:"expandIRI",value:function(e){return ee(e,{defaultPrefix:this.url})}},{key:"getLatestDocumentDate",value:function(){var e=[].concat(U(this.statements(void 0,"purl:modified")),U(this.statements(void 0,"purl:created"))).map((function(e){return a(e.object.value)})).filter((function(e){return null!==e}));return e.length>0?e.reduce((function(e,t){return e>t?e:t})):null}},{key:"getPermissionsFromWAC",value:function(e){var t,r,n,o=null!==(t=this.headers.get("WAC-Allow"))&&void 0!==t?t:"",s=null!==(r=null===(n=c(o,new RegExp("".concat(e,'="([^"]+)"'))))||void 0===n?void 0:n[1])&&void 0!==r?r:"";return i([s.includes("read")&&te.Read,s.includes("write")&&te.Write,s.includes("append")&&te.Append,s.includes("control")&&te.Control])}}]),u}();function ue(e){return ae.apply(this,arguments)}function ae(){return(ae=O(q.mark((function e(t){var r;return q.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,C(t,{});case 2:if(!("@graph"in(r=e.sent))){e.next=5;break}return e.abrupt("return",r);case 5:if(!("@id"in r)){e.next=7;break}return e.abrupt("return",{"@graph":[r]});case 7:return e.abrupt("return",{"@graph":[]});case 8:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ce(e){return"@graph"in e}function ie(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=function(e,t){if(!e)return;if("string"==typeof e)return le(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return le(e,t)}(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var s,u=!0,a=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return u=e.done,e},e:function(e){a=!0,s=e},f:function(){try{u||null==r.return||r.return()}finally{if(a)throw s}}}}function le(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function fe(e,t){return pe.apply(this,arguments)}function pe(){return(pe=O(q.mark((function e(t,r){var n,o,s;return q.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n={headers:{Accept:"text/turtle"}},e.prev=1,e.next=4,r(t,n);case 4:if(404!==(o=e.sent).status){e.next=7;break}throw new J(t);case 7:if(![401,403].includes(o.status)){e.next=9;break}throw new X(t,o.status);case 9:return e.next=11,o.text();case 11:return s=e.sent,e.abrupt("return",{body:s,headers:o.headers});case 15:if(e.prev=15,e.t0=e.catch(1),!(e.t0 instanceof X)){e.next=19;break}throw e.t0;case 19:if(!(e.t0 instanceof J)){e.next=21;break}throw e.t0;case 21:throw new $(t,{cause:e.t0});case 22:case"end":return e.stop()}}),e,null,[[1,15]])})))).apply(this,arguments)}function de(e){var t,r=e.slice(0),n={},o=ie(p(e).flatMap((function(e,t){return d(i(["BlankNode"===e.object.termType?e.object.value:null,"BlankNode"===e.subject.termType?e.subject.value:null]),(function(e){return e.forEach((function(e){var r;return(null!==(r=n[e])&&void 0!==r?r:n[e]=new Set).add(t)}))}))})).filter().unique());try{var s=function(){var o,s=t.value,u=n[s],a=S(p(u).map((function(t){return e[t]})).filter((function(e){var t=e.subject,r=t.termType,n=t.value;return"BlankNode"===r&&n===s})).map((function(e){var t=e.predicate,r=e.object;return"BlankNode"===r.termType?t.value:t.value+r.value})).sorted().join()),c=ie(u);try{for(c.s();!(o=c.n()).done;){for(var i=o.value,l=r[i],f={subject:l.subject,object:l.object},d=0,v=Object.entries(f);d<v.length;d++){var h=A(v[d],2),y=h[0],b=h[1];"BlankNode"===b.termType&&b.value===s&&(f[y]=L(a))}m(r,l,M(f.subject,l.predicate,f.object))}}catch(e){c.e(e)}finally{c.f()}};for(o.s();!(t=o.n()).done;)s()}catch(e){o.e(e)}finally{o.f()}return r}function me(e,t,r){return ve.apply(this,arguments)}function ve(){return(ve=O(q.mark((function e(t,r,n){var o,s;return q.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=null!==(o=n)&&void 0!==o?o:window.fetch.bind(window),e.next=3,Se(r);case 3:return s=e.sent,e.next=6,n(t,{method:"PUT",headers:{"Content-Type":"text/turtle"},body:r});case 6:return e.abrupt("return",new se(t,s,new Headers({})));case 7:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function he(e,t){return ye.apply(this,arguments)}function ye(){return(ye=O(q.mark((function e(t,r){var n,o,s,u;return q.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,fe(t,null!=r?r:window.fetch);case 2:return n=e.sent,o=n.body,s=n.headers,e.next=7,Se(o,{baseIRI:t});case 7:return u=e.sent,e.abrupt("return",new se(t,u,s));case 9:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function be(e,t){return je.apply(this,arguments)}function je(){return(je=O(q.mark((function e(t,r){var n;return q.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,he(t,r);case 3:return n=e.sent,e.abrupt("return",n);case 7:if(e.prev=7,e.t0=e.catch(0),e.t0 instanceof J){e.next=11;break}throw e.t0;case 11:return e.abrupt("return",null);case 12:case"end":return e.stop()}}),e,null,[[0,7]])})))).apply(this,arguments)}function we(e,t){return xe.apply(this,arguments)}function xe(){return(xe=O(q.mark((function e(t,r){var n;return q.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!ce(t)){e.next=5;break}return e.next=3,Promise.all(t["@graph"].map((function(e){return we(e,r)})));case 3:return n=e.sent,e.abrupt("return",n.flat());case 5:return e.abrupt("return",D(t,{base:r}));case 6:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ge(e){var t=Ue(e);return Object.entries(t).reduce((function(e,t){var r=A(t,2),n=r[0],o=r[1].map((function(e){return" "+Pe(e)})).sort().join("\n");return e.concat("".concat(n.toUpperCase()," DATA {\n").concat(o,"\n}"))}),[]).join(" ;\n")}function ke(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=l({baseIRI:t.baseIRI}),n=new N(r),o={quads:[],containsRelativeIRIs:!1};return new Promise((function(r,s){var u=n._resolveRelativeIRI;n._resolveRelativeIRI=function(){return o.containsRelativeIRIs=!0,n._resolveRelativeIRI=u,n._resolveRelativeIRI.apply(n,arguments)},n.parse(e,(function(e,n){var u;e?s(new F(null!==(u=t.baseIRI)&&void 0!==u?u:null,W.Turtle,e.message)):n?o.quads.push(n):r(o)}))}))}function Re(e){return Ie.apply(this,arguments)}function Ie(){return(Ie=O(q.mark((function e(t){var r;return q.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,B(t);case 2:return r=e.sent,e.abrupt("return",{"@graph":r});case 4:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Ee(e){return(new z).quadsToString(e)}function Pe(e){return(new z).quadsToString([e]).slice(0,-1)}function Te(e,t){return Ae.apply(this,arguments)}function Ae(){return(Ae=O(q.mark((function e(t,r){var n;return q.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,he(t,r);case 3:return n=e.sent,e.abrupt("return",!n.isEmpty());case 7:return e.prev=7,e.t0=e.catch(0),e.abrupt("return",!1);case 10:case"end":return e.stop()}}),e,null,[[0,7]])})))).apply(this,arguments)}function Oe(e){return qe.apply(this,arguments)}function qe(){return qe=O(q.mark((function e(t){var r,n,o,s=arguments;return q.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=s.length>1&&void 0!==s[1]?s[1]:{},n=f(t,/(\w+) DATA {([^}]+)}/g),o={},e.next=5,Promise.all(U(n).map(function(){var e=O(q.mark((function e(t){var n,s;return q.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=t[1].toLowerCase(),s=t[2],e.next=4,Se(s,r);case 4:o[n]=e.sent;case 5:case"end":return e.stop()}}),e)})));return function(t){return e.apply(this,arguments)}}()));case 5:return e.abrupt("return",o);case 6:case"end":return e.stop()}}),e)}))),qe.apply(this,arguments)}function Ue(e){var t,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=f(e,/(\w+) DATA {([^}]+)}/g),o={},s=ie(n);try{for(s.s();!(t=s.n()).done;){var u=t.value,a=u[1].toLowerCase(),c=u[2];o[a]=De(c,r)}}catch(e){s.e(e)}finally{s.f()}return o}function Se(e){return Ce.apply(this,arguments)}function Ce(){return Ce=O(q.mark((function e(t){var r,n,o,s=arguments;return q.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=s.length>1&&void 0!==s[1]?s[1]:{},e.next=3,ke(t,r);case 3:return n=e.sent,o=n.quads,e.abrupt("return",o);case 6:case"end":return e.stop()}}),e)}))),Ce.apply(this,arguments)}function De(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=l({baseIRI:t.baseIRI}),n=new N(r);try{var o=n.parse(e);return t.normalizeBlankNodes?de(o):o}catch(e){var s,u;throw new F(null!==(s=t.baseIRI)&&void 0!==s?s:null,W.Turtle,null!==(u=e.message)&&void 0!==u?u:"")}}function Ne(e,t,r){return Be.apply(this,arguments)}function Be(){return(Be=O(q.mark((function e(t,r,n){var o;return q.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=null!==(o=n)&&void 0!==o?o:window.fetch.bind(window),e.next=3,n(t,{method:"PATCH",headers:{"Content-Type":"application/sparql-update"},body:r});case 3:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ze(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function Le(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ze(Object(r),!0).forEach((function(t){s(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ze(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function Me(e,t){return Qe.apply(this,arguments)}function Qe(){return Qe=O(q.mark((function e(t,r){var n,o,u,a,c,i;return q.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:u=new ne(t.getQuads()),a=s({},t.url,t),c=function(e){return e.statements(void 0,"foaf:isPrimaryTopicOf").map((function(e){return e.object.value})).forEach((function(e){var t;return a[e]=null!==(t=a[e])&&void 0!==t?t:null}))},i=function(){var e=O(q.mark((function e(){var t,n,o,s,i;return q.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=0,n=Object.entries(a);case 1:if(!(t<n.length)){e.next=23;break}if(o=A(n[t],2),s=o[0],null===o[1]){e.next=5;break}return e.abrupt("continue",20);case 5:return e.prev=5,e.next=8,he(s,r);case 8:i=e.sent,a[s]=i,u.addQuads(i.getQuads()),c(i),e.next=20;break;case 14:if(e.prev=14,e.t0=e.catch(5),!(e.t0 instanceof X)){e.next=19;break}return a[s]=!1,e.abrupt("continue",20);case 19:throw e.t0;case 20:t++,e.next=1;break;case 23:case"end":return e.stop()}}),e,null,[[5,14]])})));return function(){return e.apply(this,arguments)}}(),c(t);case 5:return e.next=7,i();case 7:if(Object.values(a).some((function(e){return null===e}))){e.next=5;break}case 8:return e.abrupt("return",{store:u,cloaked:Object.values(a).some((function(e){return!1===e})),writableProfileUrl:t.isUserWritable()?t.url:null!==(n=null===(o=Object.values(a).find((function(e){return!!e&&e.isUserWritable()})))||void 0===o?void 0:o.url)&&void 0!==n?n:null});case 9:case"end":return e.stop()}}),e)}))),Qe.apply(this,arguments)}function We(e,t){return Fe.apply(this,arguments)}function Fe(){return(Fe=O(q.mark((function e(t,r){var n,o,s,u,a,c,i,f,p,d,m,v,j,w,x,g,k,R;return q.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return f=b(t),e.next=3,he(f,r);case 3:if((p=e.sent).isPersonalProfile()||p.contains(t,"solid:oidcIssuer")){e.next=6;break}throw new Error("".concat(t," is not a valid webId."));case 6:return e.next=8,Me(p,r);case 8:d=e.sent,m=d.store,v=d.writableProfileUrl,j=d.cloaked,w=m.statements(t,"pim:storage").map((function(e){return e.object.value})),x=m.statement(t,"solid:publicTypeIndex"),g=m.statement(t,"solid:privateTypeIndex"),k=y(f);case 16:if(!k||0!==w.length){e.next=26;break}return e.next=19,h(he(k,r));case 19:if(null==(R=e.sent)||!R.isStorage()){e.next=23;break}return w.push(k),e.abrupt("break",26);case 23:k=y(k),e.next=16;break;case 26:return e.abrupt("return",Le({webId:t,storageUrls:w,cloaked:j,writableProfileUrl:v},l({name:null!==(n=null===(o=m.statement(t,"vcard:fn"))||void 0===o?void 0:o.object.value)&&void 0!==n?n:null===(s=m.statement(t,"foaf:name"))||void 0===s?void 0:s.object.value,avatarUrl:null!==(u=null===(a=m.statement(t,"vcard:hasPhoto"))||void 0===a?void 0:a.object.value)&&void 0!==u?u:null===(c=m.statement(t,"foaf:img"))||void 0===c?void 0:c.object.value,oidcIssuerUrl:null===(i=m.statement(t,"solid:oidcIssuer"))||void 0===i?void 0:i.object.value,publicTypeIndexUrl:null==x?void 0:x.object.value,privateTypeIndexUrl:null==g?void 0:g.object.value})));case 27:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function He(e,t){return $e.apply(this,arguments)}function $e(){return($e=O(q.mark((function e(t,r){var n,o,s;return q.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return s=h((function(e){return We(e,r)})),e.next=3,s(t);case 3:if(e.t2=o=e.sent,e.t1=null!==e.t2,!e.t1){e.next=7;break}e.t1=void 0!==o;case 7:if(!e.t1){e.next=11;break}e.t3=o,e.next=14;break;case 11:return e.next=13,s(t.replace(/\/$/,"").concat("/profile/card#me"));case 13:e.t3=e.sent;case 14:if(e.t4=n=e.t3,e.t0=null!==e.t4,!e.t0){e.next=18;break}e.t0=void 0!==n;case 18:if(!e.t0){e.next=22;break}e.t5=n,e.next=25;break;case 22:return e.next=24,s(v(t).concat("/profile/card#me"));case 24:e.t5=e.sent;case 25:return e.abrupt("return",e.t5);case 26:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function _e(e){var t=function(e){return e.path&&e.path.startsWith("/")?e.path.match(/^\/[^/]*$/)?"/":"/".concat(p(e.path.split("/")).filter().slice(0,-1).join("/"),"/").replace("//","/"):null}(e);return e.protocol&&e.domain?"".concat(e.protocol,"://").concat(e.domain).concat(null!=t?t:"/"):t}function Je(e){var t;if("@type"in e&&!("@value"in e)){e["@id"]=null!==(t=e["@id"])&&void 0!==t?t:x();for(var r=0,n=Object.values(e);r<n.length;r++){var o=n[r];g(o)&&Je(o),k(o)&&o.forEach((function(e){return g(e)&&Je(e)}))}}}function Ge(e){return d(j(e),(function(e){return Je(e)}))}function Xe(e){var t=w(e);return t?l({containerUrl:_e(t),documentName:t.path?t.path.split("/").pop():null,resourceHash:t.fragment}):{}}function Ke(e,t,r){return Ve.apply(this,arguments)}function Ve(){return(Ve=O(q.mark((function e(t,r,n){var o,s,u;return q.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return n=null!==(o=n)&&void 0!==o?o:window.fetch.bind(n),s=t.storageUrls[0],u="".concat(s,"settings/").concat(r,"TypeIndex"),e.next=5,Te(u,n);case 5:if(!e.sent){e.next=9;break}e.t0="".concat(s,"settings/").concat(r,"TypeIndex-").concat(x()),e.next=10;break;case 9:e.t0=u;case 10:return e.abrupt("return",e.t0);case 11:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Ye(e,t,r){return Ze.apply(this,arguments)}function Ze(){return(Ze=O(q.mark((function e(t,r,n){var o,s,u,a;return q.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null!==t.writableProfileUrl){e.next=2;break}throw new Error("Can't create type index without a writable profile document");case 2:return n=null!==(o=n)&&void 0!==o?o:window.fetch.bind(n),e.next=5,Ke(t,r,n);case 5:return s=e.sent,u="public"===r?"<> a <http://www.w3.org/ns/solid/terms#TypeIndex> .":"\n <> a\n <http://www.w3.org/ns/solid/terms#TypeIndex>,\n <http://www.w3.org/ns/solid/terms#UnlistedDocument> .\n ",a="\n INSERT DATA {\n <".concat(t.webId,"> <http://www.w3.org/ns/solid/terms#").concat(r,"TypeIndex> <").concat(s,"> .\n }\n "),e.next=10,Promise.all([me(s,u,n),Ne(t.writableProfileUrl,a,n)]);case 10:return e.abrupt("return",s);case 12:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function et(e,t,r,n){return tt.apply(this,arguments)}function tt(){return(tt=O(q.mark((function e(t,r,n,o){var s,u;return q.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,he(t,o);case 2:return s=e.sent,u=Array.isArray(r)?r:[r],e.abrupt("return",u.map((function(e){return s.statements(void 0,"rdf:type","solid:TypeRegistration").filter((function(t){return s.contains(t.subject.value,"solid:forClass",e)})).map((function(e){return s.statements(e.subject.value,n)})).flat().map((function(e){return e.object.value})).filter((function(e){return!!e}))})).flat());case 5:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function rt(e,t){return nt.apply(this,arguments)}function nt(){return(nt=O(q.mark((function e(t,r){return q.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",Ye(t,"public",r));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ot(e,t){return st.apply(this,arguments)}function st(){return(st=O(q.mark((function e(t,r){return q.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",Ye(t,"private",r));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ut(e,t,r){return at.apply(this,arguments)}function at(){return(at=O(q.mark((function e(t,r,n){return q.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",et(t,r,"solid:instanceContainer",n));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function ct(e,t,r){return it.apply(this,arguments)}function it(){return(it=O(q.mark((function e(t,r,n){return q.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",et(t,r,"solid:instance",n));case 1:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function lt(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=function(e,t){if(!e)return;if("string"==typeof e)return ft(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return ft(e,t)}(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,o=function(){};return{s:o,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var s,u=!0,a=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return u=e.done,e},e:function(e){a=!0,s=e},f:function(){try{u||null==r.return||r.return()}finally{if(a)throw s}}}}function ft(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function pt(e){var t=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var r,s=o(e);if(t){var u=o(this).constructor;r=Reflect.construct(s,arguments,u)}else r=s.apply(this,arguments);return n(this,r)}}var dt={},mt={"%uuid%":"[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}"},vt=function(n){r(ExpectedQuadAssertionError,u);var o=pt(ExpectedQuadAssertionError);function ExpectedQuadAssertionError(r){var n;return e(this,ExpectedQuadAssertionError),n=o.call(this,"Couldn't find the following triple: ".concat(Pe(r))),s(t(n),"expectedQuad",void 0),n.expectedQuad=r,n}return ExpectedQuadAssertionError}();function ht(e,t){var r,n=lt(e);try{var o=function(){var e=r.value,n=t.find((function(t){return n=t,function(e,t){if(e.termType!==t.termType)return!1;if("Literal"===e.termType&&"Literal"===t.termType){if(e.datatype.value!==t.datatype.value)return!1;if(!yt(e.value))return"http://www.w3.org/2001/XMLSchema#dateTime"===e.datatype.value?new Date(e.value).getTime()===new Date(t.value).getTime():e.value===t.value}return bt(e.value,t.value)}((r=e).object,n.object)&&bt(r.subject.value,n.subject.value)&&bt(r.predicate.value,n.predicate.value);var r,n}));if(!n)throw new vt(e);I(t,n)};for(n.s();!(r=n.n()).done;)o()}catch(e){n.e(e)}finally{n.f()}}function yt(e){return/\[\[(.*\]\[)?([^\]]+)\]\]/.test(e)}function bt(e,t){var r,n;return yt(e)?(null!==(n=(r=dt)[e])&&void 0!==n?n:r[e]=function(e){var t,r=[],n=[],o=e,s=lt(f(e,/\[\[((.*?)\]\[)?([^\]]+)\]\]/g));try{for(s.s();!(t=s.n()).done;){var u=t.value;u[2]&&r.push(u[2]),n.push(u[3]),o=o.replace(u[0],"%PATTERN".concat(n.length-1,"%"))}}catch(e){s.e(e)}finally{s.f()}o=o.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");for(var a=0,c=Object.entries(n);a<c.length;a++){var i,l=A(c[a],2),p=l[0],d=l[1];o=o.replace("%PATTERN".concat(p,"%"),null!==(i=mt[d])&&void 0!==i?i:d)}return new RegExp(o)}(e)).test(t):e===t}function jt(){dt={}}function wt(e,t){return xt.apply(this,arguments)}function xt(){return(xt=O(q.mark((function e(t,r){var n,o,s,u,a;return q.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return jt(),e.next=3,we(t);case 3:return n=e.sent,e.next=6,we(r);case 6:if(o=e.sent,s=Ee(n),u=Ee(o),a=function(e,t){return{success:e,message:t,expected:s,actual:u}},n.length===o.length){e.next=12;break}return e.abrupt("return",a(!1,"Expected ".concat(n.length," triples, found ").concat(o.length,".")));case 12:e.prev=12,ht(n,o),e.next=21;break;case 16:if(e.prev=16,e.t0=e.catch(12),e.t0 instanceof vt){e.next=20;break}throw e.t0;case 20:return e.abrupt("return",a(!1,e.t0.message));case 21:return e.abrupt("return",a(!0,"jsonld matches"));case 22:case"end":return e.stop()}}),e,null,[[12,16]])})))).apply(this,arguments)}function gt(e,t){var r;jt();for(var n=Ue(e,{normalizeBlankNodes:!0}),o=Ue(t,{normalizeBlankNodes:!0}),s=function(r,n){return{success:r,message:n,expected:e,actual:t}},u=0,a=Object.keys(n);u<a.length;u++){var c=a[u];if(!(c in o))return s(!1,"Couldn't find expected ".concat(c," operation."));var i=R(n,c),l=R(o,c);if(i.length!==l.length)return s(!1,"Expected ".concat(i.length," ").concat(c," triples, found ").concat(l.length,"."));try{ht(i,l)}catch(e){if(!(e instanceof vt))throw e;return s(!1,"Couldn't find the following ".concat(c," triple: ").concat(Pe(e.expectedQuad)))}}var f=null!==(r=Object.keys(o)[0])&&void 0!==r?r:null;return f?s(!1,"Did not expect to find ".concat(f," triples.")):s(!0,"sparql matches")}function kt(e,t){jt();var r=De(e,{normalizeBlankNodes:!0}),n=De(t,{normalizeBlankNodes:!0}),o=function(r,n){return{success:r,message:n,expected:e,actual:t}};if(r.length!==n.length)return o(!1,"Expected ".concat(r.length," triples, found ").concat(n.length,"."));try{ht(r,n)}catch(e){if(!(e instanceof vt))throw e;return o(!1,e.message)}return o(!0,"turtle matches")}function Rt(e,t){return It.apply(this,arguments)}function It(){return(It=O(q.mark((function e(t,r){var n,o,s,u,a,c,i;return q.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return r=null!==(n=r)&&void 0!==n?n:window.fetch.bind(window),e.next=3,r(t,{method:"HEAD"});case 3:if(a=e.sent,c=null!==(o=a.headers.get("Link"))&&void 0!==o?o:"",i=null!==(s=null===(u=c.match(/<([^>]+)>;\s*rel="acl"/))||void 0===u?void 0:u[1])&&void 0!==s?s:null){e.next=8;break}throw new Error("Could not find ACL Resource for '".concat(t,"'"));case 8:return e.abrupt("return",E(P(t),i));case 9:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Et(e,t,r){return Pt.apply(this,arguments)}function Pt(){return(Pt=O(q.mark((function e(t,r,n){var o,s,u;return q.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(null===(o=n)||void 0===o){e.next=4;break}e.t0=o,e.next=7;break;case 4:return e.next=6,Rt(t,r);case 6:e.t0=e.sent;case 7:return n=e.t0,e.next=10,be(null!==(u=n)&&void 0!==u?u:"",r);case 10:if(e.t2=s=e.sent,e.t1=null!==e.t2,!e.t1){e.next=14;break}e.t1=void 0!==s;case 14:if(!e.t1){e.next=18;break}e.t3=s,e.next=21;break;case 18:return e.next=20,Et(P(t),r);case 20:e.t3=e.sent;case 21:return e.abrupt("return",e.t3);case 22:case"end":return e.stop()}}),e)})))).apply(this,arguments)}function Tt(e,t){return At.apply(this,arguments)}function At(){return(At=O(q.mark((function e(t,r){var n,o;return q.wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Rt(t,r);case 2:return n=e.sent,e.next=5,Et(t,r,n);case 5:return o=e.sent,e.abrupt("return",l({url:n,effectiveUrl:o.url,document:o}));case 7:case"end":return e.stop()}}),e)})))).apply(this,arguments)}var Ot={turtle:function(e){var t=this._obj,r=this.assert.bind(this),n=kt(e,t);r(n.success,n.message,"",n.expected,n.actual)},sparql:function(e){var t=this._obj,r=this.assert.bind(this),n=gt(e,t);r(n.success,n.message,"",n.expected,n.actual)}};function qt(){chai.use((function(e){return Object.entries(Ot).forEach((function(t){var r=A(t,2),n=r[0],o=r[1];return e.Assertion.addMethod(n,o)}))}))}function Ut(e,t){var r=e.success,n=t.context.utils;return{pass:r,message:r?function(){return[e.message,n.matcherHint(t.hint)].join("\n\n")}:function(){return[e.message,n.matcherHint(t.hint),["Expected: not ".concat(n.printExpected(t.expected)),"Received: ".concat(n.printReceived(t.received))].join("\n")].join("\n\n")}}}var St={toEqualJsonLD:function(e,t){var r=this;return O(q.mark((function n(){var o;return q.wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,wt(t,e);case 2:return o=n.sent,n.abrupt("return",Ut(o,{context:r,hint:"toEqualJsonLD",expected:t,received:e}));case 4:case"end":return n.stop()}}),n)})))()},toEqualSparql:function(e,t){return Ut(gt(t,e),{context:this,hint:"toEqualSparql",expected:ge(t),received:ge(e)})}};function Ct(){expect.extend(St)}export{F as MalformedSolidDocumentError,$ as NetworkRequestError,J as NotFoundError,se as SolidDocument,W as SolidDocumentFormat,te as SolidDocumentPermission,ne as SolidStore,re as SolidThing,X as UnauthorizedError,V as UnsuccessfulNetworkRequestError,ue as compactJsonLDGraph,ot as createPrivateTypeIndex,rt as createPublicTypeIndex,me as createSolidDocument,Z as defineIRIPrefix,ee as expandIRI,He as fetchLoginUserProfile,he as fetchSolidDocument,Tt as fetchSolidDocumentACL,be as fetchSolidDocumentIfFound,ut as findContainerRegistrations,ct as findInstanceRegistrations,qt as installChaiPlugin,Ct as installJestPlugin,ce as isJsonLDGraph,wt as jsonldEquals,we as jsonldToQuads,Ge as mintJsonLDIdentifiers,ge as normalizeSparql,Xe as parseResourceSubject,ke as parseTurtle,Pe as quadToTurtle,Re as quadsToJsonLD,Ee as quadsToTurtle,Te as solidDocumentExists,gt as sparqlEquals,Oe as sparqlToQuads,Ue as sparqlToQuadsSync,kt as turtleEquals,Se as turtleToQuads,De as turtleToQuadsSync,Ne as updateSolidDocument};
|
|
2
2
|
//# sourceMappingURL=noeldemartin-solid-utils.esm.js.map
|