solid-ui 5.0.2-2 → 5.0.2-4

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 (236) hide show
  1. package/dist/_virtual/~icons/lucide/arrow-left.cjs.js +2 -0
  2. package/dist/_virtual/~icons/lucide/arrow-left.cjs.js.map +1 -0
  3. package/dist/_virtual/~icons/lucide/arrow-left.esm.js +10 -0
  4. package/dist/_virtual/~icons/lucide/arrow-left.esm.js.map +1 -0
  5. package/dist/_virtual/~icons/lucide/ellipsis-vertical.cjs.js +2 -0
  6. package/dist/_virtual/~icons/lucide/ellipsis-vertical.cjs.js.map +1 -0
  7. package/dist/_virtual/~icons/lucide/ellipsis-vertical.esm.js +10 -0
  8. package/dist/_virtual/~icons/lucide/ellipsis-vertical.esm.js.map +1 -0
  9. package/dist/_virtual/~icons/lucide/file.cjs.js +2 -0
  10. package/dist/_virtual/~icons/lucide/file.cjs.js.map +1 -0
  11. package/dist/_virtual/~icons/lucide/file.esm.js +10 -0
  12. package/dist/_virtual/~icons/lucide/file.esm.js.map +1 -0
  13. package/dist/_virtual/~icons/lucide/lock-keyhole.cjs.js +2 -0
  14. package/dist/_virtual/~icons/lucide/lock-keyhole.cjs.js.map +1 -0
  15. package/dist/_virtual/~icons/lucide/lock-keyhole.esm.js +10 -0
  16. package/dist/_virtual/~icons/lucide/lock-keyhole.esm.js.map +1 -0
  17. package/dist/_virtual/~icons/lucide/pencil.cjs.js +2 -0
  18. package/dist/_virtual/~icons/lucide/pencil.cjs.js.map +1 -0
  19. package/dist/_virtual/~icons/lucide/pencil.esm.js +10 -0
  20. package/dist/_virtual/~icons/lucide/pencil.esm.js.map +1 -0
  21. package/dist/_virtual/~icons/lucide/share-2.cjs.js +2 -0
  22. package/dist/_virtual/~icons/lucide/share-2.cjs.js.map +1 -0
  23. package/dist/_virtual/~icons/lucide/share-2.esm.js +10 -0
  24. package/dist/_virtual/~icons/lucide/share-2.esm.js.map +1 -0
  25. package/dist/_virtual/~icons/lucide/user-round-cog.cjs.js +2 -0
  26. package/dist/_virtual/~icons/lucide/user-round-cog.cjs.js.map +1 -0
  27. package/dist/_virtual/~icons/lucide/user-round-cog.esm.js +10 -0
  28. package/dist/_virtual/~icons/lucide/user-round-cog.esm.js.map +1 -0
  29. package/dist/chunks/DialogProvider-CdesAsw-.js +208 -0
  30. package/dist/chunks/DialogProvider-CdesAsw-.js.map +1 -0
  31. package/dist/chunks/ResourceActionsMenu-Bllpr4M5.js +378 -0
  32. package/dist/chunks/ResourceActionsMenu-Bllpr4M5.js.map +1 -0
  33. package/dist/chunks/{access-control-modal-Dcg6-f4V.js → access-control-modal-CwmY_Dod.js} +419 -432
  34. package/dist/chunks/access-control-modal-CwmY_Dod.js.map +1 -0
  35. package/dist/chunks/{account-D6JK-n7u.js → account-CoHPKKDu.js} +6 -6
  36. package/dist/chunks/{account-D6JK-n7u.js.map → account-CoHPKKDu.js.map} +1 -1
  37. package/dist/chunks/{auth-B_abPDvH.js → auth-CocCqS1p.js} +23 -22
  38. package/dist/chunks/{auth-B_abPDvH.js.map → auth-CocCqS1p.js.map} +1 -1
  39. package/dist/chunks/{avatar-BR3COVSQ.js → avatar-sNdKdWVO.js} +2 -2
  40. package/dist/chunks/{avatar-BR3COVSQ.js.map → avatar-sNdKdWVO.js.map} +1 -1
  41. package/dist/chunks/context-BDrfQ9bN.js +21 -0
  42. package/dist/chunks/context-BDrfQ9bN.js.map +1 -0
  43. package/dist/chunks/{dialogs-root-BcQo2XMF.js → dialogs-root-BNF3_SA8.js} +2 -2
  44. package/dist/chunks/{dialogs-root-BcQo2XMF.js.map → dialogs-root-BNF3_SA8.js.map} +1 -1
  45. package/dist/chunks/events-CXQHDCs2.js +8 -0
  46. package/dist/chunks/events-CXQHDCs2.js.map +1 -0
  47. package/dist/chunks/file-explorer-header-D0TebSYR.js +962 -0
  48. package/dist/chunks/file-explorer-header-D0TebSYR.js.map +1 -0
  49. package/dist/chunks/file-explorer-provider-DpjC7uds.js +295 -0
  50. package/dist/chunks/file-explorer-provider-DpjC7uds.js.map +1 -0
  51. package/dist/chunks/globe-CsCgZcy5.js +16 -0
  52. package/dist/chunks/globe-CsCgZcy5.js.map +1 -0
  53. package/dist/chunks/{guard-bTeM7wd7.js → guard-BOicu9dt.js} +2 -2
  54. package/dist/chunks/{guard-bTeM7wd7.js.map → guard-BOicu9dt.js.map} +1 -1
  55. package/dist/chunks/index.esm-C9oV3H3X.js +6 -0
  56. package/dist/chunks/index.esm-C9oV3H3X.js.map +1 -0
  57. package/dist/chunks/{jsonld-CnfzCyCn.js → jsonld-D-TE94B0.js} +2 -2
  58. package/dist/chunks/{jsonld-CnfzCyCn.js.map → jsonld-D-TE94B0.js.map} +1 -1
  59. package/dist/chunks/{login-button-Div4ZT4J.js → login-button-clTw_9tX.js} +2 -2
  60. package/dist/chunks/{login-button-Div4ZT4J.js.map → login-button-clTw_9tX.js.map} +1 -1
  61. package/dist/chunks/{logout-button-D3lqlnCX.js → logout-button-CP-Pz70O.js} +2 -2
  62. package/dist/chunks/{logout-button-D3lqlnCX.js.map → logout-button-CP-Pz70O.js.map} +1 -1
  63. package/dist/chunks/provide-z9U64q4m.js +111 -0
  64. package/dist/chunks/provide-z9U64q4m.js.map +1 -0
  65. package/dist/chunks/{provider-Dcd1NPYx.js → provider-Cuv3Kp6G.js} +4 -4
  66. package/dist/chunks/{provider-Dcd1NPYx.js.map → provider-Cuv3Kp6G.js.map} +1 -1
  67. package/dist/chunks/{rdf-form-CmPnHKR-.js → rdf-form-DVmTw3RG.js} +20 -20
  68. package/dist/chunks/{rdf-form-CmPnHKR-.js.map → rdf-form-DVmTw3RG.js.map} +1 -1
  69. package/dist/chunks/{rdf-input-3AgoeCkJ.js → rdf-input-CRYLK-27.js} +42 -42
  70. package/dist/chunks/{rdf-input-3AgoeCkJ.js.map → rdf-input-CRYLK-27.js.map} +1 -1
  71. package/dist/chunks/{signup-button-2fAoS0Nv.js → signup-button-CexdMWj6.js} +2 -2
  72. package/dist/chunks/{signup-button-2fAoS0Nv.js.map → signup-button-CexdMWj6.js.map} +1 -1
  73. package/dist/chunks/{index.esm-CECfD0e9.js → solidLogicSingleton.esm-BXyHD7mn.js} +1210 -1161
  74. package/dist/chunks/solidLogicSingleton.esm-BXyHD7mn.js.map +1 -0
  75. package/dist/chunks/{src-Dx7k_VIe.js → src-DQgHAH3d.js} +4579 -4542
  76. package/dist/chunks/src-DQgHAH3d.js.map +1 -0
  77. package/dist/chunks/{style-w0Fl0xnd.js → style-CXaw5EYi.js} +9 -8
  78. package/dist/chunks/{style-w0Fl0xnd.js.map → style-CXaw5EYi.js.map} +1 -1
  79. package/dist/chunks/{widgets-BWpm5CPx.js → widgets-BBEQu0CS.js} +722 -721
  80. package/dist/chunks/{widgets-BWpm5CPx.js.map → widgets-BBEQu0CS.js.map} +1 -1
  81. package/dist/components/access-control-modal/AccessControlModal.cjs.js +1 -1
  82. package/dist/components/access-control-modal/AccessControlModal.cjs.js.map +1 -1
  83. package/dist/components/access-control-modal/AccessControlModal.esm.js +1 -1
  84. package/dist/components/access-control-modal/AccessControlModal.esm.js.map +1 -1
  85. package/dist/components/access-control-modal.js +1 -1
  86. package/dist/components/account.js +1 -1
  87. package/dist/components/all.cjs.js +1 -1
  88. package/dist/components/all.esm.js +3 -0
  89. package/dist/components/avatar.js +1 -1
  90. package/dist/components/dialog-provider.js +1 -1
  91. package/dist/components/dialogs-root.js +1 -1
  92. package/dist/components/file-explorer-header/FileExplorerHeader.cjs.js +15 -0
  93. package/dist/components/file-explorer-header/FileExplorerHeader.cjs.js.map +1 -0
  94. package/dist/components/file-explorer-header/FileExplorerHeader.d.ts +20 -0
  95. package/dist/components/file-explorer-header/FileExplorerHeader.d.ts.map +1 -0
  96. package/dist/components/file-explorer-header/FileExplorerHeader.esm.js +310 -0
  97. package/dist/components/file-explorer-header/FileExplorerHeader.esm.js.map +1 -0
  98. package/dist/components/file-explorer-header/FileExplorerHeader.styles.cjs.js +2 -0
  99. package/dist/components/file-explorer-header/FileExplorerHeader.styles.cjs.js.map +1 -0
  100. package/dist/components/file-explorer-header/FileExplorerHeader.styles.esm.js +6 -0
  101. package/dist/components/file-explorer-header/FileExplorerHeader.styles.esm.js.map +1 -0
  102. package/dist/components/file-explorer-header/FileExplorerHeaderControls.cjs.js +35 -0
  103. package/dist/components/file-explorer-header/FileExplorerHeaderControls.cjs.js.map +1 -0
  104. package/dist/components/file-explorer-header/FileExplorerHeaderControls.d.ts +23 -0
  105. package/dist/components/file-explorer-header/FileExplorerHeaderControls.d.ts.map +1 -0
  106. package/dist/components/file-explorer-header/FileExplorerHeaderControls.esm.js +318 -0
  107. package/dist/components/file-explorer-header/FileExplorerHeaderControls.esm.js.map +1 -0
  108. package/dist/components/file-explorer-header/FileExplorerHeaderControls.styles.cjs.js +2 -0
  109. package/dist/components/file-explorer-header/FileExplorerHeaderControls.styles.cjs.js.map +1 -0
  110. package/dist/components/file-explorer-header/FileExplorerHeaderControls.styles.esm.js +6 -0
  111. package/dist/components/file-explorer-header/FileExplorerHeaderControls.styles.esm.js.map +1 -0
  112. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.cjs.js +35 -0
  113. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.cjs.js.map +1 -0
  114. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.d.ts +22 -0
  115. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.d.ts.map +1 -0
  116. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.esm.js +356 -0
  117. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.esm.js.map +1 -0
  118. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.styles.cjs.js +2 -0
  119. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.styles.cjs.js.map +1 -0
  120. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.styles.esm.js +6 -0
  121. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.styles.esm.js.map +1 -0
  122. package/dist/components/file-explorer-header/index.cjs.js +2 -0
  123. package/dist/components/file-explorer-header/index.cjs.js.map +1 -0
  124. package/dist/components/file-explorer-header/index.d.ts +4 -0
  125. package/dist/components/file-explorer-header/index.d.ts.map +1 -0
  126. package/dist/components/file-explorer-header/index.esm.js +6 -0
  127. package/dist/components/file-explorer-header/index.esm.js.map +1 -0
  128. package/dist/components/file-explorer-header/types.d.ts +11 -0
  129. package/dist/components/file-explorer-header/types.d.ts.map +1 -0
  130. package/dist/components/file-explorer-header.js +1 -0
  131. package/dist/components/file-explorer-provider/FileExplorerProvider.cjs.js +2 -0
  132. package/dist/components/file-explorer-provider/FileExplorerProvider.cjs.js.map +1 -0
  133. package/dist/components/file-explorer-provider/FileExplorerProvider.d.ts +17 -0
  134. package/dist/components/file-explorer-provider/FileExplorerProvider.d.ts.map +1 -0
  135. package/dist/components/file-explorer-provider/FileExplorerProvider.esm.js +297 -0
  136. package/dist/components/file-explorer-provider/FileExplorerProvider.esm.js.map +1 -0
  137. package/dist/components/file-explorer-provider/index.cjs.js +2 -0
  138. package/dist/components/file-explorer-provider/index.cjs.js.map +1 -0
  139. package/dist/components/file-explorer-provider/index.d.ts +4 -0
  140. package/dist/components/file-explorer-provider/index.d.ts.map +1 -0
  141. package/dist/components/file-explorer-provider/index.esm.js +6 -0
  142. package/dist/components/file-explorer-provider/index.esm.js.map +1 -0
  143. package/dist/components/file-explorer-provider.js +1 -0
  144. package/dist/components/guard.js +1 -1
  145. package/dist/components/index.cjs.js +1 -1
  146. package/dist/components/index.d.ts.map +1 -1
  147. package/dist/components/index.esm.js +1 -0
  148. package/dist/components/login-button.js +1 -1
  149. package/dist/components/login-modal.js +1 -1
  150. package/dist/components/logout-button.js +1 -1
  151. package/dist/components/provider.js +1 -1
  152. package/dist/components/rdf-form.js +1 -1
  153. package/dist/components/rdf-input.js +1 -1
  154. package/dist/components/resource-actions-menu/DeleteResourceDialog.d.ts +8 -0
  155. package/dist/components/resource-actions-menu/DeleteResourceDialog.d.ts.map +1 -0
  156. package/dist/components/resource-actions-menu/ResourceActionsMenu.cjs.js +27 -0
  157. package/dist/components/resource-actions-menu/ResourceActionsMenu.cjs.js.map +1 -0
  158. package/dist/components/resource-actions-menu/ResourceActionsMenu.d.ts +23 -0
  159. package/dist/components/resource-actions-menu/ResourceActionsMenu.d.ts.map +1 -0
  160. package/dist/components/resource-actions-menu/ResourceActionsMenu.esm.js +344 -0
  161. package/dist/components/resource-actions-menu/ResourceActionsMenu.esm.js.map +1 -0
  162. package/dist/components/resource-actions-menu/ResourceActionsMenu.styles.cjs.js +2 -0
  163. package/dist/components/resource-actions-menu/ResourceActionsMenu.styles.cjs.js.map +1 -0
  164. package/dist/components/resource-actions-menu/ResourceActionsMenu.styles.esm.js +6 -0
  165. package/dist/components/resource-actions-menu/ResourceActionsMenu.styles.esm.js.map +1 -0
  166. package/dist/components/resource-actions-menu/ResourceActionsMenu.test.d.ts +1 -0
  167. package/dist/components/resource-actions-menu/ResourceActionsMenu.test.d.ts.map +1 -0
  168. package/dist/components/resource-actions-menu/index.cjs.js +1 -0
  169. package/dist/components/resource-actions-menu/index.d.ts +2 -0
  170. package/dist/components/resource-actions-menu/index.d.ts.map +1 -0
  171. package/dist/components/resource-actions-menu/index.esm.js +1 -0
  172. package/dist/components/resource-actions-menu.js +1 -0
  173. package/dist/components/signup-button.js +1 -1
  174. package/dist/components.js +15 -12
  175. package/dist/index.cjs.js +1 -1
  176. package/dist/index.cjs.js.map +1 -1
  177. package/dist/index.d.ts +1 -1
  178. package/dist/index.d.ts.map +1 -1
  179. package/dist/index.esm.js +8 -4
  180. package/dist/index.esm.js.map +1 -1
  181. package/dist/index.js +11 -9
  182. package/dist/lib/context/noopContext.cjs.js +2 -0
  183. package/dist/lib/context/noopContext.cjs.js.map +1 -0
  184. package/dist/lib/context/noopContext.d.ts +2 -0
  185. package/dist/lib/context/noopContext.d.ts.map +1 -0
  186. package/dist/lib/context/noopContext.esm.js +18 -0
  187. package/dist/lib/context/noopContext.esm.js.map +1 -0
  188. package/dist/lib/file-explorer/compose-explorer.cjs.js +2 -0
  189. package/dist/lib/file-explorer/compose-explorer.cjs.js.map +1 -0
  190. package/dist/lib/file-explorer/compose-explorer.d.ts +17 -0
  191. package/dist/lib/file-explorer/compose-explorer.d.ts.map +1 -0
  192. package/dist/lib/file-explorer/compose-explorer.esm.js +18 -0
  193. package/dist/lib/file-explorer/compose-explorer.esm.js.map +1 -0
  194. package/dist/lib/file-explorer/context.cjs.js +1 -1
  195. package/dist/lib/file-explorer/context.cjs.js.map +1 -1
  196. package/dist/lib/file-explorer/context.d.ts +12 -14
  197. package/dist/lib/file-explorer/context.d.ts.map +1 -1
  198. package/dist/lib/file-explorer/context.esm.js +4 -3
  199. package/dist/lib/file-explorer/context.esm.js.map +1 -1
  200. package/dist/lib/file-explorer/events.cjs.js +2 -0
  201. package/dist/lib/file-explorer/events.cjs.js.map +1 -0
  202. package/dist/lib/file-explorer/events.d.ts +16 -0
  203. package/dist/lib/file-explorer/events.d.ts.map +1 -0
  204. package/dist/lib/file-explorer/events.esm.js +8 -0
  205. package/dist/lib/file-explorer/events.esm.js.map +1 -0
  206. package/dist/lib/file-explorer/index.cjs.js +1 -0
  207. package/dist/lib/file-explorer/index.d.ts +5 -0
  208. package/dist/lib/file-explorer/index.d.ts.map +1 -0
  209. package/dist/lib/file-explorer/index.esm.js +5 -0
  210. package/dist/lib/file-explorer/relevant-panes.cjs.js +2 -0
  211. package/dist/lib/file-explorer/relevant-panes.cjs.js.map +1 -0
  212. package/dist/lib/file-explorer/relevant-panes.d.ts +22 -0
  213. package/dist/lib/file-explorer/relevant-panes.d.ts.map +1 -0
  214. package/dist/lib/file-explorer/relevant-panes.esm.js +23 -0
  215. package/dist/lib/file-explorer/relevant-panes.esm.js.map +1 -0
  216. package/dist/loader.js +11 -9
  217. package/dist/solid-ui.js +211 -107
  218. package/dist/solid-ui.min.js +211 -107
  219. package/dist/solid-ui.min.js.map +1 -1
  220. package/dist/theme.css +1 -1
  221. package/dist/utils/podUtils.cjs.js +2 -0
  222. package/dist/utils/podUtils.cjs.js.map +1 -0
  223. package/dist/utils/podUtils.d.ts +6 -0
  224. package/dist/utils/podUtils.d.ts.map +1 -0
  225. package/dist/utils/podUtils.esm.js +22 -0
  226. package/dist/utils/podUtils.esm.js.map +1 -0
  227. package/dist/utils/webIdUtils.cjs.js +1 -0
  228. package/dist/utils/webIdUtils.d.ts +7 -0
  229. package/dist/utils/webIdUtils.d.ts.map +1 -0
  230. package/dist/utils/webIdUtils.esm.js +3 -0
  231. package/package.json +3 -3
  232. package/dist/chunks/DialogProvider-C89v7x0r.js +0 -314
  233. package/dist/chunks/DialogProvider-C89v7x0r.js.map +0 -1
  234. package/dist/chunks/access-control-modal-Dcg6-f4V.js.map +0 -1
  235. package/dist/chunks/index.esm-CECfD0e9.js.map +0 -1
  236. package/dist/chunks/src-Dx7k_VIe.js.map +0 -1
@@ -0,0 +1,378 @@
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";
3
+ import "./button-D6qO2idW.js";
4
+ import "./menu-item-nfPpH4dN.js";
5
+ import "./menu-D0k2fkiE.js";
6
+ // ~icons/lucide/pencil
7
+ var c = class extends HTMLElement {
8
+ constructor() {
9
+ super(), this.attachShadow({ mode: "open" }).innerHTML = "<style>:host { display: inline-flex; }</style><svg viewBox=\"0 0 24 24\" width=\"100%\" height=\"100%\" ><path fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497zM15 5l4 4\"/></svg>";
10
+ }
11
+ };
12
+ customElements.get("icon-lucide-pencil") || customElements.define("icon-lucide-pencil", c);
13
+ // ~icons/lucide/ellipsis-vertical
14
+ var l = class extends HTMLElement {
15
+ constructor() {
16
+ super(), this.attachShadow({ mode: "open" }).innerHTML = "<style>:host { display: inline-flex; }</style><svg viewBox=\"0 0 24 24\" width=\"100%\" height=\"100%\" ><g fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\"><circle cx=\"12\" cy=\"12\" r=\"1\"/><circle cx=\"12\" cy=\"5\" r=\"1\"/><circle cx=\"12\" cy=\"19\" r=\"1\"/></g></svg>";
17
+ }
18
+ };
19
+ customElements.get("icon-lucide-ellipsis-vertical") || customElements.define("icon-lucide-ellipsis-vertical", l);
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("/"));
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;
34
+ }
35
+ // ~icons/lucide/user-round-cog
36
+ var f = class extends HTMLElement {
37
+ constructor() {
38
+ super(), this.attachShadow({ mode: "open" }).innerHTML = "<style>:host { display: inline-flex; }</style><svg viewBox=\"0 0 24 24\" width=\"100%\" height=\"100%\" ><g fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\"><path d=\"m14.305 19.53l.923-.382m0-2.296l-.923-.383m2.547-1.241l-.383-.923m.383 6.467l-.383.924m2.679-6.468l.383-.923m-.001 7.391l-.382-.924M2 21a8 8 0 0 1 10.434-7.62m8.338 3.472l.924-.383m-.924 2.679l.924.383\"/><circle cx=\"10\" cy=\"8\" r=\"5\"/><circle cx=\"18\" cy=\"18\" r=\"3\"/></g></svg>";
39
+ }
40
+ };
41
+ customElements.get("icon-lucide-user-round-cog") || customElements.define("icon-lucide-user-round-cog", f);
42
+ // ~icons/lucide/file
43
+ var p = class extends HTMLElement {
44
+ constructor() {
45
+ super(), this.attachShadow({ mode: "open" }).innerHTML = "<style>:host { display: inline-flex; }</style><svg viewBox=\"0 0 24 24\" width=\"100%\" height=\"100%\" ><g fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\"><path d=\"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z\"/><path d=\"M14 2v5a1 1 0 0 0 1 1h5\"/></g></svg>";
46
+ }
47
+ };
48
+ customElements.get("icon-lucide-file") || customElements.define("icon-lucide-file", p);
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;
51
+ function X(e, t, n) {
52
+ ne(e, t), t.set(e, n);
53
+ }
54
+ function ne(e, t) {
55
+ if (t.has(e)) throw TypeError("Cannot initialize the same private elements twice on an object");
56
+ }
57
+ function Z(e, t, n) {
58
+ return e.set(re(e, t), n), n;
59
+ }
60
+ function Q(e, t) {
61
+ return e.get(re(e, t));
62
+ }
63
+ function re(e, t, n) {
64
+ if (typeof e == "function" ? e === t : e.has(t)) return arguments.length < 3 ? t : n;
65
+ throw TypeError("Private element is not present on this object");
66
+ }
67
+ function ie(e, t, n) {
68
+ return (t = oe(t)) in e ? Object.defineProperty(e, t, {
69
+ value: n,
70
+ enumerable: !0,
71
+ configurable: !0,
72
+ writable: !0
73
+ }) : e[t] = n, e;
74
+ }
75
+ function ae(e, t, n, r, i, a) {
76
+ function o(e, t, n) {
77
+ return function(r, i) {
78
+ return n && n(r), e[t].call(r, i);
79
+ };
80
+ }
81
+ function s(e, t) {
82
+ for (var n = 0; n < e.length; n++) e[n].call(t);
83
+ return t;
84
+ }
85
+ function c(e, t, n, r) {
86
+ if (typeof e != "function" && (r || e !== void 0)) throw TypeError(t + " must " + (n || "be") + " a function" + (r ? "" : " or undefined"));
87
+ return e;
88
+ }
89
+ function l(e, t, n, r, i, a, s, l, u, d, f, p, m) {
90
+ function h(e) {
91
+ if (!m(e)) throw TypeError("Attempted to access private element on non-instance");
92
+ }
93
+ var g, _ = t[0], v = t[3], y = !l;
94
+ if (!y) {
95
+ n || Array.isArray(_) || (_ = [_]);
96
+ var b = {}, x = [], S = i === 3 ? "get" : i === 4 || p ? "set" : "value";
97
+ d ? (f || p ? b = {
98
+ get: ce(function() {
99
+ return v(this);
100
+ }, r, "get"),
101
+ set: function(e) {
102
+ t[4](this, e);
103
+ }
104
+ } : b[S] = v, f || ce(b[S], r, i === 2 ? "" : S)) : f || (b = Object.getOwnPropertyDescriptor(e, r));
105
+ }
106
+ for (var C = e, w = _.length - 1; w >= 0; w -= n ? 2 : 1) {
107
+ var T = _[w], E = n ? _[w - 1] : void 0, D = {}, O = {
108
+ kind: [
109
+ "field",
110
+ "accessor",
111
+ "method",
112
+ "getter",
113
+ "setter",
114
+ "class"
115
+ ][i],
116
+ name: r,
117
+ metadata: a,
118
+ addInitializer: function(e, t) {
119
+ if (e.v) throw Error("attempted to call addInitializer after decoration was finished");
120
+ c(t, "An initializer", "be", !0), s.push(t);
121
+ }.bind(null, D)
122
+ };
123
+ try {
124
+ if (y) (g = c(T.call(E, C, O), "class decorators", "return")) && (C = g);
125
+ else {
126
+ var k, A;
127
+ O.static = u, O.private = d, d ? i === 2 ? k = function(e) {
128
+ return h(e), b.value;
129
+ } : (i < 4 && (k = o(b, "get", h)), i !== 3 && (A = o(b, "set", h))) : (k = function(e) {
130
+ return e[r];
131
+ }, (i < 2 || i === 4) && (A = function(e, t) {
132
+ e[r] = t;
133
+ }));
134
+ var j = O.access = { has: d ? m.bind() : function(e) {
135
+ return r in e;
136
+ } };
137
+ if (k && (j.get = k), A && (j.set = A), C = T.call(E, p ? {
138
+ get: b.get,
139
+ set: b.set
140
+ } : b[S], O), p) {
141
+ if (typeof C == "object" && C) (g = c(C.get, "accessor.get")) && (b.get = g), (g = c(C.set, "accessor.set")) && (b.set = g), (g = c(C.init, "accessor.init")) && x.push(g);
142
+ else if (C !== void 0) throw TypeError("accessor decorators must return an object with get, set, or init properties or void 0");
143
+ } else c(C, (f ? "field" : "method") + " decorators", "return") && (f ? x.push(C) : b[S] = C);
144
+ }
145
+ } finally {
146
+ D.v = !0;
147
+ }
148
+ }
149
+ return (f || p) && l.push(function(e, t) {
150
+ for (var n = x.length - 1; n >= 0; n--) t = x[n].call(e, t);
151
+ return t;
152
+ }), f || y || (d ? p ? l.push(o(b, "get"), o(b, "set")) : l.push(i === 2 ? b[S] : o.call.bind(b[S])) : Object.defineProperty(e, r, b)), C;
153
+ }
154
+ function u(e, t) {
155
+ return Object.defineProperty(e, Symbol.metadata || Symbol.for("Symbol.metadata"), {
156
+ configurable: !0,
157
+ enumerable: !0,
158
+ value: t
159
+ });
160
+ }
161
+ if (arguments.length >= 6) var d = a[Symbol.metadata || Symbol.for("Symbol.metadata")];
162
+ var f = Object.create(d ?? null), p = function(e, t, n, r) {
163
+ var i, a, o = [], c = function(t) {
164
+ return le(t) === e;
165
+ }, u = /* @__PURE__ */ new Map();
166
+ function d(e) {
167
+ e && o.push(s.bind(null, e));
168
+ }
169
+ for (var f = 0; f < t.length; f++) {
170
+ var p = t[f];
171
+ if (Array.isArray(p)) {
172
+ var m = p[1], h = p[2], g = p.length > 3, _ = 16 & m, v = !!(8 & m), y = (m &= 7) == 0, b = h + "/" + v;
173
+ if (!y && !g) {
174
+ var x = u.get(b);
175
+ if (!0 === x || x === 3 && m !== 4 || x === 4 && m !== 3) throw Error("Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: " + h);
176
+ u.set(b, !(m > 2) || m);
177
+ }
178
+ l(v ? e : e.prototype, p, _, g ? "#" + h : oe(h), m, r, v ? a ||= [] : i ||= [], o, v, g, y, m === 1, v && g ? c : n);
179
+ }
180
+ }
181
+ return d(i), d(a), o;
182
+ }(e, t, i, f);
183
+ return n.length || u(e, f), {
184
+ e: p,
185
+ get c() {
186
+ var t = [];
187
+ return n.length && [u(l(e, [n], r, e.name, 5, f, t), f), s.bind(null, t, e)];
188
+ }
189
+ };
190
+ }
191
+ function oe(e) {
192
+ var t = se(e, "string");
193
+ return typeof t == "symbol" ? t : t + "";
194
+ }
195
+ function se(e, t) {
196
+ if (typeof e != "object" || !e) return e;
197
+ var n;
198
+ if (typeof Symbol < "u" && (n = e[Symbol.toPrimitive]) !== void 0) {
199
+ var r = n.call(e, t || "default");
200
+ if (typeof r != "object") return r;
201
+ throw TypeError("@@toPrimitive must return a primitive value.");
202
+ }
203
+ return (t === "string" ? String : Number)(e);
204
+ }
205
+ function ce(e, t, n) {
206
+ typeof t == "symbol" && (t = (t = t.description) ? "[" + t + "]" : "");
207
+ try {
208
+ Object.defineProperty(e, "name", {
209
+ configurable: !0,
210
+ value: n ? n + " " + t : t
211
+ });
212
+ } catch {}
213
+ return e;
214
+ }
215
+ function le(e) {
216
+ if (Object(e) !== e) throw TypeError("right-hand side of 'in' should be an object, got " + (e === null ? "null" : typeof e));
217
+ return e;
218
+ }
219
+ function ue(e) {
220
+ return e;
221
+ }
222
+ k = [r("solid-ui-resource-actions-menu")];
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({
225
+ type: Boolean,
226
+ attribute: "show-access-in-menu"
227
+ }), K = i({ attribute: !1 }), "store"), g = class extends a {
228
+ constructor(...e) {
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
+ }
231
+ get [Y]() {
232
+ return Q(_, this);
233
+ }
234
+ set store(e) {
235
+ Z(_, this, e);
236
+ }
237
+ get subjectUri() {
238
+ return Q(v, this);
239
+ }
240
+ set subjectUri(e) {
241
+ Z(v, this, e);
242
+ }
243
+ get handleAccessClick() {
244
+ return Q(y, this);
245
+ }
246
+ set handleAccessClick(e) {
247
+ Z(y, this, e);
248
+ }
249
+ get handleEditingClick() {
250
+ return Q(b, this);
251
+ }
252
+ set handleEditingClick(e) {
253
+ Z(b, this, e);
254
+ }
255
+ get paneSupportsEditing() {
256
+ return Q(x, this);
257
+ }
258
+ set paneSupportsEditing(e) {
259
+ Z(x, this, e);
260
+ }
261
+ get canEdit() {
262
+ return Q(S, this);
263
+ }
264
+ set canEdit(e) {
265
+ Z(S, this, e);
266
+ }
267
+ get canManageAccess() {
268
+ return Q(C, this);
269
+ }
270
+ set canManageAccess(e) {
271
+ Z(C, this, e);
272
+ }
273
+ get isMobile() {
274
+ return Q(w, this);
275
+ }
276
+ set isMobile(e) {
277
+ Z(w, this, e);
278
+ }
279
+ get showAccessInMenu() {
280
+ return Q(T, this);
281
+ }
282
+ set showAccessInMenu(e) {
283
+ Z(T, this, e);
284
+ }
285
+ get menuItems() {
286
+ return Q(E, this);
287
+ }
288
+ set menuItems(e) {
289
+ Z(E, this, e);
290
+ }
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`
294
+ <solid-ui-menu>
295
+ <solid-ui-button slot="trigger" class="file-explorer-header-more-button" variant="ghost" title="More options">
296
+ <icon-lucide-ellipsis-vertical slot="icon" class="ellipsisIcon"></icon-lucide-ellipsis-vertical>
297
+ <span class="sr-only">More options</span>
298
+ </solid-ui-button>
299
+ ${r.map((e) => s`
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>`}
302
+ ${e.label}
303
+ </solid-ui-menu-item>
304
+ `)}
305
+ ${e ? s`
306
+ <solid-ui-menu-item @solid-ui-select=${this.handleEditingClick}>
307
+ <icon-lucide-pencil slot="left-icon"></icon-lucide-pencil>
308
+ Edit
309
+ </solid-ui-menu-item>
310
+ ` : n}
311
+ ${t ? s`
312
+ <solid-ui-menu-item @solid-ui-select=${this.handleAccessClick}>
313
+ <icon-lucide-user-round-cog slot="left-icon"></icon-lucide-user-round-cog>
314
+ Manage Access
315
+ </solid-ui-menu-item>
316
+ ` : n}
317
+ </solid-ui-menu>
318
+ `;
319
+ }
320
+ }, {e: [j, M, te, F, L, z, V, U, G, q, D], c: [$, O]} = ae(g, [
321
+ [
322
+ A,
323
+ 1,
324
+ "store"
325
+ ],
326
+ [
327
+ ee,
328
+ 1,
329
+ "subjectUri"
330
+ ],
331
+ [
332
+ N,
333
+ 1,
334
+ "handleAccessClick"
335
+ ],
336
+ [
337
+ P,
338
+ 1,
339
+ "handleEditingClick"
340
+ ],
341
+ [
342
+ I,
343
+ 1,
344
+ "paneSupportsEditing"
345
+ ],
346
+ [
347
+ R,
348
+ 1,
349
+ "canEdit"
350
+ ],
351
+ [
352
+ B,
353
+ 1,
354
+ "canManageAccess"
355
+ ],
356
+ [
357
+ H,
358
+ 1,
359
+ "isMobile"
360
+ ],
361
+ [
362
+ W,
363
+ 1,
364
+ "showAccessInMenu"
365
+ ],
366
+ [
367
+ K,
368
+ 1,
369
+ "menuItems"
370
+ ]
371
+ ], k, 0, void 0, a), g), h = class extends ue {
372
+ constructor() {
373
+ super($), ie(this, "styles", m), O();
374
+ }
375
+ }, ie(h, J, void 0), h)();
376
+ export { d as n, u as r, $ as t };
377
+
378
+ //# sourceMappingURL=ResourceActionsMenu-Bllpr4M5.js.map
@@ -0,0 +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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"}