solid-ui 2.4.23 → 2.4.24
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/main.js +2159 -5039
- package/dist/main.js.map +1 -1
- package/lib/acl/access-controller.js +4 -67
- package/lib/acl/access-controller.js.map +1 -1
- package/lib/acl/access-groups.js +59 -137
- package/lib/acl/access-groups.js.map +1 -1
- package/lib/acl/acl-control.js +14 -54
- package/lib/acl/acl-control.js.map +1 -1
- package/lib/acl/acl.js +32 -107
- package/lib/acl/acl.js.map +1 -1
- package/lib/acl/add-agent-buttons.js +0 -92
- package/lib/acl/add-agent-buttons.js.map +1 -1
- package/lib/acl/index.js +1 -3
- package/lib/acl/index.js.map +1 -1
- package/lib/acl/styles.js +1 -2
- package/lib/acl/styles.js.map +1 -1
- 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 +6 -91
- package/lib/chat/dateFolder.js.map +1 -1
- package/lib/chat/infinite.js +33 -185
- 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.js +19 -51
- package/lib/create/create.js.map +1 -1
- package/lib/create/index.js +0 -2
- package/lib/create/index.js.map +1 -1
- 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.js +2 -24
- package/lib/footer/index.js.map +1 -1
- package/lib/footer/styleMap.js.map +1 -1
- package/lib/header/empty-profile.js.map +1 -1
- package/lib/header/index.js +3 -72
- package/lib/header/index.js.map +1 -1
- package/lib/header/styleMap.js +4 -3
- package/lib/header/styleMap.js.map +1 -1
- package/lib/iconBase.js +3 -4
- package/lib/iconBase.js.map +1 -1
- package/lib/index.js +5 -46
- package/lib/index.js.map +1 -1
- package/lib/jss/index.js +3 -9
- package/lib/jss/index.js.map +1 -1
- package/lib/log.js +15 -51
- package/lib/log.js.map +1 -1
- package/lib/login/login.js +74 -303
- package/lib/login/login.js.map +1 -1
- package/lib/matrix/index.js +0 -2
- package/lib/matrix/index.js.map +1 -1
- package/lib/matrix/matrix.js +7 -55
- package/lib/matrix/matrix.js.map +1 -1
- package/lib/media/index.js +0 -2
- package/lib/media/index.js.map +1 -1
- 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.map +1 -1
- package/lib/ns.js +5 -7
- package/lib/ns.js.map +1 -1
- package/lib/pad.js +48 -234
- package/lib/pad.js.map +1 -1
- 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.js +20 -100
- package/lib/tabs.js.map +1 -1
- 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.js +13 -34
- package/lib/utils/label.js.map +1 -1
- package/lib/versionInfo.js +4 -4
- package/lib/versionInfo.js.map +1 -1
- package/lib/widgets/buttons/iconLinks.js +0 -8
- package/lib/widgets/buttons/iconLinks.js.map +1 -1
- 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.js +3 -9
- package/lib/widgets/error.js.map +1 -1
- 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.js +13 -65
- package/lib/widgets/forms/autocomplete/autocompleteField.js.map +1 -1
- 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.js +6 -55
- package/lib/widgets/forms/autocomplete/language.js.map +1 -1
- package/lib/widgets/forms/autocomplete/publicData.js +12 -131
- package/lib/widgets/forms/autocomplete/publicData.js.map +1 -1
- package/lib/widgets/forms/basic.js +12 -55
- package/lib/widgets/forms/basic.js.map +1 -1
- package/lib/widgets/forms/comment.js +1 -15
- package/lib/widgets/forms/comment.js.map +1 -1
- package/lib/widgets/forms/fieldFunction.js +3 -16
- package/lib/widgets/forms/fieldFunction.js.map +1 -1
- package/lib/widgets/forms/fieldParams.js +0 -12
- package/lib/widgets/forms/fieldParams.js.map +1 -1
- 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.js +2 -9
- package/lib/widgets/widgetHelpers.js.map +1 -1
- package/package.json +28 -28
package/lib/chat/message.js
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
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
|
});
|
|
@@ -13,66 +11,42 @@ exports.elementForImageURI = elementForImageURI;
|
|
|
13
11
|
exports.renderMessageEditor = renderMessageEditor;
|
|
14
12
|
exports.renderMessageRow = renderMessageRow;
|
|
15
13
|
exports.switchToEditor = switchToEditor;
|
|
16
|
-
|
|
17
14
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
18
|
-
|
|
19
15
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
20
|
-
|
|
21
16
|
var _infinite = require("./infinite");
|
|
22
|
-
|
|
23
17
|
var _messageTools = require("./messageTools");
|
|
24
|
-
|
|
25
18
|
var _bookmarks = require("./bookmarks");
|
|
26
|
-
|
|
27
19
|
var _chatLogic = require("./chatLogic");
|
|
28
|
-
|
|
29
20
|
var debug = _interopRequireWildcard(require("../debug"));
|
|
30
|
-
|
|
31
21
|
var _iconBase = require("../iconBase");
|
|
32
|
-
|
|
33
22
|
var _solidLogic = require("solid-logic");
|
|
34
|
-
|
|
35
23
|
var _login = require("../login/login");
|
|
36
|
-
|
|
37
24
|
var _index = require("../media/index");
|
|
38
|
-
|
|
39
25
|
var ns = _interopRequireWildcard(require("../ns"));
|
|
40
|
-
|
|
41
26
|
var pad = _interopRequireWildcard(require("../pad"));
|
|
42
|
-
|
|
43
27
|
var style = _interopRequireWildcard(require("../style"));
|
|
44
|
-
|
|
45
28
|
var utils = _interopRequireWildcard(require("../utils"));
|
|
46
|
-
|
|
47
29
|
var widgets = _interopRequireWildcard(require("../widgets"));
|
|
48
|
-
|
|
49
30
|
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); }
|
|
50
|
-
|
|
51
31
|
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; }
|
|
52
|
-
|
|
53
32
|
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(_e) { throw _e; }, 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(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
|
|
54
|
-
|
|
55
33
|
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); }
|
|
56
|
-
|
|
57
34
|
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; }
|
|
58
|
-
|
|
59
35
|
var dom = window.document;
|
|
60
36
|
var messageBodyStyle = style.messageBodyStyle;
|
|
61
37
|
var label = utils.label;
|
|
38
|
+
|
|
62
39
|
/**
|
|
63
40
|
* HTML component for an image
|
|
64
41
|
*/
|
|
65
|
-
|
|
66
42
|
function elementForImageURI(imageUri, options) {
|
|
67
43
|
var img = dom.createElement('img');
|
|
68
44
|
var height = '10';
|
|
69
|
-
|
|
70
45
|
if (options.inlineImageHeightEms) {
|
|
71
46
|
height = ('' + options.inlineImageHeightEms).trim();
|
|
72
47
|
}
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
48
|
+
img.setAttribute('style', 'max-height: ' + height + 'em; border-radius: 1em; margin: 0.7em;');
|
|
49
|
+
// widgets.makeDropTarget(img, handleURIsDroppedOnMugshot, droppedFileHandler)
|
|
76
50
|
if (imageUri) img.setAttribute('src', imageUri);
|
|
77
51
|
var anchor = dom.createElement('a');
|
|
78
52
|
anchor.setAttribute('href', imageUri);
|
|
@@ -81,11 +55,9 @@ function elementForImageURI(imageUri, options) {
|
|
|
81
55
|
widgets.makeDraggable(img, $rdf.sym(imageUri));
|
|
82
56
|
return anchor;
|
|
83
57
|
}
|
|
84
|
-
|
|
85
58
|
var anchor = function anchor(text, term) {
|
|
86
59
|
// If there is no link return an element anyway
|
|
87
60
|
var a = dom.createElement('a');
|
|
88
|
-
|
|
89
61
|
if (term && term.uri) {
|
|
90
62
|
a.setAttribute('href', term.uri);
|
|
91
63
|
a.addEventListener('click', widgets.openHrefInOutlineMode, true);
|
|
@@ -95,79 +67,62 @@ var anchor = function anchor(text, term) {
|
|
|
95
67
|
a.textContent = text;
|
|
96
68
|
return a;
|
|
97
69
|
};
|
|
98
|
-
|
|
99
70
|
function nick(person) {
|
|
100
71
|
var s = _solidLogic.store.any(person, ns.foaf('nick'));
|
|
101
|
-
|
|
102
72
|
if (s) return '' + s.value;
|
|
103
73
|
return '' + label(person);
|
|
104
74
|
}
|
|
75
|
+
|
|
105
76
|
/**
|
|
106
77
|
* Displays creator and date for a chat message
|
|
107
78
|
* inside the `td1` element
|
|
108
79
|
*/
|
|
109
|
-
|
|
110
|
-
|
|
111
80
|
function creatorAndDate(td1, creator, date, message) {
|
|
112
81
|
var nickAnchor = td1.appendChild(anchor(nick(creator), creator));
|
|
113
|
-
|
|
114
82
|
if (creator.uri) {
|
|
115
83
|
_solidLogic.store.fetcher.nowOrWhenFetched(creator.doc(), undefined, function (_ok, _body) {
|
|
116
84
|
nickAnchor.textContent = nick(creator);
|
|
117
85
|
});
|
|
118
86
|
}
|
|
119
|
-
|
|
120
87
|
td1.appendChild(dom.createElement('br'));
|
|
121
88
|
td1.appendChild(anchor(date, message));
|
|
122
89
|
}
|
|
90
|
+
|
|
123
91
|
/**
|
|
124
92
|
* Horizontally displays creator and date for a chat message
|
|
125
93
|
* inside the `td1` element
|
|
126
94
|
*/
|
|
127
|
-
|
|
128
|
-
|
|
129
95
|
function creatorAndDateHorizontal(td1, creator, date, message) {
|
|
130
96
|
var nickAnchor = td1.appendChild(anchor(label(creator), creator));
|
|
131
|
-
|
|
132
97
|
if (creator.uri) {
|
|
133
98
|
_solidLogic.store.fetcher.nowOrWhenFetched(creator.doc(), undefined, function (_ok, _body) {
|
|
134
99
|
nickAnchor.textContent = nick(creator);
|
|
135
100
|
});
|
|
136
101
|
}
|
|
137
|
-
|
|
138
102
|
var dateBit = td1.appendChild(anchor(date, message));
|
|
139
103
|
dateBit.style.fontSize = '80%';
|
|
140
104
|
dateBit.style.marginLeft = '1em';
|
|
141
105
|
td1.appendChild(dom.createElement('br'));
|
|
142
106
|
}
|
|
107
|
+
|
|
143
108
|
/**
|
|
144
109
|
* Renders a chat message, read-only mode
|
|
145
110
|
*/
|
|
146
|
-
|
|
147
|
-
|
|
148
111
|
function renderMessageRow(channelObject, message, fresh, options, userContext) {
|
|
149
112
|
var colorizeByAuthor = options.colorizeByAuthor === '1' || options.colorizeByAuthor === true;
|
|
150
|
-
|
|
151
113
|
var creator = _solidLogic.store.any(message, ns.foaf('maker'));
|
|
152
|
-
|
|
153
114
|
var date = _solidLogic.store.any(message, ns.dct('created'));
|
|
154
|
-
|
|
155
115
|
var latestVersion = (0, _chatLogic.mostRecentVersion)(message);
|
|
156
|
-
|
|
157
116
|
var content = _solidLogic.store.any(latestVersion, ns.sioc('content'));
|
|
158
|
-
|
|
159
117
|
var originalMessage = (0, _chatLogic.originalVersion)(message);
|
|
160
118
|
var edited = !message.sameTerm(originalMessage);
|
|
161
|
-
|
|
162
119
|
var sortDate = _solidLogic.store.the(originalMessage, ns.dct('created'), null, originalMessage.doc()); // In message
|
|
163
120
|
|
|
164
|
-
|
|
165
121
|
var messageRow = dom.createElement('tr');
|
|
166
122
|
messageRow.AJAR_date = sortDate.value;
|
|
167
123
|
messageRow.AJAR_subject = message;
|
|
168
124
|
var td1 = dom.createElement('td');
|
|
169
125
|
messageRow.appendChild(td1);
|
|
170
|
-
|
|
171
126
|
if (!options.authorDateOnLeft) {
|
|
172
127
|
var img = dom.createElement('img');
|
|
173
128
|
img.setAttribute('style', 'max-height: 2.5em; max-width: 2.5em; border-radius: 0.5em; margin: auto;');
|
|
@@ -176,31 +131,25 @@ function renderMessageRow(channelObject, message, fresh, options, userContext) {
|
|
|
176
131
|
} else {
|
|
177
132
|
creatorAndDate(td1, creator, widgets.shortDate(sortDate.value), message);
|
|
178
133
|
}
|
|
179
|
-
|
|
180
134
|
var bothDates = widgets.shortDate(sortDate.value);
|
|
181
|
-
|
|
182
135
|
if (edited) {
|
|
183
136
|
bothDates += ' ... ' + widgets.shortDate(date.value);
|
|
184
|
-
}
|
|
185
|
-
|
|
137
|
+
}
|
|
186
138
|
|
|
139
|
+
// Render the content ot the message itself
|
|
187
140
|
var td2 = messageRow.appendChild(dom.createElement('td'));
|
|
188
|
-
|
|
189
141
|
if (!options.authorDateOnLeft) {
|
|
190
|
-
creatorAndDateHorizontal(td2, creator, bothDates,
|
|
142
|
+
creatorAndDateHorizontal(td2, creator, bothDates,
|
|
143
|
+
// widgets.shortDate(dateString)
|
|
191
144
|
message);
|
|
192
145
|
}
|
|
193
|
-
|
|
194
146
|
var text = content.value.trim();
|
|
195
147
|
var isURI = /^https?:\/[^ <>]*$/i.test(text);
|
|
196
148
|
var para = null;
|
|
197
|
-
|
|
198
149
|
if (isURI) {
|
|
199
150
|
var isImage = /\.(gif|jpg|jpeg|tiff|png|svg)$/i.test(text); // @@ Should use content-type not URI
|
|
200
|
-
|
|
201
151
|
if (isImage && options.expandImagesInline) {
|
|
202
152
|
var _img = elementForImageURI(text, options);
|
|
203
|
-
|
|
204
153
|
td2.appendChild(_img);
|
|
205
154
|
} else {
|
|
206
155
|
// Link but not Image
|
|
@@ -216,25 +165,22 @@ function renderMessageRow(channelObject, message, fresh, options, userContext) {
|
|
|
216
165
|
td2.appendChild(para);
|
|
217
166
|
para.textContent = text;
|
|
218
167
|
}
|
|
219
|
-
|
|
220
168
|
if (para) {
|
|
221
169
|
var bgcolor = colorizeByAuthor ? pad.lightColorHash(creator) : getBgColor(fresh);
|
|
222
170
|
para.setAttribute('style', messageBodyStyle + 'background-color: ' + bgcolor + ';');
|
|
223
171
|
}
|
|
224
|
-
|
|
225
172
|
function getBgColor(fresh) {
|
|
226
173
|
return fresh ? '#e8ffe8' : 'white';
|
|
227
|
-
}
|
|
228
|
-
|
|
174
|
+
}
|
|
229
175
|
|
|
176
|
+
// Sentiment strip
|
|
230
177
|
var strip = (0, _messageTools.sentimentStripLinked)(message, message.doc());
|
|
231
|
-
|
|
232
178
|
if (strip.children.length) {
|
|
233
179
|
td2.appendChild(dom.createElement('br'));
|
|
234
180
|
td2.appendChild(strip);
|
|
235
|
-
}
|
|
236
|
-
|
|
181
|
+
}
|
|
237
182
|
|
|
183
|
+
// Message tool bar button
|
|
238
184
|
var td3 = dom.createElement('td');
|
|
239
185
|
messageRow.appendChild(td3);
|
|
240
186
|
var toolsButton = widgets.button(dom, _iconBase.icons.iconBase + 'noun_243787.svg', '...');
|
|
@@ -246,28 +192,22 @@ function renderMessageRow(channelObject, message, fresh, options, userContext) {
|
|
|
246
192
|
delete messageRow.toolTR;
|
|
247
193
|
return;
|
|
248
194
|
}
|
|
249
|
-
|
|
250
195
|
var toolsTR = dom.createElement('tr');
|
|
251
196
|
var tools = (0, _messageTools.messageToolbar)(message, messageRow, userContext, channelObject);
|
|
252
197
|
tools.style = 'border: 0.05em solid #888; border-radius: 0 0 0.7em 0.7em; border-top: 0; height:3.5em; background-color: #fff;'; // @@ fix
|
|
253
|
-
|
|
254
198
|
if (messageRow.nextSibling) {
|
|
255
199
|
messageRow.parentElement.insertBefore(toolsTR, messageRow.nextSibling);
|
|
256
200
|
} else {
|
|
257
201
|
messageRow.parentElement.appendChild(toolsTR);
|
|
258
202
|
}
|
|
259
|
-
|
|
260
203
|
messageRow.toolTR = toolsTR;
|
|
261
204
|
toolsTR.appendChild(dom.createElement('td')); // left
|
|
262
|
-
|
|
263
205
|
var toolsTD = toolsTR.appendChild(dom.createElement('td'));
|
|
264
206
|
toolsTR.appendChild(dom.createElement('td')); // right
|
|
265
|
-
|
|
266
207
|
toolsTD.appendChild(tools);
|
|
267
208
|
});
|
|
268
209
|
return messageRow;
|
|
269
210
|
}
|
|
270
|
-
|
|
271
211
|
function switchToEditor(messageRow, message, channelObject, userContext) {
|
|
272
212
|
var messageTable = messageRow.parentNode;
|
|
273
213
|
var editRow = renderMessageEditor(channelObject, messageTable, userContext, channelObject.options, (0, _chatLogic.mostRecentVersion)(message));
|
|
@@ -278,19 +218,14 @@ function switchToEditor(messageRow, message, channelObject, userContext) {
|
|
|
278
218
|
/* Control for a new message -- or editing an old message ***************
|
|
279
219
|
*
|
|
280
220
|
*/
|
|
281
|
-
|
|
282
|
-
|
|
283
221
|
function renderMessageEditor(channelObject, messageTable, userContext, options, originalMessage) {
|
|
284
222
|
function revertEditing(messageEditor) {
|
|
285
223
|
messageEditor.originalRow.style.visibility = 'visible'; // restore read-only version
|
|
286
|
-
|
|
287
224
|
messageEditor.parentNode.removeChild(messageEditor);
|
|
288
225
|
}
|
|
289
|
-
|
|
290
226
|
function handleFieldInput(_x) {
|
|
291
227
|
return _handleFieldInput.apply(this, arguments);
|
|
292
228
|
}
|
|
293
|
-
|
|
294
229
|
function _handleFieldInput() {
|
|
295
230
|
_handleFieldInput = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee5(_event) {
|
|
296
231
|
return _regenerator["default"].wrap(function _callee5$(_context6) {
|
|
@@ -299,7 +234,6 @@ function renderMessageEditor(channelObject, messageTable, userContext, options,
|
|
|
299
234
|
case 0:
|
|
300
235
|
_context6.next = 2;
|
|
301
236
|
return sendMessage(field.value, true);
|
|
302
|
-
|
|
303
237
|
case 2:
|
|
304
238
|
case "end":
|
|
305
239
|
return _context6.stop();
|
|
@@ -309,13 +243,10 @@ function renderMessageEditor(channelObject, messageTable, userContext, options,
|
|
|
309
243
|
}));
|
|
310
244
|
return _handleFieldInput.apply(this, arguments);
|
|
311
245
|
}
|
|
312
|
-
|
|
313
246
|
function sendMessage(_x2, _x3) {
|
|
314
247
|
return _sendMessage.apply(this, arguments);
|
|
315
248
|
} // sendMessage
|
|
316
249
|
// DRAG AND DROP
|
|
317
|
-
|
|
318
|
-
|
|
319
250
|
function _sendMessage() {
|
|
320
251
|
_sendMessage = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee6(text, fromMainField) {
|
|
321
252
|
var sendComplete, message, statusArea;
|
|
@@ -330,8 +261,8 @@ function renderMessageEditor(channelObject, messageTable, userContext, options,
|
|
|
330
261
|
|
|
331
262
|
if (originalMessage) {
|
|
332
263
|
// editing another message
|
|
333
|
-
var oldRow = messageEditor.originalRow;
|
|
334
|
-
|
|
264
|
+
var oldRow = messageEditor.originalRow;
|
|
265
|
+
// oldRow.style.display = '' // restore read-only version, re-attack
|
|
335
266
|
if (oldRow.parentNode) {
|
|
336
267
|
oldRow.parentNode.removeChild(oldRow); // No longer needed old version
|
|
337
268
|
} else {
|
|
@@ -344,45 +275,36 @@ function renderMessageEditor(channelObject, messageTable, userContext, options,
|
|
|
344
275
|
} else {
|
|
345
276
|
if (fromMainField) {
|
|
346
277
|
field.value = ''; // clear from out for reuse
|
|
347
|
-
|
|
348
278
|
field.setAttribute('style', messageBodyStyle);
|
|
349
279
|
field.disabled = false;
|
|
350
280
|
field.scrollIntoView(options.newestFirst); // allign bottom (top)
|
|
351
|
-
|
|
352
281
|
field.focus(); // Start typing next line immediately
|
|
353
|
-
|
|
354
282
|
field.select();
|
|
355
283
|
}
|
|
356
|
-
}
|
|
357
|
-
|
|
284
|
+
}
|
|
285
|
+
// await channelObject.div.refresh() // Add new day if nec @@ add back
|
|
358
286
|
};
|
|
359
287
|
|
|
360
288
|
// const me = authn.currentUser() // Must be logged on or wuld have got login button
|
|
361
289
|
if (fromMainField) {
|
|
362
290
|
field.setAttribute('style', messageBodyStyle + 'color: #bbb;'); // pendingedit
|
|
363
|
-
|
|
364
291
|
field.disabled = true;
|
|
365
292
|
}
|
|
366
|
-
|
|
367
293
|
_context7.prev = 2;
|
|
368
294
|
_context7.next = 5;
|
|
369
295
|
return channelObject.updateMessage(text, originalMessage);
|
|
370
|
-
|
|
371
296
|
case 5:
|
|
372
297
|
message = _context7.sent;
|
|
373
298
|
_context7.next = 13;
|
|
374
299
|
break;
|
|
375
|
-
|
|
376
300
|
case 8:
|
|
377
301
|
_context7.prev = 8;
|
|
378
302
|
_context7.t0 = _context7["catch"](2);
|
|
379
303
|
statusArea = userContext.statusArea || messageEditor;
|
|
380
304
|
statusArea.appendChild(widgets.errorMessageBlock(dom, 'Error writing message: ' + _context7.t0));
|
|
381
305
|
return _context7.abrupt("return");
|
|
382
|
-
|
|
383
306
|
case 13:
|
|
384
307
|
sendComplete(message, text);
|
|
385
|
-
|
|
386
308
|
case 14:
|
|
387
309
|
case "end":
|
|
388
310
|
return _context7.stop();
|
|
@@ -392,7 +314,6 @@ function renderMessageEditor(channelObject, messageTable, userContext, options,
|
|
|
392
314
|
}));
|
|
393
315
|
return _sendMessage.apply(this, arguments);
|
|
394
316
|
}
|
|
395
|
-
|
|
396
317
|
function droppedFileHandler(files) {
|
|
397
318
|
var base = messageTable.chatDocument.dir().uri;
|
|
398
319
|
widgets.uploadFiles(_solidLogic.store.fetcher, files, base + 'Files', base + 'Pictures', /*#__PURE__*/function () {
|
|
@@ -403,7 +324,6 @@ function renderMessageEditor(channelObject, messageTable, userContext, options,
|
|
|
403
324
|
case 0:
|
|
404
325
|
_context2.next = 2;
|
|
405
326
|
return sendMessage(destURI);
|
|
406
|
-
|
|
407
327
|
case 2:
|
|
408
328
|
case "end":
|
|
409
329
|
return _context2.stop();
|
|
@@ -411,58 +331,45 @@ function renderMessageEditor(channelObject, messageTable, userContext, options,
|
|
|
411
331
|
}
|
|
412
332
|
}, _callee);
|
|
413
333
|
}));
|
|
414
|
-
|
|
415
334
|
return function (_x4, _x5) {
|
|
416
335
|
return _ref.apply(this, arguments);
|
|
417
336
|
};
|
|
418
337
|
}());
|
|
419
|
-
}
|
|
420
|
-
|
|
338
|
+
}
|
|
421
339
|
|
|
340
|
+
// When a set of URIs are dropped on the field
|
|
422
341
|
var droppedURIHandler = /*#__PURE__*/function () {
|
|
423
342
|
var _ref2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(uris) {
|
|
424
343
|
var _iterator, _step, uri;
|
|
425
|
-
|
|
426
344
|
return _regenerator["default"].wrap(function _callee2$(_context3) {
|
|
427
345
|
while (1) {
|
|
428
346
|
switch (_context3.prev = _context3.next) {
|
|
429
347
|
case 0:
|
|
430
348
|
_iterator = _createForOfIteratorHelper(uris);
|
|
431
349
|
_context3.prev = 1;
|
|
432
|
-
|
|
433
350
|
_iterator.s();
|
|
434
|
-
|
|
435
351
|
case 3:
|
|
436
352
|
if ((_step = _iterator.n()).done) {
|
|
437
353
|
_context3.next = 9;
|
|
438
354
|
break;
|
|
439
355
|
}
|
|
440
|
-
|
|
441
356
|
uri = _step.value;
|
|
442
357
|
_context3.next = 7;
|
|
443
358
|
return sendMessage(uri);
|
|
444
|
-
|
|
445
359
|
case 7:
|
|
446
360
|
_context3.next = 3;
|
|
447
361
|
break;
|
|
448
|
-
|
|
449
362
|
case 9:
|
|
450
363
|
_context3.next = 14;
|
|
451
364
|
break;
|
|
452
|
-
|
|
453
365
|
case 11:
|
|
454
366
|
_context3.prev = 11;
|
|
455
367
|
_context3.t0 = _context3["catch"](1);
|
|
456
|
-
|
|
457
368
|
_iterator.e(_context3.t0);
|
|
458
|
-
|
|
459
369
|
case 14:
|
|
460
370
|
_context3.prev = 14;
|
|
461
|
-
|
|
462
371
|
_iterator.f();
|
|
463
|
-
|
|
464
372
|
return _context3.finish(14);
|
|
465
|
-
|
|
466
373
|
case 17:
|
|
467
374
|
case "end":
|
|
468
375
|
return _context3.stop();
|
|
@@ -470,24 +377,20 @@ function renderMessageEditor(channelObject, messageTable, userContext, options,
|
|
|
470
377
|
}
|
|
471
378
|
}, _callee2, null, [[1, 11, 14, 17]]);
|
|
472
379
|
}));
|
|
473
|
-
|
|
474
380
|
return function droppedURIHandler(_x6) {
|
|
475
381
|
return _ref2.apply(this, arguments);
|
|
476
382
|
};
|
|
477
|
-
}();
|
|
478
|
-
|
|
383
|
+
}();
|
|
479
384
|
|
|
385
|
+
// When we are actually logged on
|
|
480
386
|
function turnOnInput() {
|
|
481
387
|
function getImageDoc() {
|
|
482
388
|
imageDoc = $rdf.sym(chatDocument.dir().uri + 'Image_' + Date.now() + '.png');
|
|
483
389
|
return imageDoc;
|
|
484
390
|
}
|
|
485
|
-
|
|
486
391
|
function tookPicture(_x7) {
|
|
487
392
|
return _tookPicture.apply(this, arguments);
|
|
488
393
|
} // Body of turnOnInput
|
|
489
|
-
|
|
490
|
-
|
|
491
394
|
function _tookPicture() {
|
|
492
395
|
_tookPicture = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4(imageDoc) {
|
|
493
396
|
return _regenerator["default"].wrap(function _callee4$(_context5) {
|
|
@@ -498,10 +401,8 @@ function renderMessageEditor(channelObject, messageTable, userContext, options,
|
|
|
498
401
|
_context5.next = 3;
|
|
499
402
|
break;
|
|
500
403
|
}
|
|
501
|
-
|
|
502
404
|
_context5.next = 3;
|
|
503
405
|
return sendMessage(imageDoc.uri);
|
|
504
|
-
|
|
505
406
|
case 3:
|
|
506
407
|
case "end":
|
|
507
408
|
return _context5.stop();
|
|
@@ -511,21 +412,15 @@ function renderMessageEditor(channelObject, messageTable, userContext, options,
|
|
|
511
412
|
}));
|
|
512
413
|
return _tookPicture.apply(this, arguments);
|
|
513
414
|
}
|
|
514
|
-
|
|
515
415
|
var menuButton;
|
|
516
|
-
|
|
517
416
|
if (options.menuHandler) {
|
|
518
417
|
var _menuButton = widgets.button(dom, _iconBase.icons.iconBase + 'noun_243787.svg', 'More');
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
418
|
+
_menuButton.setAttribute('style', style.buttonStyle + 'float: right;');
|
|
419
|
+
// menuButton.addEventListener('click', _event => sendMessage(), false) (done in turnoninput)
|
|
523
420
|
rhs.appendChild(_menuButton);
|
|
524
421
|
}
|
|
525
|
-
|
|
526
422
|
if (options.menuHandler && menuButton) {
|
|
527
423
|
var _me = _solidLogic.authn.currentUser();
|
|
528
|
-
|
|
529
424
|
var menuOptions = {
|
|
530
425
|
me: _me,
|
|
531
426
|
dom: dom,
|
|
@@ -537,22 +432,19 @@ function renderMessageEditor(channelObject, messageTable, userContext, options,
|
|
|
537
432
|
options.menuHandler(event, channelObject.chatChannel, menuOptions);
|
|
538
433
|
}, false);
|
|
539
434
|
}
|
|
540
|
-
|
|
541
435
|
var me = _solidLogic.authn.currentUser(); // If already logged on
|
|
542
|
-
|
|
543
|
-
|
|
544
436
|
creatorAndDate(lhs, me, '', null);
|
|
545
437
|
field = dom.createElement('textarea');
|
|
546
438
|
middle.innerHTML = '';
|
|
547
439
|
middle.appendChild(field);
|
|
548
440
|
field.rows = 3;
|
|
549
|
-
|
|
550
441
|
if (originalMessage) {
|
|
551
442
|
field.value = _solidLogic.store.anyValue(originalMessage, ns.sioc('content'), null, originalMessage.doc());
|
|
552
|
-
}
|
|
553
|
-
|
|
443
|
+
}
|
|
444
|
+
// field.cols = 40
|
|
445
|
+
field.setAttribute('style', messageBodyStyle + 'background-color: #eef;');
|
|
554
446
|
|
|
555
|
-
|
|
447
|
+
// Trap the Enter BEFORE it is used ti make a newline
|
|
556
448
|
|
|
557
449
|
field.addEventListener('keydown', /*#__PURE__*/function () {
|
|
558
450
|
var _ref3 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3(e) {
|
|
@@ -564,15 +456,12 @@ function renderMessageEditor(channelObject, messageTable, userContext, options,
|
|
|
564
456
|
_context4.next = 4;
|
|
565
457
|
break;
|
|
566
458
|
}
|
|
567
|
-
|
|
568
459
|
if (!(!e.shiftKey && !options.shiftEnterSendsMessage || e.shiftKey && options.shiftEnterSendsMessage)) {
|
|
569
460
|
_context4.next = 4;
|
|
570
461
|
break;
|
|
571
462
|
}
|
|
572
|
-
|
|
573
463
|
_context4.next = 4;
|
|
574
464
|
return handleFieldInput(e);
|
|
575
|
-
|
|
576
465
|
case 4:
|
|
577
466
|
case "end":
|
|
578
467
|
return _context4.stop();
|
|
@@ -580,7 +469,6 @@ function renderMessageEditor(channelObject, messageTable, userContext, options,
|
|
|
580
469
|
}
|
|
581
470
|
}, _callee3);
|
|
582
471
|
}));
|
|
583
|
-
|
|
584
472
|
return function (_x8) {
|
|
585
473
|
return _ref3.apply(this, arguments);
|
|
586
474
|
};
|
|
@@ -593,31 +481,28 @@ function renderMessageEditor(channelObject, messageTable, userContext, options,
|
|
|
593
481
|
return handleFieldInput();
|
|
594
482
|
}, false);
|
|
595
483
|
rhs.appendChild(sendButton);
|
|
596
|
-
|
|
597
484
|
if (originalMessage) {
|
|
598
485
|
// Are we editing another message?
|
|
599
486
|
var cancelButton = rhs.appendChild(widgets.cancelButton(dom));
|
|
600
|
-
cancelButton.style["float"] = 'left';
|
|
601
|
-
|
|
487
|
+
cancelButton.style["float"] = 'left';
|
|
488
|
+
// cancelButton.firstChild.style.opacity = '0.3' // moved to buttons
|
|
602
489
|
cancelButton.addEventListener('click', function (_event) {
|
|
603
490
|
return revertEditing(messageEditor);
|
|
604
491
|
}, false);
|
|
605
492
|
rhs.appendChild(cancelButton);
|
|
606
493
|
}
|
|
607
|
-
|
|
608
494
|
var chatDocument = channelObject.dateFolder.leafDocumentFromDate(new Date());
|
|
609
495
|
var imageDoc;
|
|
610
496
|
middle.appendChild(_index.media.cameraButton(dom, _solidLogic.store, getImageDoc, tookPicture));
|
|
611
497
|
pad.recordParticipation(channelObject.channel, channelObject.channel.doc()); // participation =
|
|
612
498
|
} // turn on inpuut
|
|
613
|
-
// Body of renderMessageEditor
|
|
614
499
|
|
|
500
|
+
// Body of renderMessageEditor
|
|
615
501
|
|
|
616
502
|
var sortDate, sendIcon;
|
|
617
|
-
|
|
618
503
|
if (originalMessage) {
|
|
619
|
-
sortDate = _solidLogic.store.anyValue(originalMessage, ns.dct('created'), null, originalMessage.doc());
|
|
620
|
-
|
|
504
|
+
sortDate = _solidLogic.store.anyValue(originalMessage, ns.dct('created'), null, originalMessage.doc());
|
|
505
|
+
// text = store.anyValue(originalMessage, ns.sioc('content'), null, originalMessage.doc())
|
|
621
506
|
sendIcon = _iconBase.icons.iconBase + 'noun_1180158.svg'; // Green check
|
|
622
507
|
// cancelIcon = icons.iconBase + 'noun_1180156.svg' // Black cross
|
|
623
508
|
} else {
|
|
@@ -633,7 +518,8 @@ function renderMessageEditor(channelObject, messageTable, userContext, options,
|
|
|
633
518
|
messageEditor.appendChild(lhs);
|
|
634
519
|
messageEditor.appendChild(middle);
|
|
635
520
|
messageEditor.appendChild(rhs);
|
|
636
|
-
messageEditor.AJAR_date = sortDate;
|
|
521
|
+
messageEditor.AJAR_date = sortDate;
|
|
522
|
+
// messageEditor.appendChild(dom.createElement('br'))
|
|
637
523
|
|
|
638
524
|
var field, sendButton;
|
|
639
525
|
var context = {
|
|
@@ -644,7 +530,8 @@ function renderMessageEditor(channelObject, messageTable, userContext, options,
|
|
|
644
530
|
// me = context.me
|
|
645
531
|
turnOnInput();
|
|
646
532
|
Object.assign(context, userContext);
|
|
647
|
-
(0, _bookmarks.findBookmarkDocument)(context).then(function (_context) {
|
|
533
|
+
(0, _bookmarks.findBookmarkDocument)(context).then(function (_context) {
|
|
534
|
+
// console.log('Bookmark file: ' + context.bookmarkDocument)
|
|
648
535
|
});
|
|
649
536
|
});
|
|
650
537
|
return messageEditor;
|