solid-ui 5.0.2-4 → 5.0.2-5

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 (265) hide show
  1. package/dist/acl/access-controller.cjs.js +1 -1
  2. package/dist/acl/access-controller.cjs.js.map +1 -1
  3. package/dist/acl/access-controller.esm.js +37 -37
  4. package/dist/acl/access-groups.cjs.js +2 -2
  5. package/dist/acl/access-groups.cjs.js.map +1 -1
  6. package/dist/acl/access-groups.esm.js +78 -78
  7. package/dist/acl/acl-control.cjs.js +1 -1
  8. package/dist/acl/acl-control.cjs.js.map +1 -1
  9. package/dist/acl/acl-control.esm.js +19 -19
  10. package/dist/acl/add-agent-buttons.cjs.js +1 -1
  11. package/dist/acl/add-agent-buttons.cjs.js.map +1 -1
  12. package/dist/acl/add-agent-buttons.esm.js +51 -51
  13. package/dist/chat/bookmarks.cjs.js +1 -1
  14. package/dist/chat/bookmarks.cjs.js.map +1 -1
  15. package/dist/chat/bookmarks.esm.js +44 -44
  16. package/dist/chat/bookmarks.esm.js.map +1 -1
  17. package/dist/chat/chatLogic.cjs.js +2 -2
  18. package/dist/chat/chatLogic.cjs.js.map +1 -1
  19. package/dist/chat/chatLogic.esm.js +54 -54
  20. package/dist/chat/dateFolder.cjs.js +1 -1
  21. package/dist/chat/dateFolder.cjs.js.map +1 -1
  22. package/dist/chat/dateFolder.esm.js +30 -30
  23. package/dist/chat/infinite.cjs.js +1 -1
  24. package/dist/chat/infinite.cjs.js.map +1 -1
  25. package/dist/chat/infinite.esm.js +49 -49
  26. package/dist/chat/keys.cjs.js +2 -2
  27. package/dist/chat/keys.cjs.js.map +1 -1
  28. package/dist/chat/keys.esm.js +17 -17
  29. package/dist/chat/message.cjs.js +4 -4
  30. package/dist/chat/message.cjs.js.map +1 -1
  31. package/dist/chat/message.esm.js +114 -114
  32. package/dist/chat/message.esm.js.map +1 -1
  33. package/dist/chat/messageTools.cjs.js +1 -1
  34. package/dist/chat/messageTools.cjs.js.map +1 -1
  35. package/dist/chat/messageTools.esm.js +51 -51
  36. package/dist/chunks/{ResourceActionsMenu-Bllpr4M5.js → ResourceActionsMenu-Bx7YWY3E.js} +29 -29
  37. package/dist/chunks/{ResourceActionsMenu-Bllpr4M5.js.map → ResourceActionsMenu-Bx7YWY3E.js.map} +1 -1
  38. package/dist/chunks/{access-control-modal-CwmY_Dod.js → access-control-modal-B1mFFIyz.js} +165 -165
  39. package/dist/chunks/{access-control-modal-CwmY_Dod.js.map → access-control-modal-B1mFFIyz.js.map} +1 -1
  40. package/dist/chunks/{account-CoHPKKDu.js → account-DWmMJre6.js} +22 -22
  41. package/dist/chunks/{account-CoHPKKDu.js.map → account-DWmMJre6.js.map} +1 -1
  42. package/dist/chunks/{auth-CocCqS1p.js → auth-EK-iYNYZ.js} +37 -37
  43. package/dist/chunks/{auth-CocCqS1p.js.map → auth-EK-iYNYZ.js.map} +1 -1
  44. package/dist/chunks/{avatar-sNdKdWVO.js → avatar-BBgvMlqv.js} +13 -13
  45. package/dist/chunks/{avatar-sNdKdWVO.js.map → avatar-BBgvMlqv.js.map} +1 -1
  46. package/dist/chunks/{combobox-fSTp9qoT.js → combobox-DS6byaf1.js} +3 -3
  47. package/dist/chunks/{combobox-fSTp9qoT.js.map → combobox-DS6byaf1.js.map} +1 -1
  48. package/dist/chunks/{error-state-BD4_Wrkz.js → error-state-jV9dlFX2.js} +2 -2
  49. package/dist/chunks/{error-state-BD4_Wrkz.js.map → error-state-jV9dlFX2.js.map} +1 -1
  50. package/dist/chunks/{file-explorer-header-D0TebSYR.js → file-explorer-header-Djp_eFuT.js} +50 -50
  51. package/dist/chunks/{file-explorer-header-D0TebSYR.js.map → file-explorer-header-Djp_eFuT.js.map} +1 -1
  52. package/dist/chunks/{guard-BOicu9dt.js → guard-SxVT1xr4.js} +13 -13
  53. package/dist/chunks/{guard-BOicu9dt.js.map → guard-SxVT1xr4.js.map} +1 -1
  54. package/dist/chunks/{index.esm-C9oV3H3X.js → index.esm-BQrkxchZ.js} +2 -2
  55. package/dist/chunks/{index.esm-C9oV3H3X.js.map → index.esm-BQrkxchZ.js.map} +1 -1
  56. package/dist/chunks/{jsonld-D-TE94B0.js → jsonld-C6IOQ1Tg.js} +2 -2
  57. package/dist/chunks/{jsonld-D-TE94B0.js.map → jsonld-C6IOQ1Tg.js.map} +1 -1
  58. package/dist/chunks/{login-button-clTw_9tX.js → login-button-Dd0rwZJk.js} +11 -11
  59. package/dist/chunks/{login-button-clTw_9tX.js.map → login-button-Dd0rwZJk.js.map} +1 -1
  60. package/dist/chunks/{logout-button-CP-Pz70O.js → logout-button-Da34Lrnq.js} +11 -11
  61. package/dist/chunks/{logout-button-CP-Pz70O.js.map → logout-button-Da34Lrnq.js.map} +1 -1
  62. package/dist/chunks/{menu-D0k2fkiE.js → menu-BNJU654v.js} +2 -2
  63. package/dist/chunks/{menu-D0k2fkiE.js.map → menu-BNJU654v.js.map} +1 -1
  64. package/dist/chunks/{provider-Cuv3Kp6G.js → provider-B3FoP2qW.js} +11 -11
  65. package/dist/chunks/{provider-Cuv3Kp6G.js.map → provider-B3FoP2qW.js.map} +1 -1
  66. package/dist/chunks/{rdf-form-DVmTw3RG.js → rdf-form-BkKDmFPD.js} +36 -36
  67. package/dist/chunks/{rdf-form-DVmTw3RG.js.map → rdf-form-BkKDmFPD.js.map} +1 -1
  68. package/dist/chunks/{rdf-input-CRYLK-27.js → rdf-input-BPePtqfS.js} +61 -61
  69. package/dist/chunks/{rdf-input-CRYLK-27.js.map → rdf-input-BPePtqfS.js.map} +1 -1
  70. package/dist/chunks/{signup-button-CexdMWj6.js → signup-button-DOInssOu.js} +11 -11
  71. package/dist/chunks/{signup-button-CexdMWj6.js.map → signup-button-DOInssOu.js.map} +1 -1
  72. package/dist/chunks/{solidLogicSingleton.esm-BXyHD7mn.js → solidLogicSingleton.esm-Bvt7E7Vl.js} +50 -29
  73. package/dist/chunks/solidLogicSingleton.esm-Bvt7E7Vl.js.map +1 -0
  74. package/dist/chunks/{src-DQgHAH3d.js → src-akaVfkuf.js} +1956 -1944
  75. package/dist/chunks/src-akaVfkuf.js.map +1 -0
  76. package/dist/chunks/{style-CXaw5EYi.js → style-Dlw9-wPn.js} +3 -3
  77. package/dist/chunks/{style-CXaw5EYi.js.map → style-Dlw9-wPn.js.map} +1 -1
  78. package/dist/chunks/{widgets-BBEQu0CS.js → widgets-B1hBVhRL.js} +309 -309
  79. package/dist/chunks/widgets-B1hBVhRL.js.map +1 -0
  80. package/dist/components/access-control-modal/AccessControlAddAccess.cjs.js +1 -1
  81. package/dist/components/access-control-modal/AccessControlAddAccess.esm.js +5 -5
  82. package/dist/components/access-control-modal/AccessControlGeneralAccess.cjs.js +2 -2
  83. package/dist/components/access-control-modal/AccessControlGeneralAccess.cjs.js.map +1 -1
  84. package/dist/components/access-control-modal/AccessControlGeneralAccess.esm.js +12 -12
  85. package/dist/components/access-control-modal/AccessControlModal.cjs.js +2 -2
  86. package/dist/components/access-control-modal/AccessControlModal.cjs.js.map +1 -1
  87. package/dist/components/access-control-modal/AccessControlModal.esm.js +35 -35
  88. package/dist/components/access-control-modal/AccessControlModal.esm.js.map +1 -1
  89. package/dist/components/access-control-modal/AccessControlSharedAccess.cjs.js +1 -1
  90. package/dist/components/access-control-modal/AccessControlSharedAccess.esm.js +2 -2
  91. package/dist/components/access-control-modal/accessTargetResolver.cjs.js +1 -1
  92. package/dist/components/access-control-modal/accessTargetResolver.cjs.js.map +1 -1
  93. package/dist/components/access-control-modal/accessTargetResolver.esm.js +21 -21
  94. package/dist/components/access-control-modal.js +1 -1
  95. package/dist/components/account/Account.cjs.js +1 -1
  96. package/dist/components/account/Account.esm.js +3 -3
  97. package/dist/components/account.js +1 -1
  98. package/dist/components/all.cjs.js +1 -1
  99. package/dist/components/all.esm.js +16 -16
  100. package/dist/components/avatar.js +1 -1
  101. package/dist/components/combobox/Combobox.cjs.js +1 -1
  102. package/dist/components/combobox/Combobox.esm.js +1 -1
  103. package/dist/components/combobox.js +1 -1
  104. package/dist/components/dialog/Dialog.cjs.js +2 -2
  105. package/dist/components/dialog/Dialog.cjs.js.map +1 -1
  106. package/dist/components/dialog/Dialog.esm.js +9 -9
  107. package/dist/components/dialog/Dialog.esm.js.map +1 -1
  108. package/dist/components/dialog-provider/DialogProvider.cjs.js +1 -1
  109. package/dist/components/dialog-provider/DialogProvider.cjs.js.map +1 -1
  110. package/dist/components/dialog-provider/DialogProvider.esm.js +6 -6
  111. package/dist/components/dialogs-root/DialogsRoot.cjs.js +2 -2
  112. package/dist/components/dialogs-root/DialogsRoot.cjs.js.map +1 -1
  113. package/dist/components/dialogs-root/DialogsRoot.esm.js +7 -7
  114. package/dist/components/error-state/ErrorState.cjs.js +1 -1
  115. package/dist/components/error-state/ErrorState.esm.js +1 -1
  116. package/dist/components/error-state.js +1 -1
  117. package/dist/components/file-explorer-header/FileExplorerHeaderControls.cjs.js +2 -2
  118. package/dist/components/file-explorer-header/FileExplorerHeaderControls.cjs.js.map +1 -1
  119. package/dist/components/file-explorer-header/FileExplorerHeaderControls.esm.js +10 -10
  120. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.cjs.js +1 -1
  121. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.esm.js +5 -5
  122. package/dist/components/file-explorer-header.js +1 -1
  123. package/dist/components/guard.js +1 -1
  124. package/dist/components/login-button/LoginButton.cjs.js +1 -1
  125. package/dist/components/login-button/LoginButton.esm.js +1 -1
  126. package/dist/components/login-button.js +1 -1
  127. package/dist/components/login-modal/LoginModal.cjs.js +1 -1
  128. package/dist/components/login-modal/LoginModal.esm.js +2 -2
  129. package/dist/components/login-modal.js +1 -1
  130. package/dist/components/logout-button/LogoutButton.cjs.js +1 -1
  131. package/dist/components/logout-button/LogoutButton.esm.js +1 -1
  132. package/dist/components/logout-button.js +1 -1
  133. package/dist/components/menu/Menu.cjs.js +1 -1
  134. package/dist/components/menu/Menu.cjs.js.map +1 -1
  135. package/dist/components/menu/Menu.esm.js +1 -1
  136. package/dist/components/menu/Menu.esm.js.map +1 -1
  137. package/dist/components/menu.js +1 -1
  138. package/dist/components/provider.js +1 -1
  139. package/dist/components/rdf-form/RDFForm.cjs.js +3 -3
  140. package/dist/components/rdf-form/RDFForm.cjs.js.map +1 -1
  141. package/dist/components/rdf-form/RDFForm.esm.js +13 -13
  142. package/dist/components/rdf-form/RDFForm.esm.js.map +1 -1
  143. package/dist/components/rdf-form.js +1 -1
  144. package/dist/components/rdf-input/RDFInput.cjs.js +2 -2
  145. package/dist/components/rdf-input/RDFInput.cjs.js.map +1 -1
  146. package/dist/components/rdf-input/RDFInput.esm.js +4 -4
  147. package/dist/components/rdf-input/RDFInput.esm.js.map +1 -1
  148. package/dist/components/rdf-input.js +1 -1
  149. package/dist/components/resource-actions-menu/ResourceActionsMenu.cjs.js +3 -3
  150. package/dist/components/resource-actions-menu/ResourceActionsMenu.cjs.js.map +1 -1
  151. package/dist/components/resource-actions-menu/ResourceActionsMenu.esm.js +7 -7
  152. package/dist/components/resource-actions-menu.js +1 -1
  153. package/dist/components/select/Select.cjs.js +1 -1
  154. package/dist/components/select/Select.cjs.js.map +1 -1
  155. package/dist/components/select/Select.esm.js +1 -1
  156. package/dist/components/signup-button/SignupButton.cjs.js +1 -1
  157. package/dist/components/signup-button/SignupButton.esm.js +1 -1
  158. package/dist/components/signup-button.js +1 -1
  159. package/dist/components.js +21 -21
  160. package/dist/create/create.cjs.js +1 -1
  161. package/dist/create/create.cjs.js.map +1 -1
  162. package/dist/create/create.esm.js +23 -23
  163. package/dist/header/index.cjs.js +1 -1
  164. package/dist/header/index.cjs.js.map +1 -1
  165. package/dist/header/index.esm.js +53 -53
  166. package/dist/index.cjs.js +1 -1
  167. package/dist/index.cjs.js.map +1 -1
  168. package/dist/index.esm.js +20 -20
  169. package/dist/index.js +5 -5
  170. package/dist/lib/auth/SolidAuth.cjs.js +1 -1
  171. package/dist/lib/auth/SolidAuth.cjs.js.map +1 -1
  172. package/dist/lib/auth/SolidAuth.esm.js +8 -8
  173. package/dist/lib/auth/SolidAuth.esm.js.map +1 -1
  174. package/dist/lib/code-editor/CodeEditor.cjs.js +1 -1
  175. package/dist/lib/code-editor/CodeEditor.cjs.js.map +1 -1
  176. package/dist/lib/code-editor/CodeEditor.d.ts.map +1 -1
  177. package/dist/lib/code-editor/CodeEditor.esm.js +34 -30
  178. package/dist/lib/code-editor/CodeEditor.esm.js.map +1 -1
  179. package/dist/lib/components/dialog-component/DialogComponent.cjs.js +1 -1
  180. package/dist/lib/components/dialog-component/DialogComponent.cjs.js.map +1 -1
  181. package/dist/lib/components/dialog-component/DialogComponent.esm.js +4 -4
  182. package/dist/lib/components/index.cjs.js +1 -1
  183. package/dist/lib/components/index.esm.js +3 -3
  184. package/dist/lib/dialogs/helpers.cjs.js +1 -1
  185. package/dist/lib/dialogs/helpers.cjs.js.map +1 -1
  186. package/dist/lib/dialogs/helpers.esm.js +4 -4
  187. package/dist/lib/file-explorer/relevant-panes.cjs.js +1 -1
  188. package/dist/lib/file-explorer/relevant-panes.cjs.js.map +1 -1
  189. package/dist/lib/file-explorer/relevant-panes.esm.js +8 -8
  190. package/dist/lib/messageArea.cjs.js +1 -1
  191. package/dist/lib/messageArea.cjs.js.map +1 -1
  192. package/dist/lib/messageArea.esm.js +27 -27
  193. package/dist/lib/pad.cjs.js +1 -1
  194. package/dist/lib/pad.cjs.js.map +1 -1
  195. package/dist/lib/pad.esm.js +15 -15
  196. package/dist/lib/participation.cjs.js +1 -1
  197. package/dist/lib/participation.cjs.js.map +1 -1
  198. package/dist/lib/participation.esm.js +59 -59
  199. package/dist/lib/preferences.cjs.js +1 -1
  200. package/dist/lib/preferences.cjs.js.map +1 -1
  201. package/dist/lib/preferences.esm.js +28 -28
  202. package/dist/lib/table.cjs.js +3 -3
  203. package/dist/lib/table.cjs.js.map +1 -1
  204. package/dist/lib/table.esm.js +123 -123
  205. package/dist/lib/table.esm.js.map +1 -1
  206. package/dist/lib/tabs.cjs.js +1 -1
  207. package/dist/lib/tabs.cjs.js.map +1 -1
  208. package/dist/lib/tabs.esm.js +16 -16
  209. package/dist/loader.js +11 -11
  210. package/dist/login/login.cjs.js +6 -6
  211. package/dist/login/login.cjs.js.map +1 -1
  212. package/dist/login/login.esm.js +142 -142
  213. package/dist/media/media-capture.cjs.js +1 -1
  214. package/dist/media/media-capture.cjs.js.map +1 -1
  215. package/dist/media/media-capture.esm.js +6 -6
  216. package/dist/solid-ui.js +18 -18
  217. package/dist/solid-ui.min.js +18 -18
  218. package/dist/solid-ui.min.js.map +1 -1
  219. package/dist/utils/index.cjs.js +1 -1
  220. package/dist/utils/index.cjs.js.map +1 -1
  221. package/dist/utils/index.esm.js +4 -4
  222. package/dist/utils/keyHelpers/accessData.cjs.js +1 -1
  223. package/dist/utils/keyHelpers/accessData.cjs.js.map +1 -1
  224. package/dist/utils/keyHelpers/accessData.esm.js +15 -15
  225. package/dist/utils/label.cjs.js +1 -1
  226. package/dist/utils/label.cjs.js.map +1 -1
  227. package/dist/utils/label.esm.js +4 -4
  228. package/dist/widgets/buttons.cjs.js +12 -12
  229. package/dist/widgets/buttons.cjs.js.map +1 -1
  230. package/dist/widgets/buttons.esm.js +179 -179
  231. package/dist/widgets/error.cjs.js +1 -1
  232. package/dist/widgets/error.cjs.js.map +1 -1
  233. package/dist/widgets/error.esm.js +5 -5
  234. package/dist/widgets/forms/autocomplete/autocompleteBar.cjs.js +1 -1
  235. package/dist/widgets/forms/autocomplete/autocompleteBar.cjs.js.map +1 -1
  236. package/dist/widgets/forms/autocomplete/autocompleteBar.esm.js +17 -17
  237. package/dist/widgets/forms/autocomplete/autocompleteField.cjs.js +1 -1
  238. package/dist/widgets/forms/autocomplete/autocompleteField.cjs.js.map +1 -1
  239. package/dist/widgets/forms/autocomplete/autocompleteField.esm.js +23 -23
  240. package/dist/widgets/forms/autocomplete/autocompletePicker.cjs.js +1 -1
  241. package/dist/widgets/forms/autocomplete/autocompletePicker.cjs.js.map +1 -1
  242. package/dist/widgets/forms/autocomplete/autocompletePicker.esm.js +26 -26
  243. package/dist/widgets/forms/autocomplete/language.cjs.js +1 -1
  244. package/dist/widgets/forms/autocomplete/language.cjs.js.map +1 -1
  245. package/dist/widgets/forms/autocomplete/language.esm.js +9 -9
  246. package/dist/widgets/forms/autocomplete/publicData.cjs.js +5 -5
  247. package/dist/widgets/forms/autocomplete/publicData.cjs.js.map +1 -1
  248. package/dist/widgets/forms/autocomplete/publicData.esm.js +67 -67
  249. package/dist/widgets/forms/basic.cjs.js +1 -1
  250. package/dist/widgets/forms/basic.cjs.js.map +1 -1
  251. package/dist/widgets/forms/basic.esm.js +11 -11
  252. package/dist/widgets/forms.cjs.js +4 -4
  253. package/dist/widgets/forms.cjs.js.map +1 -1
  254. package/dist/widgets/forms.esm.js +561 -561
  255. package/dist/widgets/forms.esm.js.map +1 -1
  256. package/dist/widgets/index.cjs.js +1 -1
  257. package/dist/widgets/index.cjs.js.map +1 -1
  258. package/dist/widgets/index.esm.js +82 -82
  259. package/dist/widgets/peoplePicker.cjs.js +2 -2
  260. package/dist/widgets/peoplePicker.cjs.js.map +1 -1
  261. package/dist/widgets/peoplePicker.esm.js +82 -82
  262. package/package.json +3 -3
  263. package/dist/chunks/solidLogicSingleton.esm-BXyHD7mn.js.map +0 -1
  264. package/dist/chunks/src-DQgHAH3d.js.map +0 -1
  265. package/dist/chunks/widgets-BBEQu0CS.js.map +0 -1
@@ -1,63 +1,63 @@
1
- import e from "../lib/ns.esm.js";
2
- import { label as t } from "../utils/label.esm.js";
1
+ import { log as e, warn as t } from "../lib/debug.esm.js";
2
+ import { label as n } from "../utils/label.esm.js";
3
+ import { icons as r } from "../lib/iconBase.esm.js";
4
+ import i from "../lib/ns.esm.js";
5
+ import { errorMessageBlock as a } from "../widgets/error.esm.js";
3
6
  import "../utils/index.esm.js";
4
- import { log as n, warn as r } from "../lib/debug.esm.js";
5
- import { errorMessageBlock as i } from "../widgets/error.esm.js";
6
- import { icons as a } from "../lib/iconBase.esm.js";
7
7
  import { button as o, cancelButton as s, deleteButtonWithCheck as c, refreshTree as l } from "../widgets/buttons.esm.js";
8
8
  import { newThing as u } from "../widgets/forms.esm.js";
9
9
  import "../widgets/index.esm.js";
10
- import { allVersions as d, isDeleted as f, mostRecentVersion as p } from "./chatLogic.esm.js";
11
- import { renderBookmarksButton as m } from "./bookmarks.esm.js";
10
+ import { renderBookmarksButton as d } from "./bookmarks.esm.js";
11
+ import { allVersions as f, isDeleted as p, mostRecentVersion as m } from "./chatLogic.esm.js";
12
12
  import { switchToEditor as h } from "./message.esm.js";
13
13
  import * as g from "rdflib";
14
14
  import { authn as _, store as v } from "solid-logic";
15
15
  // src/chat/messageTools.js
16
16
  var y = window.document, b = "noun_253504.svg", x = "noun_1384132.svg", S = "noun_1384135.svg", C = "noun-reply-5506924.svg", w = {};
17
- w[e.schema("AgreeAction")] = "👍", w[e.schema("DisagreeAction")] = "👎", w[e.schema("EndorseAction")] = "⭐️", w[e.schema("LikeAction")] = "❤️";
18
- async function T(t, r) {
19
- let i = y.createElement("span");
17
+ w[i.schema("AgreeAction")] = "👍", w[i.schema("DisagreeAction")] = "👎", w[i.schema("EndorseAction")] = "⭐️", w[i.schema("LikeAction")] = "❤️";
18
+ async function T(t, n) {
19
+ let r = y.createElement("span");
20
20
  async function a() {
21
- if (i.innerHTML = "", f(t)) return i;
22
- let n = (await d(t)).map((t) => v.each(null, e.schema("target"), t, r)).flat();
23
- if (n.length === 0) return i;
24
- let a = n.map((t) => [
25
- v.any(t, e.rdf("type"), null, r),
26
- v.any(t, e.sioc("content"), null, r),
27
- v.any(t, e.schema("agent"), null, r)
21
+ if (r.innerHTML = "", p(t)) return r;
22
+ let e = (await f(t)).map((e) => v.each(null, i.schema("target"), e, n)).flat();
23
+ if (e.length === 0) return r;
24
+ let a = e.map((e) => [
25
+ v.any(e, i.rdf("type"), null, n),
26
+ v.any(e, i.sioc("content"), null, n),
27
+ v.any(e, i.schema("agent"), null, n)
28
28
  ]);
29
29
  a.sort(), a.forEach((e) => {
30
- let [t, n, r] = e, a;
31
- r ? (a = y.createElement("a"), a.setAttribute("href", r.uri)) : a = y.createTextNode(""), a.textContent = n || w[t] || "⬜️", i.appendChild(a);
30
+ let [t, n, i] = e, a;
31
+ i ? (a = y.createElement("a"), a.setAttribute("href", i.uri)) : a = y.createTextNode(""), a.textContent = n || w[t] || "⬜️", r.appendChild(a);
32
32
  });
33
33
  }
34
- return a().then(n("sentimentStripLinked: sentimentStripLinked async refreshed")), i.refresh = a, i;
34
+ return a().then(e("sentimentStripLinked: sentimentStripLinked async refreshed")), r.refresh = a, r;
35
35
  }
36
- async function E(n, d, f, w) {
36
+ async function E(e, f, p, w) {
37
37
  async function T() {
38
- let t = v.any(n, e.foaf("maker"));
38
+ let n = v.any(e, i.foaf("maker"));
39
39
  if (!j) alert("You can't delete the message, you are not logged in.");
40
- else if (j.sameTerm(t)) {
40
+ else if (j.sameTerm(n)) {
41
41
  try {
42
- await w.deleteMessage(n);
42
+ await w.deleteMessage(e);
43
43
  } catch (e) {
44
- let t = "Error deleting messaage " + e;
45
- r(t), alert(t), (f.statusArea || d.parentNode).appendChild(i(y, t));
44
+ let n = "Error deleting messaage " + e;
45
+ t(n), alert(n), (p.statusArea || f.parentNode).appendChild(a(y, n));
46
46
  }
47
- d.parentNode.removeChild(d);
48
- } else alert("You can't delete the message, you are not logged in as the author, " + t);
47
+ f.parentNode.removeChild(f);
48
+ } else alert("You can't delete the message, you are not logged in as the author, " + n);
49
49
  k();
50
50
  }
51
51
  async function E(t) {
52
- j.value === v.any(n, e.foaf("maker")).value && (k(), await h(t, n, w, f));
52
+ j.value === v.any(e, i.foaf("maker")).value && (k(), await h(t, e, w, p));
53
53
  }
54
54
  async function D() {
55
- let e = await w.createThread(n), t = f.chatOptions;
56
- if (!t) throw Error("replyInThread: missing options");
57
- t.showThread(e, t), k();
55
+ let t = await w.createThread(e), n = p.chatOptions;
56
+ if (!n) throw Error("replyInThread: missing options");
57
+ n.showThread(t, n), k();
58
58
  }
59
59
  let O = y.createElement("div");
60
- if (await p(n).value === e.schema("dateDeleted").value) return O;
60
+ if (await m(e).value === i.schema("dateDeleted").value) return O;
61
61
  function k() {
62
62
  O.parentElement.parentElement.removeChild(O.parentElement);
63
63
  }
@@ -65,51 +65,51 @@ async function E(n, d, f, w) {
65
65
  await v.updater.update(v.connectedStatements(e), []);
66
66
  }
67
67
  let j = _.currentUser();
68
- j && v.holds(n, e.foaf("maker"), j) && (O.appendChild(c(y, O, "message", T)), O.appendChild(o(y, a.iconBase + b, "edit", () => E(d)))), m(f).then((e) => {
68
+ j && v.holds(e, i.foaf("maker"), j) && (O.appendChild(c(y, O, "message", T)), O.appendChild(o(y, r.iconBase + b, "edit", () => E(f)))), d(p).then((e) => {
69
69
  e && O.appendChild(e);
70
70
  });
71
- function M(n, r, i, a, s, c) {
72
- function f() {
71
+ function M(e, t, r, a, s, c) {
72
+ function d() {
73
73
  p.style.backgroundColor = _ ? "yellow" : "white";
74
74
  }
75
- let p = o(y, i, t(a), async function(t) {
76
- if (_) await A(_), _ = null, f();
75
+ let p = o(y, r, n(a), async function(n) {
76
+ if (_) await A(_), _ = null, d();
77
77
  else {
78
78
  _ = u(s);
79
- let t = [
80
- g.st(_, e.schema("agent"), n.me, s),
81
- g.st(_, e.rdf("type"), a, s),
82
- g.st(_, e.schema("target"), r, s)
79
+ let n = [
80
+ g.st(_, i.schema("agent"), e.me, s),
81
+ g.st(_, i.rdf("type"), a, s),
82
+ g.st(_, i.schema("target"), t, s)
83
83
  ];
84
- if (await v.updater.update([], t), f(), c) {
84
+ if (await v.updater.update([], n), d(), c) {
85
85
  let e = !1;
86
86
  for (let t = 0; t < c.length; t++) {
87
87
  let n = m(c[t]);
88
88
  n && (await A(n), e = !0);
89
89
  }
90
- e && l(d);
90
+ e && l(f);
91
91
  }
92
92
  }
93
93
  });
94
- function m(t) {
95
- let i = v.each(null, e.schema("agent"), n.me, s).filter((n) => v.holds(n, e.rdf("type"), t, s)).filter((t) => v.holds(t, e.schema("target"), r, s));
96
- return i.length ? i[0] : null;
94
+ function m(n) {
95
+ let r = v.each(null, i.schema("agent"), e.me, s).filter((e) => v.holds(e, i.rdf("type"), n, s)).filter((e) => v.holds(e, i.schema("target"), t, s));
96
+ return r.length ? r[0] : null;
97
97
  }
98
98
  function h() {
99
- _ = m(a), f();
99
+ _ = m(a), d();
100
100
  }
101
101
  let _;
102
102
  return p.refresh = h, h(), p;
103
103
  }
104
- if (j = _.currentUser(), j && await p(n).value !== e.schema("dateDeleted").value) {
104
+ if (j = _.currentUser(), j && await m(e).value !== i.schema("dateDeleted").value) {
105
105
  let t = {
106
106
  me: j,
107
107
  dom: y,
108
108
  div: O
109
109
  };
110
- O.appendChild(M(t, n, a.iconBase + x, e.schema("AgreeAction"), n.doc(), [e.schema("DisagreeAction")])), O.appendChild(M(t, n, a.iconBase + S, e.schema("DisagreeAction"), n.doc(), [e.schema("AgreeAction")]));
110
+ O.appendChild(M(t, e, r.iconBase + x, i.schema("AgreeAction"), e.doc(), [i.schema("DisagreeAction")])), O.appendChild(M(t, e, r.iconBase + S, i.schema("DisagreeAction"), e.doc(), [i.schema("AgreeAction")]));
111
111
  }
112
- v.any(n, e.dct("created")) && O.appendChild(o(y, a.iconBase + C, "Reply in thread", async () => {
112
+ v.any(e, i.dct("created")) && O.appendChild(o(y, r.iconBase + C, "Reply in thread", async () => {
113
113
  await D();
114
114
  }));
115
115
  let N = O.appendChild(s(y));
@@ -1,8 +1,8 @@
1
- import { t as e, y as t } from "./solidLogicSingleton.esm-BXyHD7mn.js";
2
- import { c as n, g as r, i, o as a, p as o, u as s } from "./components-C8c2Ucm5.js";
1
+ import { c as e, g as t, i as n, o as r, p as i, u as a } from "./components-C8c2Ucm5.js";
3
2
  import "./button-D6qO2idW.js";
3
+ import "./menu-BNJU654v.js";
4
4
  import "./menu-item-nfPpH4dN.js";
5
- import "./menu-D0k2fkiE.js";
5
+ import { t as o, y as s } from "./solidLogicSingleton.esm-Bvt7E7Vl.js";
6
6
  // ~icons/lucide/pencil
7
7
  var c = class extends HTMLElement {
8
8
  constructor() {
@@ -18,19 +18,19 @@ var l = class extends HTMLElement {
18
18
  };
19
19
  customElements.get("icon-lucide-ellipsis-vertical") || customElements.define("icon-lucide-ellipsis-vertical", l);
20
20
  // src/utils/podUtils.ts
21
- function u(e, n) {
22
- if (!e || !n) return !1;
23
- let r = e.sym(n), i = e.findTypeURIs(r);
24
- return !!(i[t.ldp("Container").uri] || i[t.ldp("BasicContainer").uri] || r.uri.endsWith("/"));
21
+ function u(e, t) {
22
+ if (!e || !t) return !1;
23
+ let n = e.sym(t), r = e.findTypeURIs(n);
24
+ return !!(r[s.ldp("Container").uri] || r[s.ldp("BasicContainer").uri] || n.uri.endsWith("/"));
25
25
  }
26
- function d(n, r) {
27
- if (!n || !r) return 0;
28
- let i = n.sym(r), a = /* @__PURE__ */ new Set();
29
- for (let r of n.each(i, t.ldp("contains"))) if (r.termType === "NamedNode") {
30
- let t = r;
31
- e.resource.isHiddenFile(t) || a.add(t.uri);
32
- }
33
- return a.size;
26
+ function d(e, t) {
27
+ if (!e || !t) return 0;
28
+ let n = e.sym(t), r = /* @__PURE__ */ new Set();
29
+ for (let t of e.each(n, s.ldp("contains"))) if (t.termType === "NamedNode") {
30
+ let e = t;
31
+ o.resource.isHiddenFile(e) || r.add(e.uri);
32
+ }
33
+ return r.size;
34
34
  }
35
35
  // ~icons/lucide/user-round-cog
36
36
  var f = class extends HTMLElement {
@@ -47,7 +47,7 @@ var p = class extends HTMLElement {
47
47
  };
48
48
  customElements.get("icon-lucide-file") || customElements.define("icon-lucide-file", p);
49
49
  // src/components/resource-actions-menu/ResourceActionsMenu.styles.css
50
- var m = o`:host{& .file-explorer-header-more-button{width:var(--solid-ui-clickable-area,42px);height:var(--solid-ui-clickable-area,42px);padding:0}& .ellipsisIcon{width:16px;height:16px}}`, h, g, _, v, y, b, x, S, C, w, T, E, D, O, k, A, j, ee, M, N, te, P, F, I, L, R, z, B, V, H, U, W, G, K, q, J, Y;
50
+ var m = i`:host{& .file-explorer-header-more-button{width:var(--solid-ui-clickable-area,42px);height:var(--solid-ui-clickable-area,42px);padding:0}& .ellipsisIcon{width:16px;height:16px}}`, h, g, _, v, y, b, x, S, C, w, T, E, D, O, k, A, j, ee, M, N, te, P, F, I, L, R, z, B, V, H, U, W, G, K, q, J, Y;
51
51
  function X(e, t, n) {
52
52
  ne(e, t), t.set(e, n);
53
53
  }
@@ -219,12 +219,12 @@ function le(e) {
219
219
  function ue(e) {
220
220
  return e;
221
221
  }
222
- k = [r("solid-ui-resource-actions-menu")];
222
+ k = [t("solid-ui-resource-actions-menu")];
223
223
  var $;
224
- new (J = (_ = /*#__PURE__*/ new WeakMap(), v = /*#__PURE__*/ new WeakMap(), y = /*#__PURE__*/ new WeakMap(), b = /*#__PURE__*/ new WeakMap(), x = /*#__PURE__*/ new WeakMap(), S = /*#__PURE__*/ new WeakMap(), C = /*#__PURE__*/ new WeakMap(), w = /*#__PURE__*/ new WeakMap(), T = /*#__PURE__*/ new WeakMap(), E = /*#__PURE__*/ new WeakMap(), Y = (A = i({ attribute: !1 }), ee = i({ type: String }), N = i({ attribute: !1 }), P = i({ attribute: !1 }), I = i({ type: Boolean }), R = i({ type: Boolean }), B = i({ type: Boolean }), H = i({ type: Boolean }), W = i({
224
+ new (J = (_ = /*#__PURE__*/ new WeakMap(), v = /*#__PURE__*/ new WeakMap(), y = /*#__PURE__*/ new WeakMap(), b = /*#__PURE__*/ new WeakMap(), x = /*#__PURE__*/ new WeakMap(), S = /*#__PURE__*/ new WeakMap(), C = /*#__PURE__*/ new WeakMap(), w = /*#__PURE__*/ new WeakMap(), T = /*#__PURE__*/ new WeakMap(), E = /*#__PURE__*/ new WeakMap(), Y = (A = n({ attribute: !1 }), ee = n({ type: String }), N = n({ attribute: !1 }), P = n({ attribute: !1 }), I = n({ type: Boolean }), R = n({ type: Boolean }), B = n({ type: Boolean }), H = n({ type: Boolean }), W = n({
225
225
  type: Boolean,
226
226
  attribute: "show-access-in-menu"
227
- }), K = i({ attribute: !1 }), "store"), g = class extends a {
227
+ }), K = n({ attribute: !1 }), "store"), g = class extends r {
228
228
  constructor(...e) {
229
229
  super(...e), X(this, _, (D(this), j(this))), X(this, v, M(this)), X(this, y, te(this, void 0)), X(this, b, F(this, void 0)), X(this, x, L(this, !1)), X(this, S, z(this, !1)), X(this, C, V(this, !1)), X(this, w, U(this, !1)), X(this, T, G(this, !1)), X(this, E, q(this, []));
230
230
  }
@@ -289,31 +289,31 @@ new (J = (_ = /*#__PURE__*/ new WeakMap(), v = /*#__PURE__*/ new WeakMap(), y =
289
289
  Z(E, this, e);
290
290
  }
291
291
  render() {
292
- let e = !u(this.store, this.subjectUri) && this.isMobile && this.paneSupportsEditing && this.canEdit && !!this.handleEditingClick, t = this.canManageAccess && !!this.handleAccessClick && (this.showAccessInMenu || this.isMobile), r = this.menuItems.filter((e) => typeof e.action == "function");
293
- return s`
292
+ let t = !u(this.store, this.subjectUri) && this.isMobile && this.paneSupportsEditing && this.canEdit && !!this.handleEditingClick, n = this.canManageAccess && !!this.handleAccessClick && (this.showAccessInMenu || this.isMobile), r = this.menuItems.filter((e) => typeof e.action == "function");
293
+ return a`
294
294
  <solid-ui-menu>
295
295
  <solid-ui-button slot="trigger" class="file-explorer-header-more-button" variant="ghost" title="More options">
296
296
  <icon-lucide-ellipsis-vertical slot="icon" class="ellipsisIcon"></icon-lucide-ellipsis-vertical>
297
297
  <span class="sr-only">More options</span>
298
298
  </solid-ui-button>
299
- ${r.map((e) => s`
299
+ ${r.map((e) => a`
300
300
  <solid-ui-menu-item @solid-ui-select=${(t) => e.action(t)}>
301
- ${typeof e.icon == "string" ? s`<img slot="left-icon" src=${e.icon} alt="">` : e.icon ?? s`<icon-lucide-file slot="left-icon" aria-hidden="true"></icon-lucide-file>`}
301
+ ${typeof e.icon == "string" ? a`<img slot="left-icon" src=${e.icon} alt="">` : e.icon ?? a`<icon-lucide-file slot="left-icon" aria-hidden="true"></icon-lucide-file>`}
302
302
  ${e.label}
303
303
  </solid-ui-menu-item>
304
304
  `)}
305
- ${e ? s`
305
+ ${t ? a`
306
306
  <solid-ui-menu-item @solid-ui-select=${this.handleEditingClick}>
307
307
  <icon-lucide-pencil slot="left-icon"></icon-lucide-pencil>
308
308
  Edit
309
309
  </solid-ui-menu-item>
310
- ` : n}
311
- ${t ? s`
310
+ ` : e}
311
+ ${n ? a`
312
312
  <solid-ui-menu-item @solid-ui-select=${this.handleAccessClick}>
313
313
  <icon-lucide-user-round-cog slot="left-icon"></icon-lucide-user-round-cog>
314
314
  Manage Access
315
315
  </solid-ui-menu-item>
316
- ` : n}
316
+ ` : e}
317
317
  </solid-ui-menu>
318
318
  `;
319
319
  }
@@ -368,11 +368,11 @@ new (J = (_ = /*#__PURE__*/ new WeakMap(), v = /*#__PURE__*/ new WeakMap(), y =
368
368
  1,
369
369
  "menuItems"
370
370
  ]
371
- ], k, 0, void 0, a), g), h = class extends ue {
371
+ ], k, 0, void 0, r), g), h = class extends ue {
372
372
  constructor() {
373
373
  super($), ie(this, "styles", m), O();
374
374
  }
375
375
  }, ie(h, J, void 0), h)();
376
376
  export { d as n, u as r, $ as t };
377
377
 
378
- //# sourceMappingURL=ResourceActionsMenu-Bllpr4M5.js.map
378
+ //# sourceMappingURL=ResourceActionsMenu-Bx7YWY3E.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ResourceActionsMenu-Bllpr4M5.js","names":["solidLogicSingleton","store","ns","parse","isWebIdUri","getPodStorages","url","fetcher","load","doc","err","console","warn","uri","podStorages","each","space","results","Promise","all","map","pod","isPodStorage","filter","storage","findPodStorageFromUrl","error","podStorage","URL","value","pathStorage","pathname","length","substring","lastIndexOf","candidate","sym","origin","loadContainerRepresentation","holds","rdf","subject","any","ldp","undefined","response","webOperation","initFetchOptions","headers","accept","containerTurtle","responseText","isContainerSubject","subjectUri","typeUris","findTypeURIs","Boolean","endsWith","getContainerItemCount","seen","Set","item","termType","resource","isHiddenFile","add","size","ns","solidLogicSingleton","customElement","WebComponent","property","html","nothing","styles","isContainerSubject","_classDecs","_ResourceActionsMenu","_ResourceActionsMenu2","_A","WeakMap","_B","_C","_D","_E","_F","_G","_H","_I","_J","_ref","_storeDecs","attribute","_subjectUriDecs","type","String","_handleAccessClickDecs","_handleEditingClickDecs","_paneSupportsEditingDecs","Boolean","_canEditDecs","_canManageAccessDecs","_isMobileDecs","_showAccessInMenuDecs","_menuItemsDecs","_ResourceActionsMenu3","ResourceActionsMenu","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_store","_init_subjectUri","_init_handleAccessClick","undefined","_init_handleEditingClick","_init_paneSupportsEditing","_init_canEdit","_init_canManageAccess","_init_isMobile","_init_showAccessInMenu","_init_menuItems","_classPrivateFieldGet","store","v","_classPrivateFieldSet","subjectUri","handleAccessClick","handleEditingClick","paneSupportsEditing","canEdit","canManageAccess","isMobile","showAccessInMenu","menuItems","render","isContainerResource","actionableMenuItems","filter","item","action","map","event","icon","label","e","c","_initClass","_applyDecs","_Class","_identity","_defineProperty","default","property","nothing","styles","c","ns_default","A","customElement","WebComponent","i","b","iconlucidepencil","iconlucideellipsisvertical","isContainerSubject","store","subjectUri","subject","typeUris","getContainerItemCount","seen","item","resource","iconlucideuserroundcog","iconlucidefile","ResourceActionsMenu_styles_default","_Class","_ResourceActionsMenu3","_A","_B","_C","_D","_E","_F","_G","_H","_I","_J","_initProto","_initClass","_classDecs","_storeDecs","_init_store","_subjectUriDecs","_init_subjectUri","_handleAccessClickDecs","_init_handleAccessClick","_handleEditingClickDecs","_init_handleEditingClick","_paneSupportsEditingDecs","_init_paneSupportsEditing","_canEditDecs","_init_canEdit","_canManageAccessDecs","_init_canManageAccess","_isMobileDecs","_init_isMobile","_showAccessInMenuDecs","_init_showAccessInMenu","_menuItemsDecs","_init_menuItems","_ResourceActionsMenu2","_ref","_classPrivateFieldInitSpec","a","_checkPrivateRedeclaration","_classPrivateFieldSet","s","_assertClassBrand","r","_classPrivateFieldGet","_defineProperty","_toPropertyKey","t","_applyDecs","n","o","applyDec","m","h","y","v","g","u","w","S","d","p","_setFunctionName","P","j","D","I","F","l","f","N","_checkInRHS","_toPrimitive","e","_identity","_ResourceActionsMenu","args","canEdit","canManageAccess","actionableMenuItems","event"],"sources":["../../src/utils/podUtils.ts","../../src/components/resource-actions-menu/ResourceActionsMenu.styles.css","../../src/components/resource-actions-menu/ResourceActionsMenu.ts"],"sourcesContent":["import { solidLogicSingleton, store } from 'solid-logic'\nimport ns from '@/lib/ns'\nimport { LiveStore, NamedNode, parse } from 'rdflib'\nimport { isWebIdUri } from './webIdUtils'\n\nexport async function getPodStorages (url: NamedNode): Promise<NamedNode[]> {\n if (isWebIdUri(url)) {\n try {\n await store.fetcher.load(url.doc())\n } catch (err) {\n console.warn('Unable to load profile document for WebID', url.doc().uri, err)\n }\n const podStorages = store.each(url, ns.space('storage'))\n const results = await Promise.all(podStorages.map(async pod => await isPodStorage(pod as NamedNode) ? pod as NamedNode : null))\n return results.filter(pod => pod !== null) as NamedNode[]\n }\n try {\n const storage = await findPodStorageFromUrl(url)\n return storage ? [storage] : []\n } catch (err) {\n console.error('cannot load container', err)\n return []\n }\n}\n\nasync function findPodStorageFromUrl (url: NamedNode): Promise<NamedNode | null> {\n const podStorage = new URL(url.value || url.uri)\n let pathStorage = podStorage.pathname\n\n while (pathStorage.length) {\n pathStorage = pathStorage.substring(0, pathStorage.lastIndexOf('/'))\n const candidate = store.sym(`${podStorage.origin}${pathStorage}/`)\n if (await isPodStorage(candidate)) return candidate\n }\n\n // TODO should url.origin be added to pods list when there are no pim:Storage ???\n return null\n}\n\nasync function isPodStorage (pod: NamedNode): Promise<boolean> {\n await loadContainerRepresentation(pod)\n return store.holds(pod, ns.rdf('type'), ns.space('Storage'), pod.doc())\n}\n\nexport async function loadContainerRepresentation (subject) {\n // force reload for index.html with RDFa\n if (!store.any(subject, ns.ldp('contains'), undefined, subject.doc())) {\n try {\n const response = await store.fetcher.webOperation('GET', subject.uri, store.fetcher.initFetchOptions(subject.uri, { headers: { accept: 'text/turtle' } }))\n const containerTurtle = response.responseText\n if (subject.uri && containerTurtle) {\n parse(containerTurtle, store, subject.uri, 'text/turtle')\n }\n } catch (err) {\n console.warn('Unable to load container representation for', subject.uri, err)\n }\n }\n}\n\nexport function isContainerSubject (store: LiveStore | undefined, subjectUri: string | undefined): boolean {\n if (!store || !subjectUri) return false\n\n const subject = store.sym(subjectUri)\n const typeUris = store.findTypeURIs(subject)\n return Boolean(\n typeUris[ns.ldp('Container').uri] ||\n typeUris[ns.ldp('BasicContainer').uri] ||\n subject.uri.endsWith('/')\n )\n}\n\n// The shared rdflib store can hold duplicate ldp:contains statements for the\n// same child resource when the container and companion metadata are both loaded.\n// Count unique visible children here so the header summary matches the list UI.\nexport function getContainerItemCount (store: LiveStore | undefined, subjectUri: string | undefined): number {\n if (!store || !subjectUri) return 0\n\n const subject = store.sym(subjectUri)\n const seen = new Set<string>()\n\n for (const item of store.each(subject, ns.ldp('contains'))) {\n if (item.termType === 'NamedNode') {\n const resource = item as NamedNode\n if (!solidLogicSingleton.resource.isHiddenFile(resource)) {\n seen.add(resource.uri)\n }\n }\n }\n return seen.size\n}\n",":host {\n .file-explorer-header-more-button {\n width: var(--solid-ui-clickable-area, 42px);\n height: var(--solid-ui-clickable-area, 42px);\n padding: 0;\n }\n\n .ellipsisIcon {\n width: 16px;\n height: 16px;\n }\n}\n","import { customElement, WebComponent } from '@/lib/components'\nimport { property } from 'lit/decorators.js'\nimport { html, nothing } from 'lit'\nimport '@/components/button'\nimport '@/components/menu'\nimport '@/components/menu-item'\nimport '~icons/lucide/ellipsis-vertical'\nimport '~icons/lucide/user-round-cog'\nimport '~icons/lucide/pencil'\nimport '~icons/lucide/file'\nimport { LiveStore } from 'rdflib'\nimport styles from './ResourceActionsMenu.styles.css'\nimport { isContainerSubject } from '@/utils/podUtils'\n\ntype ResourceActionMenuItem = {\n label: string\n icon?: HTMLElement | string\n action?: (event: Event) => void\n}\n\ntype ActionableResourceActionMenuItem = ResourceActionMenuItem & {\n action: (event: Event) => void\n}\n\n@customElement('solid-ui-resource-actions-menu')\nexport default class ResourceActionsMenu extends WebComponent {\n static styles = styles\n\n @property({ attribute: false })\n accessor store: LiveStore | undefined\n\n @property({ type: String })\n accessor subjectUri: string | undefined\n\n @property({ attribute: false })\n accessor handleAccessClick: (() => void) | undefined = undefined\n\n @property({ attribute: false })\n accessor handleEditingClick: (() => void) | undefined = undefined\n\n @property({ type: Boolean })\n accessor paneSupportsEditing = false\n\n @property({ type: Boolean })\n accessor canEdit = false\n\n @property({ type: Boolean })\n accessor canManageAccess = false\n\n @property({ type: Boolean })\n accessor isMobile = false\n\n @property({ type: Boolean, attribute: 'show-access-in-menu' })\n accessor showAccessInMenu = false\n\n @property({ attribute: false })\n accessor menuItems: ResourceActionMenuItem[] = []\n\n render () {\n const isContainerResource = isContainerSubject(this.store, this.subjectUri)\n const canEdit = !isContainerResource && this.isMobile && this.paneSupportsEditing && this.canEdit && !!this.handleEditingClick\n const canManageAccess = this.canManageAccess && !!this.handleAccessClick &&\n (this.showAccessInMenu || this.isMobile)\n const actionableMenuItems = this.menuItems.filter((item): item is ActionableResourceActionMenuItem => typeof item.action === 'function')\n return html`\n <solid-ui-menu>\n <solid-ui-button slot=\"trigger\" class=\"file-explorer-header-more-button\" variant=\"ghost\" title=\"More options\">\n <icon-lucide-ellipsis-vertical slot=\"icon\" class=\"ellipsisIcon\"></icon-lucide-ellipsis-vertical>\n <span class=\"sr-only\">More options</span>\n </solid-ui-button>\n ${actionableMenuItems.map(item => html`\n <solid-ui-menu-item @solid-ui-select=${(event: Event) => item.action(event)}>\n ${typeof item.icon === 'string'\n ? html`<img slot=\"left-icon\" src=${item.icon} alt=\"\">`\n : item.icon ?? html`<icon-lucide-file slot=\"left-icon\" aria-hidden=\"true\"></icon-lucide-file>`}\n ${item.label}\n </solid-ui-menu-item>\n `)}\n ${canEdit\n ? html`\n <solid-ui-menu-item @solid-ui-select=${this.handleEditingClick}>\n <icon-lucide-pencil slot=\"left-icon\"></icon-lucide-pencil>\n Edit\n </solid-ui-menu-item>\n `\n : nothing}\n ${canManageAccess\n ? html`\n <solid-ui-menu-item @solid-ui-select=${this.handleAccessClick}>\n <icon-lucide-user-round-cog slot=\"left-icon\"></icon-lucide-user-round-cog>\n Manage Access\n </solid-ui-menu-item>\n `\n : nothing}\n </solid-ui-menu>\n `\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"ResourceActionsMenu-Bx7YWY3E.js","names":["solidLogicSingleton","store","ns","parse","isWebIdUri","getPodStorages","url","fetcher","load","doc","err","console","warn","uri","podStorages","each","space","results","Promise","all","map","pod","isPodStorage","filter","storage","findPodStorageFromUrl","error","podStorage","URL","value","pathStorage","pathname","length","substring","lastIndexOf","candidate","sym","origin","loadContainerRepresentation","holds","rdf","subject","any","ldp","undefined","response","webOperation","initFetchOptions","headers","accept","containerTurtle","responseText","isContainerSubject","subjectUri","typeUris","findTypeURIs","Boolean","endsWith","getContainerItemCount","seen","Set","item","termType","resource","isHiddenFile","add","size","ns","solidLogicSingleton","customElement","WebComponent","property","html","nothing","styles","isContainerSubject","_classDecs","_ResourceActionsMenu","_ResourceActionsMenu2","_A","WeakMap","_B","_C","_D","_E","_F","_G","_H","_I","_J","_ref","_storeDecs","attribute","_subjectUriDecs","type","String","_handleAccessClickDecs","_handleEditingClickDecs","_paneSupportsEditingDecs","Boolean","_canEditDecs","_canManageAccessDecs","_isMobileDecs","_showAccessInMenuDecs","_menuItemsDecs","_ResourceActionsMenu3","ResourceActionsMenu","constructor","args","_classPrivateFieldInitSpec","_initProto","_init_store","_init_subjectUri","_init_handleAccessClick","undefined","_init_handleEditingClick","_init_paneSupportsEditing","_init_canEdit","_init_canManageAccess","_init_isMobile","_init_showAccessInMenu","_init_menuItems","_classPrivateFieldGet","store","v","_classPrivateFieldSet","subjectUri","handleAccessClick","handleEditingClick","paneSupportsEditing","canEdit","canManageAccess","isMobile","showAccessInMenu","menuItems","render","isContainerResource","actionableMenuItems","filter","item","action","map","event","icon","label","e","c","_initClass","_applyDecs","_Class","_identity","_defineProperty","default","property","nothing","styles","A","customElement","WebComponent","b","c","ns_default","iconlucidepencil","iconlucideellipsisvertical","isContainerSubject","store","subjectUri","subject","typeUris","getContainerItemCount","seen","item","resource","iconlucideuserroundcog","iconlucidefile","ResourceActionsMenu_styles_default","_Class","_ResourceActionsMenu3","_A","_B","_C","_D","_E","_F","_G","_H","_I","_J","_initProto","_initClass","_classDecs","_storeDecs","_init_store","_subjectUriDecs","_init_subjectUri","_handleAccessClickDecs","_init_handleAccessClick","_handleEditingClickDecs","_init_handleEditingClick","_paneSupportsEditingDecs","_init_paneSupportsEditing","_canEditDecs","_init_canEdit","_canManageAccessDecs","_init_canManageAccess","_isMobileDecs","_init_isMobile","_showAccessInMenuDecs","_init_showAccessInMenu","_menuItemsDecs","_init_menuItems","_ResourceActionsMenu2","_ref","_classPrivateFieldInitSpec","a","_checkPrivateRedeclaration","_classPrivateFieldSet","s","_assertClassBrand","r","_classPrivateFieldGet","_defineProperty","_toPropertyKey","t","_applyDecs","i","n","o","applyDec","m","h","y","v","g","u","w","S","d","p","_setFunctionName","P","j","D","I","F","l","f","N","_checkInRHS","_toPrimitive","e","_identity","_ResourceActionsMenu","args","canEdit","canManageAccess","actionableMenuItems","event"],"sources":["../../src/utils/podUtils.ts","../../src/components/resource-actions-menu/ResourceActionsMenu.styles.css","../../src/components/resource-actions-menu/ResourceActionsMenu.ts"],"sourcesContent":["import { solidLogicSingleton, store } from 'solid-logic'\nimport ns from '@/lib/ns'\nimport { LiveStore, NamedNode, parse } from 'rdflib'\nimport { isWebIdUri } from './webIdUtils'\n\nexport async function getPodStorages (url: NamedNode): Promise<NamedNode[]> {\n if (isWebIdUri(url)) {\n try {\n await store.fetcher.load(url.doc())\n } catch (err) {\n console.warn('Unable to load profile document for WebID', url.doc().uri, err)\n }\n const podStorages = store.each(url, ns.space('storage'))\n const results = await Promise.all(podStorages.map(async pod => await isPodStorage(pod as NamedNode) ? pod as NamedNode : null))\n return results.filter(pod => pod !== null) as NamedNode[]\n }\n try {\n const storage = await findPodStorageFromUrl(url)\n return storage ? [storage] : []\n } catch (err) {\n console.error('cannot load container', err)\n return []\n }\n}\n\nasync function findPodStorageFromUrl (url: NamedNode): Promise<NamedNode | null> {\n const podStorage = new URL(url.value || url.uri)\n let pathStorage = podStorage.pathname\n\n while (pathStorage.length) {\n pathStorage = pathStorage.substring(0, pathStorage.lastIndexOf('/'))\n const candidate = store.sym(`${podStorage.origin}${pathStorage}/`)\n if (await isPodStorage(candidate)) return candidate\n }\n\n // TODO should url.origin be added to pods list when there are no pim:Storage ???\n return null\n}\n\nasync function isPodStorage (pod: NamedNode): Promise<boolean> {\n await loadContainerRepresentation(pod)\n return store.holds(pod, ns.rdf('type'), ns.space('Storage'), pod.doc())\n}\n\nexport async function loadContainerRepresentation (subject) {\n // force reload for index.html with RDFa\n if (!store.any(subject, ns.ldp('contains'), undefined, subject.doc())) {\n try {\n const response = await store.fetcher.webOperation('GET', subject.uri, store.fetcher.initFetchOptions(subject.uri, { headers: { accept: 'text/turtle' } }))\n const containerTurtle = response.responseText\n if (subject.uri && containerTurtle) {\n parse(containerTurtle, store, subject.uri, 'text/turtle')\n }\n } catch (err) {\n console.warn('Unable to load container representation for', subject.uri, err)\n }\n }\n}\n\nexport function isContainerSubject (store: LiveStore | undefined, subjectUri: string | undefined): boolean {\n if (!store || !subjectUri) return false\n\n const subject = store.sym(subjectUri)\n const typeUris = store.findTypeURIs(subject)\n return Boolean(\n typeUris[ns.ldp('Container').uri] ||\n typeUris[ns.ldp('BasicContainer').uri] ||\n subject.uri.endsWith('/')\n )\n}\n\n// The shared rdflib store can hold duplicate ldp:contains statements for the\n// same child resource when the container and companion metadata are both loaded.\n// Count unique visible children here so the header summary matches the list UI.\nexport function getContainerItemCount (store: LiveStore | undefined, subjectUri: string | undefined): number {\n if (!store || !subjectUri) return 0\n\n const subject = store.sym(subjectUri)\n const seen = new Set<string>()\n\n for (const item of store.each(subject, ns.ldp('contains'))) {\n if (item.termType === 'NamedNode') {\n const resource = item as NamedNode\n if (!solidLogicSingleton.resource.isHiddenFile(resource)) {\n seen.add(resource.uri)\n }\n }\n }\n return seen.size\n}\n",":host {\n .file-explorer-header-more-button {\n width: var(--solid-ui-clickable-area, 42px);\n height: var(--solid-ui-clickable-area, 42px);\n padding: 0;\n }\n\n .ellipsisIcon {\n width: 16px;\n height: 16px;\n }\n}\n","import { customElement, WebComponent } from '@/lib/components'\nimport { property } from 'lit/decorators.js'\nimport { html, nothing } from 'lit'\nimport '@/components/button'\nimport '@/components/menu'\nimport '@/components/menu-item'\nimport '~icons/lucide/ellipsis-vertical'\nimport '~icons/lucide/user-round-cog'\nimport '~icons/lucide/pencil'\nimport '~icons/lucide/file'\nimport { LiveStore } from 'rdflib'\nimport styles from './ResourceActionsMenu.styles.css'\nimport { isContainerSubject } from '@/utils/podUtils'\n\ntype ResourceActionMenuItem = {\n label: string\n icon?: HTMLElement | string\n action?: (event: Event) => void\n}\n\ntype ActionableResourceActionMenuItem = ResourceActionMenuItem & {\n action: (event: Event) => void\n}\n\n@customElement('solid-ui-resource-actions-menu')\nexport default class ResourceActionsMenu extends WebComponent {\n static styles = styles\n\n @property({ attribute: false })\n accessor store: LiveStore | undefined\n\n @property({ type: String })\n accessor subjectUri: string | undefined\n\n @property({ attribute: false })\n accessor handleAccessClick: (() => void) | undefined = undefined\n\n @property({ attribute: false })\n accessor handleEditingClick: (() => void) | undefined = undefined\n\n @property({ type: Boolean })\n accessor paneSupportsEditing = false\n\n @property({ type: Boolean })\n accessor canEdit = false\n\n @property({ type: Boolean })\n accessor canManageAccess = false\n\n @property({ type: Boolean })\n accessor isMobile = false\n\n @property({ type: Boolean, attribute: 'show-access-in-menu' })\n accessor showAccessInMenu = false\n\n @property({ attribute: false })\n accessor menuItems: ResourceActionMenuItem[] = []\n\n render () {\n const isContainerResource = isContainerSubject(this.store, this.subjectUri)\n const canEdit = !isContainerResource && this.isMobile && this.paneSupportsEditing && this.canEdit && !!this.handleEditingClick\n const canManageAccess = this.canManageAccess && !!this.handleAccessClick &&\n (this.showAccessInMenu || this.isMobile)\n const actionableMenuItems = this.menuItems.filter((item): item is ActionableResourceActionMenuItem => typeof item.action === 'function')\n return html`\n <solid-ui-menu>\n <solid-ui-button slot=\"trigger\" class=\"file-explorer-header-more-button\" variant=\"ghost\" title=\"More options\">\n <icon-lucide-ellipsis-vertical slot=\"icon\" class=\"ellipsisIcon\"></icon-lucide-ellipsis-vertical>\n <span class=\"sr-only\">More options</span>\n </solid-ui-button>\n ${actionableMenuItems.map(item => html`\n <solid-ui-menu-item @solid-ui-select=${(event: Event) => item.action(event)}>\n ${typeof item.icon === 'string'\n ? html`<img slot=\"left-icon\" src=${item.icon} alt=\"\">`\n : item.icon ?? html`<icon-lucide-file slot=\"left-icon\" aria-hidden=\"true\"></icon-lucide-file>`}\n ${item.label}\n </solid-ui-menu-item>\n `)}\n ${canEdit\n ? html`\n <solid-ui-menu-item @solid-ui-select=${this.handleEditingClick}>\n <icon-lucide-pencil slot=\"left-icon\"></icon-lucide-pencil>\n Edit\n </solid-ui-menu-item>\n `\n : nothing}\n ${canManageAccess\n ? html`\n <solid-ui-menu-item @solid-ui-select=${this.handleAccessClick}>\n <icon-lucide-user-round-cog slot=\"left-icon\"></icon-lucide-user-round-cog>\n Manage Access\n </solid-ui-menu-item>\n `\n : nothing}\n </solid-ui-menu>\n `\n }\n}\n"],"mappings":"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"}