solid-ui 2.4.23 → 2.4.24
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/dist/main.js +2159 -5039
- package/dist/main.js.map +1 -1
- package/lib/acl/access-controller.js +4 -67
- package/lib/acl/access-controller.js.map +1 -1
- package/lib/acl/access-groups.js +59 -137
- package/lib/acl/access-groups.js.map +1 -1
- package/lib/acl/acl-control.js +14 -54
- package/lib/acl/acl-control.js.map +1 -1
- package/lib/acl/acl.js +32 -107
- package/lib/acl/acl.js.map +1 -1
- package/lib/acl/add-agent-buttons.js +0 -92
- package/lib/acl/add-agent-buttons.js.map +1 -1
- package/lib/acl/index.js +1 -3
- package/lib/acl/index.js.map +1 -1
- package/lib/acl/styles.js +1 -2
- package/lib/acl/styles.js.map +1 -1
- package/lib/chat/bookmarks.js +8 -80
- package/lib/chat/bookmarks.js.map +1 -1
- package/lib/chat/chatLogic.js +109 -180
- package/lib/chat/chatLogic.js.map +1 -1
- package/lib/chat/dateFolder.js +6 -91
- package/lib/chat/dateFolder.js.map +1 -1
- package/lib/chat/infinite.js +33 -185
- package/lib/chat/infinite.js.map +1 -1
- package/lib/chat/message.js +37 -150
- package/lib/chat/message.js.map +1 -1
- package/lib/chat/messageTools.js +23 -96
- package/lib/chat/messageTools.js.map +1 -1
- package/lib/chat/thread.js +33 -91
- package/lib/chat/thread.js.map +1 -1
- package/lib/create/create.js +19 -51
- package/lib/create/create.js.map +1 -1
- package/lib/create/index.js +0 -2
- package/lib/create/index.js.map +1 -1
- package/lib/debug.js +0 -8
- package/lib/debug.js.map +1 -1
- package/lib/folders.js +4 -27
- package/lib/folders.js.map +1 -1
- package/lib/footer/index.js +2 -24
- package/lib/footer/index.js.map +1 -1
- package/lib/footer/styleMap.js.map +1 -1
- package/lib/header/empty-profile.js.map +1 -1
- package/lib/header/index.js +3 -72
- package/lib/header/index.js.map +1 -1
- package/lib/header/styleMap.js +4 -3
- package/lib/header/styleMap.js.map +1 -1
- package/lib/iconBase.js +3 -4
- package/lib/iconBase.js.map +1 -1
- package/lib/index.js +5 -46
- package/lib/index.js.map +1 -1
- package/lib/jss/index.js +3 -9
- package/lib/jss/index.js.map +1 -1
- package/lib/log.js +15 -51
- package/lib/log.js.map +1 -1
- package/lib/login/login.js +74 -303
- package/lib/login/login.js.map +1 -1
- package/lib/matrix/index.js +0 -2
- package/lib/matrix/index.js.map +1 -1
- package/lib/matrix/matrix.js +7 -55
- package/lib/matrix/matrix.js.map +1 -1
- package/lib/media/index.js +0 -2
- package/lib/media/index.js.map +1 -1
- package/lib/media/media-capture.js +13 -33
- package/lib/media/media-capture.js.map +1 -1
- package/lib/messageArea.js +23 -64
- package/lib/messageArea.js.map +1 -1
- package/lib/noun_Camera_1618446_000000.js.map +1 -1
- package/lib/ns.js +5 -7
- package/lib/ns.js.map +1 -1
- package/lib/pad.js +48 -234
- package/lib/pad.js.map +1 -1
- package/lib/participation.js +10 -65
- package/lib/participation.js.map +1 -1
- package/lib/preferences.js +21 -42
- package/lib/preferences.js.map +1 -1
- package/lib/signup/config-default.js +1 -8
- package/lib/signup/config-default.js.map +1 -1
- package/lib/signup/signup.js +6 -13
- package/lib/signup/signup.js.map +1 -1
- package/lib/stories/decorators.js +0 -2
- package/lib/stories/decorators.js.map +1 -1
- package/lib/style.js +8 -5
- package/lib/style.js.map +1 -1
- package/lib/style_multiSelect.js +1 -5
- package/lib/style_multiSelect.js.map +1 -1
- package/lib/table.js +309 -322
- package/lib/table.js.map +1 -1
- package/lib/tabs.js +20 -100
- package/lib/tabs.js.map +1 -1
- package/lib/utils/headerFooterHelpers.js +4 -52
- package/lib/utils/headerFooterHelpers.js.map +1 -1
- package/lib/utils/index.js +41 -135
- package/lib/utils/index.js.map +1 -1
- package/lib/utils/label.js +13 -34
- package/lib/utils/label.js.map +1 -1
- package/lib/versionInfo.js +4 -4
- package/lib/versionInfo.js.map +1 -1
- package/lib/widgets/buttons/iconLinks.js +0 -8
- package/lib/widgets/buttons/iconLinks.js.map +1 -1
- package/lib/widgets/buttons.js +115 -291
- package/lib/widgets/buttons.js.map +1 -1
- package/lib/widgets/dragAndDrop.js +12 -41
- package/lib/widgets/dragAndDrop.js.map +1 -1
- package/lib/widgets/error.js +3 -9
- package/lib/widgets/error.js.map +1 -1
- package/lib/widgets/forms/autocomplete/autocompleteBar.js +8 -71
- package/lib/widgets/forms/autocomplete/autocompleteBar.js.map +1 -1
- package/lib/widgets/forms/autocomplete/autocompleteField.js +13 -65
- package/lib/widgets/forms/autocomplete/autocompleteField.js.map +1 -1
- package/lib/widgets/forms/autocomplete/autocompletePicker.js +15 -107
- package/lib/widgets/forms/autocomplete/autocompletePicker.js.map +1 -1
- package/lib/widgets/forms/autocomplete/language.js +6 -55
- package/lib/widgets/forms/autocomplete/language.js.map +1 -1
- package/lib/widgets/forms/autocomplete/publicData.js +12 -131
- package/lib/widgets/forms/autocomplete/publicData.js.map +1 -1
- package/lib/widgets/forms/basic.js +12 -55
- package/lib/widgets/forms/basic.js.map +1 -1
- package/lib/widgets/forms/comment.js +1 -15
- package/lib/widgets/forms/comment.js.map +1 -1
- package/lib/widgets/forms/fieldFunction.js +3 -16
- package/lib/widgets/forms/fieldFunction.js.map +1 -1
- package/lib/widgets/forms/fieldParams.js +0 -12
- package/lib/widgets/forms/fieldParams.js.map +1 -1
- package/lib/widgets/forms/formStyle.js +1 -14
- package/lib/widgets/forms/formStyle.js.map +1 -1
- package/lib/widgets/forms.js +70 -474
- package/lib/widgets/forms.js.map +1 -1
- package/lib/widgets/index.js +0 -21
- package/lib/widgets/index.js.map +1 -1
- package/lib/widgets/multiSelect.js +48 -171
- package/lib/widgets/multiSelect.js.map +1 -1
- package/lib/widgets/peoplePicker.js +20 -90
- package/lib/widgets/peoplePicker.js.map +1 -1
- package/lib/widgets/widgetHelpers.js +2 -9
- package/lib/widgets/widgetHelpers.js.map +1 -1
- package/package.json +28 -28
package/lib/messageArea.js
CHANGED
|
@@ -1,35 +1,25 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.messageArea = messageArea;
|
|
9
|
-
|
|
10
8
|
var _iconBase = require("./iconBase");
|
|
11
|
-
|
|
12
9
|
var login = _interopRequireWildcard(require("./login/login"));
|
|
13
|
-
|
|
14
10
|
var _solidLogic = require("solid-logic");
|
|
15
|
-
|
|
16
11
|
var ns = _interopRequireWildcard(require("./ns"));
|
|
17
|
-
|
|
18
12
|
var rdf = _interopRequireWildcard(require("rdflib"));
|
|
19
|
-
|
|
20
13
|
var style = _interopRequireWildcard(require("./style"));
|
|
21
|
-
|
|
22
14
|
var utils = _interopRequireWildcard(require("./utils"));
|
|
23
|
-
|
|
24
15
|
var widgets = _interopRequireWildcard(require("./widgets"));
|
|
25
|
-
|
|
26
16
|
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); }
|
|
27
|
-
|
|
28
17
|
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; }
|
|
29
|
-
|
|
30
18
|
// Common code for a discussion are a of messages about something
|
|
31
19
|
//
|
|
20
|
+
|
|
32
21
|
// pull in first avoid cross-refs
|
|
22
|
+
|
|
33
23
|
var UI = {
|
|
34
24
|
icons: _iconBase.icons,
|
|
35
25
|
ns: ns,
|
|
@@ -37,29 +27,26 @@ var UI = {
|
|
|
37
27
|
style: style,
|
|
38
28
|
widgets: widgets
|
|
39
29
|
};
|
|
40
|
-
|
|
41
30
|
function messageArea(dom, kb, subject, messageStore, options) {
|
|
42
31
|
kb = kb || _solidLogic.solidLogicSingleton.store;
|
|
43
32
|
messageStore = messageStore.doc(); // No hash
|
|
44
|
-
|
|
45
33
|
var ns = UI.ns;
|
|
46
34
|
var WF = rdf.Namespace('http://www.w3.org/2005/01/wf/flow#');
|
|
47
35
|
var DCT = rdf.Namespace('http://purl.org/dc/terms/');
|
|
48
36
|
options = options || {};
|
|
49
37
|
var newestFirst = !!options.newestFirst;
|
|
50
|
-
var messageBodyStyle = 'white-space: pre-wrap; width: 90%; font-size:100%; border: 0.07em solid #eee; padding: .2em 0.5em; margin: 0.1em 1em 0.1em 1em;';
|
|
51
|
-
|
|
52
|
-
var div = dom.createElement('div'); // eslint-disable-next-line prefer-const
|
|
38
|
+
var messageBodyStyle = 'white-space: pre-wrap; width: 90%; font-size:100%; border: 0.07em solid #eee; padding: .2em 0.5em; margin: 0.1em 1em 0.1em 1em;';
|
|
39
|
+
// 'font-size: 100%; margin: 0.1em 1em 0.1em 1em; background-color: white; white-space: pre-wrap; padding: 0.1em;'
|
|
53
40
|
|
|
41
|
+
var div = dom.createElement('div');
|
|
42
|
+
// eslint-disable-next-line prefer-const
|
|
54
43
|
var messageTable; // Shared by initial build and addMessageFromBindings
|
|
55
44
|
|
|
56
45
|
var me;
|
|
57
46
|
var updater = _solidLogic.solidLogicSingleton.store.updater;
|
|
58
|
-
|
|
59
47
|
var anchor = function anchor(text, term) {
|
|
60
48
|
// If there is no link return an element anyway
|
|
61
49
|
var a = dom.createElement('a');
|
|
62
|
-
|
|
63
50
|
if (term && term.uri) {
|
|
64
51
|
a.setAttribute('href', term.uri);
|
|
65
52
|
a.addEventListener('click', UI.widgets.openHrefInOutlineMode, true);
|
|
@@ -69,7 +56,6 @@ function messageArea(dom, kb, subject, messageStore, options) {
|
|
|
69
56
|
a.textContent = text;
|
|
70
57
|
return a;
|
|
71
58
|
};
|
|
72
|
-
|
|
73
59
|
var mention = function mention(message, style) {
|
|
74
60
|
var pre = dom.createElement('pre');
|
|
75
61
|
pre.setAttribute('style', style || 'color: grey');
|
|
@@ -77,7 +63,6 @@ function messageArea(dom, kb, subject, messageStore, options) {
|
|
|
77
63
|
pre.appendChild(dom.createTextNode(message));
|
|
78
64
|
return pre;
|
|
79
65
|
};
|
|
80
|
-
|
|
81
66
|
var announce = {
|
|
82
67
|
log: function log(message) {
|
|
83
68
|
mention(message, 'color: #111;');
|
|
@@ -88,9 +73,10 @@ function messageArea(dom, kb, subject, messageStore, options) {
|
|
|
88
73
|
error: function error(message) {
|
|
89
74
|
mention(message, 'color: #800;');
|
|
90
75
|
}
|
|
91
|
-
};
|
|
92
|
-
//
|
|
76
|
+
};
|
|
93
77
|
|
|
78
|
+
// Form for a new message
|
|
79
|
+
//
|
|
94
80
|
var newMessageForm = function newMessageForm() {
|
|
95
81
|
var form = dom.createElement('tr');
|
|
96
82
|
var lhs = dom.createElement('td');
|
|
@@ -109,17 +95,15 @@ function messageArea(dom, kb, subject, messageStore, options) {
|
|
|
109
95
|
var sts = [];
|
|
110
96
|
var now = new Date();
|
|
111
97
|
var timestamp = '' + now.getTime();
|
|
112
|
-
var dateStamp = rdf.term(now);
|
|
113
|
-
|
|
98
|
+
var dateStamp = rdf.term(now);
|
|
99
|
+
// http://www.w3schools.com/jsref/jsref_obj_date.asp
|
|
114
100
|
var message = kb.sym(messageStore.uri + '#' + 'Msg' + timestamp);
|
|
115
101
|
sts.push(new rdf.Statement(subject, ns.wf('message'), message, messageStore));
|
|
116
102
|
sts.push(new rdf.Statement(message, ns.sioc('content'), kb.literal(field.value), messageStore));
|
|
117
103
|
sts.push(new rdf.Statement(message, DCT('created'), dateStamp, messageStore));
|
|
118
|
-
|
|
119
104
|
if (me) {
|
|
120
105
|
sts.push(new rdf.Statement(message, ns.foaf('maker'), me, messageStore));
|
|
121
106
|
}
|
|
122
|
-
|
|
123
107
|
var sendComplete = function sendComplete(uri, success, body) {
|
|
124
108
|
if (!success) {
|
|
125
109
|
form.appendChild(UI.widgets.errorMessageBlock(dom, 'Error writing message: ' + body));
|
|
@@ -133,25 +117,21 @@ function messageArea(dom, kb, subject, messageStore, options) {
|
|
|
133
117
|
renderMessage(bindings, false); // not green
|
|
134
118
|
|
|
135
119
|
field.value = ''; // clear from out for reuse
|
|
136
|
-
|
|
137
120
|
field.setAttribute('class', '');
|
|
138
121
|
field.disabled = false;
|
|
139
122
|
}
|
|
140
123
|
};
|
|
141
|
-
|
|
142
124
|
updater.update([], sts, sendComplete);
|
|
143
125
|
};
|
|
144
|
-
|
|
145
126
|
form.appendChild(dom.createElement('br'));
|
|
146
127
|
var field, sendButton;
|
|
147
|
-
|
|
148
128
|
var turnOnInput = function turnOnInput() {
|
|
149
129
|
creatorAndDate(lhs, me, '', null);
|
|
150
130
|
field = dom.createElement('textarea');
|
|
151
131
|
middle.innerHTML = '';
|
|
152
132
|
middle.appendChild(field);
|
|
153
|
-
field.rows = 3;
|
|
154
|
-
|
|
133
|
+
field.rows = 3;
|
|
134
|
+
// field.cols = 40
|
|
155
135
|
field.setAttribute('style', messageBodyStyle + 'background-color: #eef;');
|
|
156
136
|
field.addEventListener('keyup', function (e) {
|
|
157
137
|
// User preference?
|
|
@@ -168,7 +148,6 @@ function messageArea(dom, kb, subject, messageStore, options) {
|
|
|
168
148
|
sendButton.addEventListener('click', sendMessage, false);
|
|
169
149
|
rhs.appendChild(sendButton);
|
|
170
150
|
};
|
|
171
|
-
|
|
172
151
|
var context = {
|
|
173
152
|
div: middle,
|
|
174
153
|
dom: dom
|
|
@@ -179,59 +158,50 @@ function messageArea(dom, kb, subject, messageStore, options) {
|
|
|
179
158
|
});
|
|
180
159
|
return form;
|
|
181
160
|
};
|
|
182
|
-
|
|
183
161
|
function nick(person) {
|
|
184
162
|
var s = _solidLogic.solidLogicSingleton.store.any(person, UI.ns.foaf('nick'));
|
|
185
|
-
|
|
186
163
|
if (s) return '' + s.value;
|
|
187
164
|
return '' + utils.label(person);
|
|
188
165
|
}
|
|
189
|
-
|
|
190
166
|
function creatorAndDate(td1, creator, date, message) {
|
|
191
167
|
var nickAnchor = td1.appendChild(anchor(nick(creator), creator));
|
|
192
|
-
|
|
193
168
|
if (creator.uri) {
|
|
194
169
|
_solidLogic.solidLogicSingleton.store.fetcher.nowOrWhenFetched(creator.doc(), undefined, function (_ok, _body) {
|
|
195
170
|
nickAnchor.textContent = nick(creator);
|
|
196
171
|
});
|
|
197
172
|
}
|
|
198
|
-
|
|
199
173
|
td1.appendChild(dom.createElement('br'));
|
|
200
174
|
td1.appendChild(anchor(date, message));
|
|
201
|
-
}
|
|
175
|
+
}
|
|
202
176
|
|
|
177
|
+
// ///////////////////////////////////////////////////////////////////////
|
|
203
178
|
|
|
204
179
|
function syncMessages(about, messageTable) {
|
|
205
180
|
var displayed = {};
|
|
206
181
|
var ele, ele2;
|
|
207
|
-
|
|
208
182
|
for (ele = messageTable.firstChild; ele; ele = ele.nextSibling) {
|
|
209
183
|
if (ele.AJAR_subject) {
|
|
210
184
|
displayed[ele.AJAR_subject.uri] = true;
|
|
211
185
|
}
|
|
212
186
|
}
|
|
213
|
-
|
|
214
187
|
var messages = kb.each(about, ns.wf('message'));
|
|
215
188
|
var stored = {};
|
|
216
189
|
messages.forEach(function (m) {
|
|
217
190
|
stored[m.uri] = true;
|
|
218
|
-
|
|
219
191
|
if (!displayed[m.uri]) {
|
|
220
192
|
addMessage(m);
|
|
221
193
|
}
|
|
222
|
-
});
|
|
194
|
+
});
|
|
223
195
|
|
|
196
|
+
// eslint-disable-next-line space-in-parens
|
|
224
197
|
for (ele = messageTable.firstChild; ele;) {
|
|
225
198
|
ele2 = ele.nextSibling;
|
|
226
|
-
|
|
227
199
|
if (ele.AJAR_subject && !stored[ele.AJAR_subject.uri]) {
|
|
228
200
|
messageTable.removeChild(ele);
|
|
229
201
|
}
|
|
230
|
-
|
|
231
202
|
ele = ele2;
|
|
232
203
|
}
|
|
233
204
|
}
|
|
234
|
-
|
|
235
205
|
var deleteMessage = function deleteMessage(message) {
|
|
236
206
|
var deletions = kb.statementsMatching(message).concat(kb.statementsMatching(undefined, undefined, message));
|
|
237
207
|
updater.update(deletions, [], function (uri, ok, body) {
|
|
@@ -242,7 +212,6 @@ function messageArea(dom, kb, subject, messageStore, options) {
|
|
|
242
212
|
}
|
|
243
213
|
});
|
|
244
214
|
};
|
|
245
|
-
|
|
246
215
|
var addMessage = function addMessage(message) {
|
|
247
216
|
var bindings = {
|
|
248
217
|
'?msg': message,
|
|
@@ -263,24 +232,20 @@ function messageArea(dom, kb, subject, messageStore, options) {
|
|
|
263
232
|
tr.AJAR_date = dateString;
|
|
264
233
|
tr.AJAR_subject = message;
|
|
265
234
|
var done = false;
|
|
266
|
-
|
|
267
235
|
for (var ele = messageTable.firstChild;; ele = ele.nextSibling) {
|
|
268
236
|
if (!ele) {
|
|
269
237
|
// empty
|
|
270
238
|
break;
|
|
271
239
|
}
|
|
272
|
-
|
|
273
240
|
if (dateString > ele.AJAR_date && newestFirst || dateString < ele.AJAR_date && !newestFirst) {
|
|
274
241
|
messageTable.insertBefore(tr, ele);
|
|
275
242
|
done = true;
|
|
276
243
|
break;
|
|
277
244
|
}
|
|
278
245
|
}
|
|
279
|
-
|
|
280
246
|
if (!done) {
|
|
281
247
|
messageTable.appendChild(tr);
|
|
282
248
|
}
|
|
283
|
-
|
|
284
249
|
var td1 = dom.createElement('td');
|
|
285
250
|
tr.appendChild(td1);
|
|
286
251
|
creatorAndDate(td1, creator, UI.widgets.shortDate(dateString), message);
|
|
@@ -296,12 +261,10 @@ function messageArea(dom, kb, subject, messageStore, options) {
|
|
|
296
261
|
td3.appendChild(delButton);
|
|
297
262
|
delButton.textContent = '-';
|
|
298
263
|
tr.setAttribute('class', 'hoverControl'); // See tabbedtab.css (sigh global CSS)
|
|
299
|
-
|
|
300
264
|
delButton.setAttribute('class', 'hoverControlHide');
|
|
301
265
|
delButton.setAttribute('style', 'color: red;');
|
|
302
266
|
delButton.addEventListener('click', function (_event) {
|
|
303
267
|
td3.removeChild(delButton); // Ask -- are you sure?
|
|
304
|
-
|
|
305
268
|
var cancelButton = dom.createElement('button');
|
|
306
269
|
cancelButton.textContent = 'cancel';
|
|
307
270
|
td3.appendChild(cancelButton).addEventListener('click', function (_event) {
|
|
@@ -317,8 +280,9 @@ function messageArea(dom, kb, subject, messageStore, options) {
|
|
|
317
280
|
deleteMessage(message);
|
|
318
281
|
}, false);
|
|
319
282
|
}, false);
|
|
320
|
-
};
|
|
283
|
+
};
|
|
321
284
|
|
|
285
|
+
// Messages with date, author etc
|
|
322
286
|
|
|
323
287
|
messageTable = dom.createElement('table');
|
|
324
288
|
messageTable.fresh = false;
|
|
@@ -326,21 +290,19 @@ function messageArea(dom, kb, subject, messageStore, options) {
|
|
|
326
290
|
messageTable.setAttribute('style', 'width: 100%;'); // fill that div!
|
|
327
291
|
|
|
328
292
|
var tr = newMessageForm();
|
|
329
|
-
|
|
330
293
|
if (newestFirst) {
|
|
331
294
|
messageTable.insertBefore(tr, messageTable.firstChild); // If newestFirst
|
|
332
295
|
} else {
|
|
333
296
|
messageTable.appendChild(tr); // not newestFirst
|
|
334
297
|
}
|
|
335
298
|
|
|
336
|
-
var query;
|
|
337
|
-
|
|
299
|
+
var query;
|
|
300
|
+
// Do this with a live query to pull in messages from web
|
|
338
301
|
if (options.query) {
|
|
339
302
|
query = options.query;
|
|
340
303
|
} else {
|
|
341
304
|
query = new rdf.Query('Messages');
|
|
342
305
|
var v = {}; // semicolon needed
|
|
343
|
-
|
|
344
306
|
var vs = ['msg', 'date', 'creator', 'content'];
|
|
345
307
|
vs.forEach(function (x) {
|
|
346
308
|
query.vars.push(v[x] = rdf.variable(x));
|
|
@@ -350,18 +312,15 @@ function messageArea(dom, kb, subject, messageStore, options) {
|
|
|
350
312
|
query.pat.add(v.msg, ns.foaf('maker'), v.creator);
|
|
351
313
|
query.pat.add(v.msg, ns.sioc('content'), v.content);
|
|
352
314
|
}
|
|
353
|
-
|
|
354
315
|
function doneQuery() {
|
|
355
316
|
messageTable.fresh = true; // any new are fresh and so will be greenish
|
|
356
317
|
}
|
|
357
318
|
|
|
358
319
|
kb.query(query, renderMessage, undefined, doneQuery);
|
|
359
|
-
|
|
360
320
|
div.refresh = function () {
|
|
361
321
|
syncMessages(subject, messageTable);
|
|
362
|
-
};
|
|
363
|
-
|
|
364
|
-
|
|
322
|
+
};
|
|
323
|
+
// syncMessages(subject, messageTable) // no the query will do this async
|
|
365
324
|
return div;
|
|
366
325
|
}
|
|
367
326
|
//# sourceMappingURL=messageArea.js.map
|
package/lib/messageArea.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messageArea.js","names":["UI","icons","ns","rdf","style","widgets","messageArea","dom","kb","subject","messageStore","options","solidLogicSingleton","store","doc","WF","Namespace","DCT","newestFirst","messageBodyStyle","div","createElement","messageTable","me","updater","anchor","text","term","a","uri","setAttribute","addEventListener","openHrefInOutlineMode","textContent","mention","message","pre","appendChild","createTextNode","announce","log","warn","error","newMessageForm","form","lhs","middle","rhs","AJAR_date","sendMessage","field","disabled","sts","now","Date","timestamp","getTime","dateStamp","sym","push","Statement","wf","sioc","literal","value","foaf","sendComplete","success","body","errorMessageBlock","bindings","renderMessage","update","sendButton","turnOnInput","creatorAndDate","innerHTML","rows","e","keyCode","altKey","button","iconBase","buttonStyle","context","login","ensureLoggedIn","then","nick","person","s","any","utils","label","td1","creator","date","nickAnchor","fetcher","nowOrWhenFetched","undefined","_ok","_body","syncMessages","about","displayed","ele","ele2","firstChild","nextSibling","AJAR_subject","messages","each","stored","forEach","m","addMessage","removeChild","deleteMessage","deletions","statementsMatching","concat","ok","fresh","content","dateString","tr","done","insertBefore","shortDate","td2","td3","delButton","_event","cancelButton","sureButton","query","Query","v","vs","x","vars","variable","pat","add","msg","dct","doneQuery","refresh"],"sources":["../src/messageArea.js"],"sourcesContent":["// Common code for a discussion are a of messages about something\n//\n\nimport { icons } from './iconBase'\nimport * as login from './login/login'\nimport { solidLogicSingleton } from 'solid-logic'\nimport * as ns from './ns'\nimport * as rdf from 'rdflib' // pull in first avoid cross-refs\nimport * as style from './style'\nimport * as utils from './utils'\nimport * as widgets from './widgets'\n\nconst UI = { icons, ns, rdf, style, widgets }\n\nexport function messageArea (dom, kb, subject, messageStore, options) {\n kb = kb || solidLogicSingleton.store\n messageStore = messageStore.doc() // No hash\n const ns = UI.ns\n const WF = rdf.Namespace('http://www.w3.org/2005/01/wf/flow#')\n const DCT = rdf.Namespace('http://purl.org/dc/terms/')\n\n options = options || {}\n\n const newestFirst = !!options.newestFirst\n\n const messageBodyStyle =\n 'white-space: pre-wrap; width: 90%; font-size:100%; border: 0.07em solid #eee; padding: .2em 0.5em; margin: 0.1em 1em 0.1em 1em;'\n // 'font-size: 100%; margin: 0.1em 1em 0.1em 1em; background-color: white; white-space: pre-wrap; padding: 0.1em;'\n\n const div = dom.createElement('div')\n // eslint-disable-next-line prefer-const\n let messageTable // Shared by initial build and addMessageFromBindings\n\n let me\n\n const updater = solidLogicSingleton.store.updater\n\n const anchor = function (text, term) {\n // If there is no link return an element anyway\n const a = dom.createElement('a')\n if (term && term.uri) {\n a.setAttribute('href', term.uri)\n a.addEventListener('click', UI.widgets.openHrefInOutlineMode, true)\n a.setAttribute('style', 'color: #3B5998; text-decoration: none; ') // font-weight: bold\n }\n a.textContent = text\n return a\n }\n\n const mention = function mention (message, style) {\n const pre = dom.createElement('pre')\n pre.setAttribute('style', style || 'color: grey')\n div.appendChild(pre)\n pre.appendChild(dom.createTextNode(message))\n return pre\n }\n\n const announce = {\n log: function (message) {\n mention(message, 'color: #111;')\n },\n warn: function (message) {\n mention(message, 'color: #880;')\n },\n error: function (message) {\n mention(message, 'color: #800;')\n }\n }\n\n // Form for a new message\n //\n const newMessageForm = function () {\n const form = dom.createElement('tr')\n const lhs = dom.createElement('td')\n const middle = dom.createElement('td')\n const rhs = dom.createElement('td')\n form.appendChild(lhs)\n form.appendChild(middle)\n form.appendChild(rhs)\n form.AJAR_date = '9999-01-01T00:00:00Z' // ISO format for field sort\n\n const sendMessage = function () {\n // titlefield.setAttribute('class','pendingedit')\n // titlefield.disabled = true\n field.setAttribute('class', 'pendingedit')\n field.disabled = true\n const sts = []\n const now = new Date()\n const timestamp = '' + now.getTime()\n const dateStamp = rdf.term(now)\n // http://www.w3schools.com/jsref/jsref_obj_date.asp\n const message = kb.sym(messageStore.uri + '#' + 'Msg' + timestamp)\n\n sts.push(\n new rdf.Statement(subject, ns.wf('message'), message, messageStore)\n )\n sts.push(\n new rdf.Statement(\n message,\n ns.sioc('content'),\n kb.literal(field.value),\n messageStore\n )\n )\n sts.push(\n new rdf.Statement(message, DCT('created'), dateStamp, messageStore)\n )\n if (me) {\n sts.push(\n new rdf.Statement(message, ns.foaf('maker'), me, messageStore)\n )\n }\n\n const sendComplete = function (uri, success, body) {\n if (!success) {\n form.appendChild(\n UI.widgets.errorMessageBlock(dom, 'Error writing message: ' + body)\n )\n } else {\n const bindings = {\n '?msg': message,\n '?content': kb.literal(field.value),\n '?date': dateStamp,\n '?creator': me\n }\n renderMessage(bindings, false) // not green\n\n field.value = '' // clear from out for reuse\n field.setAttribute('class', '')\n field.disabled = false\n }\n }\n updater.update([], sts, sendComplete)\n }\n form.appendChild(dom.createElement('br'))\n\n let field, sendButton\n const turnOnInput = function () {\n creatorAndDate(lhs, me, '', null)\n\n field = dom.createElement('textarea')\n middle.innerHTML = ''\n middle.appendChild(field)\n field.rows = 3\n // field.cols = 40\n field.setAttribute('style', messageBodyStyle + 'background-color: #eef;')\n\n field.addEventListener(\n 'keyup',\n function (e) {\n // User preference?\n if (e.keyCode === 13) {\n if (!e.altKey) {\n // Alt-Enter just adds a new line\n sendMessage()\n }\n }\n },\n false\n )\n\n rhs.innerHTML = ''\n sendButton = UI.widgets.button(\n dom,\n UI.icons.iconBase + 'noun_383448.svg',\n 'Send'\n )\n sendButton.setAttribute('style', UI.style.buttonStyle + 'float: right;')\n sendButton.addEventListener('click', sendMessage, false)\n rhs.appendChild(sendButton)\n }\n\n const context = { div: middle, dom }\n login.ensureLoggedIn(context).then(context => {\n me = context.me\n turnOnInput()\n })\n\n return form\n }\n\n function nick (person) {\n const s = solidLogicSingleton.store.any(person, UI.ns.foaf('nick'))\n if (s) return '' + s.value\n return '' + utils.label(person)\n }\n\n function creatorAndDate (td1, creator, date, message) {\n const nickAnchor = td1.appendChild(anchor(nick(creator), creator))\n if (creator.uri) {\n solidLogicSingleton.store.fetcher.nowOrWhenFetched(creator.doc(), undefined, function (\n _ok,\n _body\n ) {\n nickAnchor.textContent = nick(creator)\n })\n }\n td1.appendChild(dom.createElement('br'))\n td1.appendChild(anchor(date, message))\n }\n\n // ///////////////////////////////////////////////////////////////////////\n\n function syncMessages (about, messageTable) {\n const displayed = {}\n let ele, ele2\n for (ele = messageTable.firstChild; ele; ele = ele.nextSibling) {\n if (ele.AJAR_subject) {\n displayed[ele.AJAR_subject.uri] = true\n }\n }\n const messages = kb.each(about, ns.wf('message'))\n const stored = {}\n messages.forEach(function (m) {\n stored[m.uri] = true\n if (!displayed[m.uri]) {\n addMessage(m)\n }\n })\n\n // eslint-disable-next-line space-in-parens\n for (ele = messageTable.firstChild; ele; ) {\n ele2 = ele.nextSibling\n if (ele.AJAR_subject && !stored[ele.AJAR_subject.uri]) {\n messageTable.removeChild(ele)\n }\n ele = ele2\n }\n }\n\n const deleteMessage = function (message) {\n const deletions = kb\n .statementsMatching(message)\n .concat(kb.statementsMatching(undefined, undefined, message))\n updater.update(deletions, [], function (uri, ok, body) {\n if (!ok) {\n announce.error('Cant delete messages:' + body)\n } else {\n syncMessages(subject, messageTable)\n }\n })\n }\n\n const addMessage = function (message) {\n const bindings = {\n '?msg': message,\n '?creator': kb.any(message, ns.foaf('maker')),\n '?date': kb.any(message, DCT('created')),\n '?content': kb.any(message, ns.sioc('content'))\n }\n renderMessage(bindings, true) // fresh from elsewhere\n }\n\n const renderMessage = function (bindings, fresh) {\n const creator = bindings['?creator']\n const message = bindings['?msg']\n const date = bindings['?date']\n const content = bindings['?content']\n\n const dateString = date.value\n const tr = dom.createElement('tr')\n tr.AJAR_date = dateString\n tr.AJAR_subject = message\n\n let done = false\n for (let ele = messageTable.firstChild; ; ele = ele.nextSibling) {\n if (!ele) {\n // empty\n break\n }\n if (\n (dateString > ele.AJAR_date && newestFirst) ||\n (dateString < ele.AJAR_date && !newestFirst)\n ) {\n messageTable.insertBefore(tr, ele)\n done = true\n break\n }\n }\n if (!done) {\n messageTable.appendChild(tr)\n }\n\n const td1 = dom.createElement('td')\n tr.appendChild(td1)\n creatorAndDate(td1, creator, UI.widgets.shortDate(dateString), message)\n\n const td2 = dom.createElement('td')\n tr.appendChild(td2)\n const pre = dom.createElement('p')\n pre.setAttribute(\n 'style',\n messageBodyStyle +\n (fresh ? 'background-color: #e8ffe8;' : 'background-color: #white;')\n )\n td2.appendChild(pre)\n pre.textContent = content.value\n\n const td3 = dom.createElement('td')\n tr.appendChild(td3)\n\n const delButton = dom.createElement('button')\n td3.appendChild(delButton)\n delButton.textContent = '-'\n\n tr.setAttribute('class', 'hoverControl') // See tabbedtab.css (sigh global CSS)\n delButton.setAttribute('class', 'hoverControlHide')\n delButton.setAttribute('style', 'color: red;')\n delButton.addEventListener(\n 'click',\n function (_event) {\n td3.removeChild(delButton) // Ask -- are you sure?\n const cancelButton = dom.createElement('button')\n cancelButton.textContent = 'cancel'\n td3.appendChild(cancelButton).addEventListener(\n 'click',\n function (_event) {\n td3.removeChild(sureButton)\n td3.removeChild(cancelButton)\n td3.appendChild(delButton)\n },\n false\n )\n const sureButton = dom.createElement('button')\n sureButton.textContent = 'Delete message'\n td3.appendChild(sureButton).addEventListener(\n 'click',\n function (_event) {\n td3.removeChild(sureButton)\n td3.removeChild(cancelButton)\n deleteMessage(message)\n },\n false\n )\n },\n false\n )\n }\n\n // Messages with date, author etc\n\n messageTable = dom.createElement('table')\n messageTable.fresh = false\n div.appendChild(messageTable)\n messageTable.setAttribute('style', 'width: 100%;') // fill that div!\n\n const tr = newMessageForm()\n if (newestFirst) {\n messageTable.insertBefore(tr, messageTable.firstChild) // If newestFirst\n } else {\n messageTable.appendChild(tr) // not newestFirst\n }\n\n let query\n // Do this with a live query to pull in messages from web\n if (options.query) {\n query = options.query\n } else {\n query = new rdf.Query('Messages')\n const v = {} // semicolon needed\n const vs = ['msg', 'date', 'creator', 'content']\n vs.forEach(function (x) {\n query.vars.push((v[x] = rdf.variable(x)))\n })\n query.pat.add(subject, WF('message'), v.msg)\n query.pat.add(v.msg, ns.dct('created'), v.date)\n query.pat.add(v.msg, ns.foaf('maker'), v.creator)\n query.pat.add(v.msg, ns.sioc('content'), v.content)\n }\n function doneQuery () {\n messageTable.fresh = true // any new are fresh and so will be greenish\n }\n kb.query(query, renderMessage, undefined, doneQuery)\n div.refresh = function () {\n syncMessages(subject, messageTable)\n }\n // syncMessages(subject, messageTable) // no the query will do this async\n return div\n}\n"],"mappings":";;;;;;;;;AAGA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;AAVA;AACA;AAM8B;AAK9B,IAAMA,EAAE,GAAG;EAAEC,KAAK,EAALA,eAAF;EAASC,EAAE,EAAFA,EAAT;EAAaC,GAAG,EAAHA,GAAb;EAAkBC,KAAK,EAALA,KAAlB;EAAyBC,OAAO,EAAPA;AAAzB,CAAX;;AAEO,SAASC,WAAT,CAAsBC,GAAtB,EAA2BC,EAA3B,EAA+BC,OAA/B,EAAwCC,YAAxC,EAAsDC,OAAtD,EAA+D;EACpEH,EAAE,GAAGA,EAAE,IAAII,+BAAA,CAAoBC,KAA/B;EACAH,YAAY,GAAGA,YAAY,CAACI,GAAb,EAAf,CAFoE,CAElC;;EAClC,IAAMZ,EAAE,GAAGF,EAAE,CAACE,EAAd;EACA,IAAMa,EAAE,GAAGZ,GAAG,CAACa,SAAJ,CAAc,oCAAd,CAAX;EACA,IAAMC,GAAG,GAAGd,GAAG,CAACa,SAAJ,CAAc,2BAAd,CAAZ;EAEAL,OAAO,GAAGA,OAAO,IAAI,EAArB;EAEA,IAAMO,WAAW,GAAG,CAAC,CAACP,OAAO,CAACO,WAA9B;EAEA,IAAMC,gBAAgB,GACpB,iIADF,CAXoE,CAapE;;EAEA,IAAMC,GAAG,GAAGb,GAAG,CAACc,aAAJ,CAAkB,KAAlB,CAAZ,CAfoE,CAgBpE;;EACA,IAAIC,YAAJ,CAjBoE,CAiBnD;;EAEjB,IAAIC,EAAJ;EAEA,IAAMC,OAAO,GAAGZ,+BAAA,CAAoBC,KAApB,CAA0BW,OAA1C;;EAEA,IAAMC,MAAM,GAAG,SAATA,MAAS,CAAUC,IAAV,EAAgBC,IAAhB,EAAsB;IACnC;IACA,IAAMC,CAAC,GAAGrB,GAAG,CAACc,aAAJ,CAAkB,GAAlB,CAAV;;IACA,IAAIM,IAAI,IAAIA,IAAI,CAACE,GAAjB,EAAsB;MACpBD,CAAC,CAACE,YAAF,CAAe,MAAf,EAAuBH,IAAI,CAACE,GAA5B;MACAD,CAAC,CAACG,gBAAF,CAAmB,OAAnB,EAA4B/B,EAAE,CAACK,OAAH,CAAW2B,qBAAvC,EAA8D,IAA9D;MACAJ,CAAC,CAACE,YAAF,CAAe,OAAf,EAAwB,yCAAxB,EAHoB,CAG+C;IACpE;;IACDF,CAAC,CAACK,WAAF,GAAgBP,IAAhB;IACA,OAAOE,CAAP;EACD,CAVD;;EAYA,IAAMM,OAAO,GAAG,SAASA,OAAT,CAAkBC,OAAlB,EAA2B/B,KAA3B,EAAkC;IAChD,IAAMgC,GAAG,GAAG7B,GAAG,CAACc,aAAJ,CAAkB,KAAlB,CAAZ;IACAe,GAAG,CAACN,YAAJ,CAAiB,OAAjB,EAA0B1B,KAAK,IAAI,aAAnC;IACAgB,GAAG,CAACiB,WAAJ,CAAgBD,GAAhB;IACAA,GAAG,CAACC,WAAJ,CAAgB9B,GAAG,CAAC+B,cAAJ,CAAmBH,OAAnB,CAAhB;IACA,OAAOC,GAAP;EACD,CAND;;EAQA,IAAMG,QAAQ,GAAG;IACfC,GAAG,EAAE,aAAUL,OAAV,EAAmB;MACtBD,OAAO,CAACC,OAAD,EAAU,cAAV,CAAP;IACD,CAHc;IAIfM,IAAI,EAAE,cAAUN,OAAV,EAAmB;MACvBD,OAAO,CAACC,OAAD,EAAU,cAAV,CAAP;IACD,CANc;IAOfO,KAAK,EAAE,eAAUP,OAAV,EAAmB;MACxBD,OAAO,CAACC,OAAD,EAAU,cAAV,CAAP;IACD;EATc,CAAjB,CA3CoE,CAuDpE;EACA;;EACA,IAAMQ,cAAc,GAAG,SAAjBA,cAAiB,GAAY;IACjC,IAAMC,IAAI,GAAGrC,GAAG,CAACc,aAAJ,CAAkB,IAAlB,CAAb;IACA,IAAMwB,GAAG,GAAGtC,GAAG,CAACc,aAAJ,CAAkB,IAAlB,CAAZ;IACA,IAAMyB,MAAM,GAAGvC,GAAG,CAACc,aAAJ,CAAkB,IAAlB,CAAf;IACA,IAAM0B,GAAG,GAAGxC,GAAG,CAACc,aAAJ,CAAkB,IAAlB,CAAZ;IACAuB,IAAI,CAACP,WAAL,CAAiBQ,GAAjB;IACAD,IAAI,CAACP,WAAL,CAAiBS,MAAjB;IACAF,IAAI,CAACP,WAAL,CAAiBU,GAAjB;IACAH,IAAI,CAACI,SAAL,GAAiB,sBAAjB,CARiC,CAQO;;IAExC,IAAMC,WAAW,GAAG,SAAdA,WAAc,GAAY;MAC9B;MACA;MACAC,KAAK,CAACpB,YAAN,CAAmB,OAAnB,EAA4B,aAA5B;MACAoB,KAAK,CAACC,QAAN,GAAiB,IAAjB;MACA,IAAMC,GAAG,GAAG,EAAZ;MACA,IAAMC,GAAG,GAAG,IAAIC,IAAJ,EAAZ;MACA,IAAMC,SAAS,GAAG,KAAKF,GAAG,CAACG,OAAJ,EAAvB;MACA,IAAMC,SAAS,GAAGtD,GAAG,CAACwB,IAAJ,CAAS0B,GAAT,CAAlB,CAR8B,CAS9B;;MACA,IAAMlB,OAAO,GAAG3B,EAAE,CAACkD,GAAH,CAAOhD,YAAY,CAACmB,GAAb,GAAmB,GAAnB,GAAyB,KAAzB,GAAiC0B,SAAxC,CAAhB;MAEAH,GAAG,CAACO,IAAJ,CACE,IAAIxD,GAAG,CAACyD,SAAR,CAAkBnD,OAAlB,EAA2BP,EAAE,CAAC2D,EAAH,CAAM,SAAN,CAA3B,EAA6C1B,OAA7C,EAAsDzB,YAAtD,CADF;MAGA0C,GAAG,CAACO,IAAJ,CACE,IAAIxD,GAAG,CAACyD,SAAR,CACEzB,OADF,EAEEjC,EAAE,CAAC4D,IAAH,CAAQ,SAAR,CAFF,EAGEtD,EAAE,CAACuD,OAAH,CAAWb,KAAK,CAACc,KAAjB,CAHF,EAIEtD,YAJF,CADF;MAQA0C,GAAG,CAACO,IAAJ,CACE,IAAIxD,GAAG,CAACyD,SAAR,CAAkBzB,OAAlB,EAA2BlB,GAAG,CAAC,SAAD,CAA9B,EAA2CwC,SAA3C,EAAsD/C,YAAtD,CADF;;MAGA,IAAIa,EAAJ,EAAQ;QACN6B,GAAG,CAACO,IAAJ,CACE,IAAIxD,GAAG,CAACyD,SAAR,CAAkBzB,OAAlB,EAA2BjC,EAAE,CAAC+D,IAAH,CAAQ,OAAR,CAA3B,EAA6C1C,EAA7C,EAAiDb,YAAjD,CADF;MAGD;;MAED,IAAMwD,YAAY,GAAG,SAAfA,YAAe,CAAUrC,GAAV,EAAesC,OAAf,EAAwBC,IAAxB,EAA8B;QACjD,IAAI,CAACD,OAAL,EAAc;UACZvB,IAAI,CAACP,WAAL,CACErC,EAAE,CAACK,OAAH,CAAWgE,iBAAX,CAA6B9D,GAA7B,EAAkC,4BAA4B6D,IAA9D,CADF;QAGD,CAJD,MAIO;UACL,IAAME,QAAQ,GAAG;YACf,QAAQnC,OADO;YAEf,YAAY3B,EAAE,CAACuD,OAAH,CAAWb,KAAK,CAACc,KAAjB,CAFG;YAGf,SAASP,SAHM;YAIf,YAAYlC;UAJG,CAAjB;UAMAgD,aAAa,CAACD,QAAD,EAAW,KAAX,CAAb,CAPK,CAO0B;;UAE/BpB,KAAK,CAACc,KAAN,GAAc,EAAd,CATK,CASY;;UACjBd,KAAK,CAACpB,YAAN,CAAmB,OAAnB,EAA4B,EAA5B;UACAoB,KAAK,CAACC,QAAN,GAAiB,KAAjB;QACD;MACF,CAlBD;;MAmBA3B,OAAO,CAACgD,MAAR,CAAe,EAAf,EAAmBpB,GAAnB,EAAwBc,YAAxB;IACD,CApDD;;IAqDAtB,IAAI,CAACP,WAAL,CAAiB9B,GAAG,CAACc,aAAJ,CAAkB,IAAlB,CAAjB;IAEA,IAAI6B,KAAJ,EAAWuB,UAAX;;IACA,IAAMC,WAAW,GAAG,SAAdA,WAAc,GAAY;MAC9BC,cAAc,CAAC9B,GAAD,EAAMtB,EAAN,EAAU,EAAV,EAAc,IAAd,CAAd;MAEA2B,KAAK,GAAG3C,GAAG,CAACc,aAAJ,CAAkB,UAAlB,CAAR;MACAyB,MAAM,CAAC8B,SAAP,GAAmB,EAAnB;MACA9B,MAAM,CAACT,WAAP,CAAmBa,KAAnB;MACAA,KAAK,CAAC2B,IAAN,GAAa,CAAb,CAN8B,CAO9B;;MACA3B,KAAK,CAACpB,YAAN,CAAmB,OAAnB,EAA4BX,gBAAgB,GAAG,yBAA/C;MAEA+B,KAAK,CAACnB,gBAAN,CACE,OADF,EAEE,UAAU+C,CAAV,EAAa;QACX;QACA,IAAIA,CAAC,CAACC,OAAF,KAAc,EAAlB,EAAsB;UACpB,IAAI,CAACD,CAAC,CAACE,MAAP,EAAe;YACb;YACA/B,WAAW;UACZ;QACF;MACF,CAVH,EAWE,KAXF;MAcAF,GAAG,CAAC6B,SAAJ,GAAgB,EAAhB;MACAH,UAAU,GAAGzE,EAAE,CAACK,OAAH,CAAW4E,MAAX,CACX1E,GADW,EAEXP,EAAE,CAACC,KAAH,CAASiF,QAAT,GAAoB,iBAFT,EAGX,MAHW,CAAb;MAKAT,UAAU,CAAC3C,YAAX,CAAwB,OAAxB,EAAiC9B,EAAE,CAACI,KAAH,CAAS+E,WAAT,GAAuB,eAAxD;MACAV,UAAU,CAAC1C,gBAAX,CAA4B,OAA5B,EAAqCkB,WAArC,EAAkD,KAAlD;MACAF,GAAG,CAACV,WAAJ,CAAgBoC,UAAhB;IACD,CAjCD;;IAmCA,IAAMW,OAAO,GAAG;MAAEhE,GAAG,EAAE0B,MAAP;MAAevC,GAAG,EAAHA;IAAf,CAAhB;IACA8E,KAAK,CAACC,cAAN,CAAqBF,OAArB,EAA8BG,IAA9B,CAAmC,UAAAH,OAAO,EAAI;MAC5C7D,EAAE,GAAG6D,OAAO,CAAC7D,EAAb;MACAmD,WAAW;IACZ,CAHD;IAKA,OAAO9B,IAAP;EACD,CA5GD;;EA8GA,SAAS4C,IAAT,CAAeC,MAAf,EAAuB;IACrB,IAAMC,CAAC,GAAG9E,+BAAA,CAAoBC,KAApB,CAA0B8E,GAA1B,CAA8BF,MAA9B,EAAsCzF,EAAE,CAACE,EAAH,CAAM+D,IAAN,CAAW,MAAX,CAAtC,CAAV;;IACA,IAAIyB,CAAJ,EAAO,OAAO,KAAKA,CAAC,CAAC1B,KAAd;IACP,OAAO,KAAK4B,KAAK,CAACC,KAAN,CAAYJ,MAAZ,CAAZ;EACD;;EAED,SAASd,cAAT,CAAyBmB,GAAzB,EAA8BC,OAA9B,EAAuCC,IAAvC,EAA6C7D,OAA7C,EAAsD;IACpD,IAAM8D,UAAU,GAAGH,GAAG,CAACzD,WAAJ,CAAgBZ,MAAM,CAAC+D,IAAI,CAACO,OAAD,CAAL,EAAgBA,OAAhB,CAAtB,CAAnB;;IACA,IAAIA,OAAO,CAAClE,GAAZ,EAAiB;MACfjB,+BAAA,CAAoBC,KAApB,CAA0BqF,OAA1B,CAAkCC,gBAAlC,CAAmDJ,OAAO,CAACjF,GAAR,EAAnD,EAAkEsF,SAAlE,EAA6E,UAC3EC,GAD2E,EAE3EC,KAF2E,EAG3E;QACAL,UAAU,CAAChE,WAAX,GAAyBuD,IAAI,CAACO,OAAD,CAA7B;MACD,CALD;IAMD;;IACDD,GAAG,CAACzD,WAAJ,CAAgB9B,GAAG,CAACc,aAAJ,CAAkB,IAAlB,CAAhB;IACAyE,GAAG,CAACzD,WAAJ,CAAgBZ,MAAM,CAACuE,IAAD,EAAO7D,OAAP,CAAtB;EACD,CAzLmE,CA2LpE;;;EAEA,SAASoE,YAAT,CAAuBC,KAAvB,EAA8BlF,YAA9B,EAA4C;IAC1C,IAAMmF,SAAS,GAAG,EAAlB;IACA,IAAIC,GAAJ,EAASC,IAAT;;IACA,KAAKD,GAAG,GAAGpF,YAAY,CAACsF,UAAxB,EAAoCF,GAApC,EAAyCA,GAAG,GAAGA,GAAG,CAACG,WAAnD,EAAgE;MAC9D,IAAIH,GAAG,CAACI,YAAR,EAAsB;QACpBL,SAAS,CAACC,GAAG,CAACI,YAAJ,CAAiBjF,GAAlB,CAAT,GAAkC,IAAlC;MACD;IACF;;IACD,IAAMkF,QAAQ,GAAGvG,EAAE,CAACwG,IAAH,CAAQR,KAAR,EAAetG,EAAE,CAAC2D,EAAH,CAAM,SAAN,CAAf,CAAjB;IACA,IAAMoD,MAAM,GAAG,EAAf;IACAF,QAAQ,CAACG,OAAT,CAAiB,UAAUC,CAAV,EAAa;MAC5BF,MAAM,CAACE,CAAC,CAACtF,GAAH,CAAN,GAAgB,IAAhB;;MACA,IAAI,CAAC4E,SAAS,CAACU,CAAC,CAACtF,GAAH,CAAd,EAAuB;QACrBuF,UAAU,CAACD,CAAD,CAAV;MACD;IACF,CALD,EAV0C,CAiB1C;;IACA,KAAKT,GAAG,GAAGpF,YAAY,CAACsF,UAAxB,EAAoCF,GAApC,GAA2C;MACzCC,IAAI,GAAGD,GAAG,CAACG,WAAX;;MACA,IAAIH,GAAG,CAACI,YAAJ,IAAoB,CAACG,MAAM,CAACP,GAAG,CAACI,YAAJ,CAAiBjF,GAAlB,CAA/B,EAAuD;QACrDP,YAAY,CAAC+F,WAAb,CAAyBX,GAAzB;MACD;;MACDA,GAAG,GAAGC,IAAN;IACD;EACF;;EAED,IAAMW,aAAa,GAAG,SAAhBA,aAAgB,CAAUnF,OAAV,EAAmB;IACvC,IAAMoF,SAAS,GAAG/G,EAAE,CACjBgH,kBADe,CACIrF,OADJ,EAEfsF,MAFe,CAERjH,EAAE,CAACgH,kBAAH,CAAsBpB,SAAtB,EAAiCA,SAAjC,EAA4CjE,OAA5C,CAFQ,CAAlB;IAGAX,OAAO,CAACgD,MAAR,CAAe+C,SAAf,EAA0B,EAA1B,EAA8B,UAAU1F,GAAV,EAAe6F,EAAf,EAAmBtD,IAAnB,EAAyB;MACrD,IAAI,CAACsD,EAAL,EAAS;QACPnF,QAAQ,CAACG,KAAT,CAAe,0BAA0B0B,IAAzC;MACD,CAFD,MAEO;QACLmC,YAAY,CAAC9F,OAAD,EAAUa,YAAV,CAAZ;MACD;IACF,CAND;EAOD,CAXD;;EAaA,IAAM8F,UAAU,GAAG,SAAbA,UAAa,CAAUjF,OAAV,EAAmB;IACpC,IAAMmC,QAAQ,GAAG;MACf,QAAQnC,OADO;MAEf,YAAY3B,EAAE,CAACmF,GAAH,CAAOxD,OAAP,EAAgBjC,EAAE,CAAC+D,IAAH,CAAQ,OAAR,CAAhB,CAFG;MAGf,SAASzD,EAAE,CAACmF,GAAH,CAAOxD,OAAP,EAAgBlB,GAAG,CAAC,SAAD,CAAnB,CAHM;MAIf,YAAYT,EAAE,CAACmF,GAAH,CAAOxD,OAAP,EAAgBjC,EAAE,CAAC4D,IAAH,CAAQ,SAAR,CAAhB;IAJG,CAAjB;IAMAS,aAAa,CAACD,QAAD,EAAW,IAAX,CAAb,CAPoC,CAON;EAC/B,CARD;;EAUA,IAAMC,aAAa,GAAG,SAAhBA,aAAgB,CAAUD,QAAV,EAAoBqD,KAApB,EAA2B;IAC/C,IAAM5B,OAAO,GAAGzB,QAAQ,CAAC,UAAD,CAAxB;IACA,IAAMnC,OAAO,GAAGmC,QAAQ,CAAC,MAAD,CAAxB;IACA,IAAM0B,IAAI,GAAG1B,QAAQ,CAAC,OAAD,CAArB;IACA,IAAMsD,OAAO,GAAGtD,QAAQ,CAAC,UAAD,CAAxB;IAEA,IAAMuD,UAAU,GAAG7B,IAAI,CAAChC,KAAxB;IACA,IAAM8D,EAAE,GAAGvH,GAAG,CAACc,aAAJ,CAAkB,IAAlB,CAAX;IACAyG,EAAE,CAAC9E,SAAH,GAAe6E,UAAf;IACAC,EAAE,CAAChB,YAAH,GAAkB3E,OAAlB;IAEA,IAAI4F,IAAI,GAAG,KAAX;;IACA,KAAK,IAAIrB,GAAG,GAAGpF,YAAY,CAACsF,UAA5B,GAA0CF,GAAG,GAAGA,GAAG,CAACG,WAApD,EAAiE;MAC/D,IAAI,CAACH,GAAL,EAAU;QACR;QACA;MACD;;MACD,IACGmB,UAAU,GAAGnB,GAAG,CAAC1D,SAAjB,IAA8B9B,WAA/B,IACC2G,UAAU,GAAGnB,GAAG,CAAC1D,SAAjB,IAA8B,CAAC9B,WAFlC,EAGE;QACAI,YAAY,CAAC0G,YAAb,CAA0BF,EAA1B,EAA8BpB,GAA9B;QACAqB,IAAI,GAAG,IAAP;QACA;MACD;IACF;;IACD,IAAI,CAACA,IAAL,EAAW;MACTzG,YAAY,CAACe,WAAb,CAAyByF,EAAzB;IACD;;IAED,IAAMhC,GAAG,GAAGvF,GAAG,CAACc,aAAJ,CAAkB,IAAlB,CAAZ;IACAyG,EAAE,CAACzF,WAAH,CAAeyD,GAAf;IACAnB,cAAc,CAACmB,GAAD,EAAMC,OAAN,EAAe/F,EAAE,CAACK,OAAH,CAAW4H,SAAX,CAAqBJ,UAArB,CAAf,EAAiD1F,OAAjD,CAAd;IAEA,IAAM+F,GAAG,GAAG3H,GAAG,CAACc,aAAJ,CAAkB,IAAlB,CAAZ;IACAyG,EAAE,CAACzF,WAAH,CAAe6F,GAAf;IACA,IAAM9F,GAAG,GAAG7B,GAAG,CAACc,aAAJ,CAAkB,GAAlB,CAAZ;IACAe,GAAG,CAACN,YAAJ,CACE,OADF,EAEEX,gBAAgB,IACbwG,KAAK,GAAG,4BAAH,GAAkC,2BAD1B,CAFlB;IAKAO,GAAG,CAAC7F,WAAJ,CAAgBD,GAAhB;IACAA,GAAG,CAACH,WAAJ,GAAkB2F,OAAO,CAAC5D,KAA1B;IAEA,IAAMmE,GAAG,GAAG5H,GAAG,CAACc,aAAJ,CAAkB,IAAlB,CAAZ;IACAyG,EAAE,CAACzF,WAAH,CAAe8F,GAAf;IAEA,IAAMC,SAAS,GAAG7H,GAAG,CAACc,aAAJ,CAAkB,QAAlB,CAAlB;IACA8G,GAAG,CAAC9F,WAAJ,CAAgB+F,SAAhB;IACAA,SAAS,CAACnG,WAAV,GAAwB,GAAxB;IAEA6F,EAAE,CAAChG,YAAH,CAAgB,OAAhB,EAAyB,cAAzB,EApD+C,CAoDN;;IACzCsG,SAAS,CAACtG,YAAV,CAAuB,OAAvB,EAAgC,kBAAhC;IACAsG,SAAS,CAACtG,YAAV,CAAuB,OAAvB,EAAgC,aAAhC;IACAsG,SAAS,CAACrG,gBAAV,CACE,OADF,EAEE,UAAUsG,MAAV,EAAkB;MAChBF,GAAG,CAACd,WAAJ,CAAgBe,SAAhB,EADgB,CACW;;MAC3B,IAAME,YAAY,GAAG/H,GAAG,CAACc,aAAJ,CAAkB,QAAlB,CAArB;MACAiH,YAAY,CAACrG,WAAb,GAA2B,QAA3B;MACAkG,GAAG,CAAC9F,WAAJ,CAAgBiG,YAAhB,EAA8BvG,gBAA9B,CACE,OADF,EAEE,UAAUsG,MAAV,EAAkB;QAChBF,GAAG,CAACd,WAAJ,CAAgBkB,UAAhB;QACAJ,GAAG,CAACd,WAAJ,CAAgBiB,YAAhB;QACAH,GAAG,CAAC9F,WAAJ,CAAgB+F,SAAhB;MACD,CANH,EAOE,KAPF;MASA,IAAMG,UAAU,GAAGhI,GAAG,CAACc,aAAJ,CAAkB,QAAlB,CAAnB;MACAkH,UAAU,CAACtG,WAAX,GAAyB,gBAAzB;MACAkG,GAAG,CAAC9F,WAAJ,CAAgBkG,UAAhB,EAA4BxG,gBAA5B,CACE,OADF,EAEE,UAAUsG,MAAV,EAAkB;QAChBF,GAAG,CAACd,WAAJ,CAAgBkB,UAAhB;QACAJ,GAAG,CAACd,WAAJ,CAAgBiB,YAAhB;QACAhB,aAAa,CAACnF,OAAD,CAAb;MACD,CANH,EAOE,KAPF;IASD,CA1BH,EA2BE,KA3BF;EA6BD,CApFD,CA/OoE,CAqUpE;;;EAEAb,YAAY,GAAGf,GAAG,CAACc,aAAJ,CAAkB,OAAlB,CAAf;EACAC,YAAY,CAACqG,KAAb,GAAqB,KAArB;EACAvG,GAAG,CAACiB,WAAJ,CAAgBf,YAAhB;EACAA,YAAY,CAACQ,YAAb,CAA0B,OAA1B,EAAmC,cAAnC,EA1UoE,CA0UjB;;EAEnD,IAAMgG,EAAE,GAAGnF,cAAc,EAAzB;;EACA,IAAIzB,WAAJ,EAAiB;IACfI,YAAY,CAAC0G,YAAb,CAA0BF,EAA1B,EAA8BxG,YAAY,CAACsF,UAA3C,EADe,CACwC;EACxD,CAFD,MAEO;IACLtF,YAAY,CAACe,WAAb,CAAyByF,EAAzB,EADK,CACwB;EAC9B;;EAED,IAAIU,KAAJ,CAnVoE,CAoVpE;;EACA,IAAI7H,OAAO,CAAC6H,KAAZ,EAAmB;IACjBA,KAAK,GAAG7H,OAAO,CAAC6H,KAAhB;EACD,CAFD,MAEO;IACLA,KAAK,GAAG,IAAIrI,GAAG,CAACsI,KAAR,CAAc,UAAd,CAAR;IACA,IAAMC,CAAC,GAAG,EAAV,CAFK,CAEQ;;IACb,IAAMC,EAAE,GAAG,CAAC,KAAD,EAAQ,MAAR,EAAgB,SAAhB,EAA2B,SAA3B,CAAX;IACAA,EAAE,CAACzB,OAAH,CAAW,UAAU0B,CAAV,EAAa;MACtBJ,KAAK,CAACK,IAAN,CAAWlF,IAAX,CAAiB+E,CAAC,CAACE,CAAD,CAAD,GAAOzI,GAAG,CAAC2I,QAAJ,CAAaF,CAAb,CAAxB;IACD,CAFD;IAGAJ,KAAK,CAACO,GAAN,CAAUC,GAAV,CAAcvI,OAAd,EAAuBM,EAAE,CAAC,SAAD,CAAzB,EAAsC2H,CAAC,CAACO,GAAxC;IACAT,KAAK,CAACO,GAAN,CAAUC,GAAV,CAAcN,CAAC,CAACO,GAAhB,EAAqB/I,EAAE,CAACgJ,GAAH,CAAO,SAAP,CAArB,EAAwCR,CAAC,CAAC1C,IAA1C;IACAwC,KAAK,CAACO,GAAN,CAAUC,GAAV,CAAcN,CAAC,CAACO,GAAhB,EAAqB/I,EAAE,CAAC+D,IAAH,CAAQ,OAAR,CAArB,EAAuCyE,CAAC,CAAC3C,OAAzC;IACAyC,KAAK,CAACO,GAAN,CAAUC,GAAV,CAAcN,CAAC,CAACO,GAAhB,EAAqB/I,EAAE,CAAC4D,IAAH,CAAQ,SAAR,CAArB,EAAyC4E,CAAC,CAACd,OAA3C;EACD;;EACD,SAASuB,SAAT,GAAsB;IACpB7H,YAAY,CAACqG,KAAb,GAAqB,IAArB,CADoB,CACM;EAC3B;;EACDnH,EAAE,CAACgI,KAAH,CAASA,KAAT,EAAgBjE,aAAhB,EAA+B6B,SAA/B,EAA0C+C,SAA1C;;EACA/H,GAAG,CAACgI,OAAJ,GAAc,YAAY;IACxB7C,YAAY,CAAC9F,OAAD,EAAUa,YAAV,CAAZ;EACD,CAFD,CAvWoE,CA0WpE;;;EACA,OAAOF,GAAP;AACD"}
|
|
1
|
+
{"version":3,"file":"messageArea.js","names":["UI","icons","ns","rdf","style","widgets","messageArea","dom","kb","subject","messageStore","options","solidLogicSingleton","store","doc","WF","Namespace","DCT","newestFirst","messageBodyStyle","div","createElement","messageTable","me","updater","anchor","text","term","a","uri","setAttribute","addEventListener","openHrefInOutlineMode","textContent","mention","message","pre","appendChild","createTextNode","announce","log","warn","error","newMessageForm","form","lhs","middle","rhs","AJAR_date","sendMessage","field","disabled","sts","now","Date","timestamp","getTime","dateStamp","sym","push","Statement","wf","sioc","literal","value","foaf","sendComplete","success","body","errorMessageBlock","bindings","renderMessage","update","sendButton","turnOnInput","creatorAndDate","innerHTML","rows","e","keyCode","altKey","button","iconBase","buttonStyle","context","login","ensureLoggedIn","then","nick","person","s","any","utils","label","td1","creator","date","nickAnchor","fetcher","nowOrWhenFetched","undefined","_ok","_body","syncMessages","about","displayed","ele","ele2","firstChild","nextSibling","AJAR_subject","messages","each","stored","forEach","m","addMessage","removeChild","deleteMessage","deletions","statementsMatching","concat","ok","fresh","content","dateString","tr","done","insertBefore","shortDate","td2","td3","delButton","_event","cancelButton","sureButton","query","Query","v","vs","x","vars","variable","pat","add","msg","dct","doneQuery","refresh"],"sources":["../src/messageArea.js"],"sourcesContent":["// Common code for a discussion are a of messages about something\n//\n\nimport { icons } from './iconBase'\nimport * as login from './login/login'\nimport { solidLogicSingleton } from 'solid-logic'\nimport * as ns from './ns'\nimport * as rdf from 'rdflib' // pull in first avoid cross-refs\nimport * as style from './style'\nimport * as utils from './utils'\nimport * as widgets from './widgets'\n\nconst UI = { icons, ns, rdf, style, widgets }\n\nexport function messageArea (dom, kb, subject, messageStore, options) {\n kb = kb || solidLogicSingleton.store\n messageStore = messageStore.doc() // No hash\n const ns = UI.ns\n const WF = rdf.Namespace('http://www.w3.org/2005/01/wf/flow#')\n const DCT = rdf.Namespace('http://purl.org/dc/terms/')\n\n options = options || {}\n\n const newestFirst = !!options.newestFirst\n\n const messageBodyStyle =\n 'white-space: pre-wrap; width: 90%; font-size:100%; border: 0.07em solid #eee; padding: .2em 0.5em; margin: 0.1em 1em 0.1em 1em;'\n // 'font-size: 100%; margin: 0.1em 1em 0.1em 1em; background-color: white; white-space: pre-wrap; padding: 0.1em;'\n\n const div = dom.createElement('div')\n // eslint-disable-next-line prefer-const\n let messageTable // Shared by initial build and addMessageFromBindings\n\n let me\n\n const updater = solidLogicSingleton.store.updater\n\n const anchor = function (text, term) {\n // If there is no link return an element anyway\n const a = dom.createElement('a')\n if (term && term.uri) {\n a.setAttribute('href', term.uri)\n a.addEventListener('click', UI.widgets.openHrefInOutlineMode, true)\n a.setAttribute('style', 'color: #3B5998; text-decoration: none; ') // font-weight: bold\n }\n a.textContent = text\n return a\n }\n\n const mention = function mention (message, style) {\n const pre = dom.createElement('pre')\n pre.setAttribute('style', style || 'color: grey')\n div.appendChild(pre)\n pre.appendChild(dom.createTextNode(message))\n return pre\n }\n\n const announce = {\n log: function (message) {\n mention(message, 'color: #111;')\n },\n warn: function (message) {\n mention(message, 'color: #880;')\n },\n error: function (message) {\n mention(message, 'color: #800;')\n }\n }\n\n // Form for a new message\n //\n const newMessageForm = function () {\n const form = dom.createElement('tr')\n const lhs = dom.createElement('td')\n const middle = dom.createElement('td')\n const rhs = dom.createElement('td')\n form.appendChild(lhs)\n form.appendChild(middle)\n form.appendChild(rhs)\n form.AJAR_date = '9999-01-01T00:00:00Z' // ISO format for field sort\n\n const sendMessage = function () {\n // titlefield.setAttribute('class','pendingedit')\n // titlefield.disabled = true\n field.setAttribute('class', 'pendingedit')\n field.disabled = true\n const sts = []\n const now = new Date()\n const timestamp = '' + now.getTime()\n const dateStamp = rdf.term(now)\n // http://www.w3schools.com/jsref/jsref_obj_date.asp\n const message = kb.sym(messageStore.uri + '#' + 'Msg' + timestamp)\n\n sts.push(\n new rdf.Statement(subject, ns.wf('message'), message, messageStore)\n )\n sts.push(\n new rdf.Statement(\n message,\n ns.sioc('content'),\n kb.literal(field.value),\n messageStore\n )\n )\n sts.push(\n new rdf.Statement(message, DCT('created'), dateStamp, messageStore)\n )\n if (me) {\n sts.push(\n new rdf.Statement(message, ns.foaf('maker'), me, messageStore)\n )\n }\n\n const sendComplete = function (uri, success, body) {\n if (!success) {\n form.appendChild(\n UI.widgets.errorMessageBlock(dom, 'Error writing message: ' + body)\n )\n } else {\n const bindings = {\n '?msg': message,\n '?content': kb.literal(field.value),\n '?date': dateStamp,\n '?creator': me\n }\n renderMessage(bindings, false) // not green\n\n field.value = '' // clear from out for reuse\n field.setAttribute('class', '')\n field.disabled = false\n }\n }\n updater.update([], sts, sendComplete)\n }\n form.appendChild(dom.createElement('br'))\n\n let field, sendButton\n const turnOnInput = function () {\n creatorAndDate(lhs, me, '', null)\n\n field = dom.createElement('textarea')\n middle.innerHTML = ''\n middle.appendChild(field)\n field.rows = 3\n // field.cols = 40\n field.setAttribute('style', messageBodyStyle + 'background-color: #eef;')\n\n field.addEventListener(\n 'keyup',\n function (e) {\n // User preference?\n if (e.keyCode === 13) {\n if (!e.altKey) {\n // Alt-Enter just adds a new line\n sendMessage()\n }\n }\n },\n false\n )\n\n rhs.innerHTML = ''\n sendButton = UI.widgets.button(\n dom,\n UI.icons.iconBase + 'noun_383448.svg',\n 'Send'\n )\n sendButton.setAttribute('style', UI.style.buttonStyle + 'float: right;')\n sendButton.addEventListener('click', sendMessage, false)\n rhs.appendChild(sendButton)\n }\n\n const context = { div: middle, dom }\n login.ensureLoggedIn(context).then(context => {\n me = context.me\n turnOnInput()\n })\n\n return form\n }\n\n function nick (person) {\n const s = solidLogicSingleton.store.any(person, UI.ns.foaf('nick'))\n if (s) return '' + s.value\n return '' + utils.label(person)\n }\n\n function creatorAndDate (td1, creator, date, message) {\n const nickAnchor = td1.appendChild(anchor(nick(creator), creator))\n if (creator.uri) {\n solidLogicSingleton.store.fetcher.nowOrWhenFetched(creator.doc(), undefined, function (\n _ok,\n _body\n ) {\n nickAnchor.textContent = nick(creator)\n })\n }\n td1.appendChild(dom.createElement('br'))\n td1.appendChild(anchor(date, message))\n }\n\n // ///////////////////////////////////////////////////////////////////////\n\n function syncMessages (about, messageTable) {\n const displayed = {}\n let ele, ele2\n for (ele = messageTable.firstChild; ele; ele = ele.nextSibling) {\n if (ele.AJAR_subject) {\n displayed[ele.AJAR_subject.uri] = true\n }\n }\n const messages = kb.each(about, ns.wf('message'))\n const stored = {}\n messages.forEach(function (m) {\n stored[m.uri] = true\n if (!displayed[m.uri]) {\n addMessage(m)\n }\n })\n\n // eslint-disable-next-line space-in-parens\n for (ele = messageTable.firstChild; ele; ) {\n ele2 = ele.nextSibling\n if (ele.AJAR_subject && !stored[ele.AJAR_subject.uri]) {\n messageTable.removeChild(ele)\n }\n ele = ele2\n }\n }\n\n const deleteMessage = function (message) {\n const deletions = kb\n .statementsMatching(message)\n .concat(kb.statementsMatching(undefined, undefined, message))\n updater.update(deletions, [], function (uri, ok, body) {\n if (!ok) {\n announce.error('Cant delete messages:' + body)\n } else {\n syncMessages(subject, messageTable)\n }\n })\n }\n\n const addMessage = function (message) {\n const bindings = {\n '?msg': message,\n '?creator': kb.any(message, ns.foaf('maker')),\n '?date': kb.any(message, DCT('created')),\n '?content': kb.any(message, ns.sioc('content'))\n }\n renderMessage(bindings, true) // fresh from elsewhere\n }\n\n const renderMessage = function (bindings, fresh) {\n const creator = bindings['?creator']\n const message = bindings['?msg']\n const date = bindings['?date']\n const content = bindings['?content']\n\n const dateString = date.value\n const tr = dom.createElement('tr')\n tr.AJAR_date = dateString\n tr.AJAR_subject = message\n\n let done = false\n for (let ele = messageTable.firstChild; ; ele = ele.nextSibling) {\n if (!ele) {\n // empty\n break\n }\n if (\n (dateString > ele.AJAR_date && newestFirst) ||\n (dateString < ele.AJAR_date && !newestFirst)\n ) {\n messageTable.insertBefore(tr, ele)\n done = true\n break\n }\n }\n if (!done) {\n messageTable.appendChild(tr)\n }\n\n const td1 = dom.createElement('td')\n tr.appendChild(td1)\n creatorAndDate(td1, creator, UI.widgets.shortDate(dateString), message)\n\n const td2 = dom.createElement('td')\n tr.appendChild(td2)\n const pre = dom.createElement('p')\n pre.setAttribute(\n 'style',\n messageBodyStyle +\n (fresh ? 'background-color: #e8ffe8;' : 'background-color: #white;')\n )\n td2.appendChild(pre)\n pre.textContent = content.value\n\n const td3 = dom.createElement('td')\n tr.appendChild(td3)\n\n const delButton = dom.createElement('button')\n td3.appendChild(delButton)\n delButton.textContent = '-'\n\n tr.setAttribute('class', 'hoverControl') // See tabbedtab.css (sigh global CSS)\n delButton.setAttribute('class', 'hoverControlHide')\n delButton.setAttribute('style', 'color: red;')\n delButton.addEventListener(\n 'click',\n function (_event) {\n td3.removeChild(delButton) // Ask -- are you sure?\n const cancelButton = dom.createElement('button')\n cancelButton.textContent = 'cancel'\n td3.appendChild(cancelButton).addEventListener(\n 'click',\n function (_event) {\n td3.removeChild(sureButton)\n td3.removeChild(cancelButton)\n td3.appendChild(delButton)\n },\n false\n )\n const sureButton = dom.createElement('button')\n sureButton.textContent = 'Delete message'\n td3.appendChild(sureButton).addEventListener(\n 'click',\n function (_event) {\n td3.removeChild(sureButton)\n td3.removeChild(cancelButton)\n deleteMessage(message)\n },\n false\n )\n },\n false\n )\n }\n\n // Messages with date, author etc\n\n messageTable = dom.createElement('table')\n messageTable.fresh = false\n div.appendChild(messageTable)\n messageTable.setAttribute('style', 'width: 100%;') // fill that div!\n\n const tr = newMessageForm()\n if (newestFirst) {\n messageTable.insertBefore(tr, messageTable.firstChild) // If newestFirst\n } else {\n messageTable.appendChild(tr) // not newestFirst\n }\n\n let query\n // Do this with a live query to pull in messages from web\n if (options.query) {\n query = options.query\n } else {\n query = new rdf.Query('Messages')\n const v = {} // semicolon needed\n const vs = ['msg', 'date', 'creator', 'content']\n vs.forEach(function (x) {\n query.vars.push((v[x] = rdf.variable(x)))\n })\n query.pat.add(subject, WF('message'), v.msg)\n query.pat.add(v.msg, ns.dct('created'), v.date)\n query.pat.add(v.msg, ns.foaf('maker'), v.creator)\n query.pat.add(v.msg, ns.sioc('content'), v.content)\n }\n function doneQuery () {\n messageTable.fresh = true // any new are fresh and so will be greenish\n }\n kb.query(query, renderMessage, undefined, doneQuery)\n div.refresh = function () {\n syncMessages(subject, messageTable)\n }\n // syncMessages(subject, messageTable) // no the query will do this async\n return div\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"noun_Camera_1618446_000000.js","names":[],"sources":["../src/noun_Camera_1618446_000000.js"],"sourcesContent":["export default 'data:image/svg;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2ZXJzaW9uPSIxLjEiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMTAwIDEwMCIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMTAwIDEwMCIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PGc+PHBhdGggZD0iTTcyLjkyNiwzNC4zMzNINjIuNDc4bC0yLjUtNS42NjZINDAuMDIybC0yLjUsNS42NjZoLTIuMjc1di0zLjcwN2gtNnYzLjcwN2gtMi4xNzNjLTEuOTMsMC0zLjUsMS41Ny0zLjUsMy41djMwICAgYzAsMS45MywxLjU3LDMuNSwzLjUsMy41aDQ1Ljg1MmMxLjkzLDAsMy41LTEuNTcsMy41LTMuNXYtMzBDNzYuNDI2LDM1LjkwMyw3NC44NTUsMzQuMzMzLDcyLjkyNiwzNC4zMzN6IE03My40MjYsNjcuODMzICAgYzAsMC4yNzUtMC4yMjUsMC41LTAuNSwwLjVIMjcuMDc0Yy0wLjI3NSwwLTAuNS0wLjIyNS0wLjUtMC41di0zMGMwLTAuMjc1LDAuMjI1LTAuNSwwLjUtMC41aDEyLjQwM2wyLjUtNS42NjZoMTYuMDQ1bDIuNSw1LjY2NiAgIGgxMi40MDNjMC4yNzUsMCwwLjUsMC4yMjUsMC41LDAuNVY2Ny44MzN6Ij48L3BhdGg+PHBhdGggZD0iTTUwLDM4Ljc2NmMtNy4yOTgsMC0xMy4yMzQsNS45MzctMTMuMjM0LDEzLjIzNFM0Mi43MDIsNjUuMjM0LDUwLDY1LjIzNFM2My4yMzQsNTkuMjk4LDYzLjIzNCw1MlM1Ny4yOTgsMzguNzY2LDUwLDM4Ljc2NiAgIHogTTUwLDYyLjIzNGMtNS42NDQsMC0xMC4yMzQtNC41OTEtMTAuMjM0LTEwLjIzNFM0NC4zNTYsNDEuNzY2LDUwLDQxLjc2NlM2MC4yMzQsNDYuMzU2LDYwLjIzNCw1MlM1NS42NDQsNjIuMjM0LDUwLDYyLjIzNHoiPjwvcGF0aD48cGF0aCBkPSJNNTAuMDAxLDQzLjI0MmMtNC44MywwLTguNzYsMy45MjktOC43Niw4Ljc1OHMzLjkzLDguNzU4LDguNzYsOC43NThjNC44MjksMCw4Ljc1OC0zLjkyOSw4Ljc1OC04Ljc1OCAgIFM1NC44Myw0My4yNDIsNTAuMDAxLDQzLjI0MnogTTUwLjAwMSw1OS43NThjLTQuMjc4LDAtNy43Ni0zLjQ4LTcuNzYtNy43NThzMy40ODEtNy43NTgsNy43Ni03Ljc1OCAgIGM0LjI3NywwLDcuNzU4LDMuNDgsNy43NTgsNy43NThTNTQuMjc4LDU5Ljc1OCw1MC4wMDEsNTkuNzU4eiI+PC9wYXRoPjwvZz48L3N2Zz4='\n"],"mappings":";;;;;;eAAe,
|
|
1
|
+
{"version":3,"file":"noun_Camera_1618446_000000.js","names":[],"sources":["../src/noun_Camera_1618446_000000.js"],"sourcesContent":["export default 'data:image/svg;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2ZXJzaW9uPSIxLjEiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMTAwIDEwMCIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMTAwIDEwMCIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PGc+PHBhdGggZD0iTTcyLjkyNiwzNC4zMzNINjIuNDc4bC0yLjUtNS42NjZINDAuMDIybC0yLjUsNS42NjZoLTIuMjc1di0zLjcwN2gtNnYzLjcwN2gtMi4xNzNjLTEuOTMsMC0zLjUsMS41Ny0zLjUsMy41djMwICAgYzAsMS45MywxLjU3LDMuNSwzLjUsMy41aDQ1Ljg1MmMxLjkzLDAsMy41LTEuNTcsMy41LTMuNXYtMzBDNzYuNDI2LDM1LjkwMyw3NC44NTUsMzQuMzMzLDcyLjkyNiwzNC4zMzN6IE03My40MjYsNjcuODMzICAgYzAsMC4yNzUtMC4yMjUsMC41LTAuNSwwLjVIMjcuMDc0Yy0wLjI3NSwwLTAuNS0wLjIyNS0wLjUtMC41di0zMGMwLTAuMjc1LDAuMjI1LTAuNSwwLjUtMC41aDEyLjQwM2wyLjUtNS42NjZoMTYuMDQ1bDIuNSw1LjY2NiAgIGgxMi40MDNjMC4yNzUsMCwwLjUsMC4yMjUsMC41LDAuNVY2Ny44MzN6Ij48L3BhdGg+PHBhdGggZD0iTTUwLDM4Ljc2NmMtNy4yOTgsMC0xMy4yMzQsNS45MzctMTMuMjM0LDEzLjIzNFM0Mi43MDIsNjUuMjM0LDUwLDY1LjIzNFM2My4yMzQsNTkuMjk4LDYzLjIzNCw1MlM1Ny4yOTgsMzguNzY2LDUwLDM4Ljc2NiAgIHogTTUwLDYyLjIzNGMtNS42NDQsMC0xMC4yMzQtNC41OTEtMTAuMjM0LTEwLjIzNFM0NC4zNTYsNDEuNzY2LDUwLDQxLjc2NlM2MC4yMzQsNDYuMzU2LDYwLjIzNCw1MlM1NS42NDQsNjIuMjM0LDUwLDYyLjIzNHoiPjwvcGF0aD48cGF0aCBkPSJNNTAuMDAxLDQzLjI0MmMtNC44MywwLTguNzYsMy45MjktOC43Niw4Ljc1OHMzLjkzLDguNzU4LDguNzYsOC43NThjNC44MjksMCw4Ljc1OC0zLjkyOSw4Ljc1OC04Ljc1OCAgIFM1NC44Myw0My4yNDIsNTAuMDAxLDQzLjI0MnogTTUwLjAwMSw1OS43NThjLTQuMjc4LDAtNy43Ni0zLjQ4LTcuNzYtNy43NThzMy40ODEtNy43NTgsNy43Ni03Ljc1OCAgIGM0LjI3NywwLDcuNzU4LDMuNDgsNy43NTgsNy43NThTNTQuMjc4LDU5Ljc1OCw1MC4wMDEsNTkuNzU4eiI+PC9wYXRoPjwvZz48L3N2Zz4='\n"],"mappings":";;;;;;eAAe,oiDAAoiD;AAAA"}
|
package/lib/ns.js
CHANGED
|
@@ -1,20 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
6
|
-
|
|
7
5
|
var _solidNamespace = _interopRequireDefault(require("solid-namespace"));
|
|
8
|
-
|
|
9
6
|
var $rdf = _interopRequireWildcard(require("rdflib"));
|
|
10
|
-
|
|
11
7
|
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); }
|
|
12
|
-
|
|
13
8
|
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; }
|
|
14
|
-
|
|
15
9
|
// Namespaces we commonly use and have common prefixes for around Solid
|
|
16
10
|
//
|
|
11
|
+
|
|
17
12
|
// Delegate to this which takes RDFlib as param.
|
|
18
|
-
|
|
13
|
+
|
|
14
|
+
module.exports = (0, _solidNamespace["default"])($rdf);
|
|
15
|
+
// export * from ns2
|
|
16
|
+
|
|
19
17
|
// ends
|
|
20
18
|
//# sourceMappingURL=ns.js.map
|
package/lib/ns.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ns.js","names":["module","exports","solidNamespace","$rdf"],"sources":["../src/ns.js"],"sourcesContent":["// Namespaces we commonly use and have common prefixes for around Solid\n//\n\nimport solidNamespace from 'solid-namespace' // Delegate to this which takes RDFlib as param.\nimport * as $rdf from 'rdflib'\n\nmodule.exports = solidNamespace($rdf)\n// export * from ns2\n\n// ends\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"ns.js","names":["module","exports","solidNamespace","$rdf"],"sources":["../src/ns.js"],"sourcesContent":["// Namespaces we commonly use and have common prefixes for around Solid\n//\n\nimport solidNamespace from 'solid-namespace' // Delegate to this which takes RDFlib as param.\nimport * as $rdf from 'rdflib'\n\nmodule.exports = solidNamespace($rdf)\n// export * from ns2\n\n// ends\n"],"mappings":";;;;AAGA;AACA;AAA8B;AAAA;AAJ9B;AACA;;AAE6C;;AAG7CA,MAAM,CAACC,OAAO,GAAG,IAAAC,0BAAc,EAACC,IAAI,CAAC;AACrC;;AAEA"}
|