solid-ui 2.6.1-0c6989e3 → 2.6.1-0ca1899

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 +84 -25
  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 +25544 -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 +23487 -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,237 +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.ACLControlBox5 = ACLControlBox5;
9
- exports.handleDrop = handleDrop;
10
- exports.preventBrowserDropEvents = preventBrowserDropEvents;
11
- exports.preventDrag = preventDrag;
12
- exports.setGlobalWindow = setGlobalWindow;
13
- exports.shortNameForFolder = shortNameForFolder;
14
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
15
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
16
- var ns = _interopRequireWildcard(require("../ns"));
17
- var utils = _interopRequireWildcard(require("../utils"));
18
- var _acl = require("./acl");
19
- var _accessController = require("./access-controller");
20
- var style = _interopRequireWildcard(require("../style"));
21
- var _debug = require("../debug");
22
- 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); }
23
- /**
24
- * Functions for rendering the ACL User Interface.
25
- * See https://github.com/solidos/userguide/blob/main/views/sharing/userguide.md#view
26
- * for a screenshot.
27
- * @packageDocumentation
28
- */
29
-
30
- var global = window;
31
- var preventBrowserDropEventsDone = Symbol('prevent double triggering of drop event');
32
-
33
- /**
34
- * See https://coshx.com/preventing-drag-and-drop-disasters-with-a-chrome-userscript
35
- * Without this dropping anything onto a browser page will cause chrome etc to jump to diff page
36
- * throwing away all the user's work.
37
- *
38
- * In apps which may use drag and drop, this utility takes care of the fact
39
- * by default in a browser, an uncaught user drop into a browser window
40
- * causes the browser to lose all its work in that window and navigate to another page
41
- *
42
- * @param document The DOM
43
- * @returns void
44
- */
45
- function preventBrowserDropEvents(document) {
46
- (0, _debug.log)('preventBrowserDropEvents called.');
47
- if (typeof global !== 'undefined') {
48
- if (global[preventBrowserDropEventsDone]) return;
49
- global[preventBrowserDropEventsDone] = true;
50
- }
51
- document.addEventListener('drop', handleDrop, false);
52
- document.addEventListener('dragenter', preventDrag, false);
53
- document.addEventListener('dragover', preventDrag, false);
54
- }
55
-
56
- /** @internal */
57
- function preventDrag(e) {
58
- e.stopPropagation();
59
- e.preventDefault();
60
- }
61
-
62
- /** @internal */
63
- function handleDrop(e) {
64
- if (e.dataTransfer.files.length > 0) {
65
- if (!global.confirm('Are you sure you want to drop this file here? (Cancel opens it in a new tab)')) {
66
- e.stopPropagation();
67
- e.preventDefault();
68
- (0, _debug.log)('@@@@ document-level DROP suppressed: ' + e.dataTransfer.dropEffect);
69
- }
70
- }
71
- }
72
-
73
- /**
74
- * Get a folder's own filename in the directory tree. Also works for
75
- * domain names; the URL protocol ('https://') acts as the tree root
76
- * with short name '/' (see also test/unit/acl/acl-control.test.ts).
77
- *
78
- * ```typescript
79
- * shortNameForFolder($rdf.namedNode('http://example.com/some/folder/'))
80
- * // 'folder'
81
- *
82
- * shortNameForFolder($rdf.namedNode('http://example.com/some/folder'))
83
- * // 'folder'
84
- *
85
- * shortNameForFolder($rdf.namedNode('http://example.com/'))
86
- * // 'example.com'
87
- *
88
- * shortNameForFolder($rdf.namedNode('http://example.com'))
89
- * // 'example.com'
90
- *
91
- * shortNameForFolder($rdf.namedNode('http://'))
92
- * // '/'
93
- * ```
94
- *
95
- * It also works with relative URLs:
96
- * ```typescript
97
- * shortNameForFolder($rdf.namedNode('../folder/'))
98
- * // 'folder'
99
- * ```
100
- *
101
- * @param x RDF Node for the folder URL
102
- * @returns Short name for the folder
103
- */
104
- function shortNameForFolder(x) {
105
- var str = x.uri;
106
-
107
- // Strip the trailing slash
108
- if (str.slice(-1) === '/') {
109
- str = str.slice(0, -1);
110
- }
111
-
112
- // Remove the path if present, keeping only the part
113
- // after the last slash.
114
- var slash = str.lastIndexOf('/');
115
- if (slash >= 0) {
116
- str = str.slice(slash + 1);
117
- }
118
- // Return the folder's filename, or '/' if nothing found
119
- // (but see https://github.com/solidos/solid-ui/issues/196
120
- // regarding whether this happens at the domain root or
121
- // not)
122
- return str || '/';
123
- }
124
-
125
- /**
126
- * A wrapper that retrieves ACL data and uses it
127
- * to render an [[AccessController]] component.
128
- * Presumably the '5' is a version number of some sort,
129
- * but all we know is it was already called ACLControlBox5
130
- * when it was introduced into solid-ui in
131
- * https://github.com/solidos/solid-ui/commit/948b874bd93e7bf5160e6e224821b888f07d15f3#diff-4192a29f38a0ababd563b36b47eba5bbR54
132
- */
133
- function ACLControlBox5(subject, context, noun, kb) {
134
- var dom = context.dom;
135
- var doc = subject.doc(); // The ACL is actually to the doc describing the thing
136
-
137
- var container = dom.createElement('div');
138
- container.setAttribute('style', style.aclControlBoxContainer);
139
- var header = container.appendChild(dom.createElement('h1'));
140
- header.textContent = "Sharing for ".concat(noun, " ").concat(utils.label(subject));
141
- header.setAttribute('style', style.aclControlBoxHeader);
142
- var status = container.appendChild(dom.createElement('div'));
143
- status.setAttribute('style', style.aclControlBoxStatus);
144
- try {
145
- loadController(doc, kb, subject, noun, context, dom, status).then(function (controller) {
146
- return container.appendChild(controller.render());
147
- });
148
- } catch (error) {
149
- status.innerText = error;
150
- }
151
- return container;
152
- }
153
- function loadController(_x, _x2, _x3, _x4, _x5, _x6, _x7) {
154
- return _loadController.apply(this, arguments);
155
- }
156
- function _loadController() {
157
- _loadController = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee2(doc, kb, subject, noun, context, dom, status) {
158
- return _regenerator["default"].wrap(function (_context2) {
159
- while (1) switch (_context2.prev = _context2.next) {
160
- case 0:
161
- return _context2.abrupt("return", new Promise(function (resolve, reject) {
162
- return (0, _acl.getACLorDefault)(doc, /*#__PURE__*/function () {
163
- var _ref = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee(ok, isDirectACL, targetDoc, targetACLDoc, defaultHolder, defaultACLDoc) {
164
- var targetDirectory, targetIsProtected, prospectiveDefaultHolder, getController, _t;
165
- return _regenerator["default"].wrap(function (_context) {
166
- while (1) switch (_context.prev = _context.next) {
167
- case 0:
168
- getController = function _getController(prospectiveDefaultHolder) {
169
- return new _accessController.AccessController(subject, noun, context, status, targetIsProtected, targetDoc, targetACLDoc, defaultHolder, defaultACLDoc, prospectiveDefaultHolder, kb, dom);
170
- };
171
- if (ok) {
172
- _context.next = 1;
173
- break;
174
- }
175
- return _context.abrupt("return", reject(new Error("Error reading ".concat(isDirectACL ? '' : ' default ', "ACL. status ").concat(targetDoc, ": ").concat(targetACLDoc))));
176
- case 1:
177
- targetDirectory = getDirectory(targetDoc);
178
- targetIsProtected = isStorage(targetDoc, targetACLDoc, kb) || hasProtectedAcl(targetDoc);
179
- if (!(!targetIsProtected && targetDirectory)) {
180
- _context.next = 5;
181
- break;
182
- }
183
- _context.prev = 2;
184
- _context.next = 3;
185
- return (0, _acl.getProspectiveHolder)(targetDirectory);
186
- case 3:
187
- prospectiveDefaultHolder = _context.sent;
188
- return _context.abrupt("return", resolve(getController(prospectiveDefaultHolder)));
189
- case 4:
190
- _context.prev = 4;
191
- _t = _context["catch"](2);
192
- // No need to show this error in status, but good to warn about it in console
193
- (0, _debug.warn)(_t);
194
- case 5:
195
- return _context.abrupt("return", resolve(getController()));
196
- case 6:
197
- case "end":
198
- return _context.stop();
199
- }
200
- }, _callee, null, [[2, 4]]);
201
- }));
202
- return function (_x8, _x9, _x0, _x1, _x10, _x11) {
203
- return _ref.apply(this, arguments);
204
- };
205
- }());
206
- }));
207
- case 1:
208
- case "end":
209
- return _context2.stop();
210
- }
211
- }, _callee2);
212
- }));
213
- return _loadController.apply(this, arguments);
214
- }
215
- function getDirectory(doc) {
216
- var str = doc.uri.split('#')[0];
217
- var p = str.slice(0, -1).lastIndexOf('/');
218
- var q = str.indexOf('//');
219
- return q >= 0 && p < q + 2 || p < 0 ? null : str.slice(0, p + 1);
220
- }
221
- function isStorage(doc, aclDoc, store) {
222
- // @@ TODO: The methods used for targetIsStorage are HACKs - it should not be relied upon, and work is
223
- // @@ underway to standardize a behavior that does not rely upon this hack
224
- // @@ hopefully fixed as part of https://github.com/solidos/data-interoperability-panel/issues/10
225
- return store.holds(doc, ns.rdf('type'), ns.space('Storage'), aclDoc);
226
- }
227
- function hasProtectedAcl(targetDoc) {
228
- // @@ TODO: This is hacky way of knowing whether or not a certain ACL file can be removed
229
- // Hopefully we'll find a better, standardized solution to this - https://github.com/solidos/specification/issues/37
230
- return targetDoc.uri === targetDoc.site().uri;
231
- }
232
-
233
- /** @internal */
234
- function setGlobalWindow(window) {
235
- global = window;
236
- }
237
- //# sourceMappingURL=acl-control.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"acl-control.js","names":["ns","_interopRequireWildcard","require","utils","_acl","_accessController","style","_debug","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t2","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","global","window","preventBrowserDropEventsDone","Symbol","preventBrowserDropEvents","document","log","addEventListener","handleDrop","preventDrag","stopPropagation","preventDefault","dataTransfer","files","length","confirm","dropEffect","shortNameForFolder","x","str","uri","slice","slash","lastIndexOf","ACLControlBox5","subject","context","noun","kb","dom","doc","container","createElement","setAttribute","aclControlBoxContainer","header","appendChild","textContent","concat","label","aclControlBoxHeader","status","aclControlBoxStatus","loadController","then","controller","render","error","innerText","_x","_x2","_x3","_x4","_x5","_x6","_x7","_loadController","apply","arguments","_asyncToGenerator2","_regenerator","mark","_callee2","wrap","_context2","prev","next","abrupt","Promise","resolve","reject","getACLorDefault","_ref","_callee","ok","isDirectACL","targetDoc","targetACLDoc","defaultHolder","defaultACLDoc","targetDirectory","targetIsProtected","prospectiveDefaultHolder","getController","_t","_context","_getController","AccessController","Error","getDirectory","isStorage","hasProtectedAcl","getProspectiveHolder","sent","warn","stop","_x8","_x9","_x0","_x1","_x10","_x11","split","p","q","indexOf","aclDoc","store","holds","rdf","space","site","setGlobalWindow"],"sources":["../../src/acl/acl-control.ts"],"sourcesContent":["/**\n * Functions for rendering the ACL User Interface.\n * See https://github.com/solidos/userguide/blob/main/views/sharing/userguide.md#view\n * for a screenshot.\n * @packageDocumentation\n */\n\nimport * as ns from '../ns'\nimport * as utils from '../utils'\nimport { getACLorDefault, getProspectiveHolder } from './acl'\nimport { Store, NamedNode } from 'rdflib'\nimport { DataBrowserContext } from 'pane-registry'\nimport { AccessController } from './access-controller'\nimport * as style from '../style'\nimport { log, warn } from '../debug'\n\nlet global: Window = window\nconst preventBrowserDropEventsDone = Symbol('prevent double triggering of drop event')\n\n/**\n * See https://coshx.com/preventing-drag-and-drop-disasters-with-a-chrome-userscript\n * Without this dropping anything onto a browser page will cause chrome etc to jump to diff page\n * throwing away all the user's work.\n *\n * In apps which may use drag and drop, this utility takes care of the fact\n * by default in a browser, an uncaught user drop into a browser window\n * causes the browser to lose all its work in that window and navigate to another page\n *\n * @param document The DOM\n * @returns void\n */\nexport function preventBrowserDropEvents (document: HTMLDocument): void {\n log('preventBrowserDropEvents called.')\n if (typeof global !== 'undefined') {\n if (global[preventBrowserDropEventsDone]) return\n global[preventBrowserDropEventsDone] = true\n }\n\n document.addEventListener('drop', handleDrop, false)\n document.addEventListener('dragenter', preventDrag, false)\n document.addEventListener('dragover', preventDrag, false)\n}\n\n/** @internal */\nexport function preventDrag (e) {\n e.stopPropagation()\n e.preventDefault()\n}\n\n/** @internal */\nexport function handleDrop (e) {\n if (e.dataTransfer.files.length > 0) {\n if (\n !global.confirm('Are you sure you want to drop this file here? (Cancel opens it in a new tab)')\n ) {\n e.stopPropagation()\n e.preventDefault()\n log('@@@@ document-level DROP suppressed: ' + e.dataTransfer.dropEffect\n )\n }\n }\n}\n\n/**\n * Get a folder's own filename in the directory tree. Also works for\n * domain names; the URL protocol ('https://') acts as the tree root\n * with short name '/' (see also test/unit/acl/acl-control.test.ts).\n *\n * ```typescript\n * shortNameForFolder($rdf.namedNode('http://example.com/some/folder/'))\n * // 'folder'\n *\n * shortNameForFolder($rdf.namedNode('http://example.com/some/folder'))\n * // 'folder'\n *\n * shortNameForFolder($rdf.namedNode('http://example.com/'))\n * // 'example.com'\n *\n * shortNameForFolder($rdf.namedNode('http://example.com'))\n * // 'example.com'\n *\n * shortNameForFolder($rdf.namedNode('http://'))\n * // '/'\n * ```\n *\n * It also works with relative URLs:\n * ```typescript\n * shortNameForFolder($rdf.namedNode('../folder/'))\n * // 'folder'\n * ```\n *\n * @param x RDF Node for the folder URL\n * @returns Short name for the folder\n */\nexport function shortNameForFolder (x: NamedNode): string {\n let str = x.uri\n\n // Strip the trailing slash\n if (str.slice(-1) === '/') {\n str = str.slice(0, -1)\n }\n\n // Remove the path if present, keeping only the part\n // after the last slash.\n const slash = str.lastIndexOf('/')\n if (slash >= 0) {\n str = str.slice(slash + 1)\n }\n // Return the folder's filename, or '/' if nothing found\n // (but see https://github.com/solidos/solid-ui/issues/196\n // regarding whether this happens at the domain root or\n // not)\n return str || '/'\n}\n\n/**\n * A wrapper that retrieves ACL data and uses it\n * to render an [[AccessController]] component.\n * Presumably the '5' is a version number of some sort,\n * but all we know is it was already called ACLControlBox5\n * when it was introduced into solid-ui in\n * https://github.com/solidos/solid-ui/commit/948b874bd93e7bf5160e6e224821b888f07d15f3#diff-4192a29f38a0ababd563b36b47eba5bbR54\n */\nexport function ACLControlBox5 (\n subject: NamedNode,\n context: DataBrowserContext,\n noun: string,\n kb: Store\n): HTMLElement {\n const dom = context.dom\n const doc = subject.doc() // The ACL is actually to the doc describing the thing\n\n const container = dom.createElement('div')\n container.setAttribute('style', style.aclControlBoxContainer)\n\n const header = container.appendChild(dom.createElement('h1'))\n header.textContent = `Sharing for ${noun} ${utils.label(subject)}`\n header.setAttribute('style', style.aclControlBoxHeader)\n\n const status = container.appendChild(dom.createElement('div'))\n status.setAttribute('style', style.aclControlBoxStatus)\n\n try {\n loadController(doc, kb, subject, noun, context, dom, status)\n .then(controller => container.appendChild(controller.render()))\n } catch (error) {\n status.innerText = error\n }\n\n return container\n}\n\nasync function loadController (\n doc: NamedNode,\n kb: Store,\n subject: NamedNode,\n noun: string,\n context: DataBrowserContext,\n dom: HTMLDocument,\n status: HTMLElement\n): Promise<AccessController> {\n return new Promise((resolve, reject) => getACLorDefault(doc, async (\n ok,\n isDirectACL,\n targetDoc,\n targetACLDoc,\n defaultHolder,\n defaultACLDoc\n ) => {\n if (!ok) {\n return reject(new Error(`Error reading ${isDirectACL ? '' : ' default '}ACL. status ${targetDoc}: ${targetACLDoc}`))\n }\n const targetDirectory = getDirectory(targetDoc as NamedNode)\n const targetIsProtected = isStorage(targetDoc as NamedNode, targetACLDoc as NamedNode, kb) || hasProtectedAcl(targetDoc as NamedNode)\n if (!targetIsProtected && targetDirectory) {\n try {\n const prospectiveDefaultHolder = await getProspectiveHolder(targetDirectory)\n return resolve(getController(prospectiveDefaultHolder))\n } catch (error) {\n // No need to show this error in status, but good to warn about it in console\n warn(error)\n }\n }\n return resolve(getController())\n\n function getController (prospectiveDefaultHolder?: NamedNode) {\n return new AccessController(subject, noun, context, status, targetIsProtected, targetDoc as NamedNode, targetACLDoc as NamedNode, defaultHolder as NamedNode,\n defaultACLDoc as NamedNode, prospectiveDefaultHolder, kb, dom as HTMLDocument)\n }\n }))\n}\n\nfunction getDirectory (doc: NamedNode): string | null {\n const str = doc.uri.split('#')[0]\n const p = str.slice(0, -1).lastIndexOf('/')\n const q = str.indexOf('//')\n return (q >= 0 && p < q + 2) || p < 0 ? null : str.slice(0, p + 1)\n}\n\nfunction isStorage (doc: NamedNode, aclDoc: NamedNode, store: Store): boolean {\n // @@ TODO: The methods used for targetIsStorage are HACKs - it should not be relied upon, and work is\n // @@ underway to standardize a behavior that does not rely upon this hack\n // @@ hopefully fixed as part of https://github.com/solidos/data-interoperability-panel/issues/10\n return store.holds(doc, ns.rdf('type'), ns.space('Storage'), aclDoc)\n}\n\nfunction hasProtectedAcl (targetDoc: NamedNode): boolean {\n // @@ TODO: This is hacky way of knowing whether or not a certain ACL file can be removed\n // Hopefully we'll find a better, standardized solution to this - https://github.com/solidos/specification/issues/37\n return targetDoc.uri === targetDoc.site().uri\n}\n\n/** @internal */\nexport function setGlobalWindow (window: Window) {\n global = window\n}\n"],"mappings":"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","ignoreList":[]}