solid-ui 2.6.1 → 3.0.0-3b4b518
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 +3 -1
- package/README.md +236 -30
- package/dist/acl/access-controller.js +238 -0
- package/dist/acl/access-controller.js.map +1 -0
- package/{lib → dist}/acl/access-groups.d.ts +2 -2
- package/{lib → dist}/acl/access-groups.d.ts.map +1 -1
- package/dist/acl/access-groups.js +323 -0
- package/dist/acl/access-groups.js.map +1 -0
- package/dist/acl/acl-control.js +173 -0
- package/dist/acl/acl-control.js.map +1 -0
- package/dist/acl/acl.js +495 -0
- package/dist/acl/acl.js.map +1 -0
- package/dist/acl/add-agent-buttons.js +217 -0
- package/dist/acl/add-agent-buttons.js.map +1 -0
- package/dist/acl/index.js +32 -0
- package/dist/acl/index.js.map +1 -0
- package/dist/acl/types.js +6 -0
- package/dist/acl/types.js.map +1 -0
- package/dist/chat/keys.js +106 -0
- package/dist/chat/keys.js.map +1 -0
- package/dist/chat/signature.js +63 -0
- package/dist/chat/signature.js.map +1 -0
- package/dist/create/create.js +249 -0
- package/dist/create/create.js.map +1 -0
- package/dist/create/index.js +5 -0
- package/dist/create/index.js.map +1 -0
- package/dist/create/types.js +2 -0
- package/dist/create/types.js.map +1 -0
- package/dist/debug.d.ts.map +1 -0
- package/dist/debug.js +13 -0
- package/dist/debug.js.map +1 -0
- package/dist/footer/index.js +67 -0
- package/dist/footer/index.js.map +1 -0
- package/dist/header/empty-profile.js +11 -0
- package/dist/header/empty-profile.js.map +1 -0
- package/dist/header/index.js +260 -0
- package/dist/header/index.js.map +1 -0
- package/dist/iconBase.js +37 -0
- package/dist/iconBase.js.map +1 -0
- package/dist/icons/solid_logo.js.map +1 -0
- package/{lib → dist}/index.d.ts +7 -9
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +102 -0
- package/dist/index.js.map +1 -0
- package/{lib → dist}/log.d.ts.map +1 -1
- package/dist/log.js +182 -0
- package/dist/log.js.map +1 -0
- package/dist/login/login.js +858 -0
- package/dist/login/login.js.map +1 -0
- package/dist/matrix/index.js +5 -0
- package/dist/matrix/index.js.map +1 -0
- package/dist/matrix/matrix.js +217 -0
- package/dist/matrix/matrix.js.map +1 -0
- package/dist/matrix/types.js +2 -0
- package/dist/matrix/types.js.map +1 -0
- package/dist/media/index.js +6 -0
- package/dist/media/index.js.map +1 -0
- package/dist/media/media-capture.js +161 -0
- package/dist/media/media-capture.js.map +1 -0
- package/dist/pad.js +775 -0
- package/dist/pad.js.map +1 -0
- package/{lib → dist}/participation.d.ts.map +1 -1
- package/dist/participation.js +184 -0
- package/dist/participation.js.map +1 -0
- package/dist/solid-ui.esm.js +25531 -0
- package/dist/solid-ui.esm.js.map +1 -0
- package/dist/solid-ui.esm.min.js +43 -0
- package/dist/solid-ui.esm.min.js.map +1 -0
- package/dist/solid-ui.js +23479 -68931
- package/dist/solid-ui.js.map +1 -1
- package/dist/solid-ui.min.js +40 -2
- package/dist/solid-ui.min.js.map +1 -1
- package/dist/tabs.js +388 -0
- package/dist/tabs.js.map +1 -0
- package/{lib → dist}/utils/headerFooterHelpers.d.ts.map +1 -1
- package/dist/utils/headerFooterHelpers.js +114 -0
- package/dist/utils/headerFooterHelpers.js.map +1 -0
- package/dist/utils/keyHelpers/accessData.js +64 -0
- package/dist/utils/keyHelpers/accessData.js.map +1 -0
- package/dist/utils/keyHelpers/acl.js +74 -0
- package/dist/utils/keyHelpers/acl.js.map +1 -0
- package/dist/utils/keyHelpers/otherHelpers.js +13 -0
- package/dist/utils/keyHelpers/otherHelpers.js.map +1 -0
- package/dist/utils/label.js +111 -0
- package/dist/utils/label.js.map +1 -0
- package/dist/versionInfo.js +30 -0
- package/dist/versionInfo.js.map +1 -0
- package/dist/widgets/buttons/iconLinks.js +44 -0
- package/dist/widgets/buttons/iconLinks.js.map +1 -0
- package/dist/widgets/buttons.js +1280 -0
- package/dist/widgets/buttons.js.map +1 -0
- package/dist/widgets/error.d.ts +14 -0
- package/dist/widgets/error.d.ts.map +1 -0
- package/dist/widgets/error.js +35 -0
- package/dist/widgets/error.js.map +1 -0
- package/dist/widgets/forms/autocomplete/autocompleteBar.js +123 -0
- package/dist/widgets/forms/autocomplete/autocompleteBar.js.map +1 -0
- package/dist/widgets/forms/autocomplete/autocompleteField.js +199 -0
- package/dist/widgets/forms/autocomplete/autocompleteField.js.map +1 -0
- package/dist/widgets/forms/autocomplete/autocompletePicker.js +256 -0
- package/dist/widgets/forms/autocomplete/autocompletePicker.js.map +1 -0
- package/dist/widgets/forms/autocomplete/language.js +104 -0
- package/dist/widgets/forms/autocomplete/language.js.map +1 -0
- package/dist/widgets/forms/autocomplete/publicData.js +460 -0
- package/dist/widgets/forms/autocomplete/publicData.js.map +1 -0
- package/dist/widgets/forms/basic.js +241 -0
- package/dist/widgets/forms/basic.js.map +1 -0
- package/dist/widgets/forms/comment.js +46 -0
- package/dist/widgets/forms/comment.js.map +1 -0
- package/dist/widgets/forms/fieldFunction.js +44 -0
- package/dist/widgets/forms/fieldFunction.js.map +1 -0
- package/dist/widgets/forms/fieldParams.js +89 -0
- package/dist/widgets/forms/fieldParams.js.map +1 -0
- package/{lib → dist}/widgets/forms/formStyle.d.ts.map +1 -1
- package/dist/widgets/forms/formStyle.js +36 -0
- package/dist/widgets/forms/formStyle.js.map +1 -0
- package/{lib → dist}/widgets/widgetHelpers.d.ts.map +1 -1
- package/{lib → dist}/widgets/widgetHelpers.js +14 -25
- package/dist/widgets/widgetHelpers.js.map +1 -0
- package/package.json +48 -52
- package/dist/789.solid-ui.min.js +0 -1
- package/dist/841.solid-ui.min.js +0 -3
- package/dist/841.solid-ui.min.js.LICENSE.txt +0 -58
- package/dist/841.solid-ui.min.js.map +0 -1
- package/dist/_2b19.solid-ui.js +0 -14
- package/dist/_2b19.solid-ui.js.map +0 -1
- package/dist/index.html +0 -1
- package/dist/solid-ui.min.js.LICENSE.txt +0 -57
- package/dist/vendors-node_modules_jsonld_lib_jsonld_js.solid-ui.js +0 -12247
- package/dist/vendors-node_modules_jsonld_lib_jsonld_js.solid-ui.js.map +0 -1
- package/lib/acl/access-controller.js +0 -391
- package/lib/acl/access-controller.js.map +0 -1
- package/lib/acl/access-groups.js +0 -507
- package/lib/acl/access-groups.js.map +0 -1
- package/lib/acl/acl-control.js +0 -237
- package/lib/acl/acl-control.js.map +0 -1
- package/lib/acl/acl.js +0 -517
- package/lib/acl/acl.js.map +0 -1
- package/lib/acl/add-agent-buttons.js +0 -434
- package/lib/acl/add-agent-buttons.js.map +0 -1
- package/lib/acl/index.js +0 -39
- package/lib/acl/index.js.map +0 -1
- package/lib/acl/types.js +0 -6
- package/lib/acl/types.js.map +0 -1
- package/lib/chat/bookmarks.js +0 -303
- package/lib/chat/bookmarks.js.map +0 -1
- package/lib/chat/chatLogic.js +0 -420
- package/lib/chat/chatLogic.js.map +0 -1
- package/lib/chat/dateFolder.js +0 -328
- package/lib/chat/dateFolder.js.map +0 -1
- package/lib/chat/infinite.js +0 -994
- package/lib/chat/infinite.js.map +0 -1
- package/lib/chat/keys.js +0 -232
- package/lib/chat/keys.js.map +0 -1
- package/lib/chat/message.js +0 -715
- package/lib/chat/message.js.map +0 -1
- package/lib/chat/messageTools.js +0 -538
- package/lib/chat/messageTools.js.map +0 -1
- package/lib/chat/signature.js +0 -109
- package/lib/chat/signature.js.map +0 -1
- package/lib/chat/thread.js +0 -535
- package/lib/chat/thread.js.map +0 -1
- package/lib/create/create.js +0 -242
- package/lib/create/create.js.map +0 -1
- package/lib/create/index.js +0 -11
- package/lib/create/index.js.map +0 -1
- package/lib/create/types.js +0 -6
- package/lib/create/types.js.map +0 -1
- package/lib/debug.d.ts.map +0 -1
- package/lib/debug.js +0 -30
- package/lib/debug.js.map +0 -1
- package/lib/folders.js +0 -132
- package/lib/folders.js.map +0 -1
- package/lib/footer/index.js +0 -123
- package/lib/footer/index.js.map +0 -1
- package/lib/header/empty-profile.js +0 -8
- package/lib/header/empty-profile.js.map +0 -1
- package/lib/header/index.js +0 -375
- package/lib/header/index.js.map +0 -1
- package/lib/iconBase.js +0 -44
- package/lib/iconBase.js.map +0 -1
- package/lib/icons/solid_logo.js.map +0 -1
- package/lib/index.d.ts.map +0 -1
- package/lib/index.js +0 -223
- package/lib/index.js.map +0 -1
- package/lib/log.js +0 -213
- package/lib/log.js.map +0 -1
- package/lib/login/login.js +0 -1241
- package/lib/login/login.js.map +0 -1
- package/lib/matrix/index.js +0 -11
- package/lib/matrix/index.js.map +0 -1
- package/lib/matrix/matrix.js +0 -216
- package/lib/matrix/matrix.js.map +0 -1
- package/lib/matrix/types.js +0 -6
- package/lib/matrix/types.js.map +0 -1
- package/lib/media/index.js +0 -12
- package/lib/media/index.js.map +0 -1
- package/lib/media/media-capture.js +0 -194
- package/lib/media/media-capture.js.map +0 -1
- package/lib/messageArea.js +0 -319
- package/lib/messageArea.js.map +0 -1
- package/lib/noun_Camera_1618446_000000.js +0 -8
- package/lib/noun_Camera_1618446_000000.js.map +0 -1
- package/lib/ns.js +0 -17
- package/lib/ns.js.map +0 -1
- package/lib/pad.js +0 -805
- package/lib/pad.js.map +0 -1
- package/lib/participation.js +0 -219
- package/lib/participation.js.map +0 -1
- package/lib/preferences.js +0 -215
- package/lib/preferences.js.map +0 -1
- package/lib/signup/config-default.js +0 -43
- package/lib/signup/config-default.js.map +0 -1
- package/lib/signup/signup.js +0 -74
- package/lib/signup/signup.js.map +0 -1
- package/lib/stories/decorators.js +0 -10
- package/lib/stories/decorators.js.map +0 -1
- package/lib/style.js +0 -158
- package/lib/style.js.map +0 -1
- package/lib/styleConstants.js +0 -35
- package/lib/styleConstants.js.map +0 -1
- package/lib/style_multiSelect.js +0 -62
- package/lib/style_multiSelect.js.map +0 -1
- package/lib/table.js +0 -1573
- package/lib/table.js.map +0 -1
- package/lib/tabs.js +0 -448
- package/lib/tabs.js.map +0 -1
- package/lib/typings.d.js +0 -2
- package/lib/typings.d.js.map +0 -1
- package/lib/utils/headerFooterHelpers.js +0 -165
- package/lib/utils/headerFooterHelpers.js.map +0 -1
- package/lib/utils/index.js +0 -527
- package/lib/utils/index.js.map +0 -1
- package/lib/utils/keyHelpers/accessData.js +0 -131
- package/lib/utils/keyHelpers/accessData.js.map +0 -1
- package/lib/utils/keyHelpers/acl.js +0 -90
- package/lib/utils/keyHelpers/acl.js.map +0 -1
- package/lib/utils/keyHelpers/otherHelpers.js +0 -21
- package/lib/utils/keyHelpers/otherHelpers.js.map +0 -1
- package/lib/utils/label.js +0 -103
- package/lib/utils/label.js.map +0 -1
- package/lib/versionInfo.d.ts +0 -32
- package/lib/versionInfo.d.ts.map +0 -1
- package/lib/versionInfo.js +0 -37
- package/lib/versionInfo.js.map +0 -1
- package/lib/widgets/buttons/iconLinks.js +0 -53
- package/lib/widgets/buttons/iconLinks.js.map +0 -1
- package/lib/widgets/buttons.js +0 -1306
- package/lib/widgets/buttons.js.map +0 -1
- package/lib/widgets/dragAndDrop.js +0 -194
- package/lib/widgets/dragAndDrop.js.map +0 -1
- package/lib/widgets/error.d.ts +0 -2
- package/lib/widgets/error.d.ts.map +0 -1
- package/lib/widgets/error.js +0 -46
- package/lib/widgets/error.js.map +0 -1
- package/lib/widgets/forms/autocomplete/autocompleteBar.js +0 -271
- package/lib/widgets/forms/autocomplete/autocompleteBar.js.map +0 -1
- package/lib/widgets/forms/autocomplete/autocompleteField.js +0 -258
- package/lib/widgets/forms/autocomplete/autocompleteField.js.map +0 -1
- package/lib/widgets/forms/autocomplete/autocompletePicker.js +0 -436
- package/lib/widgets/forms/autocomplete/autocompletePicker.js.map +0 -1
- package/lib/widgets/forms/autocomplete/language.js +0 -189
- package/lib/widgets/forms/autocomplete/language.js.map +0 -1
- package/lib/widgets/forms/autocomplete/publicData.js +0 -636
- package/lib/widgets/forms/autocomplete/publicData.js.map +0 -1
- package/lib/widgets/forms/basic.js +0 -254
- package/lib/widgets/forms/basic.js.map +0 -1
- package/lib/widgets/forms/comment.js +0 -54
- package/lib/widgets/forms/comment.js.map +0 -1
- package/lib/widgets/forms/fieldFunction.js +0 -52
- package/lib/widgets/forms/fieldFunction.js.map +0 -1
- package/lib/widgets/forms/fieldParams.js +0 -77
- package/lib/widgets/forms/fieldParams.js.map +0 -1
- package/lib/widgets/forms/formStyle.js +0 -44
- package/lib/widgets/forms/formStyle.js.map +0 -1
- package/lib/widgets/forms.js +0 -2045
- package/lib/widgets/forms.js.map +0 -1
- package/lib/widgets/index.js +0 -110
- package/lib/widgets/index.js.map +0 -1
- package/lib/widgets/multiSelect.js +0 -658
- package/lib/widgets/multiSelect.js.map +0 -1
- package/lib/widgets/peoplePicker.js +0 -467
- package/lib/widgets/peoplePicker.js.map +0 -1
- package/lib/widgets/widgetHelpers.js.map +0 -1
- /package/{lib → dist}/acl/access-controller.d.ts +0 -0
- /package/{lib → dist}/acl/access-controller.d.ts.map +0 -0
- /package/{lib → dist}/acl/acl-control.d.ts +0 -0
- /package/{lib → dist}/acl/acl-control.d.ts.map +0 -0
- /package/{lib → dist}/acl/acl.d.ts +0 -0
- /package/{lib → dist}/acl/acl.d.ts.map +0 -0
- /package/{lib → dist}/acl/add-agent-buttons.d.ts +0 -0
- /package/{lib → dist}/acl/add-agent-buttons.d.ts.map +0 -0
- /package/{lib → dist}/acl/index.d.ts +0 -0
- /package/{lib → dist}/acl/index.d.ts.map +0 -0
- /package/{lib → dist}/acl/types.d.ts +0 -0
- /package/{lib → dist}/acl/types.d.ts.map +0 -0
- /package/{lib → dist}/chat/keys.d.ts +0 -0
- /package/{lib → dist}/chat/keys.d.ts.map +0 -0
- /package/{lib → dist}/chat/signature.d.ts +0 -0
- /package/{lib → dist}/chat/signature.d.ts.map +0 -0
- /package/{lib → dist}/create/create.d.ts +0 -0
- /package/{lib → dist}/create/create.d.ts.map +0 -0
- /package/{lib → dist}/create/index.d.ts +0 -0
- /package/{lib → dist}/create/index.d.ts.map +0 -0
- /package/{lib → dist}/create/types.d.ts +0 -0
- /package/{lib → dist}/create/types.d.ts.map +0 -0
- /package/{lib → dist}/debug.d.ts +0 -0
- /package/{lib → dist}/footer/index.d.ts +0 -0
- /package/{lib → dist}/footer/index.d.ts.map +0 -0
- /package/{lib → dist}/header/empty-profile.d.ts +0 -0
- /package/{lib → dist}/header/empty-profile.d.ts.map +0 -0
- /package/{lib → dist}/header/index.d.ts +0 -0
- /package/{lib → dist}/header/index.d.ts.map +0 -0
- /package/{lib → dist}/iconBase.d.ts +0 -0
- /package/{lib → dist}/iconBase.d.ts.map +0 -0
- /package/{lib → dist}/icons/solid_logo.d.ts +0 -0
- /package/{lib → dist}/icons/solid_logo.d.ts.map +0 -0
- /package/{lib → dist}/icons/solid_logo.js +0 -0
- /package/{lib → dist}/log.d.ts +0 -0
- /package/{lib → dist}/login/login.d.ts +0 -0
- /package/{lib → dist}/login/login.d.ts.map +0 -0
- /package/{lib → dist}/matrix/index.d.ts +0 -0
- /package/{lib → dist}/matrix/index.d.ts.map +0 -0
- /package/{lib → dist}/matrix/matrix.d.ts +0 -0
- /package/{lib → dist}/matrix/matrix.d.ts.map +0 -0
- /package/{lib → dist}/matrix/types.d.ts +0 -0
- /package/{lib → dist}/matrix/types.d.ts.map +0 -0
- /package/{lib → dist}/media/index.d.ts +0 -0
- /package/{lib → dist}/media/index.d.ts.map +0 -0
- /package/{lib → dist}/media/media-capture.d.ts +0 -0
- /package/{lib → dist}/media/media-capture.d.ts.map +0 -0
- /package/{lib → dist}/pad.d.ts +0 -0
- /package/{lib → dist}/pad.d.ts.map +0 -0
- /package/{lib → dist}/participation.d.ts +0 -0
- /package/{lib → dist}/tabs.d.ts +0 -0
- /package/{lib → dist}/tabs.d.ts.map +0 -0
- /package/{lib → dist}/utils/headerFooterHelpers.d.ts +0 -0
- /package/{lib → dist}/utils/keyHelpers/accessData.d.ts +0 -0
- /package/{lib → dist}/utils/keyHelpers/accessData.d.ts.map +0 -0
- /package/{lib → dist}/utils/keyHelpers/acl.d.ts +0 -0
- /package/{lib → dist}/utils/keyHelpers/acl.d.ts.map +0 -0
- /package/{lib → dist}/utils/keyHelpers/otherHelpers.d.ts +0 -0
- /package/{lib → dist}/utils/keyHelpers/otherHelpers.d.ts.map +0 -0
- /package/{lib → dist}/utils/label.d.ts +0 -0
- /package/{lib → dist}/utils/label.d.ts.map +0 -0
- /package/{lib → dist}/widgets/buttons/iconLinks.d.ts +0 -0
- /package/{lib → dist}/widgets/buttons/iconLinks.d.ts.map +0 -0
- /package/{lib → dist}/widgets/buttons.d.ts +0 -0
- /package/{lib → dist}/widgets/buttons.d.ts.map +0 -0
- /package/{lib → dist}/widgets/forms/autocomplete/autocompleteBar.d.ts +0 -0
- /package/{lib → dist}/widgets/forms/autocomplete/autocompleteBar.d.ts.map +0 -0
- /package/{lib → dist}/widgets/forms/autocomplete/autocompleteField.d.ts +0 -0
- /package/{lib → dist}/widgets/forms/autocomplete/autocompleteField.d.ts.map +0 -0
- /package/{lib → dist}/widgets/forms/autocomplete/autocompletePicker.d.ts +0 -0
- /package/{lib → dist}/widgets/forms/autocomplete/autocompletePicker.d.ts.map +0 -0
- /package/{lib → dist}/widgets/forms/autocomplete/language.d.ts +0 -0
- /package/{lib → dist}/widgets/forms/autocomplete/language.d.ts.map +0 -0
- /package/{lib → dist}/widgets/forms/autocomplete/publicData.d.ts +0 -0
- /package/{lib → dist}/widgets/forms/autocomplete/publicData.d.ts.map +0 -0
- /package/{lib → dist}/widgets/forms/basic.d.ts +0 -0
- /package/{lib → dist}/widgets/forms/basic.d.ts.map +0 -0
- /package/{lib → dist}/widgets/forms/comment.d.ts +0 -0
- /package/{lib → dist}/widgets/forms/comment.d.ts.map +0 -0
- /package/{lib → dist}/widgets/forms/fieldFunction.d.ts +0 -0
- /package/{lib → dist}/widgets/forms/fieldFunction.d.ts.map +0 -0
- /package/{lib → dist}/widgets/forms/fieldParams.d.ts +0 -0
- /package/{lib → dist}/widgets/forms/fieldParams.d.ts.map +0 -0
- /package/{lib → dist}/widgets/forms/formStyle.d.ts +0 -0
- /package/{lib → dist}/widgets/widgetHelpers.d.ts +0 -0
package/lib/chat/message.js
DELETED
|
@@ -1,715 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.creatorAndDate = creatorAndDate;
|
|
9
|
-
exports.creatorAndDateHorizontal = creatorAndDateHorizontal;
|
|
10
|
-
exports.elementForImageURI = elementForImageURI;
|
|
11
|
-
exports.renderMessageEditor = renderMessageEditor;
|
|
12
|
-
exports.renderMessageRow = renderMessageRow;
|
|
13
|
-
exports.switchToEditor = switchToEditor;
|
|
14
|
-
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
15
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
16
|
-
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
17
|
-
var _infinite = require("./infinite");
|
|
18
|
-
var _messageTools = require("./messageTools");
|
|
19
|
-
var _bookmarks = require("./bookmarks");
|
|
20
|
-
var _chatLogic = require("./chatLogic");
|
|
21
|
-
var debug = _interopRequireWildcard(require("../debug"));
|
|
22
|
-
var _iconBase = require("../iconBase");
|
|
23
|
-
var _solidLogic = require("solid-logic");
|
|
24
|
-
var _login = require("../login/login");
|
|
25
|
-
var _index = require("../media/index");
|
|
26
|
-
var ns = _interopRequireWildcard(require("../ns"));
|
|
27
|
-
var pad = _interopRequireWildcard(require("../pad"));
|
|
28
|
-
var style = _interopRequireWildcard(require("../style"));
|
|
29
|
-
var utils = _interopRequireWildcard(require("../utils"));
|
|
30
|
-
var widgets = _interopRequireWildcard(require("../widgets"));
|
|
31
|
-
var _signature = require("./signature");
|
|
32
|
-
var _keys = require("./keys");
|
|
33
|
-
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t8 in e) "default" !== _t8 && {}.hasOwnProperty.call(e, _t8) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t8)) && (i.get || i.set) ? o(f, _t8, i) : f[_t8] = e[_t8]); return f; })(e, t); }
|
|
34
|
-
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
35
|
-
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
36
|
-
function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, 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 o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
|
|
37
|
-
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
38
|
-
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; } /** UI code for individual messages: display them, edit them
|
|
39
|
-
*
|
|
40
|
-
* @packageDocumentation
|
|
41
|
-
*/ /* global $rdf */
|
|
42
|
-
var dom = window.document;
|
|
43
|
-
var messageBodyStyle = style.messageBodyStyle;
|
|
44
|
-
var label = utils.label;
|
|
45
|
-
|
|
46
|
-
/**
|
|
47
|
-
* elementForImageURI
|
|
48
|
-
* HTML component for an image
|
|
49
|
-
* @param imageUri
|
|
50
|
-
* @param options { inlineImageHeightEms }
|
|
51
|
-
* @returns HTMLAnchorElement For Image
|
|
52
|
-
*/
|
|
53
|
-
function elementForImageURI(imageUri, options) {
|
|
54
|
-
var img = dom.createElement('img');
|
|
55
|
-
var height = '10';
|
|
56
|
-
if (options.inlineImageHeightEms) {
|
|
57
|
-
height = ('' + options.inlineImageHeightEms).trim();
|
|
58
|
-
}
|
|
59
|
-
img.setAttribute('style', 'max-height: ' + height + 'em; border-radius: 1em; margin: 0.7em;');
|
|
60
|
-
// widgets.makeDropTarget(img, handleURIsDroppedOnMugshot, droppedFileHandler)
|
|
61
|
-
if (imageUri) img.setAttribute('src', imageUri);
|
|
62
|
-
var anchor = dom.createElement('a');
|
|
63
|
-
anchor.setAttribute('href', imageUri);
|
|
64
|
-
anchor.setAttribute('target', 'images');
|
|
65
|
-
anchor.appendChild(img);
|
|
66
|
-
widgets.makeDraggable(img, $rdf.sym(imageUri));
|
|
67
|
-
return anchor;
|
|
68
|
-
}
|
|
69
|
-
var anchor = function anchor(text, term) {
|
|
70
|
-
// If there is no link return an element anyway
|
|
71
|
-
var a = dom.createElement('a');
|
|
72
|
-
if (term && term.uri) {
|
|
73
|
-
a.setAttribute('href', term.uri);
|
|
74
|
-
a.addEventListener('click', widgets.openHrefInOutlineMode, true);
|
|
75
|
-
a.setAttribute('style', 'color: #3B5998; text-decoration: none; '); // font-weight: bold
|
|
76
|
-
}
|
|
77
|
-
a.textContent = text;
|
|
78
|
-
return a;
|
|
79
|
-
};
|
|
80
|
-
function nickname(person) {
|
|
81
|
-
var s = _solidLogic.store.any(person, ns.foaf('nick'));
|
|
82
|
-
if (s) return '' + s.value;
|
|
83
|
-
return '' + label(person);
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
/**
|
|
87
|
-
* creatorAndDate
|
|
88
|
-
* Displays creator and date for a chat message
|
|
89
|
-
* inside the `td1` element
|
|
90
|
-
* @param td1
|
|
91
|
-
* @param creator
|
|
92
|
-
* @param date
|
|
93
|
-
* @param message
|
|
94
|
-
* @returns HTMLAnchorElement For Image
|
|
95
|
-
*/
|
|
96
|
-
function creatorAndDate(td1, creator, date, message) {
|
|
97
|
-
var nickAnchor = td1.appendChild(anchor(nickname(creator), creator));
|
|
98
|
-
if (creator.uri) {
|
|
99
|
-
_solidLogic.store.fetcher.nowOrWhenFetched(creator.doc(), undefined, function (_ok, _body) {
|
|
100
|
-
nickAnchor.textContent = nickname(creator);
|
|
101
|
-
});
|
|
102
|
-
}
|
|
103
|
-
td1.appendChild(dom.createElement('br'));
|
|
104
|
-
td1.appendChild(anchor(date, message));
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
/**
|
|
108
|
-
* creatorAndDateHorizontal
|
|
109
|
-
* Horizontally displays creator and date for a chat message
|
|
110
|
-
* inside the `td1` element
|
|
111
|
-
* @param td1
|
|
112
|
-
* @param creator
|
|
113
|
-
* @param date
|
|
114
|
-
* @param message
|
|
115
|
-
* @returns HTMLAnchorElement For Image
|
|
116
|
-
*/
|
|
117
|
-
function creatorAndDateHorizontal(td1, creator, date, message) {
|
|
118
|
-
var nickAnchor = td1.appendChild(anchor(label(creator), creator));
|
|
119
|
-
if (creator.uri) {
|
|
120
|
-
_solidLogic.store.fetcher.nowOrWhenFetched(creator.doc(), undefined, function (_ok, _body) {
|
|
121
|
-
nickAnchor.textContent = nickname(creator);
|
|
122
|
-
});
|
|
123
|
-
}
|
|
124
|
-
var dateBit = td1.appendChild(anchor(date, message));
|
|
125
|
-
dateBit.style.fontSize = '80%';
|
|
126
|
-
dateBit.style.marginLeft = '1em';
|
|
127
|
-
td1.appendChild(dom.createElement('br'));
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
/**
|
|
131
|
-
* renderMessageRow
|
|
132
|
-
* Renders a chat message, read-only mode
|
|
133
|
-
* @param channelObject
|
|
134
|
-
* @param message
|
|
135
|
-
* @param fresh
|
|
136
|
-
* @param options
|
|
137
|
-
* @param userContext
|
|
138
|
-
* @returns Message Row HTML Table Element
|
|
139
|
-
*/
|
|
140
|
-
function renderMessageRow(_x, _x2, _x3, _x4, _x5) {
|
|
141
|
-
return _renderMessageRow.apply(this, arguments);
|
|
142
|
-
} // END OF RENDERMESSAGE
|
|
143
|
-
function _renderMessageRow() {
|
|
144
|
-
_renderMessageRow = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee9(channelObject, message, fresh, options, userContext) {
|
|
145
|
-
var unsignedMessage, colorizeByAuthor, creator, date, latestVersion, latestVersionCreator, msgId, content, versions, replies, thread, straightReplies, _iterator2, _step2, reply, signature, msg, originalMessage, edited, sortDate, messageRow, td1, img, bothDates, td2, text, isURI, para, isImage, _img, anc, bgcolor, getBgColor, strip, td3, toolsButton;
|
|
146
|
-
return _regenerator["default"].wrap(function (_context0) {
|
|
147
|
-
while (1) switch (_context0.prev = _context0.next) {
|
|
148
|
-
case 0:
|
|
149
|
-
getBgColor = function _getBgColor(fresh) {
|
|
150
|
-
return fresh ? '#e8ffe8' : 'white';
|
|
151
|
-
};
|
|
152
|
-
unsignedMessage = false;
|
|
153
|
-
colorizeByAuthor = options.colorizeByAuthor === '1' || options.colorizeByAuthor === true; // const id = store.any(latestVersion, ns.sioc('id'))
|
|
154
|
-
// const replies = store.each(latestVersion, ns.sioc('has_reply'))
|
|
155
|
-
creator = _solidLogic.store.any(message, ns.foaf('maker'));
|
|
156
|
-
date = _solidLogic.store.any(message, ns.dct('created'));
|
|
157
|
-
_context0.next = 1;
|
|
158
|
-
return (0, _chatLogic.mostRecentVersion)(message);
|
|
159
|
-
case 1:
|
|
160
|
-
latestVersion = _context0.sent;
|
|
161
|
-
latestVersionCreator = _solidLogic.store.any(latestVersion, ns.foaf('maker')); // use latest content if same owner, else use original
|
|
162
|
-
// this is may be too strict. Should we find latest valid version if any ?
|
|
163
|
-
msgId = creator.uri === (latestVersionCreator === null || latestVersionCreator === void 0 ? void 0 : latestVersionCreator.uri) ? latestVersion : message;
|
|
164
|
-
content = _solidLogic.store.any(msgId, ns.sioc('content'));
|
|
165
|
-
_context0.next = 2;
|
|
166
|
-
return (0, _chatLogic.allVersions)(msgId);
|
|
167
|
-
case 2:
|
|
168
|
-
versions = _context0.sent;
|
|
169
|
-
if (versions.length > 1) {
|
|
170
|
-
debug.log('renderMessageRow versions: ', versions.join(', '));
|
|
171
|
-
}
|
|
172
|
-
// be tolerant in accepting replies on any version of a message
|
|
173
|
-
replies = versions.map(function (version) {
|
|
174
|
-
return _solidLogic.store.each(version, ns.sioc('has_reply'));
|
|
175
|
-
}).flat();
|
|
176
|
-
thread = null;
|
|
177
|
-
straightReplies = [];
|
|
178
|
-
_iterator2 = _createForOfIteratorHelper(replies);
|
|
179
|
-
try {
|
|
180
|
-
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
181
|
-
reply = _step2.value;
|
|
182
|
-
if (_solidLogic.store.holds(reply, ns.rdf('type'), ns.sioc('Thread'))) {
|
|
183
|
-
thread = reply;
|
|
184
|
-
debug.log('renderMessageRow: found thread: ' + thread);
|
|
185
|
-
} else {
|
|
186
|
-
straightReplies.push(reply);
|
|
187
|
-
}
|
|
188
|
-
}
|
|
189
|
-
} catch (err) {
|
|
190
|
-
_iterator2.e(err);
|
|
191
|
-
} finally {
|
|
192
|
-
_iterator2.f();
|
|
193
|
-
}
|
|
194
|
-
if (straightReplies.length > 1) {
|
|
195
|
-
debug.log('renderMessageRow: found normal replies: ', straightReplies);
|
|
196
|
-
}
|
|
197
|
-
if (!thread) {
|
|
198
|
-
// thread = store.any(message, ns.sioc('has_reply'))
|
|
199
|
-
thread = _solidLogic.store.any(null, ns.sioc('has_member'), message);
|
|
200
|
-
}
|
|
201
|
-
// debug.log('@@@@ is thread' + thread)
|
|
202
|
-
|
|
203
|
-
// get signature
|
|
204
|
-
signature = _solidLogic.store.any(msgId, $rdf.sym("".concat(_signature.SEC, "proofValue"))); // set proof message object
|
|
205
|
-
msg = (0, _signature.getBlankMsg)();
|
|
206
|
-
msg.id = msgId.uri;
|
|
207
|
-
msg.created = _solidLogic.store.any(msgId, ns.dct('created')).value;
|
|
208
|
-
msg.content = content.value;
|
|
209
|
-
msg.maker = creator.uri;
|
|
210
|
-
|
|
211
|
-
// verify signature
|
|
212
|
-
if (!(signature !== null && signature !== void 0 && signature.value)) {
|
|
213
|
-
// unsigned message
|
|
214
|
-
unsignedMessage = true;
|
|
215
|
-
debug.warn(msgId.uri + ' is unsigned'); // TODO replace with UI (colored message ?)
|
|
216
|
-
} else {
|
|
217
|
-
// signed message, get public key and check signature
|
|
218
|
-
(0, _keys.getPublicKey)(creator).then(function (publicKey) {
|
|
219
|
-
// debug.log(creator.uri + '\n' + msg.created + '\n' + msg.id + '\n' + publicKey)
|
|
220
|
-
if (!publicKey) {
|
|
221
|
-
debug.warn('message is signed but ' + creator.uri + ' is missing publicKey');
|
|
222
|
-
}
|
|
223
|
-
// check that publicKey is a valid hex string
|
|
224
|
-
var regex = /[0-9A-Fa-f]{6}/g;
|
|
225
|
-
if (!(publicKey !== null && publicKey !== void 0 && publicKey.match(regex))) debug.warn('invalid publicKey hex string\n' + creator.uri + '\n' + publicKey);
|
|
226
|
-
// verify signature
|
|
227
|
-
else if (signature !== null && signature !== void 0 && signature.value && !(0, _signature.verifySignature)(signature === null || signature === void 0 ? void 0 : signature.value, msg, publicKey)) debug.warn('invalid signature\n' + msg.id);
|
|
228
|
-
});
|
|
229
|
-
}
|
|
230
|
-
_context0.next = 3;
|
|
231
|
-
return (0, _chatLogic.originalVersion)(message);
|
|
232
|
-
case 3:
|
|
233
|
-
originalMessage = _context0.sent;
|
|
234
|
-
edited = !message.sameTerm(originalMessage); // @@ load it first @@ Or display the new data at the old date.
|
|
235
|
-
// @@@ kludge!
|
|
236
|
-
sortDate = _solidLogic.store.the(originalMessage, ns.dct('created'), null, originalMessage.doc()) || _solidLogic.store.the(message, ns.dct('created'), null, message.doc()); // In message
|
|
237
|
-
messageRow = dom.createElement('tr');
|
|
238
|
-
if (unsignedMessage) messageRow.setAttribute('style', 'background-color: red');
|
|
239
|
-
messageRow.AJAR_date = sortDate.value;
|
|
240
|
-
messageRow.AJAR_subject = message;
|
|
241
|
-
td1 = dom.createElement('td');
|
|
242
|
-
messageRow.appendChild(td1);
|
|
243
|
-
if (!options.authorDateOnLeft) {
|
|
244
|
-
img = dom.createElement('img');
|
|
245
|
-
img.setAttribute('style', 'max-height: 2.5em; max-width: 2.5em; border-radius: 0.5em; margin: auto;');
|
|
246
|
-
widgets.setImage(img, creator);
|
|
247
|
-
td1.appendChild(img);
|
|
248
|
-
} else {
|
|
249
|
-
creatorAndDate(td1, creator, widgets.shortDate(sortDate.value), message);
|
|
250
|
-
}
|
|
251
|
-
bothDates = widgets.shortDate(sortDate.value);
|
|
252
|
-
if (edited) {
|
|
253
|
-
bothDates += ' ... ' + widgets.shortDate(date.value);
|
|
254
|
-
}
|
|
255
|
-
|
|
256
|
-
// Render the content ot the message itself
|
|
257
|
-
td2 = messageRow.appendChild(dom.createElement('td'));
|
|
258
|
-
if (!options.authorDateOnLeft) {
|
|
259
|
-
creatorAndDateHorizontal(td2, creator, bothDates,
|
|
260
|
-
// widgets.shortDate(dateString)
|
|
261
|
-
message);
|
|
262
|
-
}
|
|
263
|
-
text = content ? content.value.trim() : '??? no content?';
|
|
264
|
-
isURI = /^https?:\/[^ <>]*$/i.test(text);
|
|
265
|
-
para = null;
|
|
266
|
-
if (isURI) {
|
|
267
|
-
isImage = /\.(gif|jpg|jpeg|tiff|png|svg)$/i.test(text); // @@ Should use content-type not URI
|
|
268
|
-
if (isImage && options.expandImagesInline) {
|
|
269
|
-
_img = elementForImageURI(text, options);
|
|
270
|
-
td2.appendChild(_img);
|
|
271
|
-
} else {
|
|
272
|
-
// Link but not Image
|
|
273
|
-
anc = td2.appendChild(dom.createElement('a'));
|
|
274
|
-
para = anc.appendChild(dom.createElement('p'));
|
|
275
|
-
anc.href = text;
|
|
276
|
-
para.textContent = text;
|
|
277
|
-
td2.appendChild(anc);
|
|
278
|
-
}
|
|
279
|
-
} else {
|
|
280
|
-
// text
|
|
281
|
-
para = dom.createElement('p');
|
|
282
|
-
td2.appendChild(para);
|
|
283
|
-
para.textContent = text;
|
|
284
|
-
}
|
|
285
|
-
if (para) {
|
|
286
|
-
bgcolor = colorizeByAuthor ? pad.lightColorHash(creator) : getBgColor(fresh);
|
|
287
|
-
para.setAttribute('style', messageBodyStyle + 'background-color: ' + bgcolor + ';');
|
|
288
|
-
}
|
|
289
|
-
_context0.next = 4;
|
|
290
|
-
return (0, _messageTools.sentimentStripLinked)(message, message.doc());
|
|
291
|
-
case 4:
|
|
292
|
-
strip = _context0.sent;
|
|
293
|
-
if (strip.children.length) {
|
|
294
|
-
td2.appendChild(dom.createElement('br'));
|
|
295
|
-
td2.appendChild(strip);
|
|
296
|
-
}
|
|
297
|
-
|
|
298
|
-
// Message tool bar button
|
|
299
|
-
td3 = dom.createElement('td');
|
|
300
|
-
messageRow.appendChild(td3);
|
|
301
|
-
toolsButton = widgets.button(dom, _iconBase.icons.iconBase + 'noun_243787.svg', '...');
|
|
302
|
-
td3.appendChild(toolsButton);
|
|
303
|
-
toolsButton.addEventListener('click', /*#__PURE__*/function () {
|
|
304
|
-
var _ref4 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee8(_event) {
|
|
305
|
-
var toolsTR, tools, toolsTD;
|
|
306
|
-
return _regenerator["default"].wrap(function (_context9) {
|
|
307
|
-
while (1) switch (_context9.prev = _context9.next) {
|
|
308
|
-
case 0:
|
|
309
|
-
if (!messageRow.toolTR) {
|
|
310
|
-
_context9.next = 1;
|
|
311
|
-
break;
|
|
312
|
-
}
|
|
313
|
-
// already got a toolbar? Toogle
|
|
314
|
-
messageRow.parentNode.removeChild(messageRow.toolTR);
|
|
315
|
-
delete messageRow.toolTR;
|
|
316
|
-
return _context9.abrupt("return");
|
|
317
|
-
case 1:
|
|
318
|
-
toolsTR = dom.createElement('tr');
|
|
319
|
-
_context9.next = 2;
|
|
320
|
-
return (0, _messageTools.messageToolbar)(message, messageRow, _objectSpread(_objectSpread({}, userContext), {}, {
|
|
321
|
-
chatOptions: options
|
|
322
|
-
}), channelObject);
|
|
323
|
-
case 2:
|
|
324
|
-
tools = _context9.sent;
|
|
325
|
-
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
|
|
326
|
-
if (messageRow.nextSibling) {
|
|
327
|
-
messageRow.parentElement.insertBefore(toolsTR, messageRow.nextSibling);
|
|
328
|
-
} else {
|
|
329
|
-
messageRow.parentElement.appendChild(toolsTR);
|
|
330
|
-
}
|
|
331
|
-
messageRow.toolTR = toolsTR;
|
|
332
|
-
toolsTR.appendChild(dom.createElement('td')); // left
|
|
333
|
-
toolsTD = toolsTR.appendChild(dom.createElement('td'));
|
|
334
|
-
toolsTR.appendChild(dom.createElement('td')); // right
|
|
335
|
-
toolsTD.appendChild(tools);
|
|
336
|
-
case 3:
|
|
337
|
-
case "end":
|
|
338
|
-
return _context9.stop();
|
|
339
|
-
}
|
|
340
|
-
}, _callee8);
|
|
341
|
-
}));
|
|
342
|
-
return function (_x18) {
|
|
343
|
-
return _ref4.apply(this, arguments);
|
|
344
|
-
};
|
|
345
|
-
}());
|
|
346
|
-
if (thread && options.showThread) {
|
|
347
|
-
// debug.log(' message has thread ' + thread)
|
|
348
|
-
td3.appendChild(widgets.button(dom, _iconBase.icons.iconBase + 'noun_1180164.svg',
|
|
349
|
-
// right arrow .. @@ think of stg better
|
|
350
|
-
'see thread', function (_e) {
|
|
351
|
-
// debug.log('@@@@ Calling showThread thread ' + thread)
|
|
352
|
-
options.showThread(thread, options);
|
|
353
|
-
}));
|
|
354
|
-
}
|
|
355
|
-
return _context0.abrupt("return", messageRow);
|
|
356
|
-
case 5:
|
|
357
|
-
case "end":
|
|
358
|
-
return _context0.stop();
|
|
359
|
-
}
|
|
360
|
-
}, _callee9);
|
|
361
|
-
}));
|
|
362
|
-
return _renderMessageRow.apply(this, arguments);
|
|
363
|
-
}
|
|
364
|
-
function switchToEditor(_x6, _x7, _x8, _x9) {
|
|
365
|
-
return _switchToEditor.apply(this, arguments);
|
|
366
|
-
}
|
|
367
|
-
/* Control for a new message -- or editing an old message ***************
|
|
368
|
-
*
|
|
369
|
-
*/
|
|
370
|
-
function _switchToEditor() {
|
|
371
|
-
_switchToEditor = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee0(messageRow, message, channelObject, userContext) {
|
|
372
|
-
var messageTable, editRow, _t3, _t4, _t5, _t6, _t7;
|
|
373
|
-
return _regenerator["default"].wrap(function (_context1) {
|
|
374
|
-
while (1) switch (_context1.prev = _context1.next) {
|
|
375
|
-
case 0:
|
|
376
|
-
messageTable = messageRow.parentNode;
|
|
377
|
-
_t3 = renderMessageEditor;
|
|
378
|
-
_t4 = channelObject;
|
|
379
|
-
_t5 = messageTable;
|
|
380
|
-
_t6 = userContext;
|
|
381
|
-
_t7 = channelObject.options;
|
|
382
|
-
_context1.next = 1;
|
|
383
|
-
return (0, _chatLogic.mostRecentVersion)(message);
|
|
384
|
-
case 1:
|
|
385
|
-
editRow = _t3(_t4, _t5, _t6, _t7, _context1.sent);
|
|
386
|
-
messageTable.insertBefore(editRow, messageRow);
|
|
387
|
-
editRow.originalRow = messageRow;
|
|
388
|
-
messageRow.style.visibility = 'hidden'; // Hide the original message. unhide if user cancels edit
|
|
389
|
-
case 2:
|
|
390
|
-
case "end":
|
|
391
|
-
return _context1.stop();
|
|
392
|
-
}
|
|
393
|
-
}, _callee0);
|
|
394
|
-
}));
|
|
395
|
-
return _switchToEditor.apply(this, arguments);
|
|
396
|
-
}
|
|
397
|
-
function renderMessageEditor(channelObject, messageTable, userContext, options, originalMessage) {
|
|
398
|
-
function revertEditing(messageEditor) {
|
|
399
|
-
messageEditor.originalRow.style.visibility = 'visible'; // restore read-only version
|
|
400
|
-
messageEditor.parentNode.removeChild(messageEditor);
|
|
401
|
-
}
|
|
402
|
-
function handleFieldInput(_x0) {
|
|
403
|
-
return _handleFieldInput.apply(this, arguments);
|
|
404
|
-
}
|
|
405
|
-
function _handleFieldInput() {
|
|
406
|
-
_handleFieldInput = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee5(_event) {
|
|
407
|
-
return _regenerator["default"].wrap(function (_context6) {
|
|
408
|
-
while (1) switch (_context6.prev = _context6.next) {
|
|
409
|
-
case 0:
|
|
410
|
-
_context6.next = 1;
|
|
411
|
-
return sendMessage(field.value, true);
|
|
412
|
-
case 1:
|
|
413
|
-
case "end":
|
|
414
|
-
return _context6.stop();
|
|
415
|
-
}
|
|
416
|
-
}, _callee5);
|
|
417
|
-
}));
|
|
418
|
-
return _handleFieldInput.apply(this, arguments);
|
|
419
|
-
}
|
|
420
|
-
function sendMessage(_x1, _x10) {
|
|
421
|
-
return _sendMessage.apply(this, arguments);
|
|
422
|
-
} // sendMessage
|
|
423
|
-
// DRAG AND DROP
|
|
424
|
-
function _sendMessage() {
|
|
425
|
-
_sendMessage = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee7(text, fromMainField) {
|
|
426
|
-
var sendComplete, _sendComplete, message, statusArea, _t2;
|
|
427
|
-
return _regenerator["default"].wrap(function (_context8) {
|
|
428
|
-
while (1) switch (_context8.prev = _context8.next) {
|
|
429
|
-
case 0:
|
|
430
|
-
_sendComplete = function _sendComplete3() {
|
|
431
|
-
_sendComplete = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee6(message, _text2) {
|
|
432
|
-
var oldRow;
|
|
433
|
-
return _regenerator["default"].wrap(function (_context7) {
|
|
434
|
-
while (1) switch (_context7.prev = _context7.next) {
|
|
435
|
-
case 0:
|
|
436
|
-
_context7.next = 1;
|
|
437
|
-
return (0, _infinite.insertMessageIntoTable)(channelObject, messageTable, message, false, options, userContext);
|
|
438
|
-
case 1:
|
|
439
|
-
// not green
|
|
440
|
-
|
|
441
|
-
if (originalMessage) {
|
|
442
|
-
// editing another message
|
|
443
|
-
oldRow = messageEditor.originalRow; // oldRow.style.display = '' // restore read-only version, re-attack
|
|
444
|
-
if (oldRow.parentNode) {
|
|
445
|
-
oldRow.parentNode.removeChild(oldRow); // No longer needed old version
|
|
446
|
-
} else {
|
|
447
|
-
debug.warn('No parentNode on old message ' + oldRow.textContent);
|
|
448
|
-
oldRow.style.backgroundColor = '#fee';
|
|
449
|
-
oldRow.style.visibility = 'hidden'; // @@ FIX THIS AND REMOVE FROM DOM INSTEAD
|
|
450
|
-
}
|
|
451
|
-
messageEditor.parentNode.removeChild(messageEditor); // no longer need editor
|
|
452
|
-
} else {
|
|
453
|
-
if (fromMainField) {
|
|
454
|
-
field.value = ''; // clear from out for reuse
|
|
455
|
-
field.setAttribute('style', messageBodyStyle);
|
|
456
|
-
field.disabled = false;
|
|
457
|
-
field.scrollIntoView(options.newestFirst); // allign bottom (top)
|
|
458
|
-
field.focus(); // Start typing next line immediately
|
|
459
|
-
field.select();
|
|
460
|
-
}
|
|
461
|
-
}
|
|
462
|
-
// await channelObject.div.refresh() // Add new day if nec @@ add back
|
|
463
|
-
case 2:
|
|
464
|
-
case "end":
|
|
465
|
-
return _context7.stop();
|
|
466
|
-
}
|
|
467
|
-
}, _callee6);
|
|
468
|
-
}));
|
|
469
|
-
return _sendComplete.apply(this, arguments);
|
|
470
|
-
};
|
|
471
|
-
sendComplete = function _sendComplete2(_x16, _x17) {
|
|
472
|
-
return _sendComplete.apply(this, arguments);
|
|
473
|
-
}; // const me = authn.currentUser() // Must be logged on or wuld have got login button
|
|
474
|
-
if (fromMainField) {
|
|
475
|
-
field.setAttribute('style', messageBodyStyle + 'color: #bbb;'); // pendingedit
|
|
476
|
-
field.disabled = true;
|
|
477
|
-
}
|
|
478
|
-
_context8.prev = 1;
|
|
479
|
-
_context8.next = 2;
|
|
480
|
-
return channelObject.updateMessage(text, originalMessage, null, options.thread);
|
|
481
|
-
case 2:
|
|
482
|
-
message = _context8.sent;
|
|
483
|
-
_context8.next = 4;
|
|
484
|
-
break;
|
|
485
|
-
case 3:
|
|
486
|
-
_context8.prev = 3;
|
|
487
|
-
_t2 = _context8["catch"](1);
|
|
488
|
-
statusArea = userContext.statusArea || messageEditor;
|
|
489
|
-
statusArea.appendChild(widgets.errorMessageBlock(dom, 'Error writing message: ' + _t2));
|
|
490
|
-
return _context8.abrupt("return");
|
|
491
|
-
case 4:
|
|
492
|
-
_context8.next = 5;
|
|
493
|
-
return sendComplete(message, text);
|
|
494
|
-
case 5:
|
|
495
|
-
case "end":
|
|
496
|
-
return _context8.stop();
|
|
497
|
-
}
|
|
498
|
-
}, _callee7, null, [[1, 3]]);
|
|
499
|
-
}));
|
|
500
|
-
return _sendMessage.apply(this, arguments);
|
|
501
|
-
}
|
|
502
|
-
function droppedFileHandler(files) {
|
|
503
|
-
var base = messageTable.chatDocument.dir().uri;
|
|
504
|
-
widgets.uploadFiles(_solidLogic.store.fetcher, files, base + 'Files', base + 'Pictures', /*#__PURE__*/function () {
|
|
505
|
-
var _ref = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee(theFile, destURI) {
|
|
506
|
-
return _regenerator["default"].wrap(function (_context2) {
|
|
507
|
-
while (1) switch (_context2.prev = _context2.next) {
|
|
508
|
-
case 0:
|
|
509
|
-
_context2.next = 1;
|
|
510
|
-
return sendMessage(destURI);
|
|
511
|
-
case 1:
|
|
512
|
-
case "end":
|
|
513
|
-
return _context2.stop();
|
|
514
|
-
}
|
|
515
|
-
}, _callee);
|
|
516
|
-
}));
|
|
517
|
-
return function (_x11, _x12) {
|
|
518
|
-
return _ref.apply(this, arguments);
|
|
519
|
-
};
|
|
520
|
-
}());
|
|
521
|
-
}
|
|
522
|
-
|
|
523
|
-
// When a set of URIs are dropped on the field
|
|
524
|
-
var droppedURIHandler = /*#__PURE__*/function () {
|
|
525
|
-
var _ref2 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee2(uris) {
|
|
526
|
-
var _iterator, _step, uri, _t;
|
|
527
|
-
return _regenerator["default"].wrap(function (_context3) {
|
|
528
|
-
while (1) switch (_context3.prev = _context3.next) {
|
|
529
|
-
case 0:
|
|
530
|
-
_iterator = _createForOfIteratorHelper(uris);
|
|
531
|
-
_context3.prev = 1;
|
|
532
|
-
_iterator.s();
|
|
533
|
-
case 2:
|
|
534
|
-
if ((_step = _iterator.n()).done) {
|
|
535
|
-
_context3.next = 4;
|
|
536
|
-
break;
|
|
537
|
-
}
|
|
538
|
-
uri = _step.value;
|
|
539
|
-
_context3.next = 3;
|
|
540
|
-
return sendMessage(uri);
|
|
541
|
-
case 3:
|
|
542
|
-
_context3.next = 2;
|
|
543
|
-
break;
|
|
544
|
-
case 4:
|
|
545
|
-
_context3.next = 6;
|
|
546
|
-
break;
|
|
547
|
-
case 5:
|
|
548
|
-
_context3.prev = 5;
|
|
549
|
-
_t = _context3["catch"](1);
|
|
550
|
-
_iterator.e(_t);
|
|
551
|
-
case 6:
|
|
552
|
-
_context3.prev = 6;
|
|
553
|
-
_iterator.f();
|
|
554
|
-
return _context3.finish(6);
|
|
555
|
-
case 7:
|
|
556
|
-
case "end":
|
|
557
|
-
return _context3.stop();
|
|
558
|
-
}
|
|
559
|
-
}, _callee2, null, [[1, 5, 6, 7]]);
|
|
560
|
-
}));
|
|
561
|
-
return function droppedURIHandler(_x13) {
|
|
562
|
-
return _ref2.apply(this, arguments);
|
|
563
|
-
};
|
|
564
|
-
}();
|
|
565
|
-
|
|
566
|
-
// When we are actually logged on
|
|
567
|
-
function turnOnInput() {
|
|
568
|
-
function getImageDoc() {
|
|
569
|
-
imageDoc = $rdf.sym(chatDocument.dir().uri + 'Image_' + Date.now() + '.png');
|
|
570
|
-
return imageDoc;
|
|
571
|
-
}
|
|
572
|
-
function tookPicture(_x14) {
|
|
573
|
-
return _tookPicture.apply(this, arguments);
|
|
574
|
-
} // Body of turnOnInput
|
|
575
|
-
function _tookPicture() {
|
|
576
|
-
_tookPicture = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee4(imageDoc) {
|
|
577
|
-
return _regenerator["default"].wrap(function (_context5) {
|
|
578
|
-
while (1) switch (_context5.prev = _context5.next) {
|
|
579
|
-
case 0:
|
|
580
|
-
if (!imageDoc) {
|
|
581
|
-
_context5.next = 1;
|
|
582
|
-
break;
|
|
583
|
-
}
|
|
584
|
-
_context5.next = 1;
|
|
585
|
-
return sendMessage(imageDoc.uri);
|
|
586
|
-
case 1:
|
|
587
|
-
case "end":
|
|
588
|
-
return _context5.stop();
|
|
589
|
-
}
|
|
590
|
-
}, _callee4);
|
|
591
|
-
}));
|
|
592
|
-
return _tookPicture.apply(this, arguments);
|
|
593
|
-
}
|
|
594
|
-
var menuButton;
|
|
595
|
-
if (options.menuHandler) {
|
|
596
|
-
var _menuButton = widgets.button(dom, _iconBase.icons.iconBase + 'noun_243787.svg', 'More');
|
|
597
|
-
_menuButton.setAttribute('style', style.buttonStyle + 'float: right;');
|
|
598
|
-
// menuButton.addEventListener('click', _event => sendMessage(), false) (done in turnoninput)
|
|
599
|
-
rhs.appendChild(_menuButton);
|
|
600
|
-
}
|
|
601
|
-
if (options.menuHandler && menuButton) {
|
|
602
|
-
var _me = _solidLogic.authn.currentUser();
|
|
603
|
-
var menuOptions = {
|
|
604
|
-
me: _me,
|
|
605
|
-
dom: dom,
|
|
606
|
-
div: null,
|
|
607
|
-
// @@ was: div
|
|
608
|
-
newBase: messageTable.chatDocument.dir().uri
|
|
609
|
-
};
|
|
610
|
-
menuButton.addEventListener('click', function (event) {
|
|
611
|
-
options.menuHandler(event, channelObject.chatChannel, menuOptions);
|
|
612
|
-
}, false);
|
|
613
|
-
}
|
|
614
|
-
var me = _solidLogic.authn.currentUser(); // If already logged on
|
|
615
|
-
creatorAndDate(lhs, me, '', null);
|
|
616
|
-
field = dom.createElement('textarea');
|
|
617
|
-
middle.innerHTML = '';
|
|
618
|
-
middle.appendChild(field);
|
|
619
|
-
field.rows = 3;
|
|
620
|
-
if (originalMessage) {
|
|
621
|
-
field.value = _solidLogic.store.anyValue(originalMessage, ns.sioc('content'), null, originalMessage.doc());
|
|
622
|
-
}
|
|
623
|
-
// field.cols = 40
|
|
624
|
-
field.setAttribute('style', messageBodyStyle + 'background-color: #eef;');
|
|
625
|
-
|
|
626
|
-
// Trap the Enter BEFORE it is used ti make a newline
|
|
627
|
-
|
|
628
|
-
field.addEventListener('keydown', /*#__PURE__*/function () {
|
|
629
|
-
var _ref3 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee3(e) {
|
|
630
|
-
return _regenerator["default"].wrap(function (_context4) {
|
|
631
|
-
while (1) switch (_context4.prev = _context4.next) {
|
|
632
|
-
case 0:
|
|
633
|
-
if (!(e.code === 'Enter')) {
|
|
634
|
-
_context4.next = 1;
|
|
635
|
-
break;
|
|
636
|
-
}
|
|
637
|
-
if (!(!e.shiftKey && !options.shiftEnterSendsMessage || e.shiftKey && options.shiftEnterSendsMessage)) {
|
|
638
|
-
_context4.next = 1;
|
|
639
|
-
break;
|
|
640
|
-
}
|
|
641
|
-
_context4.next = 1;
|
|
642
|
-
return handleFieldInput(e);
|
|
643
|
-
case 1:
|
|
644
|
-
case "end":
|
|
645
|
-
return _context4.stop();
|
|
646
|
-
}
|
|
647
|
-
}, _callee3);
|
|
648
|
-
}));
|
|
649
|
-
return function (_x15) {
|
|
650
|
-
return _ref3.apply(this, arguments);
|
|
651
|
-
};
|
|
652
|
-
}(), false);
|
|
653
|
-
widgets.makeDropTarget(field, droppedURIHandler, droppedFileHandler);
|
|
654
|
-
rhs.innerHTML = '';
|
|
655
|
-
sendButton = widgets.button(dom, sendIcon, 'Send');
|
|
656
|
-
sendButton.style["float"] = 'right';
|
|
657
|
-
sendButton.addEventListener('click', function (_event) {
|
|
658
|
-
return handleFieldInput();
|
|
659
|
-
}, false);
|
|
660
|
-
rhs.appendChild(sendButton);
|
|
661
|
-
if (originalMessage) {
|
|
662
|
-
// Are we editing another message?
|
|
663
|
-
var cancelButton = rhs.appendChild(widgets.cancelButton(dom));
|
|
664
|
-
cancelButton.style["float"] = 'left';
|
|
665
|
-
// cancelButton.firstChild.style.opacity = '0.3' // moved to buttons
|
|
666
|
-
cancelButton.addEventListener('click', function (_event) {
|
|
667
|
-
return revertEditing(messageEditor);
|
|
668
|
-
}, false);
|
|
669
|
-
rhs.appendChild(cancelButton);
|
|
670
|
-
}
|
|
671
|
-
var chatDocument = channelObject.dateFolder.leafDocumentFromDate(new Date());
|
|
672
|
-
var imageDoc;
|
|
673
|
-
middle.appendChild(_index.media.cameraButton(dom, _solidLogic.store, getImageDoc, tookPicture));
|
|
674
|
-
pad.recordParticipation(channelObject.channel, channelObject.channel.doc()); // participation =
|
|
675
|
-
} // turn on inpuut
|
|
676
|
-
|
|
677
|
-
// Body of renderMessageEditor
|
|
678
|
-
|
|
679
|
-
var sortDate, sendIcon;
|
|
680
|
-
if (originalMessage) {
|
|
681
|
-
sortDate = _solidLogic.store.anyValue(originalMessage, ns.dct('created'), null, originalMessage.doc());
|
|
682
|
-
// text = store.anyValue(originalMessage, ns.sioc('content'), null, originalMessage.doc())
|
|
683
|
-
sendIcon = _iconBase.icons.iconBase + 'noun_1180158.svg'; // Green check
|
|
684
|
-
// cancelIcon = icons.iconBase + 'noun_1180156.svg' // Black cross
|
|
685
|
-
} else {
|
|
686
|
-
sendIcon = _iconBase.icons.iconBase + 'noun_383448.svg';
|
|
687
|
-
sortDate = '9999-01-01T00:00:00Z'; // ISO format for field sort
|
|
688
|
-
// text = ''
|
|
689
|
-
}
|
|
690
|
-
var messageEditor = dom.createElement('tr');
|
|
691
|
-
var lhs = dom.createElement('td');
|
|
692
|
-
var middle = dom.createElement('td');
|
|
693
|
-
var rhs = dom.createElement('td');
|
|
694
|
-
messageEditor.appendChild(lhs);
|
|
695
|
-
messageEditor.appendChild(middle);
|
|
696
|
-
messageEditor.appendChild(rhs);
|
|
697
|
-
messageEditor.AJAR_date = sortDate;
|
|
698
|
-
// messageEditor.appendChild(dom.createElement('br'))
|
|
699
|
-
|
|
700
|
-
var field, sendButton;
|
|
701
|
-
var context = {
|
|
702
|
-
div: middle,
|
|
703
|
-
dom: dom
|
|
704
|
-
};
|
|
705
|
-
(0, _login.ensureLoggedIn)(context).then(function (context) {
|
|
706
|
-
// me = context.me
|
|
707
|
-
turnOnInput();
|
|
708
|
-
Object.assign(context, userContext);
|
|
709
|
-
(0, _bookmarks.findBookmarkDocument)(context).then(function (_context) {
|
|
710
|
-
// debug.log('Bookmark file: ' + context.bookmarkDocument)
|
|
711
|
-
});
|
|
712
|
-
});
|
|
713
|
-
return messageEditor;
|
|
714
|
-
} // renderMessageEditor
|
|
715
|
-
//# sourceMappingURL=message.js.map
|