solid-panes 3.5.32 → 3.5.33
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/.github/workflows/ci.yml +1 -1
- package/jest.config.js +3 -0
- package/lib/RDFXMLPane.js +4 -5
- package/lib/RDFXMLPane.js.map +1 -1
- package/lib/argument/argumentPane.js +4 -5
- package/lib/argument/argumentPane.js.map +1 -1
- package/lib/attach/attachPane.js +4 -8
- package/lib/attach/attachPane.js.map +1 -1
- package/lib/audio/audioPane.js +11 -9
- package/lib/audio/audioPane.js.map +1 -1
- package/lib/classInstancePane.js +4 -7
- package/lib/classInstancePane.js.map +1 -1
- package/lib/dashboard/basicPreferences.js +4 -7
- package/lib/dashboard/basicPreferences.js.map +1 -1
- package/lib/dashboard/dashboardPane.js +2 -4
- package/lib/dashboard/dashboardPane.js.map +1 -1
- package/lib/dashboard/homepage.js +2 -2
- package/lib/dashboard/homepage.js.map +1 -1
- package/lib/dataContentPane.js +4 -6
- package/lib/dataContentPane.js.map +1 -1
- package/lib/defaultPane.js +4 -5
- package/lib/defaultPane.js.map +1 -1
- package/lib/dokieli/dokieliPane.js +4 -6
- package/lib/dokieli/dokieliPane.js.map +1 -1
- package/lib/dokieli/new.js +1 -2
- package/lib/form/pane.js +4 -5
- package/lib/form/pane.js.map +1 -1
- package/lib/home/homePane.js +12 -5
- package/lib/home/homePane.js.map +1 -1
- package/lib/humanReadablePane.js +4 -5
- package/lib/humanReadablePane.js.map +1 -1
- package/lib/imagePane.js +4 -6
- package/lib/imagePane.js.map +1 -1
- package/lib/index.js +3 -3
- package/lib/index.js.map +1 -1
- package/lib/internal/internalPane.js +1 -3
- package/lib/internal/internalPane.js.map +1 -1
- package/lib/mainPage/footer.js.map +1 -1
- package/lib/mainPage/header.js +2 -2
- package/lib/mainPage/header.js.map +1 -1
- package/lib/mainPage/index.js +6 -3
- package/lib/mainPage/index.js.map +1 -1
- package/lib/microblogPane/microblogPane.js +57 -53
- package/lib/microblogPane/microblogPane.js.map +1 -1
- package/lib/n3Pane.js +4 -5
- package/lib/n3Pane.js.map +1 -1
- package/lib/outline/licenseOptions.js +1 -3
- package/lib/outline/licenseOptions.js.map +1 -1
- package/lib/outline/manager.js +142 -155
- package/lib/outline/manager.js.map +1 -1
- package/lib/outline/manager.test.js +3 -3
- package/lib/outline/manager.test.js.map +1 -1
- package/lib/outline/outlineIcons.js +4 -5
- package/lib/outline/outlineIcons.js.map +1 -1
- package/lib/outline/queryByExample.js +3 -3
- package/lib/outline/queryByExample.js.map +1 -1
- package/lib/outline/userInput.js +13 -17
- package/lib/outline/userInput.js.map +1 -1
- package/lib/outline/viewAsImage.js +4 -5
- package/lib/outline/viewAsImage.js.map +1 -1
- package/lib/outline/viewAsMbox.js +1 -2
- package/lib/outline/viewAsMbox.js.map +1 -1
- package/lib/pad/padPane.js +1 -4
- package/lib/pad/padPane.js.map +1 -1
- package/lib/playlist/playlistPane.js +4 -5
- package/lib/playlist/playlistPane.js.map +1 -1
- package/lib/profile/editProfile.view.js +1 -3
- package/lib/profile/editProfile.view.js.map +1 -1
- package/lib/profile/profile.dom.js.map +1 -1
- package/lib/schedule/formsForSchedule.js +1 -2
- package/lib/schedule/schedulePane.js +4 -10
- package/lib/schedule/schedulePane.js.map +1 -1
- package/lib/sharing/sharingPane.js +1 -3
- package/lib/sharing/sharingPane.js.map +1 -1
- package/lib/slideshow/slideshowPane.js +6 -9
- package/lib/slideshow/slideshowPane.js.map +1 -1
- package/lib/socialPane.js +4 -8
- package/lib/socialPane.js.map +1 -1
- package/lib/tabbed/tabbedPane.js +8 -5
- package/lib/tabbed/tabbedPane.js.map +1 -1
- package/lib/tableViewPane.js +4 -5
- package/lib/tableViewPane.js.map +1 -1
- package/lib/test-import-export/common.js +1 -2
- package/lib/test-import-export/common.js.map +1 -1
- package/lib/test-import-export/edit-importer.js +1 -2
- package/lib/test-import-export/edit-importer.js.map +1 -1
- package/lib/transaction/pane.js +4 -6
- package/lib/transaction/pane.js.map +1 -1
- package/lib/transaction/period.js +4 -6
- package/lib/transaction/period.js.map +1 -1
- package/lib/trip/tripPane.js +4 -7
- package/lib/trip/tripPane.js.map +1 -1
- package/lib/trustedApplications/trustedApplications.dom.js +3 -3
- package/lib/trustedApplications/trustedApplications.dom.js.map +1 -1
- package/lib/trustedApplications/trustedApplications.test.js +3 -3
- package/lib/trustedApplications/trustedApplications.test.js.map +1 -1
- package/lib/trustedApplications/trustedApplications.utils.js.map +1 -1
- package/lib/trustedApplications/trustedApplications.view.js +3 -4
- package/lib/trustedApplications/trustedApplications.view.js.map +1 -1
- package/lib/ui/pane.js +4 -7
- package/lib/ui/pane.js.map +1 -1
- package/lib/versionInfo.js +9 -10
- package/lib/versionInfo.js.map +1 -1
- package/lib/video/videoPane.js +12 -6
- package/lib/video/videoPane.js.map +1 -1
- package/package.json +35 -34
- package/src/audio/audioPane.js +10 -1
- package/src/trustedApplications/__snapshots__/trustedApplications.test.ts.snap +2 -2
- package/src/versionInfo.ts +8 -8
- package/src/video/videoPane.js +11 -1
package/lib/dataContentPane.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(
|
|
3
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.dataContentPane = void 0;
|
|
8
8
|
var UI = _interopRequireWildcard(require("solid-ui"));
|
|
9
|
-
function _getRequireWildcardCache(
|
|
10
|
-
function _interopRequireWildcard(
|
|
9
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
10
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
11
11
|
/* Data content Pane
|
|
12
12
|
**
|
|
13
13
|
** This pane shows the content of a particular RDF resource
|
|
@@ -20,7 +20,7 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
20
20
|
// - original source view? Use ffox view source
|
|
21
21
|
|
|
22
22
|
var ns = UI.ns;
|
|
23
|
-
var dataContentPane = {
|
|
23
|
+
var dataContentPane = exports.dataContentPane = {
|
|
24
24
|
icon: UI.icons.originalIconBase + 'rdf_flyer.24.gif',
|
|
25
25
|
name: 'dataContents',
|
|
26
26
|
audience: [ns.solid('Developer')],
|
|
@@ -184,7 +184,6 @@ var dataContentPane = {
|
|
|
184
184
|
} else {
|
|
185
185
|
subjectTD.appendChild(objectTree(root)); // won't have tree
|
|
186
186
|
}
|
|
187
|
-
|
|
188
187
|
TDTree.appendChild(propertyTree(root));
|
|
189
188
|
}
|
|
190
189
|
for (var bNT in referencedBnodes) {
|
|
@@ -257,5 +256,4 @@ var dataContentPane = {
|
|
|
257
256
|
return div;
|
|
258
257
|
}
|
|
259
258
|
};
|
|
260
|
-
exports.dataContentPane = dataContentPane;
|
|
261
259
|
//# sourceMappingURL=dataContentPane.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataContentPane.js","names":["UI","_interopRequireWildcard","require","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ns","dataContentPane","icon","icons","originalIconBase","name","audience","solid","label","subject","context","session","store","findTypeURIs","n","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","i","st","tr","predicate","uri","setAttribute","anchor","addEventListener","widgets","openHrefInOutlineMode","utils","predicateLabelForXML","objectTD","objectTree","object","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","exports"],"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 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 if (false) { // keep code\n alternativeRendering()\n } else {\n mainRendering()\n }\n return div\n }\n}\n"],"mappings":";;;;;;;AAWA,IAAAA,EAAA,GAAAC,uBAAA,CAAAC,OAAA;AAA8B,SAAAC,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAH,wBAAAO,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,aAAAE,OAAA,CAAAF,GAAA,yBAAAA,GAAA,uCAAAA,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,cAAAN,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAX9B;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAGA,IAAMW,EAAE,GAAGzB,EAAE,CAACyB,EAAE;AAET,IAAMC,eAAe,GAAG;EAC7BC,IAAI,EAAE3B,EAAE,CAAC4B,KAAK,CAACC,gBAAgB,GAAG,kBAAkB;EAEpDC,IAAI,EAAE,cAAc;EAEpBC,QAAQ,EAAE,CAACN,EAAE,CAACO,KAAK,CAAC,WAAW,CAAC,CAAC;EAEjCC,KAAK,EAAE,SAAAA,MAAUC,OAAO,EAAEC,OAAO,EAAE;IACjC,IACE,+CAA+C,IAC/CA,OAAO,CAACC,OAAO,CAACC,KAAK,CAACC,YAAY,CAACJ,OAAO,CAAC,EAC3C;MACA,OAAO,IAAI;IACb;IACA,IAAMK,CAAC,GAAGJ,OAAO,CAACC,OAAO,CAACC,KAAK,CAACG,kBAAkB,CAChDC,SAAS,EACTA,SAAS,EACTA,SAAS,EACTP,OAAO,CACR,CAACQ,MAAM;IACR,IAAIH,CAAC,KAAK,CAAC,EAAE,OAAO,IAAI;IACxB,OAAO,QAAQ,GAAGA,CAAC,GAAG,GAAG;EAC3B,CAAC;EACD;AACF;AACA;AACA;AACA;EACEI,kBAAkB,EAAE,SAASA,kBAAkBA,CAAEC,GAAG,EAAET,OAAO,EAAEU,YAAY,EAAE;IAC3E,IAAMC,UAAU,GAAGX,OAAO,CAACY,GAAG;IAC9B;IACA,IAAMC,GAAG,GAAGF,UAAU,CAACG,aAAa,CAAC,OAAO,CAAC;IAC7C,IAAMC,EAAE,GAAGlD,EAAE,CAACmD,GAAG,CAACC,UAAU,CAACjB,OAAO,CAACC,OAAO,CAACC,KAAK,CAAC;IACnD,IAAMgB,GAAG,GAAGH,EAAE,CAACI,YAAY,CAACV,GAAG,CAAC;IAChC,IAAIW,KAAK,GAAGF,GAAG,CAACE,KAAK;IACrB,IAAMC,QAAQ,GAAGH,GAAG,CAACG,QAAQ;IAC7B,IAAMC,YAAY,GAAGJ,GAAG,CAACI,YAAY;IACrC,KAAK,IAAMC,CAAC,IAAID,YAAY,EAAE;MAC5BE,OAAO,CAACC,GAAG,CAAC,iCAAiC,GAAGF,CAAC,CAAC;IACpD;IACA,IAAMG,UAAU,GAAG,CAAC,CAAC,EAAC;IACtB,IAAMC,gBAAgB,GAAG,CAAC,CAAC,EAAC;;IAE5B;IACA,SAASC,YAAYA,CAAE7B,OAAO,EAAE;MAC9B;MACA,IAAMc,GAAG,GAAGF,UAAU,CAACG,aAAa,CAAC,OAAO,CAAC;MAC7C,IAAIe,QAAQ,GAAG,IAAI;MACnB,IAAMpB,GAAG,GAAGY,QAAQ,CAACN,EAAE,CAACe,KAAK,CAAC/B,OAAO,CAAC,CAAC,EAAC;MACxC,IAAI,CAACU,GAAG,EAAE;QACR;QACAI,GAAG,CAACkB,WAAW,CAACpB,UAAU,CAACqB,cAAc,CAAC,KAAK,CAAC,CAAC,EAAC;QAClD,OAAOnB,GAAG;MACZ;MACAJ,GAAG,CAACwB,IAAI,EAAE;MACV,IAAIC,IAAI,GAAG,CAAC;MACZ,IAAIC,WAAW,EAAC;MAChB,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG3B,GAAG,CAACF,MAAM,EAAE6B,CAAC,EAAE,EAAE;QACnC,IAAMC,EAAE,GAAG5B,GAAG,CAAC2B,CAAC,CAAC;QACjB,IAAME,EAAE,GAAG3B,UAAU,CAACG,aAAa,CAAC,IAAI,CAAC;QACzC,IAAIuB,EAAE,CAACE,SAAS,CAACC,GAAG,KAAKX,QAAQ,EAAE;UACjC,IAAIA,QAAQ,IAAIK,IAAI,GAAG,CAAC,EAAE;YACxBC,WAAW,CAACM,YAAY,CAAC,SAAS,EAAE,EAAE,GAAGP,IAAI,CAAC;UAChD;UACAC,WAAW,GAAGxB,UAAU,CAACG,aAAa,CAAC,IAAI,CAAC;UAC5CqB,WAAW,CAACM,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC;UACzC,IAAMC,MAAM,GAAG/B,UAAU,CAACG,aAAa,CAAC,GAAG,CAAC;UAC5C4B,MAAM,CAACD,YAAY,CAAC,MAAM,EAAEJ,EAAE,CAACE,SAAS,CAACC,GAAG,CAAC;UAC7CE,MAAM,CAACC,gBAAgB,CACrB,OAAO,EACP9E,EAAE,CAAC+E,OAAO,CAACC,qBAAqB,EAChC,IAAI,CACL;UACDH,MAAM,CAACX,WAAW,CAChBpB,UAAU,CAACqB,cAAc,CACvBnE,EAAE,CAACiF,KAAK,CAACC,oBAAoB,CAACV,EAAE,CAACE,SAAS,CAAC,CAC5C,CACF;UACDJ,WAAW,CAACJ,WAAW,CAACW,MAAM,CAAC;UAC/BJ,EAAE,CAACP,WAAW,CAACI,WAAW,CAAC;UAC3BN,QAAQ,GAAGQ,EAAE,CAACE,SAAS,CAACC,GAAG;UAC3BN,IAAI,GAAG,CAAC;QACV;QACAA,IAAI,EAAE;QACN,IAAMc,QAAQ,GAAGrC,UAAU,CAACG,aAAa,CAAC,IAAI,CAAC;QAC/CkC,QAAQ,CAACjB,WAAW,CAACkB,UAAU,CAACZ,EAAE,CAACa,MAAM,CAAC,CAAC;QAC3CZ,EAAE,CAACP,WAAW,CAACiB,QAAQ,CAAC;QACxBnC,GAAG,CAACkB,WAAW,CAACO,EAAE,CAAC;MACrB;MACA,IAAIT,QAAQ,IAAIK,IAAI,GAAG,CAAC,EAAEC,WAAW,CAACM,YAAY,CAAC,SAAS,EAAE,EAAE,GAAGP,IAAI,CAAC;MACxE,OAAOrB,GAAG;IACZ;;IAEA;IACA,SAASoC,UAAUA,CAAE5E,GAAG,EAAE;MACxB,IAAI6C,GAAG,EAAEwB,MAAM;MACf,QAAQrE,GAAG,CAAC8E,QAAQ;QAClB,KAAK,WAAW;UACdT,MAAM,GAAG/B,UAAU,CAACG,aAAa,CAAC,GAAG,CAAC;UACtC4B,MAAM,CAACD,YAAY,CAAC,MAAM,EAAEpE,GAAG,CAACmE,GAAG,CAAC;UACpCE,MAAM,CAACC,gBAAgB,CACrB,OAAO,EACP9E,EAAE,CAAC+E,OAAO,CAACC,qBAAqB,EAChC,IAAI,CACL;UACDH,MAAM,CAACX,WAAW,CAACpB,UAAU,CAACqB,cAAc,CAACnE,EAAE,CAACiF,KAAK,CAAChD,KAAK,CAACzB,GAAG,CAAC,CAAC,CAAC;UAClE,OAAOqE,MAAM;QAEf,KAAK,SAAS;UACZ,IAAI,CAACrE,GAAG,CAAC+E,QAAQ,IAAI,CAAC/E,GAAG,CAAC+E,QAAQ,CAACZ,GAAG,EAAE;YACtCtB,GAAG,GAAGP,UAAU,CAACG,aAAa,CAAC,KAAK,CAAC;YACrCI,GAAG,CAACuB,YAAY,CAAC,OAAO,EAAE,wBAAwB,CAAC;YACnDvB,GAAG,CAACmC,WAAW,GAAGhF,GAAG,CAACiF,KAAK;YAC3B,OAAOpC,GAAG;UACZ,CAAC,MAAM,IACL7C,GAAG,CAAC+E,QAAQ,CAACZ,GAAG,KAChB,uDAAuD,EACvD;YACAtB,GAAG,GAAGP,UAAU,CAACG,aAAa,CAAC,KAAK,CAAC;YACrCI,GAAG,CAACuB,YAAY,CAAC,OAAO,EAAE,eAAe,CAAC;YAC1CvB,GAAG,CAACqC,SAAS,GAAGlF,GAAG,CAACiF,KAAK,EAAC;YAC1B,OAAOpC,GAAG;UACZ;UACA,OAAOP,UAAU,CAACqB,cAAc,CAAC3D,GAAG,CAACiF,KAAK,CAAC;QAAC;;QAE9C,KAAK,WAAW;UAAE;YAChB,IAAIjF,GAAG,CAACmF,IAAI,EAAE,IAAI9B,UAAU,EAAE;cAC5B;cACAC,gBAAgB,CAACtD,GAAG,CAACmF,IAAI,EAAE,CAAC,GAAG,IAAI;cACnC,IAAMd,OAAM,GAAG/B,UAAU,CAACG,aAAa,CAAC,GAAG,CAAC;cAC5C4B,OAAM,CAACD,YAAY,CAAC,MAAM,EAAE,GAAG,GAAGpE,GAAG,CAACmF,IAAI,EAAE,CAACC,KAAK,CAAC,CAAC,CAAC,CAAC;cACtDf,OAAM,CAACD,YAAY,CAAC,OAAO,EAAE,UAAU,CAAC;cACxCC,OAAM,CAACW,WAAW,GAAG,GAAG,GAAGhF,GAAG,CAACmF,IAAI,EAAE,CAACC,KAAK,CAAC,CAAC,CAAC;cAC9C,OAAOf,OAAM;YACf;YACAhB,UAAU,CAACrD,GAAG,CAACmF,IAAI,EAAE,CAAC,GAAG,IAAI,EAAC;YAC9B,IAAME,QAAQ,GAAG9B,YAAY,CAACvD,GAAG,CAAC;YAClCqD,UAAU,CAACrD,GAAG,CAACmF,IAAI,EAAE,CAAC,GAAGE,QAAQ,EAAC;YAClC,IACE7F,EAAE,CAACiF,KAAK,CAACa,QAAQ,CAACD,QAAQ,EAAE,OAAO,CAAC,IACpC7F,EAAE,CAACiF,KAAK,CAACa,QAAQ,CAACD,QAAQ,EAAE,OAAO,CAAC,CAACE,KAAK,CAACC,eAAe,KACxD,OAAO,EACT;cACAH,QAAQ,CAACE,KAAK,CAACC,eAAe,GAAG,MAAM;YACzC,CAAC,MAAM;cACLH,QAAQ,CAACE,KAAK,CAACC,eAAe,GAAG,OAAO;YAC1C;YACA,OAAOH,QAAQ;UACjB;QACA,KAAK,YAAY;UACfxC,GAAG,GAAGP,UAAU,CAACG,aAAa,CAAC,OAAO,CAAC;UACvCI,GAAG,CAACuB,YAAY,CAAC,OAAO,EAAE,oBAAoB,CAAC;UAC/C,KAAK,IAAIL,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG/D,GAAG,CAACyF,QAAQ,CAACvD,MAAM,EAAE6B,CAAC,EAAE,EAAE;YAC5C,IAAME,EAAE,GAAG3B,UAAU,CAACG,aAAa,CAAC,IAAI,CAAC;YACzCI,GAAG,CAACa,WAAW,CAACO,EAAE,CAAC;YACnBA,EAAE,CAACP,WAAW,CAACkB,UAAU,CAAC5E,GAAG,CAACyF,QAAQ,CAAC1B,CAAC,CAAC,CAAC,CAAC;UAC7C;UACA,OAAOlB,GAAG;QACZ,KAAK,OAAO;UACVA,GAAG,GAAGlB,OAAO,CAACC,OAAO,CAAC8D,YAAY,CAC/BC,MAAM,CAAC,cAAc,CAAC,CACtBxD,kBAAkB,CAACnC,GAAG,CAAC4F,UAAU,EAAEjE,OAAO,CAAC;UAC9CkB,GAAG,CAACuB,YAAY,CAAC,OAAO,EAAE,eAAe,CAAC;UAC1C,OAAOvB,GAAG;QACZ,KAAK,UAAU;UACbA,GAAG,GAAGP,UAAU,CAACqB,cAAc,CAAC,GAAG,GAAG3D,GAAG,CAACmE,GAAG,CAAC;UAC9C,OAAOtB,GAAG;MAAA;MAEd,MAAM,IAAIgD,KAAK,CAAC,uBAAuB,GAAG7F,GAAG,CAAC8E,QAAQ,CAAC;IACzD;;IAEA;;IAEA,IAAIzC,YAAY,EAAE;MAChBU,KAAK,GAAGV,YAAY,CAACyD,MAAM,CACzB/C,KAAK,CAACgD,MAAM,CAAC,UAAU7C,CAAC,EAAE;QACxB,KAAK,IAAIa,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG1B,YAAY,CAACH,MAAM,EAAE6B,CAAC,EAAE,EAAE;UAC5C;UACA,IAAIb,CAAC,CAAC8C,QAAQ,CAAC3D,YAAY,CAAC0B,CAAC,CAAC,CAAC,EAAE,OAAO,KAAK;QAC/C;QACA,OAAO,IAAI;MACb,CAAC,CAAC,CACH;IACH;IACA,KAAK,IAAIA,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGhB,KAAK,CAACb,MAAM,EAAE6B,CAAC,EAAE,EAAE;MACrC,IAAME,EAAE,GAAG3B,UAAU,CAACG,aAAa,CAAC,IAAI,CAAC;MACzCD,GAAG,CAACkB,WAAW,CAACO,EAAE,CAAC;MACnB,IAAMgC,SAAS,GAAG3D,UAAU,CAACG,aAAa,CAAC,IAAI,CAAC;MAChDwB,EAAE,CAACP,WAAW,CAACuC,SAAS,CAAC;MACzB,IAAMC,MAAM,GAAG5D,UAAU,CAACG,aAAa,CAAC,IAAI,CAAC;MAC7CwB,EAAE,CAACP,WAAW,CAACwC,MAAM,CAAC;MACtB,IAAMC,IAAI,GAAGpD,KAAK,CAACgB,CAAC,CAAC;MACrB,IAAIoC,IAAI,CAACrB,QAAQ,KAAK,WAAW,EAAE;QACjCmB,SAAS,CAACvC,WAAW,CAACpB,UAAU,CAACqB,cAAc,CAACnE,EAAE,CAACiF,KAAK,CAAChD,KAAK,CAAC0E,IAAI,CAAC,CAAC,CAAC,EAAC;MACzE,CAAC,MAAM;QACLF,SAAS,CAACvC,WAAW,CAACkB,UAAU,CAACuB,IAAI,CAAC,CAAC,EAAC;MAC1C;;MACAD,MAAM,CAACxC,WAAW,CAACH,YAAY,CAAC4C,IAAI,CAAC,CAAC;IACxC;IACA,KAAK,IAAMC,GAAG,IAAI9C,gBAAgB,EAAE;MAClC;MACA,IAAM+C,KAAK,GAAGhD,UAAU,CAAC+C,GAAG,CAAC;MAC7B;MACA,IAAM/B,MAAM,GAAG/B,UAAU,CAACG,aAAa,CAAC,GAAG,CAAC;MAC5C4B,MAAM,CAACD,YAAY,CAAC,IAAI,EAAEgC,GAAG,CAAChB,KAAK,CAAC,CAAC,CAAC,CAAC;MACvCf,MAAM,CAACD,YAAY,CAAC,OAAO,EAAE,UAAU,CAAC;MACxCC,MAAM,CAACW,WAAW,GAAGoB,GAAG,CAAChB,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG;MACvCiB,KAAK,CAACC,YAAY,CAACjC,MAAM,EAAEgC,KAAK,CAACE,UAAU,CAAC;IAC9C;IACA,OAAO/D,GAAG;EACZ,CAAC;EAAE;EACH;EACAgE,MAAM,EAAE,SAAAA,OAAU9E,OAAO,EAAEC,OAAO,EAAE;IAClC,IAAMW,UAAU,GAAGX,OAAO,CAACY,GAAG;IAE9B,SAASkE,oBAAoBA,CAAA,EAAI;MAC/B,IAAM/D,EAAE,GAAGlD,EAAE,CAACmD,GAAG,CAACC,UAAU,CAACjB,OAAO,CAACC,OAAO,CAACC,KAAK,CAAC;MACnD,IAAMgB,GAAG,GAAGH,EAAE,CAACI,YAAY,CAACV,GAAG,CAAC;MAChC,IAAMW,KAAK,GAAGF,GAAG,CAACE,KAAK;MACvB,IAAM2D,CAAC,GAAG,CAAC,CAAC;MACZA,CAAC,CAACF,MAAM,GAAG,UAAUG,EAAE,EAAE;QACvB,IAAMC,GAAG,GAAGtE,UAAU,CAACG,aAAa,CAAC,KAAK,CAAC;QAC3CmE,GAAG,CAACxC,YAAY,CAAC,OAAO,EAAE,oBAAoB,CAAC;QAC/C,IAAMyC,KAAK,GAAGC,EAAE,CAAC9E,kBAAkB,CAAC2E,EAAE,EAAE1E,SAAS,EAAEA,SAAS,EAAEP,OAAO,CAAC;QACtEqF,QAAQ,CAACC,iBAAiB,CAACJ,GAAG,EAAEC,KAAK,EAAE,KAAK,EAAE,UAC5CI,KAAK,EACLC,QAAQ,EACR;UACA,OAAO,IAAI;QACb,CAAC,CAAC;QACF,OAAON,GAAG;MACZ,CAAC;MACD,KAAK,IAAI7C,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGhB,KAAK,CAACb,MAAM,EAAE6B,CAAC,EAAE,EAAE;QACrC,IAAME,EAAE,GAAG3B,UAAU,CAACG,aAAa,CAAC,IAAI,CAAC;QACzC,IAAM0D,IAAI,GAAGpD,KAAK,CAACgB,CAAC,CAAC;QACrBE,EAAE,CAACsB,KAAK,CAAC4B,aAAa,GAAG,KAAK;QAC9B,IAAMC,EAAE,GAAGL,QAAQ,CAACM,eAAe,CAAClB,IAAI,EAAElE,SAAS,EAAEgC,EAAE,CAAC;QACxDA,EAAE,CAACP,WAAW,CAAC0D,EAAE,CAAC;QAClBR,GAAG,CAAClD,WAAW,CAACO,EAAE,CAAC;QACnB8C,QAAQ,CAACO,aAAa,CAACF,EAAE,EAAEjB,IAAI,EAAE;UAAEoB,IAAI,EAAEb;QAAE,CAAC,CAAC;MAC/C;IACF;IAEA,SAASc,aAAaA,CAAA,EAAI;MACxB,IAAMnF,YAAY,GAAG,EAAE,EAAC;MACxB,IAAIyE,EAAE,CAACW,KAAK,CAAC/F,OAAO,EAAEO,SAAS,EAAEA,SAAS,EAAEP,OAAO,CAAC,EAAE;QACpDW,YAAY,CAACqF,IAAI,CAAChG,OAAO,CAAC;MAC5B;MACA;MACA,IAAMiG,EAAE,GAAGb,EAAE,CAACc,GAAG,CAAClG,OAAO,EAAElC,EAAE,CAACyB,EAAE,CAAC4G,IAAI,CAAC,cAAc,CAAC,EAAE5F,SAAS,EAAEP,OAAO,CAAC;MAC1E,IAAIiG,EAAE,EAAEtF,YAAY,CAACqF,IAAI,CAACC,EAAE,CAAC;MAC7Bf,GAAG,CAAClD,WAAW,CACb/B,OAAO,CAACC,OAAO,CAAC8D,YAAY,CACzBC,MAAM,CAAC,cAAc,CAAC,CACtBxD,kBAAkB,CAACC,GAAG,EAAET,OAAO,EAAEU,YAAY,CAAC,CAClD;IACH;IAEA,IAAM0E,QAAQ,GAAGpF,OAAO,CAACmG,WAAW,CAACxF,UAAU,CAAC;IAChD,IAAMwE,EAAE,GAAGnF,OAAO,CAACC,OAAO,CAACC,KAAK;IAChC,IAAM+E,GAAG,GAAGtE,UAAU,CAACG,aAAa,CAAC,KAAK,CAAC;IAC3CmE,GAAG,CAACxC,YAAY,CAAC,OAAO,EAAE,iBAAiB,CAAC;IAC5C;IACA;IACA;IACA,IAAMhC,GAAG,GAAG0E,EAAE,CAAC9E,kBAAkB,CAACC,SAAS,EAAEA,SAAS,EAAEA,SAAS,EAAEP,OAAO,CAAC,EAAC;;IAE5E,IAAI,KAAK,EAAE;MAAE;MACX+E,oBAAoB,EAAE;IACxB,CAAC,MAAM;MACLe,aAAa,EAAE;IACjB;IACA,OAAOZ,GAAG;EACZ;AACF,CAAC;AAAAmB,OAAA,CAAA7G,eAAA,GAAAA,eAAA"}
|
|
1
|
+
{"version":3,"file":"dataContentPane.js","names":["UI","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","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 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 if (false) { // keep code\n alternativeRendering()\n } else {\n mainRendering()\n }\n return div\n }\n}\n"],"mappings":"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"}
|
package/lib/defaultPane.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(
|
|
3
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
7
7
|
exports.defaultPane = void 0;
|
|
8
8
|
var UI = _interopRequireWildcard(require("solid-ui"));
|
|
9
9
|
var $rdf = _interopRequireWildcard(require("rdflib"));
|
|
10
|
-
function _getRequireWildcardCache(
|
|
11
|
-
function _interopRequireWildcard(
|
|
10
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
11
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
12
12
|
/* Default Pane
|
|
13
13
|
**
|
|
14
14
|
** This outline pane contains the properties which are
|
|
@@ -17,7 +17,7 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
17
17
|
*/
|
|
18
18
|
|
|
19
19
|
var ns = UI.ns;
|
|
20
|
-
var defaultPane = {
|
|
20
|
+
var defaultPane = exports.defaultPane = {
|
|
21
21
|
icon: UI.icons.originalIconBase + 'about.png',
|
|
22
22
|
name: 'default',
|
|
23
23
|
audience: [ns.solid('Developer')],
|
|
@@ -74,5 +74,4 @@ var defaultPane = {
|
|
|
74
74
|
};
|
|
75
75
|
|
|
76
76
|
// ends
|
|
77
|
-
exports.defaultPane = defaultPane;
|
|
78
77
|
//# sourceMappingURL=defaultPane.js.map
|
package/lib/defaultPane.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"defaultPane.js","names":["UI","_interopRequireWildcard","require","$rdf","_getRequireWildcardCache","
|
|
1
|
+
{"version":3,"file":"defaultPane.js","names":["UI","_interopRequireWildcard","require","$rdf","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","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","rdf","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'\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(UI.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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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(
|
|
3
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
@@ -9,8 +9,8 @@ var UI = _interopRequireWildcard(require("solid-ui"));
|
|
|
9
9
|
var $rdf = _interopRequireWildcard(require("rdflib"));
|
|
10
10
|
var mime = _interopRequireWildcard(require("mime-types"));
|
|
11
11
|
var DOKIELI_TEMPLATE = _interopRequireWildcard(require("./new.js"));
|
|
12
|
-
function _getRequireWildcardCache(
|
|
13
|
-
function _interopRequireWildcard(
|
|
12
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
13
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
14
14
|
/* Human-readable editable "Dokieli" Pane
|
|
15
15
|
**
|
|
16
16
|
** This outline pane contains the document contents for a Dokieli document
|
|
@@ -19,7 +19,7 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
19
19
|
*/
|
|
20
20
|
// const DOKIELI_TEMPLATE_URI = 'https://dokie.li/new' // Copy to make new dok
|
|
21
21
|
// Distributed with this library
|
|
22
|
-
var _default = {
|
|
22
|
+
var _default = exports["default"] = {
|
|
23
23
|
icon: UI.icons.iconBase + 'dokieli-logo.png',
|
|
24
24
|
// @@ improve? more like doccument?
|
|
25
25
|
|
|
@@ -36,7 +36,6 @@ var _default = {
|
|
|
36
36
|
// 'image/png', 'image/jpeg', 'application/pdf',
|
|
37
37
|
// 'video/mp4'
|
|
38
38
|
];
|
|
39
|
-
|
|
40
39
|
var hasContentTypeIn = function hasContentTypeIn(kb, x, displayables) {
|
|
41
40
|
var cts = kb.fetcher.getHeader(x, 'content-type');
|
|
42
41
|
if (cts) {
|
|
@@ -144,5 +143,4 @@ var _default = {
|
|
|
144
143
|
return div;
|
|
145
144
|
}
|
|
146
145
|
}; // ends
|
|
147
|
-
exports["default"] = _default;
|
|
148
146
|
//# sourceMappingURL=dokieliPane.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dokieliPane.js","names":["UI","_interopRequireWildcard","require","$rdf","mime","DOKIELI_TEMPLATE","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_default","icon","icons","iconBase","name","mintClass","ns","solid","label","subject","context","kb","session","store","allowed","hasContentTypeIn","x","displayables","cts","fetcher","getHeader","j","length","k","indexOf","hasContentTypeIn2","t","findTypeURIs","Util","mediaTypeClass","uri","link","mintNew","newPaneOptions","newInstance","newBase","endsWith","slice","sym","contentType","lookup","includes","console","log","htmlContents","filename","split","decodeURIComponent","encodedTitle","replace","Promise","resolve","webOperation","data","then","err","render","myDocument","dom","div","createElement","setAttribute","iframe","doc","ct","tr","appendChild","exports"],"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 * as 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 label: function (subject, context) {\n const kb = context.session.store\n const ns = UI.ns\n const allowed = [\n // 'text/plain',\n 'text/html',\n 'application/xhtml+xml'\n // 'image/png', 'image/jpeg', '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 coul d come from a fetch OR from ldp comtaimner\n const hasContentTypeIn2 = function (kb, x, displayables) {\n const t = kb.findTypeURIs(subject)\n for (let k = 0; k < displayables.length; k++) {\n if ($rdf.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 if (\n hasContentTypeIn(kb, subject, allowed) ||\n hasContentTypeIn2(kb, subject, allowed)\n ) {\n return 'Dok'\n }\n\n return null\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 dokelili dok at ' +\n newPaneOptions.newInstance +\n ': ' +\n err\n )\n })\n })\n },\n\n // Derived from: humanReadablePane .. share code?\n render: function (subject, context) {\n const myDocument = context.dom\n const div = myDocument.createElement('div')\n const kb = context.session.store\n\n // @@ When we can, use CSP to turn off scripts within the iframe\n div.setAttribute('class', 'docView')\n const iframe = myDocument.createElement('IFRAME')\n iframe.setAttribute('src', subject.uri) // allow-same-origin\n iframe.setAttribute('class', 'doc')\n\n const cts = kb.fetcher.getHeader(subject.doc(), 'content-type')\n const ct = cts ? cts[0] : null\n if (ct) {\n console.log('dokieliPane: c-t:' + ct)\n } else {\n console.log('dokieliPane: unknown content-type?')\n }\n\n // @@ NOte beflow - if we set ANY sandbox, then Chrome and Safari won't display it if it is PDF.\n // https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe\n // You can;'t have any sandbox and allow plugins.\n // We could sandbox only HTML files I suppose.\n // HTML5 bug: https://lists.w3.org/Archives/Public/public-html/2011Jun/0330.html\n\n // iframe.setAttribute('sandbox', 'allow-same-origin allow-forms'); // allow-scripts ?? no documents should be static\n\n iframe.setAttribute('style', 'resize = both; height: 40em; width:40em;') // @@ improve guess\n // iframe.setAttribute('height', '480')\n // iframe.setAttribute('width', '640')\n const tr = myDocument.createElement('tr')\n tr.appendChild(iframe)\n div.appendChild(tr)\n return div\n }\n}\n// ends\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dokieliPane.js","names":["UI","_interopRequireWildcard","require","$rdf","mime","DOKIELI_TEMPLATE","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_default","exports","icon","icons","iconBase","name","mintClass","ns","solid","label","subject","context","kb","session","store","allowed","hasContentTypeIn","x","displayables","cts","fetcher","getHeader","j","length","k","indexOf","hasContentTypeIn2","findTypeURIs","Util","mediaTypeClass","uri","link","mintNew","newPaneOptions","newInstance","newBase","endsWith","slice","sym","contentType","lookup","includes","console","log","htmlContents","filename","split","decodeURIComponent","encodedTitle","replace","Promise","resolve","webOperation","data","then","err","render","myDocument","dom","div","createElement","setAttribute","iframe","doc","ct","tr","appendChild"],"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 * as 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 label: function (subject, context) {\n const kb = context.session.store\n const ns = UI.ns\n const allowed = [\n // 'text/plain',\n 'text/html',\n 'application/xhtml+xml'\n // 'image/png', 'image/jpeg', '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 coul d come from a fetch OR from ldp comtaimner\n const hasContentTypeIn2 = function (kb, x, displayables) {\n const t = kb.findTypeURIs(subject)\n for (let k = 0; k < displayables.length; k++) {\n if ($rdf.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 if (\n hasContentTypeIn(kb, subject, allowed) ||\n hasContentTypeIn2(kb, subject, allowed)\n ) {\n return 'Dok'\n }\n\n return null\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 dokelili dok at ' +\n newPaneOptions.newInstance +\n ': ' +\n err\n )\n })\n })\n },\n\n // Derived from: humanReadablePane .. share code?\n render: function (subject, context) {\n const myDocument = context.dom\n const div = myDocument.createElement('div')\n const kb = context.session.store\n\n // @@ When we can, use CSP to turn off scripts within the iframe\n div.setAttribute('class', 'docView')\n const iframe = myDocument.createElement('IFRAME')\n iframe.setAttribute('src', subject.uri) // allow-same-origin\n iframe.setAttribute('class', 'doc')\n\n const cts = kb.fetcher.getHeader(subject.doc(), 'content-type')\n const ct = cts ? cts[0] : null\n if (ct) {\n console.log('dokieliPane: c-t:' + ct)\n } else {\n console.log('dokieliPane: unknown content-type?')\n }\n\n // @@ NOte beflow - if we set ANY sandbox, then Chrome and Safari won't display it if it is PDF.\n // https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe\n // You can;'t have any sandbox and allow plugins.\n // We could sandbox only HTML files I suppose.\n // HTML5 bug: https://lists.w3.org/Archives/Public/public-html/2011Jun/0330.html\n\n // iframe.setAttribute('sandbox', 'allow-same-origin allow-forms'); // allow-scripts ?? no documents should be static\n\n iframe.setAttribute('style', 'resize = both; height: 40em; width:40em;') // @@ improve guess\n // iframe.setAttribute('height', '480')\n // iframe.setAttribute('width', '640')\n const tr = myDocument.createElement('tr')\n tr.appendChild(iframe)\n div.appendChild(tr)\n return div\n }\n}\n// ends\n"],"mappings":";;;;;;;AAOA,IAAAA,EAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,IAAA,GAAAF,uBAAA,CAAAC,OAAA;AACA,IAAAE,IAAA,GAAAH,uBAAA,CAAAC,OAAA;AAIA,IAAAG,gBAAA,GAAAJ,uBAAA,CAAAC,OAAA;AAA6C,SAAAI,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAN,wBAAAM,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,gBAAAK,OAAA,CAAAL,CAAA,0BAAAA,CAAA,sBAAAA,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,cAAAR,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAb7C;AACA;AACA;AACA;AACA;AACA;AAMA;AAE8C;AAAA,IAAAY,QAAA,GAAAC,OAAA,cAE/B;EACbC,IAAI,EAAE7B,EAAE,CAAC8B,KAAK,CAACC,QAAQ,GAAG,kBAAkB;EAAE;;EAE9CC,IAAI,EAAE,SAAS;EAEfC,SAAS,EAAEjC,EAAE,CAACkC,EAAE,CAACC,KAAK,CAAC,iBAAiB,CAAC;EAAE;;EAE3CC,KAAK,EAAE,SAAAA,MAAUC,OAAO,EAAEC,OAAO,EAAE;IACjC,IAAMC,EAAE,GAAGD,OAAO,CAACE,OAAO,CAACC,KAAK;IAChC,IAAMP,EAAE,GAAGlC,EAAE,CAACkC,EAAE;IAChB,IAAMQ,OAAO,GAAG;IACd;IACA,WAAW,EACX;IACA;IACA;IAAA,CACD;IAED,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAaJ,EAAE,EAAEK,CAAC,EAAEC,YAAY,EAAE;MACtD,IAAMC,GAAG,GAAGP,EAAE,CAACQ,OAAO,CAACC,SAAS,CAACJ,CAAC,EAAE,cAAc,CAAC;MACnD,IAAIE,GAAG,EAAE;QACP,KAAK,IAAIG,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGH,GAAG,CAACI,MAAM,EAAED,CAAC,EAAE,EAAE;UACnC,KAAK,IAAIE,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGN,YAAY,CAACK,MAAM,EAAEC,CAAC,EAAE,EAAE;YAC5C,IAAIL,GAAG,CAACG,CAAC,CAAC,CAACG,OAAO,CAACP,YAAY,CAACM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;cACxC,OAAO,IAAI;YACb;UACF;QACF;MACF;MACA,OAAO,KAAK;IACd,CAAC;;IAED;IACA,IAAME,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAad,EAAE,EAAEK,CAAC,EAAEC,YAAY,EAAE;MACvD,IAAMnC,CAAC,GAAG6B,EAAE,CAACe,YAAY,CAACjB,OAAO,CAAC;MAClC,KAAK,IAAIc,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGN,YAAY,CAACK,MAAM,EAAEC,CAAC,EAAE,EAAE;QAC5C,IAAIhD,IAAI,CAACoD,IAAI,CAACC,cAAc,CAACX,YAAY,CAACM,CAAC,CAAC,CAAC,CAACM,GAAG,IAAI/C,CAAC,EAAE;UACtD,OAAO,IAAI;QACb;MACF;MACA,OAAO,KAAK;IACd,CAAC;IAED,IAAI,CAAC2B,OAAO,CAACoB,GAAG,EAAE,OAAO,IAAI,EAAC;;IAE9B,IAAM/C,CAAC,GAAG6B,EAAE,CAACe,YAAY,CAACjB,OAAO,CAAC;IAClC,IAAI3B,CAAC,CAACwB,EAAE,CAACwB,IAAI,CAAC,SAAS,CAAC,CAACD,GAAG,CAAC,EAAE,OAAO,MAAM;IAE5C,IACEd,gBAAgB,CAACJ,EAAE,EAAEF,OAAO,EAAEK,OAAO,CAAC,IACtCW,iBAAiB,CAACd,EAAE,EAAEF,OAAO,EAAEK,OAAO,CAAC,EACvC;MACA,OAAO,KAAK;IACd;IAEA,OAAO,IAAI;EACb,CAAC;EAED;EACAiB,OAAO,EAAE,SAAAA,QAAUrB,OAAO,EAAEsB,cAAc,EAAE;IAC1C,IAAMrB,EAAE,GAAGD,OAAO,CAACE,OAAO,CAACC,KAAK;IAChC,IAAIoB,WAAW,GAAGD,cAAc,CAACC,WAAW;IAC5C,IAAI,CAACA,WAAW,EAAE;MAChB,IAAIJ,GAAG,GAAGG,cAAc,CAACE,OAAO;MAChC,IAAIL,GAAG,CAACM,QAAQ,CAAC,GAAG,CAAC,EAAE;QACrBN,GAAG,GAAGA,GAAG,CAACO,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACtBJ,cAAc,CAACE,OAAO,GAAGL,GAAG;MAC9B;MACAI,WAAW,GAAGtB,EAAE,CAAC0B,GAAG,CAACR,GAAG,CAAC;IAC3B;IAEA,IAAMS,WAAW,GAAG9D,IAAI,CAAC+D,MAAM,CAACN,WAAW,CAACJ,GAAG,CAAC;IAChD,IAAI,CAACS,WAAW,IAAI,CAACA,WAAW,CAACE,QAAQ,CAAC,MAAM,CAAC,EAAE;MACjDP,WAAW,GAAG1D,IAAI,CAAC8D,GAAG,CAACJ,WAAW,CAACJ,GAAG,GAAG,OAAO,CAAC;IACnD;IACAG,cAAc,CAACC,WAAW,GAAGA,WAAW,EAAC;;IAEzCQ,OAAO,CAACC,GAAG,CAAC,yBAAyB,GAAGT,WAAW,CAAC;IAEpD,IAAIU,YAAY,GAAGlE,gBAAgB;IACnC,IAAImE,QAAQ,GAAGX,WAAW,CAACJ,GAAG,CAACgB,KAAK,CAAC,GAAG,CAAC,CAACT,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACtDQ,QAAQ,GAAGE,kBAAkB,CAACF,QAAQ,CAACC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACrD,IAAME,YAAY,GAAGH,QAAQ,CAC1BI,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CACtBA,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CACrBA,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;IACxBL,YAAY,GAAGA,YAAY,CAACK,OAAO,CAAC,SAAS,EAAE,SAAS,GAAGD,YAAY,CAAC;IACxEJ,YAAY,GAAGA,YAAY,CAACK,OAAO,CACjC,YAAY,EACZ,MAAM,GAAGD,YAAY,GAAG,iBAC1B,CAAC;IACDN,OAAO,CAACC,GAAG,CAAC,sBAAsB,GAAGC,YAAY,CAAC;IAClD,OAAO,IAAIM,OAAO,CAAC,UAAUC,OAAO,EAAE;MACpCvC,EAAE,CAACQ,OAAO,CACPgC,YAAY,CAAC,KAAK,EAAElB,WAAW,CAACJ,GAAG,EAAE;QACpCuB,IAAI,EAAET,YAAY;QAClBL,WAAW,EAAE;MACf,CAAC,CAAC,CACDe,IAAI,CAAC,YAAY;QAChBZ,OAAO,CAACC,GAAG,CACT,kCAAkC,GAAGV,cAAc,CAACC,WACtD,CAAC;QACDiB,OAAO,CAAClB,cAAc,CAAC;MACzB,CAAC,CAAC,SACI,CAAC,UAAUsB,GAAG,EAAE;QACpBb,OAAO,CAACC,GAAG,CACT,iCAAiC,GAC/BV,cAAc,CAACC,WAAW,GAC1B,IAAI,GACJqB,GACJ,CAAC;MACH,CAAC,CAAC;IACN,CAAC,CAAC;EACJ,CAAC;EAED;EACAC,MAAM,EAAE,SAAAA,OAAU9C,OAAO,EAAEC,OAAO,EAAE;IAClC,IAAM8C,UAAU,GAAG9C,OAAO,CAAC+C,GAAG;IAC9B,IAAMC,GAAG,GAAGF,UAAU,CAACG,aAAa,CAAC,KAAK,CAAC;IAC3C,IAAMhD,EAAE,GAAGD,OAAO,CAACE,OAAO,CAACC,KAAK;;IAEhC;IACA6C,GAAG,CAACE,YAAY,CAAC,OAAO,EAAE,SAAS,CAAC;IACpC,IAAMC,MAAM,GAAGL,UAAU,CAACG,aAAa,CAAC,QAAQ,CAAC;IACjDE,MAAM,CAACD,YAAY,CAAC,KAAK,EAAEnD,OAAO,CAACoB,GAAG,CAAC,EAAC;IACxCgC,MAAM,CAACD,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC;IAEnC,IAAM1C,GAAG,GAAGP,EAAE,CAACQ,OAAO,CAACC,SAAS,CAACX,OAAO,CAACqD,GAAG,CAAC,CAAC,EAAE,cAAc,CAAC;IAC/D,IAAMC,EAAE,GAAG7C,GAAG,GAAGA,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI;IAC9B,IAAI6C,EAAE,EAAE;MACNtB,OAAO,CAACC,GAAG,CAAC,mBAAmB,GAAGqB,EAAE,CAAC;IACvC,CAAC,MAAM;MACLtB,OAAO,CAACC,GAAG,CAAC,oCAAoC,CAAC;IACnD;;IAEA;IACA;IACA;IACA;IACA;;IAEA;;IAEAmB,MAAM,CAACD,YAAY,CAAC,OAAO,EAAE,0CAA0C,CAAC,EAAC;IACzE;IACA;IACA,IAAMI,EAAE,GAAGR,UAAU,CAACG,aAAa,CAAC,IAAI,CAAC;IACzCK,EAAE,CAACC,WAAW,CAACJ,MAAM,CAAC;IACtBH,GAAG,CAACO,WAAW,CAACD,EAAE,CAAC;IACnB,OAAON,GAAG;EACZ;AACF,CAAC,EACD"}
|
package/lib/dokieli/new.js
CHANGED
|
@@ -4,6 +4,5 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports["default"] = void 0;
|
|
7
|
-
var _default = "\n<!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# 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# cc: https://creativecommons.org/ns# 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# dio: https://w3id.org/dio# rel: https://www.w3.org/ns/iana/link-relations/relation#\" typeof=\"schema:CreativeWork sioc:Post prov:Entity\">\n <main>\n <article about=\"\" typeof=\"schema:Article\">\n\n </article>\n </main>\n </body>\n</html>\n";
|
|
8
|
-
exports["default"] = _default;
|
|
7
|
+
var _default = exports["default"] = "\n<!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# 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# cc: https://creativecommons.org/ns# 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# dio: https://w3id.org/dio# rel: https://www.w3.org/ns/iana/link-relations/relation#\" typeof=\"schema:CreativeWork sioc:Post prov:Entity\">\n <main>\n <article about=\"\" typeof=\"schema:Article\">\n\n </article>\n </main>\n </body>\n</html>\n";
|
|
9
8
|
//# sourceMappingURL=new.js.map
|
package/lib/form/pane.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
function _typeof(
|
|
3
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
4
4
|
Object.defineProperty(exports, "__esModule", {
|
|
5
5
|
value: true
|
|
6
6
|
});
|
|
@@ -8,15 +8,15 @@ exports.formPane = void 0;
|
|
|
8
8
|
var UI = _interopRequireWildcard(require("solid-ui"));
|
|
9
9
|
var _solidLogic = require("solid-logic");
|
|
10
10
|
var $rdf = _interopRequireWildcard(require("rdflib"));
|
|
11
|
-
function _getRequireWildcardCache(
|
|
12
|
-
function _interopRequireWildcard(
|
|
11
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
12
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
13
13
|
/*
|
|
14
14
|
** Pane for running existing forms for any object
|
|
15
15
|
**
|
|
16
16
|
*/
|
|
17
17
|
|
|
18
18
|
var ns = UI.ns;
|
|
19
|
-
var formPane = {
|
|
19
|
+
var formPane = exports.formPane = {
|
|
20
20
|
icon: UI.icons.iconBase + 'noun_122196.svg',
|
|
21
21
|
name: 'form',
|
|
22
22
|
audience: [ns.solid('PowerUser')],
|
|
@@ -184,5 +184,4 @@ var formPane = {
|
|
|
184
184
|
return box;
|
|
185
185
|
}
|
|
186
186
|
};
|
|
187
|
-
exports.formPane = formPane;
|
|
188
187
|
//# sourceMappingURL=pane.js.map
|
package/lib/form/pane.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pane.js","names":["UI","_interopRequireWildcard","require","_solidLogic","$rdf","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ns","formPane","icon","icons","iconBase","name","audience","solid","label","subject","n","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","i","form","heading","formStore","Util","document","e","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","exports"],"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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"}
|
|
1
|
+
{"version":3,"file":"pane.js","names":["UI","_interopRequireWildcard","require","_solidLogic","$rdf","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","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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"}
|