solid-ui 2.4.28-df3d9431 → 2.4.28-e21f60c1

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.
Files changed (86) hide show
  1. package/dist/805.solid-ui.min.js +1 -1
  2. package/dist/805.solid-ui.min.js.map +1 -1
  3. package/dist/solid-ui.js +1550 -2267
  4. package/dist/solid-ui.js.map +1 -1
  5. package/dist/solid-ui.min.js +1 -1
  6. package/dist/solid-ui.min.js.map +1 -1
  7. package/dist/vendors-node_modules_jsonld_lib_jsonld_js.solid-ui.js +1955 -1955
  8. package/dist/vendors-node_modules_jsonld_lib_jsonld_js.solid-ui.js.map +1 -1
  9. package/lib/chat/bookmarks.js +7 -6
  10. package/lib/chat/bookmarks.js.map +1 -1
  11. package/lib/chat/chatLogic.js +65 -249
  12. package/lib/chat/chatLogic.js.map +1 -1
  13. package/lib/chat/dateFolder.js +126 -129
  14. package/lib/chat/dateFolder.js.map +1 -1
  15. package/lib/chat/infinite.js +423 -637
  16. package/lib/chat/infinite.js.map +1 -1
  17. package/lib/chat/keys.d.ts +0 -3
  18. package/lib/chat/keys.d.ts.map +1 -1
  19. package/lib/chat/keys.js +80 -124
  20. package/lib/chat/keys.js.map +1 -1
  21. package/lib/chat/message.js +194 -333
  22. package/lib/chat/message.js.map +1 -1
  23. package/lib/chat/messageTools.js +277 -463
  24. package/lib/chat/messageTools.js.map +1 -1
  25. package/lib/chat/signature.d.ts +2 -0
  26. package/lib/chat/signature.d.ts.map +1 -1
  27. package/lib/chat/signature.js +70 -1
  28. package/lib/chat/signature.js.map +1 -1
  29. package/lib/chat/thread.js +209 -299
  30. package/lib/chat/thread.js.map +1 -1
  31. package/lib/header/index.js +0 -5
  32. package/lib/header/index.js.map +1 -1
  33. package/lib/log.js +5 -5
  34. package/lib/log.js.map +1 -1
  35. package/lib/login/login.d.ts.map +1 -1
  36. package/lib/login/login.js +31 -65
  37. package/lib/login/login.js.map +1 -1
  38. package/lib/media/media-capture.d.ts +2 -2
  39. package/lib/media/media-capture.d.ts.map +1 -1
  40. package/lib/media/media-capture.js +11 -15
  41. package/lib/media/media-capture.js.map +1 -1
  42. package/lib/pad.d.ts +2 -2
  43. package/lib/pad.d.ts.map +1 -1
  44. package/lib/pad.js +15 -41
  45. package/lib/pad.js.map +1 -1
  46. package/lib/participation.d.ts +5 -5
  47. package/lib/participation.d.ts.map +1 -1
  48. package/lib/participation.js +22 -23
  49. package/lib/participation.js.map +1 -1
  50. package/lib/preferences.js +0 -4
  51. package/lib/preferences.js.map +1 -1
  52. package/lib/style.js +32 -3
  53. package/lib/style.js.map +1 -1
  54. package/lib/tabs.d.ts.map +1 -1
  55. package/lib/tabs.js +14 -8
  56. package/lib/tabs.js.map +1 -1
  57. package/lib/utils/headerFooterHelpers.js +0 -2
  58. package/lib/utils/headerFooterHelpers.js.map +1 -1
  59. package/lib/utils/keyHelpers/accessData.d.ts +2 -2
  60. package/lib/utils/keyHelpers/accessData.d.ts.map +1 -1
  61. package/lib/utils/keyHelpers/accessData.js +131 -51
  62. package/lib/utils/keyHelpers/accessData.js.map +1 -1
  63. package/lib/versionInfo.js +6 -6
  64. package/lib/versionInfo.js.map +1 -1
  65. package/lib/widgets/buttons.js +2 -0
  66. package/lib/widgets/buttons.js.map +1 -1
  67. package/lib/widgets/dragAndDrop.js +10 -18
  68. package/lib/widgets/dragAndDrop.js.map +1 -1
  69. package/lib/widgets/error.d.ts.map +1 -1
  70. package/lib/widgets/error.js +7 -2
  71. package/lib/widgets/error.js.map +1 -1
  72. package/lib/widgets/forms/autocomplete/autocompleteBar.js +1 -8
  73. package/lib/widgets/forms/autocomplete/autocompleteBar.js.map +1 -1
  74. package/lib/widgets/forms/autocomplete/autocompletePicker.js +3 -8
  75. package/lib/widgets/forms/autocomplete/autocompletePicker.js.map +1 -1
  76. package/lib/widgets/forms/autocomplete/language.js +0 -5
  77. package/lib/widgets/forms/autocomplete/language.js.map +1 -1
  78. package/lib/widgets/forms.js +1 -4
  79. package/lib/widgets/forms.js.map +1 -1
  80. package/lib/widgets/peoplePicker.js +0 -11
  81. package/lib/widgets/peoplePicker.js.map +1 -1
  82. package/package.json +2 -5
  83. package/lib/utils/keyHelpers/otherHelpers.d.ts +0 -3
  84. package/lib/utils/keyHelpers/otherHelpers.d.ts.map +0 -1
  85. package/lib/utils/keyHelpers/otherHelpers.js +0 -23
  86. package/lib/utils/keyHelpers/otherHelpers.js.map +0 -1
@@ -53,7 +53,8 @@ function thread(dom, kb, subject, messageStore, options) {
53
53
 
54
54
  var div = dom.createElement('div');
55
55
  // eslint-disable-next-line prefer-const
56
- var messageTable;
56
+ var messageTable; // Shared by initial build and addMessageFromBindings
57
+
57
58
  var me;
58
59
  var updater = _solidLogic.store.updater;
59
60
  var anchor = function anchor(text, term) {
@@ -100,66 +101,34 @@ function thread(dom, kb, subject, messageStore, options) {
100
101
  form.appendChild(rhs);
101
102
  form.AJAR_date = '9999-01-01T00:00:00Z'; // ISO format for field sort
102
103
 
103
- var sendMessage = /*#__PURE__*/function () {
104
- var _ref = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
105
- var _yield$appendMsg, message, dateStamp, sts, sendComplete;
106
- return _regenerator["default"].wrap(function _callee2$(_context2) {
107
- while (1) switch (_context2.prev = _context2.next) {
108
- case 0:
109
- // titlefield.setAttribute('class','pendingedit')
110
- // titlefield.disabled = true
111
- field.setAttribute('class', 'pendingedit');
112
- field.disabled = true;
113
- _context2.next = 4;
114
- return appendMsg(field.value);
115
- case 4:
116
- _yield$appendMsg = _context2.sent;
117
- message = _yield$appendMsg.message;
118
- dateStamp = _yield$appendMsg.dateStamp;
119
- sts = _yield$appendMsg.sts;
120
- sendComplete = /*#__PURE__*/function () {
121
- var _ref2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(uri, success, body) {
122
- var bindings;
123
- return _regenerator["default"].wrap(function _callee$(_context) {
124
- while (1) switch (_context.prev = _context.next) {
125
- case 0:
126
- if (!success) {
127
- form.appendChild(UI.widgets.errorMessageBlock(dom, 'Error writing message: ' + body));
128
- } else {
129
- bindings = {
130
- '?msg': message,
131
- '?content': _solidLogic.store.literal(field.value),
132
- '?date': dateStamp,
133
- '?creator': me
134
- };
135
- renderMessage(bindings, false); // not green
104
+ var sendMessage = function sendMessage() {
105
+ // titlefield.setAttribute('class','pendingedit')
106
+ // titlefield.disabled = true
107
+ field.setAttribute('class', 'pendingedit');
108
+ field.disabled = true;
109
+ var _appendMsg = appendMsg(field.value),
110
+ message = _appendMsg.message,
111
+ dateStamp = _appendMsg.dateStamp,
112
+ sts = _appendMsg.sts;
113
+ var sendComplete = function sendComplete(uri, success, body) {
114
+ if (!success) {
115
+ form.appendChild(UI.widgets.errorMessageBlock(dom, 'Error writing message: ' + body));
116
+ } else {
117
+ var bindings = {
118
+ '?msg': message,
119
+ '?content': _solidLogic.store.literal(field.value),
120
+ '?date': dateStamp,
121
+ '?creator': me
122
+ };
123
+ renderMessage(bindings, false); // not green
136
124
 
137
- field.value = ''; // clear from out for reuse
138
- field.setAttribute('class', '');
139
- field.disabled = false;
140
- }
141
- case 1:
142
- case "end":
143
- return _context.stop();
144
- }
145
- }, _callee);
146
- }));
147
- return function sendComplete(_x, _x2, _x3) {
148
- return _ref2.apply(this, arguments);
149
- };
150
- }();
151
- _context2.next = 11;
152
- return updater.updateMany([], sts, sendComplete);
153
- case 11:
154
- case "end":
155
- return _context2.stop();
156
- }
157
- }, _callee2);
158
- }));
159
- return function sendMessage() {
160
- return _ref.apply(this, arguments);
125
+ field.value = ''; // clear from out for reuse
126
+ field.setAttribute('class', '');
127
+ field.disabled = false;
128
+ }
161
129
  };
162
- }();
130
+ updater.update([], sts, sendComplete);
131
+ };
163
132
  form.appendChild(dom.createElement('br'));
164
133
  var field, sendButton;
165
134
  var turnOnInput = function turnOnInput() {
@@ -170,31 +139,15 @@ function thread(dom, kb, subject, messageStore, options) {
170
139
  field.rows = 3;
171
140
  // field.cols = 40
172
141
  field.setAttribute('style', messageBodyStyle + 'background-color: #eef;');
173
- field.addEventListener('keyup', /*#__PURE__*/function () {
174
- var _ref3 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3(e) {
175
- return _regenerator["default"].wrap(function _callee3$(_context3) {
176
- while (1) switch (_context3.prev = _context3.next) {
177
- case 0:
178
- if (!(e.keyCode === 13)) {
179
- _context3.next = 4;
180
- break;
181
- }
182
- if (e.altKey) {
183
- _context3.next = 4;
184
- break;
185
- }
186
- _context3.next = 4;
187
- return sendMessage();
188
- case 4:
189
- case "end":
190
- return _context3.stop();
191
- }
192
- }, _callee3);
193
- }));
194
- return function (_x4) {
195
- return _ref3.apply(this, arguments);
196
- };
197
- }(), false);
142
+ field.addEventListener('keyup', function (e) {
143
+ // User preference?
144
+ if (e.keyCode === 13) {
145
+ if (!e.altKey) {
146
+ // Alt-Enter just adds a new line
147
+ sendMessage();
148
+ }
149
+ }
150
+ }, false);
198
151
  rhs.innerHTML = '';
199
152
  sendButton = UI.widgets.button(dom, UI.icons.iconBase + 'noun_383448.svg', 'Send');
200
153
  sendButton.setAttribute('style', UI.style.buttonStyle + 'float: right;');
@@ -211,64 +164,94 @@ function thread(dom, kb, subject, messageStore, options) {
211
164
  });
212
165
  return form;
213
166
  };
214
- var appendMsg = /*#__PURE__*/function () {
215
- var _ref4 = (0, _asyncToGenerator2["default"])(function (fieldValue) {
216
- var oldMsg = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
217
- var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
218
- return /*#__PURE__*/_regenerator["default"].mark(function _callee4() {
219
- var sts, now, timestamp, dateStamp, message, msgBody;
220
- return _regenerator["default"].wrap(function _callee4$(_context4) {
221
- while (1) switch (_context4.prev = _context4.next) {
222
- case 0:
223
- // alain
224
- sts = [];
225
- now = new Date();
226
- timestamp = '' + now.getTime();
227
- dateStamp = $rdf.term(now); // http://www.w3schools.com/jsref/jsref_obj_date.asp
228
- message = _solidLogic.store.sym(messageStore.uri + '#' + 'Msg' + timestamp);
229
- if (!(options === 'edit' || options === 'delete')) {
230
- _context4.next = 18;
231
- break;
232
- }
233
- _context4.t0 = sts;
234
- _context4.t1 = $rdf.Statement;
235
- _context4.next = 10;
236
- return mostRecentVersion(oldMsg);
237
- case 10:
238
- _context4.t2 = _context4.sent;
239
- _context4.t3 = DCT('isReplacedBy');
240
- _context4.t4 = message;
241
- _context4.t5 = messageStore;
242
- _context4.t6 = new _context4.t1(_context4.t2, _context4.t3, _context4.t4, _context4.t5);
243
- _context4.t0.push.call(_context4.t0, _context4.t6);
244
- _context4.next = 19;
245
- break;
246
- case 18:
247
- sts.push(new $rdf.Statement(subject, ns.wf('message'), message, messageStore));
248
- case 19:
249
- // sts.push(new $rdf.Statement(message, ns.dc('title'), store.literal(titlefield.value), messageStore))
250
- msgBody = options !== 'delete' ? fieldValue : "message deleted\nby ".concat(nick(me));
251
- sts.push(new $rdf.Statement(message, ns.sioc('content'), _solidLogic.store.literal(msgBody), messageStore));
252
- sts.push(new $rdf.Statement(message, DCT('created'), dateStamp, messageStore));
253
- if (me) {
254
- sts.push(new $rdf.Statement(message, ns.foaf('maker'), me, messageStore));
255
- }
256
- return _context4.abrupt("return", {
257
- message: message,
258
- dateStamp: dateStamp,
259
- sts: sts
260
- });
261
- case 24:
262
- case "end":
263
- return _context4.stop();
264
- }
265
- }, _callee4);
266
- })();
267
- });
268
- return function appendMsg(_x5) {
269
- return _ref4.apply(this, arguments);
167
+
168
+ /* const sendMessage = function (oldMsg, options) { // alain
169
+ // titlefield.setAttribute('class','pendingedit')
170
+ // titlefield.disabled = true
171
+ field.setAttribute('class', 'pendingedit')
172
+ field.disabled = true
173
+ const sts = []
174
+ const now = new Date()
175
+ const timestamp = '' + now.getTime()
176
+ const dateStamp = $rdf.term(now)
177
+ // http://www.w3schools.com/jsref/jsref_obj_date.asp
178
+ const message = store.sym(messageStore.uri + '#' + 'Msg' + timestamp)
179
+ if (options === 'edit' || options === 'delete') {
180
+ sts.push(
181
+ new $rdf.Statement(mostRecentVersion(oldMsg), DCT('isReplacedBy'), message, messageStore)
182
+ )
183
+ } else {
184
+ sts.push(
185
+ new $rdf.Statement(subject, ns.wf('message'), message, messageStore)
186
+ )
187
+ }
188
+ // sts.push(new $rdf.Statement(message, ns.dc('title'), store.literal(titlefield.value), messageStore))
189
+ const msgBody = options !== 'delete' ? field.value : `message deleted\nby ${nick(me)}`
190
+ sts.push(
191
+ new $rdf.Statement(
192
+ message,
193
+ ns.sioc('content'),
194
+ store.literal(msgBody),
195
+ messageStore
196
+ )
197
+ )
198
+ sts.push(
199
+ new $rdf.Statement(message, DCT('created'), dateStamp, messageStore)
200
+ )
201
+ if (me) {
202
+ sts.push(
203
+ new $rdf.Statement(message, ns.foaf('maker'), me, messageStore)
204
+ )
205
+ }
206
+ const sendComplete = function (uri, success, body) {
207
+ if (!success) {
208
+ form.appendChild(
209
+ UI.widgets.errorMessageBlock(dom, 'Error writing message: ' + body)
210
+ )
211
+ } else {
212
+ const bindings = {
213
+ '?msg': message,
214
+ '?content': store.literal(field.value),
215
+ '?date': dateStamp,
216
+ '?creator': me
217
+ }
218
+ renderMessage(bindings, false) // not green
219
+ field.value = '' // clear from out for reuse
220
+ field.setAttribute('class', '')
221
+ field.disabled = false
222
+ }
223
+ }
224
+ updater.update([], sts, sendComplete)
225
+ } */
226
+
227
+ var appendMsg = function appendMsg(fieldValue) {
228
+ var oldMsg = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
229
+ var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
230
+ // alain
231
+ var sts = [];
232
+ var now = new Date();
233
+ var timestamp = '' + now.getTime();
234
+ var dateStamp = $rdf.term(now);
235
+ // http://www.w3schools.com/jsref/jsref_obj_date.asp
236
+ var message = _solidLogic.store.sym(messageStore.uri + '#' + 'Msg' + timestamp);
237
+ if (options === 'edit' || options === 'delete') {
238
+ sts.push(new $rdf.Statement(mostRecentVersion(oldMsg), DCT('isReplacedBy'), message, messageStore));
239
+ } else {
240
+ sts.push(new $rdf.Statement(subject, ns.wf('message'), message, messageStore));
241
+ }
242
+ // sts.push(new $rdf.Statement(message, ns.dc('title'), store.literal(titlefield.value), messageStore))
243
+ var msgBody = options !== 'delete' ? fieldValue : "message deleted\nby ".concat(nick(me));
244
+ sts.push(new $rdf.Statement(message, ns.sioc('content'), _solidLogic.store.literal(msgBody), messageStore));
245
+ sts.push(new $rdf.Statement(message, DCT('created'), dateStamp, messageStore));
246
+ if (me) {
247
+ sts.push(new $rdf.Statement(message, ns.foaf('maker'), me, messageStore));
248
+ }
249
+ return {
250
+ message: message,
251
+ dateStamp: dateStamp,
252
+ sts: sts
270
253
  };
271
- }();
254
+ };
272
255
  function nick(person) {
273
256
  var s = _solidLogic.store.any(person, UI.ns.foaf('nick'));
274
257
  if (s) return '' + s.value;
@@ -317,186 +300,113 @@ function thread(dom, kb, subject, messageStore, options) {
317
300
  var msg = message;
318
301
  // const listMsg = []
319
302
  while (msg) {
320
- message = msg;
321
303
  // listMsg.push(msg)
322
304
  msg = _solidLogic.store.statementsMatching(message, DCT('isReplacedBy'));
323
305
  }
324
- return message;
306
+ return msg;
325
307
  };
326
308
  var _deleteMessage = /*#__PURE__*/function () {
327
- var _ref5 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee5(message) {
309
+ var _ref = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(message) {
328
310
  var deletions;
329
- return _regenerator["default"].wrap(function _callee5$(_context5) {
330
- while (1) switch (_context5.prev = _context5.next) {
311
+ return _regenerator["default"].wrap(function _callee$(_context) {
312
+ while (1) switch (_context.prev = _context.next) {
331
313
  case 0:
332
- _context5.next = 2;
314
+ _context.next = 2;
333
315
  return _solidLogic.store.connectedStatements(message, messageStore);
334
316
  case 2:
335
- deletions = _context5.sent;
336
- _context5.next = 5;
337
- return updater.updateMany(deletions, [], function (uri, ok, body) {
317
+ deletions = _context.sent;
318
+ updater.update(deletions, [], function (uri, ok, body) {
338
319
  if (!ok) {
339
320
  announce.error('Cant delete messages:' + body);
340
321
  } else {
341
322
  syncMessages(subject, messageTable);
342
323
  }
343
324
  });
344
- case 5:
325
+ case 4:
345
326
  case "end":
346
- return _context5.stop();
327
+ return _context.stop();
347
328
  }
348
- }, _callee5);
329
+ }, _callee);
349
330
  }));
350
- return function _deleteMessage(_x6) {
351
- return _ref5.apply(this, arguments);
331
+ return function _deleteMessage(_x) {
332
+ return _ref.apply(this, arguments);
352
333
  };
353
334
  }();
354
- var addMessage = /*#__PURE__*/function () {
355
- var _ref6 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee6(message) {
356
- var bindings;
357
- return _regenerator["default"].wrap(function _callee6$(_context6) {
358
- while (1) switch (_context6.prev = _context6.next) {
359
- case 0:
360
- bindings = {
361
- '?msg': message,
362
- '?creator': _solidLogic.store.any(message, ns.foaf('maker')),
363
- '?date': _solidLogic.store.any(message, DCT('created')),
364
- '?content': _solidLogic.store.any(message, ns.sioc('content'))
365
- };
366
- _context6.next = 3;
367
- return renderMessage(bindings, true);
368
- case 3:
369
- case "end":
370
- return _context6.stop();
371
- }
372
- }, _callee6);
373
- }));
374
- return function addMessage(_x7) {
375
- return _ref6.apply(this, arguments);
335
+ var addMessage = function addMessage(message) {
336
+ var bindings = {
337
+ '?msg': message,
338
+ '?creator': _solidLogic.store.any(message, ns.foaf('maker')),
339
+ '?date': _solidLogic.store.any(message, DCT('created')),
340
+ '?content': _solidLogic.store.any(message, ns.sioc('content'))
376
341
  };
377
- }();
378
- var renderMessage = /*#__PURE__*/function () {
379
- var _ref7 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee9(bindings, fresh) {
380
- var creator, message, date, content, dateString, tr, done, ele, td1, td2, pre, td3, delButton;
381
- return _regenerator["default"].wrap(function _callee9$(_context9) {
382
- while (1) switch (_context9.prev = _context9.next) {
383
- case 0:
384
- creator = bindings['?creator'];
385
- message = bindings['?msg'];
386
- date = bindings['?date'];
387
- content = bindings['?content'];
388
- dateString = date.value;
389
- tr = dom.createElement('tr');
390
- tr.AJAR_date = dateString;
391
- tr.AJAR_subject = message;
392
- done = false;
393
- ele = messageTable.firstChild;
394
- case 10:
395
- if (ele) {
396
- _context9.next = 12;
397
- break;
398
- }
399
- return _context9.abrupt("break", 19);
400
- case 12:
401
- if (!(dateString > ele.AJAR_date && newestFirst || dateString < ele.AJAR_date && !newestFirst)) {
402
- _context9.next = 16;
403
- break;
404
- }
405
- messageTable.insertBefore(tr, ele);
406
- done = true;
407
- return _context9.abrupt("break", 19);
408
- case 16:
409
- ele = ele.nextSibling;
410
- _context9.next = 10;
411
- break;
412
- case 19:
413
- if (!done) {
414
- messageTable.appendChild(tr);
415
- }
416
- td1 = dom.createElement('td');
417
- tr.appendChild(td1);
418
- creatorAndDate(td1, creator, UI.widgets.shortDate(dateString), message);
419
- td2 = dom.createElement('td');
420
- tr.appendChild(td2);
421
- pre = dom.createElement('p');
422
- pre.setAttribute('style', messageBodyStyle + (fresh ? 'background-color: #e8ffe8;' : 'background-color: #white;'));
423
- td2.appendChild(pre);
424
- pre.textContent = content.value;
425
- td3 = dom.createElement('td');
426
- tr.appendChild(td3);
427
- delButton = dom.createElement('button');
428
- td3.appendChild(delButton);
429
- delButton.textContent = '-';
430
- tr.setAttribute('class', 'hoverControl'); // See tabbedtab.css (sigh global CSS)
431
- delButton.setAttribute('class', 'hoverControlHide');
432
- delButton.setAttribute('style', 'color: red;');
433
- delButton.addEventListener('click', /*#__PURE__*/function () {
434
- var _ref8 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee8(_event) {
435
- var cancelButton, sureButton;
436
- return _regenerator["default"].wrap(function _callee8$(_context8) {
437
- while (1) switch (_context8.prev = _context8.next) {
438
- case 0:
439
- td3.removeChild(delButton); // Ask -- are you sure?
440
- cancelButton = dom.createElement('button');
441
- cancelButton.textContent = 'cancel';
442
- td3.appendChild(cancelButton).addEventListener('click', function (_event) {
443
- td3.removeChild(sureButton);
444
- td3.removeChild(cancelButton);
445
- td3.appendChild(delButton);
446
- }, false);
447
- sureButton = dom.createElement('button');
448
- sureButton.textContent = 'Delete message';
449
- td3.appendChild(sureButton).addEventListener('click', /*#__PURE__*/function () {
450
- var _ref9 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee7(_event) {
451
- var _yield$appendMsg2, sts;
452
- return _regenerator["default"].wrap(function _callee7$(_context7) {
453
- while (1) switch (_context7.prev = _context7.next) {
454
- case 0:
455
- // alain: test for delete or edit depending on me = maker
456
- td3.removeChild(sureButton);
457
- td3.removeChild(cancelButton);
458
- // deleteMessage(message) // alain or sendMessage(message, 'delete' or 'edit') //alain
459
- if (!(me.value === _solidLogic.store.any(message, ns.foaf('maker')).value)) {
460
- _context7.next = 9;
461
- break;
462
- }
463
- _context7.next = 5;
464
- return appendMsg();
465
- case 5:
466
- _yield$appendMsg2 = _context7.sent;
467
- sts = _yield$appendMsg2.sts;
468
- _context7.next = 9;
469
- return updater.updateMany([], sts);
470
- case 9:
471
- case "end":
472
- return _context7.stop();
473
- }
474
- }, _callee7);
475
- }));
476
- return function (_x11) {
477
- return _ref9.apply(this, arguments);
478
- };
479
- }(), false);
480
- case 7:
481
- case "end":
482
- return _context8.stop();
483
- }
484
- }, _callee8);
485
- }));
486
- return function (_x10) {
487
- return _ref8.apply(this, arguments);
488
- };
489
- }(), false);
490
- case 38:
491
- case "end":
492
- return _context9.stop();
342
+ renderMessage(bindings, true); // fresh from elsewhere
343
+ };
344
+
345
+ var renderMessage = function renderMessage(bindings, fresh) {
346
+ var creator = bindings['?creator'];
347
+ var message = bindings['?msg'];
348
+ var date = bindings['?date'];
349
+ var content = bindings['?content'];
350
+ var dateString = date.value;
351
+ var tr = dom.createElement('tr');
352
+ tr.AJAR_date = dateString;
353
+ tr.AJAR_subject = message;
354
+ var done = false;
355
+ for (var ele = messageTable.firstChild;; ele = ele.nextSibling) {
356
+ if (!ele) {
357
+ // empty
358
+ break;
359
+ }
360
+ if (dateString > ele.AJAR_date && newestFirst || dateString < ele.AJAR_date && !newestFirst) {
361
+ messageTable.insertBefore(tr, ele);
362
+ done = true;
363
+ break;
364
+ }
365
+ }
366
+ if (!done) {
367
+ messageTable.appendChild(tr);
368
+ }
369
+ var td1 = dom.createElement('td');
370
+ tr.appendChild(td1);
371
+ creatorAndDate(td1, creator, UI.widgets.shortDate(dateString), message);
372
+ var td2 = dom.createElement('td');
373
+ tr.appendChild(td2);
374
+ var pre = dom.createElement('p');
375
+ pre.setAttribute('style', messageBodyStyle + (fresh ? 'background-color: #e8ffe8;' : 'background-color: #white;'));
376
+ td2.appendChild(pre);
377
+ pre.textContent = content.value;
378
+ var td3 = dom.createElement('td');
379
+ tr.appendChild(td3);
380
+ var delButton = dom.createElement('button');
381
+ td3.appendChild(delButton);
382
+ delButton.textContent = '-';
383
+ tr.setAttribute('class', 'hoverControl'); // See tabbedtab.css (sigh global CSS)
384
+ delButton.setAttribute('class', 'hoverControlHide');
385
+ delButton.setAttribute('style', 'color: red;');
386
+ delButton.addEventListener('click', function (_event) {
387
+ td3.removeChild(delButton); // Ask -- are you sure?
388
+ var cancelButton = dom.createElement('button');
389
+ cancelButton.textContent = 'cancel';
390
+ td3.appendChild(cancelButton).addEventListener('click', function (_event) {
391
+ td3.removeChild(sureButton);
392
+ td3.removeChild(cancelButton);
393
+ td3.appendChild(delButton);
394
+ }, false);
395
+ var sureButton = dom.createElement('button');
396
+ sureButton.textContent = 'Delete message';
397
+ td3.appendChild(sureButton).addEventListener('click', function (_event) {
398
+ // alain test for delete or edit depending on me = maker
399
+ td3.removeChild(sureButton);
400
+ td3.removeChild(cancelButton);
401
+ // deleteMessage(message) // alain or sendMessage(message, 'delete' or 'edit') //alain
402
+ if (me.value === _solidLogic.store.any(message, ns.foaf('maker')).value) {
403
+ var _appendMsg2 = appendMsg(),
404
+ sts = _appendMsg2.sts; // alain
405
+ updater.update([], sts);
493
406
  }
494
- }, _callee9);
495
- }));
496
- return function renderMessage(_x8, _x9) {
497
- return _ref7.apply(this, arguments);
498
- };
499
- }();
407
+ }, false);
408
+ }, false);
409
+ };
500
410
 
501
411
  // Messages with date, author etc
502
412