solid-ui 2.4.31-13dc2247 → 2.4.31-26d24f44

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 (38) 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 +1641 -4633
  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.LICENSE.txt +1 -1
  7. package/dist/solid-ui.min.js.map +1 -1
  8. package/dist/vendors-node_modules_jsonld_lib_jsonld_js.solid-ui.js +1957 -1957
  9. package/dist/vendors-node_modules_jsonld_lib_jsonld_js.solid-ui.js.map +1 -1
  10. package/lib/chat/bookmarks.js +7 -6
  11. package/lib/chat/bookmarks.js.map +1 -1
  12. package/lib/chat/chatLogic.js +66 -251
  13. package/lib/chat/chatLogic.js.map +1 -1
  14. package/lib/chat/dateFolder.js +126 -131
  15. package/lib/chat/dateFolder.js.map +1 -1
  16. package/lib/chat/infinite.js +416 -611
  17. package/lib/chat/infinite.js.map +1 -1
  18. package/lib/chat/message.js +191 -328
  19. package/lib/chat/message.js.map +1 -1
  20. package/lib/chat/messageTools.js +276 -462
  21. package/lib/chat/messageTools.js.map +1 -1
  22. package/lib/chat/thread.js +208 -299
  23. package/lib/chat/thread.js.map +1 -1
  24. package/lib/preferences.js +0 -4
  25. package/lib/preferences.js.map +1 -1
  26. package/lib/tabs.js +1 -1
  27. package/lib/tabs.js.map +1 -1
  28. package/lib/utils/keyHelpers/accessData.d.ts +2 -2
  29. package/lib/utils/keyHelpers/accessData.d.ts.map +1 -1
  30. package/lib/utils/keyHelpers/accessData.js +115 -59
  31. package/lib/utils/keyHelpers/accessData.js.map +1 -1
  32. package/lib/versionInfo.js +2 -2
  33. package/lib/versionInfo.js.map +1 -1
  34. package/package.json +2 -2
  35. package/lib/utils/keyHelpers/otherHelpers.d.ts +0 -3
  36. package/lib/utils/keyHelpers/otherHelpers.d.ts.map +0 -1
  37. package/lib/utils/keyHelpers/otherHelpers.js +0 -22
  38. package/lib/utils/keyHelpers/otherHelpers.js.map +0 -1
@@ -20,17 +20,19 @@ var _chatLogic = require("./chatLogic");
20
20
  var _message = require("./message");
21
21
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
22
22
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
23
- function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e2) { throw _e2; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e3) { didErr = true; err = _e3; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
24
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
25
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; } /**
23
+ /**
26
24
  * Contains the [[infiniteMessageArea]] class
27
25
  * @packageDocumentation
28
- */ // import { findBookmarkDocument } from './bookmarks'
26
+ */
27
+ // import { findBookmarkDocument } from './bookmarks'
29
28
  // pull in first avoid cross-refs
29
+
30
30
  // import * as style from '../style'
31
31
  // import * as utils from '../utils'
32
+
32
33
  // import * as pad from '../pad'
33
34
  // import { DateFolder } from './dateFolder'
35
+
34
36
  // const UI = { authn, icons, ns, media, pad, $rdf, store, style, utils, widgets }
35
37
 
36
38
  function desktopNotification(str) {
@@ -58,9 +60,34 @@ function desktopNotification(str) {
58
60
  /**
59
61
  * Renders a chat message inside a `messageTable`
60
62
  */
61
- function insertMessageIntoTable(_x, _x2, _x3, _x4, _x5, _x6) {
62
- return _insertMessageIntoTable.apply(this, arguments);
63
+ function insertMessageIntoTable(channelObject, messageTable, message, fresh, options, userContext) {
64
+ var messageRow = (0, _message.renderMessageRow)(channelObject, message, fresh, options, userContext);
65
+
66
+ // const message = messageRow.AJAR_subject
67
+ if (options.selectedMessage && options.selectedMessage.sameTerm(message)) {
68
+ messageRow.style.backgroundColor = 'yellow';
69
+ options.selectedElement = messageRow;
70
+ messageTable.selectedElement = messageRow;
71
+ }
72
+ var done = false;
73
+ for (var ele = messageTable.firstChild;; ele = ele.nextSibling) {
74
+ if (!ele) {
75
+ // empty
76
+ break;
77
+ }
78
+ var newestFirst = options.newestfirst === true;
79
+ var dateString = messageRow.AJAR_date;
80
+ if (dateString > ele.AJAR_date && newestFirst || dateString < ele.AJAR_date && !newestFirst) {
81
+ messageTable.insertBefore(messageRow, ele);
82
+ done = true;
83
+ break;
84
+ }
85
+ }
86
+ if (!done) {
87
+ messageTable.appendChild(messageRow);
88
+ }
63
89
  }
90
+
64
91
  /**
65
92
  * Common code for a chat (discussion area of messages about something)
66
93
  * This version runs over a series of files for different time periods
@@ -83,70 +110,20 @@ function insertMessageIntoTable(_x, _x2, _x3, _x4, _x5, _x6) {
83
110
  - inlineImageHeightEms: The height (in ems) of images expaned from their URIs in the chat.
84
111
 
85
112
  */
86
- function _insertMessageIntoTable() {
87
- _insertMessageIntoTable = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(channelObject, messageTable, message, fresh, options, userContext) {
88
- var messageRow, done, ele, newestFirst, dateString;
89
- return _regenerator["default"].wrap(function _callee$(_context) {
90
- while (1) switch (_context.prev = _context.next) {
91
- case 0:
92
- _context.next = 2;
93
- return (0, _message.renderMessageRow)(channelObject, message, fresh, options, userContext);
94
- case 2:
95
- messageRow = _context.sent;
96
- // const message = messageRow.AJAR_subject
97
- if (options.selectedMessage && options.selectedMessage.sameTerm(message)) {
98
- messageRow.style.backgroundColor = 'yellow';
99
- options.selectedElement = messageRow;
100
- messageTable.selectedElement = messageRow;
101
- }
102
- done = false;
103
- ele = messageTable.firstChild;
104
- case 6:
105
- if (ele) {
106
- _context.next = 8;
107
- break;
108
- }
109
- return _context.abrupt("break", 17);
110
- case 8:
111
- newestFirst = options.newestfirst === true;
112
- dateString = messageRow.AJAR_date;
113
- if (!(dateString > ele.AJAR_date && newestFirst || dateString < ele.AJAR_date && !newestFirst)) {
114
- _context.next = 14;
115
- break;
116
- }
117
- messageTable.insertBefore(messageRow, ele);
118
- done = true;
119
- return _context.abrupt("break", 17);
120
- case 14:
121
- ele = ele.nextSibling;
122
- _context.next = 6;
123
- break;
124
- case 17:
125
- if (!done) {
126
- messageTable.appendChild(messageRow);
127
- }
128
- case 18:
129
- case "end":
130
- return _context.stop();
131
- }
132
- }, _callee);
133
- }));
134
- return _insertMessageIntoTable.apply(this, arguments);
135
- }
136
- function infiniteMessageArea(_x7, _x8, _x9, _x10) {
113
+ function infiniteMessageArea(_x, _x2, _x3, _x4) {
137
114
  return _infiniteMessageArea.apply(this, arguments);
138
115
  }
139
116
  function _infiniteMessageArea() {
140
- _infiniteMessageArea = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee15(dom, wasStore, chatChannel, options) {
141
- var syncMessages, _syncMessages, addMessage, _addMessage, insertPreviousMessages, _insertPreviousMessages, removePreviousMessages, createMessageTable, _createMessageTable, renderMessageTable, _renderMessageTable, addNewChatDocumentIfNewDay, _addNewChatDocumentIfNewDay, appendCurrentMessages, _appendCurrentMessages, loadMoreWhereNeeded, _loadMoreWhereNeeded, loadInitialContent, _loadInitialContent, newestFirst, channelObject, dateFolder, div, statusArea, userContext, liveMessageTable, threadRootMessage, earliest, latest, thread, threadTime, lock;
142
- return _regenerator["default"].wrap(function _callee15$(_context15) {
143
- while (1) switch (_context15.prev = _context15.next) {
117
+ _infiniteMessageArea = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee12(dom, wasStore, chatChannel, options) {
118
+ var syncMessages, addMessage, insertPreviousMessages, _insertPreviousMessages, removePreviousMessages, createMessageTable, _createMessageTable, renderMessageTable, addNewChatDocumentIfNewDay, _addNewChatDocumentIfNewDay, appendCurrentMessages, _appendCurrentMessages, loadMoreWhereNeeded, _loadMoreWhereNeeded, loadInitialContent, _loadInitialContent, newestFirst, channelObject, dateFolder, div, statusArea, userContext, liveMessageTable, earliest, latest, lock;
119
+ return _regenerator["default"].wrap(function _callee12$(_context12) {
120
+ while (1) switch (_context12.prev = _context12.next) {
144
121
  case 0:
145
122
  _loadInitialContent = function _loadInitialContent3() {
146
- _loadInitialContent = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee14() {
147
- var yank, fixScroll, live, selectedDocument, threadRootDocument, initialDocment, now, todayDocument, selectedMessageTable, selectedDate;
148
- return _regenerator["default"].wrap(function _callee14$(_context14) {
149
- while (1) switch (_context14.prev = _context14.next) {
123
+ _loadInitialContent = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee11() {
124
+ var yank, fixScroll, live, selectedDocument, now, todayDocument, selectedMessageTable, selectedDate;
125
+ return _regenerator["default"].wrap(function _callee11$(_context11) {
126
+ while (1) switch (_context11.prev = _context11.next) {
150
127
  case 0:
151
128
  fixScroll = function _fixScroll() {
152
129
  if (options.selectedElement) {
@@ -160,59 +137,51 @@ function _infiniteMessageArea() {
160
137
  }
161
138
  };
162
139
  yank = function _yank() {
163
- if (selectedMessageTable && selectedMessageTable.selectedElement) {
164
- selectedMessageTable.selectedElement.scrollIntoView({
165
- block: 'center'
166
- });
167
- }
140
+ selectedMessageTable.selectedElement.scrollIntoView({
141
+ block: 'center'
142
+ });
168
143
  }; // During initial load ONLY keep scroll to selected thing or bottom
169
144
  if (options.selectedMessage) {
170
145
  selectedDocument = options.selectedMessage.doc();
171
- }
172
- if (threadRootMessage) {
173
- threadRootDocument = threadRootMessage.doc();
174
- }
175
- initialDocment = selectedDocument || threadRootDocument;
176
- if (initialDocment) {
177
146
  now = new Date();
178
147
  todayDocument = dateFolder.leafDocumentFromDate(now);
179
- live = todayDocument.sameTerm(initialDocment);
148
+ live = todayDocument.sameTerm(selectedDocument);
180
149
  }
181
- if (!(initialDocment && !live)) {
182
- _context14.next = 18;
150
+ if (!(options.selectedMessage && !live)) {
151
+ _context11.next = 15;
183
152
  break;
184
153
  }
185
- selectedDate = dateFolder.dateFromLeafDocument(initialDocment);
186
- _context14.next = 10;
154
+ selectedDate = dateFolder.dateFromLeafDocument(selectedDocument);
155
+ _context11.next = 7;
187
156
  return createMessageTable(selectedDate, live);
188
- case 10:
189
- selectedMessageTable = _context14.sent;
157
+ case 7:
158
+ selectedMessageTable = _context11.sent;
190
159
  div.appendChild(selectedMessageTable);
191
160
  earliest.messageTable = selectedMessageTable;
192
161
  latest.messageTable = selectedMessageTable;
193
162
  yank();
194
163
  setTimeout(yank, 1000); // @@ kludge - restore position distubed by other cHANGES
195
- _context14.next = 22;
164
+ _context11.next = 19;
196
165
  break;
197
- case 18:
198
- _context14.next = 20;
166
+ case 15:
167
+ _context11.next = 17;
199
168
  return appendCurrentMessages();
200
- case 20:
169
+ case 17:
201
170
  earliest.messageTable = liveMessageTable;
202
171
  latest.messageTable = liveMessageTable;
203
- case 22:
204
- _context14.next = 24;
172
+ case 19:
173
+ _context11.next = 21;
205
174
  return loadMoreWhereNeeded(null, fixScroll);
206
- case 24:
175
+ case 21:
207
176
  div.addEventListener('scroll', loadMoreWhereNeeded);
208
177
  if (options.solo) {
209
178
  document.body.addEventListener('scroll', loadMoreWhereNeeded);
210
179
  }
211
- case 26:
180
+ case 23:
212
181
  case "end":
213
- return _context14.stop();
182
+ return _context11.stop();
214
183
  }
215
- }, _callee14);
184
+ }, _callee11);
216
185
  }));
217
186
  return _loadInitialContent.apply(this, arguments);
218
187
  };
@@ -220,16 +189,16 @@ function _infiniteMessageArea() {
220
189
  return _loadInitialContent.apply(this, arguments);
221
190
  };
222
191
  _loadMoreWhereNeeded = function _loadMoreWhereNeeded3() {
223
- _loadMoreWhereNeeded = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee13(event, fixScroll) {
192
+ _loadMoreWhereNeeded = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee10(event, fixScroll) {
224
193
  var freeze, magicZone, done, scrollBottom, scrollTop;
225
- return _regenerator["default"].wrap(function _callee13$(_context13) {
226
- while (1) switch (_context13.prev = _context13.next) {
194
+ return _regenerator["default"].wrap(function _callee10$(_context10) {
195
+ while (1) switch (_context10.prev = _context10.next) {
227
196
  case 0:
228
197
  if (!lock) {
229
- _context13.next = 2;
198
+ _context10.next = 2;
230
199
  break;
231
200
  }
232
- return _context13.abrupt("return");
201
+ return _context10.abrupt("return");
233
202
  case 2:
234
203
  lock = true;
235
204
  freeze = !fixScroll;
@@ -237,36 +206,36 @@ function _infiniteMessageArea() {
237
206
  // const bottom = div.scrollHeight - top - div.clientHeight
238
207
  case 5:
239
208
  if (!(div.scrollTop < magicZone && earliest.messageTable && !earliest.messageTable.initial && earliest.messageTable.extendBackwards)) {
240
- _context13.next = 21;
209
+ _context10.next = 21;
241
210
  break;
242
211
  }
243
212
  if (!(div.scrollHeight === 0)) {
244
- _context13.next = 10;
213
+ _context10.next = 10;
245
214
  break;
246
215
  }
247
- // debug.log(' chat/loadMoreWhereNeeded: trying later...')
216
+ // console.log(' chat/loadMoreWhereNeeded: trying later...')
248
217
  setTimeout(loadMoreWhereNeeded, 2000); // couple be less
249
218
  lock = false;
250
- return _context13.abrupt("return");
219
+ return _context10.abrupt("return");
251
220
  case 10:
252
- // debug.log(' chat/loadMoreWhereNeeded: Going now')
221
+ // console.log(' chat/loadMoreWhereNeeded: Going now')
253
222
  scrollBottom = div.scrollHeight - div.scrollTop;
254
223
  debug.log('infinite scroll: adding above: top ' + div.scrollTop);
255
- _context13.next = 14;
224
+ _context10.next = 14;
256
225
  return earliest.messageTable.extendBackwards();
257
226
  case 14:
258
- done = _context13.sent;
227
+ done = _context10.sent;
259
228
  if (freeze) {
260
229
  div.scrollTop = div.scrollHeight - scrollBottom;
261
230
  }
262
231
  if (fixScroll) fixScroll();
263
232
  if (!done) {
264
- _context13.next = 19;
233
+ _context10.next = 19;
265
234
  break;
266
235
  }
267
- return _context13.abrupt("break", 21);
236
+ return _context10.abrupt("break", 21);
268
237
  case 19:
269
- _context13.next = 5;
238
+ _context10.next = 5;
270
239
  break;
271
240
  case 21:
272
241
  if (!(options.selectedMessage &&
@@ -276,81 +245,78 @@ function _infiniteMessageArea() {
276
245
  latest.messageTable && !latest.messageTable["final"] &&
277
246
  // there is more data to come
278
247
  latest.messageTable.extendForwards)) {
279
- _context13.next = 33;
248
+ _context10.next = 33;
280
249
  break;
281
250
  }
282
251
  scrollTop = div.scrollTop;
283
252
  debug.log('infinite scroll: adding below: bottom: ' + (div.scrollHeight - div.scrollTop - div.clientHeight));
284
- _context13.next = 26;
253
+ _context10.next = 26;
285
254
  return latest.messageTable.extendForwards();
286
255
  case 26:
287
- done = _context13.sent;
256
+ done = _context10.sent;
288
257
  // then add more data on the bottom
289
258
  if (freeze) {
290
259
  div.scrollTop = scrollTop; // while adding below keep same things in view
291
260
  }
292
261
  if (fixScroll) fixScroll();
293
262
  if (!done) {
294
- _context13.next = 31;
263
+ _context10.next = 31;
295
264
  break;
296
265
  }
297
- return _context13.abrupt("break", 33);
266
+ return _context10.abrupt("break", 33);
298
267
  case 31:
299
- _context13.next = 21;
268
+ _context10.next = 21;
300
269
  break;
301
270
  case 33:
302
271
  lock = false;
303
272
  case 34:
304
273
  case "end":
305
- return _context13.stop();
274
+ return _context10.stop();
306
275
  }
307
- }, _callee13);
276
+ }, _callee10);
308
277
  }));
309
278
  return _loadMoreWhereNeeded.apply(this, arguments);
310
279
  };
311
- loadMoreWhereNeeded = function _loadMoreWhereNeeded2(_x20, _x21) {
280
+ loadMoreWhereNeeded = function _loadMoreWhereNeeded2(_x10, _x11) {
312
281
  return _loadMoreWhereNeeded.apply(this, arguments);
313
282
  };
314
283
  _appendCurrentMessages = function _appendCurrentMessage2() {
315
- _appendCurrentMessages = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee12() {
284
+ _appendCurrentMessages = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee9() {
316
285
  var now, chatDocument, messageTable;
317
- return _regenerator["default"].wrap(function _callee12$(_context12) {
318
- while (1) switch (_context12.prev = _context12.next) {
286
+ return _regenerator["default"].wrap(function _callee9$(_context9) {
287
+ while (1) switch (_context9.prev = _context9.next) {
319
288
  case 0:
320
289
  now = new Date();
321
290
  chatDocument = dateFolder.leafDocumentFromDate(now); /// ///////////////////////////////////////////////////////////
322
- _context12.next = 4;
291
+ _context9.next = 4;
323
292
  return createMessageTable(now, true);
324
293
  case 4:
325
- messageTable = _context12.sent;
294
+ messageTable = _context9.sent;
326
295
  div.appendChild(messageTable);
327
- div.refresh = /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee11() {
328
- return _regenerator["default"].wrap(function _callee11$(_context11) {
329
- while (1) switch (_context11.prev = _context11.next) {
296
+ div.refresh = /*#__PURE__*/(0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee8() {
297
+ return _regenerator["default"].wrap(function _callee8$(_context8) {
298
+ while (1) switch (_context8.prev = _context8.next) {
330
299
  case 0:
331
- _context11.next = 2;
300
+ _context8.next = 2;
332
301
  return addNewChatDocumentIfNewDay(new Date());
333
302
  case 2:
334
- _context11.next = 4;
335
- return syncMessages(chatChannel, messageTable);
336
- case 4:
337
- // @@ livemessagetable??
303
+ syncMessages(chatChannel, messageTable); // @@ livemessagetable??
338
304
  desktopNotification(chatChannel);
339
- case 5:
305
+ case 4:
340
306
  case "end":
341
- return _context11.stop();
307
+ return _context8.stop();
342
308
  }
343
- }, _callee11);
309
+ }, _callee8);
344
310
  })); // The short chat version the live update listening is done in the pane but we do it in the widget @@
345
311
  _solidLogic.store.updater.addDownstreamChangeListener(chatDocument, div.refresh); // Live update
346
312
  liveMessageTable = messageTable;
347
313
  latest.messageTable = liveMessageTable;
348
- return _context12.abrupt("return", messageTable);
314
+ return _context9.abrupt("return", messageTable);
349
315
  case 11:
350
316
  case "end":
351
- return _context12.stop();
317
+ return _context9.stop();
352
318
  }
353
- }, _callee12);
319
+ }, _callee9);
354
320
  }));
355
321
  return _appendCurrentMessages.apply(this, arguments);
356
322
  };
@@ -358,15 +324,15 @@ function _infiniteMessageArea() {
358
324
  return _appendCurrentMessages.apply(this, arguments);
359
325
  };
360
326
  _addNewChatDocumentIfNewDay = function _addNewChatDocumentIf2() {
361
- _addNewChatDocumentIfNewDay = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee10() {
327
+ _addNewChatDocumentIfNewDay = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee7() {
362
328
  var newChatDocument, oldChatDocument, sts;
363
- return _regenerator["default"].wrap(function _callee10$(_context10) {
364
- while (1) switch (_context10.prev = _context10.next) {
329
+ return _regenerator["default"].wrap(function _callee7$(_context7) {
330
+ while (1) switch (_context7.prev = _context7.next) {
365
331
  case 0:
366
332
  // @@ Remove listener from previous table as it is now static
367
333
  newChatDocument = dateFolder.leafDocumentFromDate(new Date());
368
334
  if (newChatDocument.sameTerm(latest.messageTable.chatDocument)) {
369
- _context10.next = 7;
335
+ _context7.next = 7;
370
336
  break;
371
337
  }
372
338
  // It is a new day
@@ -375,7 +341,7 @@ function _infiniteMessageArea() {
375
341
  delete liveMessageTable.inputRow;
376
342
  }
377
343
  oldChatDocument = latest.messageTable.chatDocument;
378
- _context10.next = 6;
344
+ _context7.next = 6;
379
345
  return appendCurrentMessages();
380
346
  case 6:
381
347
  // Adding a link in the document will ping listeners to add the new block too
@@ -389,322 +355,284 @@ function _infiniteMessageArea() {
389
355
  }
390
356
  case 7:
391
357
  case "end":
392
- return _context10.stop();
358
+ return _context7.stop();
393
359
  }
394
- }, _callee10);
360
+ }, _callee7);
395
361
  }));
396
362
  return _addNewChatDocumentIfNewDay.apply(this, arguments);
397
363
  };
398
364
  addNewChatDocumentIfNewDay = function _addNewChatDocumentIf() {
399
365
  return _addNewChatDocumentIfNewDay.apply(this, arguments);
400
366
  };
401
- _renderMessageTable = function _renderMessageTable3() {
402
- _renderMessageTable = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee9(date, live) {
403
- var scrollBackbutton, scrollForwardButton, extendBackwards, _extendBackwards, setScrollBackbuttonIcon, extendForwards, _extendForwards, setScrollForwardButtonIcon, scrollForwardButtonHandler, _scrollForwardButtonHandler, messageTable, chatDocument, tr, test, titleTR, scrollBackbuttonCell, dateCell, scrollForwardButtonCell, sts, _iterator2, _step2, st;
404
- return _regenerator["default"].wrap(function _callee9$(_context9) {
405
- while (1) switch (_context9.prev = _context9.next) {
406
- case 0:
407
- _scrollForwardButtonHandler = function _scrollForwardButtonH2() {
408
- _scrollForwardButtonHandler = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee8(_event) {
409
- return _regenerator["default"].wrap(function _callee8$(_context8) {
410
- while (1) switch (_context8.prev = _context8.next) {
411
- case 0:
412
- if (!messageTable.extendedForwards) {
413
- _context8.next = 6;
414
- break;
415
- }
416
- removePreviousMessages(false, messageTable);
417
- messageTable.extendedForwards = false;
418
- setScrollForwardButtonIcon();
419
- _context8.next = 9;
420
- break;
421
- case 6:
422
- _context8.next = 8;
423
- return extendForwards();
424
- case 8:
425
- // async
426
- latest.messageTable.scrollIntoView(newestFirst);
427
- case 9:
428
- case "end":
429
- return _context8.stop();
430
- }
431
- }, _callee8);
432
- }));
433
- return _scrollForwardButtonHandler.apply(this, arguments);
434
- };
435
- scrollForwardButtonHandler = function _scrollForwardButtonH(_x22) {
436
- return _scrollForwardButtonHandler.apply(this, arguments);
437
- };
438
- setScrollForwardButtonIcon = function _setScrollForwardButt() {
439
- if (!scrollForwardButton) return;
440
- var sense = messageTable.extendedForwards ? !newestFirst : newestFirst; // noun_T-Block_1114657_000000.svg
441
- var scrollForwardIcon = messageTable["final"] ? 'noun_T-Block_1114657_000000.svg' : getScrollForwardButtonIcon(sense);
442
- scrollForwardButton.firstChild.setAttribute('src', _iconBase.icons.iconBase + scrollForwardIcon);
443
- function getScrollForwardButtonIcon(sense) {
444
- return !sense ? 'noun_1369241.svg' : 'noun_1369237.svg';
445
- }
446
- };
447
- _extendForwards = function _extendForwards3() {
448
- _extendForwards = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee7() {
449
- var done;
450
- return _regenerator["default"].wrap(function _callee7$(_context7) {
451
- while (1) switch (_context7.prev = _context7.next) {
452
- case 0:
453
- _context7.next = 2;
454
- return insertPreviousMessages(false);
455
- case 2:
456
- done = _context7.sent;
457
- return _context7.abrupt("return", done);
458
- case 4:
459
- case "end":
460
- return _context7.stop();
461
- }
462
- }, _callee7);
463
- }));
464
- return _extendForwards.apply(this, arguments);
465
- };
466
- extendForwards = function _extendForwards2() {
467
- return _extendForwards.apply(this, arguments);
468
- };
469
- setScrollBackbuttonIcon = function _setScrollBackbuttonI() {
470
- if (!scrollBackbutton) {
471
- return;
472
- }
473
- var sense = messageTable.extendedBack ? !newestFirst : newestFirst;
474
- var scrollBackIcon = messageTable.initial ? 'noun_T-Block_1114655_000000.svg' : getScrollbackIcon(sense);
475
- scrollBackbutton.firstChild.setAttribute('src', _iconBase.icons.iconBase + scrollBackIcon);
476
- function getScrollbackIcon(sense) {
477
- return sense ? 'noun_1369241.svg' : 'noun_1369237.svg';
478
- }
479
- };
480
- _extendBackwards = function _extendBackwards3() {
481
- _extendBackwards = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee6() {
482
- var done;
483
- return _regenerator["default"].wrap(function _callee6$(_context6) {
484
- while (1) switch (_context6.prev = _context6.next) {
485
- case 0:
486
- _context6.next = 2;
487
- return insertPreviousMessages(true);
488
- case 2:
489
- done = _context6.sent;
490
- if (done) {
491
- if (scrollBackbutton) {
492
- scrollBackbutton.firstChild.setAttribute('src', _iconBase.icons.iconBase + 'noun_T-Block_1114655_000000.svg'); // T
493
- scrollBackbutton.disabled = true;
494
- }
495
- messageTable.initial = true;
496
- } else {
497
- messageTable.extendedBack = true;
498
- }
499
- setScrollBackbuttonIcon();
500
- return _context6.abrupt("return", done);
501
- case 6:
502
- case "end":
503
- return _context6.stop();
504
- }
505
- }, _callee6);
506
- }));
507
- return _extendBackwards.apply(this, arguments);
508
- };
509
- extendBackwards = function _extendBackwards2() {
510
- return _extendBackwards.apply(this, arguments);
511
- };
512
- scrollBackbutton = null; // was let
513
- scrollForwardButton = null; // was let
514
- /// ///////////////// Scroll down adding more above
515
- /// ////////////// Scroll up adding more below
516
- /// ///////////////////////
517
- /*
518
- options = options || {}
519
- options.authorDateOnLeft = true
520
- const newestFirst = options.newestFirst === '1' || options.newestFirst === true // hack for now
521
- const channelObject = new ChatChannel(chatChannel, options)
522
- const dateFolder = channelObject.dateFolder
523
- const div = dom.createElement('div')
524
- const statusArea = div.appendChild(dom.createElement('div'))
525
- const userContext = { dom, statusArea, div: statusArea } // logged on state, pointers to user's stuff
526
- */
527
- debug.log('Options for called message Area', options);
528
- messageTable = dom.createElement('table');
529
- messageTable.style.width = '100%'; // fill the pane div
530
- messageTable.extendBackwards = extendBackwards; // Make function available to scroll stuff
531
- messageTable.extendForwards = extendForwards; // Make function available to scroll stuff
367
+ renderMessageTable = function _renderMessageTable(date, live) {
368
+ var scrollBackbutton;
369
+ var scrollForwardButton;
532
370
 
533
- messageTable.date = date;
534
- chatDocument = dateFolder.leafDocumentFromDate(date);
535
- messageTable.chatDocument = chatDocument;
536
- messageTable.fresh = false;
537
- messageTable.setAttribute('style', 'width: 100%;'); // fill that div!
538
- if (live) {
539
- messageTable["final"] = true;
540
- liveMessageTable = messageTable;
541
- latest.messageTable = messageTable;
542
- tr = (0, _message.renderMessageEditor)(channelObject, messageTable, userContext, options);
543
- if (newestFirst) {
544
- messageTable.insertBefore(tr, messageTable.firstChild); // If newestFirst
371
+ /// ///////////////// Scroll down adding more above
372
+ function extendBackwards() {
373
+ return _extendBackwards.apply(this, arguments);
374
+ }
375
+ function _extendBackwards() {
376
+ _extendBackwards = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
377
+ var done;
378
+ return _regenerator["default"].wrap(function _callee$(_context) {
379
+ while (1) switch (_context.prev = _context.next) {
380
+ case 0:
381
+ _context.next = 2;
382
+ return insertPreviousMessages(true);
383
+ case 2:
384
+ done = _context.sent;
385
+ if (done) {
386
+ if (scrollBackbutton) {
387
+ scrollBackbutton.firstChild.setAttribute('src', _iconBase.icons.iconBase + 'noun_T-Block_1114655_000000.svg'); // T
388
+ scrollBackbutton.disabled = true;
389
+ }
390
+ messageTable.initial = true;
545
391
  } else {
546
- messageTable.appendChild(tr); // not newestFirst
392
+ messageTable.extendedBack = true;
547
393
  }
548
- messageTable.inputRow = tr;
549
- }
550
-
551
- /// ///// Infinite scroll
552
- //
553
- // @@ listen for swipe past end event not just button
554
- test = true;
555
- if (test) {
556
- // ws options.infinite but need for non-infinite
557
- titleTR = dom.createElement('tr');
558
- scrollBackbuttonCell = titleTR.appendChild(dom.createElement('td')); // up traingles: noun_1369237.svg
559
- // down triangles: noun_1369241.svg
560
- /*
561
- const scrollBackIcon = newestFirst
562
- ? 'noun_1369241.svg'
563
- : 'noun_1369237.svg' // down and up arrows respoctively
564
- scrollBackbutton = widgets.button(
565
- dom,
566
- icons.iconBase + scrollBackIcon,
567
- 'Previous messages ...'
568
- )
569
- scrollBackbuttonCell.style = 'width:3em; height:3em;'
570
- scrollBackbutton.addEventListener('click', scrollBackbuttonHandler, false)
571
- messageTable.extendedBack = false
572
- scrollBackbuttonCell.appendChild(scrollBackbutton)
573
- setScrollBackbuttonIcon()
574
- */
575
- dateCell = titleTR.appendChild(dom.createElement('td'));
576
- dateCell.style = 'text-align: center; vertical-align: middle; color: #888; font-style: italic;';
577
- dateCell.textContent = widgets.shortDate(date.toISOString(), true); // no time, only date
578
-
579
- // @@@@@@@@@@@ todo move this button to other end of message cell, o
580
- scrollForwardButtonCell = titleTR.appendChild(dom.createElement('td'));
581
- if (options.includeRemoveButton) {
582
- scrollForwardButtonCell.appendChild(widgets.cancelButton(dom, function (_e) {
583
- div.parentNode.removeChild(div);
584
- }));
394
+ setScrollBackbuttonIcon();
395
+ return _context.abrupt("return", done);
396
+ case 6:
397
+ case "end":
398
+ return _context.stop();
399
+ }
400
+ }, _callee);
401
+ }));
402
+ return _extendBackwards.apply(this, arguments);
403
+ }
404
+ function setScrollBackbuttonIcon() {
405
+ if (!scrollBackbutton) {
406
+ return;
407
+ }
408
+ var sense = messageTable.extendedBack ? !newestFirst : newestFirst;
409
+ var scrollBackIcon = messageTable.initial ? 'noun_T-Block_1114655_000000.svg' : getScrollbackIcon(sense);
410
+ scrollBackbutton.firstChild.setAttribute('src', _iconBase.icons.iconBase + scrollBackIcon);
411
+ function getScrollbackIcon(sense) {
412
+ return sense ? 'noun_1369241.svg' : 'noun_1369237.svg';
413
+ }
414
+ }
415
+ function scrollBackbuttonHandler(_x8) {
416
+ return _scrollBackbuttonHandler.apply(this, arguments);
417
+ } /// ////////////// Scroll up adding more below
418
+ function _scrollBackbuttonHandler() {
419
+ _scrollBackbuttonHandler = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(_event) {
420
+ return _regenerator["default"].wrap(function _callee2$(_context2) {
421
+ while (1) switch (_context2.prev = _context2.next) {
422
+ case 0:
423
+ if (!messageTable.extendedBack) {
424
+ _context2.next = 6;
425
+ break;
585
426
  }
586
- /*
587
- const scrollForwardIcon = newestFirst
588
- ? 'noun_1369241.svg'
589
- : 'noun_1369237.svg' // down and up arrows respoctively
590
- scrollForwardButton = widgets.button(
591
- dom,
592
- icons.iconBase + scrollForwardIcon,
593
- 'Later messages ...'
594
- )
595
- scrollForwardButtonCell.appendChild(scrollForwardButton)
596
- scrollForwardButtonCell.style = 'width:3em; height:3em;'
597
- scrollForwardButton.addEventListener(
598
- 'click',
599
- scrollForwardButtonHandler,
600
- false
601
- )
602
- messageTable.extendedForward = false
603
- setScrollForwardButtonIcon()
604
- */
605
- messageTable.extendedForwards = false;
606
- if (!newestFirst) {
607
- // opposite end from the entry field
608
- messageTable.insertBefore(titleTR, messageTable.firstChild); // If not newestFirst
427
+ removePreviousMessages(true, messageTable);
428
+ messageTable.extendedBack = false;
429
+ setScrollBackbuttonIcon();
430
+ _context2.next = 8;
431
+ break;
432
+ case 6:
433
+ _context2.next = 8;
434
+ return extendBackwards();
435
+ case 8:
436
+ case "end":
437
+ return _context2.stop();
438
+ }
439
+ }, _callee2);
440
+ }));
441
+ return _scrollBackbuttonHandler.apply(this, arguments);
442
+ }
443
+ function extendForwards() {
444
+ return _extendForwards.apply(this, arguments);
445
+ }
446
+ function _extendForwards() {
447
+ _extendForwards = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3() {
448
+ var done;
449
+ return _regenerator["default"].wrap(function _callee3$(_context3) {
450
+ while (1) switch (_context3.prev = _context3.next) {
451
+ case 0:
452
+ _context3.next = 2;
453
+ return insertPreviousMessages(false);
454
+ case 2:
455
+ done = _context3.sent;
456
+ if (done) {
457
+ scrollForwardButton.firstChild.setAttribute('src', _iconBase.icons.iconBase + 'noun_T-Block_1114655_000000.svg');
458
+ scrollForwardButton.disabled = true;
459
+ messageTable["final"] = true;
609
460
  } else {
610
- messageTable.appendChild(titleTR); // newestFirst
461
+ messageTable.extendedForwards = true;
611
462
  }
612
- }
613
- sts = _solidLogic.store.statementsMatching(null, ns.wf('message'), null, chatDocument);
614
- if (!live && sts.length === 0) {
615
- // not todays
616
- // no need buttomns at the moment
617
- // messageTable.style.visibility = 'collapse' // Hide files with no messages
618
- }
619
- _iterator2 = _createForOfIteratorHelper(sts);
620
- _context9.prev = 26;
621
- _iterator2.s();
622
- case 28:
623
- if ((_step2 = _iterator2.n()).done) {
624
- _context9.next = 34;
463
+ setScrollForwardButtonIcon();
464
+ return _context3.abrupt("return", done);
465
+ case 6:
466
+ case "end":
467
+ return _context3.stop();
468
+ }
469
+ }, _callee3);
470
+ }));
471
+ return _extendForwards.apply(this, arguments);
472
+ }
473
+ function setScrollForwardButtonIcon() {
474
+ var sense = messageTable.extendedForwards ? !newestFirst : newestFirst; // noun_T-Block_1114657_000000.svg
475
+ var scrollForwardIcon = messageTable["final"] ? 'noun_T-Block_1114657_000000.svg' : getScrollForwardButtonIcon(sense);
476
+ scrollForwardButton.firstChild.setAttribute('src', _iconBase.icons.iconBase + scrollForwardIcon);
477
+ function getScrollForwardButtonIcon(sense) {
478
+ return !sense ? 'noun_1369241.svg' : 'noun_1369237.svg';
479
+ }
480
+ }
481
+ function scrollForwardButtonHandler(_x9) {
482
+ return _scrollForwardButtonHandler.apply(this, arguments);
483
+ } /// ///////////////////////
484
+ /*
485
+ options = options || {}
486
+ options.authorDateOnLeft = true
487
+ const newestFirst = options.newestFirst === '1' || options.newestFirst === true // hack for now
488
+ const channelObject = new ChatChannel(chatChannel, options)
489
+ const dateFolder = channelObject.dateFolder
490
+ const div = dom.createElement('div')
491
+ const statusArea = div.appendChild(dom.createElement('div'))
492
+ const userContext = { dom, statusArea, div: statusArea } // logged on state, pointers to user's stuff
493
+ */
494
+ function _scrollForwardButtonHandler() {
495
+ _scrollForwardButtonHandler = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4(_event) {
496
+ return _regenerator["default"].wrap(function _callee4$(_context4) {
497
+ while (1) switch (_context4.prev = _context4.next) {
498
+ case 0:
499
+ if (!messageTable.extendedForwards) {
500
+ _context4.next = 6;
501
+ break;
502
+ }
503
+ removePreviousMessages(false, messageTable);
504
+ messageTable.extendedForwards = false;
505
+ setScrollForwardButtonIcon();
506
+ _context4.next = 9;
625
507
  break;
626
- }
627
- st = _step2.value;
628
- _context9.next = 32;
629
- return addMessage(st.object, messageTable);
630
- case 32:
631
- _context9.next = 28;
632
- break;
633
- case 34:
634
- _context9.next = 39;
635
- break;
636
- case 36:
637
- _context9.prev = 36;
638
- _context9.t0 = _context9["catch"](26);
639
- _iterator2.e(_context9.t0);
640
- case 39:
641
- _context9.prev = 39;
642
- _iterator2.f();
643
- return _context9.finish(39);
644
- case 42:
645
- messageTable.fresh = true;
508
+ case 6:
509
+ _context4.next = 8;
510
+ return extendForwards();
511
+ case 8:
512
+ // async
513
+ latest.messageTable.scrollIntoView(newestFirst);
514
+ case 9:
515
+ case "end":
516
+ return _context4.stop();
517
+ }
518
+ }, _callee4);
519
+ }));
520
+ return _scrollForwardButtonHandler.apply(this, arguments);
521
+ }
522
+ var messageTable = dom.createElement('table');
523
+ messageTable.extendBackwards = extendBackwards; // Make function available to scroll stuff
524
+ messageTable.extendForwards = extendForwards; // Make function available to scroll stuff
646
525
 
647
- // loadMessageTable(messageTable, chatDocument)
648
- messageTable.fresh = false;
649
- return _context9.abrupt("return", messageTable);
650
- case 45:
651
- case "end":
652
- return _context9.stop();
653
- }
654
- }, _callee9, null, [[26, 36, 39, 42]]);
655
- }));
656
- return _renderMessageTable.apply(this, arguments);
657
- };
658
- renderMessageTable = function _renderMessageTable2(_x18, _x19) {
659
- return _renderMessageTable.apply(this, arguments);
526
+ messageTable.date = date;
527
+ var chatDocument = dateFolder.leafDocumentFromDate(date);
528
+ messageTable.chatDocument = chatDocument;
529
+ messageTable.fresh = false;
530
+ messageTable.setAttribute('style', 'width: 100%;'); // fill that div!
531
+ if (live) {
532
+ messageTable["final"] = true;
533
+ liveMessageTable = messageTable;
534
+ latest.messageTable = messageTable;
535
+ var tr = (0, _message.renderMessageEditor)(channelObject, messageTable, userContext, options);
536
+ if (newestFirst) {
537
+ messageTable.insertBefore(tr, messageTable.firstChild); // If newestFirst
538
+ } else {
539
+ messageTable.appendChild(tr); // not newestFirst
540
+ }
541
+ messageTable.inputRow = tr;
542
+ }
543
+
544
+ /// ///// Infinite scroll
545
+ //
546
+ // @@ listen for swipe past end event not just button
547
+ if (options.infinite) {
548
+ var scrollBackbuttonTR = dom.createElement('tr');
549
+ var scrollBackbuttonCell = scrollBackbuttonTR.appendChild(dom.createElement('td'));
550
+ // up traingles: noun_1369237.svg
551
+ // down triangles: noun_1369241.svg
552
+ var scrollBackIcon = newestFirst ? 'noun_1369241.svg' : 'noun_1369237.svg'; // down and up arrows respoctively
553
+ scrollBackbutton = widgets.button(dom, _iconBase.icons.iconBase + scrollBackIcon, 'Previous messages ...');
554
+ scrollBackbuttonCell.style = 'width:3em; height:3em;';
555
+ scrollBackbutton.addEventListener('click', scrollBackbuttonHandler, false);
556
+ messageTable.extendedBack = false;
557
+ scrollBackbuttonCell.appendChild(scrollBackbutton);
558
+ setScrollBackbuttonIcon();
559
+ var dateCell = scrollBackbuttonTR.appendChild(dom.createElement('td'));
560
+ dateCell.style = 'text-align: center; vertical-align: middle; color: #888; font-style: italic;';
561
+ dateCell.textContent = widgets.shortDate(date.toISOString(), true); // no time, only date
562
+
563
+ // @@@@@@@@@@@ todo move this button to other end of message cell, o
564
+ var scrollForwardButtonCell = scrollBackbuttonTR.appendChild(dom.createElement('td'));
565
+ var scrollForwardIcon = newestFirst ? 'noun_1369241.svg' : 'noun_1369237.svg'; // down and up arrows respoctively
566
+ scrollForwardButton = widgets.button(dom, _iconBase.icons.iconBase + scrollForwardIcon, 'Later messages ...');
567
+ scrollForwardButtonCell.appendChild(scrollForwardButton);
568
+ scrollForwardButtonCell.style = 'width:3em; height:3em;';
569
+ scrollForwardButton.addEventListener('click', scrollForwardButtonHandler, false);
570
+ messageTable.extendedForward = false;
571
+ setScrollForwardButtonIcon();
572
+ messageTable.extendedForwards = false;
573
+ if (!newestFirst) {
574
+ // opposite end from the entry field
575
+ messageTable.insertBefore(scrollBackbuttonTR, messageTable.firstChild); // If not newestFirst
576
+ } else {
577
+ messageTable.appendChild(scrollBackbuttonTR); // newestFirst
578
+ }
579
+ }
580
+ var sts = _solidLogic.store.statementsMatching(null, ns.wf('message'), null, chatDocument);
581
+ if (!live && sts.length === 0) {
582
+ // not todays
583
+ // no need buttomns at the moment
584
+ // messageTable.style.visibility = 'collapse' // Hide files with no messages
585
+ }
586
+ sts.forEach(function (st) {
587
+ addMessage(st.object, messageTable);
588
+ });
589
+ messageTable.fresh = true;
590
+
591
+ // loadMessageTable(messageTable, chatDocument)
592
+ messageTable.fresh = false;
593
+ return messageTable;
660
594
  };
661
595
  _createMessageTable = function _createMessageTable3() {
662
- _createMessageTable = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee5(date, live) {
596
+ _createMessageTable = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee6(date, live) {
663
597
  var chatDocument, messageTable, statusTR;
664
- return _regenerator["default"].wrap(function _callee5$(_context5) {
665
- while (1) switch (_context5.prev = _context5.next) {
598
+ return _regenerator["default"].wrap(function _callee6$(_context6) {
599
+ while (1) switch (_context6.prev = _context6.next) {
666
600
  case 0:
667
601
  debug.log(' createMessageTable for ' + date);
668
602
  chatDocument = dateFolder.leafDocumentFromDate(date);
669
- _context5.prev = 2;
670
- _context5.next = 5;
603
+ _context6.prev = 2;
604
+ _context6.next = 5;
671
605
  return _solidLogic.store.fetcher.load(chatDocument);
672
606
  case 5:
673
- _context5.next = 21;
607
+ _context6.next = 19;
674
608
  break;
675
609
  case 7:
676
- _context5.prev = 7;
677
- _context5.t0 = _context5["catch"](2);
610
+ _context6.prev = 7;
611
+ _context6.t0 = _context6["catch"](2);
678
612
  messageTable = dom.createElement('table');
679
613
  statusTR = messageTable.appendChild(dom.createElement('tr')); // ### find status in exception
680
- if (!(_context5.t0.response && _context5.t0.response.status && _context5.t0.response.status === 404)) {
681
- _context5.next = 18;
614
+ if (!(_context6.t0.response && _context6.t0.response.status && _context6.t0.response.status === 404)) {
615
+ _context6.next = 16;
682
616
  break;
683
617
  }
684
618
  debug.log('Error 404 for chat file ' + chatDocument);
685
- _context5.next = 15;
686
- return renderMessageTable(date, live);
687
- case 15:
688
- return _context5.abrupt("return", _context5.sent);
689
- case 18:
619
+ return _context6.abrupt("return", renderMessageTable(date, live));
620
+ case 16:
690
621
  debug.log('*** Error NON 404 for chat file ' + chatDocument);
691
- statusTR.appendChild(widgets.errorMessageBlock(dom, _context5.t0, 'pink'));
622
+ statusTR.appendChild(widgets.errorMessageBlock(dom, _context6.t0, 'pink'));
623
+ case 18:
624
+ return _context6.abrupt("return", statusTR);
625
+ case 19:
626
+ return _context6.abrupt("return", renderMessageTable(date, live));
692
627
  case 20:
693
- return _context5.abrupt("return", statusTR);
694
- case 21:
695
- _context5.next = 23;
696
- return renderMessageTable(date, live);
697
- case 23:
698
- return _context5.abrupt("return", _context5.sent);
699
- case 24:
700
628
  case "end":
701
- return _context5.stop();
629
+ return _context6.stop();
702
630
  }
703
- }, _callee5, null, [[2, 7]]);
631
+ }, _callee6, null, [[2, 7]]);
704
632
  }));
705
633
  return _createMessageTable.apply(this, arguments);
706
634
  };
707
- createMessageTable = function _createMessageTable2(_x16, _x17) {
635
+ createMessageTable = function _createMessageTable2(_x6, _x7) {
708
636
  return _createMessageTable.apply(this, arguments);
709
637
  };
710
638
  removePreviousMessages = function _removePreviousMessag(backwards, messageTable) {
@@ -723,48 +651,32 @@ function _infiniteMessageArea() {
723
651
  extr.messageTable = messageTable;
724
652
  };
725
653
  _insertPreviousMessages = function _insertPreviousMessag2() {
726
- _insertPreviousMessages = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4(backwards) {
654
+ _insertPreviousMessages = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee5(backwards) {
727
655
  var extremity, date, live, todayDoc, doc, newMessageTable;
728
- return _regenerator["default"].wrap(function _callee4$(_context4) {
729
- while (1) switch (_context4.prev = _context4.next) {
656
+ return _regenerator["default"].wrap(function _callee5$(_context5) {
657
+ while (1) switch (_context5.prev = _context5.next) {
730
658
  case 0:
731
659
  extremity = backwards ? earliest : latest;
732
660
  date = extremity.messageTable.date; // day in mssecs
733
- // Are we at the top of a thread?
734
- if (!(backwards && earliest.limit && date <= earliest.limit)) {
735
- _context4.next = 7;
736
- break;
737
- }
738
- if (liveMessageTable) {
739
- _context4.next = 6;
740
- break;
741
- }
742
- _context4.next = 6;
743
- return appendCurrentMessages();
744
- case 6:
745
- return _context4.abrupt("return", true);
746
- case 7:
747
- debug.log(' insertPreviousMessages: loadPrevious given date ' + date);
748
- _context4.next = 10;
661
+ _context5.next = 4;
749
662
  return dateFolder.loadPrevious(date, backwards);
750
- case 10:
751
- date = _context4.sent;
663
+ case 4:
664
+ date = _context5.sent;
752
665
  // backwards
753
- debug.log(' insertPreviousMessages: loadPrevious returns date ' + date);
754
666
  debug.log("insertPreviousMessages: from ".concat(backwards ? 'backwards' : 'forwards', " loadPrevious: ").concat(date));
755
667
  if (!(!date && !backwards && !liveMessageTable)) {
756
- _context4.next = 16;
668
+ _context5.next = 9;
757
669
  break;
758
670
  }
759
- _context4.next = 16;
671
+ _context5.next = 9;
760
672
  return appendCurrentMessages();
761
- case 16:
673
+ case 9:
762
674
  if (date) {
763
- _context4.next = 18;
675
+ _context5.next = 11;
764
676
  break;
765
677
  }
766
- return _context4.abrupt("return", true);
767
- case 18:
678
+ return _context5.abrupt("return", true);
679
+ case 11:
768
680
  // done
769
681
  live = false;
770
682
  if (!backwards) {
@@ -772,10 +684,10 @@ function _infiniteMessageArea() {
772
684
  doc = dateFolder.leafDocumentFromDate(date);
773
685
  live = doc.sameTerm(todayDoc); // Is this todays?
774
686
  }
775
- _context4.next = 22;
687
+ _context5.next = 15;
776
688
  return createMessageTable(date, live);
777
- case 22:
778
- newMessageTable = _context4.sent;
689
+ case 15:
690
+ newMessageTable = _context5.sent;
779
691
  extremity.messageTable = newMessageTable; // move pointer to earliest
780
692
  if (backwards ? newestFirst : !newestFirst) {
781
693
  // put on bottom or top
@@ -784,161 +696,64 @@ function _infiniteMessageArea() {
784
696
  // put on top as we scroll back
785
697
  div.insertBefore(newMessageTable, div.firstChild);
786
698
  }
787
- return _context4.abrupt("return", live);
788
- case 26:
699
+ return _context5.abrupt("return", live);
700
+ case 19:
789
701
  case "end":
790
- return _context4.stop();
702
+ return _context5.stop();
791
703
  }
792
- }, _callee4);
704
+ }, _callee5);
793
705
  }));
794
706
  return _insertPreviousMessages.apply(this, arguments);
795
707
  };
796
- insertPreviousMessages = function _insertPreviousMessag(_x15) {
708
+ insertPreviousMessages = function _insertPreviousMessag(_x5) {
797
709
  return _insertPreviousMessages.apply(this, arguments);
798
710
  };
799
- _addMessage = function _addMessage3() {
800
- _addMessage = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3(message, messageTable) {
801
- var thread, id;
802
- return _regenerator["default"].wrap(function _callee3$(_context3) {
803
- while (1) switch (_context3.prev = _context3.next) {
804
- case 0:
805
- if (!((0, _chatLogic.isDeleted)(message) && !options.showDeletedMessages)) {
806
- _context3.next = 2;
807
- break;
808
- }
809
- return _context3.abrupt("return");
810
- case 2:
811
- /* if (isReplaced(message)) { //
812
- return // this is old version
813
- } */
814
- thread = _solidLogic.store.any(null, ns.sioc('has_member'), message, message.doc());
815
- id = _solidLogic.store.any(message, ns.sioc('id'), null, message.doc());
816
- if (id && !thread) {
817
- thread = _solidLogic.store.any(null, ns.sioc('has_member'), id, message.doc());
818
- }
819
- if (!options.thread) {
820
- _context3.next = 18;
821
- break;
822
- }
823
- if (!_solidLogic.store.holds(message, ns.sioc('has_reply'), options.thread)) {
824
- _context3.next = 10;
825
- break;
826
- }
827
- // root of thread
828
- debug.log(' addMessage: displaying root of thread ' + thread);
829
- _context3.next = 16;
830
- break;
831
- case 10:
832
- if (!(thread && thread.sameTerm(options.thread))) {
833
- _context3.next = 14;
834
- break;
835
- }
836
- debug.log(' addMessage: Displaying body of thread ' + message.uri.slice(-10));
837
- _context3.next = 16;
838
- break;
839
- case 14:
840
- debug.log(' addMessage: Suppress non-thread message in thread table ' + message.uri.slice(-10));
841
- return _context3.abrupt("return");
842
- case 16:
843
- _context3.next = 24;
844
- break;
845
- case 18:
846
- if (!thread) {
847
- _context3.next = 23;
848
- break;
849
- }
850
- debug.log(' addMessage: Suppress thread message in non-thread table ' + message.uri.slice(-10));
851
- return _context3.abrupt("return");
852
- case 23:
853
- debug.log(' addMessage: Normal non-thread message in non-thread table ' + message.uri.slice(-10));
854
- case 24:
855
- _context3.next = 26;
856
- return insertMessageIntoTable(channelObject, messageTable, message, messageTable.fresh, options, userContext);
857
- case 26:
858
- case "end":
859
- return _context3.stop();
860
- }
861
- }, _callee3);
862
- }));
863
- return _addMessage.apply(this, arguments);
864
- };
865
- addMessage = function _addMessage2(_x13, _x14) {
866
- return _addMessage.apply(this, arguments);
867
- };
868
- _syncMessages = function _syncMessages3() {
869
- _syncMessages = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(chatChannel, messageTable) {
870
- var displayed, ele, ele2, messages, stored, _iterator, _step, m;
871
- return _regenerator["default"].wrap(function _callee2$(_context2) {
872
- while (1) switch (_context2.prev = _context2.next) {
873
- case 0:
874
- displayed = {};
875
- for (ele = messageTable.firstChild; ele; ele = ele.nextSibling) {
876
- if (ele.AJAR_subject) {
877
- displayed[ele.AJAR_subject.uri] = true;
878
- }
879
- }
880
- messages = _solidLogic.store.each(chatChannel, ns.wf('message'), null, messageTable.chatDocument);
881
- stored = {};
882
- _iterator = _createForOfIteratorHelper(messages);
883
- _context2.prev = 5;
884
- _iterator.s();
885
- case 7:
886
- if ((_step = _iterator.n()).done) {
887
- _context2.next = 15;
888
- break;
889
- }
890
- m = _step.value;
891
- stored[m.uri] = true;
892
- if (displayed[m.uri]) {
893
- _context2.next = 13;
894
- break;
895
- }
896
- _context2.next = 13;
897
- return addMessage(m, messageTable);
898
- case 13:
899
- _context2.next = 7;
900
- break;
901
- case 15:
902
- _context2.next = 20;
903
- break;
904
- case 17:
905
- _context2.prev = 17;
906
- _context2.t0 = _context2["catch"](5);
907
- _iterator.e(_context2.t0);
908
- case 20:
909
- _context2.prev = 20;
910
- _iterator.f();
911
- return _context2.finish(20);
912
- case 23:
913
- // eslint-disable-next-line space-in-parens
914
- for (ele = messageTable.firstChild; ele;) {
915
- ele2 = ele.nextSibling;
916
- if (ele.AJAR_subject && !stored[ele.AJAR_subject.uri]) {
917
- messageTable.removeChild(ele);
918
- }
919
- ele = ele2;
920
- }
921
- for (ele = messageTable.firstChild; ele; ele = ele.nextSibling) {
922
- if (ele.AJAR_subject) {
923
- // Refresh thumbs up etc
924
- widgets.refreshTree(ele); // Things inside may have changed too
925
- }
926
- }
927
- case 25:
928
- case "end":
929
- return _context2.stop();
930
- }
931
- }, _callee2, null, [[5, 17, 20, 23]]);
932
- }));
933
- return _syncMessages.apply(this, arguments);
711
+ addMessage = function _addMessage(message, messageTable) {
712
+ var latest = (0, _chatLogic.mostRecentVersion)(message);
713
+ // const content = store.any(latest, ns.sioc('content'))
714
+ if ((0, _chatLogic.isDeleted)(latest) && !options.showDeletedMessages) {
715
+ return; // ignore deleted messaged -- @@ could also leave a placeholder
716
+ }
717
+ insertMessageIntoTable(channelObject, messageTable, message, messageTable.fresh, options, userContext); // fresh from elsewhere
934
718
  };
935
- syncMessages = function _syncMessages2(_x11, _x12) {
936
- return _syncMessages.apply(this, arguments);
719
+ syncMessages = function _syncMessages(about, messageTable) {
720
+ var displayed = {};
721
+ var ele, ele2;
722
+ for (ele = messageTable.firstChild; ele; ele = ele.nextSibling) {
723
+ if (ele.AJAR_subject) {
724
+ displayed[ele.AJAR_subject.uri] = true;
725
+ }
726
+ }
727
+ var messages = _solidLogic.store.statementsMatching(about, ns.wf('message'), null, messageTable.chatDocument).map(function (st) {
728
+ return st.object;
729
+ });
730
+ var stored = {};
731
+ messages.forEach(function (m) {
732
+ stored[m.uri] = true;
733
+ if (!displayed[m.uri]) {
734
+ addMessage(m, messageTable);
735
+ }
736
+ });
737
+
738
+ // eslint-disable-next-line space-in-parens
739
+ for (ele = messageTable.firstChild; ele;) {
740
+ ele2 = ele.nextSibling;
741
+ if (ele.AJAR_subject && !stored[ele.AJAR_subject.uri]) {
742
+ messageTable.removeChild(ele);
743
+ }
744
+ ele = ele2;
745
+ }
746
+ for (ele = messageTable.firstChild; ele; ele = ele.nextSibling) {
747
+ if (ele.AJAR_subject) {
748
+ // Refresh thumbs up etc
749
+ widgets.refreshTree(ele); // Things inside may have changed too
750
+ }
751
+ }
937
752
  }; // ///////////////////////////////////////////////////////////////////////
938
753
  // syncMessages
939
754
  // Called once per original message displayed
940
755
  /* Add a new messageTable at the top/bottom
941
- */
756
+ */
942
757
  /* Remove message tables earlier than this one
943
758
  */
944
759
  /* Load and render message table
@@ -972,33 +787,23 @@ function _infiniteMessageArea() {
972
787
  statusArea: statusArea,
973
788
  div: statusArea
974
789
  }; // logged on state, pointers to user's stuff
790
+ // const messageTable = dom.createElement('table') // @@ check does this go in renderMessageTable
975
791
  earliest = {
976
792
  messageTable: null
977
793
  }; // Stuff about each end of the loaded days
978
794
  latest = {
979
795
  messageTable: null
980
796
  };
981
- if (options.thread) {
982
- thread = options.thread;
983
- threadRootMessage = _solidLogic.store.any(null, ns.sioc('has_reply'), thread, thread.doc());
984
- if (threadRootMessage) {
985
- threadTime = _solidLogic.store.any(threadRootMessage, ns.dct('created'), null, threadRootMessage.doc());
986
- if (threadTime) {
987
- earliest.limit = new Date(threadTime.value);
988
- debug.log(' inifinite: thread start at ' + earliest.limit);
989
- }
990
- }
991
- }
992
797
  lock = false;
993
- _context15.next = 34;
798
+ _context12.next = 30;
994
799
  return loadInitialContent();
995
- case 34:
996
- return _context15.abrupt("return", div);
997
- case 35:
800
+ case 30:
801
+ return _context12.abrupt("return", div);
802
+ case 31:
998
803
  case "end":
999
- return _context15.stop();
804
+ return _context12.stop();
1000
805
  }
1001
- }, _callee15);
806
+ }, _callee12);
1002
807
  }));
1003
808
  return _infiniteMessageArea.apply(this, arguments);
1004
809
  }