solid-ui 2.4.23 → 2.4.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (136) hide show
  1. package/dist/main.js +2159 -5039
  2. package/dist/main.js.map +1 -1
  3. package/lib/acl/access-controller.js +4 -67
  4. package/lib/acl/access-controller.js.map +1 -1
  5. package/lib/acl/access-groups.js +59 -137
  6. package/lib/acl/access-groups.js.map +1 -1
  7. package/lib/acl/acl-control.js +14 -54
  8. package/lib/acl/acl-control.js.map +1 -1
  9. package/lib/acl/acl.js +32 -107
  10. package/lib/acl/acl.js.map +1 -1
  11. package/lib/acl/add-agent-buttons.js +0 -92
  12. package/lib/acl/add-agent-buttons.js.map +1 -1
  13. package/lib/acl/index.js +1 -3
  14. package/lib/acl/index.js.map +1 -1
  15. package/lib/acl/styles.js +1 -2
  16. package/lib/acl/styles.js.map +1 -1
  17. package/lib/chat/bookmarks.js +8 -80
  18. package/lib/chat/bookmarks.js.map +1 -1
  19. package/lib/chat/chatLogic.js +109 -180
  20. package/lib/chat/chatLogic.js.map +1 -1
  21. package/lib/chat/dateFolder.js +6 -91
  22. package/lib/chat/dateFolder.js.map +1 -1
  23. package/lib/chat/infinite.js +33 -185
  24. package/lib/chat/infinite.js.map +1 -1
  25. package/lib/chat/message.js +37 -150
  26. package/lib/chat/message.js.map +1 -1
  27. package/lib/chat/messageTools.js +23 -96
  28. package/lib/chat/messageTools.js.map +1 -1
  29. package/lib/chat/thread.js +33 -91
  30. package/lib/chat/thread.js.map +1 -1
  31. package/lib/create/create.js +19 -51
  32. package/lib/create/create.js.map +1 -1
  33. package/lib/create/index.js +0 -2
  34. package/lib/create/index.js.map +1 -1
  35. package/lib/debug.js +0 -8
  36. package/lib/debug.js.map +1 -1
  37. package/lib/folders.js +4 -27
  38. package/lib/folders.js.map +1 -1
  39. package/lib/footer/index.js +2 -24
  40. package/lib/footer/index.js.map +1 -1
  41. package/lib/footer/styleMap.js.map +1 -1
  42. package/lib/header/empty-profile.js.map +1 -1
  43. package/lib/header/index.js +3 -72
  44. package/lib/header/index.js.map +1 -1
  45. package/lib/header/styleMap.js +4 -3
  46. package/lib/header/styleMap.js.map +1 -1
  47. package/lib/iconBase.js +3 -4
  48. package/lib/iconBase.js.map +1 -1
  49. package/lib/index.js +5 -46
  50. package/lib/index.js.map +1 -1
  51. package/lib/jss/index.js +3 -9
  52. package/lib/jss/index.js.map +1 -1
  53. package/lib/log.js +15 -51
  54. package/lib/log.js.map +1 -1
  55. package/lib/login/login.js +74 -303
  56. package/lib/login/login.js.map +1 -1
  57. package/lib/matrix/index.js +0 -2
  58. package/lib/matrix/index.js.map +1 -1
  59. package/lib/matrix/matrix.js +7 -55
  60. package/lib/matrix/matrix.js.map +1 -1
  61. package/lib/media/index.js +0 -2
  62. package/lib/media/index.js.map +1 -1
  63. package/lib/media/media-capture.js +13 -33
  64. package/lib/media/media-capture.js.map +1 -1
  65. package/lib/messageArea.js +23 -64
  66. package/lib/messageArea.js.map +1 -1
  67. package/lib/noun_Camera_1618446_000000.js.map +1 -1
  68. package/lib/ns.js +5 -7
  69. package/lib/ns.js.map +1 -1
  70. package/lib/pad.js +48 -234
  71. package/lib/pad.js.map +1 -1
  72. package/lib/participation.js +10 -65
  73. package/lib/participation.js.map +1 -1
  74. package/lib/preferences.js +21 -42
  75. package/lib/preferences.js.map +1 -1
  76. package/lib/signup/config-default.js +1 -8
  77. package/lib/signup/config-default.js.map +1 -1
  78. package/lib/signup/signup.js +6 -13
  79. package/lib/signup/signup.js.map +1 -1
  80. package/lib/stories/decorators.js +0 -2
  81. package/lib/stories/decorators.js.map +1 -1
  82. package/lib/style.js +8 -5
  83. package/lib/style.js.map +1 -1
  84. package/lib/style_multiSelect.js +1 -5
  85. package/lib/style_multiSelect.js.map +1 -1
  86. package/lib/table.js +309 -322
  87. package/lib/table.js.map +1 -1
  88. package/lib/tabs.js +20 -100
  89. package/lib/tabs.js.map +1 -1
  90. package/lib/utils/headerFooterHelpers.js +4 -52
  91. package/lib/utils/headerFooterHelpers.js.map +1 -1
  92. package/lib/utils/index.js +41 -135
  93. package/lib/utils/index.js.map +1 -1
  94. package/lib/utils/label.js +13 -34
  95. package/lib/utils/label.js.map +1 -1
  96. package/lib/versionInfo.js +4 -4
  97. package/lib/versionInfo.js.map +1 -1
  98. package/lib/widgets/buttons/iconLinks.js +0 -8
  99. package/lib/widgets/buttons/iconLinks.js.map +1 -1
  100. package/lib/widgets/buttons.js +115 -291
  101. package/lib/widgets/buttons.js.map +1 -1
  102. package/lib/widgets/dragAndDrop.js +12 -41
  103. package/lib/widgets/dragAndDrop.js.map +1 -1
  104. package/lib/widgets/error.js +3 -9
  105. package/lib/widgets/error.js.map +1 -1
  106. package/lib/widgets/forms/autocomplete/autocompleteBar.js +8 -71
  107. package/lib/widgets/forms/autocomplete/autocompleteBar.js.map +1 -1
  108. package/lib/widgets/forms/autocomplete/autocompleteField.js +13 -65
  109. package/lib/widgets/forms/autocomplete/autocompleteField.js.map +1 -1
  110. package/lib/widgets/forms/autocomplete/autocompletePicker.js +15 -107
  111. package/lib/widgets/forms/autocomplete/autocompletePicker.js.map +1 -1
  112. package/lib/widgets/forms/autocomplete/language.js +6 -55
  113. package/lib/widgets/forms/autocomplete/language.js.map +1 -1
  114. package/lib/widgets/forms/autocomplete/publicData.js +12 -131
  115. package/lib/widgets/forms/autocomplete/publicData.js.map +1 -1
  116. package/lib/widgets/forms/basic.js +12 -55
  117. package/lib/widgets/forms/basic.js.map +1 -1
  118. package/lib/widgets/forms/comment.js +1 -15
  119. package/lib/widgets/forms/comment.js.map +1 -1
  120. package/lib/widgets/forms/fieldFunction.js +3 -16
  121. package/lib/widgets/forms/fieldFunction.js.map +1 -1
  122. package/lib/widgets/forms/fieldParams.js +0 -12
  123. package/lib/widgets/forms/fieldParams.js.map +1 -1
  124. package/lib/widgets/forms/formStyle.js +1 -14
  125. package/lib/widgets/forms/formStyle.js.map +1 -1
  126. package/lib/widgets/forms.js +70 -474
  127. package/lib/widgets/forms.js.map +1 -1
  128. package/lib/widgets/index.js +0 -21
  129. package/lib/widgets/index.js.map +1 -1
  130. package/lib/widgets/multiSelect.js +48 -171
  131. package/lib/widgets/multiSelect.js.map +1 -1
  132. package/lib/widgets/peoplePicker.js +20 -90
  133. package/lib/widgets/peoplePicker.js.map +1 -1
  134. package/lib/widgets/widgetHelpers.js +2 -9
  135. package/lib/widgets/widgetHelpers.js.map +1 -1
  136. package/package.json +28 -28
@@ -1,35 +1,25 @@
1
1
  "use strict";
2
2
 
3
3
  var _typeof = require("@babel/runtime/helpers/typeof");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.messageArea = messageArea;
9
-
10
8
  var _iconBase = require("./iconBase");
11
-
12
9
  var login = _interopRequireWildcard(require("./login/login"));
13
-
14
10
  var _solidLogic = require("solid-logic");
15
-
16
11
  var ns = _interopRequireWildcard(require("./ns"));
17
-
18
12
  var rdf = _interopRequireWildcard(require("rdflib"));
19
-
20
13
  var style = _interopRequireWildcard(require("./style"));
21
-
22
14
  var utils = _interopRequireWildcard(require("./utils"));
23
-
24
15
  var widgets = _interopRequireWildcard(require("./widgets"));
25
-
26
16
  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); }
27
-
28
17
  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; }
29
-
30
18
  // Common code for a discussion are a of messages about something
31
19
  //
20
+
32
21
  // pull in first avoid cross-refs
22
+
33
23
  var UI = {
34
24
  icons: _iconBase.icons,
35
25
  ns: ns,
@@ -37,29 +27,26 @@ var UI = {
37
27
  style: style,
38
28
  widgets: widgets
39
29
  };
40
-
41
30
  function messageArea(dom, kb, subject, messageStore, options) {
42
31
  kb = kb || _solidLogic.solidLogicSingleton.store;
43
32
  messageStore = messageStore.doc(); // No hash
44
-
45
33
  var ns = UI.ns;
46
34
  var WF = rdf.Namespace('http://www.w3.org/2005/01/wf/flow#');
47
35
  var DCT = rdf.Namespace('http://purl.org/dc/terms/');
48
36
  options = options || {};
49
37
  var newestFirst = !!options.newestFirst;
50
- var messageBodyStyle = 'white-space: pre-wrap; width: 90%; font-size:100%; border: 0.07em solid #eee; padding: .2em 0.5em; margin: 0.1em 1em 0.1em 1em;'; // 'font-size: 100%; margin: 0.1em 1em 0.1em 1em; background-color: white; white-space: pre-wrap; padding: 0.1em;'
51
-
52
- var div = dom.createElement('div'); // eslint-disable-next-line prefer-const
38
+ var messageBodyStyle = 'white-space: pre-wrap; width: 90%; font-size:100%; border: 0.07em solid #eee; padding: .2em 0.5em; margin: 0.1em 1em 0.1em 1em;';
39
+ // 'font-size: 100%; margin: 0.1em 1em 0.1em 1em; background-color: white; white-space: pre-wrap; padding: 0.1em;'
53
40
 
41
+ var div = dom.createElement('div');
42
+ // eslint-disable-next-line prefer-const
54
43
  var messageTable; // Shared by initial build and addMessageFromBindings
55
44
 
56
45
  var me;
57
46
  var updater = _solidLogic.solidLogicSingleton.store.updater;
58
-
59
47
  var anchor = function anchor(text, term) {
60
48
  // If there is no link return an element anyway
61
49
  var a = dom.createElement('a');
62
-
63
50
  if (term && term.uri) {
64
51
  a.setAttribute('href', term.uri);
65
52
  a.addEventListener('click', UI.widgets.openHrefInOutlineMode, true);
@@ -69,7 +56,6 @@ function messageArea(dom, kb, subject, messageStore, options) {
69
56
  a.textContent = text;
70
57
  return a;
71
58
  };
72
-
73
59
  var mention = function mention(message, style) {
74
60
  var pre = dom.createElement('pre');
75
61
  pre.setAttribute('style', style || 'color: grey');
@@ -77,7 +63,6 @@ function messageArea(dom, kb, subject, messageStore, options) {
77
63
  pre.appendChild(dom.createTextNode(message));
78
64
  return pre;
79
65
  };
80
-
81
66
  var announce = {
82
67
  log: function log(message) {
83
68
  mention(message, 'color: #111;');
@@ -88,9 +73,10 @@ function messageArea(dom, kb, subject, messageStore, options) {
88
73
  error: function error(message) {
89
74
  mention(message, 'color: #800;');
90
75
  }
91
- }; // Form for a new message
92
- //
76
+ };
93
77
 
78
+ // Form for a new message
79
+ //
94
80
  var newMessageForm = function newMessageForm() {
95
81
  var form = dom.createElement('tr');
96
82
  var lhs = dom.createElement('td');
@@ -109,17 +95,15 @@ function messageArea(dom, kb, subject, messageStore, options) {
109
95
  var sts = [];
110
96
  var now = new Date();
111
97
  var timestamp = '' + now.getTime();
112
- var dateStamp = rdf.term(now); // http://www.w3schools.com/jsref/jsref_obj_date.asp
113
-
98
+ var dateStamp = rdf.term(now);
99
+ // http://www.w3schools.com/jsref/jsref_obj_date.asp
114
100
  var message = kb.sym(messageStore.uri + '#' + 'Msg' + timestamp);
115
101
  sts.push(new rdf.Statement(subject, ns.wf('message'), message, messageStore));
116
102
  sts.push(new rdf.Statement(message, ns.sioc('content'), kb.literal(field.value), messageStore));
117
103
  sts.push(new rdf.Statement(message, DCT('created'), dateStamp, messageStore));
118
-
119
104
  if (me) {
120
105
  sts.push(new rdf.Statement(message, ns.foaf('maker'), me, messageStore));
121
106
  }
122
-
123
107
  var sendComplete = function sendComplete(uri, success, body) {
124
108
  if (!success) {
125
109
  form.appendChild(UI.widgets.errorMessageBlock(dom, 'Error writing message: ' + body));
@@ -133,25 +117,21 @@ function messageArea(dom, kb, subject, messageStore, options) {
133
117
  renderMessage(bindings, false); // not green
134
118
 
135
119
  field.value = ''; // clear from out for reuse
136
-
137
120
  field.setAttribute('class', '');
138
121
  field.disabled = false;
139
122
  }
140
123
  };
141
-
142
124
  updater.update([], sts, sendComplete);
143
125
  };
144
-
145
126
  form.appendChild(dom.createElement('br'));
146
127
  var field, sendButton;
147
-
148
128
  var turnOnInput = function turnOnInput() {
149
129
  creatorAndDate(lhs, me, '', null);
150
130
  field = dom.createElement('textarea');
151
131
  middle.innerHTML = '';
152
132
  middle.appendChild(field);
153
- field.rows = 3; // field.cols = 40
154
-
133
+ field.rows = 3;
134
+ // field.cols = 40
155
135
  field.setAttribute('style', messageBodyStyle + 'background-color: #eef;');
156
136
  field.addEventListener('keyup', function (e) {
157
137
  // User preference?
@@ -168,7 +148,6 @@ function messageArea(dom, kb, subject, messageStore, options) {
168
148
  sendButton.addEventListener('click', sendMessage, false);
169
149
  rhs.appendChild(sendButton);
170
150
  };
171
-
172
151
  var context = {
173
152
  div: middle,
174
153
  dom: dom
@@ -179,59 +158,50 @@ function messageArea(dom, kb, subject, messageStore, options) {
179
158
  });
180
159
  return form;
181
160
  };
182
-
183
161
  function nick(person) {
184
162
  var s = _solidLogic.solidLogicSingleton.store.any(person, UI.ns.foaf('nick'));
185
-
186
163
  if (s) return '' + s.value;
187
164
  return '' + utils.label(person);
188
165
  }
189
-
190
166
  function creatorAndDate(td1, creator, date, message) {
191
167
  var nickAnchor = td1.appendChild(anchor(nick(creator), creator));
192
-
193
168
  if (creator.uri) {
194
169
  _solidLogic.solidLogicSingleton.store.fetcher.nowOrWhenFetched(creator.doc(), undefined, function (_ok, _body) {
195
170
  nickAnchor.textContent = nick(creator);
196
171
  });
197
172
  }
198
-
199
173
  td1.appendChild(dom.createElement('br'));
200
174
  td1.appendChild(anchor(date, message));
201
- } // ///////////////////////////////////////////////////////////////////////
175
+ }
202
176
 
177
+ // ///////////////////////////////////////////////////////////////////////
203
178
 
204
179
  function syncMessages(about, messageTable) {
205
180
  var displayed = {};
206
181
  var ele, ele2;
207
-
208
182
  for (ele = messageTable.firstChild; ele; ele = ele.nextSibling) {
209
183
  if (ele.AJAR_subject) {
210
184
  displayed[ele.AJAR_subject.uri] = true;
211
185
  }
212
186
  }
213
-
214
187
  var messages = kb.each(about, ns.wf('message'));
215
188
  var stored = {};
216
189
  messages.forEach(function (m) {
217
190
  stored[m.uri] = true;
218
-
219
191
  if (!displayed[m.uri]) {
220
192
  addMessage(m);
221
193
  }
222
- }); // eslint-disable-next-line space-in-parens
194
+ });
223
195
 
196
+ // eslint-disable-next-line space-in-parens
224
197
  for (ele = messageTable.firstChild; ele;) {
225
198
  ele2 = ele.nextSibling;
226
-
227
199
  if (ele.AJAR_subject && !stored[ele.AJAR_subject.uri]) {
228
200
  messageTable.removeChild(ele);
229
201
  }
230
-
231
202
  ele = ele2;
232
203
  }
233
204
  }
234
-
235
205
  var deleteMessage = function deleteMessage(message) {
236
206
  var deletions = kb.statementsMatching(message).concat(kb.statementsMatching(undefined, undefined, message));
237
207
  updater.update(deletions, [], function (uri, ok, body) {
@@ -242,7 +212,6 @@ function messageArea(dom, kb, subject, messageStore, options) {
242
212
  }
243
213
  });
244
214
  };
245
-
246
215
  var addMessage = function addMessage(message) {
247
216
  var bindings = {
248
217
  '?msg': message,
@@ -263,24 +232,20 @@ function messageArea(dom, kb, subject, messageStore, options) {
263
232
  tr.AJAR_date = dateString;
264
233
  tr.AJAR_subject = message;
265
234
  var done = false;
266
-
267
235
  for (var ele = messageTable.firstChild;; ele = ele.nextSibling) {
268
236
  if (!ele) {
269
237
  // empty
270
238
  break;
271
239
  }
272
-
273
240
  if (dateString > ele.AJAR_date && newestFirst || dateString < ele.AJAR_date && !newestFirst) {
274
241
  messageTable.insertBefore(tr, ele);
275
242
  done = true;
276
243
  break;
277
244
  }
278
245
  }
279
-
280
246
  if (!done) {
281
247
  messageTable.appendChild(tr);
282
248
  }
283
-
284
249
  var td1 = dom.createElement('td');
285
250
  tr.appendChild(td1);
286
251
  creatorAndDate(td1, creator, UI.widgets.shortDate(dateString), message);
@@ -296,12 +261,10 @@ function messageArea(dom, kb, subject, messageStore, options) {
296
261
  td3.appendChild(delButton);
297
262
  delButton.textContent = '-';
298
263
  tr.setAttribute('class', 'hoverControl'); // See tabbedtab.css (sigh global CSS)
299
-
300
264
  delButton.setAttribute('class', 'hoverControlHide');
301
265
  delButton.setAttribute('style', 'color: red;');
302
266
  delButton.addEventListener('click', function (_event) {
303
267
  td3.removeChild(delButton); // Ask -- are you sure?
304
-
305
268
  var cancelButton = dom.createElement('button');
306
269
  cancelButton.textContent = 'cancel';
307
270
  td3.appendChild(cancelButton).addEventListener('click', function (_event) {
@@ -317,8 +280,9 @@ function messageArea(dom, kb, subject, messageStore, options) {
317
280
  deleteMessage(message);
318
281
  }, false);
319
282
  }, false);
320
- }; // Messages with date, author etc
283
+ };
321
284
 
285
+ // Messages with date, author etc
322
286
 
323
287
  messageTable = dom.createElement('table');
324
288
  messageTable.fresh = false;
@@ -326,21 +290,19 @@ function messageArea(dom, kb, subject, messageStore, options) {
326
290
  messageTable.setAttribute('style', 'width: 100%;'); // fill that div!
327
291
 
328
292
  var tr = newMessageForm();
329
-
330
293
  if (newestFirst) {
331
294
  messageTable.insertBefore(tr, messageTable.firstChild); // If newestFirst
332
295
  } else {
333
296
  messageTable.appendChild(tr); // not newestFirst
334
297
  }
335
298
 
336
- var query; // Do this with a live query to pull in messages from web
337
-
299
+ var query;
300
+ // Do this with a live query to pull in messages from web
338
301
  if (options.query) {
339
302
  query = options.query;
340
303
  } else {
341
304
  query = new rdf.Query('Messages');
342
305
  var v = {}; // semicolon needed
343
-
344
306
  var vs = ['msg', 'date', 'creator', 'content'];
345
307
  vs.forEach(function (x) {
346
308
  query.vars.push(v[x] = rdf.variable(x));
@@ -350,18 +312,15 @@ function messageArea(dom, kb, subject, messageStore, options) {
350
312
  query.pat.add(v.msg, ns.foaf('maker'), v.creator);
351
313
  query.pat.add(v.msg, ns.sioc('content'), v.content);
352
314
  }
353
-
354
315
  function doneQuery() {
355
316
  messageTable.fresh = true; // any new are fresh and so will be greenish
356
317
  }
357
318
 
358
319
  kb.query(query, renderMessage, undefined, doneQuery);
359
-
360
320
  div.refresh = function () {
361
321
  syncMessages(subject, messageTable);
362
- }; // syncMessages(subject, messageTable) // no the query will do this async
363
-
364
-
322
+ };
323
+ // syncMessages(subject, messageTable) // no the query will do this async
365
324
  return div;
366
325
  }
367
326
  //# sourceMappingURL=messageArea.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"messageArea.js","names":["UI","icons","ns","rdf","style","widgets","messageArea","dom","kb","subject","messageStore","options","solidLogicSingleton","store","doc","WF","Namespace","DCT","newestFirst","messageBodyStyle","div","createElement","messageTable","me","updater","anchor","text","term","a","uri","setAttribute","addEventListener","openHrefInOutlineMode","textContent","mention","message","pre","appendChild","createTextNode","announce","log","warn","error","newMessageForm","form","lhs","middle","rhs","AJAR_date","sendMessage","field","disabled","sts","now","Date","timestamp","getTime","dateStamp","sym","push","Statement","wf","sioc","literal","value","foaf","sendComplete","success","body","errorMessageBlock","bindings","renderMessage","update","sendButton","turnOnInput","creatorAndDate","innerHTML","rows","e","keyCode","altKey","button","iconBase","buttonStyle","context","login","ensureLoggedIn","then","nick","person","s","any","utils","label","td1","creator","date","nickAnchor","fetcher","nowOrWhenFetched","undefined","_ok","_body","syncMessages","about","displayed","ele","ele2","firstChild","nextSibling","AJAR_subject","messages","each","stored","forEach","m","addMessage","removeChild","deleteMessage","deletions","statementsMatching","concat","ok","fresh","content","dateString","tr","done","insertBefore","shortDate","td2","td3","delButton","_event","cancelButton","sureButton","query","Query","v","vs","x","vars","variable","pat","add","msg","dct","doneQuery","refresh"],"sources":["../src/messageArea.js"],"sourcesContent":["// Common code for a discussion are a of messages about something\n//\n\nimport { icons } from './iconBase'\nimport * as login from './login/login'\nimport { solidLogicSingleton } from 'solid-logic'\nimport * as ns from './ns'\nimport * as rdf from 'rdflib' // pull in first avoid cross-refs\nimport * as style from './style'\nimport * as utils from './utils'\nimport * as widgets from './widgets'\n\nconst UI = { icons, ns, rdf, style, widgets }\n\nexport function messageArea (dom, kb, subject, messageStore, options) {\n kb = kb || solidLogicSingleton.store\n messageStore = messageStore.doc() // No hash\n const ns = UI.ns\n const WF = rdf.Namespace('http://www.w3.org/2005/01/wf/flow#')\n const DCT = rdf.Namespace('http://purl.org/dc/terms/')\n\n options = options || {}\n\n const newestFirst = !!options.newestFirst\n\n const messageBodyStyle =\n 'white-space: pre-wrap; width: 90%; font-size:100%; border: 0.07em solid #eee; padding: .2em 0.5em; margin: 0.1em 1em 0.1em 1em;'\n // 'font-size: 100%; margin: 0.1em 1em 0.1em 1em; background-color: white; white-space: pre-wrap; padding: 0.1em;'\n\n const div = dom.createElement('div')\n // eslint-disable-next-line prefer-const\n let messageTable // Shared by initial build and addMessageFromBindings\n\n let me\n\n const updater = solidLogicSingleton.store.updater\n\n const anchor = function (text, term) {\n // If there is no link return an element anyway\n const a = dom.createElement('a')\n if (term && term.uri) {\n a.setAttribute('href', term.uri)\n a.addEventListener('click', UI.widgets.openHrefInOutlineMode, true)\n a.setAttribute('style', 'color: #3B5998; text-decoration: none; ') // font-weight: bold\n }\n a.textContent = text\n return a\n }\n\n const mention = function mention (message, style) {\n const pre = dom.createElement('pre')\n pre.setAttribute('style', style || 'color: grey')\n div.appendChild(pre)\n pre.appendChild(dom.createTextNode(message))\n return pre\n }\n\n const announce = {\n log: function (message) {\n mention(message, 'color: #111;')\n },\n warn: function (message) {\n mention(message, 'color: #880;')\n },\n error: function (message) {\n mention(message, 'color: #800;')\n }\n }\n\n // Form for a new message\n //\n const newMessageForm = function () {\n const form = dom.createElement('tr')\n const lhs = dom.createElement('td')\n const middle = dom.createElement('td')\n const rhs = dom.createElement('td')\n form.appendChild(lhs)\n form.appendChild(middle)\n form.appendChild(rhs)\n form.AJAR_date = '9999-01-01T00:00:00Z' // ISO format for field sort\n\n const sendMessage = function () {\n // titlefield.setAttribute('class','pendingedit')\n // titlefield.disabled = true\n field.setAttribute('class', 'pendingedit')\n field.disabled = true\n const sts = []\n const now = new Date()\n const timestamp = '' + now.getTime()\n const dateStamp = rdf.term(now)\n // http://www.w3schools.com/jsref/jsref_obj_date.asp\n const message = kb.sym(messageStore.uri + '#' + 'Msg' + timestamp)\n\n sts.push(\n new rdf.Statement(subject, ns.wf('message'), message, messageStore)\n )\n sts.push(\n new rdf.Statement(\n message,\n ns.sioc('content'),\n kb.literal(field.value),\n messageStore\n )\n )\n sts.push(\n new rdf.Statement(message, DCT('created'), dateStamp, messageStore)\n )\n if (me) {\n sts.push(\n new rdf.Statement(message, ns.foaf('maker'), me, messageStore)\n )\n }\n\n const sendComplete = function (uri, success, body) {\n if (!success) {\n form.appendChild(\n UI.widgets.errorMessageBlock(dom, 'Error writing message: ' + body)\n )\n } else {\n const bindings = {\n '?msg': message,\n '?content': kb.literal(field.value),\n '?date': dateStamp,\n '?creator': me\n }\n renderMessage(bindings, false) // not green\n\n field.value = '' // clear from out for reuse\n field.setAttribute('class', '')\n field.disabled = false\n }\n }\n updater.update([], sts, sendComplete)\n }\n form.appendChild(dom.createElement('br'))\n\n let field, sendButton\n const turnOnInput = function () {\n creatorAndDate(lhs, me, '', null)\n\n field = dom.createElement('textarea')\n middle.innerHTML = ''\n middle.appendChild(field)\n field.rows = 3\n // field.cols = 40\n field.setAttribute('style', messageBodyStyle + 'background-color: #eef;')\n\n field.addEventListener(\n 'keyup',\n function (e) {\n // User preference?\n if (e.keyCode === 13) {\n if (!e.altKey) {\n // Alt-Enter just adds a new line\n sendMessage()\n }\n }\n },\n false\n )\n\n rhs.innerHTML = ''\n sendButton = UI.widgets.button(\n dom,\n UI.icons.iconBase + 'noun_383448.svg',\n 'Send'\n )\n sendButton.setAttribute('style', UI.style.buttonStyle + 'float: right;')\n sendButton.addEventListener('click', sendMessage, false)\n rhs.appendChild(sendButton)\n }\n\n const context = { div: middle, dom }\n login.ensureLoggedIn(context).then(context => {\n me = context.me\n turnOnInput()\n })\n\n return form\n }\n\n function nick (person) {\n const s = solidLogicSingleton.store.any(person, UI.ns.foaf('nick'))\n if (s) return '' + s.value\n return '' + utils.label(person)\n }\n\n function creatorAndDate (td1, creator, date, message) {\n const nickAnchor = td1.appendChild(anchor(nick(creator), creator))\n if (creator.uri) {\n solidLogicSingleton.store.fetcher.nowOrWhenFetched(creator.doc(), undefined, function (\n _ok,\n _body\n ) {\n nickAnchor.textContent = nick(creator)\n })\n }\n td1.appendChild(dom.createElement('br'))\n td1.appendChild(anchor(date, message))\n }\n\n // ///////////////////////////////////////////////////////////////////////\n\n function syncMessages (about, messageTable) {\n const displayed = {}\n let ele, ele2\n for (ele = messageTable.firstChild; ele; ele = ele.nextSibling) {\n if (ele.AJAR_subject) {\n displayed[ele.AJAR_subject.uri] = true\n }\n }\n const messages = kb.each(about, ns.wf('message'))\n const stored = {}\n messages.forEach(function (m) {\n stored[m.uri] = true\n if (!displayed[m.uri]) {\n addMessage(m)\n }\n })\n\n // eslint-disable-next-line space-in-parens\n for (ele = messageTable.firstChild; ele; ) {\n ele2 = ele.nextSibling\n if (ele.AJAR_subject && !stored[ele.AJAR_subject.uri]) {\n messageTable.removeChild(ele)\n }\n ele = ele2\n }\n }\n\n const deleteMessage = function (message) {\n const deletions = kb\n .statementsMatching(message)\n .concat(kb.statementsMatching(undefined, undefined, message))\n updater.update(deletions, [], function (uri, ok, body) {\n if (!ok) {\n announce.error('Cant delete messages:' + body)\n } else {\n syncMessages(subject, messageTable)\n }\n })\n }\n\n const addMessage = function (message) {\n const bindings = {\n '?msg': message,\n '?creator': kb.any(message, ns.foaf('maker')),\n '?date': kb.any(message, DCT('created')),\n '?content': kb.any(message, ns.sioc('content'))\n }\n renderMessage(bindings, true) // fresh from elsewhere\n }\n\n const renderMessage = function (bindings, fresh) {\n const creator = bindings['?creator']\n const message = bindings['?msg']\n const date = bindings['?date']\n const content = bindings['?content']\n\n const dateString = date.value\n const tr = dom.createElement('tr')\n tr.AJAR_date = dateString\n tr.AJAR_subject = message\n\n let done = false\n for (let ele = messageTable.firstChild; ; ele = ele.nextSibling) {\n if (!ele) {\n // empty\n break\n }\n if (\n (dateString > ele.AJAR_date && newestFirst) ||\n (dateString < ele.AJAR_date && !newestFirst)\n ) {\n messageTable.insertBefore(tr, ele)\n done = true\n break\n }\n }\n if (!done) {\n messageTable.appendChild(tr)\n }\n\n const td1 = dom.createElement('td')\n tr.appendChild(td1)\n creatorAndDate(td1, creator, UI.widgets.shortDate(dateString), message)\n\n const td2 = dom.createElement('td')\n tr.appendChild(td2)\n const pre = dom.createElement('p')\n pre.setAttribute(\n 'style',\n messageBodyStyle +\n (fresh ? 'background-color: #e8ffe8;' : 'background-color: #white;')\n )\n td2.appendChild(pre)\n pre.textContent = content.value\n\n const td3 = dom.createElement('td')\n tr.appendChild(td3)\n\n const delButton = dom.createElement('button')\n td3.appendChild(delButton)\n delButton.textContent = '-'\n\n tr.setAttribute('class', 'hoverControl') // See tabbedtab.css (sigh global CSS)\n delButton.setAttribute('class', 'hoverControlHide')\n delButton.setAttribute('style', 'color: red;')\n delButton.addEventListener(\n 'click',\n function (_event) {\n td3.removeChild(delButton) // Ask -- are you sure?\n const cancelButton = dom.createElement('button')\n cancelButton.textContent = 'cancel'\n td3.appendChild(cancelButton).addEventListener(\n 'click',\n function (_event) {\n td3.removeChild(sureButton)\n td3.removeChild(cancelButton)\n td3.appendChild(delButton)\n },\n false\n )\n const sureButton = dom.createElement('button')\n sureButton.textContent = 'Delete message'\n td3.appendChild(sureButton).addEventListener(\n 'click',\n function (_event) {\n td3.removeChild(sureButton)\n td3.removeChild(cancelButton)\n deleteMessage(message)\n },\n false\n )\n },\n false\n )\n }\n\n // Messages with date, author etc\n\n messageTable = dom.createElement('table')\n messageTable.fresh = false\n div.appendChild(messageTable)\n messageTable.setAttribute('style', 'width: 100%;') // fill that div!\n\n const tr = newMessageForm()\n if (newestFirst) {\n messageTable.insertBefore(tr, messageTable.firstChild) // If newestFirst\n } else {\n messageTable.appendChild(tr) // not newestFirst\n }\n\n let query\n // Do this with a live query to pull in messages from web\n if (options.query) {\n query = options.query\n } else {\n query = new rdf.Query('Messages')\n const v = {} // semicolon needed\n const vs = ['msg', 'date', 'creator', 'content']\n vs.forEach(function (x) {\n query.vars.push((v[x] = rdf.variable(x)))\n })\n query.pat.add(subject, WF('message'), v.msg)\n query.pat.add(v.msg, ns.dct('created'), v.date)\n query.pat.add(v.msg, ns.foaf('maker'), v.creator)\n query.pat.add(v.msg, ns.sioc('content'), v.content)\n }\n function doneQuery () {\n messageTable.fresh = true // any new are fresh and so will be greenish\n }\n kb.query(query, renderMessage, undefined, doneQuery)\n div.refresh = function () {\n syncMessages(subject, messageTable)\n }\n // syncMessages(subject, messageTable) // no the query will do this async\n return div\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"messageArea.js","names":["UI","icons","ns","rdf","style","widgets","messageArea","dom","kb","subject","messageStore","options","solidLogicSingleton","store","doc","WF","Namespace","DCT","newestFirst","messageBodyStyle","div","createElement","messageTable","me","updater","anchor","text","term","a","uri","setAttribute","addEventListener","openHrefInOutlineMode","textContent","mention","message","pre","appendChild","createTextNode","announce","log","warn","error","newMessageForm","form","lhs","middle","rhs","AJAR_date","sendMessage","field","disabled","sts","now","Date","timestamp","getTime","dateStamp","sym","push","Statement","wf","sioc","literal","value","foaf","sendComplete","success","body","errorMessageBlock","bindings","renderMessage","update","sendButton","turnOnInput","creatorAndDate","innerHTML","rows","e","keyCode","altKey","button","iconBase","buttonStyle","context","login","ensureLoggedIn","then","nick","person","s","any","utils","label","td1","creator","date","nickAnchor","fetcher","nowOrWhenFetched","undefined","_ok","_body","syncMessages","about","displayed","ele","ele2","firstChild","nextSibling","AJAR_subject","messages","each","stored","forEach","m","addMessage","removeChild","deleteMessage","deletions","statementsMatching","concat","ok","fresh","content","dateString","tr","done","insertBefore","shortDate","td2","td3","delButton","_event","cancelButton","sureButton","query","Query","v","vs","x","vars","variable","pat","add","msg","dct","doneQuery","refresh"],"sources":["../src/messageArea.js"],"sourcesContent":["// Common code for a discussion are a of messages about something\n//\n\nimport { icons } from './iconBase'\nimport * as login from './login/login'\nimport { solidLogicSingleton } from 'solid-logic'\nimport * as ns from './ns'\nimport * as rdf from 'rdflib' // pull in first avoid cross-refs\nimport * as style from './style'\nimport * as utils from './utils'\nimport * as widgets from './widgets'\n\nconst UI = { icons, ns, rdf, style, widgets }\n\nexport function messageArea (dom, kb, subject, messageStore, options) {\n kb = kb || solidLogicSingleton.store\n messageStore = messageStore.doc() // No hash\n const ns = UI.ns\n const WF = rdf.Namespace('http://www.w3.org/2005/01/wf/flow#')\n const DCT = rdf.Namespace('http://purl.org/dc/terms/')\n\n options = options || {}\n\n const newestFirst = !!options.newestFirst\n\n const messageBodyStyle =\n 'white-space: pre-wrap; width: 90%; font-size:100%; border: 0.07em solid #eee; padding: .2em 0.5em; margin: 0.1em 1em 0.1em 1em;'\n // 'font-size: 100%; margin: 0.1em 1em 0.1em 1em; background-color: white; white-space: pre-wrap; padding: 0.1em;'\n\n const div = dom.createElement('div')\n // eslint-disable-next-line prefer-const\n let messageTable // Shared by initial build and addMessageFromBindings\n\n let me\n\n const updater = solidLogicSingleton.store.updater\n\n const anchor = function (text, term) {\n // If there is no link return an element anyway\n const a = dom.createElement('a')\n if (term && term.uri) {\n a.setAttribute('href', term.uri)\n a.addEventListener('click', UI.widgets.openHrefInOutlineMode, true)\n a.setAttribute('style', 'color: #3B5998; text-decoration: none; ') // font-weight: bold\n }\n a.textContent = text\n return a\n }\n\n const mention = function mention (message, style) {\n const pre = dom.createElement('pre')\n pre.setAttribute('style', style || 'color: grey')\n div.appendChild(pre)\n pre.appendChild(dom.createTextNode(message))\n return pre\n }\n\n const announce = {\n log: function (message) {\n mention(message, 'color: #111;')\n },\n warn: function (message) {\n mention(message, 'color: #880;')\n },\n error: function (message) {\n mention(message, 'color: #800;')\n }\n }\n\n // Form for a new message\n //\n const newMessageForm = function () {\n const form = dom.createElement('tr')\n const lhs = dom.createElement('td')\n const middle = dom.createElement('td')\n const rhs = dom.createElement('td')\n form.appendChild(lhs)\n form.appendChild(middle)\n form.appendChild(rhs)\n form.AJAR_date = '9999-01-01T00:00:00Z' // ISO format for field sort\n\n const sendMessage = function () {\n // titlefield.setAttribute('class','pendingedit')\n // titlefield.disabled = true\n field.setAttribute('class', 'pendingedit')\n field.disabled = true\n const sts = []\n const now = new Date()\n const timestamp = '' + now.getTime()\n const dateStamp = rdf.term(now)\n // http://www.w3schools.com/jsref/jsref_obj_date.asp\n const message = kb.sym(messageStore.uri + '#' + 'Msg' + timestamp)\n\n sts.push(\n new rdf.Statement(subject, ns.wf('message'), message, messageStore)\n )\n sts.push(\n new rdf.Statement(\n message,\n ns.sioc('content'),\n kb.literal(field.value),\n messageStore\n )\n )\n sts.push(\n new rdf.Statement(message, DCT('created'), dateStamp, messageStore)\n )\n if (me) {\n sts.push(\n new rdf.Statement(message, ns.foaf('maker'), me, messageStore)\n )\n }\n\n const sendComplete = function (uri, success, body) {\n if (!success) {\n form.appendChild(\n UI.widgets.errorMessageBlock(dom, 'Error writing message: ' + body)\n )\n } else {\n const bindings = {\n '?msg': message,\n '?content': kb.literal(field.value),\n '?date': dateStamp,\n '?creator': me\n }\n renderMessage(bindings, false) // not green\n\n field.value = '' // clear from out for reuse\n field.setAttribute('class', '')\n field.disabled = false\n }\n }\n updater.update([], sts, sendComplete)\n }\n form.appendChild(dom.createElement('br'))\n\n let field, sendButton\n const turnOnInput = function () {\n creatorAndDate(lhs, me, '', null)\n\n field = dom.createElement('textarea')\n middle.innerHTML = ''\n middle.appendChild(field)\n field.rows = 3\n // field.cols = 40\n field.setAttribute('style', messageBodyStyle + 'background-color: #eef;')\n\n field.addEventListener(\n 'keyup',\n function (e) {\n // User preference?\n if (e.keyCode === 13) {\n if (!e.altKey) {\n // Alt-Enter just adds a new line\n sendMessage()\n }\n }\n },\n false\n )\n\n rhs.innerHTML = ''\n sendButton = UI.widgets.button(\n dom,\n UI.icons.iconBase + 'noun_383448.svg',\n 'Send'\n )\n sendButton.setAttribute('style', UI.style.buttonStyle + 'float: right;')\n sendButton.addEventListener('click', sendMessage, false)\n rhs.appendChild(sendButton)\n }\n\n const context = { div: middle, dom }\n login.ensureLoggedIn(context).then(context => {\n me = context.me\n turnOnInput()\n })\n\n return form\n }\n\n function nick (person) {\n const s = solidLogicSingleton.store.any(person, UI.ns.foaf('nick'))\n if (s) return '' + s.value\n return '' + utils.label(person)\n }\n\n function creatorAndDate (td1, creator, date, message) {\n const nickAnchor = td1.appendChild(anchor(nick(creator), creator))\n if (creator.uri) {\n solidLogicSingleton.store.fetcher.nowOrWhenFetched(creator.doc(), undefined, function (\n _ok,\n _body\n ) {\n nickAnchor.textContent = nick(creator)\n })\n }\n td1.appendChild(dom.createElement('br'))\n td1.appendChild(anchor(date, message))\n }\n\n // ///////////////////////////////////////////////////////////////////////\n\n function syncMessages (about, messageTable) {\n const displayed = {}\n let ele, ele2\n for (ele = messageTable.firstChild; ele; ele = ele.nextSibling) {\n if (ele.AJAR_subject) {\n displayed[ele.AJAR_subject.uri] = true\n }\n }\n const messages = kb.each(about, ns.wf('message'))\n const stored = {}\n messages.forEach(function (m) {\n stored[m.uri] = true\n if (!displayed[m.uri]) {\n addMessage(m)\n }\n })\n\n // eslint-disable-next-line space-in-parens\n for (ele = messageTable.firstChild; ele; ) {\n ele2 = ele.nextSibling\n if (ele.AJAR_subject && !stored[ele.AJAR_subject.uri]) {\n messageTable.removeChild(ele)\n }\n ele = ele2\n }\n }\n\n const deleteMessage = function (message) {\n const deletions = kb\n .statementsMatching(message)\n .concat(kb.statementsMatching(undefined, undefined, message))\n updater.update(deletions, [], function (uri, ok, body) {\n if (!ok) {\n announce.error('Cant delete messages:' + body)\n } else {\n syncMessages(subject, messageTable)\n }\n })\n }\n\n const addMessage = function (message) {\n const bindings = {\n '?msg': message,\n '?creator': kb.any(message, ns.foaf('maker')),\n '?date': kb.any(message, DCT('created')),\n '?content': kb.any(message, ns.sioc('content'))\n }\n renderMessage(bindings, true) // fresh from elsewhere\n }\n\n const renderMessage = function (bindings, fresh) {\n const creator = bindings['?creator']\n const message = bindings['?msg']\n const date = bindings['?date']\n const content = bindings['?content']\n\n const dateString = date.value\n const tr = dom.createElement('tr')\n tr.AJAR_date = dateString\n tr.AJAR_subject = message\n\n let done = false\n for (let ele = messageTable.firstChild; ; ele = ele.nextSibling) {\n if (!ele) {\n // empty\n break\n }\n if (\n (dateString > ele.AJAR_date && newestFirst) ||\n (dateString < ele.AJAR_date && !newestFirst)\n ) {\n messageTable.insertBefore(tr, ele)\n done = true\n break\n }\n }\n if (!done) {\n messageTable.appendChild(tr)\n }\n\n const td1 = dom.createElement('td')\n tr.appendChild(td1)\n creatorAndDate(td1, creator, UI.widgets.shortDate(dateString), message)\n\n const td2 = dom.createElement('td')\n tr.appendChild(td2)\n const pre = dom.createElement('p')\n pre.setAttribute(\n 'style',\n messageBodyStyle +\n (fresh ? 'background-color: #e8ffe8;' : 'background-color: #white;')\n )\n td2.appendChild(pre)\n pre.textContent = content.value\n\n const td3 = dom.createElement('td')\n tr.appendChild(td3)\n\n const delButton = dom.createElement('button')\n td3.appendChild(delButton)\n delButton.textContent = '-'\n\n tr.setAttribute('class', 'hoverControl') // See tabbedtab.css (sigh global CSS)\n delButton.setAttribute('class', 'hoverControlHide')\n delButton.setAttribute('style', 'color: red;')\n delButton.addEventListener(\n 'click',\n function (_event) {\n td3.removeChild(delButton) // Ask -- are you sure?\n const cancelButton = dom.createElement('button')\n cancelButton.textContent = 'cancel'\n td3.appendChild(cancelButton).addEventListener(\n 'click',\n function (_event) {\n td3.removeChild(sureButton)\n td3.removeChild(cancelButton)\n td3.appendChild(delButton)\n },\n false\n )\n const sureButton = dom.createElement('button')\n sureButton.textContent = 'Delete message'\n td3.appendChild(sureButton).addEventListener(\n 'click',\n function (_event) {\n td3.removeChild(sureButton)\n td3.removeChild(cancelButton)\n deleteMessage(message)\n },\n false\n )\n },\n false\n )\n }\n\n // Messages with date, author etc\n\n messageTable = dom.createElement('table')\n messageTable.fresh = false\n div.appendChild(messageTable)\n messageTable.setAttribute('style', 'width: 100%;') // fill that div!\n\n const tr = newMessageForm()\n if (newestFirst) {\n messageTable.insertBefore(tr, messageTable.firstChild) // If newestFirst\n } else {\n messageTable.appendChild(tr) // not newestFirst\n }\n\n let query\n // Do this with a live query to pull in messages from web\n if (options.query) {\n query = options.query\n } else {\n query = new rdf.Query('Messages')\n const v = {} // semicolon needed\n const vs = ['msg', 'date', 'creator', 'content']\n vs.forEach(function (x) {\n query.vars.push((v[x] = rdf.variable(x)))\n })\n query.pat.add(subject, WF('message'), v.msg)\n query.pat.add(v.msg, ns.dct('created'), v.date)\n query.pat.add(v.msg, ns.foaf('maker'), v.creator)\n query.pat.add(v.msg, ns.sioc('content'), v.content)\n }\n function doneQuery () {\n messageTable.fresh = true // any new are fresh and so will be greenish\n }\n kb.query(query, renderMessage, undefined, doneQuery)\n div.refresh = function () {\n syncMessages(subject, messageTable)\n }\n // syncMessages(subject, messageTable) // no the query will do this async\n return div\n}\n"],"mappings":";;;;;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAoC;AAAA;AAVpC;AACA;;AAM8B;;AAK9B,IAAMA,EAAE,GAAG;EAAEC,KAAK,EAALA,eAAK;EAAEC,EAAE,EAAFA,EAAE;EAAEC,GAAG,EAAHA,GAAG;EAAEC,KAAK,EAALA,KAAK;EAAEC,OAAO,EAAPA;AAAQ,CAAC;AAEtC,SAASC,WAAW,CAAEC,GAAG,EAAEC,EAAE,EAAEC,OAAO,EAAEC,YAAY,EAAEC,OAAO,EAAE;EACpEH,EAAE,GAAGA,EAAE,IAAII,+BAAmB,CAACC,KAAK;EACpCH,YAAY,GAAGA,YAAY,CAACI,GAAG,EAAE,EAAC;EAClC,IAAMZ,EAAE,GAAGF,EAAE,CAACE,EAAE;EAChB,IAAMa,EAAE,GAAGZ,GAAG,CAACa,SAAS,CAAC,oCAAoC,CAAC;EAC9D,IAAMC,GAAG,GAAGd,GAAG,CAACa,SAAS,CAAC,2BAA2B,CAAC;EAEtDL,OAAO,GAAGA,OAAO,IAAI,CAAC,CAAC;EAEvB,IAAMO,WAAW,GAAG,CAAC,CAACP,OAAO,CAACO,WAAW;EAEzC,IAAMC,gBAAgB,GACpB,iIAAiI;EACnI;;EAEA,IAAMC,GAAG,GAAGb,GAAG,CAACc,aAAa,CAAC,KAAK,CAAC;EACpC;EACA,IAAIC,YAAY,EAAC;;EAEjB,IAAIC,EAAE;EAEN,IAAMC,OAAO,GAAGZ,+BAAmB,CAACC,KAAK,CAACW,OAAO;EAEjD,IAAMC,MAAM,GAAG,SAATA,MAAM,CAAaC,IAAI,EAAEC,IAAI,EAAE;IACnC;IACA,IAAMC,CAAC,GAAGrB,GAAG,CAACc,aAAa,CAAC,GAAG,CAAC;IAChC,IAAIM,IAAI,IAAIA,IAAI,CAACE,GAAG,EAAE;MACpBD,CAAC,CAACE,YAAY,CAAC,MAAM,EAAEH,IAAI,CAACE,GAAG,CAAC;MAChCD,CAAC,CAACG,gBAAgB,CAAC,OAAO,EAAE/B,EAAE,CAACK,OAAO,CAAC2B,qBAAqB,EAAE,IAAI,CAAC;MACnEJ,CAAC,CAACE,YAAY,CAAC,OAAO,EAAE,yCAAyC,CAAC,EAAC;IACrE;;IACAF,CAAC,CAACK,WAAW,GAAGP,IAAI;IACpB,OAAOE,CAAC;EACV,CAAC;EAED,IAAMM,OAAO,GAAG,SAASA,OAAO,CAAEC,OAAO,EAAE/B,KAAK,EAAE;IAChD,IAAMgC,GAAG,GAAG7B,GAAG,CAACc,aAAa,CAAC,KAAK,CAAC;IACpCe,GAAG,CAACN,YAAY,CAAC,OAAO,EAAE1B,KAAK,IAAI,aAAa,CAAC;IACjDgB,GAAG,CAACiB,WAAW,CAACD,GAAG,CAAC;IACpBA,GAAG,CAACC,WAAW,CAAC9B,GAAG,CAAC+B,cAAc,CAACH,OAAO,CAAC,CAAC;IAC5C,OAAOC,GAAG;EACZ,CAAC;EAED,IAAMG,QAAQ,GAAG;IACfC,GAAG,EAAE,aAAUL,OAAO,EAAE;MACtBD,OAAO,CAACC,OAAO,EAAE,cAAc,CAAC;IAClC,CAAC;IACDM,IAAI,EAAE,cAAUN,OAAO,EAAE;MACvBD,OAAO,CAACC,OAAO,EAAE,cAAc,CAAC;IAClC,CAAC;IACDO,KAAK,EAAE,eAAUP,OAAO,EAAE;MACxBD,OAAO,CAACC,OAAO,EAAE,cAAc,CAAC;IAClC;EACF,CAAC;;EAED;EACA;EACA,IAAMQ,cAAc,GAAG,SAAjBA,cAAc,GAAe;IACjC,IAAMC,IAAI,GAAGrC,GAAG,CAACc,aAAa,CAAC,IAAI,CAAC;IACpC,IAAMwB,GAAG,GAAGtC,GAAG,CAACc,aAAa,CAAC,IAAI,CAAC;IACnC,IAAMyB,MAAM,GAAGvC,GAAG,CAACc,aAAa,CAAC,IAAI,CAAC;IACtC,IAAM0B,GAAG,GAAGxC,GAAG,CAACc,aAAa,CAAC,IAAI,CAAC;IACnCuB,IAAI,CAACP,WAAW,CAACQ,GAAG,CAAC;IACrBD,IAAI,CAACP,WAAW,CAACS,MAAM,CAAC;IACxBF,IAAI,CAACP,WAAW,CAACU,GAAG,CAAC;IACrBH,IAAI,CAACI,SAAS,GAAG,sBAAsB,EAAC;;IAExC,IAAMC,WAAW,GAAG,SAAdA,WAAW,GAAe;MAC9B;MACA;MACAC,KAAK,CAACpB,YAAY,CAAC,OAAO,EAAE,aAAa,CAAC;MAC1CoB,KAAK,CAACC,QAAQ,GAAG,IAAI;MACrB,IAAMC,GAAG,GAAG,EAAE;MACd,IAAMC,GAAG,GAAG,IAAIC,IAAI,EAAE;MACtB,IAAMC,SAAS,GAAG,EAAE,GAAGF,GAAG,CAACG,OAAO,EAAE;MACpC,IAAMC,SAAS,GAAGtD,GAAG,CAACwB,IAAI,CAAC0B,GAAG,CAAC;MAC/B;MACA,IAAMlB,OAAO,GAAG3B,EAAE,CAACkD,GAAG,CAAChD,YAAY,CAACmB,GAAG,GAAG,GAAG,GAAG,KAAK,GAAG0B,SAAS,CAAC;MAElEH,GAAG,CAACO,IAAI,CACN,IAAIxD,GAAG,CAACyD,SAAS,CAACnD,OAAO,EAAEP,EAAE,CAAC2D,EAAE,CAAC,SAAS,CAAC,EAAE1B,OAAO,EAAEzB,YAAY,CAAC,CACpE;MACD0C,GAAG,CAACO,IAAI,CACN,IAAIxD,GAAG,CAACyD,SAAS,CACfzB,OAAO,EACPjC,EAAE,CAAC4D,IAAI,CAAC,SAAS,CAAC,EAClBtD,EAAE,CAACuD,OAAO,CAACb,KAAK,CAACc,KAAK,CAAC,EACvBtD,YAAY,CACb,CACF;MACD0C,GAAG,CAACO,IAAI,CACN,IAAIxD,GAAG,CAACyD,SAAS,CAACzB,OAAO,EAAElB,GAAG,CAAC,SAAS,CAAC,EAAEwC,SAAS,EAAE/C,YAAY,CAAC,CACpE;MACD,IAAIa,EAAE,EAAE;QACN6B,GAAG,CAACO,IAAI,CACN,IAAIxD,GAAG,CAACyD,SAAS,CAACzB,OAAO,EAAEjC,EAAE,CAAC+D,IAAI,CAAC,OAAO,CAAC,EAAE1C,EAAE,EAAEb,YAAY,CAAC,CAC/D;MACH;MAEA,IAAMwD,YAAY,GAAG,SAAfA,YAAY,CAAarC,GAAG,EAAEsC,OAAO,EAAEC,IAAI,EAAE;QACjD,IAAI,CAACD,OAAO,EAAE;UACZvB,IAAI,CAACP,WAAW,CACdrC,EAAE,CAACK,OAAO,CAACgE,iBAAiB,CAAC9D,GAAG,EAAE,yBAAyB,GAAG6D,IAAI,CAAC,CACpE;QACH,CAAC,MAAM;UACL,IAAME,QAAQ,GAAG;YACf,MAAM,EAAEnC,OAAO;YACf,UAAU,EAAE3B,EAAE,CAACuD,OAAO,CAACb,KAAK,CAACc,KAAK,CAAC;YACnC,OAAO,EAAEP,SAAS;YAClB,UAAU,EAAElC;UACd,CAAC;UACDgD,aAAa,CAACD,QAAQ,EAAE,KAAK,CAAC,EAAC;;UAE/BpB,KAAK,CAACc,KAAK,GAAG,EAAE,EAAC;UACjBd,KAAK,CAACpB,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC;UAC/BoB,KAAK,CAACC,QAAQ,GAAG,KAAK;QACxB;MACF,CAAC;MACD3B,OAAO,CAACgD,MAAM,CAAC,EAAE,EAAEpB,GAAG,EAAEc,YAAY,CAAC;IACvC,CAAC;IACDtB,IAAI,CAACP,WAAW,CAAC9B,GAAG,CAACc,aAAa,CAAC,IAAI,CAAC,CAAC;IAEzC,IAAI6B,KAAK,EAAEuB,UAAU;IACrB,IAAMC,WAAW,GAAG,SAAdA,WAAW,GAAe;MAC9BC,cAAc,CAAC9B,GAAG,EAAEtB,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC;MAEjC2B,KAAK,GAAG3C,GAAG,CAACc,aAAa,CAAC,UAAU,CAAC;MACrCyB,MAAM,CAAC8B,SAAS,GAAG,EAAE;MACrB9B,MAAM,CAACT,WAAW,CAACa,KAAK,CAAC;MACzBA,KAAK,CAAC2B,IAAI,GAAG,CAAC;MACd;MACA3B,KAAK,CAACpB,YAAY,CAAC,OAAO,EAAEX,gBAAgB,GAAG,yBAAyB,CAAC;MAEzE+B,KAAK,CAACnB,gBAAgB,CACpB,OAAO,EACP,UAAU+C,CAAC,EAAE;QACX;QACA,IAAIA,CAAC,CAACC,OAAO,KAAK,EAAE,EAAE;UACpB,IAAI,CAACD,CAAC,CAACE,MAAM,EAAE;YACb;YACA/B,WAAW,EAAE;UACf;QACF;MACF,CAAC,EACD,KAAK,CACN;MAEDF,GAAG,CAAC6B,SAAS,GAAG,EAAE;MAClBH,UAAU,GAAGzE,EAAE,CAACK,OAAO,CAAC4E,MAAM,CAC5B1E,GAAG,EACHP,EAAE,CAACC,KAAK,CAACiF,QAAQ,GAAG,iBAAiB,EACrC,MAAM,CACP;MACDT,UAAU,CAAC3C,YAAY,CAAC,OAAO,EAAE9B,EAAE,CAACI,KAAK,CAAC+E,WAAW,GAAG,eAAe,CAAC;MACxEV,UAAU,CAAC1C,gBAAgB,CAAC,OAAO,EAAEkB,WAAW,EAAE,KAAK,CAAC;MACxDF,GAAG,CAACV,WAAW,CAACoC,UAAU,CAAC;IAC7B,CAAC;IAED,IAAMW,OAAO,GAAG;MAAEhE,GAAG,EAAE0B,MAAM;MAAEvC,GAAG,EAAHA;IAAI,CAAC;IACpC8E,KAAK,CAACC,cAAc,CAACF,OAAO,CAAC,CAACG,IAAI,CAAC,UAAAH,OAAO,EAAI;MAC5C7D,EAAE,GAAG6D,OAAO,CAAC7D,EAAE;MACfmD,WAAW,EAAE;IACf,CAAC,CAAC;IAEF,OAAO9B,IAAI;EACb,CAAC;EAED,SAAS4C,IAAI,CAAEC,MAAM,EAAE;IACrB,IAAMC,CAAC,GAAG9E,+BAAmB,CAACC,KAAK,CAAC8E,GAAG,CAACF,MAAM,EAAEzF,EAAE,CAACE,EAAE,CAAC+D,IAAI,CAAC,MAAM,CAAC,CAAC;IACnE,IAAIyB,CAAC,EAAE,OAAO,EAAE,GAAGA,CAAC,CAAC1B,KAAK;IAC1B,OAAO,EAAE,GAAG4B,KAAK,CAACC,KAAK,CAACJ,MAAM,CAAC;EACjC;EAEA,SAASd,cAAc,CAAEmB,GAAG,EAAEC,OAAO,EAAEC,IAAI,EAAE7D,OAAO,EAAE;IACpD,IAAM8D,UAAU,GAAGH,GAAG,CAACzD,WAAW,CAACZ,MAAM,CAAC+D,IAAI,CAACO,OAAO,CAAC,EAAEA,OAAO,CAAC,CAAC;IAClE,IAAIA,OAAO,CAAClE,GAAG,EAAE;MACfjB,+BAAmB,CAACC,KAAK,CAACqF,OAAO,CAACC,gBAAgB,CAACJ,OAAO,CAACjF,GAAG,EAAE,EAAEsF,SAAS,EAAE,UAC3EC,GAAG,EACHC,KAAK,EACL;QACAL,UAAU,CAAChE,WAAW,GAAGuD,IAAI,CAACO,OAAO,CAAC;MACxC,CAAC,CAAC;IACJ;IACAD,GAAG,CAACzD,WAAW,CAAC9B,GAAG,CAACc,aAAa,CAAC,IAAI,CAAC,CAAC;IACxCyE,GAAG,CAACzD,WAAW,CAACZ,MAAM,CAACuE,IAAI,EAAE7D,OAAO,CAAC,CAAC;EACxC;;EAEA;;EAEA,SAASoE,YAAY,CAAEC,KAAK,EAAElF,YAAY,EAAE;IAC1C,IAAMmF,SAAS,GAAG,CAAC,CAAC;IACpB,IAAIC,GAAG,EAAEC,IAAI;IACb,KAAKD,GAAG,GAAGpF,YAAY,CAACsF,UAAU,EAAEF,GAAG,EAAEA,GAAG,GAAGA,GAAG,CAACG,WAAW,EAAE;MAC9D,IAAIH,GAAG,CAACI,YAAY,EAAE;QACpBL,SAAS,CAACC,GAAG,CAACI,YAAY,CAACjF,GAAG,CAAC,GAAG,IAAI;MACxC;IACF;IACA,IAAMkF,QAAQ,GAAGvG,EAAE,CAACwG,IAAI,CAACR,KAAK,EAAEtG,EAAE,CAAC2D,EAAE,CAAC,SAAS,CAAC,CAAC;IACjD,IAAMoD,MAAM,GAAG,CAAC,CAAC;IACjBF,QAAQ,CAACG,OAAO,CAAC,UAAUC,CAAC,EAAE;MAC5BF,MAAM,CAACE,CAAC,CAACtF,GAAG,CAAC,GAAG,IAAI;MACpB,IAAI,CAAC4E,SAAS,CAACU,CAAC,CAACtF,GAAG,CAAC,EAAE;QACrBuF,UAAU,CAACD,CAAC,CAAC;MACf;IACF,CAAC,CAAC;;IAEF;IACA,KAAKT,GAAG,GAAGpF,YAAY,CAACsF,UAAU,EAAEF,GAAG,GAAI;MACzCC,IAAI,GAAGD,GAAG,CAACG,WAAW;MACtB,IAAIH,GAAG,CAACI,YAAY,IAAI,CAACG,MAAM,CAACP,GAAG,CAACI,YAAY,CAACjF,GAAG,CAAC,EAAE;QACrDP,YAAY,CAAC+F,WAAW,CAACX,GAAG,CAAC;MAC/B;MACAA,GAAG,GAAGC,IAAI;IACZ;EACF;EAEA,IAAMW,aAAa,GAAG,SAAhBA,aAAa,CAAanF,OAAO,EAAE;IACvC,IAAMoF,SAAS,GAAG/G,EAAE,CACjBgH,kBAAkB,CAACrF,OAAO,CAAC,CAC3BsF,MAAM,CAACjH,EAAE,CAACgH,kBAAkB,CAACpB,SAAS,EAAEA,SAAS,EAAEjE,OAAO,CAAC,CAAC;IAC/DX,OAAO,CAACgD,MAAM,CAAC+C,SAAS,EAAE,EAAE,EAAE,UAAU1F,GAAG,EAAE6F,EAAE,EAAEtD,IAAI,EAAE;MACrD,IAAI,CAACsD,EAAE,EAAE;QACPnF,QAAQ,CAACG,KAAK,CAAC,uBAAuB,GAAG0B,IAAI,CAAC;MAChD,CAAC,MAAM;QACLmC,YAAY,CAAC9F,OAAO,EAAEa,YAAY,CAAC;MACrC;IACF,CAAC,CAAC;EACJ,CAAC;EAED,IAAM8F,UAAU,GAAG,SAAbA,UAAU,CAAajF,OAAO,EAAE;IACpC,IAAMmC,QAAQ,GAAG;MACf,MAAM,EAAEnC,OAAO;MACf,UAAU,EAAE3B,EAAE,CAACmF,GAAG,CAACxD,OAAO,EAAEjC,EAAE,CAAC+D,IAAI,CAAC,OAAO,CAAC,CAAC;MAC7C,OAAO,EAAEzD,EAAE,CAACmF,GAAG,CAACxD,OAAO,EAAElB,GAAG,CAAC,SAAS,CAAC,CAAC;MACxC,UAAU,EAAET,EAAE,CAACmF,GAAG,CAACxD,OAAO,EAAEjC,EAAE,CAAC4D,IAAI,CAAC,SAAS,CAAC;IAChD,CAAC;IACDS,aAAa,CAACD,QAAQ,EAAE,IAAI,CAAC,EAAC;EAChC,CAAC;;EAED,IAAMC,aAAa,GAAG,SAAhBA,aAAa,CAAaD,QAAQ,EAAEqD,KAAK,EAAE;IAC/C,IAAM5B,OAAO,GAAGzB,QAAQ,CAAC,UAAU,CAAC;IACpC,IAAMnC,OAAO,GAAGmC,QAAQ,CAAC,MAAM,CAAC;IAChC,IAAM0B,IAAI,GAAG1B,QAAQ,CAAC,OAAO,CAAC;IAC9B,IAAMsD,OAAO,GAAGtD,QAAQ,CAAC,UAAU,CAAC;IAEpC,IAAMuD,UAAU,GAAG7B,IAAI,CAAChC,KAAK;IAC7B,IAAM8D,EAAE,GAAGvH,GAAG,CAACc,aAAa,CAAC,IAAI,CAAC;IAClCyG,EAAE,CAAC9E,SAAS,GAAG6E,UAAU;IACzBC,EAAE,CAAChB,YAAY,GAAG3E,OAAO;IAEzB,IAAI4F,IAAI,GAAG,KAAK;IAChB,KAAK,IAAIrB,GAAG,GAAGpF,YAAY,CAACsF,UAAU,GAAIF,GAAG,GAAGA,GAAG,CAACG,WAAW,EAAE;MAC/D,IAAI,CAACH,GAAG,EAAE;QACR;QACA;MACF;MACA,IACGmB,UAAU,GAAGnB,GAAG,CAAC1D,SAAS,IAAI9B,WAAW,IACzC2G,UAAU,GAAGnB,GAAG,CAAC1D,SAAS,IAAI,CAAC9B,WAAY,EAC5C;QACAI,YAAY,CAAC0G,YAAY,CAACF,EAAE,EAAEpB,GAAG,CAAC;QAClCqB,IAAI,GAAG,IAAI;QACX;MACF;IACF;IACA,IAAI,CAACA,IAAI,EAAE;MACTzG,YAAY,CAACe,WAAW,CAACyF,EAAE,CAAC;IAC9B;IAEA,IAAMhC,GAAG,GAAGvF,GAAG,CAACc,aAAa,CAAC,IAAI,CAAC;IACnCyG,EAAE,CAACzF,WAAW,CAACyD,GAAG,CAAC;IACnBnB,cAAc,CAACmB,GAAG,EAAEC,OAAO,EAAE/F,EAAE,CAACK,OAAO,CAAC4H,SAAS,CAACJ,UAAU,CAAC,EAAE1F,OAAO,CAAC;IAEvE,IAAM+F,GAAG,GAAG3H,GAAG,CAACc,aAAa,CAAC,IAAI,CAAC;IACnCyG,EAAE,CAACzF,WAAW,CAAC6F,GAAG,CAAC;IACnB,IAAM9F,GAAG,GAAG7B,GAAG,CAACc,aAAa,CAAC,GAAG,CAAC;IAClCe,GAAG,CAACN,YAAY,CACd,OAAO,EACPX,gBAAgB,IACbwG,KAAK,GAAG,4BAA4B,GAAG,2BAA2B,CAAC,CACvE;IACDO,GAAG,CAAC7F,WAAW,CAACD,GAAG,CAAC;IACpBA,GAAG,CAACH,WAAW,GAAG2F,OAAO,CAAC5D,KAAK;IAE/B,IAAMmE,GAAG,GAAG5H,GAAG,CAACc,aAAa,CAAC,IAAI,CAAC;IACnCyG,EAAE,CAACzF,WAAW,CAAC8F,GAAG,CAAC;IAEnB,IAAMC,SAAS,GAAG7H,GAAG,CAACc,aAAa,CAAC,QAAQ,CAAC;IAC7C8G,GAAG,CAAC9F,WAAW,CAAC+F,SAAS,CAAC;IAC1BA,SAAS,CAACnG,WAAW,GAAG,GAAG;IAE3B6F,EAAE,CAAChG,YAAY,CAAC,OAAO,EAAE,cAAc,CAAC,EAAC;IACzCsG,SAAS,CAACtG,YAAY,CAAC,OAAO,EAAE,kBAAkB,CAAC;IACnDsG,SAAS,CAACtG,YAAY,CAAC,OAAO,EAAE,aAAa,CAAC;IAC9CsG,SAAS,CAACrG,gBAAgB,CACxB,OAAO,EACP,UAAUsG,MAAM,EAAE;MAChBF,GAAG,CAACd,WAAW,CAACe,SAAS,CAAC,EAAC;MAC3B,IAAME,YAAY,GAAG/H,GAAG,CAACc,aAAa,CAAC,QAAQ,CAAC;MAChDiH,YAAY,CAACrG,WAAW,GAAG,QAAQ;MACnCkG,GAAG,CAAC9F,WAAW,CAACiG,YAAY,CAAC,CAACvG,gBAAgB,CAC5C,OAAO,EACP,UAAUsG,MAAM,EAAE;QAChBF,GAAG,CAACd,WAAW,CAACkB,UAAU,CAAC;QAC3BJ,GAAG,CAACd,WAAW,CAACiB,YAAY,CAAC;QAC7BH,GAAG,CAAC9F,WAAW,CAAC+F,SAAS,CAAC;MAC5B,CAAC,EACD,KAAK,CACN;MACD,IAAMG,UAAU,GAAGhI,GAAG,CAACc,aAAa,CAAC,QAAQ,CAAC;MAC9CkH,UAAU,CAACtG,WAAW,GAAG,gBAAgB;MACzCkG,GAAG,CAAC9F,WAAW,CAACkG,UAAU,CAAC,CAACxG,gBAAgB,CAC1C,OAAO,EACP,UAAUsG,MAAM,EAAE;QAChBF,GAAG,CAACd,WAAW,CAACkB,UAAU,CAAC;QAC3BJ,GAAG,CAACd,WAAW,CAACiB,YAAY,CAAC;QAC7BhB,aAAa,CAACnF,OAAO,CAAC;MACxB,CAAC,EACD,KAAK,CACN;IACH,CAAC,EACD,KAAK,CACN;EACH,CAAC;;EAED;;EAEAb,YAAY,GAAGf,GAAG,CAACc,aAAa,CAAC,OAAO,CAAC;EACzCC,YAAY,CAACqG,KAAK,GAAG,KAAK;EAC1BvG,GAAG,CAACiB,WAAW,CAACf,YAAY,CAAC;EAC7BA,YAAY,CAACQ,YAAY,CAAC,OAAO,EAAE,cAAc,CAAC,EAAC;;EAEnD,IAAMgG,EAAE,GAAGnF,cAAc,EAAE;EAC3B,IAAIzB,WAAW,EAAE;IACfI,YAAY,CAAC0G,YAAY,CAACF,EAAE,EAAExG,YAAY,CAACsF,UAAU,CAAC,EAAC;EACzD,CAAC,MAAM;IACLtF,YAAY,CAACe,WAAW,CAACyF,EAAE,CAAC,EAAC;EAC/B;;EAEA,IAAIU,KAAK;EACT;EACA,IAAI7H,OAAO,CAAC6H,KAAK,EAAE;IACjBA,KAAK,GAAG7H,OAAO,CAAC6H,KAAK;EACvB,CAAC,MAAM;IACLA,KAAK,GAAG,IAAIrI,GAAG,CAACsI,KAAK,CAAC,UAAU,CAAC;IACjC,IAAMC,CAAC,GAAG,CAAC,CAAC,EAAC;IACb,IAAMC,EAAE,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC;IAChDA,EAAE,CAACzB,OAAO,CAAC,UAAU0B,CAAC,EAAE;MACtBJ,KAAK,CAACK,IAAI,CAAClF,IAAI,CAAE+E,CAAC,CAACE,CAAC,CAAC,GAAGzI,GAAG,CAAC2I,QAAQ,CAACF,CAAC,CAAC,CAAE;IAC3C,CAAC,CAAC;IACFJ,KAAK,CAACO,GAAG,CAACC,GAAG,CAACvI,OAAO,EAAEM,EAAE,CAAC,SAAS,CAAC,EAAE2H,CAAC,CAACO,GAAG,CAAC;IAC5CT,KAAK,CAACO,GAAG,CAACC,GAAG,CAACN,CAAC,CAACO,GAAG,EAAE/I,EAAE,CAACgJ,GAAG,CAAC,SAAS,CAAC,EAAER,CAAC,CAAC1C,IAAI,CAAC;IAC/CwC,KAAK,CAACO,GAAG,CAACC,GAAG,CAACN,CAAC,CAACO,GAAG,EAAE/I,EAAE,CAAC+D,IAAI,CAAC,OAAO,CAAC,EAAEyE,CAAC,CAAC3C,OAAO,CAAC;IACjDyC,KAAK,CAACO,GAAG,CAACC,GAAG,CAACN,CAAC,CAACO,GAAG,EAAE/I,EAAE,CAAC4D,IAAI,CAAC,SAAS,CAAC,EAAE4E,CAAC,CAACd,OAAO,CAAC;EACrD;EACA,SAASuB,SAAS,GAAI;IACpB7H,YAAY,CAACqG,KAAK,GAAG,IAAI,EAAC;EAC5B;;EACAnH,EAAE,CAACgI,KAAK,CAACA,KAAK,EAAEjE,aAAa,EAAE6B,SAAS,EAAE+C,SAAS,CAAC;EACpD/H,GAAG,CAACgI,OAAO,GAAG,YAAY;IACxB7C,YAAY,CAAC9F,OAAO,EAAEa,YAAY,CAAC;EACrC,CAAC;EACD;EACA,OAAOF,GAAG;AACZ"}
@@ -1 +1 @@
1
- {"version":3,"file":"noun_Camera_1618446_000000.js","names":[],"sources":["../src/noun_Camera_1618446_000000.js"],"sourcesContent":["export default 'data:image/svg;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2ZXJzaW9uPSIxLjEiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMTAwIDEwMCIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMTAwIDEwMCIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PGc+PHBhdGggZD0iTTcyLjkyNiwzNC4zMzNINjIuNDc4bC0yLjUtNS42NjZINDAuMDIybC0yLjUsNS42NjZoLTIuMjc1di0zLjcwN2gtNnYzLjcwN2gtMi4xNzNjLTEuOTMsMC0zLjUsMS41Ny0zLjUsMy41djMwICAgYzAsMS45MywxLjU3LDMuNSwzLjUsMy41aDQ1Ljg1MmMxLjkzLDAsMy41LTEuNTcsMy41LTMuNXYtMzBDNzYuNDI2LDM1LjkwMyw3NC44NTUsMzQuMzMzLDcyLjkyNiwzNC4zMzN6IE03My40MjYsNjcuODMzICAgYzAsMC4yNzUtMC4yMjUsMC41LTAuNSwwLjVIMjcuMDc0Yy0wLjI3NSwwLTAuNS0wLjIyNS0wLjUtMC41di0zMGMwLTAuMjc1LDAuMjI1LTAuNSwwLjUtMC41aDEyLjQwM2wyLjUtNS42NjZoMTYuMDQ1bDIuNSw1LjY2NiAgIGgxMi40MDNjMC4yNzUsMCwwLjUsMC4yMjUsMC41LDAuNVY2Ny44MzN6Ij48L3BhdGg+PHBhdGggZD0iTTUwLDM4Ljc2NmMtNy4yOTgsMC0xMy4yMzQsNS45MzctMTMuMjM0LDEzLjIzNFM0Mi43MDIsNjUuMjM0LDUwLDY1LjIzNFM2My4yMzQsNTkuMjk4LDYzLjIzNCw1MlM1Ny4yOTgsMzguNzY2LDUwLDM4Ljc2NiAgIHogTTUwLDYyLjIzNGMtNS42NDQsMC0xMC4yMzQtNC41OTEtMTAuMjM0LTEwLjIzNFM0NC4zNTYsNDEuNzY2LDUwLDQxLjc2NlM2MC4yMzQsNDYuMzU2LDYwLjIzNCw1MlM1NS42NDQsNjIuMjM0LDUwLDYyLjIzNHoiPjwvcGF0aD48cGF0aCBkPSJNNTAuMDAxLDQzLjI0MmMtNC44MywwLTguNzYsMy45MjktOC43Niw4Ljc1OHMzLjkzLDguNzU4LDguNzYsOC43NThjNC44MjksMCw4Ljc1OC0zLjkyOSw4Ljc1OC04Ljc1OCAgIFM1NC44Myw0My4yNDIsNTAuMDAxLDQzLjI0MnogTTUwLjAwMSw1OS43NThjLTQuMjc4LDAtNy43Ni0zLjQ4LTcuNzYtNy43NThzMy40ODEtNy43NTgsNy43Ni03Ljc1OCAgIGM0LjI3NywwLDcuNzU4LDMuNDgsNy43NTgsNy43NThTNTQuMjc4LDU5Ljc1OCw1MC4wMDEsNTkuNzU4eiI+PC9wYXRoPjwvZz48L3N2Zz4='\n"],"mappings":";;;;;;eAAe,oiD"}
1
+ {"version":3,"file":"noun_Camera_1618446_000000.js","names":[],"sources":["../src/noun_Camera_1618446_000000.js"],"sourcesContent":["export default 'data:image/svg;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2ZXJzaW9uPSIxLjEiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMTAwIDEwMCIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMTAwIDEwMCIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PGc+PHBhdGggZD0iTTcyLjkyNiwzNC4zMzNINjIuNDc4bC0yLjUtNS42NjZINDAuMDIybC0yLjUsNS42NjZoLTIuMjc1di0zLjcwN2gtNnYzLjcwN2gtMi4xNzNjLTEuOTMsMC0zLjUsMS41Ny0zLjUsMy41djMwICAgYzAsMS45MywxLjU3LDMuNSwzLjUsMy41aDQ1Ljg1MmMxLjkzLDAsMy41LTEuNTcsMy41LTMuNXYtMzBDNzYuNDI2LDM1LjkwMyw3NC44NTUsMzQuMzMzLDcyLjkyNiwzNC4zMzN6IE03My40MjYsNjcuODMzICAgYzAsMC4yNzUtMC4yMjUsMC41LTAuNSwwLjVIMjcuMDc0Yy0wLjI3NSwwLTAuNS0wLjIyNS0wLjUtMC41di0zMGMwLTAuMjc1LDAuMjI1LTAuNSwwLjUtMC41aDEyLjQwM2wyLjUtNS42NjZoMTYuMDQ1bDIuNSw1LjY2NiAgIGgxMi40MDNjMC4yNzUsMCwwLjUsMC4yMjUsMC41LDAuNVY2Ny44MzN6Ij48L3BhdGg+PHBhdGggZD0iTTUwLDM4Ljc2NmMtNy4yOTgsMC0xMy4yMzQsNS45MzctMTMuMjM0LDEzLjIzNFM0Mi43MDIsNjUuMjM0LDUwLDY1LjIzNFM2My4yMzQsNTkuMjk4LDYzLjIzNCw1MlM1Ny4yOTgsMzguNzY2LDUwLDM4Ljc2NiAgIHogTTUwLDYyLjIzNGMtNS42NDQsMC0xMC4yMzQtNC41OTEtMTAuMjM0LTEwLjIzNFM0NC4zNTYsNDEuNzY2LDUwLDQxLjc2NlM2MC4yMzQsNDYuMzU2LDYwLjIzNCw1MlM1NS42NDQsNjIuMjM0LDUwLDYyLjIzNHoiPjwvcGF0aD48cGF0aCBkPSJNNTAuMDAxLDQzLjI0MmMtNC44MywwLTguNzYsMy45MjktOC43Niw4Ljc1OHMzLjkzLDguNzU4LDguNzYsOC43NThjNC44MjksMCw4Ljc1OC0zLjkyOSw4Ljc1OC04Ljc1OCAgIFM1NC44Myw0My4yNDIsNTAuMDAxLDQzLjI0MnogTTUwLjAwMSw1OS43NThjLTQuMjc4LDAtNy43Ni0zLjQ4LTcuNzYtNy43NThzMy40ODEtNy43NTgsNy43Ni03Ljc1OCAgIGM0LjI3NywwLDcuNzU4LDMuNDgsNy43NTgsNy43NThTNTQuMjc4LDU5Ljc1OCw1MC4wMDEsNTkuNzU4eiI+PC9wYXRoPjwvZz48L3N2Zz4='\n"],"mappings":";;;;;;eAAe,oiDAAoiD;AAAA"}
package/lib/ns.js CHANGED
@@ -1,20 +1,18 @@
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
  var _solidNamespace = _interopRequireDefault(require("solid-namespace"));
8
-
9
6
  var $rdf = _interopRequireWildcard(require("rdflib"));
10
-
11
7
  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); }
12
-
13
8
  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; }
14
-
15
9
  // Namespaces we commonly use and have common prefixes for around Solid
16
10
  //
11
+
17
12
  // Delegate to this which takes RDFlib as param.
18
- module.exports = (0, _solidNamespace["default"])($rdf); // export * from ns2
13
+
14
+ module.exports = (0, _solidNamespace["default"])($rdf);
15
+ // export * from ns2
16
+
19
17
  // ends
20
18
  //# sourceMappingURL=ns.js.map
package/lib/ns.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"ns.js","names":["module","exports","solidNamespace","$rdf"],"sources":["../src/ns.js"],"sourcesContent":["// Namespaces we commonly use and have common prefixes for around Solid\n//\n\nimport solidNamespace from 'solid-namespace' // Delegate to this which takes RDFlib as param.\nimport * as $rdf from 'rdflib'\n\nmodule.exports = solidNamespace($rdf)\n// export * from ns2\n\n// ends\n"],"mappings":";;;;;;AAGA;;AACA;;;;;;AAJA;AACA;AAE6C;AAG7CA,MAAM,CAACC,OAAP,GAAiB,IAAAC,0BAAA,EAAeC,IAAf,CAAjB,C,CACA;AAEA"}
1
+ {"version":3,"file":"ns.js","names":["module","exports","solidNamespace","$rdf"],"sources":["../src/ns.js"],"sourcesContent":["// Namespaces we commonly use and have common prefixes for around Solid\n//\n\nimport solidNamespace from 'solid-namespace' // Delegate to this which takes RDFlib as param.\nimport * as $rdf from 'rdflib'\n\nmodule.exports = solidNamespace($rdf)\n// export * from ns2\n\n// ends\n"],"mappings":";;;;AAGA;AACA;AAA8B;AAAA;AAJ9B;AACA;;AAE6C;;AAG7CA,MAAM,CAACC,OAAO,GAAG,IAAAC,0BAAc,EAACC,IAAI,CAAC;AACrC;;AAEA"}