solid-panes 3.7.3-f251a0e3 → 3.7.3-newStyle-363115da
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/RDFXMLPane.js +2 -1
- package/dist/RDFXMLPane.js.map +1 -1
- package/dist/dashboard/basicPreferences.js +121 -129
- package/dist/dashboard/basicPreferences.js.map +1 -1
- package/dist/dashboard/dashboardPane.js +60 -54
- package/dist/dashboard/dashboardPane.js.map +1 -1
- package/dist/dashboard/homepage.js +45 -54
- package/dist/dashboard/homepage.js.map +1 -1
- package/dist/dataContentPane.js +3 -2
- package/dist/dataContentPane.js.map +1 -1
- package/dist/defaultPane.js +1 -1
- package/dist/defaultPane.js.map +1 -1
- package/dist/home/homePane.d.ts.map +1 -1
- package/dist/home/homePane.js +60 -55
- package/dist/home/homePane.js.map +1 -1
- package/dist/index.js +86 -25
- package/dist/index.js.map +1 -1
- package/dist/internal/internalPane.js +168 -179
- package/dist/internal/internalPane.js.map +1 -1
- package/dist/mainPage/footer.js +13 -7
- package/dist/mainPage/footer.js.map +1 -1
- package/dist/mainPage/header.js +60 -58
- package/dist/mainPage/header.js.map +1 -1
- package/dist/mainPage/index.js +19 -24
- package/dist/mainPage/index.js.map +1 -1
- package/dist/microblogPane/microblogPane.js +18 -17
- package/dist/microblogPane/microblogPane.js.map +1 -1
- package/dist/n3Pane.js +2 -1
- package/dist/n3Pane.js.map +1 -1
- package/dist/outline/context.js +17 -11
- package/dist/outline/context.js.map +1 -1
- package/dist/outline/manager.js +11 -11
- package/dist/outline/manager.js.map +1 -1
- package/dist/outline/propertyViews.js +39 -28
- package/dist/outline/propertyViews.js.map +1 -1
- package/dist/outline/queryByExample.js +4 -3
- package/dist/outline/queryByExample.js.map +1 -1
- package/dist/outline/userInput.js +13 -13
- package/dist/outline/userInput.js.map +1 -1
- package/dist/outline/viewAsImage.js +13 -5
- package/dist/outline/viewAsImage.js.map +1 -1
- package/dist/outline/viewAsMbox.js +20 -11
- package/dist/outline/viewAsMbox.js.map +1 -1
- package/dist/pad/padPane.js +395 -404
- package/dist/pad/padPane.js.map +1 -1
- package/dist/schedule/schedulePane.js +4 -5
- package/dist/schedule/schedulePane.js.map +1 -1
- package/dist/sharing/sharingPane.js +36 -32
- package/dist/sharing/sharingPane.js.map +1 -1
- package/dist/socialPane.js +2 -1
- package/dist/socialPane.js.map +1 -1
- package/dist/tabbed/tabbedPane.js +54 -51
- package/dist/tabbed/tabbedPane.js.map +1 -1
- package/dist/trustedApplications/trustedApplications.dom.js +134 -146
- package/dist/trustedApplications/trustedApplications.dom.js.map +1 -1
- package/dist/trustedApplications/trustedApplications.utils.js +20 -20
- package/dist/trustedApplications/trustedApplications.utils.js.map +1 -1
- package/dist/trustedApplications/trustedApplications.view.js +51 -57
- package/dist/trustedApplications/trustedApplications.view.js.map +1 -1
- package/dist/versionInfo.js +35 -29
- package/dist/versionInfo.js.map +1 -1
- package/package.json +31 -36
- package/dist/schedule/formsForSchedule.js +0 -124
- package/dist/schedule/formsForSchedule.js.map +0 -1
- package/dist/types.d.ts +0 -30
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -2
- package/dist/types.js.map +0 -1
|
@@ -1,63 +1,54 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
wrapper.classList.add('container');
|
|
18
|
-
wrapper.appendChild(createTitle(ownersProfile.uri, name));
|
|
19
|
-
wrapper.appendChild(createDataSection(name));
|
|
20
|
-
return wrapper;
|
|
21
|
-
});
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.generateHomepage = generateHomepage;
|
|
7
|
+
var _rdflib = require("rdflib");
|
|
8
|
+
var _solidUi = require("solid-ui");
|
|
9
|
+
async function generateHomepage(subject, store, fetcher) {
|
|
10
|
+
const ownersProfile = await loadProfile(subject, fetcher);
|
|
11
|
+
const name = getName(store, ownersProfile);
|
|
12
|
+
const wrapper = document.createElement('div');
|
|
13
|
+
wrapper.classList.add('container');
|
|
14
|
+
wrapper.appendChild(createTitle(ownersProfile.uri, name));
|
|
15
|
+
wrapper.appendChild(createDataSection(name));
|
|
16
|
+
return wrapper;
|
|
22
17
|
}
|
|
23
18
|
function createDataSection(name) {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
19
|
+
const dataSection = document.createElement('section');
|
|
20
|
+
const title = document.createElement('h2');
|
|
21
|
+
title.innerText = 'Data';
|
|
22
|
+
dataSection.appendChild(title);
|
|
23
|
+
const listGroup = document.createElement('div');
|
|
24
|
+
listGroup.classList.add('list-group');
|
|
25
|
+
dataSection.appendChild(listGroup);
|
|
26
|
+
const publicDataLink = document.createElement('a');
|
|
27
|
+
publicDataLink.classList.add('list-group-item');
|
|
28
|
+
publicDataLink.href = window.document.location.href + 'public/';
|
|
29
|
+
publicDataLink.innerText = `View ${name}'s files`;
|
|
30
|
+
listGroup.appendChild(publicDataLink);
|
|
31
|
+
return dataSection;
|
|
37
32
|
}
|
|
38
33
|
function createTitle(uri, name) {
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
34
|
+
const profileLink = document.createElement('a');
|
|
35
|
+
profileLink.href = uri;
|
|
36
|
+
profileLink.innerText = name;
|
|
37
|
+
const profileLinkPost = document.createElement('span');
|
|
38
|
+
profileLinkPost.innerText = '\'s Pod';
|
|
39
|
+
const title = document.createElement('h1');
|
|
40
|
+
title.appendChild(profileLink);
|
|
41
|
+
title.appendChild(profileLinkPost);
|
|
42
|
+
return title;
|
|
48
43
|
}
|
|
49
|
-
function loadProfile(subject, fetcher) {
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
return webId;
|
|
56
|
-
});
|
|
44
|
+
async function loadProfile(subject, fetcher) {
|
|
45
|
+
const pod = subject.site().uri;
|
|
46
|
+
// TODO: This is a hack - we cannot assume that the profile is at this document, but we will live with it for now
|
|
47
|
+
const webId = (0, _rdflib.sym)(`${pod}profile/card#me`);
|
|
48
|
+
await fetcher.load(webId);
|
|
49
|
+
return webId;
|
|
57
50
|
}
|
|
58
51
|
function getName(store, ownersProfile) {
|
|
59
|
-
|
|
60
|
-
store.anyValue(ownersProfile, ns.foaf('name'), null, ownersProfile.doc()) ||
|
|
61
|
-
new URL(ownersProfile.uri).host.split('.')[0]);
|
|
52
|
+
return store.anyValue(ownersProfile, _solidUi.ns.vcard('fn'), null, ownersProfile.doc()) || store.anyValue(ownersProfile, _solidUi.ns.foaf('name'), null, ownersProfile.doc()) || new URL(ownersProfile.uri).host.split('.')[0];
|
|
62
53
|
}
|
|
63
54
|
//# sourceMappingURL=homepage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"homepage.js","
|
|
1
|
+
{"version":3,"file":"homepage.js","names":["_rdflib","require","_solidUi","generateHomepage","subject","store","fetcher","ownersProfile","loadProfile","name","getName","wrapper","document","createElement","classList","add","appendChild","createTitle","uri","createDataSection","dataSection","title","innerText","listGroup","publicDataLink","href","window","location","profileLink","profileLinkPost","pod","site","webId","sym","load","anyValue","ns","vcard","doc","foaf","URL","host","split"],"sources":["../../src/dashboard/homepage.ts"],"sourcesContent":["import { Fetcher, IndexedFormula, NamedNode, sym } from 'rdflib'\nimport { ns } from 'solid-ui'\n\nexport async function generateHomepage (\n subject: NamedNode,\n store: IndexedFormula,\n fetcher: Fetcher\n): Promise<HTMLElement> {\n const ownersProfile = await loadProfile(subject, fetcher)\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 Pod'\n\n const title = document.createElement('h1')\n title.appendChild(profileLink)\n title.appendChild(profileLinkPost)\n\n return title\n}\n\nasync function loadProfile (\n subject: NamedNode,\n fetcher: Fetcher\n): Promise<NamedNode> {\n const pod = subject.site().uri\n // TODO: This is a hack - we cannot assume that the profile is at this document, but we will live with it for now\n const webId = sym(`${pod}profile/card#me`)\n await fetcher.load(webId)\n return webId\n}\n\nfunction getName (store: IndexedFormula, ownersProfile: NamedNode): string {\n return (\n store.anyValue(ownersProfile, ns.vcard('fn'), null, ownersProfile.doc()) ||\n store.anyValue(ownersProfile, ns.foaf('name'), null, ownersProfile.doc()) ||\n new URL(ownersProfile.uri).host.split('.')[0]\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
package/dist/dataContentPane.js
CHANGED
|
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.dataContentPane = void 0;
|
|
7
7
|
var UI = _interopRequireWildcard(require("solid-ui"));
|
|
8
|
+
var $rdf = _interopRequireWildcard(require("rdflib"));
|
|
8
9
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
9
10
|
/* Data content Pane
|
|
10
11
|
**
|
|
@@ -39,7 +40,7 @@ const dataContentPane = exports.dataContentPane = {
|
|
|
39
40
|
const myDocument = context.dom;
|
|
40
41
|
// const outliner = context.getOutliner(myDocument)
|
|
41
42
|
const rep = myDocument.createElement('table');
|
|
42
|
-
const sz =
|
|
43
|
+
const sz = $rdf.Serializer(context.session.store);
|
|
43
44
|
const res = sz.rootSubjects(sts);
|
|
44
45
|
let roots = res.roots;
|
|
45
46
|
const subjects = res.subjects;
|
|
@@ -202,7 +203,7 @@ const dataContentPane = exports.dataContentPane = {
|
|
|
202
203
|
render: function (subject, context) {
|
|
203
204
|
const myDocument = context.dom;
|
|
204
205
|
function alternativeRendering() {
|
|
205
|
-
const sz =
|
|
206
|
+
const sz = $rdf.Serializer(context.session.store);
|
|
206
207
|
const res = sz.rootSubjects(sts);
|
|
207
208
|
const roots = res.roots;
|
|
208
209
|
const p = {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataContentPane.js","names":["UI","_interopRequireWildcard","require","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ns","dataContentPane","exports","icon","icons","originalIconBase","name","audience","solid","label","subject","context","session","store","findTypeURIs","statementsMatching","undefined","length","statementsAsTables","sts","initialRoots","myDocument","dom","rep","createElement","sz","rdf","Serializer","res","rootSubjects","roots","subjects","loopBreakers","x","console","log","doneBnodes","referencedBnodes","propertyTree","lastPred","toStr","appendChild","createTextNode","sort","same","predicateTD","st","tr","predicate","uri","setAttribute","anchor","addEventListener","widgets","openHrefInOutlineMode","utils","predicateLabelForXML","objectTD","objectTree","object","obj","termType","datatype","textContent","value","innerHTML","toNT","slice","newTable","ancestor","style","backgroundColor","elements","paneRegistry","byName","statements","Error","concat","filter","sameTerm","subjectTD","TDTree","root","bNT","table","insertBefore","firstChild","render","alternativeRendering","p","s2","div","plist","kb","outliner","appendPropertyTRs","_pred","_inverse","verticalAlign","td","outlineObjectTD","outlineExpand","pane","mainRendering","holds","push","ps","any","foaf","getOutliner"],"sources":["../src/dataContentPane.js"],"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'\nconst ns = UI.ns\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, context) {\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 (sts, context, initialRoots) {\n const myDocument = context.dom\n // const outliner = context.getOutliner(myDocument)\n const rep = myDocument.createElement('table')\n const sz = UI.rdf.Serializer(context.session.store)\n const res = sz.rootSubjects(sts)\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 = {} // For preventing looping\n const referencedBnodes = {} // Bnodes which need to be named alas\n\n // The property tree for a single subject or anonymous node\n function propertyTree (subject) {\n // print('Proprty tree for '+subject)\n const rep = myDocument.createElement('table')\n let lastPred = null\n const sts = subjects[sz.toStr(subject)] // relevant statements\n if (!sts) {\n // No statements in tree\n rep.appendChild(myDocument.createTextNode('...')) // just empty bnode as object\n return rep\n }\n sts.sort()\n let same = 0\n let predicateTD // The cell which holds the predicate\n for (let i = 0; i < sts.length; i++) {\n const st = sts[i]\n const tr = myDocument.createElement('tr')\n if (st.predicate.uri !== lastPred) {\n if (lastPred && same > 1) {\n predicateTD.setAttribute('rowspan', '' + same)\n }\n predicateTD = myDocument.createElement('td')\n predicateTD.setAttribute('class', 'pred')\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.appendChild(objectTree(st.object))\n tr.appendChild(objectTD)\n rep.appendChild(tr)\n }\n if (lastPred && same > 1) predicateTD.setAttribute('rowspan', '' + same)\n return rep\n }\n\n // Convert a set of statements into a nested tree of tables\n function objectTree (obj) {\n let res, anchor\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.setAttribute('style', 'white-space: pre-wrap;')\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.setAttribute('class', 'embeddedXHTML')\n res.innerHTML = obj.value // Try that @@@ beware embedded dangerous code\n return res\n }\n return myDocument.createTextNode(obj.value) // placeholder - could be smarter,\n\n case 'BlankNode': {\n if (obj.toNT() in doneBnodes) {\n // Break infinite recursion\n referencedBnodes[obj.toNT()] = true\n const anchor = myDocument.createElement('a')\n anchor.setAttribute('href', '#' + obj.toNT().slice(2))\n anchor.setAttribute('class', 'bnodeRef')\n anchor.textContent = '*' + obj.toNT().slice(3)\n return anchor\n }\n doneBnodes[obj.toNT()] = true // Flag to prevent infinite recursion in propertyTree\n const newTable = propertyTree(obj)\n doneBnodes[obj.toNT()] = newTable // Track where we mentioned it first\n if (\n UI.utils.ancestor(newTable, 'TABLE') &&\n UI.utils.ancestor(newTable, 'TABLE').style.backgroundColor ===\n 'white'\n ) {\n newTable.style.backgroundColor = '#eee'\n } else {\n newTable.style.backgroundColor = 'white'\n }\n return newTable\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]))\n }\n return res\n case 'Graph':\n res = context.session.paneRegistry\n .byName('dataContents')\n .statementsAsTables(obj.statements, context)\n res.setAttribute('class', 'nestedFormula')\n return res\n case 'Variable':\n res = myDocument.createTextNode('?' + obj.uri)\n return res\n }\n throw new Error('Unhandled node type: ' + obj.termType)\n }\n\n // roots.sort()\n\n if (initialRoots) {\n roots = initialRoots.concat(\n roots.filter(function (x) {\n for (let i = 0; i < initialRoots.length; i++) {\n // Max 2\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.setAttribute('style', `background-color: ${i % 2 === 0 ? '#f0f0f0' : 'white'};`)\n rep.appendChild(tr)\n const subjectTD = myDocument.createElement('td')\n tr.appendChild(subjectTD)\n const TDTree = myDocument.createElement('td')\n tr.appendChild(TDTree)\n const root = roots[i]\n if (root.termType === 'BlankNode') {\n subjectTD.appendChild(myDocument.createTextNode(UI.utils.label(root))) // Don't recurse!\n } else {\n subjectTD.appendChild(objectTree(root)) // won't have tree\n }\n TDTree.appendChild(propertyTree(root))\n }\n for (const bNT in referencedBnodes) {\n // Add number to refer to\n const table = doneBnodes[bNT]\n // let tr = myDocument.createElement('tr')\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 }, // statementsAsTables\n // View the data in a file in user-friendly way\n render: function (subject, context) {\n const myDocument = context.dom\n\n function alternativeRendering () {\n const sz = UI.rdf.Serializer(context.session.store)\n const res = sz.rootSubjects(sts)\n const roots = res.roots\n const p = {}\n p.render = function (s2) {\n const div = myDocument.createElement('div')\n div.setAttribute('class', 'withinDocumentPane')\n const plist = kb.statementsMatching(s2, undefined, undefined, subject)\n outliner.appendPropertyTRs(div, plist, false, function (\n _pred,\n _inverse\n ) {\n return true\n })\n return div\n }\n for (let i = 0; i < roots.length; i++) {\n const tr = myDocument.createElement('TR')\n const root = roots[i]\n tr.style.verticalAlign = 'top'\n const td = outliner.outlineObjectTD(root, undefined, tr)\n tr.appendChild(td)\n div.appendChild(tr)\n outliner.outlineExpand(td, root, { pane: p })\n }\n }\n\n function mainRendering () {\n const initialRoots = [] // Ordering: start with stuff about this doc\n if (kb.holds(subject, undefined, undefined, subject)) {\n initialRoots.push(subject)\n }\n // Then about the primary topic of the document if any\n const ps = kb.any(subject, UI.ns.foaf('primaryTopic'), undefined, subject)\n if (ps) initialRoots.push(ps)\n div.appendChild(\n context.session.paneRegistry\n .byName('dataContents')\n .statementsAsTables(sts, context, initialRoots)\n )\n }\n\n const outliner = context.getOutliner(myDocument)\n const kb = context.session.store\n const div = myDocument.createElement('div')\n div.setAttribute('class', 'dataContentPane')\n // Because of smushing etc, this will not be a copy of the original source\n // We could instead either fetch and re-parse the source,\n // or we could keep all the pre-smushed triples.\n const sts = kb.statementsMatching(undefined, undefined, undefined, subject) // @@ slow with current store!\n\n // eslint-disable-next-line no-constant-condition\n if (false) { // keep code\n alternativeRendering()\n } else {\n mainRendering()\n }\n return div\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"dataContentPane.js","names":["UI","_interopRequireWildcard","require","$rdf","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ns","dataContentPane","exports","icon","icons","originalIconBase","name","audience","solid","label","subject","context","session","store","findTypeURIs","statementsMatching","undefined","length","statementsAsTables","sts","initialRoots","myDocument","dom","rep","createElement","sz","Serializer","res","rootSubjects","roots","subjects","loopBreakers","x","console","log","doneBnodes","referencedBnodes","propertyTree","lastPred","toStr","appendChild","createTextNode","sort","same","predicateTD","st","tr","predicate","uri","setAttribute","anchor","addEventListener","widgets","openHrefInOutlineMode","utils","predicateLabelForXML","objectTD","objectTree","object","obj","termType","datatype","textContent","value","innerHTML","toNT","slice","newTable","ancestor","style","backgroundColor","elements","paneRegistry","byName","statements","Error","concat","filter","sameTerm","subjectTD","TDTree","root","bNT","table","insertBefore","firstChild","render","alternativeRendering","p","s2","div","plist","kb","outliner","appendPropertyTRs","_pred","_inverse","verticalAlign","td","outlineObjectTD","outlineExpand","pane","mainRendering","holds","push","ps","any","foaf","getOutliner"],"sources":["../src/dataContentPane.js"],"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'\n\nconst ns = UI.ns\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, context) {\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 (sts, context, initialRoots) {\n const myDocument = context.dom\n // const outliner = context.getOutliner(myDocument)\n const rep = myDocument.createElement('table')\n const sz = $rdf.Serializer(context.session.store)\n const res = sz.rootSubjects(sts)\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 = {} // For preventing looping\n const referencedBnodes = {} // Bnodes which need to be named alas\n\n // The property tree for a single subject or anonymous node\n function propertyTree (subject) {\n // print('Proprty tree for '+subject)\n const rep = myDocument.createElement('table')\n let lastPred = null\n const sts = subjects[sz.toStr(subject)] // relevant statements\n if (!sts) {\n // No statements in tree\n rep.appendChild(myDocument.createTextNode('...')) // just empty bnode as object\n return rep\n }\n sts.sort()\n let same = 0\n let predicateTD // The cell which holds the predicate\n for (let i = 0; i < sts.length; i++) {\n const st = sts[i]\n const tr = myDocument.createElement('tr')\n if (st.predicate.uri !== lastPred) {\n if (lastPred && same > 1) {\n predicateTD.setAttribute('rowspan', '' + same)\n }\n predicateTD = myDocument.createElement('td')\n predicateTD.setAttribute('class', 'pred')\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.appendChild(objectTree(st.object))\n tr.appendChild(objectTD)\n rep.appendChild(tr)\n }\n if (lastPred && same > 1) predicateTD.setAttribute('rowspan', '' + same)\n return rep\n }\n\n // Convert a set of statements into a nested tree of tables\n function objectTree (obj) {\n let res, anchor\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.setAttribute('style', 'white-space: pre-wrap;')\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.setAttribute('class', 'embeddedXHTML')\n res.innerHTML = obj.value // Try that @@@ beware embedded dangerous code\n return res\n }\n return myDocument.createTextNode(obj.value) // placeholder - could be smarter,\n\n case 'BlankNode': {\n if (obj.toNT() in doneBnodes) {\n // Break infinite recursion\n referencedBnodes[obj.toNT()] = true\n const anchor = myDocument.createElement('a')\n anchor.setAttribute('href', '#' + obj.toNT().slice(2))\n anchor.setAttribute('class', 'bnodeRef')\n anchor.textContent = '*' + obj.toNT().slice(3)\n return anchor\n }\n doneBnodes[obj.toNT()] = true // Flag to prevent infinite recursion in propertyTree\n const newTable = propertyTree(obj)\n doneBnodes[obj.toNT()] = newTable // Track where we mentioned it first\n if (\n UI.utils.ancestor(newTable, 'TABLE') &&\n UI.utils.ancestor(newTable, 'TABLE').style.backgroundColor ===\n 'white'\n ) {\n newTable.style.backgroundColor = '#eee'\n } else {\n newTable.style.backgroundColor = 'white'\n }\n return newTable\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]))\n }\n return res\n case 'Graph':\n res = context.session.paneRegistry\n .byName('dataContents')\n .statementsAsTables(obj.statements, context)\n res.setAttribute('class', 'nestedFormula')\n return res\n case 'Variable':\n res = myDocument.createTextNode('?' + obj.uri)\n return res\n }\n throw new Error('Unhandled node type: ' + obj.termType)\n }\n\n // roots.sort()\n\n if (initialRoots) {\n roots = initialRoots.concat(\n roots.filter(function (x) {\n for (let i = 0; i < initialRoots.length; i++) {\n // Max 2\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.setAttribute('style', `background-color: ${i % 2 === 0 ? '#f0f0f0' : 'white'};`)\n rep.appendChild(tr)\n const subjectTD = myDocument.createElement('td')\n tr.appendChild(subjectTD)\n const TDTree = myDocument.createElement('td')\n tr.appendChild(TDTree)\n const root = roots[i]\n if (root.termType === 'BlankNode') {\n subjectTD.appendChild(myDocument.createTextNode(UI.utils.label(root))) // Don't recurse!\n } else {\n subjectTD.appendChild(objectTree(root)) // won't have tree\n }\n TDTree.appendChild(propertyTree(root))\n }\n for (const bNT in referencedBnodes) {\n // Add number to refer to\n const table = doneBnodes[bNT]\n // let tr = myDocument.createElement('tr')\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 }, // statementsAsTables\n // View the data in a file in user-friendly way\n render: function (subject, context) {\n const myDocument = context.dom\n\n function alternativeRendering () {\n const sz = $rdf.Serializer(context.session.store)\n const res = sz.rootSubjects(sts)\n const roots = res.roots\n const p = {}\n p.render = function (s2) {\n const div = myDocument.createElement('div')\n div.setAttribute('class', 'withinDocumentPane')\n const plist = kb.statementsMatching(s2, undefined, undefined, subject)\n outliner.appendPropertyTRs(div, plist, false, function (\n _pred,\n _inverse\n ) {\n return true\n })\n return div\n }\n for (let i = 0; i < roots.length; i++) {\n const tr = myDocument.createElement('TR')\n const root = roots[i]\n tr.style.verticalAlign = 'top'\n const td = outliner.outlineObjectTD(root, undefined, tr)\n tr.appendChild(td)\n div.appendChild(tr)\n outliner.outlineExpand(td, root, { pane: p })\n }\n }\n\n function mainRendering () {\n const initialRoots = [] // Ordering: start with stuff about this doc\n if (kb.holds(subject, undefined, undefined, subject)) {\n initialRoots.push(subject)\n }\n // Then about the primary topic of the document if any\n const ps = kb.any(subject, UI.ns.foaf('primaryTopic'), undefined, subject)\n if (ps) initialRoots.push(ps)\n div.appendChild(\n context.session.paneRegistry\n .byName('dataContents')\n .statementsAsTables(sts, context, initialRoots)\n )\n }\n\n const outliner = context.getOutliner(myDocument)\n const kb = context.session.store\n const div = myDocument.createElement('div')\n div.setAttribute('class', 'dataContentPane')\n // Because of smushing etc, this will not be a copy of the original source\n // We could instead either fetch and re-parse the source,\n // or we could keep all the pre-smushed triples.\n const sts = kb.statementsMatching(undefined, undefined, undefined, subject) // @@ slow with current store!\n\n // eslint-disable-next-line no-constant-condition\n if (false) { // keep code\n alternativeRendering()\n } else {\n mainRendering()\n }\n return div\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
package/dist/defaultPane.js
CHANGED
|
@@ -49,7 +49,7 @@ const defaultPane = exports.defaultPane = {
|
|
|
49
49
|
if (subject.termType === 'Literal' && subject.value.slice(0, 7) === 'http://') {
|
|
50
50
|
outliner.appendPropertyTRs(div, [$rdf.st(kb.sym(subject.value), UI.ns.link('uri'), subject)], true, filter);
|
|
51
51
|
}
|
|
52
|
-
if (subject.termType === 'NamedNode' && kb.updater.editable(
|
|
52
|
+
if (subject.termType === 'NamedNode' && kb.updater.editable($rdf.Util.uri.docpart(subject.uri), kb) || subject.termType === 'BlankNode' && kb.anyStatementMatching(subject) && kb.anyStatementMatching(subject).why && kb.anyStatementMatching(subject).why.uri && kb.updater.editable(kb.anyStatementMatching(subject).why.uri)
|
|
53
53
|
// check the document containing something about of the bnode @@ what about as object?
|
|
54
54
|
/* ! && HCIoptions["bottom insert highlights"].enabled */) {
|
|
55
55
|
const holdingTr = dom.createElement('tr'); // these are to minimize required changes
|
package/dist/defaultPane.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaultPane.js","names":["UI","_interopRequireWildcard","require","$rdf","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ns","defaultPane","exports","icon","icons","originalIconBase","name","audience","solid","label","_subject","render","subject","context","dom","filter","pred","inverse","session","paneRegistry","byName","predicates","uri","outliner","getOutliner","kb","store","log","info","location","canon","div","createElement","setAttribute","plist","statementsMatching","appendPropertyTRs","undefined","termType","value","slice","st","sym","link","updater","editable","
|
|
1
|
+
{"version":3,"file":"defaultPane.js","names":["UI","_interopRequireWildcard","require","$rdf","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ns","defaultPane","exports","icon","icons","originalIconBase","name","audience","solid","label","_subject","render","subject","context","dom","filter","pred","inverse","session","paneRegistry","byName","predicates","uri","outliner","getOutliner","kb","store","log","info","location","canon","div","createElement","setAttribute","plist","statementsMatching","appendPropertyTRs","undefined","termType","value","slice","st","sym","link","updater","editable","Util","docpart","anyStatementMatching","why","holdingTr","holdingTd","img","src","addEventListener","addNewTripleIconMouseDownListener","UserInput","addNewPredicateObject","stopPropagation","preventDefault","className","appendChild"],"sources":["../src/defaultPane.js"],"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'\n\nconst ns = UI.ns\n\nexport const defaultPane = {\n icon: UI.icons.originalIconBase + 'about.png',\n\n name: 'default',\n\n audience: [ns.solid('Developer')],\n\n label: function (_subject) {\n return 'about '\n },\n\n render: function (subject, context) {\n const dom = context.dom\n\n const filter = function (pred, inverse) {\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)\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)\n const div = dom.createElement('div')\n div.setAttribute('class', 'defaultPane')\n // appendRemoveIcon(div, subject, div)\n\n let plist = 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 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 kb.anyStatementMatching(subject) &&\n kb.anyStatementMatching(subject).why &&\n kb.anyStatementMatching(subject).why.uri &&\n kb.updater.editable(kb.anyStatementMatching(subject).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":";;;;;;AAOA,IAAAA,EAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,IAAA,GAAAF,uBAAA,CAAAC,OAAA;AAA8B,SAAAD,wBAAAG,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAL,uBAAA,YAAAA,CAAAG,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAR9B;AACA;AACA;AACA;AACA;AACA;;AAKA,MAAMkB,EAAE,GAAGvB,EAAE,CAACuB,EAAE;AAET,MAAMC,WAAW,GAAAC,OAAA,CAAAD,WAAA,GAAG;EACzBE,IAAI,EAAE1B,EAAE,CAAC2B,KAAK,CAACC,gBAAgB,GAAG,WAAW;EAE7CC,IAAI,EAAE,SAAS;EAEfC,QAAQ,EAAE,CAACP,EAAE,CAACQ,KAAK,CAAC,WAAW,CAAC,CAAC;EAEjCC,KAAK,EAAE,SAAAA,CAAUC,QAAQ,EAAE;IACzB,OAAO,QAAQ;EACjB,CAAC;EAEDC,MAAM,EAAE,SAAAA,CAAUC,OAAO,EAAEC,OAAO,EAAE;IAClC,MAAMC,GAAG,GAAGD,OAAO,CAACC,GAAG;IAEvB,MAAMC,MAAM,GAAG,SAAAA,CAAUC,IAAI,EAAEC,OAAO,EAAE;MACtC,IACE,OAAOJ,OAAO,CAACK,OAAO,CAACC,YAAY,CAACC,MAAM,CAAC,UAAU,CAAC,CAACC,UAAU,CAC/DL,IAAI,CAACM,GAAG,CACT,KAAK,WAAW,EACjB;QACA,OAAO,KAAK;MACd;MACA,IACEL,OAAO,IACPD,IAAI,CAACM,GAAG,KAAK,iDAAiD,EAC9D;QACA,OAAO,KAAK;MACd;MACA,OAAO,IAAI;IACb,CAAC;IAED,MAAMC,QAAQ,GAAGV,OAAO,CAACW,WAAW,CAACV,GAAG,CAAC;IACzC,MAAMW,EAAE,GAAGZ,OAAO,CAACK,OAAO,CAACQ,KAAK;IAChC;IACAjD,EAAE,CAACkD,GAAG,CAACC,IAAI,CAAC,kCAAkC,GAAGd,GAAG,CAACe,QAAQ,CAAC;IAC9DjB,OAAO,GAAGa,EAAE,CAACK,KAAK,CAAClB,OAAO,CAAC;IAC3B,MAAMmB,GAAG,GAAGjB,GAAG,CAACkB,aAAa,CAAC,KAAK,CAAC;IACpCD,GAAG,CAACE,YAAY,CAAC,OAAO,EAAE,aAAa,CAAC;IACxC;;IAEA,IAAIC,KAAK,GAAGT,EAAE,CAACU,kBAAkB,CAACvB,OAAO,CAAC;IAC1CW,QAAQ,CAACa,iBAAiB,CAACL,GAAG,EAAEG,KAAK,EAAE,KAAK,EAAEnB,MAAM,CAAC;IACrDmB,KAAK,GAAGT,EAAE,CAACU,kBAAkB,CAACE,SAAS,EAAEA,SAAS,EAAEzB,OAAO,CAAC;IAC5DW,QAAQ,CAACa,iBAAiB,CAACL,GAAG,EAAEG,KAAK,EAAE,IAAI,EAAEnB,MAAM,CAAC;IACpD,IACEH,OAAO,CAAC0B,QAAQ,KAAK,SAAS,IAC9B1B,OAAO,CAAC2B,KAAK,CAACC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,SAAS,EACvC;MACAjB,QAAQ,CAACa,iBAAiB,CACxBL,GAAG,EACH,CAACnD,IAAI,CAAC6D,EAAE,CAAChB,EAAE,CAACiB,GAAG,CAAC9B,OAAO,CAAC2B,KAAK,CAAC,EAAE9D,EAAE,CAACuB,EAAE,CAAC2C,IAAI,CAAC,KAAK,CAAC,EAAE/B,OAAO,CAAC,CAAC,EAC5D,IAAI,EACJG,MACF,CAAC;IACH;IACA,IACGH,OAAO,CAAC0B,QAAQ,KAAK,WAAW,IAC/Bb,EAAE,CAACmB,OAAO,CAACC,QAAQ,CAACjE,IAAI,CAACkE,IAAI,CAACxB,GAAG,CAACyB,OAAO,CAACnC,OAAO,CAACU,GAAG,CAAC,EAAEG,EAAE,CAAC,IAC5Db,OAAO,CAAC0B,QAAQ,KAAK,WAAW,IAC/Bb,EAAE,CAACuB,oBAAoB,CAACpC,OAAO,CAAC,IAChCa,EAAE,CAACuB,oBAAoB,CAACpC,OAAO,CAAC,CAACqC,GAAG,IACpCxB,EAAE,CAACuB,oBAAoB,CAACpC,OAAO,CAAC,CAACqC,GAAG,CAAC3B,GAAG,IACxCG,EAAE,CAACmB,OAAO,CAACC,QAAQ,CAACpB,EAAE,CAACuB,oBAAoB,CAACpC,OAAO,CAAC,CAACqC,GAAG,CAAC3B,GAAG;IAC9D;IACA,6DACA;MACA,MAAM4B,SAAS,GAAGpC,GAAG,CAACkB,aAAa,CAAC,IAAI,CAAC,EAAC;MAC1C,MAAMmB,SAAS,GAAGrC,GAAG,CAACkB,aAAa,CAAC,IAAI,CAAC,EAAC;MAC1CmB,SAAS,CAAClB,YAAY,CAAC,SAAS,EAAE,GAAG,CAAC;MACtCkB,SAAS,CAAClB,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC;MAC/C,MAAMmB,GAAG,GAAGtC,GAAG,CAACkB,aAAa,CAAC,KAAK,CAAC;MACpCoB,GAAG,CAACC,GAAG,GAAG5E,EAAE,CAAC2B,KAAK,CAACC,gBAAgB,GAAG,2BAA2B;MACjE+C,GAAG,CAACE,gBAAgB,CAAC,OAAO,EAAE,SAASC,iCAAiCA,CACtE1E,CAAC,EACD;QACA0C,QAAQ,CAACiC,SAAS,CAACC,qBAAqB,CAAC5E,CAAC,CAAC;QAC3CA,CAAC,CAAC6E,eAAe,CAAC,CAAC;QACnB7E,CAAC,CAAC8E,cAAc,CAAC,CAAC;MACpB,CAAC,CAAC;MACFP,GAAG,CAACQ,SAAS,GAAG,sBAAsB;MACtC;MACA7B,GAAG,CACA8B,WAAW,CAACX,SAAS,CAAC,CACtBW,WAAW,CAACV,SAAS,CAAC,CACtBU,WAAW,CAACT,GAAG,CAAC;IACrB;IACA,OAAOrB,GAAG;EACZ;AACF,CAAC;;AAED","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"homePane.d.ts","sourceRoot":"","sources":["../../src/home/homePane.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"homePane.d.ts","sourceRoot":"","sources":["../../src/home/homePane.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAK9C,QAAA,MAAM,cAAc,EAAE,cAoDrB,CAAA;AAGD,eAAe,cAAc,CAAA"}
|
package/dist/home/homePane.js
CHANGED
|
@@ -1,3 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _solidLogic = require("solid-logic");
|
|
8
|
+
var _solidUi = require("solid-ui");
|
|
1
9
|
/* Home Pane
|
|
2
10
|
**
|
|
3
11
|
** The home pane is avaiable everywhere and allows a user
|
|
@@ -7,62 +15,59 @@
|
|
|
7
15
|
** - keep track of accounts and workspaces etc
|
|
8
16
|
**
|
|
9
17
|
*/
|
|
10
|
-
|
|
11
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
12
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
13
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
14
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
15
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
16
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
17
|
-
});
|
|
18
|
-
};
|
|
19
|
-
import { authn } from 'solid-logic';
|
|
20
|
-
import { create, icons, login } from 'solid-ui';
|
|
18
|
+
|
|
21
19
|
const HomePaneSource = {
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
}
|
|
20
|
+
icon: _solidUi.icons.iconBase + 'noun_547570.svg',
|
|
21
|
+
// noun_25830
|
|
22
|
+
|
|
23
|
+
global: true,
|
|
24
|
+
name: 'home',
|
|
25
|
+
// Does the subject deserve an home pane?
|
|
26
|
+
//
|
|
27
|
+
// yes, always!
|
|
28
|
+
//
|
|
29
|
+
label: function () {
|
|
30
|
+
return 'home';
|
|
31
|
+
},
|
|
32
|
+
render: function (subject, context) {
|
|
33
|
+
const dom = context.dom;
|
|
34
|
+
const showContent = async function () {
|
|
35
|
+
const homePaneContext = {
|
|
36
|
+
div,
|
|
37
|
+
dom,
|
|
38
|
+
statusArea: div,
|
|
39
|
+
me
|
|
40
|
+
};
|
|
41
|
+
/*
|
|
42
|
+
div.appendChild(dom.createElement('h4')).textContent = 'Login status'
|
|
43
|
+
var loginStatusDiv = div.appendChild(context.dom.createElement('div'))
|
|
44
|
+
// TODO: Find out what the actual type is:
|
|
45
|
+
type UriType = unknown;
|
|
46
|
+
loginStatusDiv.appendChild(UI.login.loginStatusBox(context.dom, () => {
|
|
47
|
+
// Here we know new log in status
|
|
48
|
+
}))
|
|
49
|
+
*/
|
|
50
|
+
div.appendChild(dom.createElement('h4')).textContent = 'Create new thing somewhere';
|
|
51
|
+
const creationDiv = div.appendChild(dom.createElement('div'));
|
|
52
|
+
const creationContext = {
|
|
53
|
+
div: creationDiv,
|
|
54
|
+
dom,
|
|
55
|
+
statusArea: div,
|
|
56
|
+
me
|
|
57
|
+
};
|
|
58
|
+
const relevantPanes = await _solidUi.login.filterAvailablePanes(context.session.paneRegistry.list);
|
|
59
|
+
_solidUi.create.newThingUI(creationContext, context, relevantPanes); // newUI Have to pass panes down
|
|
60
|
+
|
|
61
|
+
_solidUi.login.registrationList(homePaneContext, {}).then(function () {});
|
|
62
|
+
};
|
|
63
|
+
const div = dom.createElement('div');
|
|
64
|
+
const me = _solidLogic.authn.currentUser(); // this will be incorrect if not logged in
|
|
65
|
+
|
|
66
|
+
showContent();
|
|
67
|
+
return div;
|
|
68
|
+
}
|
|
65
69
|
}; // pane object
|
|
70
|
+
|
|
66
71
|
// ends
|
|
67
|
-
|
|
72
|
+
var _default = exports.default = HomePaneSource;
|
|
68
73
|
//# sourceMappingURL=homePane.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"homePane.js","
|
|
1
|
+
{"version":3,"file":"homePane.js","names":["_solidLogic","require","_solidUi","HomePaneSource","icon","icons","iconBase","global","name","label","render","subject","context","dom","showContent","homePaneContext","div","statusArea","me","appendChild","createElement","textContent","creationDiv","creationContext","relevantPanes","login","filterAvailablePanes","session","paneRegistry","list","create","newThingUI","registrationList","then","authn","currentUser","_default","exports","default"],"sources":["../../src/home/homePane.ts"],"sourcesContent":["/* Home Pane\n **\n ** The home pane is avaiable everywhere and allows a user\n ** to\n ** - keep track of their stuff\n ** - make new things, and possibly\n ** - keep track of accounts and workspaces etc\n **\n */\n\nimport { PaneDefinition } from 'pane-registry'\nimport { NamedNode } from 'rdflib'\nimport { authn } from 'solid-logic'\nimport { create, CreateContext, icons, login } from 'solid-ui'\n\nconst HomePaneSource: PaneDefinition = {\n icon: icons.iconBase + 'noun_547570.svg', // noun_25830\n\n global: true,\n\n name: 'home',\n\n // Does the subject deserve an home pane?\n //\n // yes, always!\n //\n label: function () {\n return 'home'\n },\n\n render: function (subject, context) {\n const dom = context.dom\n const showContent = async function () {\n const homePaneContext = { div, dom, statusArea: div, me }\n /*\n div.appendChild(dom.createElement('h4')).textContent = 'Login status'\n var loginStatusDiv = div.appendChild(context.dom.createElement('div'))\n // TODO: Find out what the actual type is:\n type UriType = unknown;\n loginStatusDiv.appendChild(UI.login.loginStatusBox(context.dom, () => {\n // Here we know new log in status\n }))\n */\n div.appendChild(dom.createElement('h4')).textContent =\n 'Create new thing somewhere'\n const creationDiv = div.appendChild(dom.createElement('div'))\n const creationContext: CreateContext = {\n div: creationDiv,\n dom,\n statusArea: div,\n me\n }\n const relevantPanes = await login.filterAvailablePanes(\n context.session.paneRegistry.list\n )\n create.newThingUI(creationContext, context, relevantPanes) // newUI Have to pass panes down\n\n login.registrationList(homePaneContext, {}).then(function () {})\n }\n\n const div = dom.createElement('div')\n const me: NamedNode = authn.currentUser() as NamedNode // this will be incorrect if not logged in\n\n showContent()\n\n return div\n }\n} // pane object\n\n// ends\nexport default HomePaneSource\n"],"mappings":";;;;;;AAYA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AAbA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAOA,MAAME,cAA8B,GAAG;EACrCC,IAAI,EAAEC,cAAK,CAACC,QAAQ,GAAG,iBAAiB;EAAE;;EAE1CC,MAAM,EAAE,IAAI;EAEZC,IAAI,EAAE,MAAM;EAEZ;EACA;EACA;EACA;EACAC,KAAK,EAAE,SAAAA,CAAA,EAAY;IACjB,OAAO,MAAM;EACf,CAAC;EAEDC,MAAM,EAAE,SAAAA,CAAUC,OAAO,EAAEC,OAAO,EAAE;IAClC,MAAMC,GAAG,GAAGD,OAAO,CAACC,GAAG;IACvB,MAAMC,WAAW,GAAG,eAAAA,CAAA,EAAkB;MACpC,MAAMC,eAAe,GAAG;QAAEC,GAAG;QAAEH,GAAG;QAAEI,UAAU,EAAED,GAAG;QAAEE;MAAG,CAAC;MACzD;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;MACMF,GAAG,CAACG,WAAW,CAACN,GAAG,CAACO,aAAa,CAAC,IAAI,CAAC,CAAC,CAACC,WAAW,GAClD,4BAA4B;MAC9B,MAAMC,WAAW,GAAGN,GAAG,CAACG,WAAW,CAACN,GAAG,CAACO,aAAa,CAAC,KAAK,CAAC,CAAC;MAC7D,MAAMG,eAA8B,GAAG;QACrCP,GAAG,EAAEM,WAAW;QAChBT,GAAG;QACHI,UAAU,EAAED,GAAG;QACfE;MACF,CAAC;MACD,MAAMM,aAAa,GAAG,MAAMC,cAAK,CAACC,oBAAoB,CACpDd,OAAO,CAACe,OAAO,CAACC,YAAY,CAACC,IAC/B,CAAC;MACDC,eAAM,CAACC,UAAU,CAACR,eAAe,EAAEX,OAAO,EAAEY,aAAa,CAAC,EAAC;;MAE3DC,cAAK,CAACO,gBAAgB,CAACjB,eAAe,EAAE,CAAC,CAAC,CAAC,CAACkB,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;IAClE,CAAC;IAED,MAAMjB,GAAG,GAAGH,GAAG,CAACO,aAAa,CAAC,KAAK,CAAC;IACpC,MAAMF,EAAa,GAAGgB,iBAAK,CAACC,WAAW,CAAC,CAAc,EAAC;;IAEvDrB,WAAW,CAAC,CAAC;IAEb,OAAOE,GAAG;EACZ;AACF,CAAC,EAAC;;AAEF;AAAA,IAAAoB,QAAA,GAAAC,OAAA,CAAAC,OAAA,GACenC,cAAc","ignoreList":[]}
|