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