solid-panes 4.2.4-test.2 → 4.2.4-test.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/RDFXMLPane.js +1 -2
- package/dist/argument/argumentPane.js +1 -2
- package/dist/attach/attachPane.js +1 -2
- package/dist/audio/audioPane.js +1 -2
- package/dist/classInstancePane.js +1 -2
- package/dist/dataContentPane.js +1 -2
- package/dist/defaultPane.js +1 -2
- package/dist/dokieli/dokieliPane.js +1 -2
- package/dist/dokieli/new.js +1 -2
- package/dist/form/pane.js +1 -2
- package/dist/humanReadablePane.js +1 -2
- package/dist/imagePane.js +1 -2
- package/dist/microblogPane/mbStyle.css +267 -0
- package/dist/microblogPane/microblogPane.js +1 -2
- package/dist/n3Pane.js +1 -2
- package/dist/outline/manager.css +80 -0
- package/dist/outline/manager.js +14 -11
- package/dist/outline/outlineIcons.js +1 -2
- package/dist/outline/queryByExample.js +1 -2
- package/dist/outline/userInput.js +1 -2
- package/dist/playlist/playlistPane.js +1 -2
- package/dist/registerPanes.js +1 -2
- package/dist/schedule/schedulePane.js +1 -2
- package/dist/slideshow/slideshowPane.js +1 -2
- package/dist/socialPane.js +1 -2
- package/dist/solid-panes.js +52145 -0
- package/dist/solid-panes.js.map +1 -0
- package/dist/solid-panes.min.js +290 -0
- package/dist/solid-panes.min.js.map +1 -0
- package/dist/style/tabbedtab.css +1347 -0
- package/dist/tableViewPane.js +1 -2
- package/dist/transaction/pane.js +1 -2
- package/dist/transaction/period.js +1 -2
- package/dist/trip/tripPane.js +1 -2
- package/dist/ui/pane.js +1 -2
- package/dist/video/videoPane.js +1 -2
- package/package.json +12 -11
- package/dist/RDFXMLPane.js.map +0 -1
- package/dist/argument/argumentPane.js.map +0 -1
- package/dist/attach/attachPane.js.map +0 -1
- package/dist/audio/audioPane.js.map +0 -1
- package/dist/classInstancePane.js.map +0 -1
- package/dist/dashboard/basicPreferences.js +0 -147
- package/dist/dashboard/basicPreferences.js.map +0 -1
- package/dist/dashboard/dashboardPane.js +0 -68
- package/dist/dashboard/dashboardPane.js.map +0 -1
- package/dist/dashboard/homepage.js +0 -73
- package/dist/dashboard/homepage.js.map +0 -1
- package/dist/dataContentPane.js.map +0 -1
- package/dist/defaultPane.js.map +0 -1
- package/dist/dokieli/dokieliPane.js.map +0 -1
- package/dist/dokieli/new.js.map +0 -1
- package/dist/form/pane.js.map +0 -1
- package/dist/home/homePane.js +0 -73
- package/dist/home/homePane.js.map +0 -1
- package/dist/humanReadablePane.js.map +0 -1
- package/dist/imagePane.js.map +0 -1
- package/dist/index.js +0 -109
- package/dist/index.js.map +0 -1
- package/dist/internal/internalPane.js +0 -184
- package/dist/internal/internalPane.js.map +0 -1
- package/dist/mainPage/footer.js +0 -22
- package/dist/mainPage/footer.js.map +0 -1
- package/dist/mainPage/header.js +0 -86
- package/dist/mainPage/header.js.map +0 -1
- package/dist/mainPage/index.js +0 -25
- package/dist/mainPage/index.js.map +0 -1
- package/dist/microblogPane/microblogPane.js.map +0 -1
- package/dist/n3Pane.js.map +0 -1
- package/dist/outline/context.js +0 -19
- package/dist/outline/context.js.map +0 -1
- package/dist/outline/manager.js.map +0 -1
- package/dist/outline/outlineIcons.js.map +0 -1
- package/dist/outline/propertyViews.js +0 -44
- package/dist/outline/propertyViews.js.map +0 -1
- package/dist/outline/queryByExample.js.map +0 -1
- package/dist/outline/userInput.js.map +0 -1
- package/dist/outline/viewAsImage.js +0 -15
- package/dist/outline/viewAsImage.js.map +0 -1
- package/dist/outline/viewAsMbox.js +0 -22
- package/dist/outline/viewAsMbox.js.map +0 -1
- package/dist/pad/padPane.js +0 -411
- package/dist/pad/padPane.js.map +0 -1
- package/dist/playlist/playlistPane.js.map +0 -1
- package/dist/registerPanes.js.map +0 -1
- package/dist/schedule/schedulePane.js.map +0 -1
- package/dist/sharing/sharingPane.js +0 -49
- package/dist/sharing/sharingPane.js.map +0 -1
- package/dist/slideshow/slideshowPane.js.map +0 -1
- package/dist/socialPane.js.map +0 -1
- package/dist/tabbed/tabbedPane.js +0 -58
- package/dist/tabbed/tabbedPane.js.map +0 -1
- package/dist/tableViewPane.js.map +0 -1
- package/dist/transaction/pane.js.map +0 -1
- package/dist/transaction/period.js.map +0 -1
- package/dist/trip/tripPane.js.map +0 -1
- package/dist/trustedApplications/trustedApplications.dom.js +0 -146
- package/dist/trustedApplications/trustedApplications.dom.js.map +0 -1
- package/dist/trustedApplications/trustedApplications.utils.js +0 -24
- package/dist/trustedApplications/trustedApplications.utils.js.map +0 -1
- package/dist/trustedApplications/trustedApplications.view.js +0 -56
- package/dist/trustedApplications/trustedApplications.view.js.map +0 -1
- package/dist/ui/pane.js.map +0 -1
- package/dist/versionInfo.js +0 -36
- package/dist/versionInfo.js.map +0 -1
- package/dist/video/videoPane.js.map +0 -1
|
@@ -1,73 +0,0 @@
|
|
|
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, store, 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;
|
|
17
|
-
}
|
|
18
|
-
function createDataSection(name) {
|
|
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;
|
|
32
|
-
}
|
|
33
|
-
function createTitle(uri, name) {
|
|
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;
|
|
43
|
-
}
|
|
44
|
-
async function loadProfile(subject, store, 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
|
-
try {
|
|
49
|
-
await fetcher.load(webId);
|
|
50
|
-
return webId;
|
|
51
|
-
} catch (err) {
|
|
52
|
-
// Fall back to pod root and any discovered profile links.
|
|
53
|
-
}
|
|
54
|
-
try {
|
|
55
|
-
await fetcher.load(subject);
|
|
56
|
-
} catch (err) {
|
|
57
|
-
return subject;
|
|
58
|
-
}
|
|
59
|
-
const primaryTopic = store.any(subject, _solidUi.ns.foaf('primaryTopic'), null, subject.doc());
|
|
60
|
-
if (primaryTopic && primaryTopic.termType === 'NamedNode') {
|
|
61
|
-
try {
|
|
62
|
-
await fetcher.load(primaryTopic);
|
|
63
|
-
return primaryTopic;
|
|
64
|
-
} catch (err) {
|
|
65
|
-
return subject;
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
return subject;
|
|
69
|
-
}
|
|
70
|
-
function getName(store, ownersProfile) {
|
|
71
|
-
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];
|
|
72
|
-
}
|
|
73
|
-
//# sourceMappingURL=homepage.js.map
|
|
@@ -1 +0,0 @@
|
|
|
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","err","primaryTopic","any","ns","foaf","doc","termType","anyValue","vcard","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, store, 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 store: IndexedFormula,\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 try {\n await fetcher.load(webId)\n return webId\n } catch (err) {\n // Fall back to pod root and any discovered profile links.\n }\n\n try {\n await fetcher.load(subject)\n } catch (err) {\n return subject\n }\n\n const primaryTopic = store.any(subject, ns.foaf('primaryTopic'), null, subject.doc())\n if (primaryTopic && primaryTopic.termType === 'NamedNode') {\n try {\n await fetcher.load(primaryTopic as NamedNode)\n return primaryTopic as NamedNode\n } catch (err) {\n return subject\n }\n }\n\n return subject\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":[]}
|
|
@@ -1 +0,0 @@
|
|
|
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.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
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":"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","ignoreList":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dokieliPane.js","names":["UI","_interopRequireWildcard","require","$rdf","mime","_new","_interopRequireDefault","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_default","exports","icon","icons","iconBase","name","mintClass","ns","solid","label","subject","context","mintNew","newPaneOptions","kb","session","store","newInstance","uri","newBase","endsWith","slice","sym","contentType","lookup","includes","htmlContents","DOKIELI_TEMPLATE","filename","split","decodeURIComponent","encodedTitle","replace","Promise","resolve","fetcher","webOperation","data","then","console","log","catch","err"],"sources":["../../src/dokieli/dokieliPane.js"],"sourcesContent":["/* Human-readable editable \"Dokieli\" Pane\n **\n ** This outline pane contains the document contents for a Dokieli document\n ** The dokeili system allows the user to edit a document including anotations\n ** review. It does not use turtle, but RDF/a\n */\n\nimport * as UI from 'solid-ui'\nimport * as $rdf from 'rdflib'\nimport * as mime from 'mime-types'\n\n// const DOKIELI_TEMPLATE_URI = 'https://dokie.li/new' // Copy to make new dok\n\nimport DOKIELI_TEMPLATE from './new.js' // Distributed with this library\n\nexport default {\n icon: UI.icons.iconBase + 'dokieli-logo.png', // @@ improve? more like doccument?\n\n name: 'Dokieli',\n\n mintClass: UI.ns.solid('DokieliDocument'), // @@ A better class?\n\n // Don't provide viewing - let humanReadablePane handle that with appropriate icon\n label: function (subject, context) {\n return null // Viewing now handled by humanReadablePane\n },\n\n // Create a new folder in a Solid system, with a dokieli editable document in it\n mintNew: function (context, newPaneOptions) {\n const kb = context.session.store\n let newInstance = newPaneOptions.newInstance\n if (!newInstance) {\n let uri = newPaneOptions.newBase\n if (uri.endsWith('/')) {\n uri = uri.slice(0, -1)\n newPaneOptions.newBase = uri\n }\n newInstance = kb.sym(uri)\n }\n\n const contentType = mime.lookup(newInstance.uri)\n if (!contentType || !contentType.includes('html')) {\n newInstance = $rdf.sym(newInstance.uri + '.html')\n }\n newPaneOptions.newInstance = newInstance // Save for creation system\n\n // console.log('New dokieli will make: ' + newInstance)\n\n let htmlContents = DOKIELI_TEMPLATE\n let filename = newInstance.uri.split('/').slice(-1)[0]\n filename = decodeURIComponent(filename.split('.')[0])\n const encodedTitle = filename\n .replace(/&/g, '&')\n .replace(/</g, '<')\n .replace(/>/g, '>')\n htmlContents = htmlContents.replace('<title>', '<title>' + encodedTitle)\n htmlContents = htmlContents.replace(\n '</article>',\n '<h1>' + encodedTitle + '</h1></article>'\n )\n // console.log('@@ New HTML for Dok:' + htmlContents)\n return new Promise(function (resolve) {\n kb.fetcher\n .webOperation('PUT', newInstance.uri, {\n data: htmlContents,\n contentType: 'text/html'\n })\n .then(function () {\n console.log(\n 'new Dokieli document created at ' + newPaneOptions.newInstance\n )\n resolve(newPaneOptions)\n })\n .catch(function (err) {\n console.log(\n 'Error creating dokieli doc at ' +\n newPaneOptions.newInstance +\n ': ' +\n err\n )\n })\n })\n }\n\n // render: removed - now handled by humanReadablePane with appropriate dokieli icon\n}\n// ends\n"],"mappings":"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","ignoreList":[]}
|
package/dist/dokieli/new.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"new.js","names":["DOKIELI_TEMPLATE","_default","exports","default"],"sources":["../../src/dokieli/new.js"],"sourcesContent":["const DOKIELI_TEMPLATE = `<!DOCTYPE html>\n<html lang=\"en\" xml:lang=\"en\" xmlns=\"http://www.w3.org/1999/xhtml\">\n <head>\n <meta charset=\"utf-8\" />\n <title></title>\n <meta content=\"width=device-width, initial-scale=1\" name=\"viewport\" />\n <link href=\"https://dokie.li/media/css/basic.css\" media=\"all\" rel=\"stylesheet\" title=\"Basic\" />\n <link href=\"https://dokie.li/media/css/dokieli.css\" media=\"all\" rel=\"stylesheet\" />\n <script src=\"https://dokie.li/scripts/dokieli.js\"></script>\n </head>\n\n <body about=\"\" prefix=\"rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns# rdfs: http://www.w3.org/2000/01/rdf-schema# owl: http://www.w3.org/2002/07/owl# xsd: http://www.w3.org/2001/XMLSchema# rdfa: http://www.w3.org/ns/rdfa# dcterms: http://purl.org/dc/terms/ dctypes: http://purl.org/dc/dcmitype/ foaf: http://xmlns.com/foaf/0.1/ pimspace: http://www.w3.org/ns/pim/space# skos: http://www.w3.org/2004/02/skos/core# prov: http://www.w3.org/ns/prov# mem: http://mementoweb.org/ns# qb: http://purl.org/linked-data/cube# schema: http://schema.org/ void: http://rdfs.org/ns/void# rsa: http://www.w3.org/ns/auth/rsa# cert: http://www.w3.org/ns/auth/cert# wgs: http://www.w3.org/2003/01/geo/wgs84_pos# bibo: http://purl.org/ontology/bibo/ sioc: http://rdfs.org/sioc/ns# doap: http://usefulinc.com/ns/doap# dbr: http://dbpedia.org/resource/ dbp: http://dbpedia.org/property/ sio: http://semanticscience.org/resource/ opmw: http://www.opmw.org/ontology/ deo: http://purl.org/spar/deo/ doco: http://purl.org/spar/doco/ cito: http://purl.org/spar/cito/ fabio: http://purl.org/spar/fabio/ oa: http://www.w3.org/ns/oa# as: https://www.w3.org/ns/activitystreams# ldp: http://www.w3.org/ns/ldp# solid: http://www.w3.org/ns/solid/terms# acl: http://www.w3.org/ns/auth/acl# earl: http://www.w3.org/ns/earl# spec: http://www.w3.org/ns/spec# odrl: http://www.w3.org/ns/odrl/2/ dio: https://w3id.org/dio# rel: https://www.w3.org/ns/iana/link-relations/relation#\" typeof=\"schema:CreativeWork prov:Entity\">\n <main>\n <article about=\"\" typeof=\"schema:Article\">\n\n </article>\n </main>\n </body>\n</html>\n`\n\nexport default DOKIELI_TEMPLATE\n"],"mappings":";;;;;;AAAA,MAAMA,gBAAgB,GAAG;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAAA,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEcH,gBAAgB","ignoreList":[]}
|
package/dist/form/pane.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pane.js","names":["UI","_interopRequireWildcard","require","_solidLogic","$rdf","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ns","formPane","exports","icon","icons","iconBase","name","audience","solid","label","subject","widgets","formsFor","length","log","debug","render","context","kb","session","store","dom","mention","complain","message","style","pre","createElement","setAttribute","box","appendChild","textContent","complainIfBad","ok","body","me","authn","currentUser","ws","each","ui","renderFormsFor","fetcher","nowOrWhenFetched","uri","forms","form","heading","formStore","Util","document","editFormButton","anchor","utils","appendForm","docuri","docpart","updater","editable","doc","any","sym","link","docs","docList","statementsMatching","forEach","st","why","undefined","d","push","sort","_followeach","path","oo","res","concat","slice","date","foobarbaz","login","selectWorkspace","activities","space","j","act","subjectDoc2","start","cal","value","end"],"sources":["../../src/form/pane.js"],"sourcesContent":["/*\n ** Pane for running existing forms for any object\n **\n */\n\nimport * as UI from 'solid-ui'\nimport { authn } from 'solid-logic'\nimport * as $rdf from 'rdflib'\nconst ns = UI.ns\n\nexport const formPane = {\n icon: UI.icons.iconBase + 'noun_122196.svg',\n\n name: 'form',\n\n audience: [ns.solid('PowerUser')],\n\n // Does the subject deserve this pane?\n label: function (subject) {\n const n = UI.widgets.formsFor(subject).length\n UI.log.debug('Form pane: forms for ' + subject + ': ' + n)\n if (!n) return null\n return '' + n + ' forms'\n },\n\n render: function (subject, context) {\n const kb = context.session.store\n const dom = context.dom\n\n const mention = function complain (message, style) {\n const pre = dom.createElement('p')\n pre.setAttribute('style', style || 'color: grey; background-color: white')\n box.appendChild(pre).textContent = message\n return pre\n }\n\n const complain = function complain (message, style) {\n mention(message, 'style', style || 'color: grey; background-color: #fdd;')\n }\n\n const complainIfBad = function (ok, body) {\n if (ok) {\n // setModifiedDate(store, kb, store);\n // rerender(box); // Deleted forms at the moment\n } else complain('Sorry, failed to save your change:\\n' + body)\n }\n\n // The question of where to store this data about subject\n // This in general needs a whole lot more thought\n // and it connects to the discoverbility through links\n\n // const t = kb.findTypeURIs(subject)\n\n const me = authn.currentUser()\n\n const box = dom.createElement('div')\n box.setAttribute('class', 'formPane')\n\n if (!me) {\n mention(\n 'You are not logged in. If you log in and have ' +\n 'workspaces then you would be able to select workspace in which ' +\n 'to put this new information'\n )\n } else {\n const ws = kb.each(me, ns.ui('workspace'))\n if (ws.length === 0) {\n mention(\n 'You don\\'t seem to have any workspaces defined. ' +\n 'A workspace is a place on the web (http://..) or in ' +\n 'the file system (file:///) to store application data.\\n'\n )\n } else {\n // @@\n }\n }\n\n // Render forms using a given store\n\n const renderFormsFor = function (store, subject) {\n kb.fetcher.nowOrWhenFetched(store.uri, subject, function (ok, body) {\n if (!ok) return complain('Cannot load store ' + store.uri + ': ' + body)\n\n // Render the forms\n\n const forms = UI.widgets.formsFor(subject)\n\n // complain('Form for editing this form:');\n for (let i = 0; i < forms.length; i++) {\n const form = forms[i]\n const heading = dom.createElement('h4')\n box.appendChild(heading)\n if (form.uri) {\n const formStore = $rdf.Util.uri.document(form.uri)\n if (formStore.uri !== form.uri) {\n // The form is a hash-type URI\n const e = box.appendChild(\n UI.widgets.editFormButton(\n dom,\n box,\n form,\n formStore,\n complainIfBad\n )\n )\n e.setAttribute('style', 'float: right;')\n }\n }\n const anchor = dom.createElement('a')\n anchor.setAttribute('href', form.uri)\n heading.appendChild(anchor)\n anchor.textContent = UI.utils.label(form, true)\n\n /* Keep tis as a reminder to let a New one have its URI given by user\n mention(\"Where will this information be stored?\")\n const ele = dom.createElement('input');\n box.appendChild(ele);\n ele.setAttribute('type', 'text');\n ele.setAttribute('size', '72');\n ele.setAttribute('maxlength', '1024');\n ele.setAttribute('style', 'font-size: 80%; color:#222;');\n ele.value = store.uri\n */\n\n UI.widgets.appendForm(\n dom,\n box,\n {},\n subject,\n form,\n store,\n complainIfBad\n )\n }\n }) // end: when store loded\n } // renderFormsFor\n\n // Figure out what store\n\n // Which places are editable and have stuff about the subject?\n\n let store = null\n\n // 1. The document URI of the subject itself\n const docuri = $rdf.Util.uri.docpart(subject.uri)\n if (subject.uri !== docuri && kb.updater.editable(docuri, kb)) {\n store = subject.doc()\n } // an editable data file with hash\n\n store = store || kb.any(kb.sym(docuri), ns.link('annotationStore'))\n\n // 2. where stuff is already stored\n if (!store) {\n const docs = {}\n const docList = []\n store.statementsMatching(subject).forEach(function (st) {\n docs[st.why.uri] = 1\n })\n store\n .statementsMatching(undefined, undefined, subject)\n .forEach(function (st) {\n docs[st.why.uri] = 2\n })\n for (const d in docs) docList.push(docs[d], d)\n docList.sort()\n for (let i = 0; i < docList.length; i++) {\n const uri = docList[i][1]\n if (uri && store.updater.editable(uri)) {\n store = store.sym(uri)\n break\n }\n }\n }\n\n // 3. In a workspace store\n // @@ TODO: Can probably remove _followeach (not done this time because the commit is a very safe refactor)\n const _followeach = function (kb, subject, path) {\n if (path.length === 0) return [subject]\n const oo = kb.each(subject, path[0])\n let res = []\n for (let i = 0; i < oo.length; i++) {\n res = res.concat(_followeach(kb, oo[i], path.slice(1)))\n }\n return res\n }\n\n const date = '2014' // @@@@@@@@@@@@ pass as parameter\n\n if (store) {\n // mention(\"@@ Ok, we have a store <\" + store.uri + \">.\");\n renderFormsFor(store, subject)\n } else {\n complain('No suitable store is known, to edit <' + subject.uri + '>.')\n const foobarbaz = UI.login.selectWorkspace(dom, function (ws) {\n mention('Workspace selected OK: ' + ws)\n\n const activities = store.each(undefined, ns.space('workspace'), ws)\n for (let j = 0; j < activities.length; j++) {\n const act = activities[j]\n\n const subjectDoc2 = store.any(ws, ns.space('store'))\n const start = store.any(ws, ns.cal('dtstart')).value()\n const end = store.any(ws, ns.cal('dtend')).value()\n if (subjectDoc2 && start && end && start <= date && end > date) {\n renderFormsFor(subjectDoc2, subject)\n break\n } else {\n complain('Note no suitable annotation store in activity: ' + act)\n }\n }\n })\n box.appendChild(foobarbaz)\n }\n\n return box\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
package/dist/home/homePane.js
DELETED
|
@@ -1,73 +0,0 @@
|
|
|
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");
|
|
9
|
-
/* Home Pane
|
|
10
|
-
**
|
|
11
|
-
** The home pane is avaiable everywhere and allows a user
|
|
12
|
-
** to
|
|
13
|
-
** - keep track of their stuff
|
|
14
|
-
** - make new things, and possibly
|
|
15
|
-
** - keep track of accounts and workspaces etc
|
|
16
|
-
**
|
|
17
|
-
*/
|
|
18
|
-
|
|
19
|
-
const HomePaneSource = {
|
|
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
|
-
}
|
|
69
|
-
}; // pane object
|
|
70
|
-
|
|
71
|
-
// ends
|
|
72
|
-
var _default = exports.default = HomePaneSource;
|
|
73
|
-
//# sourceMappingURL=homePane.js.map
|
|
@@ -1 +0,0 @@
|
|
|
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, icons, login } from 'solid-ui'\nimport type { CreateContext } 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;;AAQA,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":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"humanReadablePane.js","names":["_solidUi","require","_rdflib","_marked","_dompurify","_interopRequireDefault","e","__esModule","default","isMarkdownFile","uri","path","split","test","dokieliCache","Map","humanReadablePane","icon","subject","context","icons","iconBase","kb","session","store","cachedResult","get","originalIconBase","responseText","fetcher","getHeader","doc","length","text","isDokieli","includes","set","cts","ct","trim","_fetch","then","response","catch","name","label","allowed","hasContentTypeIn","x","displayables","j","k","indexOf","hasContentTypeIn2","t","findTypeURIs","Util","mediaTypeClass","ns","link","has","render","myDocument","dom","div","createElement","isMarkdown","console","log","setAttribute","renderMarkdownContent","frame","webOperation","markdownText","lines","Math","min","res","marked","parse","clean","DOMPurify","sanitize","innerHTML","error","setIframeAttributes","tr","appendChild","blobText","newLines","_default","exports"],"sources":["../src/humanReadablePane.js"],"sourcesContent":["/* Human-readable Pane\n **\n ** This outline pane contains the document contents for an HTML document\n ** This is for peeking at a page, because the user might not want to leave the data browser.\n */\nimport { icons, ns } from 'solid-ui'\nimport { Util } from 'rdflib'\nimport { marked } from 'marked'\nimport DOMPurify from 'dompurify'\n\n// Helper function to check if a URI has a markdown file extension\nconst isMarkdownFile = (uri) => {\n if (!uri) return false\n const path = uri.split('?')[0].split('#')[0] // Remove query string and fragment\n return /\\.(md|markdown|mdown|mkd|mkdn)$/i.test(path)\n}\n\n// Cache for dokieli detection results (keyed by subject URI)\nconst dokieliCache = new Map()\n\nconst humanReadablePane = {\n icon: function (subject, context) {\n // Markdown files detected by extension\n if (subject && isMarkdownFile(subject.uri)) {\n return icons.iconBase + 'markdown.svg'\n }\n\n // Dokieli files detected by content check\n if (subject) {\n const kb = context.session.store\n\n // Check cache from previous detection\n const cachedResult = dokieliCache.get(subject.uri)\n if (cachedResult === 'dokieli') {\n return icons.iconBase + 'dokieli-logo.png'\n } else if (cachedResult === 'html') {\n return icons.originalIconBase + 'tango/22-text-x-generic.png'\n }\n\n // Check if content already fetched (synchronous)\n const responseText = kb.fetcher.getHeader(subject.doc(), 'content')\n if (responseText && responseText.length > 0) {\n const text = responseText[0]\n const isDokieli = text.includes('<script src=\"https://dokie.li/scripts/dokieli.js\">') ||\n text.includes('dokieli.css')\n dokieliCache.set(subject.uri, isDokieli ? 'dokieli' : 'html')\n return isDokieli\n ? icons.iconBase + 'dokieli-logo.png'\n : icons.originalIconBase + 'tango/22-text-x-generic.png'\n }\n\n // Content not yet fetched - return a promise (async detection)\n const cts = kb.fetcher.getHeader(subject.doc(), 'content-type')\n const ct = cts ? cts[0].split(';', 1)[0].trim() : null\n\n if (ct === 'text/html') {\n return kb.fetcher._fetch(subject.uri)\n .then(response => response.text())\n .then(text => {\n const isDokieli = text.includes('<script src=\"https://dokie.li/scripts/dokieli.js\">') ||\n text.includes('dokieli.css')\n dokieliCache.set(subject.uri, isDokieli ? 'dokieli' : 'html')\n return isDokieli\n ? icons.iconBase + 'dokieli-logo.png'\n : icons.originalIconBase + 'tango/22-text-x-generic.png'\n })\n .catch(() => {\n dokieliCache.set(subject.uri, 'html')\n return icons.originalIconBase + 'tango/22-text-x-generic.png'\n })\n }\n }\n\n // Default for all other human-readable content\n return icons.originalIconBase + 'tango/22-text-x-generic.png'\n },\n\n name: 'humanReadable',\n\n label: function (subject, context) {\n const kb = context.session.store\n\n // See also the source pane, which has lower precedence.\n\n const allowed = [\n 'text/plain',\n 'text/html',\n 'text/markdown',\n 'application/xhtml+xml',\n 'image/png',\n 'image/jpeg',\n 'application/pdf',\n 'video/mp4'\n ]\n\n const hasContentTypeIn = function (kb, x, displayables) {\n const cts = kb.fetcher.getHeader(x, 'content-type')\n if (cts) {\n for (let j = 0; j < cts.length; j++) {\n for (let k = 0; k < displayables.length; k++) {\n if (cts[j].indexOf(displayables[k]) >= 0) {\n return true\n }\n }\n }\n }\n return false\n }\n\n // This data could come from a fetch OR from ldp container\n const hasContentTypeIn2 = function (kb, x, displayables) {\n const t = kb.findTypeURIs(x)\n for (let k = 0; k < displayables.length; k++) {\n if (Util.mediaTypeClass(displayables[k]).uri in t) {\n return true\n }\n }\n return false\n }\n\n if (!subject.uri) return null // no bnodes\n\n const t = kb.findTypeURIs(subject)\n if (t[ns.link('WebPage').uri]) return 'view'\n\n // Check file extension for markdown files\n if (isMarkdownFile(subject.uri)) {\n return 'View'\n }\n\n if (\n hasContentTypeIn(kb, subject, allowed) ||\n hasContentTypeIn2(kb, subject, allowed)\n ) {\n // For HTML files, check if it's dokieli (async check, store result for later)\n const cts = kb.fetcher.getHeader(subject.doc(), 'content-type')\n const ct = cts ? cts[0].split(';', 1)[0].trim() : null\n\n if (ct === 'text/html' && !dokieliCache.has(subject.uri)) {\n // Async check for dokieli, don't wait for result\n kb.fetcher._fetch(subject.uri)\n .then(response => response.text())\n .then(text => {\n const isDokieli = text.includes('<script src=\"https://dokie.li/scripts/dokieli.js\">') ||\n text.includes('dokieli.css')\n dokieliCache.set(subject.uri, isDokieli ? 'dokieli' : 'html')\n })\n .catch(() => {\n dokieliCache.set(subject.uri, 'html')\n })\n }\n\n return 'View'\n }\n\n return null\n },\n\n render: function (subject, context) {\n const myDocument = context.dom\n const div = myDocument.createElement('div')\n const kb = context.session.store\n\n const cts = kb.fetcher.getHeader(subject.doc(), 'content-type')\n const ct = cts ? cts[0].split(';', 1)[0].trim() : null // remove content-type parameters\n\n // Fallback: detect markdown by file extension if content-type is not text/markdown\n const isMarkdown = ct === 'text/markdown' || isMarkdownFile(subject.uri)\n\n if (ct) {\n // console.log('humanReadablePane: c-t:' + ct)\n } else {\n console.log('humanReadablePane: unknown content-type?')\n }\n\n // @@ When we can, use CSP to turn off scripts within the iframe\n div.setAttribute('class', 'docView')\n\n // render markdown to html in a DIV element\n const renderMarkdownContent = function (frame) {\n kb.fetcher.webOperation('GET', subject.uri).then(response => {\n const markdownText = response.responseText\n const lines = Math.min(30, markdownText.split(/\\n/).length + 5)\n const res = marked.parse(markdownText)\n const clean = DOMPurify.sanitize(res)\n frame.innerHTML = clean\n frame.setAttribute('class', 'doc')\n frame.setAttribute('style', `border: 1px solid; padding: 1em; height: ${lines}em; width: 800px; resize: both; overflow: auto;`)\n }).catch(error => {\n console.error('Error fetching markdown content:', error)\n frame.innerHTML = '<p>Error loading content</p>'\n })\n }\n\n const setIframeAttributes = (frame, lines) => {\n frame.setAttribute('src', subject.uri)\n frame.setAttribute('class', 'doc')\n frame.setAttribute('style', `border: 1px solid; padding: 1em; height: ${lines}em; width: 800px; resize: both; overflow: auto;`)\n }\n\n if (isMarkdown) {\n // For markdown, use a DIV element and render the content\n const frame = myDocument.createElement('DIV')\n renderMarkdownContent(frame)\n const tr = myDocument.createElement('TR')\n tr.appendChild(frame)\n div.appendChild(tr)\n } else {\n // For other content types, use IFRAME\n const frame = myDocument.createElement('IFRAME')\n\n // Apply sandbox for HTML/XHTML\n if (ct === 'text/html' || ct === 'application/xhtml+xml') {\n frame.setAttribute('sandbox', 'allow-scripts allow-same-origin allow-forms')\n }\n\n // Fetch content to calculate lines dynamically\n kb.fetcher.webOperation('GET', subject.uri).then(response => {\n const blobText = response.responseText\n const newLines = blobText.includes('<script src=\"https://dokie.li/scripts/dokieli.js\">') ? -10 : 5\n const lines = Math.min(30, blobText.split(/\\n/).length + newLines)\n\n // Cache dokieli detection result\n const isDokieli = blobText.includes('<script src=\"https://dokie.li/scripts/dokieli.js\">') ||\n blobText.includes('dokieli.css')\n dokieliCache.set(subject.uri, isDokieli ? 'dokieli' : 'html')\n\n setIframeAttributes(frame, lines)\n }).catch(error => {\n console.error('Error fetching content for line calculation:', error)\n // Fallback to default height\n setIframeAttributes(frame, 30)\n })\n\n const tr = myDocument.createElement('TR')\n tr.appendChild(frame)\n div.appendChild(tr)\n }\n\n return div\n }\n}\n\nexport default humanReadablePane\n// ends\n"],"mappings":"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","ignoreList":[]}
|
package/dist/imagePane.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"imagePane.js","names":["UI","_interopRequireWildcard","require","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","imagePane","exports","icon","icons","originalIconBase","name","label","subject","context","store","session","anyStatementMatching","ns","rdf","sym","contentTypeMatch","x","contentTypes","cts","fetcher","getHeader","j","length","k","indexOf","suppressed","render","myDocument","dom","div","createElement","setAttribute","img","_fetch","uri","then","response","blob","myBlob","objectURL","URL","createObjectURL","tr","appendChild"],"sources":["../src/imagePane.js"],"sourcesContent":["/* Image Pane\n **\n ** This outline pane contains the document contents for an Image document\n */\nimport * as UI from 'solid-ui'\n\nexport const imagePane = {\n icon: UI.icons.originalIconBase + 'tango/22-image-x-generic.png',\n\n name: 'image',\n\n label: function (subject, context) {\n const store = context.session.store\n if (\n !store.anyStatementMatching(\n subject,\n UI.ns.rdf('type'),\n store.sym('http://purl.org/dc/terms/Image')\n )\n ) {\n // NB: Not dc: namespace!\n return null\n }\n\n // See also the source pane, which has lower precedence.\n\n const contentTypeMatch = function (store, x, contentTypes) {\n const cts = store.fetcher.getHeader(x, 'content-type')\n if (cts) {\n for (let j = 0; j < cts.length; j++) {\n for (let k = 0; k < contentTypes.length; k++) {\n if (cts[j].indexOf(contentTypes[k]) >= 0) {\n return true\n }\n }\n }\n }\n return false\n }\n\n const suppressed = ['application/pdf']\n if (contentTypeMatch(store, subject, suppressed)) {\n return null\n }\n return 'view'\n },\n\n render: function (subject, context) {\n const myDocument = context.dom\n const store = context.session.store\n const div = myDocument.createElement('div')\n div.setAttribute('class', 'imageView')\n const img = myDocument.createElement('IMG')\n\n // get image with authenticated fetch\n store.fetcher._fetch(subject.uri)\n .then(function (response) {\n return response.blob()\n })\n .then(function (myBlob) {\n const objectURL = URL.createObjectURL(myBlob)\n img.setAttribute('src', objectURL) // w640 h480 //\n })\n\n img.setAttribute('style', 'max-width: 100%; max-height: 100%;')\n // div.style['max-width'] = '640'\n // div.style['max-height'] = '480'\n const tr = myDocument.createElement('TR') // why need tr?\n tr.appendChild(img)\n div.appendChild(tr)\n return div\n }\n}\n\n// ends\n"],"mappings":"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","ignoreList":[]}
|
package/dist/index.js
DELETED
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
Object.defineProperty(exports, "OutlineManager", {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: function () {
|
|
9
|
-
return _manager.default;
|
|
10
|
-
}
|
|
11
|
-
});
|
|
12
|
-
exports.UI = void 0;
|
|
13
|
-
Object.defineProperty(exports, "byName", {
|
|
14
|
-
enumerable: true,
|
|
15
|
-
get: function () {
|
|
16
|
-
return _paneRegistry.byName;
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
exports.getOutliner = getOutliner;
|
|
20
|
-
Object.defineProperty(exports, "initMainPage", {
|
|
21
|
-
enumerable: true,
|
|
22
|
-
get: function () {
|
|
23
|
-
return _mainPage.default;
|
|
24
|
-
}
|
|
25
|
-
});
|
|
26
|
-
Object.defineProperty(exports, "list", {
|
|
27
|
-
enumerable: true,
|
|
28
|
-
get: function () {
|
|
29
|
-
return _paneRegistry.list;
|
|
30
|
-
}
|
|
31
|
-
});
|
|
32
|
-
Object.defineProperty(exports, "paneForIcon", {
|
|
33
|
-
enumerable: true,
|
|
34
|
-
get: function () {
|
|
35
|
-
return _paneRegistry.paneForIcon;
|
|
36
|
-
}
|
|
37
|
-
});
|
|
38
|
-
Object.defineProperty(exports, "paneForPredicate", {
|
|
39
|
-
enumerable: true,
|
|
40
|
-
get: function () {
|
|
41
|
-
return _paneRegistry.paneForPredicate;
|
|
42
|
-
}
|
|
43
|
-
});
|
|
44
|
-
Object.defineProperty(exports, "register", {
|
|
45
|
-
enumerable: true,
|
|
46
|
-
get: function () {
|
|
47
|
-
return _paneRegistry.register;
|
|
48
|
-
}
|
|
49
|
-
});
|
|
50
|
-
Object.defineProperty(exports, "versionInfo", {
|
|
51
|
-
enumerable: true,
|
|
52
|
-
get: function () {
|
|
53
|
-
return _versionInfo.default;
|
|
54
|
-
}
|
|
55
|
-
});
|
|
56
|
-
var _versionInfo = _interopRequireDefault(require("./versionInfo"));
|
|
57
|
-
var UI = _interopRequireWildcard(require("solid-ui"));
|
|
58
|
-
exports.UI = UI;
|
|
59
|
-
var _solidLogic = require("solid-logic");
|
|
60
|
-
var _manager = _interopRequireDefault(require("./outline/manager.js"));
|
|
61
|
-
var _registerPanes = require("./registerPanes.js");
|
|
62
|
-
var _paneRegistry = require("pane-registry");
|
|
63
|
-
var _context = require("./outline/context");
|
|
64
|
-
var _mainPage = _interopRequireDefault(require("./mainPage"));
|
|
65
|
-
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); }
|
|
66
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
67
|
-
/* SOLID PANES
|
|
68
|
-
**
|
|
69
|
-
** Panes are regions of the outline view in which a particular subject is
|
|
70
|
-
** displayed in a particular way.
|
|
71
|
-
** Different panes about the same subject are typically stacked vertically.
|
|
72
|
-
** Panes may be used naked or with a pane selection header.
|
|
73
|
-
**
|
|
74
|
-
** The label() method has two functions: it determines whether the pane is
|
|
75
|
-
** relevant to a given subject, returning null if not.
|
|
76
|
-
** If it is relevant, then it returns a suitable tooltip for a control which selects the pane
|
|
77
|
-
*/
|
|
78
|
-
|
|
79
|
-
function getOutliner(dom) {
|
|
80
|
-
if (!dom.outlineManager) {
|
|
81
|
-
const context = (0, _context.createContext)(dom, {
|
|
82
|
-
list: _paneRegistry.list,
|
|
83
|
-
paneForIcon: _paneRegistry.paneForIcon,
|
|
84
|
-
paneForPredicate: _paneRegistry.paneForPredicate,
|
|
85
|
-
register: _paneRegistry.register,
|
|
86
|
-
byName: _paneRegistry.byName
|
|
87
|
-
}, _solidLogic.store, _solidLogic.solidLogicSingleton);
|
|
88
|
-
dom.outlineManager = new _manager.default(context);
|
|
89
|
-
}
|
|
90
|
-
return dom.outlineManager;
|
|
91
|
-
}
|
|
92
|
-
if (typeof window !== 'undefined') {
|
|
93
|
-
getOutliner(window.document);
|
|
94
|
-
}
|
|
95
|
-
(0, _registerPanes.registerPanes)(cjsOrEsModule => (0, _paneRegistry.register)(cjsOrEsModule.default || cjsOrEsModule));
|
|
96
|
-
|
|
97
|
-
// This has common outline mode functionality for the default and other other panes
|
|
98
|
-
// A separate outline manager is required per DOM in cases like a browser extension
|
|
99
|
-
// where there are many occurrences of window and of window.document
|
|
100
|
-
// But each DOM should have just one outline manager.
|
|
101
|
-
|
|
102
|
-
// export for simpler access by non-node scripts
|
|
103
|
-
if (typeof window !== 'undefined') {
|
|
104
|
-
;
|
|
105
|
-
window.panes = {
|
|
106
|
-
getOutliner
|
|
107
|
-
};
|
|
108
|
-
}
|
|
109
|
-
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_versionInfo","_interopRequireDefault","require","UI","_interopRequireWildcard","exports","_solidLogic","_manager","_registerPanes","_paneRegistry","_context","_mainPage","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","getOutliner","dom","outlineManager","context","createContext","list","paneForIcon","paneForPredicate","register","byName","store","solidLogicSingleton","OutlineManager","window","document","registerPanes","cjsOrEsModule","panes"],"sources":["../src/index.ts"],"sourcesContent":["/* SOLID PANES\n **\n ** Panes are regions of the outline view in which a particular subject is\n ** displayed in a particular way.\n ** Different panes about the same subject are typically stacked vertically.\n ** Panes may be used naked or with a pane selection header.\n **\n ** The label() method has two functions: it determines whether the pane is\n ** relevant to a given subject, returning null if not.\n ** If it is relevant, then it returns a suitable tooltip for a control which selects the pane\n */\n\nimport versionInfo from './versionInfo'\nimport * as UI from 'solid-ui'\nimport { LiveStore } from 'rdflib'\nimport { solidLogicSingleton, store } from 'solid-logic'\nimport OutlineManager from './outline/manager.js'\nimport { registerPanes } from './registerPanes.js'\nimport {\n list,\n paneForIcon,\n paneForPredicate,\n register,\n byName\n} from 'pane-registry'\nimport { createContext } from './outline/context'\nimport initMainPage from './mainPage'\n\nfunction getOutliner (dom) {\n if (!dom.outlineManager) {\n const context = createContext(\n dom,\n { list, paneForIcon, paneForPredicate, register, byName },\n store as LiveStore,\n solidLogicSingleton\n )\n dom.outlineManager = new OutlineManager(context)\n }\n return dom.outlineManager\n}\n\nif (typeof window !== 'undefined') {\n getOutliner(window.document)\n}\n\nregisterPanes((cjsOrEsModule: any) => register(cjsOrEsModule.default || cjsOrEsModule))\n\n// This has common outline mode functionality for the default and other other panes\n// A separate outline manager is required per DOM in cases like a browser extension\n// where there are many occurrences of window and of window.document\n// But each DOM should have just one outline manager.\n\nexport {\n OutlineManager,\n getOutliner,\n UI,\n versionInfo,\n initMainPage,\n list, // from paneRegistry\n paneForIcon, // from paneRegistry\n paneForPredicate, // from paneRegistry\n register, // from paneRegistry\n byName // from paneRegistry\n}\n\n// export for simpler access by non-node scripts\nif (typeof window !== 'undefined') {\n ;(<any>window).panes = {\n getOutliner\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,IAAAA,YAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,EAAA,GAAAC,uBAAA,CAAAF,OAAA;AAA8BG,OAAA,CAAAF,EAAA,GAAAA,EAAA;AAE9B,IAAAG,WAAA,GAAAJ,OAAA;AACA,IAAAK,QAAA,GAAAN,sBAAA,CAAAC,OAAA;AACA,IAAAM,cAAA,GAAAN,OAAA;AACA,IAAAO,aAAA,GAAAP,OAAA;AAOA,IAAAQ,QAAA,GAAAR,OAAA;AACA,IAAAS,SAAA,GAAAV,sBAAA,CAAAC,OAAA;AAAqC,SAAAE,wBAAAQ,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAV,uBAAA,YAAAA,CAAAQ,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;AAAA,SAAAZ,uBAAAW,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAK,UAAA,GAAAL,CAAA,KAAAU,OAAA,EAAAV,CAAA;AA1BrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAkBA,SAASmB,WAAWA,CAAEC,GAAG,EAAE;EACzB,IAAI,CAACA,GAAG,CAACC,cAAc,EAAE;IACvB,MAAMC,OAAO,GAAG,IAAAC,sBAAa,EAC3BH,GAAG,EACH;MAAEI,IAAI,EAAJA,kBAAI;MAAEC,WAAW,EAAXA,yBAAW;MAAEC,gBAAgB,EAAhBA,8BAAgB;MAAEC,QAAQ,EAARA,sBAAQ;MAAEC,MAAM,EAANA;IAAO,CAAC,EACzDC,iBAAK,EACLC,+BACF,CAAC;IACDV,GAAG,CAACC,cAAc,GAAG,IAAIU,gBAAc,CAACT,OAAO,CAAC;EAClD;EACA,OAAOF,GAAG,CAACC,cAAc;AAC3B;AAEA,IAAI,OAAOW,MAAM,KAAK,WAAW,EAAE;EACjCb,WAAW,CAACa,MAAM,CAACC,QAAQ,CAAC;AAC9B;AAEA,IAAAC,4BAAa,EAAEC,aAAkB,IAAK,IAAAR,sBAAQ,EAACQ,aAAa,CAACzB,OAAO,IAAIyB,aAAa,CAAC,CAAC;;AAEvF;AACA;AACA;AACA;;AAeA;AACA,IAAI,OAAOH,MAAM,KAAK,WAAW,EAAE;EACjC;EAAOA,MAAM,CAAEI,KAAK,GAAG;IACrBjB;EACF,CAAC;AACH","ignoreList":[]}
|