solid-panes 4.4.2-7 → 4.5.0

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 (534) hide show
  1. package/README.md +40 -10
  2. package/dist/0314353e28ce6e5539af.svg +9 -0
  3. package/dist/04567ff683933c35c465.png +0 -0
  4. package/dist/10163fd9b5a0e00d63a0.png +0 -0
  5. package/dist/1234dcb2eec2e45f252b.png +0 -0
  6. package/dist/20899934157df4db56cb.png +0 -0
  7. package/dist/33760bf79f097f449da5.png +0 -0
  8. package/dist/4cceba29ab33b1ddd9bb.svg +6 -0
  9. package/dist/578d2b6ed32e7624164e.png +0 -0
  10. package/dist/5f62a5b2b7e99b9640c7.png +0 -0
  11. package/dist/6525766ecd288ec60129.png +0 -0
  12. package/dist/7800be6f6c4b5b0f4f20.png +0 -0
  13. package/dist/7b7538c6f6b317968009.svg +9 -0
  14. package/dist/92d03142abe6efc0b42d.svg +6 -0
  15. package/dist/976473cf5fe24d657d4b.png +0 -0
  16. package/dist/RDFXMLPane.css +70 -0
  17. package/dist/RDFXMLPane.d.ts +3 -2
  18. package/dist/RDFXMLPane.js +100 -0
  19. package/dist/argument/argumentPane.js +60 -0
  20. package/dist/attach/attachPane.js +393 -0
  21. package/dist/audio/audioPane.js +181 -0
  22. package/dist/bda84f59e7216675a208.png +0 -0
  23. package/dist/cd68e8f3990ba8b2139e.png +0 -0
  24. package/dist/classInstancePane.js +91 -0
  25. package/dist/dashboard/basicPreferences.d.ts +1 -1
  26. package/dist/dashboard/basicPreferences.js +147 -0
  27. package/dist/dashboard/dashboardPane.d.ts +1 -1
  28. package/dist/dashboard/dashboardPane.js +73 -0
  29. package/dist/dashboard/homepage.d.ts +1 -1
  30. package/dist/dashboard/homepage.js +42 -0
  31. package/dist/dataContentPane.css +271 -0
  32. package/dist/dataContentPane.d.ts +3 -2
  33. package/dist/dataContentPane.js +226 -0
  34. package/dist/defaultPane.css +97 -0
  35. package/dist/defaultPane.d.ts +3 -2
  36. package/dist/defaultPane.js +81 -0
  37. package/dist/dokieli/dokieliPane.js +74 -0
  38. package/dist/dokieli/{new.cjs.js → new.js} +10 -4
  39. package/dist/e7074a7e2cb69e51cfd3.png +0 -0
  40. package/dist/f3772696fb7ee53c23d8.png +0 -0
  41. package/dist/form/formPane.css +120 -0
  42. package/dist/form/pane.d.ts +2 -1
  43. package/dist/form/pane.js +250 -0
  44. package/dist/home/homePane.d.ts +1 -1
  45. package/dist/home/homePane.js +74 -0
  46. package/dist/humanReadablePane.css +129 -0
  47. package/dist/humanReadablePane.d.ts +3 -2
  48. package/dist/humanReadablePane.js +243 -0
  49. package/dist/icons/clock.svg +7 -0
  50. package/dist/icons/comment.svg +6 -0
  51. package/dist/icons/dashboard.svg +9 -0
  52. package/dist/icons/downArrow.svg +6 -0
  53. package/dist/icons/folder.svg +6 -0
  54. package/dist/icons/friends.svg +9 -0
  55. package/dist/icons/help.svg +8 -0
  56. package/dist/icons/iconHelper.js +23 -0
  57. package/dist/icons/menu.svg +8 -0
  58. package/dist/icons/person.svg +6 -0
  59. package/dist/icons/personInCircle.svg +8 -0
  60. package/dist/icons/sharing.svg +10 -0
  61. package/dist/icons/signOut.svg +8 -0
  62. package/dist/icons/signUp.svg +9 -0
  63. package/dist/icons/star.svg +3 -0
  64. package/dist/imagePane.css +4 -0
  65. package/dist/imagePane.d.ts +3 -2
  66. package/dist/imagePane.js +67 -0
  67. package/dist/index.d.ts +4 -4
  68. package/dist/index.js +123 -0
  69. package/dist/internal/internalPane.css +14 -0
  70. package/dist/internal/internalPane.d.ts +2 -1
  71. package/dist/internal/internalPane.js +183 -0
  72. package/dist/mainPage/footer.d.ts +15 -0
  73. package/dist/mainPage/footer.d.ts.map +1 -0
  74. package/dist/mainPage/footer.js +29 -0
  75. package/dist/mainPage/header.d.ts +15 -1
  76. package/dist/mainPage/header.d.ts.map +1 -1
  77. package/dist/mainPage/header.js +203 -0
  78. package/dist/mainPage/index.d.ts +15 -3
  79. package/dist/mainPage/index.d.ts.map +1 -1
  80. package/dist/mainPage/index.js +78 -0
  81. package/dist/mainPage/menu.css +243 -0
  82. package/dist/mainPage/menu.d.ts +7 -0
  83. package/dist/mainPage/menu.d.ts.map +1 -0
  84. package/dist/mainPage/menu.js +436 -0
  85. package/dist/microblogPane/mbStyle.css +267 -0
  86. package/dist/microblogPane/microblogPane.js +1031 -0
  87. package/dist/n3Pane.css +49 -0
  88. package/dist/n3Pane.d.ts +3 -2
  89. package/dist/n3Pane.js +88 -0
  90. package/dist/outline/context.d.ts +3 -3
  91. package/dist/outline/context.js +21 -0
  92. package/dist/outline/manager.css +78 -0
  93. package/dist/outline/manager.js +2115 -0
  94. package/dist/outline/outlineIcons.js +126 -0
  95. package/dist/outline/propertyViews.js +43 -0
  96. package/dist/outline/queryByExample.js +285 -0
  97. package/dist/outline/userInput.js +1821 -0
  98. package/dist/outline/viewAsImage.js +14 -0
  99. package/dist/outline/viewAsMbox.js +21 -0
  100. package/dist/pad/padPane.css +40 -0
  101. package/dist/pad/padPane.d.ts +2 -1
  102. package/dist/pad/padPane.js +421 -0
  103. package/dist/playlist/playlistPane.js +119 -0
  104. package/dist/profileUtils/ownerProfile.d.ts +5 -0
  105. package/dist/profileUtils/ownerProfile.d.ts.map +1 -0
  106. package/dist/profileUtils/ownerProfile.js +84 -0
  107. package/dist/registerPanes.js +145 -0
  108. package/dist/schedule/schedulePane.css +294 -0
  109. package/dist/schedule/schedulePane.d.ts +4 -2
  110. package/dist/schedule/schedulePane.js +1022 -0
  111. package/dist/sharing/sharingPane.js +48 -0
  112. package/dist/slideshow/slideshowPane.js +79 -0
  113. package/dist/social/editProfileDetails.d.ts +2 -1
  114. package/dist/social/editProfileDetails.js +362 -0
  115. package/dist/social/{icons.esm.js → icons.js} +18 -12
  116. package/dist/social/socialPane.css +1464 -0
  117. package/dist/social/socialPane.d.ts +3 -2
  118. package/dist/social/socialPane.js +651 -0
  119. package/dist/social/socialSections.d.ts +2 -2
  120. package/dist/social/socialSections.js +393 -0
  121. package/dist/social/spinner.js +13 -0
  122. package/dist/social/triage.d.ts +2 -2
  123. package/dist/social/triage.js +79 -0
  124. package/dist/solid-panes.js +84629 -0
  125. package/dist/solid-panes.js.map +1 -0
  126. package/dist/solid-panes.min.js +3933 -0
  127. package/dist/solid-panes.min.js.map +1 -0
  128. package/dist/styles/tabbedtab.css +1066 -0
  129. package/dist/styles/utilities.css +5 -0
  130. package/dist/tabbed/tabbedPane.d.ts +1 -1
  131. package/dist/tabbed/tabbedPane.js +59 -0
  132. package/dist/tableViewPane.js +56 -0
  133. package/dist/transaction/pane.js +477 -0
  134. package/dist/transaction/period.js +323 -0
  135. package/dist/trip/tripPane.js +174 -0
  136. package/dist/trustedApplications/trustedApplications.dom.d.ts +1 -1
  137. package/dist/trustedApplications/trustedApplications.dom.js +145 -0
  138. package/dist/trustedApplications/trustedApplications.utils.d.ts +1 -1
  139. package/dist/trustedApplications/trustedApplications.utils.js +23 -0
  140. package/dist/trustedApplications/trustedApplications.view.d.ts +1 -1
  141. package/dist/trustedApplications/trustedApplications.view.js +55 -0
  142. package/dist/ui/pane.js +146 -0
  143. package/dist/versionInfo.js +41 -0
  144. package/dist/video/videoPane.js +42 -0
  145. package/package.json +66 -51
  146. package/dist/RDFXMLPane2.cjs.js +0 -3
  147. package/dist/RDFXMLPane2.cjs.js.map +0 -1
  148. package/dist/RDFXMLPane2.esm.js +0 -55
  149. package/dist/RDFXMLPane2.esm.js.map +0 -1
  150. package/dist/_virtual/_rolldown/runtime.cjs.js +0 -1
  151. package/dist/_virtual/~icons/lucide/arrow-left.cjs.js +0 -2
  152. package/dist/_virtual/~icons/lucide/arrow-left.cjs.js.map +0 -1
  153. package/dist/_virtual/~icons/lucide/arrow-left.esm.js +0 -11
  154. package/dist/_virtual/~icons/lucide/arrow-left.esm.js.map +0 -1
  155. package/dist/_virtual/~icons/lucide/ellipsis-vertical.cjs.js +0 -2
  156. package/dist/_virtual/~icons/lucide/ellipsis-vertical.cjs.js.map +0 -1
  157. package/dist/_virtual/~icons/lucide/ellipsis-vertical.esm.js +0 -11
  158. package/dist/_virtual/~icons/lucide/ellipsis-vertical.esm.js.map +0 -1
  159. package/dist/_virtual/~icons/lucide/folder-open.cjs.js +0 -2
  160. package/dist/_virtual/~icons/lucide/folder-open.cjs.js.map +0 -1
  161. package/dist/_virtual/~icons/lucide/folder-open.esm.js +0 -11
  162. package/dist/_virtual/~icons/lucide/folder-open.esm.js.map +0 -1
  163. package/dist/_virtual/~icons/lucide/globe.cjs.js +0 -2
  164. package/dist/_virtual/~icons/lucide/globe.cjs.js.map +0 -1
  165. package/dist/_virtual/~icons/lucide/globe.esm.js +0 -11
  166. package/dist/_virtual/~icons/lucide/globe.esm.js.map +0 -1
  167. package/dist/_virtual/~icons/lucide/help-circle.cjs.js +0 -2
  168. package/dist/_virtual/~icons/lucide/help-circle.cjs.js.map +0 -1
  169. package/dist/_virtual/~icons/lucide/help-circle.esm.js +0 -11
  170. package/dist/_virtual/~icons/lucide/help-circle.esm.js.map +0 -1
  171. package/dist/_virtual/~icons/lucide/layout-dashboard.cjs.js +0 -2
  172. package/dist/_virtual/~icons/lucide/layout-dashboard.cjs.js.map +0 -1
  173. package/dist/_virtual/~icons/lucide/layout-dashboard.esm.js +0 -11
  174. package/dist/_virtual/~icons/lucide/layout-dashboard.esm.js.map +0 -1
  175. package/dist/_virtual/~icons/lucide/lock-keyhole.cjs.js +0 -2
  176. package/dist/_virtual/~icons/lucide/lock-keyhole.cjs.js.map +0 -1
  177. package/dist/_virtual/~icons/lucide/lock-keyhole.esm.js +0 -11
  178. package/dist/_virtual/~icons/lucide/lock-keyhole.esm.js.map +0 -1
  179. package/dist/_virtual/~icons/lucide/pencil.cjs.js +0 -2
  180. package/dist/_virtual/~icons/lucide/pencil.cjs.js.map +0 -1
  181. package/dist/_virtual/~icons/lucide/pencil.esm.js +0 -11
  182. package/dist/_virtual/~icons/lucide/pencil.esm.js.map +0 -1
  183. package/dist/_virtual/~icons/lucide/settings-2.cjs.js +0 -2
  184. package/dist/_virtual/~icons/lucide/settings-2.cjs.js.map +0 -1
  185. package/dist/_virtual/~icons/lucide/settings-2.esm.js +0 -11
  186. package/dist/_virtual/~icons/lucide/settings-2.esm.js.map +0 -1
  187. package/dist/_virtual/~icons/lucide/share-2.cjs.js +0 -2
  188. package/dist/_virtual/~icons/lucide/share-2.cjs.js.map +0 -1
  189. package/dist/_virtual/~icons/lucide/share-2.esm.js +0 -11
  190. package/dist/_virtual/~icons/lucide/share-2.esm.js.map +0 -1
  191. package/dist/_virtual/~icons/lucide/trash-2.cjs.js +0 -2
  192. package/dist/_virtual/~icons/lucide/trash-2.cjs.js.map +0 -1
  193. package/dist/_virtual/~icons/lucide/trash-2.esm.js +0 -11
  194. package/dist/_virtual/~icons/lucide/trash-2.esm.js.map +0 -1
  195. package/dist/_virtual/~icons/lucide/user.cjs.js +0 -2
  196. package/dist/_virtual/~icons/lucide/user.cjs.js.map +0 -1
  197. package/dist/_virtual/~icons/lucide/user.esm.js +0 -11
  198. package/dist/_virtual/~icons/lucide/user.esm.js.map +0 -1
  199. package/dist/_virtual/~icons/lucide/users.cjs.js +0 -2
  200. package/dist/_virtual/~icons/lucide/users.cjs.js.map +0 -1
  201. package/dist/_virtual/~icons/lucide/users.esm.js +0 -11
  202. package/dist/_virtual/~icons/lucide/users.esm.js.map +0 -1
  203. package/dist/audio/audioPane.cjs.js +0 -2
  204. package/dist/audio/audioPane.cjs.js.map +0 -1
  205. package/dist/audio/audioPane.esm.js +0 -99
  206. package/dist/audio/audioPane.esm.js.map +0 -1
  207. package/dist/classInstancePane.cjs.js +0 -2
  208. package/dist/classInstancePane.cjs.js.map +0 -1
  209. package/dist/classInstancePane.esm.js +0 -50
  210. package/dist/classInstancePane.esm.js.map +0 -1
  211. package/dist/components/file-explorer-header/FileExplorerHeader.cjs.js +0 -14
  212. package/dist/components/file-explorer-header/FileExplorerHeader.cjs.js.map +0 -1
  213. package/dist/components/file-explorer-header/FileExplorerHeader.d.ts +0 -19
  214. package/dist/components/file-explorer-header/FileExplorerHeader.d.ts.map +0 -1
  215. package/dist/components/file-explorer-header/FileExplorerHeader.esm.js +0 -292
  216. package/dist/components/file-explorer-header/FileExplorerHeader.esm.js.map +0 -1
  217. package/dist/components/file-explorer-header/FileExplorerHeader.styles.cjs.js +0 -2
  218. package/dist/components/file-explorer-header/FileExplorerHeader.styles.cjs.js.map +0 -1
  219. package/dist/components/file-explorer-header/FileExplorerHeader.styles.esm.js +0 -7
  220. package/dist/components/file-explorer-header/FileExplorerHeader.styles.esm.js.map +0 -1
  221. package/dist/components/file-explorer-header/FileExplorerHeaderControls.cjs.js +0 -22
  222. package/dist/components/file-explorer-header/FileExplorerHeaderControls.cjs.js.map +0 -1
  223. package/dist/components/file-explorer-header/FileExplorerHeaderControls.d.ts +0 -15
  224. package/dist/components/file-explorer-header/FileExplorerHeaderControls.d.ts.map +0 -1
  225. package/dist/components/file-explorer-header/FileExplorerHeaderControls.esm.js +0 -266
  226. package/dist/components/file-explorer-header/FileExplorerHeaderControls.esm.js.map +0 -1
  227. package/dist/components/file-explorer-header/FileExplorerHeaderControls.styles.cjs.js +0 -2
  228. package/dist/components/file-explorer-header/FileExplorerHeaderControls.styles.cjs.js.map +0 -1
  229. package/dist/components/file-explorer-header/FileExplorerHeaderControls.styles.esm.js +0 -7
  230. package/dist/components/file-explorer-header/FileExplorerHeaderControls.styles.esm.js.map +0 -1
  231. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.cjs.js +0 -19
  232. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.cjs.js.map +0 -1
  233. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.d.ts +0 -19
  234. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.d.ts.map +0 -1
  235. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.esm.js +0 -321
  236. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.esm.js.map +0 -1
  237. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.styles.cjs.js +0 -2
  238. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.styles.cjs.js.map +0 -1
  239. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.styles.esm.js +0 -7
  240. package/dist/components/file-explorer-header/FileExplorerHeaderSummary.styles.esm.js.map +0 -1
  241. package/dist/components/file-explorer-header/FileExplorerProvider.cjs.js +0 -13
  242. package/dist/components/file-explorer-header/FileExplorerProvider.cjs.js.map +0 -1
  243. package/dist/components/file-explorer-header/FileExplorerProvider.d.ts +0 -36
  244. package/dist/components/file-explorer-header/FileExplorerProvider.d.ts.map +0 -1
  245. package/dist/components/file-explorer-header/FileExplorerProvider.esm.js +0 -468
  246. package/dist/components/file-explorer-header/FileExplorerProvider.esm.js.map +0 -1
  247. package/dist/components/file-explorer-header/FileExplorerProvider.styles.cjs.js +0 -2
  248. package/dist/components/file-explorer-header/FileExplorerProvider.styles.cjs.js.map +0 -1
  249. package/dist/components/file-explorer-header/FileExplorerProvider.styles.esm.js +0 -7
  250. package/dist/components/file-explorer-header/FileExplorerProvider.styles.esm.js.map +0 -1
  251. package/dist/components/file-explorer-header/helper.cjs.js +0 -2
  252. package/dist/components/file-explorer-header/helper.cjs.js.map +0 -1
  253. package/dist/components/file-explorer-header/helper.d.ts +0 -15
  254. package/dist/components/file-explorer-header/helper.d.ts.map +0 -1
  255. package/dist/components/file-explorer-header/helper.esm.js +0 -64
  256. package/dist/components/file-explorer-header/helper.esm.js.map +0 -1
  257. package/dist/components/file-explorer-header/types.d.ts +0 -2
  258. package/dist/components/file-explorer-header/types.d.ts.map +0 -1
  259. package/dist/components/header/Header.cjs.js +0 -19
  260. package/dist/components/header/Header.cjs.js.map +0 -1
  261. package/dist/components/header/Header.d.ts +0 -8
  262. package/dist/components/header/Header.d.ts.map +0 -1
  263. package/dist/components/header/Header.esm.js +0 -228
  264. package/dist/components/header/Header.esm.js.map +0 -1
  265. package/dist/components/header/Header.styles.cjs.js +0 -2
  266. package/dist/components/header/Header.styles.cjs.js.map +0 -1
  267. package/dist/components/header/Header.styles.esm.js +0 -7
  268. package/dist/components/header/Header.styles.esm.js.map +0 -1
  269. package/dist/components/header/index.cjs.js +0 -1
  270. package/dist/components/header/index.d.ts +0 -4
  271. package/dist/components/header/index.d.ts.map +0 -1
  272. package/dist/components/header/index.esm.js +0 -1
  273. package/dist/components/navbar/Navbar.cjs.js +0 -15
  274. package/dist/components/navbar/Navbar.cjs.js.map +0 -1
  275. package/dist/components/navbar/Navbar.d.ts +0 -14
  276. package/dist/components/navbar/Navbar.d.ts.map +0 -1
  277. package/dist/components/navbar/Navbar.esm.js +0 -232
  278. package/dist/components/navbar/Navbar.esm.js.map +0 -1
  279. package/dist/components/navbar/Navbar.styles.cjs.js +0 -2
  280. package/dist/components/navbar/Navbar.styles.cjs.js.map +0 -1
  281. package/dist/components/navbar/Navbar.styles.esm.js +0 -7
  282. package/dist/components/navbar/Navbar.styles.esm.js.map +0 -1
  283. package/dist/components/navbar/index.cjs.js +0 -1
  284. package/dist/components/navbar/index.d.ts +0 -4
  285. package/dist/components/navbar/index.d.ts.map +0 -1
  286. package/dist/components/navbar/index.esm.js +0 -1
  287. package/dist/components/resource-actions-menu/DeleteResourceDialog.cjs.js +0 -16
  288. package/dist/components/resource-actions-menu/DeleteResourceDialog.cjs.js.map +0 -1
  289. package/dist/components/resource-actions-menu/DeleteResourceDialog.d.ts +0 -8
  290. package/dist/components/resource-actions-menu/DeleteResourceDialog.d.ts.map +0 -1
  291. package/dist/components/resource-actions-menu/DeleteResourceDialog.esm.js +0 -215
  292. package/dist/components/resource-actions-menu/DeleteResourceDialog.esm.js.map +0 -1
  293. package/dist/components/resource-actions-menu/ResourceActionsMenu.cjs.js +0 -18
  294. package/dist/components/resource-actions-menu/ResourceActionsMenu.cjs.js.map +0 -1
  295. package/dist/components/resource-actions-menu/ResourceActionsMenu.d.ts +0 -16
  296. package/dist/components/resource-actions-menu/ResourceActionsMenu.d.ts.map +0 -1
  297. package/dist/components/resource-actions-menu/ResourceActionsMenu.esm.js +0 -260
  298. package/dist/components/resource-actions-menu/ResourceActionsMenu.esm.js.map +0 -1
  299. package/dist/dashboard/basicPreferences.cjs.js +0 -2
  300. package/dist/dashboard/basicPreferences.cjs.js.map +0 -1
  301. package/dist/dashboard/basicPreferences.esm.js +0 -70
  302. package/dist/dashboard/basicPreferences.esm.js.map +0 -1
  303. package/dist/dashboard/dashboardPane.cjs.js +0 -2
  304. package/dist/dashboard/dashboardPane.cjs.js.map +0 -1
  305. package/dist/dashboard/dashboardPane.esm.js +0 -7
  306. package/dist/dashboard/dashboardPane.esm.js.map +0 -1
  307. package/dist/dashboard/homepage.cjs.js +0 -2
  308. package/dist/dashboard/homepage.cjs.js.map +0 -1
  309. package/dist/dashboard/homepage.esm.js +0 -26
  310. package/dist/dashboard/homepage.esm.js.map +0 -1
  311. package/dist/dashboard/ontologyData.cjs.js +0 -37
  312. package/dist/dashboard/ontologyData.cjs.js.map +0 -1
  313. package/dist/dashboard/ontologyData.esm.js +0 -6
  314. package/dist/dashboard/ontologyData.esm.js.map +0 -1
  315. package/dist/dashboard/preferencesFormText.cjs.js +0 -20
  316. package/dist/dashboard/preferencesFormText.cjs.js.map +0 -1
  317. package/dist/dashboard/preferencesFormText.esm.js +0 -6
  318. package/dist/dashboard/preferencesFormText.esm.js.map +0 -1
  319. package/dist/dataContentPane2.cjs.js +0 -2
  320. package/dist/dataContentPane2.cjs.js.map +0 -1
  321. package/dist/dataContentPane2.esm.js +0 -109
  322. package/dist/dataContentPane2.esm.js.map +0 -1
  323. package/dist/defaultPane2.cjs.js +0 -2
  324. package/dist/defaultPane2.cjs.js.map +0 -1
  325. package/dist/defaultPane2.esm.js +0 -41
  326. package/dist/defaultPane2.esm.js.map +0 -1
  327. package/dist/dev.d.ts +0 -10
  328. package/dist/dev.d.ts.map +0 -1
  329. package/dist/dokieli/dokieliPane.cjs.js +0 -2
  330. package/dist/dokieli/dokieliPane.cjs.js.map +0 -1
  331. package/dist/dokieli/dokieliPane.esm.js +0 -39
  332. package/dist/dokieli/dokieliPane.esm.js.map +0 -1
  333. package/dist/dokieli/new.cjs.js.map +0 -1
  334. package/dist/dokieli/new.esm.js +0 -6
  335. package/dist/dokieli/new.esm.js.map +0 -1
  336. package/dist/form/pane.cjs.js +0 -4
  337. package/dist/form/pane.cjs.js.map +0 -1
  338. package/dist/form/pane.esm.js +0 -122
  339. package/dist/form/pane.esm.js.map +0 -1
  340. package/dist/home/homePane.cjs.js +0 -2
  341. package/dist/home/homePane.cjs.js.map +0 -1
  342. package/dist/home/homePane.esm.js +0 -35
  343. package/dist/home/homePane.esm.js.map +0 -1
  344. package/dist/humanReadablePane2.cjs.js +0 -2
  345. package/dist/humanReadablePane2.cjs.js.map +0 -1
  346. package/dist/humanReadablePane2.esm.js +0 -123
  347. package/dist/humanReadablePane2.esm.js.map +0 -1
  348. package/dist/icons/folder.cjs.js +0 -2
  349. package/dist/icons/folder.cjs.js.map +0 -1
  350. package/dist/icons/folder.esm.js +0 -6
  351. package/dist/icons/folder.esm.js.map +0 -1
  352. package/dist/icons/friends.cjs.js +0 -2
  353. package/dist/icons/friends.cjs.js.map +0 -1
  354. package/dist/icons/friends.esm.js +0 -6
  355. package/dist/icons/friends.esm.js.map +0 -1
  356. package/dist/icons/person.cjs.js +0 -2
  357. package/dist/icons/person.cjs.js.map +0 -1
  358. package/dist/icons/person.esm.js +0 -6
  359. package/dist/icons/person.esm.js.map +0 -1
  360. package/dist/imagePane2.cjs.js +0 -2
  361. package/dist/imagePane2.cjs.js.map +0 -1
  362. package/dist/imagePane2.esm.js +0 -32
  363. package/dist/imagePane2.esm.js.map +0 -1
  364. package/dist/index.cjs.js +0 -2
  365. package/dist/index.cjs.js.map +0 -1
  366. package/dist/index.esm.js +0 -31
  367. package/dist/index.esm.js.map +0 -1
  368. package/dist/internal/internalPane2.cjs.js +0 -2
  369. package/dist/internal/internalPane2.cjs.js.map +0 -1
  370. package/dist/internal/internalPane2.esm.js +0 -104
  371. package/dist/internal/internalPane2.esm.js.map +0 -1
  372. package/dist/mainPage/header.cjs.js +0 -2
  373. package/dist/mainPage/header.cjs.js.map +0 -1
  374. package/dist/mainPage/header.esm.js +0 -72
  375. package/dist/mainPage/header.esm.js.map +0 -1
  376. package/dist/mainPage/index.cjs.js +0 -2
  377. package/dist/mainPage/index.cjs.js.map +0 -1
  378. package/dist/mainPage/index.esm.js +0 -36
  379. package/dist/mainPage/index.esm.js.map +0 -1
  380. package/dist/mainPage/navbar.cjs.js +0 -2
  381. package/dist/mainPage/navbar.cjs.js.map +0 -1
  382. package/dist/mainPage/navbar.d.ts +0 -3
  383. package/dist/mainPage/navbar.d.ts.map +0 -1
  384. package/dist/mainPage/navbar.esm.js +0 -66
  385. package/dist/mainPage/navbar.esm.js.map +0 -1
  386. package/dist/n3Pane2.cjs.js +0 -3
  387. package/dist/n3Pane2.cjs.js.map +0 -1
  388. package/dist/n3Pane2.esm.js +0 -52
  389. package/dist/n3Pane2.esm.js.map +0 -1
  390. package/dist/outline/context.cjs.js +0 -2
  391. package/dist/outline/context.cjs.js.map +0 -1
  392. package/dist/outline/context.esm.js +0 -18
  393. package/dist/outline/context.esm.js.map +0 -1
  394. package/dist/outline/manager2.cjs.js +0 -2
  395. package/dist/outline/manager2.cjs.js.map +0 -1
  396. package/dist/outline/manager2.esm.js +0 -711
  397. package/dist/outline/manager2.esm.js.map +0 -1
  398. package/dist/outline/outlineIcons.cjs.js +0 -2
  399. package/dist/outline/outlineIcons.cjs.js.map +0 -1
  400. package/dist/outline/outlineIcons.esm.js +0 -10
  401. package/dist/outline/outlineIcons.esm.js.map +0 -1
  402. package/dist/outline/propertyViews.cjs.js +0 -2
  403. package/dist/outline/propertyViews.cjs.js.map +0 -1
  404. package/dist/outline/propertyViews.esm.js +0 -19
  405. package/dist/outline/propertyViews.esm.js.map +0 -1
  406. package/dist/outline/queryByExample.cjs.js +0 -2
  407. package/dist/outline/queryByExample.cjs.js.map +0 -1
  408. package/dist/outline/queryByExample.esm.js +0 -26
  409. package/dist/outline/queryByExample.esm.js.map +0 -1
  410. package/dist/outline/sourcePaneIcon.d.ts +0 -2
  411. package/dist/outline/sourcePaneIcon.d.ts.map +0 -1
  412. package/dist/outline/userInput.cjs.js +0 -61
  413. package/dist/outline/userInput.cjs.js.map +0 -1
  414. package/dist/outline/userInput.esm.js +0 -784
  415. package/dist/outline/userInput.esm.js.map +0 -1
  416. package/dist/outline/viewAsImage.cjs.js +0 -2
  417. package/dist/outline/viewAsImage.cjs.js.map +0 -1
  418. package/dist/outline/viewAsImage.esm.js +0 -10
  419. package/dist/outline/viewAsImage.esm.js.map +0 -1
  420. package/dist/outline/viewAsMbox.cjs.js +0 -2
  421. package/dist/outline/viewAsMbox.cjs.js.map +0 -1
  422. package/dist/outline/viewAsMbox.esm.js +0 -9
  423. package/dist/outline/viewAsMbox.esm.js.map +0 -1
  424. package/dist/pad/padPane2.cjs.js +0 -2
  425. package/dist/pad/padPane2.cjs.js.map +0 -1
  426. package/dist/pad/padPane2.esm.js +0 -173
  427. package/dist/pad/padPane2.esm.js.map +0 -1
  428. package/dist/playlist/playlistPane.cjs.js +0 -2
  429. package/dist/playlist/playlistPane.cjs.js.map +0 -1
  430. package/dist/playlist/playlistPane.esm.js +0 -49
  431. package/dist/playlist/playlistPane.esm.js.map +0 -1
  432. package/dist/registerPanes.cjs.js +0 -2
  433. package/dist/registerPanes.cjs.js.map +0 -1
  434. package/dist/registerPanes.esm.js +0 -46
  435. package/dist/registerPanes.esm.js.map +0 -1
  436. package/dist/schedule/formsForSchedule.cjs.js +0 -117
  437. package/dist/schedule/formsForSchedule.cjs.js.map +0 -1
  438. package/dist/schedule/formsForSchedule.esm.js +0 -6
  439. package/dist/schedule/formsForSchedule.esm.js.map +0 -1
  440. package/dist/schedule/schedulePane2.cjs.js +0 -8
  441. package/dist/schedule/schedulePane2.cjs.js.map +0 -1
  442. package/dist/schedule/schedulePane2.esm.js +0 -385
  443. package/dist/schedule/schedulePane2.esm.js.map +0 -1
  444. package/dist/sharing/sharingPane.cjs.js +0 -2
  445. package/dist/sharing/sharingPane.cjs.js.map +0 -1
  446. package/dist/sharing/sharingPane.esm.js +0 -22
  447. package/dist/sharing/sharingPane.esm.js.map +0 -1
  448. package/dist/slideshow/slideshowPane.cjs.js +0 -2
  449. package/dist/slideshow/slideshowPane.cjs.js.map +0 -1
  450. package/dist/slideshow/slideshowPane.esm.js +0 -46
  451. package/dist/slideshow/slideshowPane.esm.js.map +0 -1
  452. package/dist/social/editProfileDetails.cjs.js +0 -2
  453. package/dist/social/editProfileDetails.cjs.js.map +0 -1
  454. package/dist/social/editProfileDetails.esm.js +0 -12
  455. package/dist/social/editProfileDetails.esm.js.map +0 -1
  456. package/dist/social/icons.cjs.js +0 -82
  457. package/dist/social/icons.cjs.js.map +0 -1
  458. package/dist/social/icons.esm.js.map +0 -1
  459. package/dist/social/socialPane2.cjs.js +0 -6
  460. package/dist/social/socialPane2.cjs.js.map +0 -1
  461. package/dist/social/socialPane2.esm.js +0 -326
  462. package/dist/social/socialPane2.esm.js.map +0 -1
  463. package/dist/social/socialSections.cjs.js +0 -2
  464. package/dist/social/socialSections.cjs.js.map +0 -1
  465. package/dist/social/socialSections.esm.js +0 -222
  466. package/dist/social/socialSections.esm.js.map +0 -1
  467. package/dist/social/spinner.cjs.js +0 -1
  468. package/dist/social/spinner.esm.js +0 -1
  469. package/dist/social/triage.cjs.js +0 -2
  470. package/dist/social/triage.cjs.js.map +0 -1
  471. package/dist/social/triage.esm.js +0 -44
  472. package/dist/social/triage.esm.js.map +0 -1
  473. package/dist/tabbed/tabbedPane.cjs.js +0 -2
  474. package/dist/tabbed/tabbedPane.cjs.js.map +0 -1
  475. package/dist/tabbed/tabbedPane.esm.js +0 -38
  476. package/dist/tabbed/tabbedPane.esm.js.map +0 -1
  477. package/dist/tableViewPane.cjs.js +0 -2
  478. package/dist/tableViewPane.cjs.js.map +0 -1
  479. package/dist/tableViewPane.esm.js +0 -20
  480. package/dist/tableViewPane.esm.js.map +0 -1
  481. package/dist/transaction/pane.cjs.js +0 -8
  482. package/dist/transaction/pane.cjs.js.map +0 -1
  483. package/dist/transaction/pane.esm.js +0 -212
  484. package/dist/transaction/pane.esm.js.map +0 -1
  485. package/dist/transaction/period.cjs.js +0 -4
  486. package/dist/transaction/period.cjs.js.map +0 -1
  487. package/dist/transaction/period.esm.js +0 -126
  488. package/dist/transaction/period.esm.js.map +0 -1
  489. package/dist/trip/tripPane.cjs.js +0 -2
  490. package/dist/trip/tripPane.cjs.js.map +0 -1
  491. package/dist/trip/tripPane.esm.js +0 -85
  492. package/dist/trip/tripPane.esm.js.map +0 -1
  493. package/dist/trustedApplications/trustedApplications.dom.cjs.js +0 -2
  494. package/dist/trustedApplications/trustedApplications.dom.cjs.js.map +0 -1
  495. package/dist/trustedApplications/trustedApplications.dom.esm.js +0 -108
  496. package/dist/trustedApplications/trustedApplications.dom.esm.js.map +0 -1
  497. package/dist/trustedApplications/trustedApplications.utils.cjs.js +0 -2
  498. package/dist/trustedApplications/trustedApplications.utils.cjs.js.map +0 -1
  499. package/dist/trustedApplications/trustedApplications.utils.esm.js +0 -20
  500. package/dist/trustedApplications/trustedApplications.utils.esm.js.map +0 -1
  501. package/dist/trustedApplications/trustedApplications.view.cjs.js +0 -2
  502. package/dist/trustedApplications/trustedApplications.view.cjs.js.map +0 -1
  503. package/dist/trustedApplications/trustedApplications.view.esm.js +0 -41
  504. package/dist/trustedApplications/trustedApplications.view.esm.js.map +0 -1
  505. package/dist/ui/pane.cjs.js +0 -4
  506. package/dist/ui/pane.cjs.js.map +0 -1
  507. package/dist/ui/pane.esm.js +0 -56
  508. package/dist/ui/pane.esm.js.map +0 -1
  509. package/dist/utils/paneUtils.cjs.js +0 -2
  510. package/dist/utils/paneUtils.cjs.js.map +0 -1
  511. package/dist/utils/paneUtils.d.ts +0 -19
  512. package/dist/utils/paneUtils.d.ts.map +0 -1
  513. package/dist/utils/paneUtils.esm.js +0 -52
  514. package/dist/utils/paneUtils.esm.js.map +0 -1
  515. package/dist/utils/podUtils.cjs.js +0 -2
  516. package/dist/utils/podUtils.cjs.js.map +0 -1
  517. package/dist/utils/podUtils.d.ts +0 -4
  518. package/dist/utils/podUtils.d.ts.map +0 -1
  519. package/dist/utils/podUtils.esm.js +0 -46
  520. package/dist/utils/podUtils.esm.js.map +0 -1
  521. package/dist/utils/webIdUtils.cjs.js +0 -2
  522. package/dist/utils/webIdUtils.cjs.js.map +0 -1
  523. package/dist/utils/webIdUtils.d.ts +0 -6
  524. package/dist/utils/webIdUtils.d.ts.map +0 -1
  525. package/dist/utils/webIdUtils.esm.js +0 -48
  526. package/dist/utils/webIdUtils.esm.js.map +0 -1
  527. package/dist/versionInfo.cjs.js +0 -2
  528. package/dist/versionInfo.cjs.js.map +0 -1
  529. package/dist/versionInfo.esm.js +0 -40
  530. package/dist/versionInfo.esm.js.map +0 -1
  531. package/dist/video/videoPane.cjs.js +0 -2
  532. package/dist/video/videoPane.cjs.js.map +0 -1
  533. package/dist/video/videoPane.esm.js +0 -25
  534. package/dist/video/videoPane.esm.js.map +0 -1
@@ -0,0 +1,243 @@
1
+ .menu-content {
2
+ display: flex;
3
+ flex-direction: column;
4
+ gap: 0.5rem;
5
+ min-height: 0;
6
+ overflow-y: auto;
7
+ }
8
+
9
+ .app-nav.mobile-hidden .menu-content,
10
+ .app-nav.mobile-visible .menu-content {
11
+ padding-top: 0.75rem;
12
+ }
13
+
14
+ .menu-footer {
15
+ width: 100%;
16
+ padding: 1rem;
17
+ border-top: 1px solid var(--color-border, #d1d1d1);
18
+ font-size: 0.875rem;
19
+ color: var(--color-text-muted, #555);
20
+ line-height: 1.4;
21
+ background: inherit;
22
+ }
23
+
24
+ .app-nav.collapsed .menu-footer {
25
+ display: none;
26
+ text-align: center;
27
+ padding: 0.75rem 0;
28
+ }
29
+
30
+ .menu-item {
31
+ display: flex;
32
+ align-items: center;
33
+ gap: var(--spacing-2xs, 0.625rem);
34
+ border: 0;
35
+ border-radius: var(--border-radius-sm, 0.2rem);
36
+ padding: 0.5rem var(--spacing-xs, 0.75rem);
37
+ background: transparent;
38
+ color: var(--color-text-heading, #000000);
39
+ text-decoration: none;
40
+ width: 100%;
41
+ text-align: left;
42
+ cursor: pointer;
43
+ }
44
+
45
+ .menu-toggle-icon {
46
+ width: 30px;
47
+ height: 30px;
48
+ }
49
+
50
+ .menu-item-icon {
51
+ width: var(--icon-xxs, 1rem);
52
+ height: var(--icon-xxs, 1rem);
53
+ flex: 0 0 var(--icon-xxs, 1rem);
54
+ object-fit: contain;
55
+ }
56
+
57
+ .menu-item-label {
58
+ min-width: 0;
59
+ }
60
+
61
+ .menu-item:hover,
62
+ .menu-item:focus {
63
+ background: var(--color-header-menu-item-hover, #e6dcff);
64
+ }
65
+
66
+ .menu-item-active,
67
+ .menu-item-active:hover,
68
+ .menu-item-active:focus {
69
+ background: var(--color-header-menu-item-selected, #cbb9ff);
70
+ color: var(--color-header-menu-item-text-selected, #7c4cff);
71
+ }
72
+
73
+ .menu-toggle {
74
+ position: fixed;
75
+ top: 0.5rem;
76
+ left: 1rem;
77
+ z-index: 300;
78
+ display: inline-flex;
79
+ align-items: center;
80
+ justify-content: center;
81
+ gap: 0.375rem;
82
+ min-width: var(--icon-md, 2.5rem);
83
+ height: var(--icon-md, 2.5rem);
84
+ padding: 0 0.625rem;
85
+ border: 1px solid var(--color-border);
86
+ background: var(--color-menu-bg, #ffffff);
87
+ color: var(--color-text);
88
+ border-radius: var(--border-radius-sm, 0.2rem);
89
+ margin: 0;
90
+ }
91
+
92
+ .menu-toggle-label {
93
+ font-size: 1.2rem;
94
+ font-weight: 600;
95
+ white-space: nowrap;
96
+ overflow: hidden;
97
+ text-overflow: ellipsis;
98
+ max-width: 10rem;
99
+ }
100
+
101
+ .menu-overlay {
102
+ position: fixed;
103
+ inset: 0;
104
+ background: rgba(0, 0, 0, 0.35);
105
+ z-index: 100;
106
+ }
107
+
108
+ .app-nav {
109
+ position: fixed;
110
+ left: 0;
111
+ top: 0;
112
+ bottom: 0;
113
+ width: min(18rem, 320px);
114
+ display: grid;
115
+ grid-template-rows: 1fr auto;
116
+ overflow: hidden;
117
+ background: var(--color-menu-bg, #ffffff);
118
+ border-right: 1px solid var(--color-border);
119
+ z-index: 10;
120
+ }
121
+
122
+ .app-nav.mobile-hidden,
123
+ .app-nav.mobile-visible {
124
+ position: fixed;
125
+ left: 0;
126
+ top: 0;
127
+ bottom: 0;
128
+ width: min(80vw, 320px);
129
+ height: 100vh;
130
+ min-height: 100vh;
131
+ transform: translateX(-100%);
132
+ transition: transform 0.25s ease-in-out;
133
+ z-index: 999;
134
+ display: flex;
135
+ flex-direction: column;
136
+ background: var(--color-menu-bg, #ffffff);
137
+ border-right: none;
138
+ box-shadow: none;
139
+ overflow: hidden;
140
+ padding-top: 3.75rem;
141
+ }
142
+
143
+ .app-nav.mobile-hidden .menu-content,
144
+ .app-nav.mobile-visible .menu-content {
145
+ flex: 1;
146
+ min-height: 0;
147
+ }
148
+
149
+ .app-nav.mobile-visible {
150
+ transform: translateX(0);
151
+ visibility: visible;
152
+ background: var(--color-menu-bg, #ffffff);
153
+ }
154
+
155
+ .menu-header {
156
+ display: none;
157
+ position: absolute;
158
+ top: 0;
159
+ left: 0;
160
+ right: 0;
161
+ align-items: center;
162
+ justify-content: flex-start;
163
+ background-color: #42345a !important;
164
+ color: #ffffff;
165
+ font-weight: 600;
166
+ min-height: 3.75rem;
167
+ height: 3.75rem;
168
+ box-sizing: border-box;
169
+ width: 100%;
170
+ z-index: 1000;
171
+ border-right: none;
172
+ box-shadow: none;
173
+ }
174
+
175
+ .app-nav.mobile-hidden .menu-header,
176
+ .app-nav.mobile-visible .menu-header {
177
+ display: flex;
178
+ }
179
+
180
+ .menu-header-title {
181
+ font-size: 1.25rem;
182
+ color: #ffffff;
183
+ }
184
+
185
+ .menu-close {
186
+ border: none;
187
+ background: transparent;
188
+ color: #ffffff;
189
+ font-size: 1.25rem;
190
+ cursor: pointer;
191
+ padding-left: 1.25rem;
192
+ line-height: 1;
193
+ }
194
+
195
+ .menu-close:hover,
196
+ .menu-close:focus {
197
+ opacity: 0.85;
198
+ }
199
+
200
+ .app-nav.collapsed {
201
+ width: 4.5rem;
202
+ min-width: 4.5rem;
203
+ }
204
+
205
+ .app-nav.collapsed .menu-content {
206
+ gap: 0.25rem;
207
+ align-items: center;
208
+ }
209
+
210
+ .app-nav.collapsed .menu-item {
211
+ justify-content: center;
212
+ padding-left: 0.5rem;
213
+ padding-right: 0.5rem;
214
+ }
215
+
216
+ .app-nav.collapsed .menu-item-label {
217
+ display: none;
218
+ }
219
+
220
+ .menu-collapse {
221
+ position: fixed;
222
+ left: 3rem;
223
+ bottom: 8rem;
224
+ z-index: 320;
225
+ width: 1.25rem;
226
+ height: 1.25rem;
227
+ display: inline-flex;
228
+ align-items: center;
229
+ justify-content: center;
230
+ border: 1px solid var(--color-border);
231
+ border-radius: 999px;
232
+ color: var(--color-text);
233
+ font-size: 1.3rem;
234
+ line-height: 1;
235
+ cursor: pointer;
236
+ box-shadow: 0 1px 4px rgba(124,77,255,0.12);
237
+ }
238
+
239
+ @media (max-width: 768px) {
240
+ .menu-collapse {
241
+ display: none;
242
+ }
243
+ }
@@ -0,0 +1,7 @@
1
+ import './menu.css';
2
+ import { OutlineManager } from '../outline/manager';
3
+ import { NamedNode } from 'rdflib';
4
+ export declare const setActiveMenuPane: (paneName?: string) => void;
5
+ export declare const refreshMenu: (layout: "mobile" | "desktop") => void;
6
+ export declare const createLeftSideMenu: (subject: NamedNode, outliner: OutlineManager) => Promise<void>;
7
+ //# sourceMappingURL=menu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"menu.d.ts","sourceRoot":"","sources":["../../src/mainPage/menu.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,CAAA;AACnB,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAEnD,OAAO,EAAE,SAAS,EAAO,MAAM,QAAQ,CAAA;AAkQvC,eAAO,MAAM,iBAAiB,GAAI,WAAW,MAAM,KAAG,IAIrD,CAAA;AAqBD,eAAO,MAAM,WAAW,GAAI,QAAQ,QAAQ,GAAG,SAAS,SAmDvD,CAAA;AAED,eAAO,MAAM,kBAAkB,GAAU,SAAS,SAAS,EAAE,UAAU,cAAc,kBA2IpF,CAAA"}
@@ -0,0 +1,436 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.setActiveMenuPane = exports.refreshMenu = exports.createLeftSideMenu = void 0;
7
+ require("./menu.css");
8
+ var _solidLogic = require("solid-logic");
9
+ var _rdflib = require("rdflib");
10
+ var _ownerProfile = require("../profileUtils/ownerProfile");
11
+ var _menu2 = _interopRequireDefault(require("../icons/menu.svg?raw"));
12
+ var _iconHelper = require("../icons/iconHelper");
13
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
14
+ const MENU_ICON = (0, _iconHelper.createUiIcon)(_menu2.default, 'Menu Icon', '#ffffff');
15
+ const MENU_COLLAPSED_KEY = 'solid-panes-menu-collapsed';
16
+ let menuCollapsed = false;
17
+ const loadMenuCollapsedState = () => {
18
+ try {
19
+ return localStorage.getItem(MENU_COLLAPSED_KEY) === 'true';
20
+ } catch (error) {
21
+ return false;
22
+ }
23
+ };
24
+ const saveMenuCollapsedState = collapsed => {
25
+ try {
26
+ localStorage.setItem(MENU_COLLAPSED_KEY, String(collapsed));
27
+ } catch (error) {
28
+ // ignore storage errors
29
+ }
30
+ };
31
+ const updateMenuCollapseButton = () => {
32
+ const collapseBtn = document.getElementById('MenuCollapseBtn');
33
+ if (!collapseBtn) return;
34
+ collapseBtn.textContent = menuCollapsed ? '\u203A' : '\u2039';
35
+ collapseBtn.setAttribute('aria-label', menuCollapsed ? 'Expand navigation menu' : 'Collapse navigation menu');
36
+ };
37
+ const updateCollapseButtonPosition = (navMenu, collapseBtn) => {
38
+ if (!navMenu || !collapseBtn) return;
39
+ const navRect = navMenu.getBoundingClientRect();
40
+ const rootFontSize = parseFloat(getComputedStyle(document.documentElement).fontSize) || 16;
41
+ const buttonWidth = parseFloat(getComputedStyle(collapseBtn).width) || 1.25 * rootFontSize;
42
+ const offsetRem = (navRect.width - buttonWidth / 2) / rootFontSize;
43
+ collapseBtn.style.setProperty('left', `${offsetRem.toFixed(3)}rem`, 'important');
44
+ };
45
+ const applyMenuCollapsedState = navMenu => {
46
+ if (!navMenu) return;
47
+ navMenu.classList.toggle('collapsed', menuCollapsed);
48
+ updateMenuCollapseButton();
49
+ const collapseBtn = document.getElementById('MenuCollapseBtn');
50
+ updateCollapseButtonPosition(navMenu, collapseBtn);
51
+ };
52
+ const isLoggedIn = () => Boolean(_solidLogic.authSession?.info?.isLoggedIn);
53
+ const setFooterVisibility = loggedIn => {
54
+ const footer = document.querySelector('solid-ui-footer');
55
+ if (!footer) return;
56
+ footer.style.display = loggedIn ? 'none' : '';
57
+ };
58
+ const isViewingOwnProfile = subject => {
59
+ const currentUser = _solidLogic.authn.currentUser();
60
+ return Boolean(currentUser && subject && currentUser.sameTerm(subject));
61
+ };
62
+ const ensureMenuSkeleton = () => {
63
+ menuCollapsed = loadMenuCollapsedState();
64
+ const root = document.querySelector('[role="main"]') || document.body;
65
+ let navMenu = document.getElementById('NavMenu');
66
+ if (!navMenu) {
67
+ navMenu = document.createElement('nav');
68
+ navMenu.id = 'NavMenu';
69
+ navMenu.className = 'app-nav';
70
+ navMenu.setAttribute('aria-label', 'App navigation');
71
+ navMenu.hidden = true;
72
+ const headerEl = document.createElement('div');
73
+ headerEl.className = 'menu-header';
74
+ const closeBtn = document.createElement('button');
75
+ closeBtn.id = 'MenuCloseBtn';
76
+ closeBtn.className = 'menu-close';
77
+ closeBtn.type = 'button';
78
+ closeBtn.setAttribute('aria-label', 'Close menu');
79
+ closeBtn.textContent = '✕';
80
+ headerEl.appendChild(closeBtn);
81
+ const title = document.createElement('span');
82
+ title.className = 'menu-header-title';
83
+ title.textContent = 'Menu';
84
+ headerEl.appendChild(title);
85
+ navMenu.appendChild(headerEl);
86
+ const authStateEl = document.createElement('div');
87
+ authStateEl.id = 'AuthState';
88
+ authStateEl.className = 'menu-auth-state';
89
+ navMenu.appendChild(authStateEl);
90
+ const contentEl = document.createElement('div');
91
+ contentEl.id = 'NavMenuContent';
92
+ contentEl.className = 'menu-content';
93
+ navMenu.appendChild(contentEl);
94
+ root.insertBefore(navMenu, root.firstChild);
95
+ } else if (!navMenu.querySelector('.menu-header')) {
96
+ const headerEl = document.createElement('div');
97
+ headerEl.className = 'menu-header';
98
+ const closeBtn = document.createElement('button');
99
+ closeBtn.id = 'MenuCloseBtn';
100
+ closeBtn.className = 'menu-close';
101
+ closeBtn.type = 'button';
102
+ closeBtn.setAttribute('aria-label', 'Close menu');
103
+ closeBtn.textContent = '✕';
104
+ headerEl.appendChild(closeBtn);
105
+ const title = document.createElement('span');
106
+ title.className = 'menu-header-title';
107
+ title.textContent = 'Menu';
108
+ headerEl.appendChild(title);
109
+ navMenu.insertBefore(headerEl, navMenu.firstChild);
110
+ }
111
+ let toggle = document.getElementById('MenuToggleBtn');
112
+ if (!toggle) {
113
+ toggle = document.createElement('button');
114
+ toggle.id = 'MenuToggleBtn';
115
+ toggle.className = 'menu-toggle';
116
+ toggle.type = 'button';
117
+ toggle.setAttribute('aria-label', 'Toggle navigation menu');
118
+ toggle.hidden = true;
119
+ const toggleImg = document.createElement('img');
120
+ toggleImg.src = MENU_ICON;
121
+ toggleImg.alt = '';
122
+ toggleImg.className = 'menu-toggle-icon';
123
+ toggleImg.setAttribute('aria-hidden', 'true');
124
+ toggle.appendChild(toggleImg);
125
+ const toggleLabel = document.createElement('span');
126
+ toggleLabel.id = 'MenuToggleLabel';
127
+ toggleLabel.className = 'menu-toggle-label';
128
+ toggle.appendChild(toggleLabel);
129
+ root.insertBefore(toggle, root.firstChild);
130
+ }
131
+ let overlay = document.getElementById('MenuOverlay');
132
+ if (!overlay) {
133
+ overlay = document.createElement('div');
134
+ overlay.id = 'MenuOverlay';
135
+ overlay.className = 'menu-overlay';
136
+ overlay.hidden = true;
137
+ document.body.appendChild(overlay);
138
+ }
139
+ let collapseBtn = document.getElementById('MenuCollapseBtn');
140
+ if (!collapseBtn) {
141
+ collapseBtn = document.createElement('button');
142
+ collapseBtn.id = 'MenuCollapseBtn';
143
+ collapseBtn.className = 'menu-collapse';
144
+ collapseBtn.type = 'button';
145
+ collapseBtn.setAttribute('aria-label', 'Collapse navigation menu');
146
+ collapseBtn.textContent = '\u2039';
147
+ collapseBtn.hidden = true;
148
+ document.body.appendChild(collapseBtn);
149
+ }
150
+ };
151
+ const getMenuItems = async (subject, outliner) => {
152
+ try {
153
+ const items = await outliner.getDashboardItems(subject);
154
+ return items.map(element => {
155
+ const targetSubject = element.subject || _solidLogic.authn.currentUser() || subject;
156
+ return {
157
+ icon: element.icon,
158
+ subject: targetSubject,
159
+ paneName: element.tabName || element.paneName,
160
+ label: element.label,
161
+ onclick: () => openDashboardPane(targetSubject, outliner, element.tabName || element.paneName)
162
+ };
163
+ });
164
+ } catch (error) {
165
+ console.error('Unable to load navigation menu items', error);
166
+ return [];
167
+ }
168
+ };
169
+ const createMenuButton = item => {
170
+ const button = document.createElement('button');
171
+ button.className = 'menu-item';
172
+ button.type = 'button';
173
+ if (item.paneName) {
174
+ button.dataset.paneName = item.paneName;
175
+ }
176
+ if (item.icon) {
177
+ const icon = document.createElement('img');
178
+ icon.className = 'menu-item-icon';
179
+ icon.src = item.icon;
180
+ icon.alt = '';
181
+ icon.setAttribute('aria-hidden', 'true');
182
+ button.appendChild(icon);
183
+ }
184
+ const label = document.createElement('span');
185
+ label.className = 'menu-item-label';
186
+ label.textContent = item.label;
187
+ button.appendChild(label);
188
+ if (item.id) {
189
+ button.id = item.id;
190
+ }
191
+ button.addEventListener('click', async () => {
192
+ await item.onclick();
193
+ });
194
+ return button;
195
+ };
196
+ const setActiveMenuItem = (container, paneName) => {
197
+ const menuItems = Array.from(container.querySelectorAll('.menu-item'));
198
+ let activeItem;
199
+ menuItems.forEach(item => {
200
+ const isActive = Boolean(paneName) && item.dataset.paneName === paneName;
201
+ item.classList.toggle('menu-item-active', isActive);
202
+ if (isActive) {
203
+ item.setAttribute('aria-current', 'page');
204
+ activeItem = item;
205
+ } else {
206
+ item.removeAttribute('aria-current');
207
+ }
208
+ });
209
+ if (paneName) {
210
+ if (!activeItem && menuItems[0]) {
211
+ // If an explicit pane name is provided but does not match any menu
212
+ // item, fall back to clearing selection rather than selecting the first item.
213
+ container.dataset.activePaneName = '';
214
+ } else {
215
+ container.dataset.activePaneName = paneName;
216
+ }
217
+ } else {
218
+ // If there is no active pane, do not auto-select the first menu item.
219
+ container.dataset.activePaneName = '';
220
+ }
221
+ updateToggleLabel(activeItem);
222
+ };
223
+ const setActiveMenuPane = paneName => {
224
+ const navMenuContent = document.getElementById('NavMenuContent');
225
+ if (!navMenuContent) return;
226
+ setActiveMenuItem(navMenuContent, paneName);
227
+ };
228
+ exports.setActiveMenuPane = setActiveMenuPane;
229
+ const updateToggleLabel = activeItem => {
230
+ const toggleLabel = document.getElementById('MenuToggleLabel');
231
+ if (!toggleLabel) return;
232
+ toggleLabel.textContent = activeItem?.querySelector('.menu-item-label')?.textContent || '';
233
+ };
234
+ const renderMenuItems = async (subject, outliner, container) => {
235
+ const menuItems = await getMenuItems(subject, outliner);
236
+ container.replaceChildren(...menuItems.map(createMenuButton));
237
+ // If the user is logged in and viewing their own profile, select "Your profile"
238
+ // by default. This also surfaces "Your profile" at the top of the mobile view
239
+ // via the menu toggle label, which mirrors the active menu item.
240
+ const activePane = isViewingOwnProfile(subject) ? 'profile' : container.dataset.activePaneName;
241
+ setActiveMenuItem(container, activePane);
242
+ };
243
+ const refreshMenu = layout => {
244
+ const navMenu = document.getElementById('NavMenu');
245
+ const toggle = document.getElementById('MenuToggleBtn');
246
+ const collapseBtn = document.getElementById('MenuCollapseBtn');
247
+ const overlay = document.getElementById('MenuOverlay');
248
+ if (!navMenu || !toggle || !overlay || !collapseBtn) return;
249
+ const loggedIn = isLoggedIn();
250
+ if (!loggedIn) {
251
+ navMenu.hidden = true;
252
+ navMenu.style.display = 'none';
253
+ toggle.hidden = true;
254
+ toggle.style.display = 'none';
255
+ collapseBtn.hidden = true;
256
+ collapseBtn.style.display = 'none';
257
+ overlay.hidden = true;
258
+ overlay.style.display = 'none';
259
+ setFooterVisibility(false);
260
+ return;
261
+ }
262
+ setFooterVisibility(true);
263
+ if (layout === 'mobile') {
264
+ navMenu.classList.add('mobile-hidden');
265
+ navMenu.classList.remove('mobile-visible');
266
+ toggle.hidden = false;
267
+ toggle.style.display = '';
268
+ collapseBtn.hidden = true;
269
+ collapseBtn.style.display = 'none';
270
+ overlay.hidden = true;
271
+ overlay.style.display = 'none';
272
+ navMenu.hidden = false;
273
+ navMenu.style.display = '';
274
+ navMenu.classList.remove('collapsed');
275
+ toggle.setAttribute('aria-expanded', 'false');
276
+ } else {
277
+ navMenu.classList.remove('mobile-hidden', 'mobile-visible');
278
+ toggle.hidden = true;
279
+ toggle.style.display = 'none';
280
+ collapseBtn.hidden = false;
281
+ collapseBtn.style.display = '';
282
+ overlay.hidden = true;
283
+ overlay.style.display = 'none';
284
+ navMenu.hidden = false;
285
+ navMenu.style.display = '';
286
+ applyMenuCollapsedState(navMenu);
287
+ updateCollapseButtonPosition(navMenu, collapseBtn);
288
+ toggle.setAttribute('aria-expanded', 'false');
289
+ }
290
+ };
291
+ exports.refreshMenu = refreshMenu;
292
+ const createLeftSideMenu = async (subject, outliner) => {
293
+ ensureMenuSkeleton();
294
+ const navMenu = document.getElementById('NavMenu');
295
+ const menuToggle = document.getElementById('MenuToggleBtn');
296
+ const menuOverlay = document.getElementById('MenuOverlay');
297
+ const navMenuContent = document.getElementById('NavMenuContent');
298
+ const closeMobileMenu = () => {
299
+ if (!navMenu || !menuToggle || !menuOverlay) return;
300
+ navMenu.classList.remove('mobile-visible');
301
+ navMenu.classList.add('mobile-hidden');
302
+ navMenu.style.display = '';
303
+ menuToggle.setAttribute('aria-expanded', 'false');
304
+ menuOverlay.hidden = true;
305
+ menuOverlay.style.display = 'none';
306
+ };
307
+ const openMobileMenu = () => {
308
+ if (!navMenu || !menuToggle || !menuOverlay) return;
309
+ navMenu.classList.remove('mobile-hidden');
310
+ navMenu.classList.add('mobile-visible');
311
+ navMenu.style.display = '';
312
+ menuToggle.setAttribute('aria-expanded', 'true');
313
+ menuOverlay.hidden = false;
314
+ menuOverlay.style.display = '';
315
+ };
316
+ const collapseBtn = document.getElementById('MenuCollapseBtn');
317
+ const expandDesktopMenu = () => {
318
+ if (!navMenu || !collapseBtn) return;
319
+ if (!menuCollapsed) return;
320
+ menuCollapsed = false;
321
+ saveMenuCollapsedState(menuCollapsed);
322
+ applyMenuCollapsedState(navMenu);
323
+ };
324
+ if (navMenu) {
325
+ navMenu.addEventListener('click', event => {
326
+ const isMobile = outliner.context?.environment?.layout === 'mobile';
327
+ const clickedCollapseButton = event.target.closest('#MenuCollapseBtn');
328
+ if (!isMobile && menuCollapsed && !clickedCollapseButton) {
329
+ expandDesktopMenu();
330
+ }
331
+ });
332
+ }
333
+ if (menuToggle) {
334
+ menuToggle.addEventListener('click', () => {
335
+ if (navMenu?.classList.contains('mobile-visible')) {
336
+ closeMobileMenu();
337
+ } else {
338
+ openMobileMenu();
339
+ }
340
+ });
341
+ }
342
+ if (collapseBtn) {
343
+ collapseBtn.addEventListener('click', () => {
344
+ menuCollapsed = !menuCollapsed;
345
+ saveMenuCollapsedState(menuCollapsed);
346
+ applyMenuCollapsedState(navMenu);
347
+ });
348
+ }
349
+ const updateMenuVisibility = () => {
350
+ const loggedIn = isLoggedIn();
351
+ if (navMenu) {
352
+ navMenu.hidden = !loggedIn;
353
+ navMenu.style.display = loggedIn ? '' : 'none';
354
+ }
355
+ if (menuToggle) {
356
+ menuToggle.hidden = !loggedIn;
357
+ menuToggle.style.display = loggedIn ? '' : 'none';
358
+ }
359
+ if (collapseBtn) {
360
+ collapseBtn.hidden = !loggedIn;
361
+ collapseBtn.style.display = loggedIn ? '' : 'none';
362
+ }
363
+ if (menuOverlay) {
364
+ menuOverlay.hidden = !loggedIn;
365
+ menuOverlay.style.display = loggedIn ? '' : 'none';
366
+ }
367
+ setFooterVisibility(loggedIn);
368
+ };
369
+ updateMenuVisibility();
370
+ if (menuOverlay) {
371
+ menuOverlay.addEventListener('click', closeMobileMenu);
372
+ }
373
+ const closeBtn = document.getElementById('MenuCloseBtn');
374
+ if (closeBtn) {
375
+ closeBtn.addEventListener('click', closeMobileMenu);
376
+ }
377
+ if (navMenuContent) {
378
+ updateMenuVisibility();
379
+ const loggedIn = isLoggedIn();
380
+ if (loggedIn) {
381
+ await renderMenuItems(subject, outliner, navMenuContent);
382
+ }
383
+ if (!navMenuContent.dataset.authEventsBound) {
384
+ const refreshMenuItems = async () => {
385
+ await renderMenuItems(subject, outliner, navMenuContent);
386
+ };
387
+ _solidLogic.authSession.events.on('login', () => {
388
+ updateMenuVisibility();
389
+ refreshMenu(outliner.context?.environment?.layout === 'mobile' ? 'mobile' : 'desktop');
390
+ refreshMenuItems();
391
+ });
392
+ _solidLogic.authSession.events.on('logout', () => {
393
+ updateMenuVisibility();
394
+ refreshMenu(outliner.context?.environment?.layout === 'mobile' ? 'mobile' : 'desktop');
395
+ refreshMenuItems();
396
+ });
397
+ _solidLogic.authSession.events.on('sessionRestore', () => {
398
+ updateMenuVisibility();
399
+ refreshMenu(outliner.context?.environment?.layout === 'mobile' ? 'mobile' : 'desktop');
400
+ refreshMenuItems();
401
+ });
402
+ navMenuContent.dataset.authEventsBound = 'true';
403
+ }
404
+ navMenuContent.addEventListener('click', event => {
405
+ const item = event.target.closest('.menu-item');
406
+ if (item instanceof HTMLButtonElement) {
407
+ setActiveMenuItem(navMenuContent, item.dataset.paneName);
408
+ }
409
+ const isMobile = outliner.context?.environment?.layout === 'mobile';
410
+ if (item && isMobile) {
411
+ closeMobileMenu();
412
+ }
413
+ });
414
+ }
415
+ refreshMenu(outliner.context?.environment?.layout === 'mobile' ? 'mobile' : 'desktop');
416
+ };
417
+ exports.createLeftSideMenu = createLeftSideMenu;
418
+ async function openDashboardPane(subject, outliner, pane) {
419
+ const me = _solidLogic.authn.currentUser();
420
+ if (!subject) {
421
+ if (me) {
422
+ subject = me;
423
+ } else {
424
+ const store = outliner?.context?.store || outliner?.context?.session?.store || outliner?.kb;
425
+ const fetcher = outliner?.context?.fetcher || store?.fetcher;
426
+ if (!store || !fetcher) {
427
+ throw new Error('Unable to load profile: missing RDF store or fetcher');
428
+ }
429
+ const fallbackUri = (0, _rdflib.sym)(window.location.href);
430
+ subject = await (0, _ownerProfile.loadProfileFromURI)(subject || fallbackUri, store, fetcher);
431
+ }
432
+ }
433
+ outliner.showDashboard(subject, {
434
+ pane
435
+ });
436
+ }