solid-ui 2.6.1-d631dfca → 2.6.1-dc6afe0

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 (366) hide show
  1. package/LICENSE.md +3 -1
  2. package/README.md +85 -26
  3. package/dist/acl/access-controller.js +293 -0
  4. package/dist/acl/access-controller.js.map +1 -0
  5. package/dist/acl/access-groups.js +372 -0
  6. package/dist/acl/access-groups.js.map +1 -0
  7. package/dist/acl/acl-control.js +217 -0
  8. package/dist/acl/acl-control.js.map +1 -0
  9. package/dist/acl/acl.js +550 -0
  10. package/dist/acl/acl.js.map +1 -0
  11. package/dist/acl/add-agent-buttons.js +260 -0
  12. package/dist/acl/add-agent-buttons.js.map +1 -0
  13. package/dist/acl/index.js +35 -0
  14. package/dist/acl/index.js.map +1 -0
  15. package/dist/acl/types.js +7 -0
  16. package/dist/acl/types.js.map +1 -0
  17. package/{lib → dist}/chat/keys.d.ts +1 -1
  18. package/{lib → dist}/chat/keys.d.ts.map +1 -1
  19. package/dist/chat/keys.js +148 -0
  20. package/dist/chat/keys.js.map +1 -0
  21. package/dist/chat/signature.js +71 -0
  22. package/dist/chat/signature.js.map +1 -0
  23. package/dist/create/create.js +288 -0
  24. package/dist/create/create.js.map +1 -0
  25. package/dist/create/index.js +8 -0
  26. package/dist/create/index.js.map +1 -0
  27. package/dist/create/types.js +3 -0
  28. package/dist/create/types.js.map +1 -0
  29. package/dist/debug.js +23 -0
  30. package/dist/debug.js.map +1 -0
  31. package/dist/footer/index.js +72 -0
  32. package/dist/footer/index.js.map +1 -0
  33. package/dist/header/empty-profile.js +14 -0
  34. package/dist/header/empty-profile.js.map +1 -0
  35. package/dist/header/index.js +305 -0
  36. package/dist/header/index.js.map +1 -0
  37. package/dist/iconBase.js +40 -0
  38. package/dist/iconBase.js.map +1 -0
  39. package/dist/icons/solid_logo.js.map +1 -0
  40. package/{lib → dist}/index.d.ts +7 -9
  41. package/dist/index.d.ts.map +1 -0
  42. package/dist/index.js +162 -0
  43. package/dist/index.js.map +1 -0
  44. package/{lib → dist}/log.js +85 -99
  45. package/dist/log.js.map +1 -0
  46. package/dist/login/login.js +910 -0
  47. package/dist/login/login.js.map +1 -0
  48. package/dist/matrix/index.js +8 -0
  49. package/dist/matrix/index.js.map +1 -0
  50. package/dist/matrix/matrix.js +253 -0
  51. package/dist/matrix/matrix.js.map +1 -0
  52. package/dist/matrix/types.js +3 -0
  53. package/dist/matrix/types.js.map +1 -0
  54. package/dist/media/index.js +9 -0
  55. package/dist/media/index.js.map +1 -0
  56. package/dist/media/media-capture.js +198 -0
  57. package/dist/media/media-capture.js.map +1 -0
  58. package/dist/pad.js +795 -0
  59. package/dist/pad.js.map +1 -0
  60. package/dist/participation.js +228 -0
  61. package/dist/participation.js.map +1 -0
  62. package/dist/solid-ui.esm.js +25542 -0
  63. package/dist/solid-ui.esm.js.map +1 -0
  64. package/dist/solid-ui.esm.min.js +43 -0
  65. package/dist/solid-ui.esm.min.js.map +1 -0
  66. package/dist/solid-ui.js +23485 -68926
  67. package/dist/solid-ui.js.map +1 -1
  68. package/dist/solid-ui.min.js +40 -2
  69. package/dist/solid-ui.min.js.map +1 -1
  70. package/dist/tabs.js +398 -0
  71. package/dist/tabs.js.map +1 -0
  72. package/dist/utils/headerFooterHelpers.js +122 -0
  73. package/dist/utils/headerFooterHelpers.js.map +1 -0
  74. package/{lib → dist}/utils/keyHelpers/accessData.d.ts +3 -3
  75. package/{lib → dist}/utils/keyHelpers/accessData.d.ts.map +1 -1
  76. package/dist/utils/keyHelpers/accessData.js +108 -0
  77. package/dist/utils/keyHelpers/accessData.js.map +1 -0
  78. package/dist/utils/keyHelpers/acl.js +112 -0
  79. package/dist/utils/keyHelpers/acl.js.map +1 -0
  80. package/{lib → dist}/utils/keyHelpers/otherHelpers.d.ts +1 -1
  81. package/{lib → dist}/utils/keyHelpers/otherHelpers.d.ts.map +1 -1
  82. package/dist/utils/keyHelpers/otherHelpers.js +19 -0
  83. package/dist/utils/keyHelpers/otherHelpers.js.map +1 -0
  84. package/dist/utils/label.js +150 -0
  85. package/dist/utils/label.js.map +1 -0
  86. package/dist/versionInfo.js +33 -0
  87. package/dist/versionInfo.js.map +1 -0
  88. package/dist/widgets/buttons/iconLinks.js +49 -0
  89. package/dist/widgets/buttons/iconLinks.js.map +1 -0
  90. package/dist/widgets/buttons.js +1355 -0
  91. package/dist/widgets/buttons.js.map +1 -0
  92. package/dist/widgets/error.js +42 -0
  93. package/dist/widgets/error.js.map +1 -0
  94. package/dist/widgets/forms/autocomplete/autocompleteBar.js +162 -0
  95. package/dist/widgets/forms/autocomplete/autocompleteBar.js.map +1 -0
  96. package/dist/widgets/forms/autocomplete/autocompleteField.js +235 -0
  97. package/dist/widgets/forms/autocomplete/autocompleteField.js.map +1 -0
  98. package/dist/widgets/forms/autocomplete/autocompletePicker.js +296 -0
  99. package/dist/widgets/forms/autocomplete/autocompletePicker.js.map +1 -0
  100. package/dist/widgets/forms/autocomplete/language.js +147 -0
  101. package/dist/widgets/forms/autocomplete/language.js.map +1 -0
  102. package/{lib → dist}/widgets/forms/autocomplete/publicData.d.ts +3 -3
  103. package/dist/widgets/forms/autocomplete/publicData.d.ts.map +1 -0
  104. package/dist/widgets/forms/autocomplete/publicData.js +507 -0
  105. package/dist/widgets/forms/autocomplete/publicData.js.map +1 -0
  106. package/dist/widgets/forms/basic.js +250 -0
  107. package/dist/widgets/forms/basic.js.map +1 -0
  108. package/dist/widgets/forms/comment.js +52 -0
  109. package/dist/widgets/forms/comment.js.map +1 -0
  110. package/dist/widgets/forms/fieldFunction.js +49 -0
  111. package/dist/widgets/forms/fieldFunction.js.map +1 -0
  112. package/dist/widgets/forms/fieldParams.js +95 -0
  113. package/dist/widgets/forms/fieldParams.js.map +1 -0
  114. package/dist/widgets/forms/formStyle.js +43 -0
  115. package/dist/widgets/forms/formStyle.js.map +1 -0
  116. package/{lib → dist}/widgets/widgetHelpers.d.ts.map +1 -1
  117. package/{lib → dist}/widgets/widgetHelpers.js +19 -24
  118. package/dist/widgets/widgetHelpers.js.map +1 -0
  119. package/package.json +44 -47
  120. package/dist/789.solid-ui.min.js +0 -1
  121. package/dist/841.solid-ui.min.js +0 -3
  122. package/dist/841.solid-ui.min.js.LICENSE.txt +0 -58
  123. package/dist/841.solid-ui.min.js.map +0 -1
  124. package/dist/_2b19.solid-ui.js +0 -14
  125. package/dist/_2b19.solid-ui.js.map +0 -1
  126. package/dist/index.html +0 -1
  127. package/dist/solid-ui.min.js.LICENSE.txt +0 -57
  128. package/dist/vendors-node_modules_jsonld_lib_jsonld_js.solid-ui.js +0 -12247
  129. package/dist/vendors-node_modules_jsonld_lib_jsonld_js.solid-ui.js.map +0 -1
  130. package/lib/acl/access-controller.js +0 -391
  131. package/lib/acl/access-controller.js.map +0 -1
  132. package/lib/acl/access-groups.js +0 -507
  133. package/lib/acl/access-groups.js.map +0 -1
  134. package/lib/acl/acl-control.js +0 -237
  135. package/lib/acl/acl-control.js.map +0 -1
  136. package/lib/acl/acl.js +0 -517
  137. package/lib/acl/acl.js.map +0 -1
  138. package/lib/acl/add-agent-buttons.js +0 -434
  139. package/lib/acl/add-agent-buttons.js.map +0 -1
  140. package/lib/acl/index.js +0 -39
  141. package/lib/acl/index.js.map +0 -1
  142. package/lib/acl/types.js +0 -6
  143. package/lib/acl/types.js.map +0 -1
  144. package/lib/chat/bookmarks.js +0 -303
  145. package/lib/chat/bookmarks.js.map +0 -1
  146. package/lib/chat/chatLogic.js +0 -420
  147. package/lib/chat/chatLogic.js.map +0 -1
  148. package/lib/chat/dateFolder.js +0 -328
  149. package/lib/chat/dateFolder.js.map +0 -1
  150. package/lib/chat/infinite.js +0 -994
  151. package/lib/chat/infinite.js.map +0 -1
  152. package/lib/chat/keys.js +0 -232
  153. package/lib/chat/keys.js.map +0 -1
  154. package/lib/chat/message.js +0 -715
  155. package/lib/chat/message.js.map +0 -1
  156. package/lib/chat/messageTools.js +0 -538
  157. package/lib/chat/messageTools.js.map +0 -1
  158. package/lib/chat/signature.js +0 -109
  159. package/lib/chat/signature.js.map +0 -1
  160. package/lib/chat/thread.js +0 -535
  161. package/lib/chat/thread.js.map +0 -1
  162. package/lib/create/create.js +0 -242
  163. package/lib/create/create.js.map +0 -1
  164. package/lib/create/index.js +0 -11
  165. package/lib/create/index.js.map +0 -1
  166. package/lib/create/types.js +0 -6
  167. package/lib/create/types.js.map +0 -1
  168. package/lib/debug.js +0 -30
  169. package/lib/debug.js.map +0 -1
  170. package/lib/folders.js +0 -132
  171. package/lib/folders.js.map +0 -1
  172. package/lib/footer/index.js +0 -123
  173. package/lib/footer/index.js.map +0 -1
  174. package/lib/header/empty-profile.js +0 -8
  175. package/lib/header/empty-profile.js.map +0 -1
  176. package/lib/header/index.js +0 -375
  177. package/lib/header/index.js.map +0 -1
  178. package/lib/iconBase.js +0 -44
  179. package/lib/iconBase.js.map +0 -1
  180. package/lib/icons/solid_logo.js.map +0 -1
  181. package/lib/index.d.ts.map +0 -1
  182. package/lib/index.js +0 -223
  183. package/lib/index.js.map +0 -1
  184. package/lib/log.js.map +0 -1
  185. package/lib/login/login.js +0 -1241
  186. package/lib/login/login.js.map +0 -1
  187. package/lib/matrix/index.js +0 -11
  188. package/lib/matrix/index.js.map +0 -1
  189. package/lib/matrix/matrix.js +0 -216
  190. package/lib/matrix/matrix.js.map +0 -1
  191. package/lib/matrix/types.js +0 -6
  192. package/lib/matrix/types.js.map +0 -1
  193. package/lib/media/index.js +0 -12
  194. package/lib/media/index.js.map +0 -1
  195. package/lib/media/media-capture.js +0 -194
  196. package/lib/media/media-capture.js.map +0 -1
  197. package/lib/messageArea.js +0 -319
  198. package/lib/messageArea.js.map +0 -1
  199. package/lib/noun_Camera_1618446_000000.js +0 -8
  200. package/lib/noun_Camera_1618446_000000.js.map +0 -1
  201. package/lib/ns.js +0 -17
  202. package/lib/ns.js.map +0 -1
  203. package/lib/pad.js +0 -805
  204. package/lib/pad.js.map +0 -1
  205. package/lib/participation.js +0 -219
  206. package/lib/participation.js.map +0 -1
  207. package/lib/preferences.js +0 -215
  208. package/lib/preferences.js.map +0 -1
  209. package/lib/signup/config-default.js +0 -43
  210. package/lib/signup/config-default.js.map +0 -1
  211. package/lib/signup/signup.js +0 -74
  212. package/lib/signup/signup.js.map +0 -1
  213. package/lib/stories/decorators.js +0 -10
  214. package/lib/stories/decorators.js.map +0 -1
  215. package/lib/style.js +0 -158
  216. package/lib/style.js.map +0 -1
  217. package/lib/styleConstants.js +0 -35
  218. package/lib/styleConstants.js.map +0 -1
  219. package/lib/style_multiSelect.js +0 -62
  220. package/lib/style_multiSelect.js.map +0 -1
  221. package/lib/table.js +0 -1573
  222. package/lib/table.js.map +0 -1
  223. package/lib/tabs.js +0 -448
  224. package/lib/tabs.js.map +0 -1
  225. package/lib/typings.d.js +0 -2
  226. package/lib/typings.d.js.map +0 -1
  227. package/lib/utils/headerFooterHelpers.js +0 -165
  228. package/lib/utils/headerFooterHelpers.js.map +0 -1
  229. package/lib/utils/index.js +0 -527
  230. package/lib/utils/index.js.map +0 -1
  231. package/lib/utils/keyHelpers/accessData.js +0 -131
  232. package/lib/utils/keyHelpers/accessData.js.map +0 -1
  233. package/lib/utils/keyHelpers/acl.js +0 -90
  234. package/lib/utils/keyHelpers/acl.js.map +0 -1
  235. package/lib/utils/keyHelpers/otherHelpers.js +0 -21
  236. package/lib/utils/keyHelpers/otherHelpers.js.map +0 -1
  237. package/lib/utils/label.js +0 -103
  238. package/lib/utils/label.js.map +0 -1
  239. package/lib/versionInfo.d.ts +0 -32
  240. package/lib/versionInfo.d.ts.map +0 -1
  241. package/lib/versionInfo.js +0 -37
  242. package/lib/versionInfo.js.map +0 -1
  243. package/lib/widgets/buttons/iconLinks.js +0 -53
  244. package/lib/widgets/buttons/iconLinks.js.map +0 -1
  245. package/lib/widgets/buttons.js +0 -1306
  246. package/lib/widgets/buttons.js.map +0 -1
  247. package/lib/widgets/dragAndDrop.js +0 -194
  248. package/lib/widgets/dragAndDrop.js.map +0 -1
  249. package/lib/widgets/error.js +0 -46
  250. package/lib/widgets/error.js.map +0 -1
  251. package/lib/widgets/forms/autocomplete/autocompleteBar.js +0 -271
  252. package/lib/widgets/forms/autocomplete/autocompleteBar.js.map +0 -1
  253. package/lib/widgets/forms/autocomplete/autocompleteField.js +0 -258
  254. package/lib/widgets/forms/autocomplete/autocompleteField.js.map +0 -1
  255. package/lib/widgets/forms/autocomplete/autocompletePicker.js +0 -436
  256. package/lib/widgets/forms/autocomplete/autocompletePicker.js.map +0 -1
  257. package/lib/widgets/forms/autocomplete/language.js +0 -189
  258. package/lib/widgets/forms/autocomplete/language.js.map +0 -1
  259. package/lib/widgets/forms/autocomplete/publicData.d.ts.map +0 -1
  260. package/lib/widgets/forms/autocomplete/publicData.js +0 -636
  261. package/lib/widgets/forms/autocomplete/publicData.js.map +0 -1
  262. package/lib/widgets/forms/basic.js +0 -254
  263. package/lib/widgets/forms/basic.js.map +0 -1
  264. package/lib/widgets/forms/comment.js +0 -54
  265. package/lib/widgets/forms/comment.js.map +0 -1
  266. package/lib/widgets/forms/fieldFunction.js +0 -52
  267. package/lib/widgets/forms/fieldFunction.js.map +0 -1
  268. package/lib/widgets/forms/fieldParams.js +0 -77
  269. package/lib/widgets/forms/fieldParams.js.map +0 -1
  270. package/lib/widgets/forms/formStyle.js +0 -44
  271. package/lib/widgets/forms/formStyle.js.map +0 -1
  272. package/lib/widgets/forms.js +0 -2045
  273. package/lib/widgets/forms.js.map +0 -1
  274. package/lib/widgets/index.js +0 -110
  275. package/lib/widgets/index.js.map +0 -1
  276. package/lib/widgets/multiSelect.js +0 -658
  277. package/lib/widgets/multiSelect.js.map +0 -1
  278. package/lib/widgets/peoplePicker.js +0 -467
  279. package/lib/widgets/peoplePicker.js.map +0 -1
  280. package/lib/widgets/widgetHelpers.js.map +0 -1
  281. /package/{lib → dist}/acl/access-controller.d.ts +0 -0
  282. /package/{lib → dist}/acl/access-controller.d.ts.map +0 -0
  283. /package/{lib → dist}/acl/access-groups.d.ts +0 -0
  284. /package/{lib → dist}/acl/access-groups.d.ts.map +0 -0
  285. /package/{lib → dist}/acl/acl-control.d.ts +0 -0
  286. /package/{lib → dist}/acl/acl-control.d.ts.map +0 -0
  287. /package/{lib → dist}/acl/acl.d.ts +0 -0
  288. /package/{lib → dist}/acl/acl.d.ts.map +0 -0
  289. /package/{lib → dist}/acl/add-agent-buttons.d.ts +0 -0
  290. /package/{lib → dist}/acl/add-agent-buttons.d.ts.map +0 -0
  291. /package/{lib → dist}/acl/index.d.ts +0 -0
  292. /package/{lib → dist}/acl/index.d.ts.map +0 -0
  293. /package/{lib → dist}/acl/types.d.ts +0 -0
  294. /package/{lib → dist}/acl/types.d.ts.map +0 -0
  295. /package/{lib → dist}/chat/signature.d.ts +0 -0
  296. /package/{lib → dist}/chat/signature.d.ts.map +0 -0
  297. /package/{lib → dist}/create/create.d.ts +0 -0
  298. /package/{lib → dist}/create/create.d.ts.map +0 -0
  299. /package/{lib → dist}/create/index.d.ts +0 -0
  300. /package/{lib → dist}/create/index.d.ts.map +0 -0
  301. /package/{lib → dist}/create/types.d.ts +0 -0
  302. /package/{lib → dist}/create/types.d.ts.map +0 -0
  303. /package/{lib → dist}/debug.d.ts +0 -0
  304. /package/{lib → dist}/debug.d.ts.map +0 -0
  305. /package/{lib → dist}/footer/index.d.ts +0 -0
  306. /package/{lib → dist}/footer/index.d.ts.map +0 -0
  307. /package/{lib → dist}/header/empty-profile.d.ts +0 -0
  308. /package/{lib → dist}/header/empty-profile.d.ts.map +0 -0
  309. /package/{lib → dist}/header/index.d.ts +0 -0
  310. /package/{lib → dist}/header/index.d.ts.map +0 -0
  311. /package/{lib → dist}/iconBase.d.ts +0 -0
  312. /package/{lib → dist}/iconBase.d.ts.map +0 -0
  313. /package/{lib → dist}/icons/solid_logo.d.ts +0 -0
  314. /package/{lib → dist}/icons/solid_logo.d.ts.map +0 -0
  315. /package/{lib → dist}/icons/solid_logo.js +0 -0
  316. /package/{lib → dist}/log.d.ts +0 -0
  317. /package/{lib → dist}/log.d.ts.map +0 -0
  318. /package/{lib → dist}/login/login.d.ts +0 -0
  319. /package/{lib → dist}/login/login.d.ts.map +0 -0
  320. /package/{lib → dist}/matrix/index.d.ts +0 -0
  321. /package/{lib → dist}/matrix/index.d.ts.map +0 -0
  322. /package/{lib → dist}/matrix/matrix.d.ts +0 -0
  323. /package/{lib → dist}/matrix/matrix.d.ts.map +0 -0
  324. /package/{lib → dist}/matrix/types.d.ts +0 -0
  325. /package/{lib → dist}/matrix/types.d.ts.map +0 -0
  326. /package/{lib → dist}/media/index.d.ts +0 -0
  327. /package/{lib → dist}/media/index.d.ts.map +0 -0
  328. /package/{lib → dist}/media/media-capture.d.ts +0 -0
  329. /package/{lib → dist}/media/media-capture.d.ts.map +0 -0
  330. /package/{lib → dist}/pad.d.ts +0 -0
  331. /package/{lib → dist}/pad.d.ts.map +0 -0
  332. /package/{lib → dist}/participation.d.ts +0 -0
  333. /package/{lib → dist}/participation.d.ts.map +0 -0
  334. /package/{lib → dist}/tabs.d.ts +0 -0
  335. /package/{lib → dist}/tabs.d.ts.map +0 -0
  336. /package/{lib → dist}/utils/headerFooterHelpers.d.ts +0 -0
  337. /package/{lib → dist}/utils/headerFooterHelpers.d.ts.map +0 -0
  338. /package/{lib → dist}/utils/keyHelpers/acl.d.ts +0 -0
  339. /package/{lib → dist}/utils/keyHelpers/acl.d.ts.map +0 -0
  340. /package/{lib → dist}/utils/label.d.ts +0 -0
  341. /package/{lib → dist}/utils/label.d.ts.map +0 -0
  342. /package/{lib → dist}/widgets/buttons/iconLinks.d.ts +0 -0
  343. /package/{lib → dist}/widgets/buttons/iconLinks.d.ts.map +0 -0
  344. /package/{lib → dist}/widgets/buttons.d.ts +0 -0
  345. /package/{lib → dist}/widgets/buttons.d.ts.map +0 -0
  346. /package/{lib → dist}/widgets/error.d.ts +0 -0
  347. /package/{lib → dist}/widgets/error.d.ts.map +0 -0
  348. /package/{lib → dist}/widgets/forms/autocomplete/autocompleteBar.d.ts +0 -0
  349. /package/{lib → dist}/widgets/forms/autocomplete/autocompleteBar.d.ts.map +0 -0
  350. /package/{lib → dist}/widgets/forms/autocomplete/autocompleteField.d.ts +0 -0
  351. /package/{lib → dist}/widgets/forms/autocomplete/autocompleteField.d.ts.map +0 -0
  352. /package/{lib → dist}/widgets/forms/autocomplete/autocompletePicker.d.ts +0 -0
  353. /package/{lib → dist}/widgets/forms/autocomplete/autocompletePicker.d.ts.map +0 -0
  354. /package/{lib → dist}/widgets/forms/autocomplete/language.d.ts +0 -0
  355. /package/{lib → dist}/widgets/forms/autocomplete/language.d.ts.map +0 -0
  356. /package/{lib → dist}/widgets/forms/basic.d.ts +0 -0
  357. /package/{lib → dist}/widgets/forms/basic.d.ts.map +0 -0
  358. /package/{lib → dist}/widgets/forms/comment.d.ts +0 -0
  359. /package/{lib → dist}/widgets/forms/comment.d.ts.map +0 -0
  360. /package/{lib → dist}/widgets/forms/fieldFunction.d.ts +0 -0
  361. /package/{lib → dist}/widgets/forms/fieldFunction.d.ts.map +0 -0
  362. /package/{lib → dist}/widgets/forms/fieldParams.d.ts +0 -0
  363. /package/{lib → dist}/widgets/forms/fieldParams.d.ts.map +0 -0
  364. /package/{lib → dist}/widgets/forms/formStyle.d.ts +0 -0
  365. /package/{lib → dist}/widgets/forms/formStyle.d.ts.map +0 -0
  366. /package/{lib → dist}/widgets/widgetHelpers.d.ts +0 -0
@@ -1,420 +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.ChatChannel = void 0;
9
- exports.allVersions = allVersions;
10
- exports.isDeleted = isDeleted;
11
- exports.isHidden = isHidden;
12
- exports.isReplaced = isReplaced;
13
- exports.mostRecentVersion = mostRecentVersion;
14
- exports.nick = nick;
15
- exports.originalVersion = originalVersion;
16
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
17
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
18
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
19
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
20
- var debug = _interopRequireWildcard(require("../debug"));
21
- var _dateFolder = require("./dateFolder");
22
- var _solidLogic = require("solid-logic");
23
- var ns = _interopRequireWildcard(require("../ns"));
24
- var $rdf = _interopRequireWildcard(require("rdflib"));
25
- var utils = _interopRequireWildcard(require("../utils"));
26
- var _signature = require("./signature");
27
- var _keys = require("./keys");
28
- 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 _t2 in e) "default" !== _t2 && {}.hasOwnProperty.call(e, _t2) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t2)) && (i.get || i.set) ? o(f, _t2, i) : f[_t2] = e[_t2]); return f; })(e, t); }
29
- /**
30
- * Contains the [[ChatChannel]] class and logic for Solid Chat
31
- * @packageDocumentation
32
- */
33
- // pull in first avoid cross-refs
34
- /* The Solid logic for a 'LongChat'
35
- */
36
- /**
37
- * Common code for a chat (discussion area of messages about something)
38
- * This version runs over a series of files for different time periods
39
- *
40
- * Parameters for the whole chat like its title are stored on
41
- * index.ttl#this and the chats messages are stored in YYYY/MM/DD/chat.ttl
42
- *
43
- */
44
- var ChatChannel = exports.ChatChannel = /*#__PURE__*/function () {
45
- function ChatChannel(channel, options) {
46
- (0, _classCallCheck2["default"])(this, ChatChannel);
47
- this.channel = channel;
48
- this.channelRoot = channel.doc();
49
- this.options = options;
50
- this.dateFolder = new _dateFolder.DateFolder(this.channelRoot, 'chat.ttl');
51
- this.div = null; // : HTMLElement
52
- }
53
-
54
- /* Store a new message in the web,
55
- */
56
- return (0, _createClass2["default"])(ChatChannel, [{
57
- key: "createMessage",
58
- value: (function () {
59
- var _createMessage = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee(text) {
60
- return _regenerator["default"].wrap(function (_context) {
61
- while (1) switch (_context.prev = _context.next) {
62
- case 0:
63
- return _context.abrupt("return", this.updateMessage(text));
64
- case 1:
65
- case "end":
66
- return _context.stop();
67
- }
68
- }, _callee, this);
69
- }));
70
- function createMessage(_x) {
71
- return _createMessage.apply(this, arguments);
72
- }
73
- return createMessage;
74
- }()
75
- /* Store a new message in the web,
76
- as a replacement for an existing one.
77
- The old one iis left, and the two are linked
78
- */
79
- )
80
- }, {
81
- key: "updateMessage",
82
- value: (function () {
83
- var _updateMessage = (0, _asyncToGenerator2["default"])(function (text) {
84
- var _this = this;
85
- var oldMsg = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
86
- var deleteIt = arguments.length > 2 ? arguments[2] : undefined;
87
- var thread = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
88
- return /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
89
- var sts, now, timestamp, dateStamp, chatDocument, message, me, msg, oldMsgMaker, oldMsgMostRecentVersion, oldMsgThread, errMsg, privateKey, sig, _errMsg, _t;
90
- return _regenerator["default"].wrap(function (_context2) {
91
- while (1) switch (_context2.prev = _context2.next) {
92
- case 0:
93
- sts = [];
94
- now = new Date();
95
- timestamp = '' + now.getTime();
96
- dateStamp = $rdf.term(now);
97
- chatDocument = oldMsg ? oldMsg.doc() : _this.dateFolder.leafDocumentFromDate(now);
98
- message = _solidLogic.store.sym(chatDocument.uri + '#' + 'Msg' + timestamp); // const content = store.literal(text)
99
- me = _solidLogic.authn.currentUser(); // If already logged on
100
- msg = (0, _signature.getBlankMsg)();
101
- msg.id = message.uri;
102
- if (!oldMsg) {
103
- _context2.next = 4;
104
- break;
105
- }
106
- // edit message replaces old one
107
- oldMsgMaker = _solidLogic.store.any(oldMsg, ns.foaf('maker')); // may not be needed here, but needed on READ
108
- if (!(oldMsgMaker.uri === me.uri)) {
109
- _context2.next = 2;
110
- break;
111
- }
112
- _context2.next = 1;
113
- return mostRecentVersion(oldMsg);
114
- case 1:
115
- oldMsgMostRecentVersion = _context2.sent;
116
- sts.push($rdf.st(oldMsgMostRecentVersion, ns.dct('isReplacedBy'), message, chatDocument));
117
- // if oldMsg has_reply => add has_reply to message
118
- oldMsgThread = _solidLogic.store.any(oldMsgMostRecentVersion, ns.sioc('has_reply'));
119
- if (oldMsgThread) {
120
- sts.push($rdf.st(message, ns.sioc('has_reply'), oldMsgThread, chatDocument));
121
- }
122
- if (deleteIt) {
123
- // we need to add a specific signature, else anyone can delete a msg ?
124
- sts.push($rdf.st(message, ns.schema('dateDeleted'), dateStamp, chatDocument));
125
- }
126
- _context2.next = 3;
127
- break;
128
- case 2:
129
- errMsg = 'Error you cannot delete/edit a message from someone else : \n' + oldMsgMaker.uri;
130
- debug.warn(errMsg);
131
- alert(errMsg);
132
- throw new Error(errMsg);
133
- case 3:
134
- _context2.next = 5;
135
- break;
136
- case 4:
137
- // link new message to channel
138
- sts.push($rdf.st(_this.channel, ns.wf('message'), message, chatDocument));
139
- case 5:
140
- sts.push($rdf.st(message, ns.sioc('content'), _solidLogic.store.literal(text), chatDocument));
141
- msg.content = text;
142
- sts.push($rdf.st(message, ns.dct('created'), dateStamp, chatDocument));
143
- msg.created = dateStamp.value;
144
- if (!me) {
145
- _context2.next = 7;
146
- break;
147
- }
148
- sts.push($rdf.st(message, ns.foaf('maker'), me, chatDocument));
149
- msg.maker = me.uri;
150
- // privateKey the cached private key of me, cached in store
151
- _context2.next = 6;
152
- return (0, _keys.getPrivateKey)(me);
153
- case 6:
154
- privateKey = _context2.sent;
155
- // me.uri)
156
- sig = (0, _signature.signMsg)(msg, privateKey);
157
- sts.push($rdf.st(message, $rdf.sym("".concat(_signature.SEC, "proofValue")), $rdf.lit(sig), chatDocument));
158
- case 7:
159
- if (thread) {
160
- sts.push($rdf.st(thread, ns.sioc('has_member'), message, chatDocument));
161
- if (!thread.doc().sameTerm(message.doc())) {
162
- sts.push($rdf.st(thread, ns.sioc('has_member'), message, thread.doc()));
163
- }
164
- }
165
- _context2.prev = 8;
166
- _context2.next = 9;
167
- return _solidLogic.store.updater.updateMany([], sts);
168
- case 9:
169
- _context2.next = 11;
170
- break;
171
- case 10:
172
- _context2.prev = 10;
173
- _t = _context2["catch"](8);
174
- _errMsg = 'Error saving chat message: ' + _t;
175
- debug.warn(_errMsg);
176
- alert(_errMsg);
177
- throw new Error(_errMsg);
178
- case 11:
179
- return _context2.abrupt("return", message);
180
- case 12:
181
- case "end":
182
- return _context2.stop();
183
- }
184
- }, _callee2, null, [[8, 10]]);
185
- })();
186
- });
187
- function updateMessage(_x2) {
188
- return _updateMessage.apply(this, arguments);
189
- }
190
- return updateMessage;
191
- }()
192
- /* Mark a message as deleted
193
- * Wee add a new version of the message,m witha deletion flag (deletion date)
194
- * so that the deletion can be revoked by adding another non-deleted update
195
- */
196
- )
197
- }, {
198
- key: "deleteMessage",
199
- value: (function () {
200
- var _deleteMessage = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee3(message) {
201
- return _regenerator["default"].wrap(function (_context3) {
202
- while (1) switch (_context3.prev = _context3.next) {
203
- case 0:
204
- return _context3.abrupt("return", this.updateMessage('(message deleted)', message, true));
205
- case 1:
206
- case "end":
207
- return _context3.stop();
208
- }
209
- }, _callee3, this);
210
- }));
211
- function deleteMessage(_x3) {
212
- return _deleteMessage.apply(this, arguments);
213
- }
214
- return deleteMessage;
215
- }() // Create a new thread of replies to the thread root message
216
- // or return one which already exists
217
- )
218
- }, {
219
- key: "createThread",
220
- value: function () {
221
- var _createThread = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee4(threadRoot) {
222
- var already, thread, insert;
223
- return _regenerator["default"].wrap(function (_context4) {
224
- while (1) switch (_context4.prev = _context4.next) {
225
- case 0:
226
- already = _solidLogic.store.each(threadRoot, ns.sioc('has_reply'), null, threadRoot.doc()).filter(function (thread) {
227
- return _solidLogic.store.holds(thread, ns.rdf('type'), ns.sioc('Thread'), thread.doc());
228
- });
229
- if (!(already.length > 0)) {
230
- _context4.next = 1;
231
- break;
232
- }
233
- return _context4.abrupt("return", already[0]);
234
- case 1:
235
- thread = $rdf.sym(threadRoot.uri + '-thread');
236
- insert = [$rdf.st(thread, ns.rdf('type'), ns.sioc('Thread'), thread.doc()), $rdf.st(threadRoot, ns.sioc('has_reply'), thread, thread.doc())];
237
- _context4.next = 2;
238
- return _solidLogic.store.updater.update([], insert);
239
- case 2:
240
- return _context4.abrupt("return", thread);
241
- case 3:
242
- case "end":
243
- return _context4.stop();
244
- }
245
- }, _callee4);
246
- }));
247
- function createThread(_x4) {
248
- return _createThread.apply(this, arguments);
249
- }
250
- return createThread;
251
- }()
252
- }]);
253
- }(); // class ChatChannel
254
- // ////////// Utility functions
255
- // Have to not loop forever if fed loops
256
- function allVersions(_x5) {
257
- return _allVersions.apply(this, arguments);
258
- }
259
- function _allVersions() {
260
- _allVersions = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee5(message) {
261
- var versions, done, m, prev, next;
262
- return _regenerator["default"].wrap(function (_context5) {
263
- while (1) switch (_context5.prev = _context5.next) {
264
- case 0:
265
- versions = [message];
266
- done = {};
267
- done[message.uri] = true;
268
- m = message;
269
- case 1:
270
- if (!true) {
271
- _context5.next = 4;
272
- break;
273
- }
274
- // earlier?
275
- prev = _solidLogic.store.any(null, ns.dct('isReplacedBy'), m, m.doc());
276
- if (!(!prev || done[prev.uri])) {
277
- _context5.next = 2;
278
- break;
279
- }
280
- return _context5.abrupt("continue", 4);
281
- case 2:
282
- _context5.next = 3;
283
- return _solidLogic.store.fetcher.load(prev);
284
- case 3:
285
- versions.unshift(prev);
286
- done[prev.uri] = true;
287
- m = prev;
288
- _context5.next = 1;
289
- break;
290
- case 4:
291
- m = message;
292
- case 5:
293
- if (!true) {
294
- _context5.next = 7;
295
- break;
296
- }
297
- // later?
298
- next = _solidLogic.store.any(m, ns.dct('isReplacedBy'), null, m.doc());
299
- if (!(!next || done[next.uri])) {
300
- _context5.next = 6;
301
- break;
302
- }
303
- return _context5.abrupt("continue", 7);
304
- case 6:
305
- versions.push(next);
306
- done[next.uri] = true;
307
- m = next;
308
- _context5.next = 5;
309
- break;
310
- case 7:
311
- return _context5.abrupt("return", versions);
312
- case 8:
313
- case "end":
314
- return _context5.stop();
315
- }
316
- }, _callee5);
317
- }));
318
- return _allVersions.apply(this, arguments);
319
- }
320
- function originalVersion(_x6) {
321
- return _originalVersion.apply(this, arguments);
322
- }
323
- function _originalVersion() {
324
- _originalVersion = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee6(message) {
325
- var msg, done;
326
- return _regenerator["default"].wrap(function (_context6) {
327
- while (1) switch (_context6.prev = _context6.next) {
328
- case 0:
329
- msg = message;
330
- done = {}; // done[message.uri] = true
331
- case 1:
332
- if (!msg) {
333
- _context6.next = 4;
334
- break;
335
- }
336
- if (!done[msg.uri]) {
337
- _context6.next = 2;
338
- break;
339
- }
340
- debug.error('originalVersion: verion loop' + message);
341
- return _context6.abrupt("return", message);
342
- case 2:
343
- done[msg.uri] = true;
344
- message = msg;
345
- _context6.next = 3;
346
- return _solidLogic.store.fetcher.load(message);
347
- case 3:
348
- msg = _solidLogic.store.any(null, ns.dct('isReplacedBy'), message, message.doc());
349
- _context6.next = 1;
350
- break;
351
- case 4:
352
- return _context6.abrupt("return", message);
353
- case 5:
354
- case "end":
355
- return _context6.stop();
356
- }
357
- }, _callee6);
358
- }));
359
- return _originalVersion.apply(this, arguments);
360
- }
361
- function mostRecentVersion(_x7) {
362
- return _mostRecentVersion.apply(this, arguments);
363
- }
364
- function _mostRecentVersion() {
365
- _mostRecentVersion = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee7(message) {
366
- var msg, done;
367
- return _regenerator["default"].wrap(function (_context7) {
368
- while (1) switch (_context7.prev = _context7.next) {
369
- case 0:
370
- msg = message;
371
- done = {};
372
- case 1:
373
- if (!msg) {
374
- _context7.next = 4;
375
- break;
376
- }
377
- if (!done[msg.uri]) {
378
- _context7.next = 2;
379
- break;
380
- }
381
- debug.error('mostRecentVersion: verion loop' + message);
382
- return _context7.abrupt("return", message);
383
- case 2:
384
- done[msg.uri] = true;
385
- message = msg;
386
- _context7.next = 3;
387
- return _solidLogic.store.fetcher.load(message);
388
- case 3:
389
- msg = _solidLogic.store.any(message, ns.dct('isReplacedBy'), null, message.doc());
390
- _context7.next = 1;
391
- break;
392
- case 4:
393
- return _context7.abrupt("return", message);
394
- case 5:
395
- case "end":
396
- return _context7.stop();
397
- }
398
- }, _callee7);
399
- }));
400
- return _mostRecentVersion.apply(this, arguments);
401
- }
402
- function isDeleted(message) {
403
- return _solidLogic.store.holds(message, ns.schema('dateDeleted'), null, message.doc());
404
- }
405
- function isReplaced(message) {
406
- return _solidLogic.store.holds(message, ns.dct('isReplacedBy'), null, message.doc());
407
- }
408
- function isHidden(message) {
409
- return this.isDeleted(message) || this.isReplaced(message);
410
- }
411
-
412
- // A Nickname for a person
413
-
414
- function nick(person) {
415
- var s = _solidLogic.store.any(person, ns.foaf('nick'));
416
- if (s) return '' + s.value;
417
- return '' + utils.label(person);
418
- }
419
- // ends
420
- //# sourceMappingURL=chatLogic.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"chatLogic.js","names":["debug","_interopRequireWildcard","require","_dateFolder","_solidLogic","ns","$rdf","utils","_signature","_keys","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t2","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ChatChannel","exports","channel","options","_classCallCheck2","channelRoot","doc","dateFolder","DateFolder","div","_createClass2","key","value","_createMessage","_asyncToGenerator2","_regenerator","mark","_callee","text","wrap","_context","prev","next","abrupt","updateMessage","stop","createMessage","_x","apply","arguments","_updateMessage","_this","oldMsg","length","undefined","deleteIt","thread","_callee2","sts","now","timestamp","dateStamp","chatDocument","message","me","msg","oldMsgMaker","oldMsgMostRecentVersion","oldMsgThread","errMsg","privateKey","sig","_errMsg","_t","_context2","Date","getTime","term","leafDocumentFromDate","store","sym","uri","authn","currentUser","getBlankMsg","id","any","foaf","mostRecentVersion","sent","push","st","dct","sioc","schema","warn","alert","Error","wf","literal","content","created","maker","getPrivateKey","signMsg","concat","SEC","lit","sameTerm","updater","updateMany","_x2","_deleteMessage","_callee3","_context3","deleteMessage","_x3","_createThread","_callee4","threadRoot","already","insert","_context4","each","filter","holds","rdf","update","createThread","_x4","allVersions","_x5","_allVersions","_callee5","versions","done","m","_context5","fetcher","load","unshift","originalVersion","_x6","_originalVersion","_callee6","_context6","error","_x7","_mostRecentVersion","_callee7","_context7","isDeleted","isReplaced","isHidden","nick","person","s","label"],"sources":["../../src/chat/chatLogic.js"],"sourcesContent":["/**\n * Contains the [[ChatChannel]] class and logic for Solid Chat\n * @packageDocumentation\n */\n\nimport * as debug from '../debug'\nimport { DateFolder } from './dateFolder'\nimport { store, authn } from 'solid-logic'\nimport * as ns from '../ns'\nimport * as $rdf from 'rdflib' // pull in first avoid cross-refs\nimport * as utils from '../utils'\nimport { getBlankMsg, signMsg, SEC } from './signature'\nimport { getPrivateKey } from './keys'\n\n/* The Solid logic for a 'LongChat'\n*/\n/**\n * Common code for a chat (discussion area of messages about something)\n * This version runs over a series of files for different time periods\n *\n * Parameters for the whole chat like its title are stored on\n * index.ttl#this and the chats messages are stored in YYYY/MM/DD/chat.ttl\n *\n */\n\nexport class ChatChannel {\n constructor (channel, options) {\n this.channel = channel\n this.channelRoot = channel.doc()\n this.options = options\n this.dateFolder = new DateFolder(this.channelRoot, 'chat.ttl')\n this.div = null // : HTMLElement\n }\n\n /* Store a new message in the web,\n */\n async createMessage (text) {\n return this.updateMessage(text)\n }\n\n /* Store a new message in the web,\n as a replacement for an existing one.\n The old one iis left, and the two are linked\n */\n async updateMessage (text, oldMsg = null, deleteIt, thread = null) {\n const sts = []\n const now = new Date()\n const timestamp = '' + now.getTime()\n const dateStamp = $rdf.term(now)\n const chatDocument = oldMsg ? oldMsg.doc() : this.dateFolder.leafDocumentFromDate(now)\n const message = store.sym(chatDocument.uri + '#' + 'Msg' + timestamp)\n // const content = store.literal(text)\n\n const me = authn.currentUser() // If already logged on\n\n const msg = getBlankMsg()\n msg.id = message.uri\n if (oldMsg) { // edit message replaces old one\n const oldMsgMaker = store.any(oldMsg, ns.foaf('maker')) // may not be needed here, but needed on READ\n if (oldMsgMaker.uri === me.uri) {\n const oldMsgMostRecentVersion = await mostRecentVersion(oldMsg)\n sts.push($rdf.st(oldMsgMostRecentVersion, ns.dct('isReplacedBy'), message, chatDocument))\n // if oldMsg has_reply => add has_reply to message\n const oldMsgThread = store.any(oldMsgMostRecentVersion, ns.sioc('has_reply'))\n if (oldMsgThread) {\n sts.push($rdf.st(message, ns.sioc('has_reply'), oldMsgThread, chatDocument))\n }\n if (deleteIt) { // we need to add a specific signature, else anyone can delete a msg ?\n sts.push($rdf.st(message, ns.schema('dateDeleted'), dateStamp, chatDocument))\n }\n } else {\n const errMsg = 'Error you cannot delete/edit a message from someone else : \\n' + oldMsgMaker.uri\n debug.warn(errMsg)\n alert(errMsg)\n throw new Error(errMsg)\n }\n } else { // link new message to channel\n sts.push($rdf.st(this.channel, ns.wf('message'), message, chatDocument))\n }\n sts.push(\n $rdf.st(message, ns.sioc('content'), store.literal(text), chatDocument)\n )\n msg.content = text\n\n sts.push(\n $rdf.st(message, ns.dct('created'), dateStamp, chatDocument)\n )\n msg.created = dateStamp.value\n if (me) {\n sts.push($rdf.st(message, ns.foaf('maker'), me, chatDocument))\n msg.maker = me.uri\n // privateKey the cached private key of me, cached in store\n const privateKey = await getPrivateKey(me) // me.uri)\n\n const sig = signMsg(msg, privateKey)\n sts.push($rdf.st(message, $rdf.sym(`${SEC}proofValue`), $rdf.lit(sig), chatDocument))\n }\n if (thread) {\n sts.push($rdf.st(thread, ns.sioc('has_member'), message, chatDocument))\n if (!thread.doc().sameTerm(message.doc())) {\n sts.push($rdf.st(thread, ns.sioc('has_member'), message, thread.doc()))\n }\n }\n\n try {\n await store.updater.updateMany([], sts)\n } catch (err) {\n const errMsg = 'Error saving chat message: ' + err\n debug.warn(errMsg)\n alert(errMsg)\n throw new Error(errMsg)\n }\n return message\n }\n\n /* Mark a message as deleted\n * Wee add a new version of the message,m witha deletion flag (deletion date)\n * so that the deletion can be revoked by adding another non-deleted update\n */\n async deleteMessage (message) {\n return this.updateMessage('(message deleted)', message, true)\n }\n\n // Create a new thread of replies to the thread root message\n // or return one which already exists\n\n async createThread (threadRoot) {\n const already = store.each(threadRoot, ns.sioc('has_reply'), null, threadRoot.doc())\n .filter(thread => store.holds(thread, ns.rdf('type'), ns.sioc('Thread'), thread.doc()))\n if (already.length > 0) return already[0]\n\n const thread = $rdf.sym(threadRoot.uri + '-thread')\n const insert = [\n $rdf.st(thread, ns.rdf('type'), ns.sioc('Thread'), thread.doc()),\n $rdf.st(threadRoot, ns.sioc('has_reply'), thread, thread.doc())\n ]\n await store.updater.update([], insert)\n return thread\n }\n} // class ChatChannel\n\n// ////////// Utility functions\n\n// Have to not loop forever if fed loops\nexport async function allVersions (message) {\n const versions = [message]\n const done = {}\n done[message.uri] = true\n let m = message\n while (true) { // earlier?\n const prev = store.any(null, ns.dct('isReplacedBy'), m, m.doc())\n if (!prev || done[prev.uri]) break\n await store.fetcher.load(prev)\n versions.unshift(prev)\n done[prev.uri] = true\n m = prev\n }\n m = message\n while (true) { // later?\n const next = store.any(m, ns.dct('isReplacedBy'), null, m.doc())\n if (!next || done[next.uri]) break\n versions.push(next)\n done[next.uri] = true\n m = next\n }\n return versions\n}\n\nexport async function originalVersion (message) {\n let msg = message\n const done = {}\n // done[message.uri] = true\n while (msg) {\n if (done[msg.uri]) {\n debug.error('originalVersion: verion loop' + message)\n return message\n }\n done[msg.uri] = true\n message = msg\n await store.fetcher.load(message)\n msg = store.any(null, ns.dct('isReplacedBy'), message, message.doc())\n }\n return message\n}\n\nexport async function mostRecentVersion (message) {\n let msg = message\n const done = {}\n while (msg) {\n if (done[msg.uri]) {\n debug.error('mostRecentVersion: verion loop' + message)\n return message\n }\n done[msg.uri] = true\n message = msg\n await store.fetcher.load(message)\n msg = store.any(message, ns.dct('isReplacedBy'), null, message.doc())\n }\n return message\n}\n\nexport function isDeleted (message) {\n return store.holds(message, ns.schema('dateDeleted'), null, message.doc())\n}\n\nexport function isReplaced (message) {\n return store.holds(message, ns.dct('isReplacedBy'), null, message.doc())\n}\n\nexport function isHidden (message) {\n return this.isDeleted(message) || this.isReplaced(message)\n}\n\n// A Nickname for a person\n\nexport function nick (person) {\n const s = store.any(person, ns.foaf('nick'))\n if (s) return '' + s.value\n return '' + utils.label(person)\n}\n// ends\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAKA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAF,OAAA;AACA,IAAAG,EAAA,GAAAJ,uBAAA,CAAAC,OAAA;AACA,IAAAI,IAAA,GAAAL,uBAAA,CAAAC,OAAA;AACA,IAAAK,KAAA,GAAAN,uBAAA,CAAAC,OAAA;AACA,IAAAM,UAAA,GAAAN,OAAA;AACA,IAAAO,KAAA,GAAAP,OAAA;AAAsC,SAAAD,wBAAAS,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAX,uBAAA,YAAAA,wBAAAS,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,mBAAAT,CAAA,iBAAAA,CAAA,gBAAAU,OAAA,CAAAV,CAAA,0BAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,cAAAM,GAAA,IAAAd,CAAA,gBAAAc,GAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,GAAA,OAAAP,CAAA,IAAAD,CAAA,GAAAW,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAnB,CAAA,EAAAc,GAAA,OAAAP,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAM,GAAA,EAAAP,CAAA,IAAAC,CAAA,CAAAM,GAAA,IAAAd,CAAA,CAAAc,GAAA,WAAAN,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAZtC;AACA;AACA;AACA;AAM+B;AAK/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAPA,IASamB,WAAW,GAAAC,OAAA,CAAAD,WAAA;EACtB,SAAAA,YAAaE,OAAO,EAAEC,OAAO,EAAE;IAAA,IAAAC,gBAAA,mBAAAJ,WAAA;IAC7B,IAAI,CAACE,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACG,WAAW,GAAGH,OAAO,CAACI,GAAG,CAAC,CAAC;IAChC,IAAI,CAACH,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACI,UAAU,GAAG,IAAIC,sBAAU,CAAC,IAAI,CAACH,WAAW,EAAE,UAAU,CAAC;IAC9D,IAAI,CAACI,GAAG,GAAG,IAAI,EAAC;EAClB;;EAEA;AACF;EADE,WAAAC,aAAA,aAAAV,WAAA;IAAAW,GAAA;IAAAC,KAAA;MAAA,IAAAC,cAAA,OAAAC,kBAAA,0BAAAC,YAAA,YAAAC,IAAA,CAEA,SAAAC,QAAqBC,IAAI;QAAA,OAAAH,YAAA,YAAAI,IAAA,WAAAC,QAAA;UAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;YAAA;cAAA,OAAAF,QAAA,CAAAG,MAAA,WAChB,IAAI,CAACC,aAAa,CAACN,IAAI,CAAC;YAAA;YAAA;cAAA,OAAAE,QAAA,CAAAK,IAAA;UAAA;QAAA,GAAAR,OAAA;MAAA,CAChC;MAAA,SAFKS,aAAaA,CAAAC,EAAA;QAAA,OAAAd,cAAA,CAAAe,KAAA,OAAAC,SAAA;MAAA;MAAA,OAAbH,aAAa;IAAA;IAInB;AACF;AACA;AACA;IAHE;EAAA;IAAAf,GAAA;IAAAC,KAAA;MAAA,IAAAkB,cAAA,OAAAhB,kBAAA,aAIA,UAAqBI,IAAI;QAAA,IAAAa,KAAA;QAAA,IAAEC,MAAM,GAAAH,SAAA,CAAAI,MAAA,QAAAJ,SAAA,QAAAK,SAAA,GAAAL,SAAA,MAAG,IAAI;QAAA,IAAEM,QAAQ,GAAAN,SAAA,CAAAI,MAAA,OAAAJ,SAAA,MAAAK,SAAA;QAAA,IAAEE,MAAM,GAAAP,SAAA,CAAAI,MAAA,QAAAJ,SAAA,QAAAK,SAAA,GAAAL,SAAA,MAAG,IAAI;QAAA,oBAAAd,YAAA,YAAAC,IAAA,UAAAqB,SAAA;UAAA,IAAAC,GAAA,EAAAC,GAAA,EAAAC,SAAA,EAAAC,SAAA,EAAAC,YAAA,EAAAC,OAAA,EAAAC,EAAA,EAAAC,GAAA,EAAAC,WAAA,EAAAC,uBAAA,EAAAC,YAAA,EAAAC,MAAA,EAAAC,UAAA,EAAAC,GAAA,EAAAC,OAAA,EAAAC,EAAA;UAAA,OAAAtC,YAAA,YAAAI,IAAA,WAAAmC,SAAA;YAAA,kBAAAA,SAAA,CAAAjC,IAAA,GAAAiC,SAAA,CAAAhC,IAAA;cAAA;gBACzDgB,GAAG,GAAG,EAAE;gBACRC,GAAG,GAAG,IAAIgB,IAAI,CAAC,CAAC;gBAChBf,SAAS,GAAG,EAAE,GAAGD,GAAG,CAACiB,OAAO,CAAC,CAAC;gBAC9Bf,SAAS,GAAGjE,IAAI,CAACiF,IAAI,CAAClB,GAAG,CAAC;gBAC1BG,YAAY,GAAGV,MAAM,GAAGA,MAAM,CAAC1B,GAAG,CAAC,CAAC,GAAGyB,KAAI,CAACxB,UAAU,CAACmD,oBAAoB,CAACnB,GAAG,CAAC;gBAChFI,OAAO,GAAGgB,iBAAK,CAACC,GAAG,CAAClB,YAAY,CAACmB,GAAG,GAAG,GAAG,GAAG,KAAK,GAAGrB,SAAS,CAAC,EACrE;gBAEMI,EAAE,GAAGkB,iBAAK,CAACC,WAAW,CAAC,CAAC,EAAC;gBAEzBlB,GAAG,GAAG,IAAAmB,sBAAW,EAAC,CAAC;gBACzBnB,GAAG,CAACoB,EAAE,GAAGtB,OAAO,CAACkB,GAAG;gBAAA,KAChB7B,MAAM;kBAAAsB,SAAA,CAAAhC,IAAA;kBAAA;gBAAA;gBAAI;gBACNwB,WAAW,GAAGa,iBAAK,CAACO,GAAG,CAAClC,MAAM,EAAEzD,EAAE,CAAC4F,IAAI,CAAC,OAAO,CAAC,CAAC,EAAC;gBAAA,MACpDrB,WAAW,CAACe,GAAG,KAAKjB,EAAE,CAACiB,GAAG;kBAAAP,SAAA,CAAAhC,IAAA;kBAAA;gBAAA;gBAAAgC,SAAA,CAAAhC,IAAA;gBAAA,OACU8C,iBAAiB,CAACpC,MAAM,CAAC;cAAA;gBAAzDe,uBAAuB,GAAAO,SAAA,CAAAe,IAAA;gBAC7B/B,GAAG,CAACgC,IAAI,CAAC9F,IAAI,CAAC+F,EAAE,CAACxB,uBAAuB,EAAExE,EAAE,CAACiG,GAAG,CAAC,cAAc,CAAC,EAAE7B,OAAO,EAAED,YAAY,CAAC,CAAC;gBACzF;gBACMM,YAAY,GAAGW,iBAAK,CAACO,GAAG,CAACnB,uBAAuB,EAAExE,EAAE,CAACkG,IAAI,CAAC,WAAW,CAAC,CAAC;gBAC7E,IAAIzB,YAAY,EAAE;kBAChBV,GAAG,CAACgC,IAAI,CAAC9F,IAAI,CAAC+F,EAAE,CAAC5B,OAAO,EAAEpE,EAAE,CAACkG,IAAI,CAAC,WAAW,CAAC,EAAEzB,YAAY,EAAEN,YAAY,CAAC,CAAC;gBAC9E;gBACA,IAAIP,QAAQ,EAAE;kBAAE;kBACdG,GAAG,CAACgC,IAAI,CAAC9F,IAAI,CAAC+F,EAAE,CAAC5B,OAAO,EAAEpE,EAAE,CAACmG,MAAM,CAAC,aAAa,CAAC,EAAEjC,SAAS,EAAEC,YAAY,CAAC,CAAC;gBAC/E;gBAACY,SAAA,CAAAhC,IAAA;gBAAA;cAAA;gBAEK2B,MAAM,GAAG,+DAA+D,GAAGH,WAAW,CAACe,GAAG;gBAChG3F,KAAK,CAACyG,IAAI,CAAC1B,MAAM,CAAC;gBAClB2B,KAAK,CAAC3B,MAAM,CAAC;gBAAA,MACP,IAAI4B,KAAK,CAAC5B,MAAM,CAAC;cAAA;gBAAAK,SAAA,CAAAhC,IAAA;gBAAA;cAAA;gBAElB;gBACPgB,GAAG,CAACgC,IAAI,CAAC9F,IAAI,CAAC+F,EAAE,CAACxC,KAAI,CAAC7B,OAAO,EAAE3B,EAAE,CAACuG,EAAE,CAAC,SAAS,CAAC,EAAEnC,OAAO,EAAED,YAAY,CAAC,CAAC;cAAA;gBAE1EJ,GAAG,CAACgC,IAAI,CACN9F,IAAI,CAAC+F,EAAE,CAAC5B,OAAO,EAAEpE,EAAE,CAACkG,IAAI,CAAC,SAAS,CAAC,EAAEd,iBAAK,CAACoB,OAAO,CAAC7D,IAAI,CAAC,EAAEwB,YAAY,CACxE,CAAC;gBACDG,GAAG,CAACmC,OAAO,GAAG9D,IAAI;gBAElBoB,GAAG,CAACgC,IAAI,CACN9F,IAAI,CAAC+F,EAAE,CAAC5B,OAAO,EAAEpE,EAAE,CAACiG,GAAG,CAAC,SAAS,CAAC,EAAE/B,SAAS,EAAEC,YAAY,CAC7D,CAAC;gBACDG,GAAG,CAACoC,OAAO,GAAGxC,SAAS,CAAC7B,KAAK;gBAAA,KACzBgC,EAAE;kBAAAU,SAAA,CAAAhC,IAAA;kBAAA;gBAAA;gBACJgB,GAAG,CAACgC,IAAI,CAAC9F,IAAI,CAAC+F,EAAE,CAAC5B,OAAO,EAAEpE,EAAE,CAAC4F,IAAI,CAAC,OAAO,CAAC,EAAEvB,EAAE,EAAEF,YAAY,CAAC,CAAC;gBAC9DG,GAAG,CAACqC,KAAK,GAAGtC,EAAE,CAACiB,GAAG;gBAClB;gBAAAP,SAAA,CAAAhC,IAAA;gBAAA,OACyB,IAAA6D,mBAAa,EAACvC,EAAE,CAAC;cAAA;gBAApCM,UAAU,GAAAI,SAAA,CAAAe,IAAA;gBAA2B;gBAErClB,GAAG,GAAG,IAAAiC,kBAAO,EAACvC,GAAG,EAAEK,UAAU,CAAC;gBACpCZ,GAAG,CAACgC,IAAI,CAAC9F,IAAI,CAAC+F,EAAE,CAAC5B,OAAO,EAAEnE,IAAI,CAACoF,GAAG,IAAAyB,MAAA,CAAIC,cAAG,eAAY,CAAC,EAAE9G,IAAI,CAAC+G,GAAG,CAACpC,GAAG,CAAC,EAAET,YAAY,CAAC,CAAC;cAAA;gBAEvF,IAAIN,MAAM,EAAE;kBACVE,GAAG,CAACgC,IAAI,CAAC9F,IAAI,CAAC+F,EAAE,CAACnC,MAAM,EAAE7D,EAAE,CAACkG,IAAI,CAAC,YAAY,CAAC,EAAE9B,OAAO,EAAED,YAAY,CAAC,CAAC;kBACvE,IAAI,CAACN,MAAM,CAAC9B,GAAG,CAAC,CAAC,CAACkF,QAAQ,CAAC7C,OAAO,CAACrC,GAAG,CAAC,CAAC,CAAC,EAAE;oBACzCgC,GAAG,CAACgC,IAAI,CAAC9F,IAAI,CAAC+F,EAAE,CAACnC,MAAM,EAAE7D,EAAE,CAACkG,IAAI,CAAC,YAAY,CAAC,EAAE9B,OAAO,EAAEP,MAAM,CAAC9B,GAAG,CAAC,CAAC,CAAC,CAAC;kBACzE;gBACF;gBAACgD,SAAA,CAAAjC,IAAA;gBAAAiC,SAAA,CAAAhC,IAAA;gBAAA,OAGOqC,iBAAK,CAAC8B,OAAO,CAACC,UAAU,CAAC,EAAE,EAAEpD,GAAG,CAAC;cAAA;gBAAAgB,SAAA,CAAAhC,IAAA;gBAAA;cAAA;gBAAAgC,SAAA,CAAAjC,IAAA;gBAAAgC,EAAA,GAAAC,SAAA;gBAEjCL,OAAM,GAAG,6BAA6B,GAAAI,EAAM;gBAClDnF,KAAK,CAACyG,IAAI,CAAC1B,OAAM,CAAC;gBAClB2B,KAAK,CAAC3B,OAAM,CAAC;gBAAA,MACP,IAAI4B,KAAK,CAAC5B,OAAM,CAAC;cAAA;gBAAA,OAAAK,SAAA,CAAA/B,MAAA,WAElBoB,OAAO;cAAA;cAAA;gBAAA,OAAAW,SAAA,CAAA7B,IAAA;YAAA;UAAA,GAAAY,QAAA;QAAA;MAAA,CACf;MAAA,SArEKb,aAAaA,CAAAmE,GAAA;QAAA,OAAA7D,cAAA,CAAAF,KAAA,OAAAC,SAAA;MAAA;MAAA,OAAbL,aAAa;IAAA;IAuEnB;AACF;AACA;AACA;IAHE;EAAA;IAAAb,GAAA;IAAAC,KAAA;MAAA,IAAAgF,cAAA,OAAA9E,kBAAA,0BAAAC,YAAA,YAAAC,IAAA,CAIA,SAAA6E,SAAqBlD,OAAO;QAAA,OAAA5B,YAAA,YAAAI,IAAA,WAAA2E,SAAA;UAAA,kBAAAA,SAAA,CAAAzE,IAAA,GAAAyE,SAAA,CAAAxE,IAAA;YAAA;cAAA,OAAAwE,SAAA,CAAAvE,MAAA,WACnB,IAAI,CAACC,aAAa,CAAC,mBAAmB,EAAEmB,OAAO,EAAE,IAAI,CAAC;YAAA;YAAA;cAAA,OAAAmD,SAAA,CAAArE,IAAA;UAAA;QAAA,GAAAoE,QAAA;MAAA,CAC9D;MAAA,SAFKE,aAAaA,CAAAC,GAAA;QAAA,OAAAJ,cAAA,CAAAhE,KAAA,OAAAC,SAAA;MAAA;MAAA,OAAbkE,aAAa;IAAA,IAInB;IACA;IAAA;EAAA;IAAApF,GAAA;IAAAC,KAAA;MAAA,IAAAqF,aAAA,OAAAnF,kBAAA,0BAAAC,YAAA,YAAAC,IAAA,CAEA,SAAAkF,SAAoBC,UAAU;QAAA,IAAAC,OAAA,EAAAhE,MAAA,EAAAiE,MAAA;QAAA,OAAAtF,YAAA,YAAAI,IAAA,WAAAmF,SAAA;UAAA,kBAAAA,SAAA,CAAAjF,IAAA,GAAAiF,SAAA,CAAAhF,IAAA;YAAA;cACtB8E,OAAO,GAAGzC,iBAAK,CAAC4C,IAAI,CAACJ,UAAU,EAAE5H,EAAE,CAACkG,IAAI,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE0B,UAAU,CAAC7F,GAAG,CAAC,CAAC,CAAC,CACjFkG,MAAM,CAAC,UAAApE,MAAM;gBAAA,OAAIuB,iBAAK,CAAC8C,KAAK,CAACrE,MAAM,EAAE7D,EAAE,CAACmI,GAAG,CAAC,MAAM,CAAC,EAAEnI,EAAE,CAACkG,IAAI,CAAC,QAAQ,CAAC,EAAErC,MAAM,CAAC9B,GAAG,CAAC,CAAC,CAAC;cAAA,EAAC;cAAA,MACrF8F,OAAO,CAACnE,MAAM,GAAG,CAAC;gBAAAqE,SAAA,CAAAhF,IAAA;gBAAA;cAAA;cAAA,OAAAgF,SAAA,CAAA/E,MAAA,WAAS6E,OAAO,CAAC,CAAC,CAAC;YAAA;cAEnChE,MAAM,GAAG5D,IAAI,CAACoF,GAAG,CAACuC,UAAU,CAACtC,GAAG,GAAG,SAAS,CAAC;cAC7CwC,MAAM,GAAG,CACb7H,IAAI,CAAC+F,EAAE,CAACnC,MAAM,EAAE7D,EAAE,CAACmI,GAAG,CAAC,MAAM,CAAC,EAAEnI,EAAE,CAACkG,IAAI,CAAC,QAAQ,CAAC,EAAErC,MAAM,CAAC9B,GAAG,CAAC,CAAC,CAAC,EAChE9B,IAAI,CAAC+F,EAAE,CAAC4B,UAAU,EAAE5H,EAAE,CAACkG,IAAI,CAAC,WAAW,CAAC,EAAErC,MAAM,EAAEA,MAAM,CAAC9B,GAAG,CAAC,CAAC,CAAC,CAChE;cAAAgG,SAAA,CAAAhF,IAAA;cAAA,OACKqC,iBAAK,CAAC8B,OAAO,CAACkB,MAAM,CAAC,EAAE,EAAEN,MAAM,CAAC;YAAA;cAAA,OAAAC,SAAA,CAAA/E,MAAA,WAC/Ba,MAAM;YAAA;YAAA;cAAA,OAAAkE,SAAA,CAAA7E,IAAA;UAAA;QAAA,GAAAyE,QAAA;MAAA,CACd;MAAA,SAZKU,YAAYA,CAAAC,GAAA;QAAA,OAAAZ,aAAA,CAAArE,KAAA,OAAAC,SAAA;MAAA;MAAA,OAAZ+E,YAAY;IAAA;EAAA;AAAA,KAalB;AAEF;AAEA;AAAA,SACsBE,WAAWA,CAAAC,GAAA;EAAA,OAAAC,YAAA,CAAApF,KAAA,OAAAC,SAAA;AAAA;AAAA,SAAAmF,aAAA;EAAAA,YAAA,OAAAlG,kBAAA,0BAAAC,YAAA,YAAAC,IAAA,CAA1B,SAAAiG,SAA4BtE,OAAO;IAAA,IAAAuE,QAAA,EAAAC,IAAA,EAAAC,CAAA,EAAA/F,IAAA,EAAAC,IAAA;IAAA,OAAAP,YAAA,YAAAI,IAAA,WAAAkG,SAAA;MAAA,kBAAAA,SAAA,CAAAhG,IAAA,GAAAgG,SAAA,CAAA/F,IAAA;QAAA;UAClC4F,QAAQ,GAAG,CAACvE,OAAO,CAAC;UACpBwE,IAAI,GAAG,CAAC,CAAC;UACfA,IAAI,CAACxE,OAAO,CAACkB,GAAG,CAAC,GAAG,IAAI;UACpBuD,CAAC,GAAGzE,OAAO;QAAA;UAAA,KACR,IAAI;YAAA0E,SAAA,CAAA/F,IAAA;YAAA;UAAA;UAAI;UACPD,IAAI,GAAGsC,iBAAK,CAACO,GAAG,CAAC,IAAI,EAAE3F,EAAE,CAACiG,GAAG,CAAC,cAAc,CAAC,EAAE4C,CAAC,EAAEA,CAAC,CAAC9G,GAAG,CAAC,CAAC,CAAC;UAAA,MAC5D,CAACe,IAAI,IAAI8F,IAAI,CAAC9F,IAAI,CAACwC,GAAG,CAAC;YAAAwD,SAAA,CAAA/F,IAAA;YAAA;UAAA;UAAA,OAAA+F,SAAA,CAAA9F,MAAA;QAAA;UAAA8F,SAAA,CAAA/F,IAAA;UAAA,OACrBqC,iBAAK,CAAC2D,OAAO,CAACC,IAAI,CAAClG,IAAI,CAAC;QAAA;UAC9B6F,QAAQ,CAACM,OAAO,CAACnG,IAAI,CAAC;UACtB8F,IAAI,CAAC9F,IAAI,CAACwC,GAAG,CAAC,GAAG,IAAI;UACrBuD,CAAC,GAAG/F,IAAI;UAAAgG,SAAA,CAAA/F,IAAA;UAAA;QAAA;UAEV8F,CAAC,GAAGzE,OAAO;QAAA;UAAA,KACJ,IAAI;YAAA0E,SAAA,CAAA/F,IAAA;YAAA;UAAA;UAAI;UACPA,IAAI,GAAGqC,iBAAK,CAACO,GAAG,CAACkD,CAAC,EAAE7I,EAAE,CAACiG,GAAG,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE4C,CAAC,CAAC9G,GAAG,CAAC,CAAC,CAAC;UAAA,MAC5D,CAACgB,IAAI,IAAI6F,IAAI,CAAC7F,IAAI,CAACuC,GAAG,CAAC;YAAAwD,SAAA,CAAA/F,IAAA;YAAA;UAAA;UAAA,OAAA+F,SAAA,CAAA9F,MAAA;QAAA;UAC3B2F,QAAQ,CAAC5C,IAAI,CAAChD,IAAI,CAAC;UACnB6F,IAAI,CAAC7F,IAAI,CAACuC,GAAG,CAAC,GAAG,IAAI;UACrBuD,CAAC,GAAG9F,IAAI;UAAA+F,SAAA,CAAA/F,IAAA;UAAA;QAAA;UAAA,OAAA+F,SAAA,CAAA9F,MAAA,WAEH2F,QAAQ;QAAA;QAAA;UAAA,OAAAG,SAAA,CAAA5F,IAAA;MAAA;IAAA,GAAAwF,QAAA;EAAA,CAChB;EAAA,OAAAD,YAAA,CAAApF,KAAA,OAAAC,SAAA;AAAA;AAAA,SAEqB4F,eAAeA,CAAAC,GAAA;EAAA,OAAAC,gBAAA,CAAA/F,KAAA,OAAAC,SAAA;AAAA;AAAA,SAAA8F,iBAAA;EAAAA,gBAAA,OAAA7G,kBAAA,0BAAAC,YAAA,YAAAC,IAAA,CAA9B,SAAA4G,SAAgCjF,OAAO;IAAA,IAAAE,GAAA,EAAAsE,IAAA;IAAA,OAAApG,YAAA,YAAAI,IAAA,WAAA0G,SAAA;MAAA,kBAAAA,SAAA,CAAAxG,IAAA,GAAAwG,SAAA,CAAAvG,IAAA;QAAA;UACxCuB,GAAG,GAAGF,OAAO;UACXwE,IAAI,GAAG,CAAC,CAAC,EACf;QAAA;UAAA,KACOtE,GAAG;YAAAgF,SAAA,CAAAvG,IAAA;YAAA;UAAA;UAAA,KACJ6F,IAAI,CAACtE,GAAG,CAACgB,GAAG,CAAC;YAAAgE,SAAA,CAAAvG,IAAA;YAAA;UAAA;UACfpD,KAAK,CAAC4J,KAAK,CAAC,8BAA8B,GAAGnF,OAAO,CAAC;UAAA,OAAAkF,SAAA,CAAAtG,MAAA,WAC9CoB,OAAO;QAAA;UAEhBwE,IAAI,CAACtE,GAAG,CAACgB,GAAG,CAAC,GAAG,IAAI;UACpBlB,OAAO,GAAGE,GAAG;UAAAgF,SAAA,CAAAvG,IAAA;UAAA,OACPqC,iBAAK,CAAC2D,OAAO,CAACC,IAAI,CAAC5E,OAAO,CAAC;QAAA;UACjCE,GAAG,GAAGc,iBAAK,CAACO,GAAG,CAAC,IAAI,EAAE3F,EAAE,CAACiG,GAAG,CAAC,cAAc,CAAC,EAAE7B,OAAO,EAAEA,OAAO,CAACrC,GAAG,CAAC,CAAC,CAAC;UAAAuH,SAAA,CAAAvG,IAAA;UAAA;QAAA;UAAA,OAAAuG,SAAA,CAAAtG,MAAA,WAEhEoB,OAAO;QAAA;QAAA;UAAA,OAAAkF,SAAA,CAAApG,IAAA;MAAA;IAAA,GAAAmG,QAAA;EAAA,CACf;EAAA,OAAAD,gBAAA,CAAA/F,KAAA,OAAAC,SAAA;AAAA;AAAA,SAEqBuC,iBAAiBA,CAAA2D,GAAA;EAAA,OAAAC,kBAAA,CAAApG,KAAA,OAAAC,SAAA;AAAA;AAAA,SAAAmG,mBAAA;EAAAA,kBAAA,OAAAlH,kBAAA,0BAAAC,YAAA,YAAAC,IAAA,CAAhC,SAAAiH,SAAkCtF,OAAO;IAAA,IAAAE,GAAA,EAAAsE,IAAA;IAAA,OAAApG,YAAA,YAAAI,IAAA,WAAA+G,SAAA;MAAA,kBAAAA,SAAA,CAAA7G,IAAA,GAAA6G,SAAA,CAAA5G,IAAA;QAAA;UAC1CuB,GAAG,GAAGF,OAAO;UACXwE,IAAI,GAAG,CAAC,CAAC;QAAA;UAAA,KACRtE,GAAG;YAAAqF,SAAA,CAAA5G,IAAA;YAAA;UAAA;UAAA,KACJ6F,IAAI,CAACtE,GAAG,CAACgB,GAAG,CAAC;YAAAqE,SAAA,CAAA5G,IAAA;YAAA;UAAA;UACfpD,KAAK,CAAC4J,KAAK,CAAC,gCAAgC,GAAGnF,OAAO,CAAC;UAAA,OAAAuF,SAAA,CAAA3G,MAAA,WAChDoB,OAAO;QAAA;UAEhBwE,IAAI,CAACtE,GAAG,CAACgB,GAAG,CAAC,GAAG,IAAI;UACpBlB,OAAO,GAAGE,GAAG;UAAAqF,SAAA,CAAA5G,IAAA;UAAA,OACPqC,iBAAK,CAAC2D,OAAO,CAACC,IAAI,CAAC5E,OAAO,CAAC;QAAA;UACjCE,GAAG,GAAGc,iBAAK,CAACO,GAAG,CAACvB,OAAO,EAAEpE,EAAE,CAACiG,GAAG,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE7B,OAAO,CAACrC,GAAG,CAAC,CAAC,CAAC;UAAA4H,SAAA,CAAA5G,IAAA;UAAA;QAAA;UAAA,OAAA4G,SAAA,CAAA3G,MAAA,WAEhEoB,OAAO;QAAA;QAAA;UAAA,OAAAuF,SAAA,CAAAzG,IAAA;MAAA;IAAA,GAAAwG,QAAA;EAAA,CACf;EAAA,OAAAD,kBAAA,CAAApG,KAAA,OAAAC,SAAA;AAAA;AAEM,SAASsG,SAASA,CAAExF,OAAO,EAAE;EAClC,OAAOgB,iBAAK,CAAC8C,KAAK,CAAC9D,OAAO,EAAEpE,EAAE,CAACmG,MAAM,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE/B,OAAO,CAACrC,GAAG,CAAC,CAAC,CAAC;AAC5E;AAEO,SAAS8H,UAAUA,CAAEzF,OAAO,EAAE;EACnC,OAAOgB,iBAAK,CAAC8C,KAAK,CAAC9D,OAAO,EAAEpE,EAAE,CAACiG,GAAG,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE7B,OAAO,CAACrC,GAAG,CAAC,CAAC,CAAC;AAC1E;AAEO,SAAS+H,QAAQA,CAAE1F,OAAO,EAAE;EACjC,OAAO,IAAI,CAACwF,SAAS,CAACxF,OAAO,CAAC,IAAI,IAAI,CAACyF,UAAU,CAACzF,OAAO,CAAC;AAC5D;;AAEA;;AAEO,SAAS2F,IAAIA,CAAEC,MAAM,EAAE;EAC5B,IAAMC,CAAC,GAAG7E,iBAAK,CAACO,GAAG,CAACqE,MAAM,EAAEhK,EAAE,CAAC4F,IAAI,CAAC,MAAM,CAAC,CAAC;EAC5C,IAAIqE,CAAC,EAAE,OAAO,EAAE,GAAGA,CAAC,CAAC5H,KAAK;EAC1B,OAAO,EAAE,GAAGnC,KAAK,CAACgK,KAAK,CAACF,MAAM,CAAC;AACjC;AACA","ignoreList":[]}