solid-ui 2.4.23 → 2.4.24-0c90afe2
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/index.html +0 -0
- package/dist/main.js +2221 -5081
- package/dist/main.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 +4 -67
- package/lib/acl/access-controller.js.map +1 -1
- 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 +59 -137
- package/lib/acl/access-groups.js.map +1 -1
- 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 +14 -54
- package/lib/acl/acl-control.js.map +1 -1
- package/lib/acl/acl.d.ts +0 -0
- package/lib/acl/acl.d.ts.map +0 -0
- package/lib/acl/acl.js +32 -107
- package/lib/acl/acl.js.map +1 -1
- 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 -92
- package/lib/acl/add-agent-buttons.js.map +1 -1
- package/lib/acl/index.d.ts +0 -0
- package/lib/acl/index.d.ts.map +0 -0
- package/lib/acl/index.js +1 -3
- package/lib/acl/index.js.map +1 -1
- package/lib/acl/styles.d.ts +0 -0
- package/lib/acl/styles.d.ts.map +0 -0
- package/lib/acl/styles.js +1 -2
- package/lib/acl/styles.js.map +1 -1
- 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 +8 -80
- package/lib/chat/bookmarks.js.map +1 -1
- package/lib/chat/chatLogic.js +109 -180
- package/lib/chat/chatLogic.js.map +1 -1
- package/lib/chat/dateFolder.js +51 -117
- package/lib/chat/dateFolder.js.map +1 -1
- package/lib/chat/infinite.js +40 -191
- package/lib/chat/infinite.js.map +1 -1
- package/lib/chat/message.js +37 -150
- package/lib/chat/message.js.map +1 -1
- package/lib/chat/messageTools.js +23 -96
- package/lib/chat/messageTools.js.map +1 -1
- package/lib/chat/thread.js +33 -91
- package/lib/chat/thread.js.map +1 -1
- package/lib/create/create.d.ts +0 -0
- package/lib/create/create.d.ts.map +0 -0
- package/lib/create/create.js +19 -51
- package/lib/create/create.js.map +1 -1
- package/lib/create/index.d.ts +0 -0
- package/lib/create/index.d.ts.map +0 -0
- package/lib/create/index.js +0 -2
- package/lib/create/index.js.map +1 -1
- 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 -8
- package/lib/debug.js.map +1 -1
- package/lib/folders.js +4 -27
- package/lib/folders.js.map +1 -1
- package/lib/footer/index.d.ts +0 -0
- package/lib/footer/index.d.ts.map +0 -0
- package/lib/footer/index.js +2 -24
- package/lib/footer/index.js.map +1 -1
- package/lib/footer/styleMap.d.ts +0 -0
- package/lib/footer/styleMap.d.ts.map +0 -0
- package/lib/footer/styleMap.js +0 -0
- package/lib/footer/styleMap.js.map +1 -1
- 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 +1 -1
- package/lib/header/index.d.ts +0 -0
- package/lib/header/index.d.ts.map +0 -0
- package/lib/header/index.js +3 -72
- package/lib/header/index.js.map +1 -1
- package/lib/header/styleMap.d.ts +0 -0
- package/lib/header/styleMap.d.ts.map +0 -0
- package/lib/header/styleMap.js +4 -3
- package/lib/header/styleMap.js.map +1 -1
- package/lib/iconBase.d.ts +0 -0
- package/lib/iconBase.d.ts.map +0 -0
- package/lib/iconBase.js +3 -4
- package/lib/iconBase.js.map +1 -1
- 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 +5 -46
- package/lib/index.js.map +1 -1
- package/lib/jss/index.d.ts +0 -0
- package/lib/jss/index.d.ts.map +0 -0
- package/lib/jss/index.js +3 -9
- package/lib/jss/index.js.map +1 -1
- package/lib/log.d.ts +0 -0
- package/lib/log.d.ts.map +0 -0
- package/lib/log.js +15 -51
- package/lib/log.js.map +1 -1
- package/lib/login/login.d.ts +0 -0
- package/lib/login/login.d.ts.map +0 -0
- package/lib/login/login.js +74 -303
- package/lib/login/login.js.map +1 -1
- package/lib/matrix/index.d.ts +0 -0
- package/lib/matrix/index.d.ts.map +0 -0
- package/lib/matrix/index.js +0 -2
- package/lib/matrix/index.js.map +1 -1
- package/lib/matrix/matrix.d.ts +0 -0
- package/lib/matrix/matrix.d.ts.map +0 -0
- package/lib/matrix/matrix.js +7 -55
- package/lib/matrix/matrix.js.map +1 -1
- 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 -2
- package/lib/media/index.js.map +1 -1
- 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 +13 -33
- package/lib/media/media-capture.js.map +1 -1
- package/lib/messageArea.js +23 -64
- package/lib/messageArea.js.map +1 -1
- package/lib/noun_Camera_1618446_000000.js +0 -0
- package/lib/noun_Camera_1618446_000000.js.map +1 -1
- package/lib/ns.js +5 -7
- package/lib/ns.js.map +1 -1
- package/lib/pad.d.ts +0 -0
- package/lib/pad.d.ts.map +0 -0
- package/lib/pad.js +48 -234
- 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 +10 -65
- package/lib/participation.js.map +1 -1
- package/lib/preferences.js +21 -42
- package/lib/preferences.js.map +1 -1
- package/lib/signup/config-default.js +1 -8
- package/lib/signup/config-default.js.map +1 -1
- package/lib/signup/signup.js +6 -13
- package/lib/signup/signup.js.map +1 -1
- package/lib/stories/decorators.js +0 -2
- package/lib/stories/decorators.js.map +1 -1
- package/lib/style.js +8 -5
- package/lib/style.js.map +1 -1
- package/lib/style_multiSelect.js +1 -5
- package/lib/style_multiSelect.js.map +1 -1
- package/lib/table.js +309 -322
- package/lib/table.js.map +1 -1
- package/lib/tabs.d.ts +0 -0
- package/lib/tabs.d.ts.map +0 -0
- package/lib/tabs.js +20 -100
- 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 +4 -52
- package/lib/utils/headerFooterHelpers.js.map +1 -1
- package/lib/utils/index.js +41 -135
- package/lib/utils/index.js.map +1 -1
- package/lib/utils/label.d.ts +0 -0
- package/lib/utils/label.d.ts.map +0 -0
- package/lib/utils/label.js +13 -34
- package/lib/utils/label.js.map +1 -1
- package/lib/versionInfo.d.ts +0 -0
- package/lib/versionInfo.d.ts.map +0 -0
- package/lib/versionInfo.js +14 -14
- 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 -8
- package/lib/widgets/buttons/iconLinks.js.map +1 -1
- package/lib/widgets/buttons.d.ts +0 -0
- package/lib/widgets/buttons.d.ts.map +0 -0
- package/lib/widgets/buttons.js +115 -291
- package/lib/widgets/buttons.js.map +1 -1
- package/lib/widgets/dragAndDrop.js +12 -41
- package/lib/widgets/dragAndDrop.js.map +1 -1
- package/lib/widgets/error.d.ts +0 -0
- package/lib/widgets/error.d.ts.map +0 -0
- package/lib/widgets/error.js +3 -9
- package/lib/widgets/error.js.map +1 -1
- 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 +8 -71
- package/lib/widgets/forms/autocomplete/autocompleteBar.js.map +1 -1
- 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 +13 -65
- package/lib/widgets/forms/autocomplete/autocompleteField.js.map +1 -1
- 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 +15 -107
- package/lib/widgets/forms/autocomplete/autocompletePicker.js.map +1 -1
- 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 +6 -55
- package/lib/widgets/forms/autocomplete/language.js.map +1 -1
- 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 +12 -131
- package/lib/widgets/forms/autocomplete/publicData.js.map +1 -1
- 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 +12 -55
- package/lib/widgets/forms/basic.js.map +1 -1
- 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 +1 -15
- package/lib/widgets/forms/comment.js.map +1 -1
- 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 +3 -16
- package/lib/widgets/forms/fieldFunction.js.map +1 -1
- 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 -12
- package/lib/widgets/forms/fieldParams.js.map +1 -1
- 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 +1 -14
- package/lib/widgets/forms/formStyle.js.map +1 -1
- package/lib/widgets/forms.js +70 -474
- package/lib/widgets/forms.js.map +1 -1
- package/lib/widgets/index.js +0 -21
- package/lib/widgets/index.js.map +1 -1
- package/lib/widgets/multiSelect.js +48 -171
- package/lib/widgets/multiSelect.js.map +1 -1
- package/lib/widgets/peoplePicker.js +20 -90
- package/lib/widgets/peoplePicker.js.map +1 -1
- package/lib/widgets/widgetHelpers.d.ts +0 -0
- package/lib/widgets/widgetHelpers.d.ts.map +0 -0
- package/lib/widgets/widgetHelpers.js +2 -9
- package/lib/widgets/widgetHelpers.js.map +1 -1
- package/package.json +30 -30
package/lib/chat/infinite.js
CHANGED
|
@@ -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
|
-
}
|
|
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);
|
|
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 &&
|
|
293
|
-
|
|
294
|
-
|
|
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;
|
|
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
|
-
}
|
|
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'));
|
|
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
|
-
|
|
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;
|
|
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,36 +626,29 @@ 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
|
-
_context6.next =
|
|
630
|
+
_context6.next = 20;
|
|
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
|
-
_context6.next =
|
|
638
|
+
_context6.next = 17;
|
|
755
639
|
break;
|
|
756
640
|
}
|
|
757
|
-
|
|
758
641
|
debug.log('Error 404 for chat file ' + chatDocument);
|
|
642
|
+
delete _solidLogic.store.fetcher.requested[chatDocument]; // release 404 from fetcher.load
|
|
759
643
|
return _context6.abrupt("return", renderMessageTable(date, live));
|
|
760
|
-
|
|
761
|
-
case 16:
|
|
644
|
+
case 17:
|
|
762
645
|
debug.log('*** Error NON 404 for chat file ' + chatDocument);
|
|
763
646
|
statusTR.appendChild(widgets.errorMessageBlock(dom, _context6.t0, 'pink'));
|
|
764
|
-
|
|
765
|
-
case 18:
|
|
766
|
-
return _context6.abrupt("return", statusTR);
|
|
767
|
-
|
|
768
647
|
case 19:
|
|
769
|
-
return _context6.abrupt("return",
|
|
770
|
-
|
|
648
|
+
return _context6.abrupt("return", statusTR);
|
|
771
649
|
case 20:
|
|
650
|
+
return _context6.abrupt("return", renderMessageTable(date, live));
|
|
651
|
+
case 21:
|
|
772
652
|
case "end":
|
|
773
653
|
return _context6.stop();
|
|
774
654
|
}
|
|
@@ -777,11 +657,9 @@ function _infiniteMessageArea() {
|
|
|
777
657
|
}));
|
|
778
658
|
return _createMessageTable.apply(this, arguments);
|
|
779
659
|
};
|
|
780
|
-
|
|
781
660
|
createMessageTable = function _createMessageTable2(_x6, _x7) {
|
|
782
661
|
return _createMessageTable.apply(this, arguments);
|
|
783
662
|
};
|
|
784
|
-
|
|
785
663
|
removePreviousMessages = function _removePreviousMessag(backwards, messageTable) {
|
|
786
664
|
if (backwards ? newestFirst : !newestFirst) {
|
|
787
665
|
// it was put on bottom
|
|
@@ -794,11 +672,9 @@ function _infiniteMessageArea() {
|
|
|
794
672
|
div.removeChild(messageTable.previousSibling);
|
|
795
673
|
}
|
|
796
674
|
}
|
|
797
|
-
|
|
798
675
|
var extr = backwards ? earliest : latest;
|
|
799
676
|
extr.messageTable = messageTable;
|
|
800
677
|
};
|
|
801
|
-
|
|
802
678
|
_insertPreviousMessages = function _insertPreviousMessag2() {
|
|
803
679
|
_insertPreviousMessages = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee5(backwards) {
|
|
804
680
|
var extremity, date, live, todayDoc, doc, newMessageTable;
|
|
@@ -808,48 +684,37 @@ function _infiniteMessageArea() {
|
|
|
808
684
|
case 0:
|
|
809
685
|
extremity = backwards ? earliest : latest;
|
|
810
686
|
date = extremity.messageTable.date; // day in mssecs
|
|
811
|
-
|
|
812
687
|
_context5.next = 4;
|
|
813
688
|
return dateFolder.loadPrevious(date, backwards);
|
|
814
|
-
|
|
815
689
|
case 4:
|
|
816
690
|
date = _context5.sent;
|
|
817
691
|
// backwards
|
|
818
692
|
debug.log("insertPreviousMessages: from ".concat(backwards ? 'backwards' : 'forwards', " loadPrevious: ").concat(date));
|
|
819
|
-
|
|
820
693
|
if (!(!date && !backwards && !liveMessageTable)) {
|
|
821
694
|
_context5.next = 9;
|
|
822
695
|
break;
|
|
823
696
|
}
|
|
824
|
-
|
|
825
697
|
_context5.next = 9;
|
|
826
698
|
return appendCurrentMessages();
|
|
827
|
-
|
|
828
699
|
case 9:
|
|
829
700
|
if (date) {
|
|
830
701
|
_context5.next = 11;
|
|
831
702
|
break;
|
|
832
703
|
}
|
|
833
|
-
|
|
834
704
|
return _context5.abrupt("return", true);
|
|
835
|
-
|
|
836
705
|
case 11:
|
|
837
706
|
// done
|
|
838
707
|
live = false;
|
|
839
|
-
|
|
840
708
|
if (!backwards) {
|
|
841
709
|
todayDoc = dateFolder.leafDocumentFromDate(new Date());
|
|
842
710
|
doc = dateFolder.leafDocumentFromDate(date);
|
|
843
711
|
live = doc.sameTerm(todayDoc); // Is this todays?
|
|
844
712
|
}
|
|
845
|
-
|
|
846
713
|
_context5.next = 15;
|
|
847
714
|
return createMessageTable(date, live);
|
|
848
|
-
|
|
849
715
|
case 15:
|
|
850
716
|
newMessageTable = _context5.sent;
|
|
851
717
|
extremity.messageTable = newMessageTable; // move pointer to earliest
|
|
852
|
-
|
|
853
718
|
if (backwards ? newestFirst : !newestFirst) {
|
|
854
719
|
// put on bottom or top
|
|
855
720
|
div.appendChild(newMessageTable);
|
|
@@ -857,9 +722,7 @@ function _infiniteMessageArea() {
|
|
|
857
722
|
// put on top as we scroll back
|
|
858
723
|
div.insertBefore(newMessageTable, div.firstChild);
|
|
859
724
|
}
|
|
860
|
-
|
|
861
725
|
return _context5.abrupt("return", live);
|
|
862
|
-
|
|
863
726
|
case 19:
|
|
864
727
|
case "end":
|
|
865
728
|
return _context5.stop();
|
|
@@ -869,54 +732,45 @@ function _infiniteMessageArea() {
|
|
|
869
732
|
}));
|
|
870
733
|
return _insertPreviousMessages.apply(this, arguments);
|
|
871
734
|
};
|
|
872
|
-
|
|
873
735
|
insertPreviousMessages = function _insertPreviousMessag(_x5) {
|
|
874
736
|
return _insertPreviousMessages.apply(this, arguments);
|
|
875
737
|
};
|
|
876
|
-
|
|
877
738
|
addMessage = function _addMessage(message, messageTable) {
|
|
878
|
-
var latest = (0, _chatLogic.mostRecentVersion)(message);
|
|
879
|
-
|
|
739
|
+
var latest = (0, _chatLogic.mostRecentVersion)(message);
|
|
740
|
+
// const content = store.any(latest, ns.sioc('content'))
|
|
880
741
|
if ((0, _chatLogic.isDeleted)(latest) && !options.showDeletedMessages) {
|
|
881
742
|
return; // ignore deleted messaged -- @@ could also leave a placeholder
|
|
882
743
|
}
|
|
883
744
|
|
|
884
745
|
insertMessageIntoTable(channelObject, messageTable, message, messageTable.fresh, options, userContext); // fresh from elsewhere
|
|
885
746
|
};
|
|
886
|
-
|
|
887
747
|
syncMessages = function _syncMessages(about, messageTable) {
|
|
888
748
|
var displayed = {};
|
|
889
749
|
var ele, ele2;
|
|
890
|
-
|
|
891
750
|
for (ele = messageTable.firstChild; ele; ele = ele.nextSibling) {
|
|
892
751
|
if (ele.AJAR_subject) {
|
|
893
752
|
displayed[ele.AJAR_subject.uri] = true;
|
|
894
753
|
}
|
|
895
754
|
}
|
|
896
|
-
|
|
897
755
|
var messages = _solidLogic.store.statementsMatching(about, ns.wf('message'), null, messageTable.chatDocument).map(function (st) {
|
|
898
756
|
return st.object;
|
|
899
757
|
});
|
|
900
|
-
|
|
901
758
|
var stored = {};
|
|
902
759
|
messages.forEach(function (m) {
|
|
903
760
|
stored[m.uri] = true;
|
|
904
|
-
|
|
905
761
|
if (!displayed[m.uri]) {
|
|
906
762
|
addMessage(m, messageTable);
|
|
907
763
|
}
|
|
908
|
-
});
|
|
764
|
+
});
|
|
909
765
|
|
|
766
|
+
// eslint-disable-next-line space-in-parens
|
|
910
767
|
for (ele = messageTable.firstChild; ele;) {
|
|
911
768
|
ele2 = ele.nextSibling;
|
|
912
|
-
|
|
913
769
|
if (ele.AJAR_subject && !stored[ele.AJAR_subject.uri]) {
|
|
914
770
|
messageTable.removeChild(ele);
|
|
915
771
|
}
|
|
916
|
-
|
|
917
772
|
ele = ele2;
|
|
918
773
|
}
|
|
919
|
-
|
|
920
774
|
for (ele = messageTable.firstChild; ele; ele = ele.nextSibling) {
|
|
921
775
|
if (ele.AJAR_subject) {
|
|
922
776
|
// Refresh thumbs up etc
|
|
@@ -926,11 +780,10 @@ function _infiniteMessageArea() {
|
|
|
926
780
|
};
|
|
927
781
|
|
|
928
782
|
// Body of main function
|
|
783
|
+
|
|
929
784
|
options = options || {};
|
|
930
785
|
options.authorDateOnLeft = false; // @@ make a user optiosn
|
|
931
|
-
|
|
932
786
|
newestFirst = options.newestFirst === '1' || options.newestFirst === true; // hack for now
|
|
933
|
-
|
|
934
787
|
channelObject = new _chatLogic.ChatChannel(chatChannel, options);
|
|
935
788
|
dateFolder = channelObject.dateFolder;
|
|
936
789
|
div = dom.createElement('div');
|
|
@@ -942,21 +795,17 @@ function _infiniteMessageArea() {
|
|
|
942
795
|
div: statusArea
|
|
943
796
|
}; // logged on state, pointers to user's stuff
|
|
944
797
|
// const messageTable = dom.createElement('table') // @@ check does this go in renderMessageTable
|
|
945
|
-
|
|
946
798
|
earliest = {
|
|
947
799
|
messageTable: null
|
|
948
800
|
}; // Stuff about each end of the loaded days
|
|
949
|
-
|
|
950
801
|
latest = {
|
|
951
802
|
messageTable: null
|
|
952
803
|
};
|
|
953
804
|
lock = false;
|
|
954
805
|
_context12.next = 30;
|
|
955
806
|
return loadInitialContent();
|
|
956
|
-
|
|
957
807
|
case 30:
|
|
958
808
|
return _context12.abrupt("return", div);
|
|
959
|
-
|
|
960
809
|
case 31:
|
|
961
810
|
case "end":
|
|
962
811
|
return _context12.stop();
|