solid-ui 5.0.2-4 → 5.0.2-5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/acl/access-controller.cjs.js +1 -1
- package/dist/acl/access-controller.cjs.js.map +1 -1
- package/dist/acl/access-controller.esm.js +37 -37
- package/dist/acl/access-groups.cjs.js +2 -2
- package/dist/acl/access-groups.cjs.js.map +1 -1
- package/dist/acl/access-groups.esm.js +78 -78
- package/dist/acl/acl-control.cjs.js +1 -1
- package/dist/acl/acl-control.cjs.js.map +1 -1
- package/dist/acl/acl-control.esm.js +19 -19
- package/dist/acl/add-agent-buttons.cjs.js +1 -1
- package/dist/acl/add-agent-buttons.cjs.js.map +1 -1
- package/dist/acl/add-agent-buttons.esm.js +51 -51
- package/dist/chat/bookmarks.cjs.js +1 -1
- package/dist/chat/bookmarks.cjs.js.map +1 -1
- package/dist/chat/bookmarks.esm.js +44 -44
- package/dist/chat/bookmarks.esm.js.map +1 -1
- package/dist/chat/chatLogic.cjs.js +2 -2
- package/dist/chat/chatLogic.cjs.js.map +1 -1
- package/dist/chat/chatLogic.esm.js +54 -54
- package/dist/chat/dateFolder.cjs.js +1 -1
- package/dist/chat/dateFolder.cjs.js.map +1 -1
- package/dist/chat/dateFolder.esm.js +30 -30
- package/dist/chat/infinite.cjs.js +1 -1
- package/dist/chat/infinite.cjs.js.map +1 -1
- package/dist/chat/infinite.esm.js +49 -49
- package/dist/chat/keys.cjs.js +2 -2
- package/dist/chat/keys.cjs.js.map +1 -1
- package/dist/chat/keys.esm.js +17 -17
- package/dist/chat/message.cjs.js +4 -4
- package/dist/chat/message.cjs.js.map +1 -1
- package/dist/chat/message.esm.js +114 -114
- package/dist/chat/message.esm.js.map +1 -1
- package/dist/chat/messageTools.cjs.js +1 -1
- package/dist/chat/messageTools.cjs.js.map +1 -1
- package/dist/chat/messageTools.esm.js +51 -51
- package/dist/chunks/{ResourceActionsMenu-Bllpr4M5.js → ResourceActionsMenu-Bx7YWY3E.js} +29 -29
- package/dist/chunks/{ResourceActionsMenu-Bllpr4M5.js.map → ResourceActionsMenu-Bx7YWY3E.js.map} +1 -1
- package/dist/chunks/{access-control-modal-CwmY_Dod.js → access-control-modal-B1mFFIyz.js} +165 -165
- package/dist/chunks/{access-control-modal-CwmY_Dod.js.map → access-control-modal-B1mFFIyz.js.map} +1 -1
- package/dist/chunks/{account-CoHPKKDu.js → account-DWmMJre6.js} +22 -22
- package/dist/chunks/{account-CoHPKKDu.js.map → account-DWmMJre6.js.map} +1 -1
- package/dist/chunks/{auth-CocCqS1p.js → auth-EK-iYNYZ.js} +37 -37
- package/dist/chunks/{auth-CocCqS1p.js.map → auth-EK-iYNYZ.js.map} +1 -1
- package/dist/chunks/{avatar-sNdKdWVO.js → avatar-BBgvMlqv.js} +13 -13
- package/dist/chunks/{avatar-sNdKdWVO.js.map → avatar-BBgvMlqv.js.map} +1 -1
- package/dist/chunks/{combobox-fSTp9qoT.js → combobox-DS6byaf1.js} +3 -3
- package/dist/chunks/{combobox-fSTp9qoT.js.map → combobox-DS6byaf1.js.map} +1 -1
- package/dist/chunks/{error-state-BD4_Wrkz.js → error-state-jV9dlFX2.js} +2 -2
- package/dist/chunks/{error-state-BD4_Wrkz.js.map → error-state-jV9dlFX2.js.map} +1 -1
- package/dist/chunks/{file-explorer-header-D0TebSYR.js → file-explorer-header-Djp_eFuT.js} +50 -50
- package/dist/chunks/{file-explorer-header-D0TebSYR.js.map → file-explorer-header-Djp_eFuT.js.map} +1 -1
- package/dist/chunks/{guard-BOicu9dt.js → guard-SxVT1xr4.js} +13 -13
- package/dist/chunks/{guard-BOicu9dt.js.map → guard-SxVT1xr4.js.map} +1 -1
- package/dist/chunks/{index.esm-C9oV3H3X.js → index.esm-BQrkxchZ.js} +2 -2
- package/dist/chunks/{index.esm-C9oV3H3X.js.map → index.esm-BQrkxchZ.js.map} +1 -1
- package/dist/chunks/{jsonld-D-TE94B0.js → jsonld-C6IOQ1Tg.js} +2 -2
- package/dist/chunks/{jsonld-D-TE94B0.js.map → jsonld-C6IOQ1Tg.js.map} +1 -1
- package/dist/chunks/{login-button-clTw_9tX.js → login-button-Dd0rwZJk.js} +11 -11
- package/dist/chunks/{login-button-clTw_9tX.js.map → login-button-Dd0rwZJk.js.map} +1 -1
- package/dist/chunks/{logout-button-CP-Pz70O.js → logout-button-Da34Lrnq.js} +11 -11
- package/dist/chunks/{logout-button-CP-Pz70O.js.map → logout-button-Da34Lrnq.js.map} +1 -1
- package/dist/chunks/{menu-D0k2fkiE.js → menu-BNJU654v.js} +2 -2
- package/dist/chunks/{menu-D0k2fkiE.js.map → menu-BNJU654v.js.map} +1 -1
- package/dist/chunks/{provider-Cuv3Kp6G.js → provider-B3FoP2qW.js} +11 -11
- package/dist/chunks/{provider-Cuv3Kp6G.js.map → provider-B3FoP2qW.js.map} +1 -1
- package/dist/chunks/{rdf-form-DVmTw3RG.js → rdf-form-BkKDmFPD.js} +36 -36
- package/dist/chunks/{rdf-form-DVmTw3RG.js.map → rdf-form-BkKDmFPD.js.map} +1 -1
- package/dist/chunks/{rdf-input-CRYLK-27.js → rdf-input-BPePtqfS.js} +61 -61
- package/dist/chunks/{rdf-input-CRYLK-27.js.map → rdf-input-BPePtqfS.js.map} +1 -1
- package/dist/chunks/{signup-button-CexdMWj6.js → signup-button-DOInssOu.js} +11 -11
- package/dist/chunks/{signup-button-CexdMWj6.js.map → signup-button-DOInssOu.js.map} +1 -1
- package/dist/chunks/{solidLogicSingleton.esm-BXyHD7mn.js → solidLogicSingleton.esm-Bvt7E7Vl.js} +50 -29
- package/dist/chunks/solidLogicSingleton.esm-Bvt7E7Vl.js.map +1 -0
- package/dist/chunks/{src-DQgHAH3d.js → src-akaVfkuf.js} +1956 -1944
- package/dist/chunks/src-akaVfkuf.js.map +1 -0
- package/dist/chunks/{style-CXaw5EYi.js → style-Dlw9-wPn.js} +3 -3
- package/dist/chunks/{style-CXaw5EYi.js.map → style-Dlw9-wPn.js.map} +1 -1
- package/dist/chunks/{widgets-BBEQu0CS.js → widgets-B1hBVhRL.js} +309 -309
- package/dist/chunks/widgets-B1hBVhRL.js.map +1 -0
- package/dist/components/access-control-modal/AccessControlAddAccess.cjs.js +1 -1
- package/dist/components/access-control-modal/AccessControlAddAccess.esm.js +5 -5
- package/dist/components/access-control-modal/AccessControlGeneralAccess.cjs.js +2 -2
- package/dist/components/access-control-modal/AccessControlGeneralAccess.cjs.js.map +1 -1
- package/dist/components/access-control-modal/AccessControlGeneralAccess.esm.js +12 -12
- package/dist/components/access-control-modal/AccessControlModal.cjs.js +2 -2
- package/dist/components/access-control-modal/AccessControlModal.cjs.js.map +1 -1
- package/dist/components/access-control-modal/AccessControlModal.esm.js +35 -35
- package/dist/components/access-control-modal/AccessControlModal.esm.js.map +1 -1
- package/dist/components/access-control-modal/AccessControlSharedAccess.cjs.js +1 -1
- package/dist/components/access-control-modal/AccessControlSharedAccess.esm.js +2 -2
- package/dist/components/access-control-modal/accessTargetResolver.cjs.js +1 -1
- package/dist/components/access-control-modal/accessTargetResolver.cjs.js.map +1 -1
- package/dist/components/access-control-modal/accessTargetResolver.esm.js +21 -21
- package/dist/components/access-control-modal.js +1 -1
- package/dist/components/account/Account.cjs.js +1 -1
- package/dist/components/account/Account.esm.js +3 -3
- package/dist/components/account.js +1 -1
- package/dist/components/all.cjs.js +1 -1
- package/dist/components/all.esm.js +16 -16
- package/dist/components/avatar.js +1 -1
- package/dist/components/combobox/Combobox.cjs.js +1 -1
- package/dist/components/combobox/Combobox.esm.js +1 -1
- package/dist/components/combobox.js +1 -1
- package/dist/components/dialog/Dialog.cjs.js +2 -2
- package/dist/components/dialog/Dialog.cjs.js.map +1 -1
- package/dist/components/dialog/Dialog.esm.js +9 -9
- package/dist/components/dialog/Dialog.esm.js.map +1 -1
- package/dist/components/dialog-provider/DialogProvider.cjs.js +1 -1
- package/dist/components/dialog-provider/DialogProvider.cjs.js.map +1 -1
- package/dist/components/dialog-provider/DialogProvider.esm.js +6 -6
- package/dist/components/dialogs-root/DialogsRoot.cjs.js +2 -2
- package/dist/components/dialogs-root/DialogsRoot.cjs.js.map +1 -1
- package/dist/components/dialogs-root/DialogsRoot.esm.js +7 -7
- package/dist/components/error-state/ErrorState.cjs.js +1 -1
- package/dist/components/error-state/ErrorState.esm.js +1 -1
- package/dist/components/error-state.js +1 -1
- package/dist/components/file-explorer-header/FileExplorerHeaderControls.cjs.js +2 -2
- package/dist/components/file-explorer-header/FileExplorerHeaderControls.cjs.js.map +1 -1
- package/dist/components/file-explorer-header/FileExplorerHeaderControls.esm.js +10 -10
- package/dist/components/file-explorer-header/FileExplorerHeaderSummary.cjs.js +1 -1
- package/dist/components/file-explorer-header/FileExplorerHeaderSummary.esm.js +5 -5
- package/dist/components/file-explorer-header.js +1 -1
- package/dist/components/guard.js +1 -1
- package/dist/components/login-button/LoginButton.cjs.js +1 -1
- package/dist/components/login-button/LoginButton.esm.js +1 -1
- package/dist/components/login-button.js +1 -1
- package/dist/components/login-modal/LoginModal.cjs.js +1 -1
- package/dist/components/login-modal/LoginModal.esm.js +2 -2
- package/dist/components/login-modal.js +1 -1
- package/dist/components/logout-button/LogoutButton.cjs.js +1 -1
- package/dist/components/logout-button/LogoutButton.esm.js +1 -1
- package/dist/components/logout-button.js +1 -1
- package/dist/components/menu/Menu.cjs.js +1 -1
- package/dist/components/menu/Menu.cjs.js.map +1 -1
- package/dist/components/menu/Menu.esm.js +1 -1
- package/dist/components/menu/Menu.esm.js.map +1 -1
- package/dist/components/menu.js +1 -1
- package/dist/components/provider.js +1 -1
- package/dist/components/rdf-form/RDFForm.cjs.js +3 -3
- package/dist/components/rdf-form/RDFForm.cjs.js.map +1 -1
- package/dist/components/rdf-form/RDFForm.esm.js +13 -13
- package/dist/components/rdf-form/RDFForm.esm.js.map +1 -1
- package/dist/components/rdf-form.js +1 -1
- package/dist/components/rdf-input/RDFInput.cjs.js +2 -2
- package/dist/components/rdf-input/RDFInput.cjs.js.map +1 -1
- package/dist/components/rdf-input/RDFInput.esm.js +4 -4
- package/dist/components/rdf-input/RDFInput.esm.js.map +1 -1
- package/dist/components/rdf-input.js +1 -1
- package/dist/components/resource-actions-menu/ResourceActionsMenu.cjs.js +3 -3
- package/dist/components/resource-actions-menu/ResourceActionsMenu.cjs.js.map +1 -1
- package/dist/components/resource-actions-menu/ResourceActionsMenu.esm.js +7 -7
- package/dist/components/resource-actions-menu.js +1 -1
- package/dist/components/select/Select.cjs.js +1 -1
- package/dist/components/select/Select.cjs.js.map +1 -1
- package/dist/components/select/Select.esm.js +1 -1
- package/dist/components/signup-button/SignupButton.cjs.js +1 -1
- package/dist/components/signup-button/SignupButton.esm.js +1 -1
- package/dist/components/signup-button.js +1 -1
- package/dist/components.js +21 -21
- package/dist/create/create.cjs.js +1 -1
- package/dist/create/create.cjs.js.map +1 -1
- package/dist/create/create.esm.js +23 -23
- package/dist/header/index.cjs.js +1 -1
- package/dist/header/index.cjs.js.map +1 -1
- package/dist/header/index.esm.js +53 -53
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +20 -20
- package/dist/index.js +5 -5
- package/dist/lib/auth/SolidAuth.cjs.js +1 -1
- package/dist/lib/auth/SolidAuth.cjs.js.map +1 -1
- package/dist/lib/auth/SolidAuth.esm.js +8 -8
- package/dist/lib/auth/SolidAuth.esm.js.map +1 -1
- package/dist/lib/code-editor/CodeEditor.cjs.js +1 -1
- package/dist/lib/code-editor/CodeEditor.cjs.js.map +1 -1
- package/dist/lib/code-editor/CodeEditor.d.ts.map +1 -1
- package/dist/lib/code-editor/CodeEditor.esm.js +34 -30
- package/dist/lib/code-editor/CodeEditor.esm.js.map +1 -1
- package/dist/lib/components/dialog-component/DialogComponent.cjs.js +1 -1
- package/dist/lib/components/dialog-component/DialogComponent.cjs.js.map +1 -1
- package/dist/lib/components/dialog-component/DialogComponent.esm.js +4 -4
- package/dist/lib/components/index.cjs.js +1 -1
- package/dist/lib/components/index.esm.js +3 -3
- package/dist/lib/dialogs/helpers.cjs.js +1 -1
- package/dist/lib/dialogs/helpers.cjs.js.map +1 -1
- package/dist/lib/dialogs/helpers.esm.js +4 -4
- package/dist/lib/file-explorer/relevant-panes.cjs.js +1 -1
- package/dist/lib/file-explorer/relevant-panes.cjs.js.map +1 -1
- package/dist/lib/file-explorer/relevant-panes.esm.js +8 -8
- package/dist/lib/messageArea.cjs.js +1 -1
- package/dist/lib/messageArea.cjs.js.map +1 -1
- package/dist/lib/messageArea.esm.js +27 -27
- package/dist/lib/pad.cjs.js +1 -1
- package/dist/lib/pad.cjs.js.map +1 -1
- package/dist/lib/pad.esm.js +15 -15
- package/dist/lib/participation.cjs.js +1 -1
- package/dist/lib/participation.cjs.js.map +1 -1
- package/dist/lib/participation.esm.js +59 -59
- package/dist/lib/preferences.cjs.js +1 -1
- package/dist/lib/preferences.cjs.js.map +1 -1
- package/dist/lib/preferences.esm.js +28 -28
- package/dist/lib/table.cjs.js +3 -3
- package/dist/lib/table.cjs.js.map +1 -1
- package/dist/lib/table.esm.js +123 -123
- package/dist/lib/table.esm.js.map +1 -1
- package/dist/lib/tabs.cjs.js +1 -1
- package/dist/lib/tabs.cjs.js.map +1 -1
- package/dist/lib/tabs.esm.js +16 -16
- package/dist/loader.js +11 -11
- package/dist/login/login.cjs.js +6 -6
- package/dist/login/login.cjs.js.map +1 -1
- package/dist/login/login.esm.js +142 -142
- package/dist/media/media-capture.cjs.js +1 -1
- package/dist/media/media-capture.cjs.js.map +1 -1
- package/dist/media/media-capture.esm.js +6 -6
- package/dist/solid-ui.js +18 -18
- package/dist/solid-ui.min.js +18 -18
- package/dist/solid-ui.min.js.map +1 -1
- package/dist/utils/index.cjs.js +1 -1
- package/dist/utils/index.cjs.js.map +1 -1
- package/dist/utils/index.esm.js +4 -4
- package/dist/utils/keyHelpers/accessData.cjs.js +1 -1
- package/dist/utils/keyHelpers/accessData.cjs.js.map +1 -1
- package/dist/utils/keyHelpers/accessData.esm.js +15 -15
- package/dist/utils/label.cjs.js +1 -1
- package/dist/utils/label.cjs.js.map +1 -1
- package/dist/utils/label.esm.js +4 -4
- package/dist/widgets/buttons.cjs.js +12 -12
- package/dist/widgets/buttons.cjs.js.map +1 -1
- package/dist/widgets/buttons.esm.js +179 -179
- package/dist/widgets/error.cjs.js +1 -1
- package/dist/widgets/error.cjs.js.map +1 -1
- package/dist/widgets/error.esm.js +5 -5
- package/dist/widgets/forms/autocomplete/autocompleteBar.cjs.js +1 -1
- package/dist/widgets/forms/autocomplete/autocompleteBar.cjs.js.map +1 -1
- package/dist/widgets/forms/autocomplete/autocompleteBar.esm.js +17 -17
- package/dist/widgets/forms/autocomplete/autocompleteField.cjs.js +1 -1
- package/dist/widgets/forms/autocomplete/autocompleteField.cjs.js.map +1 -1
- package/dist/widgets/forms/autocomplete/autocompleteField.esm.js +23 -23
- package/dist/widgets/forms/autocomplete/autocompletePicker.cjs.js +1 -1
- package/dist/widgets/forms/autocomplete/autocompletePicker.cjs.js.map +1 -1
- package/dist/widgets/forms/autocomplete/autocompletePicker.esm.js +26 -26
- package/dist/widgets/forms/autocomplete/language.cjs.js +1 -1
- package/dist/widgets/forms/autocomplete/language.cjs.js.map +1 -1
- package/dist/widgets/forms/autocomplete/language.esm.js +9 -9
- package/dist/widgets/forms/autocomplete/publicData.cjs.js +5 -5
- package/dist/widgets/forms/autocomplete/publicData.cjs.js.map +1 -1
- package/dist/widgets/forms/autocomplete/publicData.esm.js +67 -67
- package/dist/widgets/forms/basic.cjs.js +1 -1
- package/dist/widgets/forms/basic.cjs.js.map +1 -1
- package/dist/widgets/forms/basic.esm.js +11 -11
- package/dist/widgets/forms.cjs.js +4 -4
- package/dist/widgets/forms.cjs.js.map +1 -1
- package/dist/widgets/forms.esm.js +561 -561
- package/dist/widgets/forms.esm.js.map +1 -1
- package/dist/widgets/index.cjs.js +1 -1
- package/dist/widgets/index.cjs.js.map +1 -1
- package/dist/widgets/index.esm.js +82 -82
- package/dist/widgets/peoplePicker.cjs.js +2 -2
- package/dist/widgets/peoplePicker.cjs.js.map +1 -1
- package/dist/widgets/peoplePicker.esm.js +82 -82
- package/package.json +3 -3
- package/dist/chunks/solidLogicSingleton.esm-BXyHD7mn.js.map +0 -1
- package/dist/chunks/src-DQgHAH3d.js.map +0 -1
- package/dist/chunks/widgets-BBEQu0CS.js.map +0 -1
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { __exportAll as e } from "../_virtual/_rolldown/runtime.esm.js";
|
|
2
|
-
import t from "./
|
|
3
|
-
import
|
|
4
|
-
import { log as r, warn as i } from "./debug.esm.js";
|
|
5
|
-
import a from "./styleConstants.esm.js";
|
|
6
|
-
import { style as o } from "./style.esm.js";
|
|
7
|
-
import { errorMessageBlock as s } from "../widgets/error.esm.js";
|
|
8
|
-
import { personTR as c } from "../widgets/buttons.esm.js";
|
|
9
|
-
import { newThing as l } from "../widgets/forms.esm.js";
|
|
2
|
+
import { log as t, warn as n } from "./debug.esm.js";
|
|
3
|
+
import r from "./ns.esm.js";
|
|
10
4
|
import "../widgets/index.esm.js";
|
|
11
|
-
import {
|
|
5
|
+
import { syncTableToArray as i } from "../utils/index.esm.js";
|
|
6
|
+
import { lightColorHash as a } from "./pad.esm.js";
|
|
7
|
+
import { errorMessageBlock as o } from "../widgets/error.esm.js";
|
|
8
|
+
import { personTR as s } from "../widgets/buttons.esm.js";
|
|
9
|
+
import { newThing as c } from "../widgets/forms.esm.js";
|
|
10
|
+
import { style as l } from "./style.esm.js";
|
|
11
|
+
import u from "./styleConstants.esm.js";
|
|
12
12
|
import { st as d } from "rdflib";
|
|
13
13
|
import { authn as f, solidLogicSingleton as p } from "solid-logic";
|
|
14
14
|
// src/lib/participation.ts
|
|
@@ -18,86 +18,86 @@ var m = /* @__PURE__ */ e({
|
|
|
18
18
|
recordParticipation: () => v,
|
|
19
19
|
renderParticipants: () => g
|
|
20
20
|
}), h = p.store;
|
|
21
|
-
function g(e,
|
|
22
|
-
|
|
23
|
-
let f = function(
|
|
24
|
-
let
|
|
25
|
-
if (!
|
|
26
|
-
let
|
|
27
|
-
|
|
21
|
+
function g(e, n, a, o, c, d) {
|
|
22
|
+
n.setAttribute("style", l.participantsStyle);
|
|
23
|
+
let f = function(t) {
|
|
24
|
+
let i = h.any(t, r.wf("participant")), a;
|
|
25
|
+
if (!i) return a = e.createElement("tr"), a.textContent = "???", a;
|
|
26
|
+
let o = h.anyValue(t, r.ui("backgroundColor")) || u.participationDefaultBackground, c = e.createElement("div");
|
|
27
|
+
c.setAttribute("style", l.participantsBlock), c.style.backgroundColor = o, a = s(e, null, i, d), n.appendChild(a);
|
|
28
28
|
let f = e.createElement("td");
|
|
29
|
-
return f.setAttribute("style",
|
|
29
|
+
return f.setAttribute("style", l.personTableTD), f.appendChild(c), a.insertBefore(f, a.firstChild), a;
|
|
30
30
|
}, p = function() {
|
|
31
|
-
let e = h.each(
|
|
32
|
-
return
|
|
31
|
+
let e = h.each(o, r.wf("participation")).map(function(e) {
|
|
32
|
+
return t("in participants"), [h.anyValue(e, r.cal("dtstart")) || "9999-12-31", e];
|
|
33
33
|
});
|
|
34
34
|
e.sort();
|
|
35
35
|
let a = e.map(function(e) {
|
|
36
36
|
return e[1];
|
|
37
37
|
});
|
|
38
|
-
n
|
|
38
|
+
i(n, a, f);
|
|
39
39
|
};
|
|
40
|
-
return
|
|
40
|
+
return n.refresh = p, p(), n;
|
|
41
41
|
}
|
|
42
|
-
function _(e,
|
|
43
|
-
return new Promise(function(
|
|
44
|
-
if (!
|
|
45
|
-
let
|
|
46
|
-
return h.holds(e,
|
|
42
|
+
function _(e, t, i) {
|
|
43
|
+
return new Promise(function(o, s) {
|
|
44
|
+
if (!i) throw Error("No user id");
|
|
45
|
+
let l = h.each(e, r.wf("participation")).filter(function(e) {
|
|
46
|
+
return h.holds(e, r.wf("participant"), i);
|
|
47
47
|
});
|
|
48
|
-
if (
|
|
48
|
+
if (l.length > 1) {
|
|
49
49
|
let e = [];
|
|
50
|
-
for (let
|
|
51
|
-
let
|
|
52
|
-
|
|
50
|
+
for (let t of l) {
|
|
51
|
+
let n = h.anyValue(t, r.cal("dtstart"));
|
|
52
|
+
n && e.push([n, t]);
|
|
53
53
|
}
|
|
54
|
-
e.sort(),
|
|
54
|
+
e.sort(), n("Multiple participation objects, picking earliest, in " + t), o(e[0][1]);
|
|
55
55
|
}
|
|
56
|
-
if (
|
|
56
|
+
if (l.length) o(l[0]);
|
|
57
57
|
else {
|
|
58
|
-
let
|
|
59
|
-
d(e,
|
|
60
|
-
d(
|
|
61
|
-
d(
|
|
62
|
-
d(
|
|
58
|
+
let n = c(t), l = [
|
|
59
|
+
d(e, r.wf("participation"), n, t),
|
|
60
|
+
d(n, r.wf("participant"), i, t),
|
|
61
|
+
d(n, r.cal("dtstart"), /* @__PURE__ */ new Date(), t),
|
|
62
|
+
d(n, r.ui("backgroundColor"), a(i), t)
|
|
63
63
|
];
|
|
64
|
-
h.updater.update([],
|
|
65
|
-
t ?
|
|
66
|
-
}),
|
|
64
|
+
h.updater.update([], l, function(e, t, r) {
|
|
65
|
+
t ? o(n) : s(/* @__PURE__ */ Error("Error recording your participation: " + r));
|
|
66
|
+
}), o(n);
|
|
67
67
|
}
|
|
68
68
|
});
|
|
69
69
|
}
|
|
70
70
|
function v(e, n, i) {
|
|
71
|
-
let
|
|
72
|
-
if (!
|
|
73
|
-
let
|
|
74
|
-
return h.holds(e,
|
|
71
|
+
let o = f.currentUser();
|
|
72
|
+
if (!o) return;
|
|
73
|
+
let s = h.each(e, r.wf("participation")).filter(function(e) {
|
|
74
|
+
return h.holds(e, r.wf("participant"), o);
|
|
75
75
|
});
|
|
76
|
-
if (
|
|
77
|
-
if (
|
|
76
|
+
if (s.length > 1) throw Error("Multiple records of your participation");
|
|
77
|
+
if (s.length) return s[0];
|
|
78
78
|
{
|
|
79
|
-
if (!h.updater.editable(n)) return
|
|
80
|
-
let
|
|
81
|
-
d(e,
|
|
82
|
-
d(
|
|
83
|
-
d(
|
|
84
|
-
d(
|
|
79
|
+
if (!h.updater.editable(n)) return t("Not recording participation, as no write access as " + o + " to " + n), null;
|
|
80
|
+
let s = c(n), l = [
|
|
81
|
+
d(e, r.wf("participation"), s, n),
|
|
82
|
+
d(s, r.wf("participant"), o, n),
|
|
83
|
+
d(s, r.cal("dtstart"), /* @__PURE__ */ new Date(), n),
|
|
84
|
+
d(s, r.ui("backgroundColor"), a(o), n)
|
|
85
85
|
];
|
|
86
|
-
return h.updater.update([],
|
|
86
|
+
return h.updater.update([], l, function(e, t, n) {
|
|
87
87
|
if (!t) throw Error("Error recording your participation: " + n);
|
|
88
88
|
i && i.refresh && i.refresh();
|
|
89
|
-
}),
|
|
89
|
+
}), s;
|
|
90
90
|
}
|
|
91
91
|
}
|
|
92
92
|
function y(e, t, n, r, i, a) {
|
|
93
|
-
let
|
|
94
|
-
t.appendChild(
|
|
93
|
+
let s = e.createElement("table");
|
|
94
|
+
t.appendChild(s), g(e, s, n, r, i, a);
|
|
95
95
|
try {
|
|
96
|
-
v(r, n,
|
|
96
|
+
v(r, n, s);
|
|
97
97
|
} catch (n) {
|
|
98
|
-
t.appendChild(
|
|
98
|
+
t.appendChild(o(e, "Error recording your participation: " + n));
|
|
99
99
|
}
|
|
100
|
-
return
|
|
100
|
+
return s;
|
|
101
101
|
}
|
|
102
102
|
export { y as manageParticipation, _ as participationObject, m as participation_exports, v as recordParticipation, g as renderParticipants };
|
|
103
103
|
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const e=require("../_virtual/_rolldown/runtime.cjs.js"),t=require("./
|
|
1
|
+
const e=require("../_virtual/_rolldown/runtime.cjs.js"),t=require("./debug.cjs.js"),n=require("../login/login.cjs.js"),r=require("../widgets/error.cjs.js"),i=require("../widgets/buttons.cjs.js"),a=require("../widgets/forms.cjs.js"),o=require("./ns.cjs.js"),s=require("./participation.cjs.js");require("../widgets/index.cjs.js");let c=require("rdflib");c=e.__toESM(c);let l=require("solid-logic");var u=e.__exportAll({get:()=>p,getPreferencesForClass:()=>y,recordPersonalDefaults:()=>g,recordSharedPreferences:()=>h,renderPreferencesForm:()=>_,set:()=>m,value:()=>f}),d=l.store,f=[];function p(e){return f[e]}function m(e,n){if(typeof n!=`string`)throw t.log(`Non-string value of preference `+e+`: `+n),Error(`Non-string value of preference `+e+`: `+n);this.value[e]=n}function h(e,n){return new Promise(function(r,i){let a=d.any(e,o.default.ui(`sharedPreferences`));if(a)n.sharedPreferences=a,r(n);else{d.updater.editable(e.doc())||(t.log(` Cant make shared preferences, may not change ${e.doc}`),r(n));let a=c.sym(e.doc().uri+`#SharedPreferences`),s=[c.st(e,o.default.ui(`sharedPreferences`),a,e.doc())];t.log(`Creating shared preferences `+a),d.updater.update([],s,function(e,t,o){t?(n.sharedPreferences=a,r(n)):i(Error(`Error creating shared prefs: `+o))})}})}function g(e,r){return new Promise(function(i,s){n.ensureLoadedPreferences(r).then(n=>{if(!n.preferencesFile){t.log(`Not doing private class preferences as no access to preferences file. `+n.preferencesFileError);return}let r=d.each(null,o.default.solid(`forClass`),e,n.preferencesFile),l=[],u,f;if(r.length){if(r.forEach(e=>{u||=d.any(e,o.default.solid(`personalDefaults`))}),u){n.personalDefaults=u,i(n);return}u=a.newThing(n.preferencesFile),f=r[0]}else f=a.newThing(n.preferencesFile),l=[c.st(f,o.default.rdf(`type`),o.default.solid(`TypeRegistration`),n.preferencesFile),c.st(f,o.default.solid(`forClass`),e,n.preferencesFile)];u=a.newThing(n.preferencesFile),l.push(c.st(f,o.default.solid(`personalDefaults`),u,n.preferencesFile)),d.updater.update([],l,function(t,r,a){r?(n.personalDefaults=u,i(n)):s(Error(`Setting preferences for `+e+`: `+a))})},e=>{s(e)})})}function _(e,t,n,o){let c=o.dom.createElement(`div`);return s.participationObject(e,e.doc(),o.me).then(r=>{let s=o.dom;function l(e){c.appendChild(s.createElement(`h5`)).textContent=e}l(`My view of this `+o.noun),a.appendForm(s,c,{},r,n,e.doc(),(e,t)=>{e||i.complain(o,t)}),l(`Everyone's view of this `+o.noun),h(e,o).then(r=>{let o=r.sharedPreferences;a.appendForm(s,c,{},o,n,e.doc(),(e,t)=>{e||i.complain(r,t)}),l(`My default view of any `+r.noun),g(t,r).then(e=>{a.appendForm(s,c,{},e.personalDefaults,n,e.preferencesFile,(t,n)=>{t||i.complain(e,n)})},e=>{i.complain(r,e)})})},e=>{c.appendChild(r.errorMessageBlock(o.dom,e))}),c}function v(e){return e.datatype?e.datatype.equals(o.default.xsd(`boolean`))?e.value===`1`:e.datatype.equals(o.default.xsd(`dateTime`))||e.datatype.equals(o.default.xsd(`date`))?new Date(e.value):e.datatype.equals(o.default.xsd(`integer`))||e.datatype.equals(o.default.xsd(`float`))||e.datatype.equals(o.default.xsd(`decimal`))?Number(e.value):e.value:e}function y(e,t,n,r){return new Promise(function(i,a){h(e,r).then(r=>{let o=r.sharedPreferences;if(r.me)s.participationObject(e,e.doc(),r.me).then(e=>{g(t,r).then(t=>{let r=[],a=t.personalDefaults;n.forEach(t=>{let n=d.any(e,t)||d.any(o,t)||d.any(a,t);n&&(r[t.uri]=v(n))}),i(r)},a)},a);else{let e=[];n.forEach(t=>{let n=d.any(o,t);n&&(e[t.uri]=v(n))}),i(e)}})})}exports.get=p,exports.getPreferencesForClass=y,Object.defineProperty(exports,"preferences_exports",{enumerable:!0,get:function(){return u}}),exports.recordPersonalDefaults=g,exports.recordSharedPreferences=h,exports.renderPreferencesForm=_,exports.set=m,exports.value=f;
|
|
2
2
|
//# sourceMappingURL=preferences.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preferences.cjs.js","names":["store","ns","$rdf","require_runtime","require_ns","require_debug","require_error","require_buttons","require_forms","require_login","require_participation","rdflib","solid_logic","preferences_exports","get","getPreferencesForClass","recordPersonalDefaults","recordSharedPreferences","renderPreferencesForm","set","value","kb","k","v","sharedPreferences","subject","resolve","context","sp","ins","ok","reject","errorMessage","regs","theClass","prefs","reg","r","errm","err","prefContainer","dom","heading","text","participation","preferencesForm","mes","toJS","term","results","personalDefaults","predicates","v1","pred"],"sources":["../../src/lib/preferences.js"],"sourcesContent":["// Solid-UI preferences\n// =====================\n//\n\nimport * as $rdf from 'rdflib' // pull in first avoid cross-refs\nimport { store } from 'solid-logic'\nimport * as debug from './debug'\nimport { ensureLoadedPreferences } from '../login/login'\nimport ns from './ns'\nimport * as participation from './participation' // @ts-ignore\nimport * as widgets from '../widgets'\n\nconst kb = store\n\n// This was tabulator . preferences in the tabulator\n// Is this functionality used anywhere?\n//\n\n// used for storing user name\n// @@ Deprocate these functions. They were used for\n// communication around the tabulator functionality about the user session\n\nexport const value = []\nexport function get (k) {\n return value[k]\n}\n\nexport function set (k, v) {\n if (typeof v !== 'string') {\n debug.log('Non-string value of preference ' + k + ': ' + v)\n throw new Error('Non-string value of preference ' + k + ': ' + v)\n }\n this.value[k] = v\n}\n\n// In a solid world, Preferences are stored in the web\n//\n// Make an RDF node for recording the common view preferences for any object\n// (maybe make it in a separate file?)\nexport function recordSharedPreferences (subject, context) {\n return new Promise(function (resolve, reject) {\n const sharedPreferences = kb.any(subject, ns.ui('sharedPreferences'))\n if (!sharedPreferences) {\n if (!kb.updater.editable(subject.doc())) {\n debug.log(` Cant make shared preferences, may not change ${subject.doc}`)\n resolve(context)\n }\n const sp = $rdf.sym(subject.doc().uri + '#SharedPreferences')\n const ins = [\n $rdf.st(subject, ns.ui('sharedPreferences'), sp, subject.doc())\n ]\n debug.log('Creating shared preferences ' + sp)\n kb.updater.update([], ins, function (uri, ok, errorMessage) {\n if (!ok) {\n reject(new Error('Error creating shared prefs: ' + errorMessage))\n } else {\n context.sharedPreferences = sp\n resolve(context)\n }\n })\n } else {\n context.sharedPreferences = sharedPreferences\n resolve(context)\n }\n })\n}\n\n// Construct a personal defaults node in the preferences file for a given class of object\n//\nexport function recordPersonalDefaults (theClass, context) {\n return new Promise(function (resolve, reject) {\n ensureLoadedPreferences(context).then(\n context => {\n if (!context.preferencesFile) {\n debug.log(\n 'Not doing private class preferences as no access to preferences file. ' +\n context.preferencesFileError\n )\n return\n }\n const regs = kb.each(\n null,\n ns.solid('forClass'),\n theClass,\n context.preferencesFile\n )\n let ins = []\n let prefs\n let reg\n if (regs.length) {\n // Use existing node if we can\n regs.forEach(r => {\n prefs = prefs || kb.any(r, ns.solid('personalDefaults'))\n })\n if (prefs) {\n context.personalDefaults = prefs // Found one\n resolve(context)\n return\n } else {\n prefs = widgets.newThing(context.preferencesFile)\n reg = regs[0]\n }\n } else {\n // no regs fo class\n reg = widgets.newThing(context.preferencesFile)\n ins = [\n $rdf.st(\n reg,\n ns.rdf('type'),\n ns.solid('TypeRegistration'),\n context.preferencesFile\n ),\n $rdf.st(reg, ns.solid('forClass'), theClass, context.preferencesFile)\n ]\n }\n prefs = widgets.newThing(context.preferencesFile)\n ins.push(\n $rdf.st(\n reg,\n ns.solid('personalDefaults'),\n prefs,\n context.preferencesFile\n )\n )\n kb.updater.update([], ins, function (uri, ok, errm) {\n if (!ok) {\n reject(new Error('Setting preferences for ' + theClass + ': ' + errm))\n } else {\n context.personalDefaults = prefs\n resolve(context)\n }\n })\n },\n err => {\n reject(err)\n }\n )\n })\n}\n\nexport function renderPreferencesForm (subject, theClass, preferencesForm, context) {\n const prefContainer = context.dom.createElement('div')\n participation.participationObject(subject, subject.doc(), context.me).then(\n participation => {\n const dom = context.dom\n function heading (text) {\n prefContainer.appendChild(dom.createElement('h5')).textContent = text\n }\n heading('My view of this ' + context.noun)\n widgets.appendForm(\n dom,\n prefContainer,\n {},\n participation,\n preferencesForm,\n subject.doc(),\n (ok, mes) => {\n if (!ok) widgets.complain(context, mes)\n }\n )\n\n heading('Everyone\\'s view of this ' + context.noun)\n recordSharedPreferences(subject, context).then(context => {\n const sharedPreferences = context.sharedPreferences\n widgets.appendForm(\n dom,\n prefContainer,\n {},\n sharedPreferences,\n preferencesForm,\n subject.doc(),\n (ok, mes) => {\n if (!ok) widgets.complain(context, mes)\n }\n )\n\n heading('My default view of any ' + context.noun)\n recordPersonalDefaults(theClass, context).then(\n context => {\n widgets.appendForm(\n dom,\n prefContainer,\n {},\n context.personalDefaults,\n preferencesForm,\n context.preferencesFile,\n (ok, mes) => {\n if (!ok) widgets.complain(context, mes)\n }\n )\n },\n err => {\n widgets.complain(context, err)\n }\n )\n })\n },\n err => {\n // parp object fails\n prefContainer.appendChild(widgets.errorMessageBlock(context.dom, err))\n }\n )\n return prefContainer\n}\n\n// This should be part of rdflib.js ad part of the RDFJS Standard!!\n\nfunction toJS (term) {\n if (!term.datatype) return term // Objects remain objects\n if (term.datatype.equals(ns.xsd('boolean'))) {\n return term.value === '1'\n }\n if (\n term.datatype.equals(ns.xsd('dateTime')) ||\n term.datatype.equals(ns.xsd('date'))\n ) {\n return new Date(term.value)\n }\n if (\n term.datatype.equals(ns.xsd('integer')) ||\n term.datatype.equals(ns.xsd('float')) ||\n term.datatype.equals(ns.xsd('decimal'))\n ) {\n return Number(term.value)\n }\n return term.value\n}\n\n// This is the function which acuakly reads and combines the preferences\n//\n// @@ make it much more tolerant of missing buts of prefernces\nexport function getPreferencesForClass (subject, theClass, predicates, context) {\n return new Promise(function (resolve, reject) {\n recordSharedPreferences(subject, context).then(context => {\n const sharedPreferences = context.sharedPreferences\n if (context.me) {\n participation\n .participationObject(subject, subject.doc(), context.me)\n .then(participation => {\n recordPersonalDefaults(theClass, context).then(context => {\n const results = []\n const personalDefaults = context.personalDefaults\n predicates.forEach(pred => {\n // Order of preference: My settings on object, Global settings on object, my settings on class\n const v1 =\n kb.any(participation, pred) ||\n kb.any(sharedPreferences, pred) ||\n kb.any(personalDefaults, pred)\n if (v1) {\n results[pred.uri] = toJS(v1)\n }\n })\n resolve(results)\n }, reject)\n }, reject)\n } else {\n // no user defined, just use common prefs\n const results = []\n predicates.forEach(pred => {\n const v1 = kb.any(sharedPreferences, pred)\n if (v1) {\n results[pred.uri] = toJS(v1)\n }\n })\n resolve(results)\n }\n })\n })\n}\n\n// ends\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"preferences.cjs.js","names":["store","ns","$rdf","require_runtime","require_debug","require_login","require_error","require_buttons","require_forms","require_ns","require_participation","rdflib","solid_logic","preferences_exports","get","getPreferencesForClass","recordPersonalDefaults","recordSharedPreferences","renderPreferencesForm","set","value","kb","k","v","sharedPreferences","subject","resolve","context","sp","ins","ok","reject","errorMessage","regs","theClass","prefs","reg","r","errm","err","prefContainer","dom","heading","text","participation","preferencesForm","mes","toJS","term","results","personalDefaults","predicates","v1","pred"],"sources":["../../src/lib/preferences.js"],"sourcesContent":["// Solid-UI preferences\n// =====================\n//\n\nimport * as $rdf from 'rdflib' // pull in first avoid cross-refs\nimport { store } from 'solid-logic'\nimport * as debug from './debug'\nimport { ensureLoadedPreferences } from '../login/login'\nimport ns from './ns'\nimport * as participation from './participation' // @ts-ignore\nimport * as widgets from '../widgets'\n\nconst kb = store\n\n// This was tabulator . preferences in the tabulator\n// Is this functionality used anywhere?\n//\n\n// used for storing user name\n// @@ Deprocate these functions. They were used for\n// communication around the tabulator functionality about the user session\n\nexport const value = []\nexport function get (k) {\n return value[k]\n}\n\nexport function set (k, v) {\n if (typeof v !== 'string') {\n debug.log('Non-string value of preference ' + k + ': ' + v)\n throw new Error('Non-string value of preference ' + k + ': ' + v)\n }\n this.value[k] = v\n}\n\n// In a solid world, Preferences are stored in the web\n//\n// Make an RDF node for recording the common view preferences for any object\n// (maybe make it in a separate file?)\nexport function recordSharedPreferences (subject, context) {\n return new Promise(function (resolve, reject) {\n const sharedPreferences = kb.any(subject, ns.ui('sharedPreferences'))\n if (!sharedPreferences) {\n if (!kb.updater.editable(subject.doc())) {\n debug.log(` Cant make shared preferences, may not change ${subject.doc}`)\n resolve(context)\n }\n const sp = $rdf.sym(subject.doc().uri + '#SharedPreferences')\n const ins = [\n $rdf.st(subject, ns.ui('sharedPreferences'), sp, subject.doc())\n ]\n debug.log('Creating shared preferences ' + sp)\n kb.updater.update([], ins, function (uri, ok, errorMessage) {\n if (!ok) {\n reject(new Error('Error creating shared prefs: ' + errorMessage))\n } else {\n context.sharedPreferences = sp\n resolve(context)\n }\n })\n } else {\n context.sharedPreferences = sharedPreferences\n resolve(context)\n }\n })\n}\n\n// Construct a personal defaults node in the preferences file for a given class of object\n//\nexport function recordPersonalDefaults (theClass, context) {\n return new Promise(function (resolve, reject) {\n ensureLoadedPreferences(context).then(\n context => {\n if (!context.preferencesFile) {\n debug.log(\n 'Not doing private class preferences as no access to preferences file. ' +\n context.preferencesFileError\n )\n return\n }\n const regs = kb.each(\n null,\n ns.solid('forClass'),\n theClass,\n context.preferencesFile\n )\n let ins = []\n let prefs\n let reg\n if (regs.length) {\n // Use existing node if we can\n regs.forEach(r => {\n prefs = prefs || kb.any(r, ns.solid('personalDefaults'))\n })\n if (prefs) {\n context.personalDefaults = prefs // Found one\n resolve(context)\n return\n } else {\n prefs = widgets.newThing(context.preferencesFile)\n reg = regs[0]\n }\n } else {\n // no regs fo class\n reg = widgets.newThing(context.preferencesFile)\n ins = [\n $rdf.st(\n reg,\n ns.rdf('type'),\n ns.solid('TypeRegistration'),\n context.preferencesFile\n ),\n $rdf.st(reg, ns.solid('forClass'), theClass, context.preferencesFile)\n ]\n }\n prefs = widgets.newThing(context.preferencesFile)\n ins.push(\n $rdf.st(\n reg,\n ns.solid('personalDefaults'),\n prefs,\n context.preferencesFile\n )\n )\n kb.updater.update([], ins, function (uri, ok, errm) {\n if (!ok) {\n reject(new Error('Setting preferences for ' + theClass + ': ' + errm))\n } else {\n context.personalDefaults = prefs\n resolve(context)\n }\n })\n },\n err => {\n reject(err)\n }\n )\n })\n}\n\nexport function renderPreferencesForm (subject, theClass, preferencesForm, context) {\n const prefContainer = context.dom.createElement('div')\n participation.participationObject(subject, subject.doc(), context.me).then(\n participation => {\n const dom = context.dom\n function heading (text) {\n prefContainer.appendChild(dom.createElement('h5')).textContent = text\n }\n heading('My view of this ' + context.noun)\n widgets.appendForm(\n dom,\n prefContainer,\n {},\n participation,\n preferencesForm,\n subject.doc(),\n (ok, mes) => {\n if (!ok) widgets.complain(context, mes)\n }\n )\n\n heading('Everyone\\'s view of this ' + context.noun)\n recordSharedPreferences(subject, context).then(context => {\n const sharedPreferences = context.sharedPreferences\n widgets.appendForm(\n dom,\n prefContainer,\n {},\n sharedPreferences,\n preferencesForm,\n subject.doc(),\n (ok, mes) => {\n if (!ok) widgets.complain(context, mes)\n }\n )\n\n heading('My default view of any ' + context.noun)\n recordPersonalDefaults(theClass, context).then(\n context => {\n widgets.appendForm(\n dom,\n prefContainer,\n {},\n context.personalDefaults,\n preferencesForm,\n context.preferencesFile,\n (ok, mes) => {\n if (!ok) widgets.complain(context, mes)\n }\n )\n },\n err => {\n widgets.complain(context, err)\n }\n )\n })\n },\n err => {\n // parp object fails\n prefContainer.appendChild(widgets.errorMessageBlock(context.dom, err))\n }\n )\n return prefContainer\n}\n\n// This should be part of rdflib.js ad part of the RDFJS Standard!!\n\nfunction toJS (term) {\n if (!term.datatype) return term // Objects remain objects\n if (term.datatype.equals(ns.xsd('boolean'))) {\n return term.value === '1'\n }\n if (\n term.datatype.equals(ns.xsd('dateTime')) ||\n term.datatype.equals(ns.xsd('date'))\n ) {\n return new Date(term.value)\n }\n if (\n term.datatype.equals(ns.xsd('integer')) ||\n term.datatype.equals(ns.xsd('float')) ||\n term.datatype.equals(ns.xsd('decimal'))\n ) {\n return Number(term.value)\n }\n return term.value\n}\n\n// This is the function which acuakly reads and combines the preferences\n//\n// @@ make it much more tolerant of missing buts of prefernces\nexport function getPreferencesForClass (subject, theClass, predicates, context) {\n return new Promise(function (resolve, reject) {\n recordSharedPreferences(subject, context).then(context => {\n const sharedPreferences = context.sharedPreferences\n if (context.me) {\n participation\n .participationObject(subject, subject.doc(), context.me)\n .then(participation => {\n recordPersonalDefaults(theClass, context).then(context => {\n const results = []\n const personalDefaults = context.personalDefaults\n predicates.forEach(pred => {\n // Order of preference: My settings on object, Global settings on object, my settings on class\n const v1 =\n kb.any(participation, pred) ||\n kb.any(sharedPreferences, pred) ||\n kb.any(personalDefaults, pred)\n if (v1) {\n results[pred.uri] = toJS(v1)\n }\n })\n resolve(results)\n }, reject)\n }, reject)\n } else {\n // no user defined, just use common prefs\n const results = []\n predicates.forEach(pred => {\n const v1 = kb.any(sharedPreferences, pred)\n if (v1) {\n results[pred.uri] = toJS(v1)\n }\n })\n resolve(results)\n }\n })\n })\n}\n\n// ends\n"],"mappings":"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"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { __exportAll as e } from "../_virtual/_rolldown/runtime.esm.js";
|
|
2
|
-
import t from "./
|
|
3
|
-
import {
|
|
2
|
+
import { log as t } from "./debug.esm.js";
|
|
3
|
+
import { ensureLoadedPreferences as n } from "../login/login.esm.js";
|
|
4
4
|
import { errorMessageBlock as r } from "../widgets/error.esm.js";
|
|
5
5
|
import { complain as i } from "../widgets/buttons.esm.js";
|
|
6
6
|
import { appendForm as a, newThing as o } from "../widgets/forms.esm.js";
|
|
7
|
-
import "
|
|
8
|
-
import { ensureLoadedPreferences as s } from "../login/login.esm.js";
|
|
7
|
+
import s from "./ns.esm.js";
|
|
9
8
|
import { participationObject as c } from "./participation.esm.js";
|
|
9
|
+
import "../widgets/index.esm.js";
|
|
10
10
|
import * as l from "rdflib";
|
|
11
11
|
import { store as u } from "solid-logic";
|
|
12
12
|
// src/lib/preferences.js
|
|
@@ -22,42 +22,42 @@ var d = /* @__PURE__ */ e({
|
|
|
22
22
|
function m(e) {
|
|
23
23
|
return p[e];
|
|
24
24
|
}
|
|
25
|
-
function h(e,
|
|
26
|
-
if (typeof
|
|
27
|
-
this.value[e] =
|
|
25
|
+
function h(e, n) {
|
|
26
|
+
if (typeof n != "string") throw t("Non-string value of preference " + e + ": " + n), Error("Non-string value of preference " + e + ": " + n);
|
|
27
|
+
this.value[e] = n;
|
|
28
28
|
}
|
|
29
|
-
function g(e,
|
|
30
|
-
return new Promise(function(
|
|
31
|
-
let
|
|
32
|
-
if (
|
|
29
|
+
function g(e, n) {
|
|
30
|
+
return new Promise(function(r, i) {
|
|
31
|
+
let a = f.any(e, s.ui("sharedPreferences"));
|
|
32
|
+
if (a) n.sharedPreferences = a, r(n);
|
|
33
33
|
else {
|
|
34
|
-
f.updater.editable(e.doc()) || (
|
|
35
|
-
let
|
|
36
|
-
|
|
37
|
-
t ? (
|
|
34
|
+
f.updater.editable(e.doc()) || (t(` Cant make shared preferences, may not change ${e.doc}`), r(n));
|
|
35
|
+
let a = l.sym(e.doc().uri + "#SharedPreferences"), o = [l.st(e, s.ui("sharedPreferences"), a, e.doc())];
|
|
36
|
+
t("Creating shared preferences " + a), f.updater.update([], o, function(e, t, o) {
|
|
37
|
+
t ? (n.sharedPreferences = a, r(n)) : i(/* @__PURE__ */ Error("Error creating shared prefs: " + o));
|
|
38
38
|
});
|
|
39
39
|
}
|
|
40
40
|
});
|
|
41
41
|
}
|
|
42
42
|
function _(e, r) {
|
|
43
43
|
return new Promise(function(i, a) {
|
|
44
|
-
|
|
45
|
-
if (!
|
|
46
|
-
|
|
44
|
+
n(r).then((n) => {
|
|
45
|
+
if (!n.preferencesFile) {
|
|
46
|
+
t("Not doing private class preferences as no access to preferences file. " + n.preferencesFileError);
|
|
47
47
|
return;
|
|
48
48
|
}
|
|
49
|
-
let
|
|
50
|
-
if (
|
|
51
|
-
if (
|
|
52
|
-
u ||= f.any(e,
|
|
49
|
+
let r = f.each(null, s.solid("forClass"), e, n.preferencesFile), c = [], u, d;
|
|
50
|
+
if (r.length) {
|
|
51
|
+
if (r.forEach((e) => {
|
|
52
|
+
u ||= f.any(e, s.solid("personalDefaults"));
|
|
53
53
|
}), u) {
|
|
54
|
-
|
|
54
|
+
n.personalDefaults = u, i(n);
|
|
55
55
|
return;
|
|
56
56
|
}
|
|
57
|
-
u = o(
|
|
58
|
-
} else d = o(
|
|
59
|
-
u = o(
|
|
60
|
-
|
|
57
|
+
u = o(n.preferencesFile), d = r[0];
|
|
58
|
+
} else d = o(n.preferencesFile), c = [l.st(d, s.rdf("type"), s.solid("TypeRegistration"), n.preferencesFile), l.st(d, s.solid("forClass"), e, n.preferencesFile)];
|
|
59
|
+
u = o(n.preferencesFile), c.push(l.st(d, s.solid("personalDefaults"), u, n.preferencesFile)), f.updater.update([], c, function(t, r, o) {
|
|
60
|
+
r ? (n.personalDefaults = u, i(n)) : a(/* @__PURE__ */ Error("Setting preferences for " + e + ": " + o));
|
|
61
61
|
});
|
|
62
62
|
}, (e) => {
|
|
63
63
|
a(e);
|
|
@@ -90,7 +90,7 @@ function v(e, t, n, o) {
|
|
|
90
90
|
}), s;
|
|
91
91
|
}
|
|
92
92
|
function y(e) {
|
|
93
|
-
return e.datatype ? e.datatype.equals(
|
|
93
|
+
return e.datatype ? e.datatype.equals(s.xsd("boolean")) ? e.value === "1" : e.datatype.equals(s.xsd("dateTime")) || e.datatype.equals(s.xsd("date")) ? new Date(e.value) : e.datatype.equals(s.xsd("integer")) || e.datatype.equals(s.xsd("float")) || e.datatype.equals(s.xsd("decimal")) ? Number(e.value) : e.value : e;
|
|
94
94
|
}
|
|
95
95
|
function b(e, t, n, r) {
|
|
96
96
|
return new Promise(function(i, a) {
|
package/dist/lib/table.cjs.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const e=require("../_virtual/_rolldown/runtime.cjs.js"),t=require("./ns.cjs.js"),n=require("./log.cjs.js"),r=require("../utils/label.cjs.js"),i=require("../utils/index.cjs.js"),a=require("./debug.cjs.js"),o=require("./iconBase.cjs.js"),s=require("../widgets/index.cjs.js");let c=require("rdflib");c=e.__toESM(c);let l=require("solid-logic");var u={icons:o.icons,log:n.log_exports,ns:t.default,utils:i.utils_exports,widgets:s.widgets_exports};function d(e,t){let n=t.sourceDocument,o=t.tableClass,s=t.query,d=u.ns,f=l.store,p={},ee={"http://www.w3.org/2002/07/owl#sameAs":!0,"http://www.w3.org/1999/02/22-rdf-syntax-ns#type":!0},m={"http://www.w3.org/2001/XMLSchema#decimal":!0,"http://www.w3.org/2001/XMLSchema#float":!0,"http://www.w3.org/2001/XMLSchema#double":!0,"http://www.w3.org/2001/XMLSchema#integer":!0,"http://www.w3.org/2001/XMLSchema#nonNegativeInteger":!0,"http://www.w3.org/2001/XMLSchema#positiveInteger":!0,"http://www.w3.org/2001/XMLSchema#nonPositiveInteger":!0,"http://www.w3.org/2001/XMLSchema#negativeInteger":!0,"http://www.w3.org/2001/XMLSchema#long":!0,"http://www.w3.org/2001/XMLSchema#int":!0,"http://www.w3.org/2001/XMLSchema#short":!0,"http://www.w3.org/2001/XMLSchema#byte":!0,"http://www.w3.org/2001/XMLSchema#unsignedLong":!0,"http://www.w3.org/2001/XMLSchema#unsignedInt":!0,"http://www.w3.org/2001/XMLSchema#unsignedShort":!0,"http://www.w3.org/2001/XMLSchema#unsignedByte":!0},te={"http://www.w3.org/2001/XMLSchema#dateTime":!0,"http://www.w3.org/2001/XMLSchema#date":!0},ne={"http://xmlns.com/foaf/0.1/Image":!0,"http://purl.org/dc/terms/Image":!0},h=t.keyVariable||`?_row`,g=0,_,v,y,b,x=null,S=null,C=e.createElement(`div`);C.className=`tableViewPane`,C.appendChild(re());let w=e.createElement(`div`);C.appendChild(w),C.refresh=function(){Z(T.query,T.logicalRows,T.columns,T)};let T;if(s)T=$(s),w.appendChild(T);else{let e=I();_=e[0],v=e[1],o||y.appendChild(le(_,v)),S=Ce(v),E(S||_)}return C;function re(){let t=e.createElement(`table`);t.setAttribute(`class`,`toolbar`);let n=e.createElement(`tr`);return y=e.createElement(`td`),n.appendChild(y),b=e.createElement(`td`),n.appendChild(b),t.appendChild(n),t}function ie(e,t){let n=t.getColumns();for(let t=0;t<n.length;++t){let r=f.variable(`_col`+t);e.vars.push(r),n[t].setVariable(r)}}function ae(e,t,n){let r=n.type;r||=f.variable(`_any`),e.pat.add(t,u.ns.rdf(`type`),r)}function oe(e,t,n){let r=n.getColumns();for(let n=0;n<r.length;++n){let i=r[n],a=f.formula();a.add(t,i.predicate,i.getVariable()),e.pat.optional.push(a)}}function se(e){let t=new c.Query,n=f.variable(h.slice(1));return ie(t,e),ae(t,n,e),oe(t,n,e),t}function E(e){D(b),b.appendChild(de(e)),ce(se(e),e)}function ce(e,t){x&&(x.running=!1);let n=$(e,t);D(w),w.appendChild(n),x=e}function D(e){for(;e.childNodes.length>0;)e.removeChild(e.childNodes[0])}function O(e){this.type=e,this.columns=null,this.allColumns=[],this.useCount=0,this.getAllColumns=function(){return this.allColumns},this.getColumns=function(){if(!this.columns){let e=this.getAllColumns();this.columns=e.slice(0,7)}return this.columns},this.getUnusedColumns=function(){let e=this.getAllColumns(),t=this.getColumns(),n=[];for(let r=0;r<e.length;++r)t.indexOf(e[r])===-1&&n.push(e[r]);return n},this.addColumn=function(e){this.columns.push(e)},this.removeColumn=function(e){this.columns=this.columns.filter(function(t){return t!==e})},this.getLabel=function(){return r.label(this.type)},this.addUse=function(){this.useCount+=1}}function k(){this.useCount=0,this.checkedAnyValues=!1,this.possiblyLiteral=!0,this.possiblyNumber=!0,this.constraints=[],this.checkValue=function(e){let t=e.termType;this.possiblyLiteral&&t!==`Literal`&&t!==`NamedNode`?(this.possiblyNumber=!1,this.possiblyLiteral=!1):this.possiblyNumber&&(t===`Literal`&&e.value.match(/^-?\d+(\.\d*)?$/)||(this.possiblyNumber=!1)),this.checkedAnyValues=!0},this.getVariable=function(){return this.variable},this.setVariable=function(e){this.variable=e},this.getKey=function(){return this.variable.toString()},this.addUse=function(){this.useCount+=1},this.getHints=function(){return t&&t.hints&&this.variable&&t.hints[this.variable.toNT()]?t.hints[this.variable.toNT()]:{}},this.getLabel=function(){return this.getHints().label?this.getHints().label:this.predicate?this.predicate.sameTerm(d.rdf(`type`))&&this.superClass?r.label(this.superClass,!0):r.label(this.predicate):this.variable?this.variable.toString():`unlabeled column?`},this.setPredicate=function(e,t,n){t?(this.inverse=e,this.constraints=this.constraints.concat(f.each(e,u.ns.rdfs(`domain`))),e.sameTerm(d.rdfs(`subClassOf`))&&n.termType===`NamedNode`&&(this.superClass=n,this.alternatives=f.each(void 0,d.rdfs(`subClassOf`),n))):(this.predicate=e,this.constraints=this.constraints.concat(f.each(e,u.ns.rdfs(`range`))))},this.getConstraints=function(){return this.constraints},this.filterFunction=function(){return!0},this.sortKey=function(){return this.getLabel().toLowerCase()},this.isImageColumn=function(){for(let e=0;e<this.constraints.length;e++)if(this.constraints[e].uri in ne)return!0;return!1}}function A(e,t){let n=[];for(let r in e){let i=e[r];(!t||t(r,i))&&n.push(i)}return n}function j(t,n){let r=e.createElement(`option`);return r.setAttribute(`value`,n),r.appendChild(e.createTextNode(t)),r}function le(t,n){let r=e.createElement(`div`);r.appendChild(e.createTextNode(`Select type: `));let i=e.createElement(`select`);i.appendChild(j(`All types`,`null`));for(let e in n)i.appendChild(j(n[e].getLabel(),e));return i.addEventListener(`click`,function(){let e;e=i.value===`null`?t:n[i.value],ue(e)},!1),r.appendChild(i),r}function ue(e){E(e)}function de(t){let n=e.createElement(`div`),r=t.getUnusedColumns();if(r.sort(function(e,t){let n=e.sortKey(),r=t.sortKey();return(n>r)-(n<r)}),r.length>0){n.appendChild(e.createTextNode(`Add column: `));let i=e.createElement(`select`);i.appendChild(j(``,`-1`));for(let e=0;e<r.length;++e){let t=r[e];i.appendChild(j(t.getLabel(),``+e))}n.appendChild(i),i.addEventListener(`click`,function(){let e=Number(i.value);e>=0&&(t.addColumn(r[e]),E(t))},!1)}return n}function fe(e,t){for(let n in e){let r=e[n];if(r.variable.toNT()===t)return r}throw Error(`getColumnForVariable: no column for variable ${t}`)}function pe(e,t){let n;return t.uri in e?n=e[t.uri]:(n=new k,n.setPredicate(t),e[t.uri]=n),n}function M(e,t){let n;return t.uri in e?n=e[t.uri]:(n=new O(t),e[t.uri]=n),n}function N(){let e={},t=f.statementsMatching(void 0,u.ns.rdf(`type`),o,n),r={};for(let n=0;n<t.length;++n){let i=t[n].object;if(i.termType!==`NamedNode`)continue;let a=M(e,i);i.uri in r||(r[i.uri]=[]),r[i.uri].push(t[n].subject),a.addUse()}return[r,e]}function P(e,t){let r=f.statementsMatching(e,void 0,void 0,n),i={};for(let e=0;e<r.length;++e){let n=r[e].predicate;if(n.uri in ee)continue;let a=pe(t,n);a.checkValue(r[e].object),i[n.uri]=a}return i}function F(e,t){let n={};for(let e=0;e<t.length;++e){let r=P(t[e],n);for(let e in r)r[e].addUse()}let r=A(n);L(r),e.allColumns=r}function I(){let e,t,n=N();e=n[0],t=n[1];for(let n in e){let r=e[n],i=t[n];F(i,r)}return[new O(null),A(t)]}function L(e){function t(e,t){return(e.useCount<t.useCount)-(e.useCount>t.useCount)}e.sort(t)}function R(t,n){let r=e.createElement(`a`);return r.appendChild(e.createTextNode(`[x]`)),r.addEventListener(`click`,function(){t.removeColumn(n),E(t)},!1),r}function z(t,n){let r=e.createElement(`tr`),i=e.createElement(`th`);r.appendChild(i);for(let i=0;i<t.length;++i){let a=e.createElement(`th`),o=t[i];a.appendChild(e.createTextNode(o.getLabel())),n&&a.appendChild(R(n,o)),r.appendChild(a)}return r}function me(e,t,n,r){let i=t.getKey();if(e.sort(function(e,t){let a=null,o=null;i in e.values&&(a=e.values[i][0]),i in t.values&&(o=t.values[i][0]);let s=n(a,o);return r?-s:s}),e.length){let t=e[0]._htmlRow.parentNode;for(let n=0;n<e.length;++n)t.removeChild(e[n]._htmlRow);for(let n=0;n<e.length;++n)t.appendChild(e[n]._htmlRow)}}function B(e,t){let n=!0;for(let r=0;r<t.length;++r){let i=t[r],a=i.getKey(),o=null;if(a in e.values&&(o=e.values[a][0]),!i.filterFunction(o)){n=!1;break}}let r=e._htmlRow;n?r.style.display=``:r.style.display=`none`}function V(e,t){for(let n=0;n<e.length;++n){let r=e[n];B(r,t)}}function H(e,t,n){function i(e){return e?e.termType===`Literal`?e.value.toLowerCase():e.termType===`NamedNode`?r.label(e).toLowerCase():e.value.toLowerCase():``}function a(e,t){let n=i(e),r=i(t);return n<r?-1:+(n>r)}me(e,t,a,n)}function U(t,n,i){let a=e.createElement(`div`),o=e.createElement(`input`);o.setAttribute(`type`,`text`),o.style.width=`70%`,a.appendChild(o);let s=e.createElement(`span`);s.appendChild(e.createTextNode(`▼`)),s.addEventListener(`click`,function(){H(t,i,!1)},!1),a.appendChild(s);let c=e.createElement(`span`);c.appendChild(e.createTextNode(`▲`)),c.addEventListener(`click`,function(){H(t,i,!0)},!1),a.appendChild(c);let l=null;return i.filterFunction=function(e){if(!l)return!0;if(e){let t;return t=e.termType===`Literal`?e.value:e.termType===`NamedNode`?r.label(e):``,t.toLowerCase().indexOf(l)>=0}return!1},o.addEventListener(`keyup`,function(){l=o.value===``?null:o.value.toLowerCase(),V(t,n)},!1),a}function W(t,n,i,a){let o=e.createElement(`div`),s=e.createElement(`select`),c={};for(let e=0;e<a.length;++e){let t=a[e];c[t.uri]=!0}let l=q(i).initialSelection;l&&(c=l),s.setAttribute(`multiple`,`true`);for(let e=0;e<a.length;++e){let t=a[e],n=j(r.label(t),e);c[t.uri]&&(n.selected=!0),s.appendChild(n)}return o.appendChild(s),i.filterFunction=function(e){return!c||e&&c[e.uri]},s.addEventListener(`click`,function(){{c={};let e=s.options;for(let t=0;t<e.length;t++){let n=e[t],r=Number(n.value);e[t].selected&&(c[a[r].uri]=!0)}}V(t,n)},!0),o}function G(t,n,r){let i=e.createElement(`div`),a=e.createElement(`input`);a.setAttribute(`type`,`text`),a.style.width=`40px`,i.appendChild(a);let o=e.createElement(`input`);o.setAttribute(`type`,`text`),o.style.width=`40px`,i.appendChild(o);let s=null,c=null;r.filterFunction=function(e){return e&&=Number(e),!(s&&(!e||e<s)||c&&(!e||e>c))};function l(){s=a.value===``?null:Number(a.value),c=o.value===``?null:Number(o.value),V(t,n)}return a.addEventListener(`keyup`,l,!1),o.addEventListener(`keyup`,l,!1),i}function he(e,t,n){return n.checkedAnyValues&&n.possiblyNumber?G(e,t,n):n.possiblyLiteral?U(e,t,n):null}function ge(e,t,n){if(n.superClass&&n.alternatives.length>0)return W(e,t,n,n.alternatives);let r=n.getConstraints(),i;for(let a=0;a<r.length;a++){if(i=r[a],n.checkedAnyValues&&n.possiblyNumber||i.uri in m)return G(e,t,n);if(i.uri===`http://www.w3.org/2000/01/rdf-schema#Literal`)return U(e,t,n);let o=f.each(i,u.ns.owl(`oneOf`));if(o.length>0)return W(e,t,n,o.elements)}return he(e,t,n)}function _e(t,n){let r=e.createElement(`tr`);r.className=`selectors`,r.appendChild(e.createElement(`td`));for(let i=0;i<n.length;++i){let a=e.createElement(`td`),o=ge(t,n,n[i]);o&&a.appendChild(o),r.appendChild(a)}return r}function K(t,n,r){r||={};let o=e.createElement(`a`),s=r.linkFunction;return o.setAttribute(`href`,t),o.appendChild(e.createTextNode(n)),s?o.addEventListener(`click`,function(e){e.preventDefault(),e.stopPropagation();let t=i.getTarget(e).getAttribute(`href`);t||a.log(`No href found
|
|
2
|
-
`),s(
|
|
3
|
-
`)),r&&(o.style.background=`#efe`)}}t.appendChild(o)}return n._htmlRow=t,t}function Y(e,t){let n=null;if(e.termType===`Literal`)n=`value`;else if(e.termType===`NamedNode`)n=`uri`;else return t.indexOf(e)>=0;let r=0;for(;r<t.length;++r)if(t[r].termType===e.termType&&t[r][n]===e[n])return!0;return!1}function xe(e,t,n){let r,i=!1;for(r in n){let t=n[r];r in e.values||(e.values[r]=[]),Y(t,e.values[r])||(e.values[r].push(t),i=!0)}i&&(D(e._htmlRow),be(e._htmlRow,e,t)),B(e,t)}function X(e){if(`uri`in e)return e.uri;if(`_subject_id`in e)return e._subject_id;{let t=``+g;return e._subject_id=t,++g,t}}function Z(
|
|
1
|
+
const e=require("../_virtual/_rolldown/runtime.cjs.js"),t=require("./debug.cjs.js"),n=require("./iconBase.cjs.js"),r=require("../utils/label.cjs.js"),i=require("./log.cjs.js"),a=require("./ns.cjs.js"),o=require("../utils/index.cjs.js"),s=require("../widgets/index.cjs.js");let c=require("rdflib");c=e.__toESM(c);let l=require("solid-logic");var u={icons:n.icons,log:i.log_exports,ns:a.default,utils:o.utils_exports,widgets:s.widgets_exports};function d(e,n){let i=n.sourceDocument,a=n.tableClass,s=n.query,d=u.ns,f=l.store,p={},ee={"http://www.w3.org/2002/07/owl#sameAs":!0,"http://www.w3.org/1999/02/22-rdf-syntax-ns#type":!0},m={"http://www.w3.org/2001/XMLSchema#decimal":!0,"http://www.w3.org/2001/XMLSchema#float":!0,"http://www.w3.org/2001/XMLSchema#double":!0,"http://www.w3.org/2001/XMLSchema#integer":!0,"http://www.w3.org/2001/XMLSchema#nonNegativeInteger":!0,"http://www.w3.org/2001/XMLSchema#positiveInteger":!0,"http://www.w3.org/2001/XMLSchema#nonPositiveInteger":!0,"http://www.w3.org/2001/XMLSchema#negativeInteger":!0,"http://www.w3.org/2001/XMLSchema#long":!0,"http://www.w3.org/2001/XMLSchema#int":!0,"http://www.w3.org/2001/XMLSchema#short":!0,"http://www.w3.org/2001/XMLSchema#byte":!0,"http://www.w3.org/2001/XMLSchema#unsignedLong":!0,"http://www.w3.org/2001/XMLSchema#unsignedInt":!0,"http://www.w3.org/2001/XMLSchema#unsignedShort":!0,"http://www.w3.org/2001/XMLSchema#unsignedByte":!0},te={"http://www.w3.org/2001/XMLSchema#dateTime":!0,"http://www.w3.org/2001/XMLSchema#date":!0},ne={"http://xmlns.com/foaf/0.1/Image":!0,"http://purl.org/dc/terms/Image":!0},h=n.keyVariable||`?_row`,g=0,_,v,y,b,x=null,S=null,C=e.createElement(`div`);C.className=`tableViewPane`,C.appendChild(re());let w=e.createElement(`div`);C.appendChild(w),C.refresh=function(){Z(T.query,T.logicalRows,T.columns,T)};let T;if(s)T=$(s),w.appendChild(T);else{let e=I();_=e[0],v=e[1],a||y.appendChild(le(_,v)),S=Ce(v),E(S||_)}return C;function re(){let t=e.createElement(`table`);t.setAttribute(`class`,`toolbar`);let n=e.createElement(`tr`);return y=e.createElement(`td`),n.appendChild(y),b=e.createElement(`td`),n.appendChild(b),t.appendChild(n),t}function ie(e,t){let n=t.getColumns();for(let t=0;t<n.length;++t){let r=f.variable(`_col`+t);e.vars.push(r),n[t].setVariable(r)}}function ae(e,t,n){let r=n.type;r||=f.variable(`_any`),e.pat.add(t,u.ns.rdf(`type`),r)}function oe(e,t,n){let r=n.getColumns();for(let n=0;n<r.length;++n){let i=r[n],a=f.formula();a.add(t,i.predicate,i.getVariable()),e.pat.optional.push(a)}}function se(e){let t=new c.Query,n=f.variable(h.slice(1));return ie(t,e),ae(t,n,e),oe(t,n,e),t}function E(e){D(b),b.appendChild(de(e)),ce(se(e),e)}function ce(e,t){x&&(x.running=!1);let n=$(e,t);D(w),w.appendChild(n),x=e}function D(e){for(;e.childNodes.length>0;)e.removeChild(e.childNodes[0])}function O(e){this.type=e,this.columns=null,this.allColumns=[],this.useCount=0,this.getAllColumns=function(){return this.allColumns},this.getColumns=function(){if(!this.columns){let e=this.getAllColumns();this.columns=e.slice(0,7)}return this.columns},this.getUnusedColumns=function(){let e=this.getAllColumns(),t=this.getColumns(),n=[];for(let r=0;r<e.length;++r)t.indexOf(e[r])===-1&&n.push(e[r]);return n},this.addColumn=function(e){this.columns.push(e)},this.removeColumn=function(e){this.columns=this.columns.filter(function(t){return t!==e})},this.getLabel=function(){return r.label(this.type)},this.addUse=function(){this.useCount+=1}}function k(){this.useCount=0,this.checkedAnyValues=!1,this.possiblyLiteral=!0,this.possiblyNumber=!0,this.constraints=[],this.checkValue=function(e){let t=e.termType;this.possiblyLiteral&&t!==`Literal`&&t!==`NamedNode`?(this.possiblyNumber=!1,this.possiblyLiteral=!1):this.possiblyNumber&&(t===`Literal`&&e.value.match(/^-?\d+(\.\d*)?$/)||(this.possiblyNumber=!1)),this.checkedAnyValues=!0},this.getVariable=function(){return this.variable},this.setVariable=function(e){this.variable=e},this.getKey=function(){return this.variable.toString()},this.addUse=function(){this.useCount+=1},this.getHints=function(){return n&&n.hints&&this.variable&&n.hints[this.variable.toNT()]?n.hints[this.variable.toNT()]:{}},this.getLabel=function(){return this.getHints().label?this.getHints().label:this.predicate?this.predicate.sameTerm(d.rdf(`type`))&&this.superClass?r.label(this.superClass,!0):r.label(this.predicate):this.variable?this.variable.toString():`unlabeled column?`},this.setPredicate=function(e,t,n){t?(this.inverse=e,this.constraints=this.constraints.concat(f.each(e,u.ns.rdfs(`domain`))),e.sameTerm(d.rdfs(`subClassOf`))&&n.termType===`NamedNode`&&(this.superClass=n,this.alternatives=f.each(void 0,d.rdfs(`subClassOf`),n))):(this.predicate=e,this.constraints=this.constraints.concat(f.each(e,u.ns.rdfs(`range`))))},this.getConstraints=function(){return this.constraints},this.filterFunction=function(){return!0},this.sortKey=function(){return this.getLabel().toLowerCase()},this.isImageColumn=function(){for(let e=0;e<this.constraints.length;e++)if(this.constraints[e].uri in ne)return!0;return!1}}function A(e,t){let n=[];for(let r in e){let i=e[r];(!t||t(r,i))&&n.push(i)}return n}function j(t,n){let r=e.createElement(`option`);return r.setAttribute(`value`,n),r.appendChild(e.createTextNode(t)),r}function le(t,n){let r=e.createElement(`div`);r.appendChild(e.createTextNode(`Select type: `));let i=e.createElement(`select`);i.appendChild(j(`All types`,`null`));for(let e in n)i.appendChild(j(n[e].getLabel(),e));return i.addEventListener(`click`,function(){let e;e=i.value===`null`?t:n[i.value],ue(e)},!1),r.appendChild(i),r}function ue(e){E(e)}function de(t){let n=e.createElement(`div`),r=t.getUnusedColumns();if(r.sort(function(e,t){let n=e.sortKey(),r=t.sortKey();return(n>r)-(n<r)}),r.length>0){n.appendChild(e.createTextNode(`Add column: `));let i=e.createElement(`select`);i.appendChild(j(``,`-1`));for(let e=0;e<r.length;++e){let t=r[e];i.appendChild(j(t.getLabel(),``+e))}n.appendChild(i),i.addEventListener(`click`,function(){let e=Number(i.value);e>=0&&(t.addColumn(r[e]),E(t))},!1)}return n}function fe(e,t){for(let n in e){let r=e[n];if(r.variable.toNT()===t)return r}throw Error(`getColumnForVariable: no column for variable ${t}`)}function pe(e,t){let n;return t.uri in e?n=e[t.uri]:(n=new k,n.setPredicate(t),e[t.uri]=n),n}function M(e,t){let n;return t.uri in e?n=e[t.uri]:(n=new O(t),e[t.uri]=n),n}function N(){let e={},t=f.statementsMatching(void 0,u.ns.rdf(`type`),a,i),n={};for(let r=0;r<t.length;++r){let i=t[r].object;if(i.termType!==`NamedNode`)continue;let a=M(e,i);i.uri in n||(n[i.uri]=[]),n[i.uri].push(t[r].subject),a.addUse()}return[n,e]}function P(e,t){let n=f.statementsMatching(e,void 0,void 0,i),r={};for(let e=0;e<n.length;++e){let i=n[e].predicate;if(i.uri in ee)continue;let a=pe(t,i);a.checkValue(n[e].object),r[i.uri]=a}return r}function F(e,t){let n={};for(let e=0;e<t.length;++e){let r=P(t[e],n);for(let e in r)r[e].addUse()}let r=A(n);L(r),e.allColumns=r}function I(){let e,t,n=N();e=n[0],t=n[1];for(let n in e){let r=e[n],i=t[n];F(i,r)}return[new O(null),A(t)]}function L(e){function t(e,t){return(e.useCount<t.useCount)-(e.useCount>t.useCount)}e.sort(t)}function R(t,n){let r=e.createElement(`a`);return r.appendChild(e.createTextNode(`[x]`)),r.addEventListener(`click`,function(){t.removeColumn(n),E(t)},!1),r}function z(t,n){let r=e.createElement(`tr`),i=e.createElement(`th`);r.appendChild(i);for(let i=0;i<t.length;++i){let a=e.createElement(`th`),o=t[i];a.appendChild(e.createTextNode(o.getLabel())),n&&a.appendChild(R(n,o)),r.appendChild(a)}return r}function me(e,t,n,r){let i=t.getKey();if(e.sort(function(e,t){let a=null,o=null;i in e.values&&(a=e.values[i][0]),i in t.values&&(o=t.values[i][0]);let s=n(a,o);return r?-s:s}),e.length){let t=e[0]._htmlRow.parentNode;for(let n=0;n<e.length;++n)t.removeChild(e[n]._htmlRow);for(let n=0;n<e.length;++n)t.appendChild(e[n]._htmlRow)}}function B(e,t){let n=!0;for(let r=0;r<t.length;++r){let i=t[r],a=i.getKey(),o=null;if(a in e.values&&(o=e.values[a][0]),!i.filterFunction(o)){n=!1;break}}let r=e._htmlRow;n?r.style.display=``:r.style.display=`none`}function V(e,t){for(let n=0;n<e.length;++n){let r=e[n];B(r,t)}}function H(e,t,n){function i(e){return e?e.termType===`Literal`?e.value.toLowerCase():e.termType===`NamedNode`?r.label(e).toLowerCase():e.value.toLowerCase():``}function a(e,t){let n=i(e),r=i(t);return n<r?-1:+(n>r)}me(e,t,a,n)}function U(t,n,i){let a=e.createElement(`div`),o=e.createElement(`input`);o.setAttribute(`type`,`text`),o.style.width=`70%`,a.appendChild(o);let s=e.createElement(`span`);s.appendChild(e.createTextNode(`▼`)),s.addEventListener(`click`,function(){H(t,i,!1)},!1),a.appendChild(s);let c=e.createElement(`span`);c.appendChild(e.createTextNode(`▲`)),c.addEventListener(`click`,function(){H(t,i,!0)},!1),a.appendChild(c);let l=null;return i.filterFunction=function(e){if(!l)return!0;if(e){let t;return t=e.termType===`Literal`?e.value:e.termType===`NamedNode`?r.label(e):``,t.toLowerCase().indexOf(l)>=0}return!1},o.addEventListener(`keyup`,function(){l=o.value===``?null:o.value.toLowerCase(),V(t,n)},!1),a}function W(t,n,i,a){let o=e.createElement(`div`),s=e.createElement(`select`),c={};for(let e=0;e<a.length;++e){let t=a[e];c[t.uri]=!0}let l=q(i).initialSelection;l&&(c=l),s.setAttribute(`multiple`,`true`);for(let e=0;e<a.length;++e){let t=a[e],n=j(r.label(t),e);c[t.uri]&&(n.selected=!0),s.appendChild(n)}return o.appendChild(s),i.filterFunction=function(e){return!c||e&&c[e.uri]},s.addEventListener(`click`,function(){{c={};let e=s.options;for(let t=0;t<e.length;t++){let n=e[t],r=Number(n.value);e[t].selected&&(c[a[r].uri]=!0)}}V(t,n)},!0),o}function G(t,n,r){let i=e.createElement(`div`),a=e.createElement(`input`);a.setAttribute(`type`,`text`),a.style.width=`40px`,i.appendChild(a);let o=e.createElement(`input`);o.setAttribute(`type`,`text`),o.style.width=`40px`,i.appendChild(o);let s=null,c=null;r.filterFunction=function(e){return e&&=Number(e),!(s&&(!e||e<s)||c&&(!e||e>c))};function l(){s=a.value===``?null:Number(a.value),c=o.value===``?null:Number(o.value),V(t,n)}return a.addEventListener(`keyup`,l,!1),o.addEventListener(`keyup`,l,!1),i}function he(e,t,n){return n.checkedAnyValues&&n.possiblyNumber?G(e,t,n):n.possiblyLiteral?U(e,t,n):null}function ge(e,t,n){if(n.superClass&&n.alternatives.length>0)return W(e,t,n,n.alternatives);let r=n.getConstraints(),i;for(let a=0;a<r.length;a++){if(i=r[a],n.checkedAnyValues&&n.possiblyNumber||i.uri in m)return G(e,t,n);if(i.uri===`http://www.w3.org/2000/01/rdf-schema#Literal`)return U(e,t,n);let o=f.each(i,u.ns.owl(`oneOf`));if(o.length>0)return W(e,t,n,o.elements)}return he(e,t,n)}function _e(t,n){let r=e.createElement(`tr`);r.className=`selectors`,r.appendChild(e.createElement(`td`));for(let i=0;i<n.length;++i){let a=e.createElement(`td`),o=ge(t,n,n[i]);o&&a.appendChild(o),r.appendChild(a)}return r}function K(n,r,i){i||={};let a=e.createElement(`a`),s=i.linkFunction;return a.setAttribute(`href`,n),a.appendChild(e.createTextNode(r)),s?a.addEventListener(`click`,function(e){e.preventDefault(),e.stopPropagation();let n=o.getTarget(e).getAttribute(`href`);n||t.log(`No href found
|
|
2
|
+
`),s(n)},!0):a.addEventListener(`click`,u.widgets.openHrefInOutlineMode,!0),a}function ve(e,t){let n=!1;return e.uri&&(n=e.uri.match(/^mailto:(.*)/)),n?K(e.uri,n[1],t):K(e.uri,r.label(e),t)}function ye(t){let n=e.createElement(`img`);return n.setAttribute(`src`,t.uri),n.style.height=`40px`,n}function q(e){return n&&n.hints&&e.variable&&n.hints[e.variable.toNT()]?n.hints[e.variable.toNT()]:{}}function J(t,n){let r=q(n),i=r.cellFormat;if(i)switch(i){case`shortDate`:return e.createTextNode(u.widgets.shortDate(t.value))}else if(t.termType===`Literal`){if(t.datatype){if(te[t.datatype.uri])return e.createTextNode(u.widgets.shortDate(t.value));if(m[t.datatype.uri]){let n=e.createElement(`span`);return n.textContent=t.value,n.setAttribute(`style`,`text-align: right`),n}}return e.createTextNode(t.value)}else if(t.termType===`NamedNode`&&n.isImageColumn())return ye(t);else if(t.termType===`NamedNode`||t.termType===`BlankNode`)return ve(t,r);else if(t.termType===`Collection`){let r=e.createElement(`span`);return r.appendChild(e.createTextNode(`[`)),t.elements.forEach(function(t){r.appendChild(J(t,n)),r.appendChild(e.createTextNode(`, `))}),r.removeChild(r.lastChild),r.appendChild(e.createTextNode(`]`)),r}else return e.createTextNode(`unknown termtype '`+t.termType+`'!`)}function be(t,n,r,i){let a=e.createElement(`td`);n._subject&&`uri`in n._subject&&a.appendChild(K(n._subject.uri,`→`)),t.appendChild(a);for(let i=0;i<r.length;++i){let a=r[i],o=e.createElement(`td`),s,c=a.getKey();if(c in n.values){let t=n.values[c],r=!1;n.originalValues&&n.originalValues[c]&&t.length!==n.originalValues[c].length&&(r=!0);for(let i=0;i<t.length;++i){let l=t[i];n.originalValues&&n.originalValues[c]&&n.originalValues[c].length>i&&(s=n.originalValues[c][i],l.toString()!==s.toString()&&(r=!0)),o.appendChild(J(l,a)),i!==t.length-1&&o.appendChild(e.createTextNode(`,
|
|
3
|
+
`)),r&&(o.style.background=`#efe`)}}t.appendChild(o)}return n._htmlRow=t,t}function Y(e,t){let n=null;if(e.termType===`Literal`)n=`value`;else if(e.termType===`NamedNode`)n=`uri`;else return t.indexOf(e)>=0;let r=0;for(;r<t.length;++r)if(t[r].termType===e.termType&&t[r][n]===e[n])return!0;return!1}function xe(e,t,n){let r,i=!1;for(r in n){let t=n[r];r in e.values||(e.values[r]=[]),Y(t,e.values[r])||(e.values[r].push(t),i=!0)}i&&(D(e._htmlRow),be(e._htmlRow,e,t)),B(e,t)}function X(e){if(`uri`in e)return e.uri;if(`_subject_id`in e)return e._subject_id;{let t=``+g;return e._subject_id=t,++g,t}}function Z(r,i,a,o){r.running=!0;let s=Date.now(),c=e.createElement(`tr`);o.appendChild(c),c.textContent=`Loading ...`;for(let e=0;e<i.length;e++)i[e].original=!0,i[e].originalValues||(i[e].originalValues=i[e].values),i[e].values={};f.query(r,function(t){if(!r.running)return;c.textContent+=`.`;let n=null,s=null,l;if(h in t&&(s=t[h],l=X(s),l in p&&(n=p[l])),!n){let t=e.createElement(`tr`);o.appendChild(t),n={_htmlRow:t,_subject:s,values:{}},i.push(n),s&&(p[l]=n)}delete n.original,xe(n,a,t)},void 0,function(){c&&c.parentNode&&c.parentNode.removeChild&&(c.parentNode.removeChild(c),c=null);let e=Date.now()-s;t.log(`Query done: `+i.length+` rows, `+e+`ms`);for(let e=i.length-1;e>=0;e--)if(i[e].original){t.log(` deleting row `+i[e]._subject);let n=i[e]._htmlRow;n.parentNode.removeChild(n),delete p[X(i[e]._subject)],i.splice(e,1)}n.sortBy&&H(i,fe(a,n.sortBy),n.sortReverse),n.onDone&&n.onDone(C)})}function Q(e,t){u.log.debug(`>> processing formula`);for(let n=0;n<t.statements.length;++n){let r=t.statements[n];if(r.predicate.termType===`NamedNode`&&r.object.termType===`Variable`){let t=r.object.toString();t in e&&e[t].setPredicate(r.predicate,!1,r.subject)}if(r.predicate.termType===`NamedNode`&&r.subject.termType===`Variable`){let t=r.subject.toString();t in e&&e[t].setPredicate(r.predicate,!0,r.object)}}for(let n=0;n<t.optional.length;++n)u.log.debug(`recurse to optional subformula `+n),Q(e,t.optional[n]);u.log.debug(`<< finished processing formula`)}function Se(e){let t=[],n={};for(let r=0;r<e.vars.length;++r){let i=new k,a=e.vars[r];u.log.debug(`column `+r+` : `+a),i.setVariable(a),n[a]=i,t.push(i)}return Q(n,e.pat),t}function $(t,n){let r;r=s?Se(t):n.getColumns();let i=[],a=e.createElement(`table`);return a.appendChild(z(r,n)),a.appendChild(_e(i,r)),a.logicalRows=i,a.columns=r,a.query=t,Z(t,i,r,a),a}function Ce(e){let t=-1,n=null,r;for(r in e){let i=e[r];i.useCount>t&&(n=i,t=i.useCount)}return n}}exports.renderTableViewPane=d;
|
|
4
4
|
//# sourceMappingURL=table.cjs.js.map
|