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