solid-ui 2.4.27-c6bf02ea → 2.4.27-cb30461a
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 +6 -1
- package/dist/805.solid-ui.min.js +1 -1
- package/dist/805.solid-ui.min.js.map +1 -1
- package/dist/solid-ui.js +5877 -2920
- package/dist/solid-ui.js.map +1 -1
- package/dist/solid-ui.min.js +1 -1
- package/dist/solid-ui.min.js.LICENSE.txt +4 -0
- package/dist/solid-ui.min.js.map +1 -1
- package/dist/vendors-node_modules_jsonld_lib_jsonld_js.solid-ui.js +1955 -1955
- package/dist/vendors-node_modules_jsonld_lib_jsonld_js.solid-ui.js.map +1 -1
- package/lib/chat/bookmarks.js +7 -6
- package/lib/chat/bookmarks.js.map +1 -1
- package/lib/chat/chatLogic.js +103 -248
- package/lib/chat/chatLogic.js.map +1 -1
- package/lib/chat/dateFolder.js +126 -129
- package/lib/chat/dateFolder.js.map +1 -1
- package/lib/chat/infinite.js +423 -633
- package/lib/chat/infinite.js.map +1 -1
- package/lib/chat/keys.d.ts +13 -0
- package/lib/chat/keys.d.ts.map +1 -0
- package/lib/chat/keys.js +233 -0
- package/lib/chat/keys.js.map +1 -0
- package/lib/chat/message.js +193 -289
- package/lib/chat/message.js.map +1 -1
- package/lib/chat/messageTools.js +277 -463
- package/lib/chat/messageTools.js.map +1 -1
- package/lib/chat/signature.d.ts +25 -0
- package/lib/chat/signature.d.ts.map +1 -0
- package/lib/chat/signature.js +113 -0
- package/lib/chat/signature.js.map +1 -0
- package/lib/chat/thread.js +144 -166
- package/lib/chat/thread.js.map +1 -1
- package/lib/header/index.js +0 -5
- package/lib/header/index.js.map +1 -1
- package/lib/log.js +5 -5
- package/lib/log.js.map +1 -1
- package/lib/login/login.js +1 -24
- package/lib/login/login.js.map +1 -1
- package/lib/pad.js +1 -4
- package/lib/pad.js.map +1 -1
- package/lib/participation.js +1 -2
- package/lib/participation.js.map +1 -1
- package/lib/preferences.js +0 -4
- package/lib/preferences.js.map +1 -1
- package/lib/utils/headerFooterHelpers.js +0 -2
- package/lib/utils/headerFooterHelpers.js.map +1 -1
- package/lib/utils/keyHelpers/accessData.d.ts +10 -0
- package/lib/utils/keyHelpers/accessData.d.ts.map +1 -0
- package/lib/utils/keyHelpers/accessData.js +235 -0
- package/lib/utils/keyHelpers/accessData.js.map +1 -0
- package/lib/utils/keyHelpers/acl.d.ts +20 -0
- package/lib/utils/keyHelpers/acl.d.ts.map +1 -0
- package/lib/utils/keyHelpers/acl.js +93 -0
- package/lib/utils/keyHelpers/acl.js.map +1 -0
- package/lib/versionInfo.js +2 -2
- package/lib/versionInfo.js.map +1 -1
- package/lib/widgets/buttons.js +2 -0
- package/lib/widgets/buttons.js.map +1 -1
- package/lib/widgets/forms/autocomplete/autocompleteBar.js +1 -8
- package/lib/widgets/forms/autocomplete/autocompleteBar.js.map +1 -1
- package/lib/widgets/forms/autocomplete/autocompletePicker.js +3 -8
- package/lib/widgets/forms/autocomplete/autocompletePicker.js.map +1 -1
- package/lib/widgets/forms/autocomplete/language.js +0 -5
- package/lib/widgets/forms/autocomplete/language.js.map +1 -1
- package/lib/widgets/forms.js +1 -4
- package/lib/widgets/forms.js.map +1 -1
- package/lib/widgets/peoplePicker.js +0 -11
- package/lib/widgets/peoplePicker.js.map +1 -1
- package/package.json +5 -3
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { NamedNode } from 'rdflib';
|
|
2
|
+
export declare const getPodRoot: (webId: NamedNode) => Promise<NamedNode>;
|
|
3
|
+
export declare const pubKeyUrl: (webId: NamedNode) => Promise<string>;
|
|
4
|
+
export declare function getExistingPublicKey(webId: NamedNode, publicKeyUrl: string): Promise<string | undefined>;
|
|
5
|
+
export declare const privKeyUrl: (webId: NamedNode) => Promise<string>;
|
|
6
|
+
export declare function getExistingPrivateKey(webId: NamedNode, privateKeyUrl: string): Promise<string | undefined>;
|
|
7
|
+
type KeyType = 'PublicKey' | 'PrivateKey';
|
|
8
|
+
export declare function getKeyIfExists(webId: NamedNode, keyUrl: string, keyType: KeyType): Promise<string | undefined>;
|
|
9
|
+
export {};
|
|
10
|
+
//# sourceMappingURL=accessData.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"accessData.d.ts","sourceRoot":"","sources":["../../../src/utils/keyHelpers/accessData.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAElC,eAAO,MAAM,UAAU,UAAiB,SAAS,uBAsBhD,CAAA;AAED,eAAO,MAAM,SAAS,UAAiB,SAAS,oBAI/C,CAAA;AAED,wBAAsB,oBAAoB,CAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,+BAGjF;AAED,eAAO,MAAM,UAAU,UAAiB,SAAS,oBAQhD,CAAA;AAED,wBAAsB,qBAAqB,CAAE,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,+BAGnF;AAED,KAAK,OAAO,GAAG,WAAW,GAAG,YAAY,CAAA;AAEzC,wBAAsB,cAAc,CAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,+BAyBvF"}
|
|
@@ -0,0 +1,235 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.getExistingPrivateKey = getExistingPrivateKey;
|
|
9
|
+
exports.getExistingPublicKey = getExistingPublicKey;
|
|
10
|
+
exports.getKeyIfExists = getKeyIfExists;
|
|
11
|
+
exports.pubKeyUrl = exports.privKeyUrl = exports.getPodRoot = void 0;
|
|
12
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
13
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
14
|
+
var debug = _interopRequireWildcard(require("../../debug"));
|
|
15
|
+
var _signature = require("../../chat/signature");
|
|
16
|
+
var _solidLogic = require("solid-logic");
|
|
17
|
+
var ns = _interopRequireWildcard(require("../../ns"));
|
|
18
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
19
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
20
|
+
var getPodRoot = /*#__PURE__*/function () {
|
|
21
|
+
var _ref = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(webId) {
|
|
22
|
+
var webIdURL, storages, podRoot, path, _res$headers$get, res;
|
|
23
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
24
|
+
while (1) switch (_context.prev = _context.next) {
|
|
25
|
+
case 0:
|
|
26
|
+
webIdURL = new URL(webId.uri); // find storages in webId document
|
|
27
|
+
_context.next = 3;
|
|
28
|
+
return _solidLogic.store.fetcher.load(webId.uri);
|
|
29
|
+
case 3:
|
|
30
|
+
storages = _solidLogic.store.each(webId, ns.space('storage'), null, webId.doc());
|
|
31
|
+
if (storages !== null && storages !== void 0 && storages.length) {
|
|
32
|
+
_context.next = 19;
|
|
33
|
+
break;
|
|
34
|
+
}
|
|
35
|
+
// find storage recursively in webId URL
|
|
36
|
+
path = webIdURL.pathname;
|
|
37
|
+
case 6:
|
|
38
|
+
if (!path.length) {
|
|
39
|
+
_context.next = 17;
|
|
40
|
+
break;
|
|
41
|
+
}
|
|
42
|
+
path = path.substring(0, path.lastIndexOf('/'));
|
|
43
|
+
podRoot = _solidLogic.store.sym(webIdURL.origin + path + '/');
|
|
44
|
+
_context.next = 11;
|
|
45
|
+
return _solidLogic.store.fetcher.webOperation('HEAD', podRoot.uri);
|
|
46
|
+
case 11:
|
|
47
|
+
res = _context.sent;
|
|
48
|
+
if (!((_res$headers$get = res.headers.get('link')) !== null && _res$headers$get !== void 0 && _res$headers$get.includes(ns.space('Storage').value))) {
|
|
49
|
+
_context.next = 14;
|
|
50
|
+
break;
|
|
51
|
+
}
|
|
52
|
+
return _context.abrupt("break", 17);
|
|
53
|
+
case 14:
|
|
54
|
+
if (!path) debug.warn("Current user storage not found for\n".concat(webId));
|
|
55
|
+
_context.next = 6;
|
|
56
|
+
break;
|
|
57
|
+
case 17:
|
|
58
|
+
_context.next = 21;
|
|
59
|
+
break;
|
|
60
|
+
case 19:
|
|
61
|
+
// give preference to storage in webId root
|
|
62
|
+
podRoot = storages.find(function (storage) {
|
|
63
|
+
return webIdURL.origin === new URL(storage.value).origin;
|
|
64
|
+
});
|
|
65
|
+
if (!podRoot) podRoot = storages[0];
|
|
66
|
+
case 21:
|
|
67
|
+
return _context.abrupt("return", podRoot);
|
|
68
|
+
case 22:
|
|
69
|
+
case "end":
|
|
70
|
+
return _context.stop();
|
|
71
|
+
}
|
|
72
|
+
}, _callee);
|
|
73
|
+
}));
|
|
74
|
+
return function getPodRoot(_x) {
|
|
75
|
+
return _ref.apply(this, arguments);
|
|
76
|
+
};
|
|
77
|
+
}();
|
|
78
|
+
exports.getPodRoot = getPodRoot;
|
|
79
|
+
var pubKeyUrl = /*#__PURE__*/function () {
|
|
80
|
+
var _ref2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(webId) {
|
|
81
|
+
return _regenerator["default"].wrap(function _callee2$(_context2) {
|
|
82
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
83
|
+
case 0:
|
|
84
|
+
_context2.prev = 0;
|
|
85
|
+
_context2.next = 3;
|
|
86
|
+
return getPodRoot(webId);
|
|
87
|
+
case 3:
|
|
88
|
+
_context2.t0 = _context2.sent.value;
|
|
89
|
+
return _context2.abrupt("return", _context2.t0 + 'profile/keys/publicKey.ttl');
|
|
90
|
+
case 7:
|
|
91
|
+
_context2.prev = 7;
|
|
92
|
+
_context2.t1 = _context2["catch"](0);
|
|
93
|
+
throw new Error(_context2.t1);
|
|
94
|
+
case 10:
|
|
95
|
+
case "end":
|
|
96
|
+
return _context2.stop();
|
|
97
|
+
}
|
|
98
|
+
}, _callee2, null, [[0, 7]]);
|
|
99
|
+
}));
|
|
100
|
+
return function pubKeyUrl(_x2) {
|
|
101
|
+
return _ref2.apply(this, arguments);
|
|
102
|
+
};
|
|
103
|
+
}();
|
|
104
|
+
exports.pubKeyUrl = pubKeyUrl;
|
|
105
|
+
function getExistingPublicKey(_x3, _x4) {
|
|
106
|
+
return _getExistingPublicKey.apply(this, arguments);
|
|
107
|
+
}
|
|
108
|
+
function _getExistingPublicKey() {
|
|
109
|
+
_getExistingPublicKey = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4(webId, publicKeyUrl) {
|
|
110
|
+
return _regenerator["default"].wrap(function _callee4$(_context4) {
|
|
111
|
+
while (1) switch (_context4.prev = _context4.next) {
|
|
112
|
+
case 0:
|
|
113
|
+
_context4.next = 2;
|
|
114
|
+
return getKeyIfExists(webId, publicKeyUrl, 'PublicKey');
|
|
115
|
+
case 2:
|
|
116
|
+
return _context4.abrupt("return", _context4.sent);
|
|
117
|
+
case 3:
|
|
118
|
+
case "end":
|
|
119
|
+
return _context4.stop();
|
|
120
|
+
}
|
|
121
|
+
}, _callee4);
|
|
122
|
+
}));
|
|
123
|
+
return _getExistingPublicKey.apply(this, arguments);
|
|
124
|
+
}
|
|
125
|
+
var privKeyUrl = /*#__PURE__*/function () {
|
|
126
|
+
var _ref3 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3(webId) {
|
|
127
|
+
var _store$any, _settings;
|
|
128
|
+
var settings, _settings2, podRoot;
|
|
129
|
+
return _regenerator["default"].wrap(function _callee3$(_context3) {
|
|
130
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
131
|
+
case 0:
|
|
132
|
+
settings = (_store$any = _solidLogic.store.any(webId, ns.space('preferencesFile'), null, webId.doc())) === null || _store$any === void 0 ? void 0 : _store$any.value;
|
|
133
|
+
settings = (_settings = settings) === null || _settings === void 0 ? void 0 : _settings.split('/').slice(0, -1).join('/');
|
|
134
|
+
_context3.prev = 2;
|
|
135
|
+
_context3.next = 5;
|
|
136
|
+
return getPodRoot(webId);
|
|
137
|
+
case 5:
|
|
138
|
+
podRoot = _context3.sent;
|
|
139
|
+
if ((_settings2 = settings) !== null && _settings2 !== void 0 && _settings2.startsWith(podRoot.value)) {
|
|
140
|
+
_context3.next = 8;
|
|
141
|
+
break;
|
|
142
|
+
}
|
|
143
|
+
throw new Error("/settings/ is expected to be in ".concat(podRoot.value));
|
|
144
|
+
case 8:
|
|
145
|
+
return _context3.abrupt("return", "".concat(settings, "/keys/privateKey.ttl"));
|
|
146
|
+
case 11:
|
|
147
|
+
_context3.prev = 11;
|
|
148
|
+
_context3.t0 = _context3["catch"](2);
|
|
149
|
+
throw new Error(_context3.t0);
|
|
150
|
+
case 14:
|
|
151
|
+
case "end":
|
|
152
|
+
return _context3.stop();
|
|
153
|
+
}
|
|
154
|
+
}, _callee3, null, [[2, 11]]);
|
|
155
|
+
}));
|
|
156
|
+
return function privKeyUrl(_x5) {
|
|
157
|
+
return _ref3.apply(this, arguments);
|
|
158
|
+
};
|
|
159
|
+
}();
|
|
160
|
+
exports.privKeyUrl = privKeyUrl;
|
|
161
|
+
function getExistingPrivateKey(_x6, _x7) {
|
|
162
|
+
return _getExistingPrivateKey.apply(this, arguments);
|
|
163
|
+
}
|
|
164
|
+
function _getExistingPrivateKey() {
|
|
165
|
+
_getExistingPrivateKey = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee5(webId, privateKeyUrl) {
|
|
166
|
+
return _regenerator["default"].wrap(function _callee5$(_context5) {
|
|
167
|
+
while (1) switch (_context5.prev = _context5.next) {
|
|
168
|
+
case 0:
|
|
169
|
+
_context5.next = 2;
|
|
170
|
+
return getKeyIfExists(webId, privateKeyUrl, 'PrivateKey');
|
|
171
|
+
case 2:
|
|
172
|
+
return _context5.abrupt("return", _context5.sent);
|
|
173
|
+
case 3:
|
|
174
|
+
case "end":
|
|
175
|
+
return _context5.stop();
|
|
176
|
+
}
|
|
177
|
+
}, _callee5);
|
|
178
|
+
}));
|
|
179
|
+
return _getExistingPrivateKey.apply(this, arguments);
|
|
180
|
+
}
|
|
181
|
+
function getKeyIfExists(_x8, _x9, _x10) {
|
|
182
|
+
return _getKeyIfExists.apply(this, arguments);
|
|
183
|
+
}
|
|
184
|
+
function _getKeyIfExists() {
|
|
185
|
+
_getKeyIfExists = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee6(webId, keyUrl, keyType) {
|
|
186
|
+
var key, _err$response, data, contentType, response;
|
|
187
|
+
return _regenerator["default"].wrap(function _callee6$(_context6) {
|
|
188
|
+
while (1) switch (_context6.prev = _context6.next) {
|
|
189
|
+
case 0:
|
|
190
|
+
_context6.prev = 0;
|
|
191
|
+
_context6.next = 3;
|
|
192
|
+
return _solidLogic.store.fetcher.load(keyUrl);
|
|
193
|
+
case 3:
|
|
194
|
+
key = _solidLogic.store.any(webId, _solidLogic.store.sym(_signature.CERT + keyType));
|
|
195
|
+
return _context6.abrupt("return", key === null || key === void 0 ? void 0 : key.value);
|
|
196
|
+
case 7:
|
|
197
|
+
_context6.prev = 7;
|
|
198
|
+
_context6.t0 = _context6["catch"](0);
|
|
199
|
+
if (!((_context6.t0 === null || _context6.t0 === void 0 ? void 0 : (_err$response = _context6.t0.response) === null || _err$response === void 0 ? void 0 : _err$response.status) === 404)) {
|
|
200
|
+
_context6.next = 24;
|
|
201
|
+
break;
|
|
202
|
+
}
|
|
203
|
+
_context6.prev = 10;
|
|
204
|
+
// create resource
|
|
205
|
+
data = '';
|
|
206
|
+
contentType = 'text/turtle';
|
|
207
|
+
_context6.next = 15;
|
|
208
|
+
return _solidLogic.store.fetcher.webOperation('PUT', keyUrl, {
|
|
209
|
+
data: data,
|
|
210
|
+
contentType: contentType
|
|
211
|
+
});
|
|
212
|
+
case 15:
|
|
213
|
+
response = _context6.sent;
|
|
214
|
+
_context6.next = 22;
|
|
215
|
+
break;
|
|
216
|
+
case 18:
|
|
217
|
+
_context6.prev = 18;
|
|
218
|
+
_context6.t1 = _context6["catch"](10);
|
|
219
|
+
debug.log('createIfNotExists doc FAILED: ' + keyUrl + ': ' + _context6.t1);
|
|
220
|
+
throw _context6.t1;
|
|
221
|
+
case 22:
|
|
222
|
+
delete _solidLogic.store.fetcher.requested[keyUrl]; // delete cached 404 error
|
|
223
|
+
return _context6.abrupt("return", undefined);
|
|
224
|
+
case 24:
|
|
225
|
+
debug.log('createIfNotExists doc FAILED: ' + keyUrl + ': ' + _context6.t0);
|
|
226
|
+
throw _context6.t0;
|
|
227
|
+
case 26:
|
|
228
|
+
case "end":
|
|
229
|
+
return _context6.stop();
|
|
230
|
+
}
|
|
231
|
+
}, _callee6, null, [[0, 7], [10, 18]]);
|
|
232
|
+
}));
|
|
233
|
+
return _getKeyIfExists.apply(this, arguments);
|
|
234
|
+
}
|
|
235
|
+
//# sourceMappingURL=accessData.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"accessData.js","names":["debug","_interopRequireWildcard","require","_signature","_solidLogic","ns","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","getPodRoot","_ref","_asyncToGenerator2","_regenerator","mark","_callee","webId","webIdURL","storages","podRoot","path","_res$headers$get","res","wrap","_callee$","_context","prev","next","URL","uri","store","fetcher","load","each","space","doc","length","pathname","substring","lastIndexOf","sym","origin","webOperation","sent","headers","includes","value","abrupt","warn","concat","find","storage","stop","_x","apply","arguments","exports","pubKeyUrl","_ref2","_callee2","_callee2$","_context2","t0","t1","Error","_x2","getExistingPublicKey","_x3","_x4","_getExistingPublicKey","_callee4","publicKeyUrl","_callee4$","_context4","getKeyIfExists","privKeyUrl","_ref3","_callee3","_store$any","_settings","settings","_settings2","_callee3$","_context3","any","split","slice","join","startsWith","_x5","getExistingPrivateKey","_x6","_x7","_getExistingPrivateKey","_callee5","privateKeyUrl","_callee5$","_context5","_x8","_x9","_x10","_getKeyIfExists","_callee6","keyUrl","keyType","_err$response","data","contentType","response","_callee6$","_context6","CERT","status","log","requested","undefined"],"sources":["../../../src/utils/keyHelpers/accessData.ts"],"sourcesContent":["import * as debug from '../../debug'\nimport { CERT } from '../../chat/signature'\nimport { store } from 'solid-logic'\nimport * as ns from '../../ns'\nimport { NamedNode } from 'rdflib'\n\nexport const getPodRoot = async (webId: NamedNode) => {\n const webIdURL = new URL(webId.uri)\n // find storages in webId document\n await store.fetcher.load(webId.uri)\n const storages = store.each(webId, ns.space('storage'), null, webId.doc())\n var podRoot: NamedNode | undefined\n if (!storages?.length) {\n // find storage recursively in webId URL\n let path = webIdURL.pathname\n while (path.length) {\n path = path.substring(0, path.lastIndexOf('/'))\n podRoot = store.sym(webIdURL.origin + path + '/')\n const res = await store.fetcher.webOperation('HEAD', podRoot.uri)\n if (res.headers.get('link')?.includes(ns.space('Storage').value)) break\n if (!path) debug.warn(`Current user storage not found for\\n${webId}`)\n }\n } else {\n // give preference to storage in webId root\n podRoot = storages.find((storage) => webIdURL.origin === new URL(storage.value).origin) as NamedNode\n if (!podRoot) podRoot = storages[0] as NamedNode\n }\n return podRoot as NamedNode\n}\n\nexport const pubKeyUrl = async (webId: NamedNode) => {\n try {\n return (await getPodRoot(webId)).value + 'profile/keys/publicKey.ttl'\n } catch (err) { throw new Error(err) }\n}\n\nexport async function getExistingPublicKey (webId: NamedNode, publicKeyUrl: string) {\n // find publickey\n return await getKeyIfExists(webId, publicKeyUrl, 'PublicKey')\n}\n\nexport const privKeyUrl = async (webId: NamedNode) => {\n let settings = store.any(webId, ns.space('preferencesFile'), null, webId.doc())?.value\n settings = settings?.split('/').slice(0, -1).join('/')\n try {\n const podRoot = await getPodRoot(webId)\n if (!settings?.startsWith(podRoot.value)) throw new Error(`/settings/ is expected to be in ${podRoot.value}`)\n return `${settings}/keys/privateKey.ttl`\n } catch (err) { throw new Error(err) }\n}\n\nexport async function getExistingPrivateKey (webId: NamedNode, privateKeyUrl: string) {\n // find privateKey\n return await getKeyIfExists(webId, privateKeyUrl, 'PrivateKey')\n}\n\ntype KeyType = 'PublicKey' | 'PrivateKey'\n\nexport async function getKeyIfExists (webId: NamedNode, keyUrl: string, keyType: KeyType) {\n try {\n await store.fetcher.load(keyUrl)\n const key = store.any(webId, store.sym(CERT + keyType))\n return key?.value // as NamedNode\n } catch (err) {\n if (err?.response?.status === 404) { // If PATCH on some server do not all create intermediate containers\n try {\n // create resource\n const data = ''\n const contentType = 'text/turtle'\n const response = await store.fetcher.webOperation('PUT', keyUrl, {\n data,\n contentType\n })\n } catch (err) {\n debug.log('createIfNotExists doc FAILED: ' + keyUrl + ': ' + err)\n throw err\n }\n delete store.fetcher.requested[keyUrl] // delete cached 404 error\n return undefined\n }\n debug.log('createIfNotExists doc FAILED: ' + keyUrl + ': ' + err)\n throw err\n }\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* set ACL
|
|
3
|
+
* @param keyDoc
|
|
4
|
+
* @param aclBody
|
|
5
|
+
*/
|
|
6
|
+
export declare function setAcl(keyDoc: string, aclBody: string): Promise<void>;
|
|
7
|
+
/**
|
|
8
|
+
* key container ACL
|
|
9
|
+
* @param me
|
|
10
|
+
* @returns aclBody
|
|
11
|
+
*/
|
|
12
|
+
export declare const keyContainerAclBody: (me: string) => string;
|
|
13
|
+
/**
|
|
14
|
+
* Read only ACL
|
|
15
|
+
* @param keyDoc
|
|
16
|
+
* @param me
|
|
17
|
+
* @returns aclBody
|
|
18
|
+
*/
|
|
19
|
+
export declare const keyAclBody: (keyDoc: any, me: any) => string;
|
|
20
|
+
//# sourceMappingURL=acl.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"acl.d.ts","sourceRoot":"","sources":["../../../src/utils/keyHelpers/acl.ts"],"names":[],"mappings":"AAGA;;;;GAIG;AACH,wBAAsB,MAAM,CAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,iBAsB5D;AAED;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,OAAQ,MAAM,WAe7C,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,UAAU,kCAatB,CAAA"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.keyContainerAclBody = exports.keyAclBody = void 0;
|
|
9
|
+
exports.setAcl = setAcl;
|
|
10
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
11
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
12
|
+
var debug = _interopRequireWildcard(require("../../debug"));
|
|
13
|
+
var _solidLogic = require("solid-logic");
|
|
14
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
15
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
16
|
+
/**
|
|
17
|
+
* set ACL
|
|
18
|
+
* @param keyDoc
|
|
19
|
+
* @param aclBody
|
|
20
|
+
*/
|
|
21
|
+
function setAcl(_x, _x2) {
|
|
22
|
+
return _setAcl.apply(this, arguments);
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* key container ACL
|
|
26
|
+
* @param me
|
|
27
|
+
* @returns aclBody
|
|
28
|
+
*/
|
|
29
|
+
function _setAcl() {
|
|
30
|
+
_setAcl = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(keyDoc, aclBody) {
|
|
31
|
+
var keyAclDoc, _err$response;
|
|
32
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
33
|
+
while (1) switch (_context.prev = _context.next) {
|
|
34
|
+
case 0:
|
|
35
|
+
_context.next = 2;
|
|
36
|
+
return _solidLogic.store.fetcher.load(keyDoc);
|
|
37
|
+
case 2:
|
|
38
|
+
// FIXME: check the Why value on this quad:
|
|
39
|
+
debug.log(_solidLogic.store.statementsMatching(_solidLogic.store.sym(keyDoc), _solidLogic.store.sym('http://www.iana.org/assignments/link-relations/acl')));
|
|
40
|
+
keyAclDoc = _solidLogic.store.any(_solidLogic.store.sym(keyDoc), _solidLogic.store.sym('http://www.iana.org/assignments/link-relations/acl'));
|
|
41
|
+
if (keyAclDoc) {
|
|
42
|
+
_context.next = 6;
|
|
43
|
+
break;
|
|
44
|
+
}
|
|
45
|
+
throw new Error('Key ACL doc not found!');
|
|
46
|
+
case 6:
|
|
47
|
+
_context.prev = 6;
|
|
48
|
+
_context.next = 9;
|
|
49
|
+
return _solidLogic.store.fetcher.webOperation('PUT', keyAclDoc.value, {
|
|
50
|
+
data: aclBody,
|
|
51
|
+
contentType: 'text/turtle'
|
|
52
|
+
});
|
|
53
|
+
case 9:
|
|
54
|
+
_context.next = 16;
|
|
55
|
+
break;
|
|
56
|
+
case 11:
|
|
57
|
+
_context.prev = 11;
|
|
58
|
+
_context.t0 = _context["catch"](6);
|
|
59
|
+
if (!((_context.t0 === null || _context.t0 === void 0 ? void 0 : (_err$response = _context.t0.response) === null || _err$response === void 0 ? void 0 : _err$response.status) !== 404)) {
|
|
60
|
+
_context.next = 15;
|
|
61
|
+
break;
|
|
62
|
+
}
|
|
63
|
+
throw new Error(_context.t0);
|
|
64
|
+
case 15:
|
|
65
|
+
debug.log('delete ' + keyAclDoc.value + ' ' + _context.t0.response.status); // should test 404 and 2xx
|
|
66
|
+
case 16:
|
|
67
|
+
case "end":
|
|
68
|
+
return _context.stop();
|
|
69
|
+
}
|
|
70
|
+
}, _callee, null, [[6, 11]]);
|
|
71
|
+
}));
|
|
72
|
+
return _setAcl.apply(this, arguments);
|
|
73
|
+
}
|
|
74
|
+
var keyContainerAclBody = function keyContainerAclBody(me) {
|
|
75
|
+
var aclBody = "\n@prefix : <#>.\n@prefix acl: <http://www.w3.org/ns/auth/acl#>.\n@prefix foaf: <http://xmlns.com/foaf/0.1/>.\n@prefix key: <./>.\n\n:ReadWrite\n a acl:Authorization;\n acl:accessTo key:;\n acl:default key:;\n acl:agent <".concat(me, ">;\n acl:mode acl:Read, acl:Write.\n");
|
|
76
|
+
return aclBody;
|
|
77
|
+
};
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* Read only ACL
|
|
81
|
+
* @param keyDoc
|
|
82
|
+
* @param me
|
|
83
|
+
* @returns aclBody
|
|
84
|
+
*/
|
|
85
|
+
exports.keyContainerAclBody = keyContainerAclBody;
|
|
86
|
+
var keyAclBody = function keyAclBody(keyDoc, me) {
|
|
87
|
+
var keyAgent = 'acl:agentClass foaf:Agent'; // publicKey
|
|
88
|
+
if (me !== null && me !== void 0 && me.length) keyAgent = "acl:agent <".concat(me, ">"); // privateKey
|
|
89
|
+
var aclBody = "\n@prefix foaf: <http://xmlns.com/foaf/0.1/>.\n@prefix acl: <http://www.w3.org/ns/auth/acl#>.\n<#Read>\n a acl:Authorization;\n ".concat(keyAgent, ";\n acl:accessTo <").concat(keyDoc.split('/').pop(), ">;\n acl:mode acl:Read.\n");
|
|
90
|
+
return aclBody;
|
|
91
|
+
};
|
|
92
|
+
exports.keyAclBody = keyAclBody;
|
|
93
|
+
//# sourceMappingURL=acl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"acl.js","names":["debug","_interopRequireWildcard","require","_solidLogic","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","setAcl","_x","_x2","_setAcl","apply","arguments","_asyncToGenerator2","_regenerator","mark","_callee","keyDoc","aclBody","keyAclDoc","_err$response","wrap","_callee$","_context","prev","next","store","fetcher","load","log","statementsMatching","sym","any","Error","webOperation","value","data","contentType","t0","response","status","stop","keyContainerAclBody","me","concat","exports","keyAclBody","keyAgent","length","split","pop"],"sources":["../../../src/utils/keyHelpers/acl.ts"],"sourcesContent":["import * as debug from '../../debug'\nimport { store } from 'solid-logic'\n\n/**\n * set ACL\n * @param keyDoc\n * @param aclBody\n */\nexport async function setAcl (keyDoc: string, aclBody: string) {\n // Some servers don't present a Link http response header\n // if the container doesn't exist yet, refetch the resource\n\n await store.fetcher.load(keyDoc)\n\n // FIXME: check the Why value on this quad:\n debug.log(store.statementsMatching(store.sym(keyDoc), store.sym('http://www.iana.org/assignments/link-relations/acl')))\n const keyAclDoc = store.any(store.sym(keyDoc), store.sym('http://www.iana.org/assignments/link-relations/acl'))\n if (!keyAclDoc) {\n throw new Error('Key ACL doc not found!')\n }\n\n try {\n await store.fetcher.webOperation('PUT', keyAclDoc.value, {\n data: aclBody,\n contentType: 'text/turtle'\n })\n } catch (err) {\n if (err?.response?.status !== 404) { throw new Error(err) }\n debug.log('delete ' + keyAclDoc.value + ' ' + err.response.status) // should test 404 and 2xx\n }\n}\n\n/**\n * key container ACL\n * @param me\n * @returns aclBody\n */\nexport const keyContainerAclBody = (me: string) => {\n const aclBody = `\n@prefix : <#>.\n@prefix acl: <http://www.w3.org/ns/auth/acl#>.\n@prefix foaf: <http://xmlns.com/foaf/0.1/>.\n@prefix key: <./>.\n\n:ReadWrite\n a acl:Authorization;\n acl:accessTo key:;\n acl:default key:;\n acl:agent <${me}>;\n acl:mode acl:Read, acl:Write.\n`\n return aclBody\n}\n\n/**\n * Read only ACL\n * @param keyDoc\n * @param me\n * @returns aclBody\n */\nexport const keyAclBody = (keyDoc, me) => {\n let keyAgent = 'acl:agentClass foaf:Agent' // publicKey\n if (me?.length) keyAgent = `acl:agent <${me}>` // privateKey\n const aclBody = `\n@prefix foaf: <http://xmlns.com/foaf/0.1/>.\n@prefix acl: <http://www.w3.org/ns/auth/acl#>.\n<#Read>\n a acl:Authorization;\n ${keyAgent};\n acl:accessTo <${keyDoc.split('/').pop()}>;\n acl:mode acl:Read.\n`\n return aclBody\n}\n"],"mappings":"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"}
|
package/lib/versionInfo.js
CHANGED
|
@@ -5,8 +5,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.versionInfo = void 0;
|
|
7
7
|
var versionInfo = {
|
|
8
|
-
buildTime: '2023-
|
|
9
|
-
commit: '
|
|
8
|
+
buildTime: '2023-05-18T17:38:15Z',
|
|
9
|
+
commit: 'cb30461a7764d7e72516d6d179bd1bb16de07c62',
|
|
10
10
|
npmInfo: {
|
|
11
11
|
'solid-ui': '2.4.27',
|
|
12
12
|
npm: '8.19.4',
|
package/lib/versionInfo.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"versionInfo.js","names":["versionInfo","buildTime","commit","npmInfo","npm","node","v8","uv","zlib","brotli","ares","modules","nghttp2","napi","llhttp","openssl","cldr","icu","tz","unicode","ngtcp2","nghttp3","exports"],"sources":["../src/versionInfo.ts"],"sourcesContent":["export const versionInfo = {\n buildTime: '2023-
|
|
1
|
+
{"version":3,"file":"versionInfo.js","names":["versionInfo","buildTime","commit","npmInfo","npm","node","v8","uv","zlib","brotli","ares","modules","nghttp2","napi","llhttp","openssl","cldr","icu","tz","unicode","ngtcp2","nghttp3","exports"],"sources":["../src/versionInfo.ts"],"sourcesContent":["export const versionInfo = {\n buildTime: '2023-05-18T17:38:15Z',\n commit: 'cb30461a7764d7e72516d6d179bd1bb16de07c62',\n npmInfo:\n{\n 'solid-ui': '2.4.27',\n npm: '8.19.4',\n node: '16.20.0',\n v8: '9.4.146.26-node.26',\n uv: '1.43.0',\n zlib: '1.2.11',\n brotli: '1.0.9',\n ares: '1.19.0',\n modules: '93',\n nghttp2: '1.47.0',\n napi: '8',\n llhttp: '6.0.10',\n openssl: '1.1.1t+quic',\n cldr: '41.0',\n icu: '71.1',\n tz: '2022f',\n unicode: '14.0',\n ngtcp2: '0.8.1',\n nghttp3: '0.7.0'\n}\n}\n"],"mappings":";;;;;;AAAO,IAAMA,WAAW,GAAG;EACzBC,SAAS,EAAE,sBAAsB;EACjCC,MAAM,EAAE,0CAA0C;EAClDC,OAAO,EACT;IACE,UAAU,EAAE,QAAQ;IACpBC,GAAG,EAAE,QAAQ;IACbC,IAAI,EAAE,SAAS;IACfC,EAAE,EAAE,oBAAoB;IACxBC,EAAE,EAAE,QAAQ;IACZC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE,OAAO;IACfC,IAAI,EAAE,QAAQ;IACdC,OAAO,EAAE,IAAI;IACbC,OAAO,EAAE,QAAQ;IACjBC,IAAI,EAAE,GAAG;IACTC,MAAM,EAAE,QAAQ;IAChBC,OAAO,EAAE,aAAa;IACtBC,IAAI,EAAE,MAAM;IACZC,GAAG,EAAE,MAAM;IACXC,EAAE,EAAE,OAAO;IACXC,OAAO,EAAE,MAAM;IACfC,MAAM,EAAE,OAAO;IACfC,OAAO,EAAE;EACX;AACA,CAAC;AAAAC,OAAA,CAAAtB,WAAA,GAAAA,WAAA"}
|
package/lib/widgets/buttons.js
CHANGED
|
@@ -65,7 +65,9 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
65
65
|
* UI Widgets such as buttons
|
|
66
66
|
* @packageDocumentation
|
|
67
67
|
*/
|
|
68
|
+
|
|
68
69
|
/* global alert */
|
|
70
|
+
|
|
69
71
|
var iconBase = _iconBase.icons.iconBase;
|
|
70
72
|
var cancelIconURI = iconBase + 'noun_1180156.svg'; // black X
|
|
71
73
|
var checkIconURI = iconBase + 'noun_1180158.svg'; // green checkmark; Continue
|