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.
- package/README.md +40 -10
- package/dist/0314353e28ce6e5539af.svg +9 -0
- package/dist/04567ff683933c35c465.png +0 -0
- package/dist/10163fd9b5a0e00d63a0.png +0 -0
- package/dist/1234dcb2eec2e45f252b.png +0 -0
- package/dist/20899934157df4db56cb.png +0 -0
- package/dist/33760bf79f097f449da5.png +0 -0
- package/dist/4cceba29ab33b1ddd9bb.svg +6 -0
- package/dist/578d2b6ed32e7624164e.png +0 -0
- package/dist/5f62a5b2b7e99b9640c7.png +0 -0
- package/dist/6525766ecd288ec60129.png +0 -0
- package/dist/7800be6f6c4b5b0f4f20.png +0 -0
- package/dist/7b7538c6f6b317968009.svg +9 -0
- package/dist/92d03142abe6efc0b42d.svg +6 -0
- package/dist/976473cf5fe24d657d4b.png +0 -0
- package/dist/RDFXMLPane.css +70 -0
- package/dist/RDFXMLPane.d.ts +3 -2
- package/dist/RDFXMLPane.js +100 -0
- package/dist/argument/argumentPane.js +60 -0
- package/dist/attach/attachPane.js +393 -0
- package/dist/audio/audioPane.js +181 -0
- package/dist/bda84f59e7216675a208.png +0 -0
- package/dist/cd68e8f3990ba8b2139e.png +0 -0
- package/dist/classInstancePane.js +91 -0
- package/dist/dashboard/basicPreferences.d.ts +1 -1
- package/dist/dashboard/basicPreferences.js +147 -0
- package/dist/dashboard/dashboardPane.d.ts +1 -1
- package/dist/dashboard/dashboardPane.js +73 -0
- package/dist/dashboard/homepage.d.ts +1 -1
- package/dist/dashboard/homepage.js +42 -0
- package/dist/dataContentPane.css +271 -0
- package/dist/dataContentPane.d.ts +3 -2
- package/dist/dataContentPane.js +226 -0
- package/dist/defaultPane.css +97 -0
- package/dist/defaultPane.d.ts +3 -2
- package/dist/defaultPane.js +81 -0
- package/dist/dokieli/dokieliPane.js +74 -0
- package/dist/dokieli/{new.cjs.js → new.js} +10 -4
- package/dist/e7074a7e2cb69e51cfd3.png +0 -0
- package/dist/f3772696fb7ee53c23d8.png +0 -0
- package/dist/form/formPane.css +120 -0
- package/dist/form/pane.d.ts +2 -1
- package/dist/form/pane.js +250 -0
- package/dist/home/homePane.d.ts +1 -1
- package/dist/home/homePane.js +74 -0
- package/dist/humanReadablePane.css +129 -0
- package/dist/humanReadablePane.d.ts +3 -2
- package/dist/humanReadablePane.js +243 -0
- package/dist/icons/clock.svg +7 -0
- package/dist/icons/comment.svg +6 -0
- package/dist/icons/dashboard.svg +9 -0
- package/dist/icons/downArrow.svg +6 -0
- package/dist/icons/folder.svg +6 -0
- package/dist/icons/friends.svg +9 -0
- package/dist/icons/help.svg +8 -0
- package/dist/icons/iconHelper.js +23 -0
- package/dist/icons/menu.svg +8 -0
- package/dist/icons/person.svg +6 -0
- package/dist/icons/personInCircle.svg +8 -0
- package/dist/icons/sharing.svg +10 -0
- package/dist/icons/signOut.svg +8 -0
- package/dist/icons/signUp.svg +9 -0
- package/dist/icons/star.svg +3 -0
- package/dist/imagePane.css +4 -0
- package/dist/imagePane.d.ts +3 -2
- package/dist/imagePane.js +67 -0
- package/dist/index.d.ts +4 -4
- package/dist/index.js +123 -0
- package/dist/internal/internalPane.css +14 -0
- package/dist/internal/internalPane.d.ts +2 -1
- package/dist/internal/internalPane.js +183 -0
- package/dist/mainPage/footer.d.ts +15 -0
- package/dist/mainPage/footer.d.ts.map +1 -0
- package/dist/mainPage/footer.js +29 -0
- package/dist/mainPage/header.d.ts +15 -1
- package/dist/mainPage/header.d.ts.map +1 -1
- package/dist/mainPage/header.js +203 -0
- package/dist/mainPage/index.d.ts +15 -3
- package/dist/mainPage/index.d.ts.map +1 -1
- package/dist/mainPage/index.js +78 -0
- package/dist/mainPage/menu.css +243 -0
- package/dist/mainPage/menu.d.ts +7 -0
- package/dist/mainPage/menu.d.ts.map +1 -0
- package/dist/mainPage/menu.js +436 -0
- package/dist/microblogPane/mbStyle.css +267 -0
- package/dist/microblogPane/microblogPane.js +1031 -0
- package/dist/n3Pane.css +49 -0
- package/dist/n3Pane.d.ts +3 -2
- package/dist/n3Pane.js +88 -0
- package/dist/outline/context.d.ts +3 -3
- package/dist/outline/context.js +21 -0
- package/dist/outline/manager.css +78 -0
- package/dist/outline/manager.js +2115 -0
- package/dist/outline/outlineIcons.js +126 -0
- package/dist/outline/propertyViews.js +43 -0
- package/dist/outline/queryByExample.js +285 -0
- package/dist/outline/userInput.js +1821 -0
- package/dist/outline/viewAsImage.js +14 -0
- package/dist/outline/viewAsMbox.js +21 -0
- package/dist/pad/padPane.css +40 -0
- package/dist/pad/padPane.d.ts +2 -1
- package/dist/pad/padPane.js +421 -0
- package/dist/playlist/playlistPane.js +119 -0
- package/dist/profileUtils/ownerProfile.d.ts +5 -0
- package/dist/profileUtils/ownerProfile.d.ts.map +1 -0
- package/dist/profileUtils/ownerProfile.js +84 -0
- package/dist/registerPanes.js +145 -0
- package/dist/schedule/schedulePane.css +294 -0
- package/dist/schedule/schedulePane.d.ts +4 -2
- package/dist/schedule/schedulePane.js +1022 -0
- package/dist/sharing/sharingPane.js +48 -0
- package/dist/slideshow/slideshowPane.js +79 -0
- package/dist/social/editProfileDetails.d.ts +2 -1
- package/dist/social/editProfileDetails.js +362 -0
- package/dist/social/{icons.esm.js → icons.js} +18 -12
- package/dist/social/socialPane.css +1464 -0
- package/dist/social/socialPane.d.ts +3 -2
- package/dist/social/socialPane.js +651 -0
- package/dist/social/socialSections.d.ts +2 -2
- package/dist/social/socialSections.js +393 -0
- package/dist/social/spinner.js +13 -0
- package/dist/social/triage.d.ts +2 -2
- package/dist/social/triage.js +79 -0
- package/dist/solid-panes.js +84629 -0
- package/dist/solid-panes.js.map +1 -0
- package/dist/solid-panes.min.js +3933 -0
- package/dist/solid-panes.min.js.map +1 -0
- package/dist/styles/tabbedtab.css +1066 -0
- package/dist/styles/utilities.css +5 -0
- package/dist/tabbed/tabbedPane.d.ts +1 -1
- package/dist/tabbed/tabbedPane.js +59 -0
- package/dist/tableViewPane.js +56 -0
- package/dist/transaction/pane.js +477 -0
- package/dist/transaction/period.js +323 -0
- package/dist/trip/tripPane.js +174 -0
- package/dist/trustedApplications/trustedApplications.dom.d.ts +1 -1
- package/dist/trustedApplications/trustedApplications.dom.js +145 -0
- package/dist/trustedApplications/trustedApplications.utils.d.ts +1 -1
- package/dist/trustedApplications/trustedApplications.utils.js +23 -0
- package/dist/trustedApplications/trustedApplications.view.d.ts +1 -1
- package/dist/trustedApplications/trustedApplications.view.js +55 -0
- package/dist/ui/pane.js +146 -0
- package/dist/versionInfo.js +41 -0
- package/dist/video/videoPane.js +42 -0
- package/package.json +66 -51
- package/dist/RDFXMLPane2.cjs.js +0 -3
- package/dist/RDFXMLPane2.cjs.js.map +0 -1
- package/dist/RDFXMLPane2.esm.js +0 -55
- package/dist/RDFXMLPane2.esm.js.map +0 -1
- package/dist/_virtual/_rolldown/runtime.cjs.js +0 -1
- package/dist/_virtual/~icons/lucide/arrow-left.cjs.js +0 -2
- package/dist/_virtual/~icons/lucide/arrow-left.cjs.js.map +0 -1
- package/dist/_virtual/~icons/lucide/arrow-left.esm.js +0 -11
- package/dist/_virtual/~icons/lucide/arrow-left.esm.js.map +0 -1
- package/dist/_virtual/~icons/lucide/ellipsis-vertical.cjs.js +0 -2
- package/dist/_virtual/~icons/lucide/ellipsis-vertical.cjs.js.map +0 -1
- package/dist/_virtual/~icons/lucide/ellipsis-vertical.esm.js +0 -11
- package/dist/_virtual/~icons/lucide/ellipsis-vertical.esm.js.map +0 -1
- package/dist/_virtual/~icons/lucide/folder-open.cjs.js +0 -2
- package/dist/_virtual/~icons/lucide/folder-open.cjs.js.map +0 -1
- package/dist/_virtual/~icons/lucide/folder-open.esm.js +0 -11
- package/dist/_virtual/~icons/lucide/folder-open.esm.js.map +0 -1
- package/dist/_virtual/~icons/lucide/globe.cjs.js +0 -2
- package/dist/_virtual/~icons/lucide/globe.cjs.js.map +0 -1
- package/dist/_virtual/~icons/lucide/globe.esm.js +0 -11
- package/dist/_virtual/~icons/lucide/globe.esm.js.map +0 -1
- package/dist/_virtual/~icons/lucide/help-circle.cjs.js +0 -2
- package/dist/_virtual/~icons/lucide/help-circle.cjs.js.map +0 -1
- package/dist/_virtual/~icons/lucide/help-circle.esm.js +0 -11
- package/dist/_virtual/~icons/lucide/help-circle.esm.js.map +0 -1
- package/dist/_virtual/~icons/lucide/layout-dashboard.cjs.js +0 -2
- package/dist/_virtual/~icons/lucide/layout-dashboard.cjs.js.map +0 -1
- package/dist/_virtual/~icons/lucide/layout-dashboard.esm.js +0 -11
- package/dist/_virtual/~icons/lucide/layout-dashboard.esm.js.map +0 -1
- package/dist/_virtual/~icons/lucide/lock-keyhole.cjs.js +0 -2
- package/dist/_virtual/~icons/lucide/lock-keyhole.cjs.js.map +0 -1
- package/dist/_virtual/~icons/lucide/lock-keyhole.esm.js +0 -11
- package/dist/_virtual/~icons/lucide/lock-keyhole.esm.js.map +0 -1
- package/dist/_virtual/~icons/lucide/pencil.cjs.js +0 -2
- package/dist/_virtual/~icons/lucide/pencil.cjs.js.map +0 -1
- package/dist/_virtual/~icons/lucide/pencil.esm.js +0 -11
- package/dist/_virtual/~icons/lucide/pencil.esm.js.map +0 -1
- package/dist/_virtual/~icons/lucide/settings-2.cjs.js +0 -2
- package/dist/_virtual/~icons/lucide/settings-2.cjs.js.map +0 -1
- package/dist/_virtual/~icons/lucide/settings-2.esm.js +0 -11
- package/dist/_virtual/~icons/lucide/settings-2.esm.js.map +0 -1
- package/dist/_virtual/~icons/lucide/share-2.cjs.js +0 -2
- package/dist/_virtual/~icons/lucide/share-2.cjs.js.map +0 -1
- package/dist/_virtual/~icons/lucide/share-2.esm.js +0 -11
- package/dist/_virtual/~icons/lucide/share-2.esm.js.map +0 -1
- package/dist/_virtual/~icons/lucide/trash-2.cjs.js +0 -2
- package/dist/_virtual/~icons/lucide/trash-2.cjs.js.map +0 -1
- package/dist/_virtual/~icons/lucide/trash-2.esm.js +0 -11
- package/dist/_virtual/~icons/lucide/trash-2.esm.js.map +0 -1
- package/dist/_virtual/~icons/lucide/user.cjs.js +0 -2
- package/dist/_virtual/~icons/lucide/user.cjs.js.map +0 -1
- package/dist/_virtual/~icons/lucide/user.esm.js +0 -11
- package/dist/_virtual/~icons/lucide/user.esm.js.map +0 -1
- package/dist/_virtual/~icons/lucide/users.cjs.js +0 -2
- package/dist/_virtual/~icons/lucide/users.cjs.js.map +0 -1
- package/dist/_virtual/~icons/lucide/users.esm.js +0 -11
- package/dist/_virtual/~icons/lucide/users.esm.js.map +0 -1
- package/dist/audio/audioPane.cjs.js +0 -2
- package/dist/audio/audioPane.cjs.js.map +0 -1
- package/dist/audio/audioPane.esm.js +0 -99
- package/dist/audio/audioPane.esm.js.map +0 -1
- package/dist/classInstancePane.cjs.js +0 -2
- package/dist/classInstancePane.cjs.js.map +0 -1
- package/dist/classInstancePane.esm.js +0 -50
- package/dist/classInstancePane.esm.js.map +0 -1
- package/dist/components/file-explorer-header/FileExplorerHeader.cjs.js +0 -14
- package/dist/components/file-explorer-header/FileExplorerHeader.cjs.js.map +0 -1
- package/dist/components/file-explorer-header/FileExplorerHeader.d.ts +0 -19
- package/dist/components/file-explorer-header/FileExplorerHeader.d.ts.map +0 -1
- package/dist/components/file-explorer-header/FileExplorerHeader.esm.js +0 -292
- package/dist/components/file-explorer-header/FileExplorerHeader.esm.js.map +0 -1
- package/dist/components/file-explorer-header/FileExplorerHeader.styles.cjs.js +0 -2
- package/dist/components/file-explorer-header/FileExplorerHeader.styles.cjs.js.map +0 -1
- package/dist/components/file-explorer-header/FileExplorerHeader.styles.esm.js +0 -7
- package/dist/components/file-explorer-header/FileExplorerHeader.styles.esm.js.map +0 -1
- package/dist/components/file-explorer-header/FileExplorerHeaderControls.cjs.js +0 -22
- package/dist/components/file-explorer-header/FileExplorerHeaderControls.cjs.js.map +0 -1
- package/dist/components/file-explorer-header/FileExplorerHeaderControls.d.ts +0 -15
- package/dist/components/file-explorer-header/FileExplorerHeaderControls.d.ts.map +0 -1
- package/dist/components/file-explorer-header/FileExplorerHeaderControls.esm.js +0 -266
- package/dist/components/file-explorer-header/FileExplorerHeaderControls.esm.js.map +0 -1
- package/dist/components/file-explorer-header/FileExplorerHeaderControls.styles.cjs.js +0 -2
- package/dist/components/file-explorer-header/FileExplorerHeaderControls.styles.cjs.js.map +0 -1
- package/dist/components/file-explorer-header/FileExplorerHeaderControls.styles.esm.js +0 -7
- package/dist/components/file-explorer-header/FileExplorerHeaderControls.styles.esm.js.map +0 -1
- package/dist/components/file-explorer-header/FileExplorerHeaderSummary.cjs.js +0 -19
- package/dist/components/file-explorer-header/FileExplorerHeaderSummary.cjs.js.map +0 -1
- package/dist/components/file-explorer-header/FileExplorerHeaderSummary.d.ts +0 -19
- package/dist/components/file-explorer-header/FileExplorerHeaderSummary.d.ts.map +0 -1
- package/dist/components/file-explorer-header/FileExplorerHeaderSummary.esm.js +0 -321
- package/dist/components/file-explorer-header/FileExplorerHeaderSummary.esm.js.map +0 -1
- package/dist/components/file-explorer-header/FileExplorerHeaderSummary.styles.cjs.js +0 -2
- package/dist/components/file-explorer-header/FileExplorerHeaderSummary.styles.cjs.js.map +0 -1
- package/dist/components/file-explorer-header/FileExplorerHeaderSummary.styles.esm.js +0 -7
- package/dist/components/file-explorer-header/FileExplorerHeaderSummary.styles.esm.js.map +0 -1
- package/dist/components/file-explorer-header/FileExplorerProvider.cjs.js +0 -13
- package/dist/components/file-explorer-header/FileExplorerProvider.cjs.js.map +0 -1
- package/dist/components/file-explorer-header/FileExplorerProvider.d.ts +0 -36
- package/dist/components/file-explorer-header/FileExplorerProvider.d.ts.map +0 -1
- package/dist/components/file-explorer-header/FileExplorerProvider.esm.js +0 -468
- package/dist/components/file-explorer-header/FileExplorerProvider.esm.js.map +0 -1
- package/dist/components/file-explorer-header/FileExplorerProvider.styles.cjs.js +0 -2
- package/dist/components/file-explorer-header/FileExplorerProvider.styles.cjs.js.map +0 -1
- package/dist/components/file-explorer-header/FileExplorerProvider.styles.esm.js +0 -7
- package/dist/components/file-explorer-header/FileExplorerProvider.styles.esm.js.map +0 -1
- package/dist/components/file-explorer-header/helper.cjs.js +0 -2
- package/dist/components/file-explorer-header/helper.cjs.js.map +0 -1
- package/dist/components/file-explorer-header/helper.d.ts +0 -15
- package/dist/components/file-explorer-header/helper.d.ts.map +0 -1
- package/dist/components/file-explorer-header/helper.esm.js +0 -64
- package/dist/components/file-explorer-header/helper.esm.js.map +0 -1
- package/dist/components/file-explorer-header/types.d.ts +0 -2
- package/dist/components/file-explorer-header/types.d.ts.map +0 -1
- package/dist/components/header/Header.cjs.js +0 -19
- package/dist/components/header/Header.cjs.js.map +0 -1
- package/dist/components/header/Header.d.ts +0 -8
- package/dist/components/header/Header.d.ts.map +0 -1
- package/dist/components/header/Header.esm.js +0 -228
- package/dist/components/header/Header.esm.js.map +0 -1
- package/dist/components/header/Header.styles.cjs.js +0 -2
- package/dist/components/header/Header.styles.cjs.js.map +0 -1
- package/dist/components/header/Header.styles.esm.js +0 -7
- package/dist/components/header/Header.styles.esm.js.map +0 -1
- package/dist/components/header/index.cjs.js +0 -1
- package/dist/components/header/index.d.ts +0 -4
- package/dist/components/header/index.d.ts.map +0 -1
- package/dist/components/header/index.esm.js +0 -1
- package/dist/components/navbar/Navbar.cjs.js +0 -15
- package/dist/components/navbar/Navbar.cjs.js.map +0 -1
- package/dist/components/navbar/Navbar.d.ts +0 -14
- package/dist/components/navbar/Navbar.d.ts.map +0 -1
- package/dist/components/navbar/Navbar.esm.js +0 -232
- package/dist/components/navbar/Navbar.esm.js.map +0 -1
- package/dist/components/navbar/Navbar.styles.cjs.js +0 -2
- package/dist/components/navbar/Navbar.styles.cjs.js.map +0 -1
- package/dist/components/navbar/Navbar.styles.esm.js +0 -7
- package/dist/components/navbar/Navbar.styles.esm.js.map +0 -1
- package/dist/components/navbar/index.cjs.js +0 -1
- package/dist/components/navbar/index.d.ts +0 -4
- package/dist/components/navbar/index.d.ts.map +0 -1
- package/dist/components/navbar/index.esm.js +0 -1
- package/dist/components/resource-actions-menu/DeleteResourceDialog.cjs.js +0 -16
- package/dist/components/resource-actions-menu/DeleteResourceDialog.cjs.js.map +0 -1
- package/dist/components/resource-actions-menu/DeleteResourceDialog.d.ts +0 -8
- package/dist/components/resource-actions-menu/DeleteResourceDialog.d.ts.map +0 -1
- package/dist/components/resource-actions-menu/DeleteResourceDialog.esm.js +0 -215
- package/dist/components/resource-actions-menu/DeleteResourceDialog.esm.js.map +0 -1
- package/dist/components/resource-actions-menu/ResourceActionsMenu.cjs.js +0 -18
- package/dist/components/resource-actions-menu/ResourceActionsMenu.cjs.js.map +0 -1
- package/dist/components/resource-actions-menu/ResourceActionsMenu.d.ts +0 -16
- package/dist/components/resource-actions-menu/ResourceActionsMenu.d.ts.map +0 -1
- package/dist/components/resource-actions-menu/ResourceActionsMenu.esm.js +0 -260
- package/dist/components/resource-actions-menu/ResourceActionsMenu.esm.js.map +0 -1
- package/dist/dashboard/basicPreferences.cjs.js +0 -2
- package/dist/dashboard/basicPreferences.cjs.js.map +0 -1
- package/dist/dashboard/basicPreferences.esm.js +0 -70
- package/dist/dashboard/basicPreferences.esm.js.map +0 -1
- package/dist/dashboard/dashboardPane.cjs.js +0 -2
- package/dist/dashboard/dashboardPane.cjs.js.map +0 -1
- package/dist/dashboard/dashboardPane.esm.js +0 -7
- package/dist/dashboard/dashboardPane.esm.js.map +0 -1
- package/dist/dashboard/homepage.cjs.js +0 -2
- package/dist/dashboard/homepage.cjs.js.map +0 -1
- package/dist/dashboard/homepage.esm.js +0 -26
- package/dist/dashboard/homepage.esm.js.map +0 -1
- package/dist/dashboard/ontologyData.cjs.js +0 -37
- package/dist/dashboard/ontologyData.cjs.js.map +0 -1
- package/dist/dashboard/ontologyData.esm.js +0 -6
- package/dist/dashboard/ontologyData.esm.js.map +0 -1
- package/dist/dashboard/preferencesFormText.cjs.js +0 -20
- package/dist/dashboard/preferencesFormText.cjs.js.map +0 -1
- package/dist/dashboard/preferencesFormText.esm.js +0 -6
- package/dist/dashboard/preferencesFormText.esm.js.map +0 -1
- package/dist/dataContentPane2.cjs.js +0 -2
- package/dist/dataContentPane2.cjs.js.map +0 -1
- package/dist/dataContentPane2.esm.js +0 -109
- package/dist/dataContentPane2.esm.js.map +0 -1
- package/dist/defaultPane2.cjs.js +0 -2
- package/dist/defaultPane2.cjs.js.map +0 -1
- package/dist/defaultPane2.esm.js +0 -41
- package/dist/defaultPane2.esm.js.map +0 -1
- package/dist/dev.d.ts +0 -10
- package/dist/dev.d.ts.map +0 -1
- package/dist/dokieli/dokieliPane.cjs.js +0 -2
- package/dist/dokieli/dokieliPane.cjs.js.map +0 -1
- package/dist/dokieli/dokieliPane.esm.js +0 -39
- package/dist/dokieli/dokieliPane.esm.js.map +0 -1
- package/dist/dokieli/new.cjs.js.map +0 -1
- package/dist/dokieli/new.esm.js +0 -6
- package/dist/dokieli/new.esm.js.map +0 -1
- package/dist/form/pane.cjs.js +0 -4
- package/dist/form/pane.cjs.js.map +0 -1
- package/dist/form/pane.esm.js +0 -122
- package/dist/form/pane.esm.js.map +0 -1
- package/dist/home/homePane.cjs.js +0 -2
- package/dist/home/homePane.cjs.js.map +0 -1
- package/dist/home/homePane.esm.js +0 -35
- package/dist/home/homePane.esm.js.map +0 -1
- package/dist/humanReadablePane2.cjs.js +0 -2
- package/dist/humanReadablePane2.cjs.js.map +0 -1
- package/dist/humanReadablePane2.esm.js +0 -123
- package/dist/humanReadablePane2.esm.js.map +0 -1
- package/dist/icons/folder.cjs.js +0 -2
- package/dist/icons/folder.cjs.js.map +0 -1
- package/dist/icons/folder.esm.js +0 -6
- package/dist/icons/folder.esm.js.map +0 -1
- package/dist/icons/friends.cjs.js +0 -2
- package/dist/icons/friends.cjs.js.map +0 -1
- package/dist/icons/friends.esm.js +0 -6
- package/dist/icons/friends.esm.js.map +0 -1
- package/dist/icons/person.cjs.js +0 -2
- package/dist/icons/person.cjs.js.map +0 -1
- package/dist/icons/person.esm.js +0 -6
- package/dist/icons/person.esm.js.map +0 -1
- package/dist/imagePane2.cjs.js +0 -2
- package/dist/imagePane2.cjs.js.map +0 -1
- package/dist/imagePane2.esm.js +0 -32
- package/dist/imagePane2.esm.js.map +0 -1
- package/dist/index.cjs.js +0 -2
- package/dist/index.cjs.js.map +0 -1
- package/dist/index.esm.js +0 -31
- package/dist/index.esm.js.map +0 -1
- package/dist/internal/internalPane2.cjs.js +0 -2
- package/dist/internal/internalPane2.cjs.js.map +0 -1
- package/dist/internal/internalPane2.esm.js +0 -104
- package/dist/internal/internalPane2.esm.js.map +0 -1
- package/dist/mainPage/header.cjs.js +0 -2
- package/dist/mainPage/header.cjs.js.map +0 -1
- package/dist/mainPage/header.esm.js +0 -72
- package/dist/mainPage/header.esm.js.map +0 -1
- package/dist/mainPage/index.cjs.js +0 -2
- package/dist/mainPage/index.cjs.js.map +0 -1
- package/dist/mainPage/index.esm.js +0 -36
- package/dist/mainPage/index.esm.js.map +0 -1
- package/dist/mainPage/navbar.cjs.js +0 -2
- package/dist/mainPage/navbar.cjs.js.map +0 -1
- package/dist/mainPage/navbar.d.ts +0 -3
- package/dist/mainPage/navbar.d.ts.map +0 -1
- package/dist/mainPage/navbar.esm.js +0 -66
- package/dist/mainPage/navbar.esm.js.map +0 -1
- package/dist/n3Pane2.cjs.js +0 -3
- package/dist/n3Pane2.cjs.js.map +0 -1
- package/dist/n3Pane2.esm.js +0 -52
- package/dist/n3Pane2.esm.js.map +0 -1
- package/dist/outline/context.cjs.js +0 -2
- package/dist/outline/context.cjs.js.map +0 -1
- package/dist/outline/context.esm.js +0 -18
- package/dist/outline/context.esm.js.map +0 -1
- package/dist/outline/manager2.cjs.js +0 -2
- package/dist/outline/manager2.cjs.js.map +0 -1
- package/dist/outline/manager2.esm.js +0 -711
- package/dist/outline/manager2.esm.js.map +0 -1
- package/dist/outline/outlineIcons.cjs.js +0 -2
- package/dist/outline/outlineIcons.cjs.js.map +0 -1
- package/dist/outline/outlineIcons.esm.js +0 -10
- package/dist/outline/outlineIcons.esm.js.map +0 -1
- package/dist/outline/propertyViews.cjs.js +0 -2
- package/dist/outline/propertyViews.cjs.js.map +0 -1
- package/dist/outline/propertyViews.esm.js +0 -19
- package/dist/outline/propertyViews.esm.js.map +0 -1
- package/dist/outline/queryByExample.cjs.js +0 -2
- package/dist/outline/queryByExample.cjs.js.map +0 -1
- package/dist/outline/queryByExample.esm.js +0 -26
- package/dist/outline/queryByExample.esm.js.map +0 -1
- package/dist/outline/sourcePaneIcon.d.ts +0 -2
- package/dist/outline/sourcePaneIcon.d.ts.map +0 -1
- package/dist/outline/userInput.cjs.js +0 -61
- package/dist/outline/userInput.cjs.js.map +0 -1
- package/dist/outline/userInput.esm.js +0 -784
- package/dist/outline/userInput.esm.js.map +0 -1
- package/dist/outline/viewAsImage.cjs.js +0 -2
- package/dist/outline/viewAsImage.cjs.js.map +0 -1
- package/dist/outline/viewAsImage.esm.js +0 -10
- package/dist/outline/viewAsImage.esm.js.map +0 -1
- package/dist/outline/viewAsMbox.cjs.js +0 -2
- package/dist/outline/viewAsMbox.cjs.js.map +0 -1
- package/dist/outline/viewAsMbox.esm.js +0 -9
- package/dist/outline/viewAsMbox.esm.js.map +0 -1
- package/dist/pad/padPane2.cjs.js +0 -2
- package/dist/pad/padPane2.cjs.js.map +0 -1
- package/dist/pad/padPane2.esm.js +0 -173
- package/dist/pad/padPane2.esm.js.map +0 -1
- package/dist/playlist/playlistPane.cjs.js +0 -2
- package/dist/playlist/playlistPane.cjs.js.map +0 -1
- package/dist/playlist/playlistPane.esm.js +0 -49
- package/dist/playlist/playlistPane.esm.js.map +0 -1
- package/dist/registerPanes.cjs.js +0 -2
- package/dist/registerPanes.cjs.js.map +0 -1
- package/dist/registerPanes.esm.js +0 -46
- package/dist/registerPanes.esm.js.map +0 -1
- package/dist/schedule/formsForSchedule.cjs.js +0 -117
- package/dist/schedule/formsForSchedule.cjs.js.map +0 -1
- package/dist/schedule/formsForSchedule.esm.js +0 -6
- package/dist/schedule/formsForSchedule.esm.js.map +0 -1
- package/dist/schedule/schedulePane2.cjs.js +0 -8
- package/dist/schedule/schedulePane2.cjs.js.map +0 -1
- package/dist/schedule/schedulePane2.esm.js +0 -385
- package/dist/schedule/schedulePane2.esm.js.map +0 -1
- package/dist/sharing/sharingPane.cjs.js +0 -2
- package/dist/sharing/sharingPane.cjs.js.map +0 -1
- package/dist/sharing/sharingPane.esm.js +0 -22
- package/dist/sharing/sharingPane.esm.js.map +0 -1
- package/dist/slideshow/slideshowPane.cjs.js +0 -2
- package/dist/slideshow/slideshowPane.cjs.js.map +0 -1
- package/dist/slideshow/slideshowPane.esm.js +0 -46
- package/dist/slideshow/slideshowPane.esm.js.map +0 -1
- package/dist/social/editProfileDetails.cjs.js +0 -2
- package/dist/social/editProfileDetails.cjs.js.map +0 -1
- package/dist/social/editProfileDetails.esm.js +0 -12
- package/dist/social/editProfileDetails.esm.js.map +0 -1
- package/dist/social/icons.cjs.js +0 -82
- package/dist/social/icons.cjs.js.map +0 -1
- package/dist/social/icons.esm.js.map +0 -1
- package/dist/social/socialPane2.cjs.js +0 -6
- package/dist/social/socialPane2.cjs.js.map +0 -1
- package/dist/social/socialPane2.esm.js +0 -326
- package/dist/social/socialPane2.esm.js.map +0 -1
- package/dist/social/socialSections.cjs.js +0 -2
- package/dist/social/socialSections.cjs.js.map +0 -1
- package/dist/social/socialSections.esm.js +0 -222
- package/dist/social/socialSections.esm.js.map +0 -1
- package/dist/social/spinner.cjs.js +0 -1
- package/dist/social/spinner.esm.js +0 -1
- package/dist/social/triage.cjs.js +0 -2
- package/dist/social/triage.cjs.js.map +0 -1
- package/dist/social/triage.esm.js +0 -44
- package/dist/social/triage.esm.js.map +0 -1
- package/dist/tabbed/tabbedPane.cjs.js +0 -2
- package/dist/tabbed/tabbedPane.cjs.js.map +0 -1
- package/dist/tabbed/tabbedPane.esm.js +0 -38
- package/dist/tabbed/tabbedPane.esm.js.map +0 -1
- package/dist/tableViewPane.cjs.js +0 -2
- package/dist/tableViewPane.cjs.js.map +0 -1
- package/dist/tableViewPane.esm.js +0 -20
- package/dist/tableViewPane.esm.js.map +0 -1
- package/dist/transaction/pane.cjs.js +0 -8
- package/dist/transaction/pane.cjs.js.map +0 -1
- package/dist/transaction/pane.esm.js +0 -212
- package/dist/transaction/pane.esm.js.map +0 -1
- package/dist/transaction/period.cjs.js +0 -4
- package/dist/transaction/period.cjs.js.map +0 -1
- package/dist/transaction/period.esm.js +0 -126
- package/dist/transaction/period.esm.js.map +0 -1
- package/dist/trip/tripPane.cjs.js +0 -2
- package/dist/trip/tripPane.cjs.js.map +0 -1
- package/dist/trip/tripPane.esm.js +0 -85
- package/dist/trip/tripPane.esm.js.map +0 -1
- package/dist/trustedApplications/trustedApplications.dom.cjs.js +0 -2
- package/dist/trustedApplications/trustedApplications.dom.cjs.js.map +0 -1
- package/dist/trustedApplications/trustedApplications.dom.esm.js +0 -108
- package/dist/trustedApplications/trustedApplications.dom.esm.js.map +0 -1
- package/dist/trustedApplications/trustedApplications.utils.cjs.js +0 -2
- package/dist/trustedApplications/trustedApplications.utils.cjs.js.map +0 -1
- package/dist/trustedApplications/trustedApplications.utils.esm.js +0 -20
- package/dist/trustedApplications/trustedApplications.utils.esm.js.map +0 -1
- package/dist/trustedApplications/trustedApplications.view.cjs.js +0 -2
- package/dist/trustedApplications/trustedApplications.view.cjs.js.map +0 -1
- package/dist/trustedApplications/trustedApplications.view.esm.js +0 -41
- package/dist/trustedApplications/trustedApplications.view.esm.js.map +0 -1
- package/dist/ui/pane.cjs.js +0 -4
- package/dist/ui/pane.cjs.js.map +0 -1
- package/dist/ui/pane.esm.js +0 -56
- package/dist/ui/pane.esm.js.map +0 -1
- package/dist/utils/paneUtils.cjs.js +0 -2
- package/dist/utils/paneUtils.cjs.js.map +0 -1
- package/dist/utils/paneUtils.d.ts +0 -19
- package/dist/utils/paneUtils.d.ts.map +0 -1
- package/dist/utils/paneUtils.esm.js +0 -52
- package/dist/utils/paneUtils.esm.js.map +0 -1
- package/dist/utils/podUtils.cjs.js +0 -2
- package/dist/utils/podUtils.cjs.js.map +0 -1
- package/dist/utils/podUtils.d.ts +0 -4
- package/dist/utils/podUtils.d.ts.map +0 -1
- package/dist/utils/podUtils.esm.js +0 -46
- package/dist/utils/podUtils.esm.js.map +0 -1
- package/dist/utils/webIdUtils.cjs.js +0 -2
- package/dist/utils/webIdUtils.cjs.js.map +0 -1
- package/dist/utils/webIdUtils.d.ts +0 -6
- package/dist/utils/webIdUtils.d.ts.map +0 -1
- package/dist/utils/webIdUtils.esm.js +0 -48
- package/dist/utils/webIdUtils.esm.js.map +0 -1
- package/dist/versionInfo.cjs.js +0 -2
- package/dist/versionInfo.cjs.js.map +0 -1
- package/dist/versionInfo.esm.js +0 -40
- package/dist/versionInfo.esm.js.map +0 -1
- package/dist/video/videoPane.cjs.js +0 -2
- package/dist/video/videoPane.cjs.js.map +0 -1
- package/dist/video/videoPane.esm.js +0 -25
- package/dist/video/videoPane.esm.js.map +0 -1
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const e=require("./ontologyData.cjs.js"),t=require("./preferencesFormText.cjs.js");let n=require("solid-ui"),r=require("rdflib");var i={icon:n.icons.iconBase+`noun_Sliders_341315_000000.svg`,name:`basicPreferences`,label:e=>null,render:(i,s)=>{let c=s.dom,l=s.session.store;function u(e,t){e||d.appendChild(n.widgets.errorMessageBlock(c,t,`#fee`))}let d=c.createElement(`div`),f=a(d,c);function p(e,t){e=e.doc(),l.holds(void 0,void 0,void 0,e)||(0,r.parse)(t,l,e.uri,`text/turtle`,null)}let m=l.sym(`urn:uuid:93774ba1-d3b6-41f2-85b6-4ae27ffd2597#this`);p(m,t.default),p(l.sym(`urn:uuid:93774ba1-d3b6-41f2-85b6-4ae27ffd2597-ONT`),e.default);async function h(){let e=await n.login.ensureLoadedPreferences({dom:c,div:d});if(!e.preferencesFile){console.log(`Not doing private class preferences as no access to preferences file. `+e.preferencesFileError);return}let t=n.widgets.appendForm(c,f,{},e.me,m,e.preferencesFile,u);t.style.borderStyle=`none`;let r=s.session.paneRegistry.byName(`trustedApplications`);r&&d.appendChild(r.render(null,s)),o(d,l,e.me,c)}return h(),d}};function a(e,t){let n=l(e,t,`User types`),r=n.appendChild(t.createElement(`p`));r.innerText=`Here you can self-assign user types to help the data browser know which views you would like to access.`;let i=n.appendChild(t.createElement(`a`));return i.href=`https://github.com/solidos/userguide/#role`,i.innerText=`Read more`,n.appendChild(t.createElement(`div`))}function o(e,t,r,i){let a=l(e,i,`Delete account`),o=t.each(r,n.ns.space(`storage`),null,r.doc()).map(e=>e.value),c=a.appendChild(i.createElement(`ul`));o.forEach(async e=>{let t=await s(e,i);t&&c.appendChild(i.createElement(`li`)).appendChild(t)})}async function s(e,t){let n=t.createElement(`a`);n.textContent=`Delete your account at ${e}`;let r=await c(e);return typeof r==`string`?(n.href=r,n):null}async function c(e){let t=new URL(e),n=new URL(e);return n.pathname=t.pathname=`/account/delete`,n.hostname=n.hostname.split(`.`).slice(1).join(`.`),(await fetch(n.href,{method:`HEAD`})).ok?n.href:(await fetch(t.href,{method:`HEAD`})).ok?t.href:null}function l(e,t,n){let r=e.appendChild(t.createElement(`div`));r.style.border=`0.3em solid #418d99`,r.style.borderRadius=`0.5em`,r.style.padding=`0.7em`,r.style.marginTop=`0.7em`;let i=r.appendChild(t.createElement(`h3`));return i.innerText=n,r}exports.basicPreferencesPane=i,exports.default=i;
|
|
2
|
-
//# sourceMappingURL=basicPreferences.cjs.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"basicPreferences.cjs.js","names":[],"sources":["../../src/dashboard/basicPreferences.ts"],"sourcesContent":["import { PaneDefinition } from 'pane-registry'\nimport { IndexedFormula, NamedNode, parse, Store } from 'rdflib'\nimport { icons, login, ns, widgets } from 'solid-ui'\nimport ontologyData from './ontologyData.ttl'\nimport preferencesFormText from './preferencesFormText.ttl'\n\nexport const basicPreferencesPane: PaneDefinition = {\n icon: icons.iconBase + 'noun_Sliders_341315_000000.svg',\n name: 'basicPreferences',\n label: _subject => {\n return null\n },\n\n // Render the pane\n // The subject should be the logged in user.\n render: (subject, context) => {\n const dom = context.dom\n // @ts-ignore\n const store = context.session.store as Store\n\n function complainIfBad (ok: Boolean, mess: any) {\n if (ok) return\n container.appendChild(widgets.errorMessageBlock(dom, mess, '#fee'))\n }\n\n const container = dom.createElement('div')\n\n const formArea = setupUserTypesSection(container, dom)\n\n function loadData (doc: NamedNode, turtle: String) {\n doc = doc.doc() // remove # from URI if nec\n if (!store.holds(undefined, undefined, undefined, doc)) {\n // If not loaded already\n ;(parse as any)(turtle, store, doc.uri, 'text/turtle', null) // Load form directly\n }\n }\n\n const preferencesForm = store.sym(\n 'urn:uuid:93774ba1-d3b6-41f2-85b6-4ae27ffd2597#this'\n )\n loadData(preferencesForm, preferencesFormText)\n\n const ontologyExtra = store.sym(\n 'urn:uuid:93774ba1-d3b6-41f2-85b6-4ae27ffd2597-ONT'\n )\n loadData(ontologyExtra, ontologyData)\n\n async function doRender () {\n const renderContext = await login.ensureLoadedPreferences({\n dom,\n div: container\n })\n if (!renderContext.preferencesFile) {\n // Could be CORS\n console.log(\n 'Not doing private class preferences as no access to preferences file. ' +\n renderContext.preferencesFileError\n )\n return\n }\n const appendedForm = widgets.appendForm(\n dom,\n formArea,\n {},\n renderContext.me,\n preferencesForm,\n renderContext.preferencesFile,\n complainIfBad\n )\n appendedForm.style.borderStyle = 'none'\n\n const trustedApplicationsView = context.session.paneRegistry.byName('trustedApplications')\n if (trustedApplicationsView) {\n container.appendChild(trustedApplicationsView.render(null, context))\n }\n\n // @@ TODO Remove need for casting as any and bang (!) syntax\n addDeleteSection(container, store, renderContext.me!, dom)\n }\n\n doRender()\n\n return container\n }\n}\n\nfunction setupUserTypesSection (\n container: Element,\n dom: HTMLDocument\n): Element {\n const formContainer = createSection(container, dom, 'User types')\n\n const description = formContainer.appendChild(dom.createElement('p'))\n description.innerText = 'Here you can self-assign user types to help the data browser know which views you would like to access.'\n\n const userTypesLink = formContainer.appendChild(dom.createElement('a'))\n userTypesLink.href = 'https://github.com/solidos/userguide/#role'\n userTypesLink.innerText = 'Read more'\n\n const formArea = formContainer.appendChild(dom.createElement('div'))\n\n return formArea\n}\n\nexport default basicPreferencesPane\n\n// ends\n\nfunction addDeleteSection (\n container: HTMLElement,\n store: IndexedFormula,\n profile: NamedNode,\n dom: HTMLDocument\n): void {\n const section = createSection(container, dom, 'Delete account')\n\n const podServerNodes = store.each(profile, ns.space('storage'), null, profile.doc())\n const podServers = podServerNodes.map(node => node.value)\n\n const list = section.appendChild(dom.createElement('ul'))\n\n podServers.forEach(async server => {\n const deletionLink = await generateDeletionLink(server, dom)\n if (deletionLink) {\n const listItem = list.appendChild(dom.createElement('li'))\n listItem.appendChild(deletionLink)\n }\n })\n}\n\nasync function generateDeletionLink (\n podServer: string,\n dom: HTMLDocument\n): Promise<HTMLElement | null> {\n const link = dom.createElement('a')\n link.textContent = `Delete your account at ${podServer}`\n const deletionUrl = await getDeletionUrlForServer(podServer)\n if (typeof deletionUrl !== 'string') {\n return null\n }\n link.href = deletionUrl\n return link\n}\n\n/**\n * Hacky way to get the deletion link to a Pod\n *\n * This function infers the deletion link by assuming the URL structure of Node Solid server.\n * In the future, Solid will hopefully provide a standardised way of discovering the deletion link:\n * https://github.com/solidos/data-interoperability-panel/issues/18\n *\n * If NSS is in multi-user mode (the case on inrupt.net and solid.community), the deletion URL for\n * vincent.dev.inrupt.net would be at dev.inrupt.net/account/delete. In single-user mode, the\n * deletion URL would be at vincent.dev.inrupt.net/account/delete.\n *\n * @param server Pod server containing the user's account.\n * @returns URL of the page that Node Solid Server would offer to delete the account, or null if\n * the URLs we tried give invalid responses.\n */\nasync function getDeletionUrlForServer (\n server: string\n): Promise<string | null> {\n const singleUserUrl = new URL(server)\n const multiUserUrl = new URL(server)\n multiUserUrl.pathname = singleUserUrl.pathname = '/account/delete'\n\n const hostnameParts = multiUserUrl.hostname.split('.')\n // Remove `vincent.` from `vincent.dev.inrupt.net`, for example:\n multiUserUrl.hostname = hostnameParts.slice(1).join('.')\n\n const multiUserNssResponse = await fetch(multiUserUrl.href, {\n method: 'HEAD'\n })\n if (multiUserNssResponse.ok) {\n return multiUserUrl.href\n }\n\n const singleUserNssResponse = await fetch(singleUserUrl.href, {\n method: 'HEAD'\n })\n if (singleUserNssResponse.ok) {\n return singleUserUrl.href\n }\n return null\n}\n\nfunction createSection (\n container: Element,\n dom: HTMLDocument,\n title: string\n): Element {\n const section = container.appendChild(dom.createElement('div'))\n section.style.border = '0.3em solid #418d99'\n section.style.borderRadius = '0.5em'\n section.style.padding = '0.7em'\n section.style.marginTop = '0.7em'\n\n const titleElement = section.appendChild(dom.createElement('h3'))\n titleElement.innerText = title\n\n return section\n}\n"],"mappings":"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"}
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
import e from "./ontologyData.esm.js";
|
|
2
|
-
import t from "./preferencesFormText.esm.js";
|
|
3
|
-
import { icons as n, login as r, ns as i, widgets as a } from "solid-ui";
|
|
4
|
-
import { parse as o } from "rdflib";
|
|
5
|
-
//#region src/dashboard/basicPreferences.ts
|
|
6
|
-
var s = {
|
|
7
|
-
icon: n.iconBase + "noun_Sliders_341315_000000.svg",
|
|
8
|
-
name: "basicPreferences",
|
|
9
|
-
label: (e) => null,
|
|
10
|
-
render: (n, i) => {
|
|
11
|
-
let s = i.dom, u = i.session.store;
|
|
12
|
-
function d(e, t) {
|
|
13
|
-
e || f.appendChild(a.errorMessageBlock(s, t, "#fee"));
|
|
14
|
-
}
|
|
15
|
-
let f = s.createElement("div"), p = c(f, s);
|
|
16
|
-
function m(e, t) {
|
|
17
|
-
e = e.doc(), u.holds(void 0, void 0, void 0, e) || o(t, u, e.uri, "text/turtle", null);
|
|
18
|
-
}
|
|
19
|
-
let h = u.sym("urn:uuid:93774ba1-d3b6-41f2-85b6-4ae27ffd2597#this");
|
|
20
|
-
m(h, t), m(u.sym("urn:uuid:93774ba1-d3b6-41f2-85b6-4ae27ffd2597-ONT"), e);
|
|
21
|
-
async function g() {
|
|
22
|
-
let e = await r.ensureLoadedPreferences({
|
|
23
|
-
dom: s,
|
|
24
|
-
div: f
|
|
25
|
-
});
|
|
26
|
-
if (!e.preferencesFile) {
|
|
27
|
-
console.log("Not doing private class preferences as no access to preferences file. " + e.preferencesFileError);
|
|
28
|
-
return;
|
|
29
|
-
}
|
|
30
|
-
let t = a.appendForm(s, p, {}, e.me, h, e.preferencesFile, d);
|
|
31
|
-
t.style.borderStyle = "none";
|
|
32
|
-
let n = i.session.paneRegistry.byName("trustedApplications");
|
|
33
|
-
n && f.appendChild(n.render(null, i)), l(f, u, e.me, s);
|
|
34
|
-
}
|
|
35
|
-
return g(), f;
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
function c(e, t) {
|
|
39
|
-
let n = f(e, t, "User types"), r = n.appendChild(t.createElement("p"));
|
|
40
|
-
r.innerText = "Here you can self-assign user types to help the data browser know which views you would like to access.";
|
|
41
|
-
let i = n.appendChild(t.createElement("a"));
|
|
42
|
-
return i.href = "https://github.com/solidos/userguide/#role", i.innerText = "Read more", n.appendChild(t.createElement("div"));
|
|
43
|
-
}
|
|
44
|
-
function l(e, t, n, r) {
|
|
45
|
-
let a = f(e, r, "Delete account"), o = t.each(n, i.space("storage"), null, n.doc()).map((e) => e.value), s = a.appendChild(r.createElement("ul"));
|
|
46
|
-
o.forEach(async (e) => {
|
|
47
|
-
let t = await u(e, r);
|
|
48
|
-
t && s.appendChild(r.createElement("li")).appendChild(t);
|
|
49
|
-
});
|
|
50
|
-
}
|
|
51
|
-
async function u(e, t) {
|
|
52
|
-
let n = t.createElement("a");
|
|
53
|
-
n.textContent = `Delete your account at ${e}`;
|
|
54
|
-
let r = await d(e);
|
|
55
|
-
return typeof r == "string" ? (n.href = r, n) : null;
|
|
56
|
-
}
|
|
57
|
-
async function d(e) {
|
|
58
|
-
let t = new URL(e), n = new URL(e);
|
|
59
|
-
return n.pathname = t.pathname = "/account/delete", n.hostname = n.hostname.split(".").slice(1).join("."), (await fetch(n.href, { method: "HEAD" })).ok ? n.href : (await fetch(t.href, { method: "HEAD" })).ok ? t.href : null;
|
|
60
|
-
}
|
|
61
|
-
function f(e, t, n) {
|
|
62
|
-
let r = e.appendChild(t.createElement("div"));
|
|
63
|
-
r.style.border = "0.3em solid #418d99", r.style.borderRadius = "0.5em", r.style.padding = "0.7em", r.style.marginTop = "0.7em";
|
|
64
|
-
let i = r.appendChild(t.createElement("h3"));
|
|
65
|
-
return i.innerText = n, r;
|
|
66
|
-
}
|
|
67
|
-
//#endregion
|
|
68
|
-
export { s as basicPreferencesPane, s as default };
|
|
69
|
-
|
|
70
|
-
//# sourceMappingURL=basicPreferences.esm.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"basicPreferences.esm.js","names":[],"sources":["../../src/dashboard/basicPreferences.ts"],"sourcesContent":["import { PaneDefinition } from 'pane-registry'\nimport { IndexedFormula, NamedNode, parse, Store } from 'rdflib'\nimport { icons, login, ns, widgets } from 'solid-ui'\nimport ontologyData from './ontologyData.ttl'\nimport preferencesFormText from './preferencesFormText.ttl'\n\nexport const basicPreferencesPane: PaneDefinition = {\n icon: icons.iconBase + 'noun_Sliders_341315_000000.svg',\n name: 'basicPreferences',\n label: _subject => {\n return null\n },\n\n // Render the pane\n // The subject should be the logged in user.\n render: (subject, context) => {\n const dom = context.dom\n // @ts-ignore\n const store = context.session.store as Store\n\n function complainIfBad (ok: Boolean, mess: any) {\n if (ok) return\n container.appendChild(widgets.errorMessageBlock(dom, mess, '#fee'))\n }\n\n const container = dom.createElement('div')\n\n const formArea = setupUserTypesSection(container, dom)\n\n function loadData (doc: NamedNode, turtle: String) {\n doc = doc.doc() // remove # from URI if nec\n if (!store.holds(undefined, undefined, undefined, doc)) {\n // If not loaded already\n ;(parse as any)(turtle, store, doc.uri, 'text/turtle', null) // Load form directly\n }\n }\n\n const preferencesForm = store.sym(\n 'urn:uuid:93774ba1-d3b6-41f2-85b6-4ae27ffd2597#this'\n )\n loadData(preferencesForm, preferencesFormText)\n\n const ontologyExtra = store.sym(\n 'urn:uuid:93774ba1-d3b6-41f2-85b6-4ae27ffd2597-ONT'\n )\n loadData(ontologyExtra, ontologyData)\n\n async function doRender () {\n const renderContext = await login.ensureLoadedPreferences({\n dom,\n div: container\n })\n if (!renderContext.preferencesFile) {\n // Could be CORS\n console.log(\n 'Not doing private class preferences as no access to preferences file. ' +\n renderContext.preferencesFileError\n )\n return\n }\n const appendedForm = widgets.appendForm(\n dom,\n formArea,\n {},\n renderContext.me,\n preferencesForm,\n renderContext.preferencesFile,\n complainIfBad\n )\n appendedForm.style.borderStyle = 'none'\n\n const trustedApplicationsView = context.session.paneRegistry.byName('trustedApplications')\n if (trustedApplicationsView) {\n container.appendChild(trustedApplicationsView.render(null, context))\n }\n\n // @@ TODO Remove need for casting as any and bang (!) syntax\n addDeleteSection(container, store, renderContext.me!, dom)\n }\n\n doRender()\n\n return container\n }\n}\n\nfunction setupUserTypesSection (\n container: Element,\n dom: HTMLDocument\n): Element {\n const formContainer = createSection(container, dom, 'User types')\n\n const description = formContainer.appendChild(dom.createElement('p'))\n description.innerText = 'Here you can self-assign user types to help the data browser know which views you would like to access.'\n\n const userTypesLink = formContainer.appendChild(dom.createElement('a'))\n userTypesLink.href = 'https://github.com/solidos/userguide/#role'\n userTypesLink.innerText = 'Read more'\n\n const formArea = formContainer.appendChild(dom.createElement('div'))\n\n return formArea\n}\n\nexport default basicPreferencesPane\n\n// ends\n\nfunction addDeleteSection (\n container: HTMLElement,\n store: IndexedFormula,\n profile: NamedNode,\n dom: HTMLDocument\n): void {\n const section = createSection(container, dom, 'Delete account')\n\n const podServerNodes = store.each(profile, ns.space('storage'), null, profile.doc())\n const podServers = podServerNodes.map(node => node.value)\n\n const list = section.appendChild(dom.createElement('ul'))\n\n podServers.forEach(async server => {\n const deletionLink = await generateDeletionLink(server, dom)\n if (deletionLink) {\n const listItem = list.appendChild(dom.createElement('li'))\n listItem.appendChild(deletionLink)\n }\n })\n}\n\nasync function generateDeletionLink (\n podServer: string,\n dom: HTMLDocument\n): Promise<HTMLElement | null> {\n const link = dom.createElement('a')\n link.textContent = `Delete your account at ${podServer}`\n const deletionUrl = await getDeletionUrlForServer(podServer)\n if (typeof deletionUrl !== 'string') {\n return null\n }\n link.href = deletionUrl\n return link\n}\n\n/**\n * Hacky way to get the deletion link to a Pod\n *\n * This function infers the deletion link by assuming the URL structure of Node Solid server.\n * In the future, Solid will hopefully provide a standardised way of discovering the deletion link:\n * https://github.com/solidos/data-interoperability-panel/issues/18\n *\n * If NSS is in multi-user mode (the case on inrupt.net and solid.community), the deletion URL for\n * vincent.dev.inrupt.net would be at dev.inrupt.net/account/delete. In single-user mode, the\n * deletion URL would be at vincent.dev.inrupt.net/account/delete.\n *\n * @param server Pod server containing the user's account.\n * @returns URL of the page that Node Solid Server would offer to delete the account, or null if\n * the URLs we tried give invalid responses.\n */\nasync function getDeletionUrlForServer (\n server: string\n): Promise<string | null> {\n const singleUserUrl = new URL(server)\n const multiUserUrl = new URL(server)\n multiUserUrl.pathname = singleUserUrl.pathname = '/account/delete'\n\n const hostnameParts = multiUserUrl.hostname.split('.')\n // Remove `vincent.` from `vincent.dev.inrupt.net`, for example:\n multiUserUrl.hostname = hostnameParts.slice(1).join('.')\n\n const multiUserNssResponse = await fetch(multiUserUrl.href, {\n method: 'HEAD'\n })\n if (multiUserNssResponse.ok) {\n return multiUserUrl.href\n }\n\n const singleUserNssResponse = await fetch(singleUserUrl.href, {\n method: 'HEAD'\n })\n if (singleUserNssResponse.ok) {\n return singleUserUrl.href\n }\n return null\n}\n\nfunction createSection (\n container: Element,\n dom: HTMLDocument,\n title: string\n): Element {\n const section = container.appendChild(dom.createElement('div'))\n section.style.border = '0.3em solid #418d99'\n section.style.borderRadius = '0.5em'\n section.style.padding = '0.7em'\n section.style.marginTop = '0.7em'\n\n const titleElement = section.appendChild(dom.createElement('h3'))\n titleElement.innerText = title\n\n return section\n}\n"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dashboardPane.cjs.js","names":[],"sources":["../../src/dashboard/dashboardPane.ts"],"sourcesContent":["import { icons } from 'solid-ui'\nimport { authn, authSession, store } from 'solid-logic'\nimport { Fetcher, NamedNode } from 'rdflib'\nimport { generateHomepage } from './homepage'\nimport { DataBrowserContext, PaneDefinition } from 'pane-registry'\n\nexport const dashboardPane: PaneDefinition = {\n icon: icons.iconBase + 'noun_547570.svg',\n name: 'dashboard',\n label: subject => {\n if (subject.termType === 'NamedNode' && subject.uri === subject.site().uri) {\n return 'Dashboard'\n }\n return null\n },\n render: (subject, context) => {\n console.log('Dashboard Pane Render')\n const dom = context.dom\n const container = dom.createElement('div')\n const runBuildPage = () => {\n container.innerHTML = ''\n buildPage(\n container,\n authn.currentUser() || null,\n context,\n subject\n )\n }\n\n authSession.events.on('login', () => {\n // console.log('On Login')\n runBuildPage()\n })\n authSession.events.on('sessionRestore', () => {\n // console.log('On Session Restore')\n runBuildPage()\n })\n // console.log('Initial Load')\n runBuildPage()\n\n return container\n }\n}\n\nfunction buildPage (\n container: HTMLElement,\n webId: NamedNode | null,\n context: DataBrowserContext,\n subject: NamedNode | null\n) {\n const uri = (new URL(window.location.href)).searchParams.get('uri')\n\n if (uri && webId) {\n return buildDashboard(container, context)\n }\n\n if (!uri && subject) {\n return buildHomePage(container, subject)\n }\n\n if (!uri && !subject && webId) {\n return buildDashboard(container, context)\n }\n\n const fallbackSubject = subject || webId || store.sym(window.location.href)\n return buildHomePage(container, fallbackSubject)\n}\n\nfunction buildDashboard (container: HTMLElement, context: DataBrowserContext) {\n // console.log('build dashboard')\n // @@ TODO get a proper type\n const outliner: any = context.getOutliner(context.dom)\n outliner\n .getDashboard()\n .then((dashboard: HTMLElement) => container.appendChild(dashboard))\n}\n\nfunction buildHomePage (container: HTMLElement, subject: NamedNode) {\n // console.log('build home page')\n const wrapper = document.createElement('div')\n container.appendChild(wrapper)\n const shadow = wrapper.attachShadow({ mode: 'open' })\n const link = document.createElement('link')\n link.rel = 'stylesheet'\n link.href = '/common/css/bootstrap.min.css'\n shadow.appendChild(link)\n generateHomepage(subject, store, store.fetcher as Fetcher).then(homepage =>\n shadow.appendChild(homepage)\n )\n}\n\nexport default dashboardPane\n"],"mappings":"8EAOQ,EAAA,MAAM,SAAW"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dashboardPane.esm.js","names":[],"sources":["../../src/dashboard/dashboardPane.ts"],"sourcesContent":["import { icons } from 'solid-ui'\nimport { authn, authSession, store } from 'solid-logic'\nimport { Fetcher, NamedNode } from 'rdflib'\nimport { generateHomepage } from './homepage'\nimport { DataBrowserContext, PaneDefinition } from 'pane-registry'\n\nexport const dashboardPane: PaneDefinition = {\n icon: icons.iconBase + 'noun_547570.svg',\n name: 'dashboard',\n label: subject => {\n if (subject.termType === 'NamedNode' && subject.uri === subject.site().uri) {\n return 'Dashboard'\n }\n return null\n },\n render: (subject, context) => {\n console.log('Dashboard Pane Render')\n const dom = context.dom\n const container = dom.createElement('div')\n const runBuildPage = () => {\n container.innerHTML = ''\n buildPage(\n container,\n authn.currentUser() || null,\n context,\n subject\n )\n }\n\n authSession.events.on('login', () => {\n // console.log('On Login')\n runBuildPage()\n })\n authSession.events.on('sessionRestore', () => {\n // console.log('On Session Restore')\n runBuildPage()\n })\n // console.log('Initial Load')\n runBuildPage()\n\n return container\n }\n}\n\nfunction buildPage (\n container: HTMLElement,\n webId: NamedNode | null,\n context: DataBrowserContext,\n subject: NamedNode | null\n) {\n const uri = (new URL(window.location.href)).searchParams.get('uri')\n\n if (uri && webId) {\n return buildDashboard(container, context)\n }\n\n if (!uri && subject) {\n return buildHomePage(container, subject)\n }\n\n if (!uri && !subject && webId) {\n return buildDashboard(container, context)\n }\n\n const fallbackSubject = subject || webId || store.sym(window.location.href)\n return buildHomePage(container, fallbackSubject)\n}\n\nfunction buildDashboard (container: HTMLElement, context: DataBrowserContext) {\n // console.log('build dashboard')\n // @@ TODO get a proper type\n const outliner: any = context.getOutliner(context.dom)\n outliner\n .getDashboard()\n .then((dashboard: HTMLElement) => container.appendChild(dashboard))\n}\n\nfunction buildHomePage (container: HTMLElement, subject: NamedNode) {\n // console.log('build home page')\n const wrapper = document.createElement('div')\n container.appendChild(wrapper)\n const shadow = wrapper.attachShadow({ mode: 'open' })\n const link = document.createElement('link')\n link.rel = 'stylesheet'\n link.href = '/common/css/bootstrap.min.css'\n shadow.appendChild(link)\n generateHomepage(subject, store, store.fetcher as Fetcher).then(homepage =>\n shadow.appendChild(homepage)\n )\n}\n\nexport default dashboardPane\n"],"mappings":";;;AAOQ,EAAM,WAAW"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const e=require("../utils/webIdUtils.cjs.js");async function t(t,i,a){let o=await e.loadProfileFromURI(t),s=e.getName(i,o),c=document.createElement(`div`);return c.classList.add(`container`),c.appendChild(r(o.uri,s)),c.appendChild(n(s)),c}function n(e){let t=document.createElement(`section`),n=document.createElement(`h2`);n.innerText=`Data`,t.appendChild(n);let r=document.createElement(`div`);r.classList.add(`list-group`),t.appendChild(r);let i=document.createElement(`a`);return i.classList.add(`list-group-item`),i.href=window.document.location.href+`public/`,i.innerText=`View ${e}'s files`,r.appendChild(i),t}function r(e,t){let n=document.createElement(`a`);n.href=e,n.innerText=t;let r=document.createElement(`span`);r.innerText=`'s Profile`;let i=document.createElement(`h1`);return i.appendChild(n),i.appendChild(r),i}exports.generateHomepage=t;
|
|
2
|
-
//# sourceMappingURL=homepage.cjs.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"homepage.cjs.js","names":[],"sources":["../../src/dashboard/homepage.ts"],"sourcesContent":["import { Fetcher, IndexedFormula, NamedNode } from 'rdflib'\nimport { loadProfileFromURI, getName } from '../utils/webIdUtils'\n\nexport async function generateHomepage (\n uri: NamedNode,\n store: IndexedFormula,\n fetcher: Fetcher\n): Promise<HTMLElement> {\n const ownersProfile = await loadProfileFromURI(uri)\n const name = getName(store, ownersProfile)\n\n const wrapper = document.createElement('div')\n wrapper.classList.add('container')\n wrapper.appendChild(createTitle(ownersProfile.uri, name))\n wrapper.appendChild(createDataSection(name))\n\n return wrapper\n}\n\nfunction createDataSection (name: string): HTMLElement {\n const dataSection = document.createElement('section')\n\n const title = document.createElement('h2')\n title.innerText = 'Data'\n dataSection.appendChild(title)\n\n const listGroup = document.createElement('div')\n listGroup.classList.add('list-group')\n dataSection.appendChild(listGroup)\n\n const publicDataLink = document.createElement('a')\n publicDataLink.classList.add('list-group-item')\n publicDataLink.href = window.document.location.href + 'public/'\n publicDataLink.innerText = `View ${name}'s files`\n listGroup.appendChild(publicDataLink)\n\n return dataSection\n}\n\nfunction createTitle (uri: string, name: string): HTMLElement {\n const profileLink = document.createElement('a')\n profileLink.href = uri\n profileLink.innerText = name\n\n const profileLinkPost = document.createElement('span')\n profileLinkPost.innerText = '\\'s Profile'\n\n const title = document.createElement('h1')\n title.appendChild(profileLink)\n title.appendChild(profileLinkPost)\n\n return title\n}\n"],"mappings":"8CAGA,eAAsB,EACpB,EACA,EACA,EACsB,CACtB,IAAM,EAAgB,MAAM,EAAA,mBAAmB,CAAG,EAC5C,EAAO,EAAA,QAAQ,EAAO,CAAa,EAEnC,EAAU,SAAS,cAAc,KAAK,EAK5C,OAJA,EAAQ,UAAU,IAAI,WAAW,EACjC,EAAQ,YAAY,EAAY,EAAc,IAAK,CAAI,CAAC,EACxD,EAAQ,YAAY,EAAkB,CAAI,CAAC,EAEpC,CACT,CAEA,SAAS,EAAmB,EAA2B,CACrD,IAAM,EAAc,SAAS,cAAc,SAAS,EAE9C,EAAQ,SAAS,cAAc,IAAI,EACzC,EAAM,UAAY,OAClB,EAAY,YAAY,CAAK,EAE7B,IAAM,EAAY,SAAS,cAAc,KAAK,EAC9C,EAAU,UAAU,IAAI,YAAY,EACpC,EAAY,YAAY,CAAS,EAEjC,IAAM,EAAiB,SAAS,cAAc,GAAG,EAMjD,OALA,EAAe,UAAU,IAAI,iBAAiB,EAC9C,EAAe,KAAO,OAAO,SAAS,SAAS,KAAO,UACtD,EAAe,UAAY,QAAQ,EAAK,UACxC,EAAU,YAAY,CAAc,EAE7B,CACT,CAEA,SAAS,EAAa,EAAa,EAA2B,CAC5D,IAAM,EAAc,SAAS,cAAc,GAAG,EAC9C,EAAY,KAAO,EACnB,EAAY,UAAY,EAExB,IAAM,EAAkB,SAAS,cAAc,MAAM,EACrD,EAAgB,UAAY,aAE5B,IAAM,EAAQ,SAAS,cAAc,IAAI,EAIzC,OAHA,EAAM,YAAY,CAAW,EAC7B,EAAM,YAAY,CAAe,EAE1B,CACT"}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { getName as e, loadProfileFromURI as t } from "../utils/webIdUtils.esm.js";
|
|
2
|
-
//#region src/dashboard/homepage.ts
|
|
3
|
-
async function n(n, a, o) {
|
|
4
|
-
let s = await t(n), c = e(a, s), l = document.createElement("div");
|
|
5
|
-
return l.classList.add("container"), l.appendChild(i(s.uri, c)), l.appendChild(r(c)), l;
|
|
6
|
-
}
|
|
7
|
-
function r(e) {
|
|
8
|
-
let t = document.createElement("section"), n = document.createElement("h2");
|
|
9
|
-
n.innerText = "Data", t.appendChild(n);
|
|
10
|
-
let r = document.createElement("div");
|
|
11
|
-
r.classList.add("list-group"), t.appendChild(r);
|
|
12
|
-
let i = document.createElement("a");
|
|
13
|
-
return i.classList.add("list-group-item"), i.href = window.document.location.href + "public/", i.innerText = `View ${e}'s files`, r.appendChild(i), t;
|
|
14
|
-
}
|
|
15
|
-
function i(e, t) {
|
|
16
|
-
let n = document.createElement("a");
|
|
17
|
-
n.href = e, n.innerText = t;
|
|
18
|
-
let r = document.createElement("span");
|
|
19
|
-
r.innerText = "'s Profile";
|
|
20
|
-
let i = document.createElement("h1");
|
|
21
|
-
return i.appendChild(n), i.appendChild(r), i;
|
|
22
|
-
}
|
|
23
|
-
//#endregion
|
|
24
|
-
export { n as generateHomepage };
|
|
25
|
-
|
|
26
|
-
//# sourceMappingURL=homepage.esm.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"homepage.esm.js","names":[],"sources":["../../src/dashboard/homepage.ts"],"sourcesContent":["import { Fetcher, IndexedFormula, NamedNode } from 'rdflib'\nimport { loadProfileFromURI, getName } from '../utils/webIdUtils'\n\nexport async function generateHomepage (\n uri: NamedNode,\n store: IndexedFormula,\n fetcher: Fetcher\n): Promise<HTMLElement> {\n const ownersProfile = await loadProfileFromURI(uri)\n const name = getName(store, ownersProfile)\n\n const wrapper = document.createElement('div')\n wrapper.classList.add('container')\n wrapper.appendChild(createTitle(ownersProfile.uri, name))\n wrapper.appendChild(createDataSection(name))\n\n return wrapper\n}\n\nfunction createDataSection (name: string): HTMLElement {\n const dataSection = document.createElement('section')\n\n const title = document.createElement('h2')\n title.innerText = 'Data'\n dataSection.appendChild(title)\n\n const listGroup = document.createElement('div')\n listGroup.classList.add('list-group')\n dataSection.appendChild(listGroup)\n\n const publicDataLink = document.createElement('a')\n publicDataLink.classList.add('list-group-item')\n publicDataLink.href = window.document.location.href + 'public/'\n publicDataLink.innerText = `View ${name}'s files`\n listGroup.appendChild(publicDataLink)\n\n return dataSection\n}\n\nfunction createTitle (uri: string, name: string): HTMLElement {\n const profileLink = document.createElement('a')\n profileLink.href = uri\n profileLink.innerText = name\n\n const profileLinkPost = document.createElement('span')\n profileLinkPost.innerText = '\\'s Profile'\n\n const title = document.createElement('h1')\n title.appendChild(profileLink)\n title.appendChild(profileLinkPost)\n\n return title\n}\n"],"mappings":";;AAGA,eAAsB,EACpB,GACA,GACA,GACsB;CACtB,IAAM,IAAgB,MAAM,EAAmB,CAAG,GAC5C,IAAO,EAAQ,GAAO,CAAa,GAEnC,IAAU,SAAS,cAAc,KAAK;CAK5C,OAJA,EAAQ,UAAU,IAAI,WAAW,GACjC,EAAQ,YAAY,EAAY,EAAc,KAAK,CAAI,CAAC,GACxD,EAAQ,YAAY,EAAkB,CAAI,CAAC,GAEpC;AACT;AAEA,SAAS,EAAmB,GAA2B;CACrD,IAAM,IAAc,SAAS,cAAc,SAAS,GAE9C,IAAQ,SAAS,cAAc,IAAI;CAEzC,AADA,EAAM,YAAY,QAClB,EAAY,YAAY,CAAK;CAE7B,IAAM,IAAY,SAAS,cAAc,KAAK;CAE9C,AADA,EAAU,UAAU,IAAI,YAAY,GACpC,EAAY,YAAY,CAAS;CAEjC,IAAM,IAAiB,SAAS,cAAc,GAAG;CAMjD,OALA,EAAe,UAAU,IAAI,iBAAiB,GAC9C,EAAe,OAAO,OAAO,SAAS,SAAS,OAAO,WACtD,EAAe,YAAY,QAAQ,EAAK,WACxC,EAAU,YAAY,CAAc,GAE7B;AACT;AAEA,SAAS,EAAa,GAAa,GAA2B;CAC5D,IAAM,IAAc,SAAS,cAAc,GAAG;CAE9C,AADA,EAAY,OAAO,GACnB,EAAY,YAAY;CAExB,IAAM,IAAkB,SAAS,cAAc,MAAM;CACrD,EAAgB,YAAY;CAE5B,IAAM,IAAQ,SAAS,cAAc,IAAI;CAIzC,OAHA,EAAM,YAAY,CAAW,GAC7B,EAAM,YAAY,CAAe,GAE1B;AACT"}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
var e=`@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.
|
|
2
|
-
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.
|
|
3
|
-
@prefix solid: <http://www.w3.org/ns/solid/terms#>.
|
|
4
|
-
@prefix foaf: <http://xmlns.com/foaf/0.1/>.
|
|
5
|
-
@prefix schema: <http:/schema.org/>.
|
|
6
|
-
@prefix ui: <http://www.w3.org/ns/ui#>.
|
|
7
|
-
@prefix vcard: <http://www.w3.org/2006/vcard/ns#>.
|
|
8
|
-
@prefix : <#>.
|
|
9
|
-
|
|
10
|
-
solid:User a rdfs:Class;
|
|
11
|
-
rdfs:label "user"@en, "utilisateur"@fr;
|
|
12
|
-
rdfs:comment """Any person who might use a Solid-based system""";
|
|
13
|
-
rdfs:subClassOf foaf:Person, schema:Person, vcard:Individual.
|
|
14
|
-
|
|
15
|
-
# Since these options are opt-in, it is a bit strange to have new users opt in
|
|
16
|
-
# That they are new users - also we do not use this class for anything specific
|
|
17
|
-
# yet
|
|
18
|
-
# solid:NewUser a rdfs:Class;
|
|
19
|
-
# rdfs:label "new user"@en;
|
|
20
|
-
# rdfs:comment """A person who might use a Solid-based system who has a low
|
|
21
|
-
# level of familiarity with technical details.""";
|
|
22
|
-
# rdfs:subClassOf solid:User.
|
|
23
|
-
|
|
24
|
-
solid:PowerUser a rdfs:Class;
|
|
25
|
-
rdfs:label "power user"@en;
|
|
26
|
-
rdfs:comment """A person who might use a Solid-based system
|
|
27
|
-
who is prepared to be given a more complex interface in order
|
|
28
|
-
to be provided with more pwerful features.""";
|
|
29
|
-
rdfs:subClassOf solid:User.
|
|
30
|
-
|
|
31
|
-
solid:Developer a rdfs:Class;
|
|
32
|
-
rdfs:label "Developer";
|
|
33
|
-
rdfs:comment """Any person who might use a Solid-based system,
|
|
34
|
-
who has software development skills.""";
|
|
35
|
-
rdfs:subClassOf solid:User.
|
|
36
|
-
`;exports.default=e;
|
|
37
|
-
//# sourceMappingURL=ontologyData.cjs.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ontologyData.cjs.js","names":[],"sources":["../../src/dashboard/ontologyData.ttl"],"sourcesContent":["@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.\n@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.\n@prefix solid: <http://www.w3.org/ns/solid/terms#>.\n@prefix foaf: <http://xmlns.com/foaf/0.1/>.\n@prefix schema: <http:/schema.org/>.\n@prefix ui: <http://www.w3.org/ns/ui#>.\n@prefix vcard: <http://www.w3.org/2006/vcard/ns#>.\n@prefix : <#>.\n\nsolid:User a rdfs:Class;\n rdfs:label \"user\"@en, \"utilisateur\"@fr;\n rdfs:comment \"\"\"Any person who might use a Solid-based system\"\"\";\n rdfs:subClassOf foaf:Person, schema:Person, vcard:Individual.\n\n# Since these options are opt-in, it is a bit strange to have new users opt in\n# That they are new users - also we do not use this class for anything specific\n# yet\n# solid:NewUser a rdfs:Class;\n# rdfs:label \"new user\"@en;\n# rdfs:comment \"\"\"A person who might use a Solid-based system who has a low\n# level of familiarity with technical details.\"\"\";\n# rdfs:subClassOf solid:User.\n\nsolid:PowerUser a rdfs:Class;\n rdfs:label \"power user\"@en;\n rdfs:comment \"\"\"A person who might use a Solid-based system\n who is prepared to be given a more complex interface in order\n to be provided with more pwerful features.\"\"\";\n rdfs:subClassOf solid:User.\n\n solid:Developer a rdfs:Class;\n rdfs:label \"Developer\";\n rdfs:comment \"\"\"Any person who might use a Solid-based system,\n who has software development skills.\"\"\";\n rdfs:subClassOf solid:User.\n"],"mappings":"AAAA,IAAA,EAAe"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
//#region src/dashboard/ontologyData.ttl
|
|
2
|
-
var e = "@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.\n@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.\n@prefix solid: <http://www.w3.org/ns/solid/terms#>.\n@prefix foaf: <http://xmlns.com/foaf/0.1/>.\n@prefix schema: <http:/schema.org/>.\n@prefix ui: <http://www.w3.org/ns/ui#>.\n@prefix vcard: <http://www.w3.org/2006/vcard/ns#>.\n@prefix : <#>.\n\nsolid:User a rdfs:Class;\n rdfs:label \"user\"@en, \"utilisateur\"@fr;\n rdfs:comment \"\"\"Any person who might use a Solid-based system\"\"\";\n rdfs:subClassOf foaf:Person, schema:Person, vcard:Individual.\n\n# Since these options are opt-in, it is a bit strange to have new users opt in\n# That they are new users - also we do not use this class for anything specific\n# yet\n# solid:NewUser a rdfs:Class;\n# rdfs:label \"new user\"@en;\n# rdfs:comment \"\"\"A person who might use a Solid-based system who has a low\n# level of familiarity with technical details.\"\"\";\n# rdfs:subClassOf solid:User.\n\nsolid:PowerUser a rdfs:Class;\n rdfs:label \"power user\"@en;\n rdfs:comment \"\"\"A person who might use a Solid-based system\n who is prepared to be given a more complex interface in order\n to be provided with more pwerful features.\"\"\";\n rdfs:subClassOf solid:User.\n\n solid:Developer a rdfs:Class;\n rdfs:label \"Developer\";\n rdfs:comment \"\"\"Any person who might use a Solid-based system,\n who has software development skills.\"\"\";\n rdfs:subClassOf solid:User.\n";
|
|
3
|
-
//#endregion
|
|
4
|
-
export { e as default };
|
|
5
|
-
|
|
6
|
-
//# sourceMappingURL=ontologyData.esm.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ontologyData.esm.js","names":[],"sources":["../../src/dashboard/ontologyData.ttl"],"sourcesContent":["@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.\n@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.\n@prefix solid: <http://www.w3.org/ns/solid/terms#>.\n@prefix foaf: <http://xmlns.com/foaf/0.1/>.\n@prefix schema: <http:/schema.org/>.\n@prefix ui: <http://www.w3.org/ns/ui#>.\n@prefix vcard: <http://www.w3.org/2006/vcard/ns#>.\n@prefix : <#>.\n\nsolid:User a rdfs:Class;\n rdfs:label \"user\"@en, \"utilisateur\"@fr;\n rdfs:comment \"\"\"Any person who might use a Solid-based system\"\"\";\n rdfs:subClassOf foaf:Person, schema:Person, vcard:Individual.\n\n# Since these options are opt-in, it is a bit strange to have new users opt in\n# That they are new users - also we do not use this class for anything specific\n# yet\n# solid:NewUser a rdfs:Class;\n# rdfs:label \"new user\"@en;\n# rdfs:comment \"\"\"A person who might use a Solid-based system who has a low\n# level of familiarity with technical details.\"\"\";\n# rdfs:subClassOf solid:User.\n\nsolid:PowerUser a rdfs:Class;\n rdfs:label \"power user\"@en;\n rdfs:comment \"\"\"A person who might use a Solid-based system\n who is prepared to be given a more complex interface in order\n to be provided with more pwerful features.\"\"\";\n rdfs:subClassOf solid:User.\n\n solid:Developer a rdfs:Class;\n rdfs:label \"Developer\";\n rdfs:comment \"\"\"Any person who might use a Solid-based system,\n who has software development skills.\"\"\";\n rdfs:subClassOf solid:User.\n"],"mappings":";AAAA,IAAA,IAAe"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
var e=`@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.
|
|
2
|
-
@prefix solid: <http://www.w3.org/ns/solid/terms#>.
|
|
3
|
-
@prefix ui: <http://www.w3.org/ns/ui#>.
|
|
4
|
-
@prefix : <#>.
|
|
5
|
-
|
|
6
|
-
:this <http://purl.org/dc/elements/1.1/title> "Basic preferences" ;
|
|
7
|
-
a ui:Form ;
|
|
8
|
-
ui:part :categorizeUser, :privateComment, :personalInformationHeading;
|
|
9
|
-
ui:parts ( :personalInformationHeading :privateComment :categorizeUser ).
|
|
10
|
-
|
|
11
|
-
:personalInformationHeading a ui:Heading;
|
|
12
|
-
ui:contents "Personal information".
|
|
13
|
-
|
|
14
|
-
:privateComment a ui:Comment;
|
|
15
|
-
ui:contents "This information is private.".
|
|
16
|
-
|
|
17
|
-
:categorizeUser a ui:Classifier;
|
|
18
|
-
ui:label "Level of user"; ui:property rdf:type ; ui:category solid:User.
|
|
19
|
-
`;exports.default=e;
|
|
20
|
-
//# sourceMappingURL=preferencesFormText.cjs.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"preferencesFormText.cjs.js","names":[],"sources":["../../src/dashboard/preferencesFormText.ttl"],"sourcesContent":["@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.\n@prefix solid: <http://www.w3.org/ns/solid/terms#>.\n@prefix ui: <http://www.w3.org/ns/ui#>.\n@prefix : <#>.\n\n:this <http://purl.org/dc/elements/1.1/title> \"Basic preferences\" ;\n a ui:Form ;\n ui:part :categorizeUser, :privateComment, :personalInformationHeading;\n ui:parts ( :personalInformationHeading :privateComment :categorizeUser ).\n\n:personalInformationHeading a ui:Heading;\n ui:contents \"Personal information\".\n\n:privateComment a ui:Comment;\n ui:contents \"This information is private.\".\n\n:categorizeUser a ui:Classifier;\n ui:label \"Level of user\"; ui:property rdf:type ; ui:category solid:User.\n"],"mappings":"AAAA,IAAA,EAAe"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
//#region src/dashboard/preferencesFormText.ttl
|
|
2
|
-
var e = "@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.\n@prefix solid: <http://www.w3.org/ns/solid/terms#>.\n@prefix ui: <http://www.w3.org/ns/ui#>.\n@prefix : <#>.\n\n:this <http://purl.org/dc/elements/1.1/title> \"Basic preferences\" ;\n a ui:Form ;\n ui:part :categorizeUser, :privateComment, :personalInformationHeading;\n ui:parts ( :personalInformationHeading :privateComment :categorizeUser ).\n\n:personalInformationHeading a ui:Heading;\n ui:contents \"Personal information\".\n\n:privateComment a ui:Comment;\n ui:contents \"This information is private.\".\n\n:categorizeUser a ui:Classifier;\n ui:label \"Level of user\"; ui:property rdf:type ; ui:category solid:User.\n";
|
|
3
|
-
//#endregion
|
|
4
|
-
export { e as default };
|
|
5
|
-
|
|
6
|
-
//# sourceMappingURL=preferencesFormText.esm.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"preferencesFormText.esm.js","names":[],"sources":["../../src/dashboard/preferencesFormText.ttl"],"sourcesContent":["@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.\n@prefix solid: <http://www.w3.org/ns/solid/terms#>.\n@prefix ui: <http://www.w3.org/ns/ui#>.\n@prefix : <#>.\n\n:this <http://purl.org/dc/elements/1.1/title> \"Basic preferences\" ;\n a ui:Form ;\n ui:part :categorizeUser, :privateComment, :personalInformationHeading;\n ui:parts ( :personalInformationHeading :privateComment :categorizeUser ).\n\n:personalInformationHeading a ui:Heading;\n ui:contents \"Personal information\".\n\n:privateComment a ui:Comment;\n ui:contents \"This information is private.\".\n\n:categorizeUser a ui:Classifier;\n ui:label \"Level of user\"; ui:property rdf:type ; ui:category solid:User.\n"],"mappings":";AAAA,IAAA,IAAe"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
(function(){try{if(typeof document<`u`){var e=document.createElement(`style`);e.appendChild(document.createTextNode(`.data-content-pane__literal{white-space:pre-wrap}div.data-content-pane{border-top:solid 1px var(--color-data-pane-border-top,black);border-left:solid 1px var(--color-data-pane-border-top,black);border-bottom:solid 1px var(--color-data-pane-border-side,#777);border-right:solid 1px var(--color-data-pane-border-side,#777);padding:var(--spacing-base,.5rem);margin-top:var(--spacing-base,.5rem);margin-bottom:var(--spacing-base,.5rem)}div.data-content-pane table.data-content-pane__table{border-collapse:separate;border-spacing:0;width:100%}div.data-content-pane table.data-content-pane__table--root{table-layout:auto}div.data-content-pane .data-content-pane__row--root{align-items:flex-start;display:flex}div.data-content-pane .data-content-pane__row--root>td{vertical-align:top}div.data-content-pane .data-content-pane__subject-cell{flex:none;width:clamp(7rem,12%,10rem);padding-right:.8rem}div.data-content-pane .data-content-pane__details-cell{flex:0 auto;min-width:0}div.data-content-pane .data-content-pane__subject-cell,div.data-content-pane td.data-content-pane__predicate-cell,div.data-content-pane .data-content-pane__row--top-aligned>td:not(.data-content-pane__predicate-cell),div.data-content-pane .data-content-pane__subject-cell a,div.data-content-pane td.data-content-pane__predicate-cell a,div.data-content-pane .data-content-pane__row--top-aligned>td:not(.data-content-pane__predicate-cell) a{white-space:normal;overflow-wrap:anywhere;word-break:break-word}div.data-content-pane table.data-content-pane__table--property{table-layout:auto;width:auto;max-width:100%}.data-content-pane__nested-formula{border-top:solid 1px var(--color-data-pane-border-top,black);border-left:solid 1px var(--color-data-pane-border-top,black);border-bottom:solid 1px var(--color-data-pane-border-side,#777);border-right:solid 1px var(--color-data-pane-border-side,#777);padding:var(--spacing-base,.5rem);border-radius:var(--border-radius-md,.5rem)}div.data-content-pane td{padding-left:var(--spacing-xxxs,.2rem);padding-top:var(--spacing-small,.1rem);padding-right:var(--spacing-xxxs,.2rem);vertical-align:top;padding-bottom:.05rem}div.data-content-pane table.data-content-pane__table--property td{padding-top:.3rem;padding-bottom:.3rem}div.data-content-pane tr{margin-bottom:var(--spacing-2xs,.625rem);padding-top:var(--spacing-small,.1rem);padding-bottom:var(--spacing-small,.1rem)}.data-content-pane a,.data-content-pane a:link{color:var(--color-text-link,#3b5998);font-weight:700;text-decoration:none}.data-content-pane a:visited{color:var(--color-text-link-visited,#3b5998);font-weight:700;text-decoration:none}.data-content-pane a:hover{color:var(--color-text-link-hover,#3b5998);font-weight:700;text-decoration:underline}.data-content-pane a:active{color:var(--color-text-link-active,#888);text-decoration:none}.data-content-pane.embeddedText{white-space:pre-wrap}div.data-content-pane td.data-content-pane__predicate-cell{width:clamp(8.5rem,18vw,12rem);min-width:8.5rem;max-width:12rem;padding-right:var(--spacing-base,.5rem)}div.data-content-pane .data-content-pane__row--top-aligned>td:not(.data-content-pane__predicate-cell){padding-left:var(--spacing-xxs,.3125rem)}div.data-content-pane td.data-content-pane__predicate-cell a{color:var(--color-text-muted,#444)}.data-content-pane__row--even{background-color:var(--color-background-row-alternate,#f0f0f0)}.data-content-pane__row--odd{background-color:var(--color-background-row-default,white)}.data-content-pane__row--top-aligned{vertical-align:top;margin-top:0;margin-bottom:0;padding-top:0;padding-bottom:0}.data-content-pane__nested-table--light{background-color:var(--color-background-row-default,white)}.data-content-pane__nested-table--dark{background-color:var(--color-background-row-alternate,#f0f0f0)}div.data-content-pane[data-layout=mobile] .data-content-pane__row--root{padding-bottom:var(--spacing-xs,.75rem);align-items:flex-start;display:flex}div.data-content-pane[data-layout=mobile] .data-content-pane__subject-cell{box-sizing:border-box;width:40%;max-width:40%;padding-right:var(--spacing-xs,.75rem);flex:0 0 40%;padding-bottom:0}div.data-content-pane[data-layout=mobile] .data-content-pane__details-cell{box-sizing:border-box;flex:0 0 60%;width:60%;min-width:0;max-width:60%}div.data-content-pane[data-layout=mobile] table.data-content-pane__table--property>tbody>tr,div.data-content-pane[data-layout=mobile] table.data-content-pane__table--property>tr{margin-bottom:0}div.data-content-pane[data-layout=mobile] .data-content-pane__row--top-aligned+.data-content-pane__row--top-aligned{margin-top:0}div.data-content-pane[data-layout=mobile] .data-content-pane__row--top-aligned{margin-bottom:0;padding-top:0;padding-bottom:0;display:block}div.data-content-pane[data-layout=mobile] table.data-content-pane__table--property,div.data-content-pane[data-layout=mobile] table.data-content-pane__table--property>tbody{width:100%;display:block}div.data-content-pane[data-layout=mobile] table.data-content-pane__table--property td{box-sizing:border-box;width:100%;display:block}div.data-content-pane[data-layout=mobile] table.data-content-pane__table--property td.data-content-pane__predicate-cell{width:100%;min-width:0;padding-bottom:.1rem}div.data-content-pane[data-layout=mobile] table.data-content-pane__table--property td:not(.data-content-pane__predicate-cell){padding-top:0;padding-left:.85rem}@media (width<=700px){div.data-content-pane .data-content-pane__row--root{align-items:flex-start;display:flex}div.data-content-pane .data-content-pane__subject-cell{width:40%;max-width:40%;padding-right:var(--spacing-xs,.75rem);box-sizing:border-box;flex:0 0 40%;padding-bottom:0}div.data-content-pane .data-content-pane__details-cell{box-sizing:border-box;flex:0 0 60%;width:60%;max-width:60%}div.data-content-pane .data-content-pane__row--top-aligned{margin-top:0;margin-bottom:0;padding-top:0;padding-bottom:0;display:block}div.data-content-pane .data-content-pane__row--top-aligned>td{box-sizing:border-box;width:100%;display:block}div.data-content-pane .data-content-pane__row--top-aligned>td.data-content-pane__predicate-cell{width:100%;min-width:0;max-width:none;padding-bottom:var(--spacing-small,.1rem)}div.data-content-pane .data-content-pane__row--top-aligned>td:not(.data-content-pane__predicate-cell){padding-top:0;padding-left:.85rem}}`)),document.head.appendChild(e)}}catch(e){console.error(`vite-plugin-css-injected-by-js`,e)}})();const e=require("./_virtual/_rolldown/runtime.cjs.js");;let t=require("solid-ui");t=e.__toESM(t);let n=require("rdflib");n=e.__toESM(n);let r=require("dompurify");r=e.__toESM(r);var i=t.ns,a={icon:t.icons.originalIconBase+`rdf_flyer.24.gif`,name:`dataContents`,audience:[i.solid(`Developer`)],label:function(e,t){if(`http://www.w3.org/2007/ont/link#ProtocolEvent`in t.session.store.findTypeURIs(e))return null;let n=t.session.store.statementsMatching(void 0,void 0,void 0,e).length;return n===0?null:`Data (`+n+`)`},statementsAsTables:function(e,i,a){let o=i.dom,s=o.createElement(`table`);s.classList.add(`data-content-pane__table`,`data-content-pane__table--root`);let c=i.environment?.layout===`mobile`,l=n.Serializer(i.session.store),u=l.rootSubjects(e),d=u.roots,f=u.subjects,p=u.loopBreakers??{};for(let e in p)console.log(` dataContentPane: loopbreaker:`+e);let m={},h={};function g(e,n=0){let r=o.createElement(`table`);r.classList.add(`data-content-pane__table`,`data-content-pane__table--property`);let i=null,a=f[l.toStr(e)];if(!a)return r.appendChild(o.createTextNode(`...`)),r;a.sort();let s=0,u;for(let e=0;e<a.length;e++){let l=a[e],d=o.createElement(`tr`);if(d.classList.add(`data-content-pane__row--top-aligned`,`data-content-pane__row--property`),l.predicate.uri!==i||c){!c&&i&&s>1&&u?.setAttribute(`rowspan`,``+s),u=o.createElement(`td`),u.setAttribute(`class`,`data-content-pane__predicate-cell`);let e=o.createElement(`a`);e.setAttribute(`href`,l.predicate.uri),e.addEventListener(`click`,t.widgets.openHrefInOutlineMode,!0),e.appendChild(o.createTextNode(t.utils.predicateLabelForXML(l.predicate))),u.appendChild(e),d.appendChild(u),i=l.predicate.uri,s=0}s++;let f=o.createElement(`td`);f.classList.add(`data-content-pane__value-cell`),f.appendChild(_(l.object,n+1)),d.appendChild(f),r.appendChild(d)}return!c&&i&&s>1&&u?.setAttribute(`rowspan`,``+s),r}function _(e,n=0){let a,s;switch(e.termType){case`NamedNode`:return s=o.createElement(`a`),s.setAttribute(`href`,e.uri),s.addEventListener(`click`,t.widgets.openHrefInOutlineMode,!0),s.appendChild(o.createTextNode(t.utils.label(e))),s;case`Literal`:return!e.datatype||!e.datatype.uri?(a=o.createElement(`div`),a.classList.add(`data-content-pane__literal`),a.textContent=e.value,a):e.datatype.uri===`http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral`?(a=o.createElement(`div`),a.classList.add(`embeddedXHTML`),a.innerHTML=r.default.sanitize(e.value),a):o.createTextNode(e.value);case`BlankNode`:{if(e.toNT()in m){h[e.toNT()]=!0;let t=o.createElement(`a`);return t.setAttribute(`href`,`#`+e.toNT().slice(2)),t.setAttribute(`class`,`bnodeRef`),t.textContent=`*`+e.toNT().slice(3),t}m[e.toNT()]=!0;let t=g(e,n);return m[e.toNT()]=t,n%2==1?t.classList.add(`data-content-pane__nested-table--light`):t.classList.add(`data-content-pane__nested-table--dark`),t}case`Collection`:a=o.createElement(`table`),a.setAttribute(`class`,`collectionAsTables`);for(let t=0;t<e.elements.length;t++){let r=o.createElement(`tr`);a.appendChild(r),r.appendChild(_(e.elements[t],n+1))}return a;case`Graph`:return a=i.session.paneRegistry.byName(`dataContents`).statementsAsTables(e.statements,i),a.setAttribute(`class`,`data-content-pane__nested-formula`),a;case`Variable`:return o.createTextNode(`?`+e.uri)}throw Error(`Unhandled node type: `+e.termType)}a&&(d=a.concat(d.filter(function(e){for(let t=0;t<a.length;t++)if(e.sameTerm(a[t]))return!1;return!0})));for(let e=0;e<d.length;e++){let n=o.createElement(`tr`);n.classList.add(e%2==0?`data-content-pane__row--even`:`data-content-pane__row--odd`,`data-content-pane__row--root`),s.appendChild(n);let r=o.createElement(`td`);r.classList.add(`data-content-pane__subject-cell`),n.appendChild(r);let i=o.createElement(`td`);i.classList.add(`data-content-pane__details-cell`),n.appendChild(i);let a=d[e];a.termType===`BlankNode`?r.appendChild(o.createTextNode(t.utils.label(a))):r.appendChild(_(a,0)),i.appendChild(g(a,0))}for(let e in h){let t=m[e];if(t===!0)continue;let n=o.createElement(`a`);n.setAttribute(`id`,e.slice(2)),n.setAttribute(`class`,`bnodeDef`),n.textContent=e.slice(3)+`)`,t.insertBefore(n,t.firstChild)}return s},render:function(e,n){let r=n.dom;function i(e){let t=n.environment??{};e.dataset.layout=t.layout??`desktop`,e.dataset.theme=t.theme??`light`,e.dataset.inputMode=t.inputMode??`pointer`}function a(){let r=n.session.store,i=r.statementsMatching(void 0,void 0,void 0,e),a=[];r.holds(e,void 0,void 0,e)&&a.push(e);let s=r.any(e,t.ns.foaf(`primaryTopic`),void 0,e);s&&(s.termType===`NamedNode`||s.termType===`BlankNode`)&&a.push(s),o.appendChild(n.session.paneRegistry.byName(`dataContents`).statementsAsTables(i,n,a))}let o=r.createElement(`div`);return o.classList.add(`dataContentPane`,`data-content-pane`),i(o),a(),o}};exports.dataContentPane=a;
|
|
2
|
-
//# sourceMappingURL=dataContentPane2.cjs.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dataContentPane2.cjs.js","names":[],"sources":["../src/dataContentPane.ts"],"sourcesContent":["/* Data content Pane\n **\n ** This pane shows the content of a particular RDF resource\n ** or at least the RDF semantics we attribute to that resource.\n */\n\n// To do: - Only take data from one graph\n// - Only do forwards not backward?\n// - Expand automatically all the way down\n// - original source view? Use ffox view source\n\nimport * as UI from 'solid-ui'\nimport * as $rdf from 'rdflib'\nimport DOMPurify from 'dompurify'\nimport type { DataBrowserContext, RenderEnvironment } from 'pane-registry'\nimport type {\n BlankNode,\n Formula,\n NamedNode,\n Statement\n} from 'rdflib'\nimport './dataContentPane.css'\n\nconst ns = UI.ns\n\ntype SubjectTerm = NamedNode | BlankNode\ntype ObjectTerm = Statement['object'] | Formula\n\ntype RootSubjectsResult = {\n roots: SubjectTerm[]\n subjects: Record<string, Statement[]>\n loopBreakers?: Record<string, unknown>\n}\n\ntype DataContentPaneLike = {\n statementsAsTables: (\n sts: Statement[],\n context: DataBrowserContext,\n initialRoots?: SubjectTerm[]\n ) => HTMLTableElement\n}\n\nexport const dataContentPane = {\n icon: UI.icons.originalIconBase + 'rdf_flyer.24.gif',\n\n name: 'dataContents',\n\n audience: [ns.solid('Developer')],\n\n label: function (subject: NamedNode, context: DataBrowserContext) {\n if (\n 'http://www.w3.org/2007/ont/link#ProtocolEvent' in\n context.session.store.findTypeURIs(subject)\n ) {\n return null\n }\n const n = context.session.store.statementsMatching(\n undefined,\n undefined,\n undefined,\n subject\n ).length\n if (n === 0) return null\n return 'Data (' + n + ')'\n },\n /*\n shouldGetFocus: function(subject) {\n return store.whether(subject, UI.ns.rdf('type'), UI.ns.link('RDFDocument'))\n },\n*/\n statementsAsTables: function statementsAsTables (\n sts: Statement[],\n context: DataBrowserContext,\n initialRoots?: SubjectTerm[]\n ): HTMLTableElement {\n const myDocument = context.dom\n // const outliner = context.getOutliner(myDocument)\n const rep = myDocument.createElement('table')\n rep.classList.add('data-content-pane__table', 'data-content-pane__table--root')\n const isMobileLayout = context.environment?.layout === 'mobile'\n const sz = $rdf.Serializer(context.session.store)\n const res = sz.rootSubjects(sts) as RootSubjectsResult\n let roots = res.roots\n const subjects = res.subjects\n const loopBreakers = res.loopBreakers ?? {}\n for (const x in loopBreakers) {\n console.log('\\tdataContentPane: loopbreaker:' + x)\n }\n const doneBnodes: Record<string, true | HTMLTableElement> = {}\n const referencedBnodes: Record<string, true> = {}\n\n function propertyTree (\n subject: SubjectTerm,\n nestingLevel = 0\n ): HTMLTableElement {\n const rep = myDocument.createElement('table')\n rep.classList.add('data-content-pane__table', 'data-content-pane__table--property')\n let lastPred: string | null = null\n const subjectStatements = subjects[sz.toStr(subject)]\n if (!subjectStatements) {\n rep.appendChild(myDocument.createTextNode('...'))\n return rep\n }\n subjectStatements.sort()\n let same = 0\n let predicateTD: HTMLTableCellElement | undefined\n for (let i = 0; i < subjectStatements.length; i++) {\n const st = subjectStatements[i]\n const tr = myDocument.createElement('tr')\n tr.classList.add('data-content-pane__row--top-aligned', 'data-content-pane__row--property')\n if (st.predicate.uri !== lastPred || isMobileLayout) {\n if (!isMobileLayout && lastPred && same > 1) {\n predicateTD?.setAttribute('rowspan', '' + same)\n }\n predicateTD = myDocument.createElement('td')\n predicateTD.setAttribute('class', 'data-content-pane__predicate-cell')\n const anchor = myDocument.createElement('a')\n anchor.setAttribute('href', st.predicate.uri)\n anchor.addEventListener(\n 'click',\n UI.widgets.openHrefInOutlineMode,\n true\n )\n anchor.appendChild(\n myDocument.createTextNode(\n UI.utils.predicateLabelForXML(st.predicate)\n )\n )\n predicateTD.appendChild(anchor)\n tr.appendChild(predicateTD)\n lastPred = st.predicate.uri\n same = 0\n }\n same++\n const objectTD = myDocument.createElement('td')\n objectTD.classList.add('data-content-pane__value-cell')\n objectTD.appendChild(objectTree(st.object, nestingLevel + 1))\n tr.appendChild(objectTD)\n rep.appendChild(tr)\n }\n if (!isMobileLayout && lastPred && same > 1) {\n predicateTD?.setAttribute('rowspan', '' + same)\n }\n return rep\n }\n\n function objectTree (obj: ObjectTerm, nestingLevel = 0): Node {\n let res: HTMLElement | HTMLTableElement | Text\n let anchor: HTMLAnchorElement\n switch (obj.termType) {\n case 'NamedNode':\n anchor = myDocument.createElement('a')\n anchor.setAttribute('href', obj.uri)\n anchor.addEventListener(\n 'click',\n UI.widgets.openHrefInOutlineMode,\n true\n )\n anchor.appendChild(myDocument.createTextNode(UI.utils.label(obj)))\n return anchor\n\n case 'Literal':\n if (!obj.datatype || !obj.datatype.uri) {\n res = myDocument.createElement('div')\n res.classList.add('data-content-pane__literal')\n res.textContent = obj.value\n return res\n } else if (\n obj.datatype.uri ===\n 'http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral'\n ) {\n res = myDocument.createElement('div')\n res.classList.add('embeddedXHTML')\n res.innerHTML = DOMPurify.sanitize(obj.value)\n return res\n }\n return myDocument.createTextNode(obj.value)\n\n case 'BlankNode': {\n if (obj.toNT() in doneBnodes) {\n referencedBnodes[obj.toNT()] = true\n const referenceAnchor = myDocument.createElement('a')\n referenceAnchor.setAttribute('href', '#' + obj.toNT().slice(2))\n referenceAnchor.setAttribute('class', 'bnodeRef')\n referenceAnchor.textContent = '*' + obj.toNT().slice(3)\n return referenceAnchor\n }\n doneBnodes[obj.toNT()] = true\n const newTable = propertyTree(obj, nestingLevel)\n doneBnodes[obj.toNT()] = newTable\n if (nestingLevel % 2 === 1) {\n newTable.classList.add('data-content-pane__nested-table--light')\n } else {\n newTable.classList.add('data-content-pane__nested-table--dark')\n }\n return newTable\n }\n\n case 'Collection':\n res = myDocument.createElement('table')\n res.setAttribute('class', 'collectionAsTables')\n for (let i = 0; i < obj.elements.length; i++) {\n const tr = myDocument.createElement('tr')\n res.appendChild(tr)\n tr.appendChild(objectTree(obj.elements[i] as ObjectTerm, nestingLevel + 1))\n }\n return res\n\n case 'Graph':\n res = (context.session.paneRegistry\n .byName('dataContents') as DataContentPaneLike)\n .statementsAsTables(obj.statements, context)\n res.setAttribute('class', 'data-content-pane__nested-formula')\n return res\n\n case 'Variable':\n return myDocument.createTextNode('?' + obj.uri)\n }\n throw new Error('Unhandled node type: ' + obj.termType)\n }\n\n if (initialRoots) {\n roots = initialRoots.concat(\n roots.filter(function (x: SubjectTerm) {\n for (let i = 0; i < initialRoots.length; i++) {\n if (x.sameTerm(initialRoots[i])) return false\n }\n return true\n })\n )\n }\n for (let i = 0; i < roots.length; i++) {\n const tr = myDocument.createElement('tr')\n tr.classList.add(\n i % 2 === 0 ? 'data-content-pane__row--even' : 'data-content-pane__row--odd',\n 'data-content-pane__row--root'\n )\n rep.appendChild(tr)\n const subjectTD = myDocument.createElement('td')\n subjectTD.classList.add('data-content-pane__subject-cell')\n tr.appendChild(subjectTD)\n const TDTree = myDocument.createElement('td')\n TDTree.classList.add('data-content-pane__details-cell')\n tr.appendChild(TDTree)\n const root = roots[i]\n if (root.termType === 'BlankNode') {\n subjectTD.appendChild(myDocument.createTextNode(UI.utils.label(root)))\n } else {\n subjectTD.appendChild(objectTree(root, 0))\n }\n TDTree.appendChild(propertyTree(root, 0))\n }\n for (const bNT in referencedBnodes) {\n const table = doneBnodes[bNT]\n if (table === true) continue\n const anchor = myDocument.createElement('a')\n anchor.setAttribute('id', bNT.slice(2))\n anchor.setAttribute('class', 'bnodeDef')\n anchor.textContent = bNT.slice(3) + ')'\n table.insertBefore(anchor, table.firstChild)\n }\n return rep\n },\n\n render: function (\n subject: NamedNode,\n context: DataBrowserContext\n ): HTMLDivElement {\n const myDocument = context.dom\n\n function applyEnvironmentAttributes (element: HTMLDivElement): void {\n const environment = (context.environment ?? {}) as Partial<RenderEnvironment>\n element.dataset.layout = environment.layout ?? 'desktop'\n element.dataset.theme = environment.theme ?? 'light'\n element.dataset.inputMode = environment.inputMode ?? 'pointer'\n }\n\n function mainRendering () {\n const kb = context.session.store\n const sts = kb.statementsMatching(undefined, undefined, undefined, subject)\n const initialRoots: SubjectTerm[] = []\n if (kb.holds(subject, undefined, undefined, subject)) {\n initialRoots.push(subject)\n }\n const ps = kb.any(subject, UI.ns.foaf('primaryTopic'), undefined, subject)\n if (ps && (ps.termType === 'NamedNode' || ps.termType === 'BlankNode')) {\n initialRoots.push(ps as SubjectTerm)\n }\n\n div.appendChild(\n context.session.paneRegistry\n .byName('dataContents')\n .statementsAsTables(sts, context, initialRoots)\n )\n }\n\n const div = myDocument.createElement('div')\n div.classList.add('dataContentPane', 'data-content-pane')\n applyEnvironmentAttributes(div)\n\n mainRendering()\n return div\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
(function(){try{if(typeof document<`u`){var e=document.createElement(`style`);e.appendChild(document.createTextNode(`.data-content-pane__literal{white-space:pre-wrap}div.data-content-pane{border-top:solid 1px var(--color-data-pane-border-top,black);border-left:solid 1px var(--color-data-pane-border-top,black);border-bottom:solid 1px var(--color-data-pane-border-side,#777);border-right:solid 1px var(--color-data-pane-border-side,#777);padding:var(--spacing-base,.5rem);margin-top:var(--spacing-base,.5rem);margin-bottom:var(--spacing-base,.5rem)}div.data-content-pane table.data-content-pane__table{border-collapse:separate;border-spacing:0;width:100%}div.data-content-pane table.data-content-pane__table--root{table-layout:auto}div.data-content-pane .data-content-pane__row--root{align-items:flex-start;display:flex}div.data-content-pane .data-content-pane__row--root>td{vertical-align:top}div.data-content-pane .data-content-pane__subject-cell{flex:none;width:clamp(7rem,12%,10rem);padding-right:.8rem}div.data-content-pane .data-content-pane__details-cell{flex:0 auto;min-width:0}div.data-content-pane .data-content-pane__subject-cell,div.data-content-pane td.data-content-pane__predicate-cell,div.data-content-pane .data-content-pane__row--top-aligned>td:not(.data-content-pane__predicate-cell),div.data-content-pane .data-content-pane__subject-cell a,div.data-content-pane td.data-content-pane__predicate-cell a,div.data-content-pane .data-content-pane__row--top-aligned>td:not(.data-content-pane__predicate-cell) a{white-space:normal;overflow-wrap:anywhere;word-break:break-word}div.data-content-pane table.data-content-pane__table--property{table-layout:auto;width:auto;max-width:100%}.data-content-pane__nested-formula{border-top:solid 1px var(--color-data-pane-border-top,black);border-left:solid 1px var(--color-data-pane-border-top,black);border-bottom:solid 1px var(--color-data-pane-border-side,#777);border-right:solid 1px var(--color-data-pane-border-side,#777);padding:var(--spacing-base,.5rem);border-radius:var(--border-radius-md,.5rem)}div.data-content-pane td{padding-left:var(--spacing-xxxs,.2rem);padding-top:var(--spacing-small,.1rem);padding-right:var(--spacing-xxxs,.2rem);vertical-align:top;padding-bottom:.05rem}div.data-content-pane table.data-content-pane__table--property td{padding-top:.3rem;padding-bottom:.3rem}div.data-content-pane tr{margin-bottom:var(--spacing-2xs,.625rem);padding-top:var(--spacing-small,.1rem);padding-bottom:var(--spacing-small,.1rem)}.data-content-pane a,.data-content-pane a:link{color:var(--color-text-link,#3b5998);font-weight:700;text-decoration:none}.data-content-pane a:visited{color:var(--color-text-link-visited,#3b5998);font-weight:700;text-decoration:none}.data-content-pane a:hover{color:var(--color-text-link-hover,#3b5998);font-weight:700;text-decoration:underline}.data-content-pane a:active{color:var(--color-text-link-active,#888);text-decoration:none}.data-content-pane.embeddedText{white-space:pre-wrap}div.data-content-pane td.data-content-pane__predicate-cell{width:clamp(8.5rem,18vw,12rem);min-width:8.5rem;max-width:12rem;padding-right:var(--spacing-base,.5rem)}div.data-content-pane .data-content-pane__row--top-aligned>td:not(.data-content-pane__predicate-cell){padding-left:var(--spacing-xxs,.3125rem)}div.data-content-pane td.data-content-pane__predicate-cell a{color:var(--color-text-muted,#444)}.data-content-pane__row--even{background-color:var(--color-background-row-alternate,#f0f0f0)}.data-content-pane__row--odd{background-color:var(--color-background-row-default,white)}.data-content-pane__row--top-aligned{vertical-align:top;margin-top:0;margin-bottom:0;padding-top:0;padding-bottom:0}.data-content-pane__nested-table--light{background-color:var(--color-background-row-default,white)}.data-content-pane__nested-table--dark{background-color:var(--color-background-row-alternate,#f0f0f0)}div.data-content-pane[data-layout=mobile] .data-content-pane__row--root{padding-bottom:var(--spacing-xs,.75rem);align-items:flex-start;display:flex}div.data-content-pane[data-layout=mobile] .data-content-pane__subject-cell{box-sizing:border-box;width:40%;max-width:40%;padding-right:var(--spacing-xs,.75rem);flex:0 0 40%;padding-bottom:0}div.data-content-pane[data-layout=mobile] .data-content-pane__details-cell{box-sizing:border-box;flex:0 0 60%;width:60%;min-width:0;max-width:60%}div.data-content-pane[data-layout=mobile] table.data-content-pane__table--property>tbody>tr,div.data-content-pane[data-layout=mobile] table.data-content-pane__table--property>tr{margin-bottom:0}div.data-content-pane[data-layout=mobile] .data-content-pane__row--top-aligned+.data-content-pane__row--top-aligned{margin-top:0}div.data-content-pane[data-layout=mobile] .data-content-pane__row--top-aligned{margin-bottom:0;padding-top:0;padding-bottom:0;display:block}div.data-content-pane[data-layout=mobile] table.data-content-pane__table--property,div.data-content-pane[data-layout=mobile] table.data-content-pane__table--property>tbody{width:100%;display:block}div.data-content-pane[data-layout=mobile] table.data-content-pane__table--property td{box-sizing:border-box;width:100%;display:block}div.data-content-pane[data-layout=mobile] table.data-content-pane__table--property td.data-content-pane__predicate-cell{width:100%;min-width:0;padding-bottom:.1rem}div.data-content-pane[data-layout=mobile] table.data-content-pane__table--property td:not(.data-content-pane__predicate-cell){padding-top:0;padding-left:.85rem}@media (width<=700px){div.data-content-pane .data-content-pane__row--root{align-items:flex-start;display:flex}div.data-content-pane .data-content-pane__subject-cell{width:40%;max-width:40%;padding-right:var(--spacing-xs,.75rem);box-sizing:border-box;flex:0 0 40%;padding-bottom:0}div.data-content-pane .data-content-pane__details-cell{box-sizing:border-box;flex:0 0 60%;width:60%;max-width:60%}div.data-content-pane .data-content-pane__row--top-aligned{margin-top:0;margin-bottom:0;padding-top:0;padding-bottom:0;display:block}div.data-content-pane .data-content-pane__row--top-aligned>td{box-sizing:border-box;width:100%;display:block}div.data-content-pane .data-content-pane__row--top-aligned>td.data-content-pane__predicate-cell{width:100%;min-width:0;max-width:none;padding-bottom:var(--spacing-small,.1rem)}div.data-content-pane .data-content-pane__row--top-aligned>td:not(.data-content-pane__predicate-cell){padding-top:0;padding-left:.85rem}}`)),document.head.appendChild(e)}}catch(e){console.error(`vite-plugin-css-injected-by-js`,e)}})();
|
|
2
|
-
import * as e from "solid-ui";
|
|
3
|
-
import * as t from "rdflib";
|
|
4
|
-
import n from "dompurify";
|
|
5
|
-
//#region src/dataContentPane.ts
|
|
6
|
-
var r = e.ns, i = {
|
|
7
|
-
icon: e.icons.originalIconBase + "rdf_flyer.24.gif",
|
|
8
|
-
name: "dataContents",
|
|
9
|
-
audience: [r.solid("Developer")],
|
|
10
|
-
label: function(e, t) {
|
|
11
|
-
if ("http://www.w3.org/2007/ont/link#ProtocolEvent" in t.session.store.findTypeURIs(e)) return null;
|
|
12
|
-
let n = t.session.store.statementsMatching(void 0, void 0, void 0, e).length;
|
|
13
|
-
return n === 0 ? null : "Data (" + n + ")";
|
|
14
|
-
},
|
|
15
|
-
statementsAsTables: function(r, i, a) {
|
|
16
|
-
let o = i.dom, s = o.createElement("table");
|
|
17
|
-
s.classList.add("data-content-pane__table", "data-content-pane__table--root");
|
|
18
|
-
let c = i.environment?.layout === "mobile", l = t.Serializer(i.session.store), u = l.rootSubjects(r), d = u.roots, f = u.subjects, p = u.loopBreakers ?? {};
|
|
19
|
-
for (let e in p) console.log(" dataContentPane: loopbreaker:" + e);
|
|
20
|
-
let m = {}, h = {};
|
|
21
|
-
function g(t, n = 0) {
|
|
22
|
-
let r = o.createElement("table");
|
|
23
|
-
r.classList.add("data-content-pane__table", "data-content-pane__table--property");
|
|
24
|
-
let i = null, a = f[l.toStr(t)];
|
|
25
|
-
if (!a) return r.appendChild(o.createTextNode("...")), r;
|
|
26
|
-
a.sort();
|
|
27
|
-
let s = 0, u;
|
|
28
|
-
for (let t = 0; t < a.length; t++) {
|
|
29
|
-
let l = a[t], d = o.createElement("tr");
|
|
30
|
-
if (d.classList.add("data-content-pane__row--top-aligned", "data-content-pane__row--property"), l.predicate.uri !== i || c) {
|
|
31
|
-
!c && i && s > 1 && u?.setAttribute("rowspan", "" + s), u = o.createElement("td"), u.setAttribute("class", "data-content-pane__predicate-cell");
|
|
32
|
-
let t = o.createElement("a");
|
|
33
|
-
t.setAttribute("href", l.predicate.uri), t.addEventListener("click", e.widgets.openHrefInOutlineMode, !0), t.appendChild(o.createTextNode(e.utils.predicateLabelForXML(l.predicate))), u.appendChild(t), d.appendChild(u), i = l.predicate.uri, s = 0;
|
|
34
|
-
}
|
|
35
|
-
s++;
|
|
36
|
-
let f = o.createElement("td");
|
|
37
|
-
f.classList.add("data-content-pane__value-cell"), f.appendChild(_(l.object, n + 1)), d.appendChild(f), r.appendChild(d);
|
|
38
|
-
}
|
|
39
|
-
return !c && i && s > 1 && u?.setAttribute("rowspan", "" + s), r;
|
|
40
|
-
}
|
|
41
|
-
function _(t, r = 0) {
|
|
42
|
-
let a, s;
|
|
43
|
-
switch (t.termType) {
|
|
44
|
-
case "NamedNode": return s = o.createElement("a"), s.setAttribute("href", t.uri), s.addEventListener("click", e.widgets.openHrefInOutlineMode, !0), s.appendChild(o.createTextNode(e.utils.label(t))), s;
|
|
45
|
-
case "Literal": return !t.datatype || !t.datatype.uri ? (a = o.createElement("div"), a.classList.add("data-content-pane__literal"), a.textContent = t.value, a) : t.datatype.uri === "http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral" ? (a = o.createElement("div"), a.classList.add("embeddedXHTML"), a.innerHTML = n.sanitize(t.value), a) : o.createTextNode(t.value);
|
|
46
|
-
case "BlankNode": {
|
|
47
|
-
if (t.toNT() in m) {
|
|
48
|
-
h[t.toNT()] = !0;
|
|
49
|
-
let e = o.createElement("a");
|
|
50
|
-
return e.setAttribute("href", "#" + t.toNT().slice(2)), e.setAttribute("class", "bnodeRef"), e.textContent = "*" + t.toNT().slice(3), e;
|
|
51
|
-
}
|
|
52
|
-
m[t.toNT()] = !0;
|
|
53
|
-
let e = g(t, r);
|
|
54
|
-
return m[t.toNT()] = e, r % 2 == 1 ? e.classList.add("data-content-pane__nested-table--light") : e.classList.add("data-content-pane__nested-table--dark"), e;
|
|
55
|
-
}
|
|
56
|
-
case "Collection":
|
|
57
|
-
a = o.createElement("table"), a.setAttribute("class", "collectionAsTables");
|
|
58
|
-
for (let e = 0; e < t.elements.length; e++) {
|
|
59
|
-
let n = o.createElement("tr");
|
|
60
|
-
a.appendChild(n), n.appendChild(_(t.elements[e], r + 1));
|
|
61
|
-
}
|
|
62
|
-
return a;
|
|
63
|
-
case "Graph": return a = i.session.paneRegistry.byName("dataContents").statementsAsTables(t.statements, i), a.setAttribute("class", "data-content-pane__nested-formula"), a;
|
|
64
|
-
case "Variable": return o.createTextNode("?" + t.uri);
|
|
65
|
-
}
|
|
66
|
-
throw Error("Unhandled node type: " + t.termType);
|
|
67
|
-
}
|
|
68
|
-
a && (d = a.concat(d.filter(function(e) {
|
|
69
|
-
for (let t = 0; t < a.length; t++) if (e.sameTerm(a[t])) return !1;
|
|
70
|
-
return !0;
|
|
71
|
-
})));
|
|
72
|
-
for (let t = 0; t < d.length; t++) {
|
|
73
|
-
let n = o.createElement("tr");
|
|
74
|
-
n.classList.add(t % 2 == 0 ? "data-content-pane__row--even" : "data-content-pane__row--odd", "data-content-pane__row--root"), s.appendChild(n);
|
|
75
|
-
let r = o.createElement("td");
|
|
76
|
-
r.classList.add("data-content-pane__subject-cell"), n.appendChild(r);
|
|
77
|
-
let i = o.createElement("td");
|
|
78
|
-
i.classList.add("data-content-pane__details-cell"), n.appendChild(i);
|
|
79
|
-
let a = d[t];
|
|
80
|
-
a.termType === "BlankNode" ? r.appendChild(o.createTextNode(e.utils.label(a))) : r.appendChild(_(a, 0)), i.appendChild(g(a, 0));
|
|
81
|
-
}
|
|
82
|
-
for (let e in h) {
|
|
83
|
-
let t = m[e];
|
|
84
|
-
if (t === !0) continue;
|
|
85
|
-
let n = o.createElement("a");
|
|
86
|
-
n.setAttribute("id", e.slice(2)), n.setAttribute("class", "bnodeDef"), n.textContent = e.slice(3) + ")", t.insertBefore(n, t.firstChild);
|
|
87
|
-
}
|
|
88
|
-
return s;
|
|
89
|
-
},
|
|
90
|
-
render: function(t, n) {
|
|
91
|
-
let r = n.dom;
|
|
92
|
-
function i(e) {
|
|
93
|
-
let t = n.environment ?? {};
|
|
94
|
-
e.dataset.layout = t.layout ?? "desktop", e.dataset.theme = t.theme ?? "light", e.dataset.inputMode = t.inputMode ?? "pointer";
|
|
95
|
-
}
|
|
96
|
-
function a() {
|
|
97
|
-
let r = n.session.store, i = r.statementsMatching(void 0, void 0, void 0, t), a = [];
|
|
98
|
-
r.holds(t, void 0, void 0, t) && a.push(t);
|
|
99
|
-
let s = r.any(t, e.ns.foaf("primaryTopic"), void 0, t);
|
|
100
|
-
s && (s.termType === "NamedNode" || s.termType === "BlankNode") && a.push(s), o.appendChild(n.session.paneRegistry.byName("dataContents").statementsAsTables(i, n, a));
|
|
101
|
-
}
|
|
102
|
-
let o = r.createElement("div");
|
|
103
|
-
return o.classList.add("dataContentPane", "data-content-pane"), i(o), a(), o;
|
|
104
|
-
}
|
|
105
|
-
};
|
|
106
|
-
//#endregion
|
|
107
|
-
export { i as dataContentPane };
|
|
108
|
-
|
|
109
|
-
//# sourceMappingURL=dataContentPane2.esm.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dataContentPane2.esm.js","names":[],"sources":["../src/dataContentPane.ts"],"sourcesContent":["/* Data content Pane\n **\n ** This pane shows the content of a particular RDF resource\n ** or at least the RDF semantics we attribute to that resource.\n */\n\n// To do: - Only take data from one graph\n// - Only do forwards not backward?\n// - Expand automatically all the way down\n// - original source view? Use ffox view source\n\nimport * as UI from 'solid-ui'\nimport * as $rdf from 'rdflib'\nimport DOMPurify from 'dompurify'\nimport type { DataBrowserContext, RenderEnvironment } from 'pane-registry'\nimport type {\n BlankNode,\n Formula,\n NamedNode,\n Statement\n} from 'rdflib'\nimport './dataContentPane.css'\n\nconst ns = UI.ns\n\ntype SubjectTerm = NamedNode | BlankNode\ntype ObjectTerm = Statement['object'] | Formula\n\ntype RootSubjectsResult = {\n roots: SubjectTerm[]\n subjects: Record<string, Statement[]>\n loopBreakers?: Record<string, unknown>\n}\n\ntype DataContentPaneLike = {\n statementsAsTables: (\n sts: Statement[],\n context: DataBrowserContext,\n initialRoots?: SubjectTerm[]\n ) => HTMLTableElement\n}\n\nexport const dataContentPane = {\n icon: UI.icons.originalIconBase + 'rdf_flyer.24.gif',\n\n name: 'dataContents',\n\n audience: [ns.solid('Developer')],\n\n label: function (subject: NamedNode, context: DataBrowserContext) {\n if (\n 'http://www.w3.org/2007/ont/link#ProtocolEvent' in\n context.session.store.findTypeURIs(subject)\n ) {\n return null\n }\n const n = context.session.store.statementsMatching(\n undefined,\n undefined,\n undefined,\n subject\n ).length\n if (n === 0) return null\n return 'Data (' + n + ')'\n },\n /*\n shouldGetFocus: function(subject) {\n return store.whether(subject, UI.ns.rdf('type'), UI.ns.link('RDFDocument'))\n },\n*/\n statementsAsTables: function statementsAsTables (\n sts: Statement[],\n context: DataBrowserContext,\n initialRoots?: SubjectTerm[]\n ): HTMLTableElement {\n const myDocument = context.dom\n // const outliner = context.getOutliner(myDocument)\n const rep = myDocument.createElement('table')\n rep.classList.add('data-content-pane__table', 'data-content-pane__table--root')\n const isMobileLayout = context.environment?.layout === 'mobile'\n const sz = $rdf.Serializer(context.session.store)\n const res = sz.rootSubjects(sts) as RootSubjectsResult\n let roots = res.roots\n const subjects = res.subjects\n const loopBreakers = res.loopBreakers ?? {}\n for (const x in loopBreakers) {\n console.log('\\tdataContentPane: loopbreaker:' + x)\n }\n const doneBnodes: Record<string, true | HTMLTableElement> = {}\n const referencedBnodes: Record<string, true> = {}\n\n function propertyTree (\n subject: SubjectTerm,\n nestingLevel = 0\n ): HTMLTableElement {\n const rep = myDocument.createElement('table')\n rep.classList.add('data-content-pane__table', 'data-content-pane__table--property')\n let lastPred: string | null = null\n const subjectStatements = subjects[sz.toStr(subject)]\n if (!subjectStatements) {\n rep.appendChild(myDocument.createTextNode('...'))\n return rep\n }\n subjectStatements.sort()\n let same = 0\n let predicateTD: HTMLTableCellElement | undefined\n for (let i = 0; i < subjectStatements.length; i++) {\n const st = subjectStatements[i]\n const tr = myDocument.createElement('tr')\n tr.classList.add('data-content-pane__row--top-aligned', 'data-content-pane__row--property')\n if (st.predicate.uri !== lastPred || isMobileLayout) {\n if (!isMobileLayout && lastPred && same > 1) {\n predicateTD?.setAttribute('rowspan', '' + same)\n }\n predicateTD = myDocument.createElement('td')\n predicateTD.setAttribute('class', 'data-content-pane__predicate-cell')\n const anchor = myDocument.createElement('a')\n anchor.setAttribute('href', st.predicate.uri)\n anchor.addEventListener(\n 'click',\n UI.widgets.openHrefInOutlineMode,\n true\n )\n anchor.appendChild(\n myDocument.createTextNode(\n UI.utils.predicateLabelForXML(st.predicate)\n )\n )\n predicateTD.appendChild(anchor)\n tr.appendChild(predicateTD)\n lastPred = st.predicate.uri\n same = 0\n }\n same++\n const objectTD = myDocument.createElement('td')\n objectTD.classList.add('data-content-pane__value-cell')\n objectTD.appendChild(objectTree(st.object, nestingLevel + 1))\n tr.appendChild(objectTD)\n rep.appendChild(tr)\n }\n if (!isMobileLayout && lastPred && same > 1) {\n predicateTD?.setAttribute('rowspan', '' + same)\n }\n return rep\n }\n\n function objectTree (obj: ObjectTerm, nestingLevel = 0): Node {\n let res: HTMLElement | HTMLTableElement | Text\n let anchor: HTMLAnchorElement\n switch (obj.termType) {\n case 'NamedNode':\n anchor = myDocument.createElement('a')\n anchor.setAttribute('href', obj.uri)\n anchor.addEventListener(\n 'click',\n UI.widgets.openHrefInOutlineMode,\n true\n )\n anchor.appendChild(myDocument.createTextNode(UI.utils.label(obj)))\n return anchor\n\n case 'Literal':\n if (!obj.datatype || !obj.datatype.uri) {\n res = myDocument.createElement('div')\n res.classList.add('data-content-pane__literal')\n res.textContent = obj.value\n return res\n } else if (\n obj.datatype.uri ===\n 'http://www.w3.org/1999/02/22-rdf-syntax-ns#XMLLiteral'\n ) {\n res = myDocument.createElement('div')\n res.classList.add('embeddedXHTML')\n res.innerHTML = DOMPurify.sanitize(obj.value)\n return res\n }\n return myDocument.createTextNode(obj.value)\n\n case 'BlankNode': {\n if (obj.toNT() in doneBnodes) {\n referencedBnodes[obj.toNT()] = true\n const referenceAnchor = myDocument.createElement('a')\n referenceAnchor.setAttribute('href', '#' + obj.toNT().slice(2))\n referenceAnchor.setAttribute('class', 'bnodeRef')\n referenceAnchor.textContent = '*' + obj.toNT().slice(3)\n return referenceAnchor\n }\n doneBnodes[obj.toNT()] = true\n const newTable = propertyTree(obj, nestingLevel)\n doneBnodes[obj.toNT()] = newTable\n if (nestingLevel % 2 === 1) {\n newTable.classList.add('data-content-pane__nested-table--light')\n } else {\n newTable.classList.add('data-content-pane__nested-table--dark')\n }\n return newTable\n }\n\n case 'Collection':\n res = myDocument.createElement('table')\n res.setAttribute('class', 'collectionAsTables')\n for (let i = 0; i < obj.elements.length; i++) {\n const tr = myDocument.createElement('tr')\n res.appendChild(tr)\n tr.appendChild(objectTree(obj.elements[i] as ObjectTerm, nestingLevel + 1))\n }\n return res\n\n case 'Graph':\n res = (context.session.paneRegistry\n .byName('dataContents') as DataContentPaneLike)\n .statementsAsTables(obj.statements, context)\n res.setAttribute('class', 'data-content-pane__nested-formula')\n return res\n\n case 'Variable':\n return myDocument.createTextNode('?' + obj.uri)\n }\n throw new Error('Unhandled node type: ' + obj.termType)\n }\n\n if (initialRoots) {\n roots = initialRoots.concat(\n roots.filter(function (x: SubjectTerm) {\n for (let i = 0; i < initialRoots.length; i++) {\n if (x.sameTerm(initialRoots[i])) return false\n }\n return true\n })\n )\n }\n for (let i = 0; i < roots.length; i++) {\n const tr = myDocument.createElement('tr')\n tr.classList.add(\n i % 2 === 0 ? 'data-content-pane__row--even' : 'data-content-pane__row--odd',\n 'data-content-pane__row--root'\n )\n rep.appendChild(tr)\n const subjectTD = myDocument.createElement('td')\n subjectTD.classList.add('data-content-pane__subject-cell')\n tr.appendChild(subjectTD)\n const TDTree = myDocument.createElement('td')\n TDTree.classList.add('data-content-pane__details-cell')\n tr.appendChild(TDTree)\n const root = roots[i]\n if (root.termType === 'BlankNode') {\n subjectTD.appendChild(myDocument.createTextNode(UI.utils.label(root)))\n } else {\n subjectTD.appendChild(objectTree(root, 0))\n }\n TDTree.appendChild(propertyTree(root, 0))\n }\n for (const bNT in referencedBnodes) {\n const table = doneBnodes[bNT]\n if (table === true) continue\n const anchor = myDocument.createElement('a')\n anchor.setAttribute('id', bNT.slice(2))\n anchor.setAttribute('class', 'bnodeDef')\n anchor.textContent = bNT.slice(3) + ')'\n table.insertBefore(anchor, table.firstChild)\n }\n return rep\n },\n\n render: function (\n subject: NamedNode,\n context: DataBrowserContext\n ): HTMLDivElement {\n const myDocument = context.dom\n\n function applyEnvironmentAttributes (element: HTMLDivElement): void {\n const environment = (context.environment ?? {}) as Partial<RenderEnvironment>\n element.dataset.layout = environment.layout ?? 'desktop'\n element.dataset.theme = environment.theme ?? 'light'\n element.dataset.inputMode = environment.inputMode ?? 'pointer'\n }\n\n function mainRendering () {\n const kb = context.session.store\n const sts = kb.statementsMatching(undefined, undefined, undefined, subject)\n const initialRoots: SubjectTerm[] = []\n if (kb.holds(subject, undefined, undefined, subject)) {\n initialRoots.push(subject)\n }\n const ps = kb.any(subject, UI.ns.foaf('primaryTopic'), undefined, subject)\n if (ps && (ps.termType === 'NamedNode' || ps.termType === 'BlankNode')) {\n initialRoots.push(ps as SubjectTerm)\n }\n\n div.appendChild(\n context.session.paneRegistry\n .byName('dataContents')\n .statementsAsTables(sts, context, initialRoots)\n )\n }\n\n const div = myDocument.createElement('div')\n div.classList.add('dataContentPane', 'data-content-pane')\n applyEnvironmentAttributes(div)\n\n mainRendering()\n return div\n }\n}\n"],"mappings":"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"}
|
package/dist/defaultPane2.cjs.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
(function(){try{if(typeof document<`u`){var e=document.createElement(`style`);e.appendChild(document.createTextNode(`.defaultPane .bottom-border{border:.2rem solid #0000;width:100%}.defaultPane .bottom-border-active{cursor:copy;border:.2rem solid;border-color:var(--color-bottom-border-highlight,#ffa600)}.defaultPane{--default-pane-predicate-column:16rem;--default-pane-object-indent:1.75rem}.defaultPane>tr{grid-template-columns:minmax(0, var(--default-pane-predicate-column)) minmax(0, 1fr);align-items:flex-start;display:grid}.defaultPane>tr>td.pred{box-sizing:border-box;grid-column:1;align-items:flex-start;min-width:0;display:flex;padding-left:0!important}.defaultPane>tr>td.pred>.labelTD{flex:auto;min-width:0;margin:0;padding-top:0;padding-bottom:0}.defaultPane>tr>td.pred>.iconTD{flex:none;width:auto;margin:0}.defaultPane>tr>td.obj{box-sizing:border-box;grid-column:2;align-self:start;min-width:0}.defaultPane>tr>td[colspan="2"]{grid-column:1/-1}.defaultPane[data-layout=mobile]>tr{grid-template-columns:minmax(0,1fr)}.defaultPane[data-layout=mobile]>tr>td.pred,.defaultPane[data-layout=mobile]>tr>td.obj{box-sizing:border-box;grid-column:1;width:100%;display:block}.defaultPane[data-layout=mobile]>tr>td.pred{padding-bottom:var(--spacing-small,.1rem)}.defaultPane[data-layout=mobile]>tr>td.obj{padding-left:var(--default-pane-object-indent)!important}@media (width<=700px){.defaultPane>tr{grid-template-columns:minmax(0,1fr)}.defaultPane>tr>td.pred,.defaultPane>tr>td.obj{box-sizing:border-box;grid-column:1;width:100%;display:block}.defaultPane>tr>td.pred{padding-bottom:var(--spacing-small,.1rem)}.defaultPane>tr>td.obj{padding-left:var(--default-pane-object-indent)!important}}`)),document.head.appendChild(e)}}catch(e){console.error(`vite-plugin-css-injected-by-js`,e)}})();const e=require("./_virtual/_rolldown/runtime.cjs.js");;let t=require("solid-ui");t=e.__toESM(t);let n=require("rdflib");n=e.__toESM(n);var r=t.ns,i={icon:t.icons.originalIconBase+`about.png`,name:`default`,audience:[r.solid(`Developer`)],label:function(e){return`about `},render:function(e,r){let i=r.dom;function a(e){let t=r.environment??{};e.dataset.layout=t.layout??`desktop`}let o=function(e,t){return!(r.session.paneRegistry.byName(`internal`).predicates[e.uri]!==void 0||t&&e.uri===`http://www.w3.org/1999/02/22-rdf-syntax-ns#type`)},s=r.getOutliner(i),c=r.session.store;t.log.info(`@defaultPane.render, dom is now `+i.location),e=c.canon(e);let l=i.createElement(`div`);l.setAttribute(`class`,`defaultPane`),a(l);let u=e.termType===`Literal`?[]:c.statementsMatching(e);s.appendPropertyTRs(l,u,!1,o),u=c.statementsMatching(void 0,void 0,e),s.appendPropertyTRs(l,u,!0,o);let d=e.termType===`BlankNode`?c.anyStatementMatching(e):void 0;if(e.termType===`Literal`&&e.value.slice(0,7)===`http://`&&s.appendPropertyTRs(l,[n.st(c.sym(e.value),t.ns.link(`uri`),e)],!0,o),e.termType===`NamedNode`&&c.updater.editable(n.Util.uri.docpart(e.uri),c)||e.termType===`BlankNode`&&d&&d.why&&`uri`in d.why&&typeof d.why.uri==`string`&&c.updater.editable(d.why.uri)){let e=i.createElement(`tr`),n=i.createElement(`td`);n.setAttribute(`colspan`,`2`),n.setAttribute(`notSelectable`,`true`);let r=i.createElement(`img`);r.src=t.icons.originalIconBase+`tango/22-list-add-new.png`,r.addEventListener(`click`,function(e){s.UserInput.addNewPredicateObject(e),e.stopPropagation(),e.preventDefault()}),r.className=`bottom-border-active`,l.appendChild(e).appendChild(n).appendChild(r)}return l}};exports.defaultPane=i;
|
|
2
|
-
//# sourceMappingURL=defaultPane2.cjs.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"defaultPane2.cjs.js","names":[],"sources":["../src/defaultPane.ts"],"sourcesContent":["/* Default Pane\n **\n ** This outline pane contains the properties which are\n ** normally displayed to the user. See also: internalPane\n ** This pane hides the ones considered too low-level for the normal user.\n */\n\nimport * as UI from 'solid-ui'\nimport * as $rdf from 'rdflib'\nimport type { DataBrowserContext, RenderEnvironment } from 'pane-registry'\nimport type { BlankNode, Literal, NamedNode, Statement } from 'rdflib'\nimport './defaultPane.css'\n\nconst ns = UI.ns\ntype DefaultPaneSubject = NamedNode | BlankNode | Literal\n\ntype DefaultPaneDefinition = {\n icon: string\n name: string\n audience: NamedNode[]\n label: (subject: DefaultPaneSubject) => string\n render: (subject: DefaultPaneSubject, context: DataBrowserContext) => HTMLDivElement\n}\n\ntype DefaultPaneOutliner = {\n appendPropertyTRs: (\n parent: HTMLElement,\n statements: Statement[],\n inverse: boolean,\n filter: (pred: NamedNode, inverse: boolean) => boolean\n ) => void\n UserInput: {\n addNewPredicateObject: (event: Event) => void\n }\n}\n\nexport const defaultPane: DefaultPaneDefinition = {\n icon: UI.icons.originalIconBase + 'about.png',\n\n name: 'default',\n\n audience: [ns.solid('Developer')],\n\n label: function (_subject: DefaultPaneSubject): string {\n return 'about '\n },\n\n render: function (\n subject: DefaultPaneSubject,\n context: DataBrowserContext\n ): HTMLDivElement {\n const dom = context.dom\n\n function applyEnvironmentAttributes (element: HTMLDivElement): void {\n const environment = (context.environment ?? {}) as Partial<RenderEnvironment>\n element.dataset.layout = environment.layout ?? 'desktop'\n }\n\n const filter = function (pred: NamedNode, inverse: boolean): boolean {\n if (\n typeof context.session.paneRegistry.byName('internal').predicates[\n pred.uri\n ] !== 'undefined'\n ) {\n return false\n }\n if (\n inverse &&\n pred.uri === 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type'\n ) {\n return false\n }\n return true\n }\n\n const outliner = context.getOutliner(dom) as DefaultPaneOutliner\n const kb = context.session.store\n // var outline = outliner; // @@\n UI.log.info('@defaultPane.render, dom is now ' + dom.location)\n subject = kb.canon(subject) as DefaultPaneSubject\n const div = dom.createElement('div')\n div.setAttribute('class', 'defaultPane')\n applyEnvironmentAttributes(div)\n // appendRemoveIcon(div, subject, div)\n\n let plist = subject.termType === 'Literal' ? [] : kb.statementsMatching(subject)\n outliner.appendPropertyTRs(div, plist, false, filter)\n plist = kb.statementsMatching(undefined, undefined, subject)\n outliner.appendPropertyTRs(div, plist, true, filter)\n const subjectStatement = subject.termType === 'BlankNode'\n ? kb.anyStatementMatching(subject)\n : undefined\n if (\n subject.termType === 'Literal' &&\n subject.value.slice(0, 7) === 'http://'\n ) {\n outliner.appendPropertyTRs(\n div,\n [$rdf.st(kb.sym(subject.value), UI.ns.link('uri'), subject)],\n true,\n filter\n )\n }\n if (\n (subject.termType === 'NamedNode' &&\n kb.updater.editable($rdf.Util.uri.docpart(subject.uri), kb)) ||\n (subject.termType === 'BlankNode' &&\n subjectStatement &&\n subjectStatement.why &&\n 'uri' in subjectStatement.why &&\n typeof subjectStatement.why.uri === 'string' &&\n kb.updater.editable(subjectStatement.why.uri))\n // check the document containing something about of the bnode @@ what about as object?\n /* ! && HCIoptions[\"bottom insert highlights\"].enabled */\n ) {\n const holdingTr = dom.createElement('tr') // these are to minimize required changes\n const holdingTd = dom.createElement('td') // in userinput.js\n holdingTd.setAttribute('colspan', '2')\n holdingTd.setAttribute('notSelectable', 'true')\n const img = dom.createElement('img')\n img.src = UI.icons.originalIconBase + 'tango/22-list-add-new.png'\n img.addEventListener('click', function addNewTripleIconMouseDownListener (\n e\n ) {\n outliner.UserInput.addNewPredicateObject(e)\n e.stopPropagation()\n e.preventDefault()\n })\n img.className = 'bottom-border-active'\n // img.addEventListener('click', thisOutline.UserInput.addNewPredicateObject,false)\n div\n .appendChild(holdingTr)\n .appendChild(holdingTd)\n .appendChild(img)\n }\n return div\n }\n}\n\n// ends\n"],"mappings":"uKAaA,IAAM,EAAK,EAAG,GAuBD,EAAqC,CAChD,KAAM,EAAG,MAAM,iBAAmB,YAElC,KAAM,UAEN,SAAU,CAAC,EAAG,MAAM,WAAW,CAAC,EAEhC,MAAO,SAAU,EAAsC,CACrD,MAAO,QACT,EAEA,OAAQ,SACN,EACA,EACgB,CAChB,IAAM,EAAM,EAAQ,IAEpB,SAAS,EAA4B,EAA+B,CAClE,IAAM,EAAe,EAAQ,aAAe,CAAC,EAC7C,EAAQ,QAAQ,OAAS,EAAY,QAAU,SACjD,CAEA,IAAM,EAAS,SAAU,EAAiB,EAA2B,CAcnE,MANA,EANS,EAAQ,QAAQ,aAAa,OAAO,UAAU,CAAC,CAAC,WACrD,EAAK,OACD,QAKN,GACA,EAAK,MAAQ,kDAKjB,EAEM,EAAW,EAAQ,YAAY,CAAG,EAClC,EAAK,EAAQ,QAAQ,MAE3B,EAAG,IAAI,KAAK,mCAAqC,EAAI,QAAQ,EAC7D,EAAU,EAAG,MAAM,CAAO,EAC1B,IAAM,EAAM,EAAI,cAAc,KAAK,EACnC,EAAI,aAAa,QAAS,aAAa,EACvC,EAA2B,CAAG,EAG9B,IAAI,EAAQ,EAAQ,WAAa,UAAY,CAAC,EAAI,EAAG,mBAAmB,CAAO,EAC/E,EAAS,kBAAkB,EAAK,EAAO,GAAO,CAAM,EACpD,EAAQ,EAAG,mBAAmB,IAAA,GAAW,IAAA,GAAW,CAAO,EAC3D,EAAS,kBAAkB,EAAK,EAAO,GAAM,CAAM,EACnD,IAAM,EAAmB,EAAQ,WAAa,YAC1C,EAAG,qBAAqB,CAAO,EAC/B,IAAA,GAYJ,GAVE,EAAQ,WAAa,WACrB,EAAQ,MAAM,MAAM,EAAG,CAAC,IAAM,WAE9B,EAAS,kBACP,EACA,CAAC,EAAK,GAAG,EAAG,IAAI,EAAQ,KAAK,EAAG,EAAG,GAAG,KAAK,KAAK,EAAG,CAAO,CAAC,EAC3D,GACA,CACF,EAGC,EAAQ,WAAa,aACpB,EAAG,QAAQ,SAAS,EAAK,KAAK,IAAI,QAAQ,EAAQ,GAAG,EAAG,CAAE,GAC3D,EAAQ,WAAa,aACpB,GACA,EAAiB,KACjB,QAAS,EAAiB,KAC1B,OAAO,EAAiB,IAAI,KAAQ,UACpC,EAAG,QAAQ,SAAS,EAAiB,IAAI,GAAG,EAG9C,CACA,IAAM,EAAY,EAAI,cAAc,IAAI,EAClC,EAAY,EAAI,cAAc,IAAI,EACxC,EAAU,aAAa,UAAW,GAAG,EACrC,EAAU,aAAa,gBAAiB,MAAM,EAC9C,IAAM,EAAM,EAAI,cAAc,KAAK,EACnC,EAAI,IAAM,EAAG,MAAM,iBAAmB,4BACtC,EAAI,iBAAiB,QAAS,SAC5B,EACA,CACA,EAAS,UAAU,sBAAsB,CAAC,EAC1C,EAAE,gBAAgB,EAClB,EAAE,eAAe,CACnB,CAAC,EACD,EAAI,UAAY,uBAEhB,EACG,YAAY,CAAS,CAAC,CACtB,YAAY,CAAS,CAAC,CACtB,YAAY,CAAG,CACpB,CACA,OAAO,CACT,CACF"}
|