solid-panes 3.5.28-8ba58223 → 3.5.28-a918dff0

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.
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.dataContentPane = void 0;
8
8
  var UI = _interopRequireWildcard(require("solid-ui"));
9
- var $rdf = _interopRequireWildcard(require("rdflib"));
10
9
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
11
10
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
12
11
  /* Data content Pane
@@ -1 +1 @@
1
- {"version":3,"file":"dataContentPane.js","names":["ns","UI","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","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'\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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"}
1
+ {"version":3,"file":"dataContentPane.js","names":["ns","UI","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","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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"}
@@ -1 +1 @@
1
- {"version":3,"file":"homePane.d.ts","sourceRoot":"","sources":["../../src/home/homePane.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAM9C,QAAA,MAAM,cAAc,EAAE,cAiErB,CAAA;AAGD,eAAe,cAAc,CAAA"}
1
+ {"version":3,"file":"homePane.d.ts","sourceRoot":"","sources":["../../src/home/homePane.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAM9C,QAAA,MAAM,cAAc,EAAE,cAoDrB,CAAA;AAGD,eAAe,cAAc,CAAA"}
@@ -60,20 +60,8 @@ var HomePaneSource = {
60
60
  relevantPanes = _context.sent;
61
61
  _solidUi.create.newThingUI(creationContext, context, relevantPanes); // newUI Have to pass panes down
62
62
 
63
- div.appendChild(dom.createElement('h4')).textContent = 'Private things';
64
- // TODO: Replace by a common, representative interface
65
- _solidUi.login.registrationList(homePaneContext, {
66
- "private": true
67
- }).then(function (authContext) {
68
- div.appendChild(dom.createElement('h4')).textContent = 'Public things';
69
- div.appendChild(dom.createElement('p')).textContent = 'Things in this list are visible to others.';
70
- _solidUi.login.registrationList(authContext, {
71
- "public": true
72
- }).then(function () {
73
- // done
74
- });
75
- });
76
- case 10:
63
+ _solidUi.login.registrationList(homePaneContext, {}).then(function () {});
64
+ case 9:
77
65
  case "end":
78
66
  return _context.stop();
79
67
  }
@@ -1 +1 @@
1
- {"version":3,"file":"homePane.js","names":["HomePaneSource","icon","icons","iconBase","global","name","label","render","subject","context","dom","showContent","homePaneContext","div","statusArea","me","appendChild","createElement","textContent","creationDiv","creationContext","login","filterAvailablePanes","session","paneRegistry","list","relevantPanes","create","newThingUI","registrationList","then","authContext","authn","currentUser"],"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 { CreateContext } from 'solid-ui/lib/create/types'\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: div, dom: dom, statusArea: div, me: 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: dom,\n statusArea: div,\n me: 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 div.appendChild(dom.createElement('h4')).textContent = 'Private things'\n // TODO: Replace by a common, representative interface\n login\n .registrationList(homePaneContext, { private: true })\n .then(function (authContext) {\n div.appendChild(dom.createElement('h4')).textContent = 'Public things'\n div.appendChild(dom.createElement('p')).textContent =\n 'Things in this list are visible to others.'\n login\n .registrationList(authContext, { public: true })\n .then(function () {\n // done\n })\n })\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;AACA;AAA+C,+CAZ/C;AAAA;AAAA;AAeA,IAAMA,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,iBAAY;IACjB,OAAO,MAAM;EACf,CAAC;EAEDC,MAAM,EAAE,gBAAUC,OAAO,EAAEC,OAAO,EAAE;IAClC,IAAMC,GAAG,GAAGD,OAAO,CAACC,GAAG;IACvB,IAAMC,WAAW;MAAA,sEAAG;QAAA;QAAA;UAAA;YAAA;cACZC,eAAe,GAAG;gBAAEC,GAAG,EAAEA,GAAG;gBAAEH,GAAG,EAAEA,GAAG;gBAAEI,UAAU,EAAED,GAAG;gBAAEE,EAAE,EAAEA;cAAG,CAAC;cACvE;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;cACMF,GAAG,CAACG,WAAW,CAACN,GAAG,CAACO,aAAa,CAAC,IAAI,CAAC,CAAC,CAACC,WAAW,GAClD,4BAA4B;cACxBC,WAAW,GAAGN,GAAG,CAACG,WAAW,CAACN,GAAG,CAACO,aAAa,CAAC,KAAK,CAAC,CAAC;cACvDG,eAA8B,GAAG;gBACrCP,GAAG,EAAEM,WAAW;gBAChBT,GAAG,EAAEA,GAAG;gBACRI,UAAU,EAAED,GAAG;gBACfE,EAAE,EAAEA;cACN,CAAC;cAAA;cAAA,OAC2BM,cAAK,CAACC,oBAAoB,CACpDb,OAAO,CAACc,OAAO,CAACC,YAAY,CAACC,IAAI,CAClC;YAAA;cAFKC,aAAa;cAGnBC,eAAM,CAACC,UAAU,CAACR,eAAe,EAAEX,OAAO,EAAEiB,aAAa,CAAC,EAAC;;cAE3Db,GAAG,CAACG,WAAW,CAACN,GAAG,CAACO,aAAa,CAAC,IAAI,CAAC,CAAC,CAACC,WAAW,GAAG,gBAAgB;cACvE;cACAG,cAAK,CACFQ,gBAAgB,CAACjB,eAAe,EAAE;gBAAE,WAAS;cAAK,CAAC,CAAC,CACpDkB,IAAI,CAAC,UAAUC,WAAW,EAAE;gBAC3BlB,GAAG,CAACG,WAAW,CAACN,GAAG,CAACO,aAAa,CAAC,IAAI,CAAC,CAAC,CAACC,WAAW,GAAG,eAAe;gBACtEL,GAAG,CAACG,WAAW,CAACN,GAAG,CAACO,aAAa,CAAC,GAAG,CAAC,CAAC,CAACC,WAAW,GACjD,4CAA4C;gBAC9CG,cAAK,CACFQ,gBAAgB,CAACE,WAAW,EAAE;kBAAE,UAAQ;gBAAK,CAAC,CAAC,CAC/CD,IAAI,CAAC,YAAY;kBAChB;gBAAA,CACD,CAAC;cACN,CAAC,CAAC;YAAA;YAAA;cAAA;UAAA;QAAA;MAAA,CACL;MAAA,gBAvCKnB,WAAW;QAAA;MAAA;IAAA,GAuChB;IAED,IAAME,GAAG,GAAGH,GAAG,CAACO,aAAa,CAAC,KAAK,CAAC;IACpC,IAAMF,EAAa,GAAGiB,iBAAK,CAACC,WAAW,EAAe,EAAC;;IAEvDtB,WAAW,EAAE;IAEb,OAAOE,GAAG;EACZ;AACF,CAAC,EAAC;;AAEF;AAAA,eACeb,cAAc;AAAA"}
1
+ {"version":3,"file":"homePane.js","names":["HomePaneSource","icon","icons","iconBase","global","name","label","render","subject","context","dom","showContent","homePaneContext","div","statusArea","me","appendChild","createElement","textContent","creationDiv","creationContext","login","filterAvailablePanes","session","paneRegistry","list","relevantPanes","create","newThingUI","registrationList","then","authn","currentUser"],"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 { CreateContext } from 'solid-ui/lib/create/types'\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: div, dom: dom, statusArea: div, me: 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: dom,\n statusArea: div,\n me: 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;AACA;AAA+C,+CAZ/C;AAAA;AAAA;AAeA,IAAMA,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,iBAAY;IACjB,OAAO,MAAM;EACf,CAAC;EAEDC,MAAM,EAAE,gBAAUC,OAAO,EAAEC,OAAO,EAAE;IAClC,IAAMC,GAAG,GAAGD,OAAO,CAACC,GAAG;IACvB,IAAMC,WAAW;MAAA,sEAAG;QAAA;QAAA;UAAA;YAAA;cACZC,eAAe,GAAG;gBAAEC,GAAG,EAAEA,GAAG;gBAAEH,GAAG,EAAEA,GAAG;gBAAEI,UAAU,EAAED,GAAG;gBAAEE,EAAE,EAAEA;cAAG,CAAC;cACvE;AACN;AACA;AACA;AACA;AACA;AACA;AACA;AACA;cACMF,GAAG,CAACG,WAAW,CAACN,GAAG,CAACO,aAAa,CAAC,IAAI,CAAC,CAAC,CAACC,WAAW,GAClD,4BAA4B;cACxBC,WAAW,GAAGN,GAAG,CAACG,WAAW,CAACN,GAAG,CAACO,aAAa,CAAC,KAAK,CAAC,CAAC;cACvDG,eAA8B,GAAG;gBACrCP,GAAG,EAAEM,WAAW;gBAChBT,GAAG,EAAEA,GAAG;gBACRI,UAAU,EAAED,GAAG;gBACfE,EAAE,EAAEA;cACN,CAAC;cAAA;cAAA,OAC2BM,cAAK,CAACC,oBAAoB,CACpDb,OAAO,CAACc,OAAO,CAACC,YAAY,CAACC,IAAI,CAClC;YAAA;cAFKC,aAAa;cAGnBC,eAAM,CAACC,UAAU,CAACR,eAAe,EAAEX,OAAO,EAAEiB,aAAa,CAAC,EAAC;;cAE3DL,cAAK,CAACQ,gBAAgB,CAACjB,eAAe,EAAE,CAAC,CAAC,CAAC,CAACkB,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;YAAA;YAAA;cAAA;UAAA;QAAA;MAAA,CACjE;MAAA,gBA1BKnB,WAAW;QAAA;MAAA;IAAA,GA0BhB;IAED,IAAME,GAAG,GAAGH,GAAG,CAACO,aAAa,CAAC,KAAK,CAAC;IACpC,IAAMF,EAAa,GAAGgB,iBAAK,CAACC,WAAW,EAAe,EAAC;;IAEvDrB,WAAW,EAAE;IAEb,OAAOE,GAAG;EACZ;AACF,CAAC,EAAC;;AAEF;AAAA,eACeb,cAAc;AAAA"}
package/lib/n3Pane.js CHANGED
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.n3Pane = void 0;
8
8
  var UI = _interopRequireWildcard(require("solid-ui"));
9
- var $rdf = _interopRequireWildcard(require("rdflib"));
10
9
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
11
10
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
12
11
  /* Notation3 content Pane
package/lib/n3Pane.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"n3Pane.js","names":["ns","UI","n3Pane","icon","icons","originalIconBase","name","audience","solid","label","subject","context","store","session","findTypeURIs","n","statementsMatching","undefined","length","render","myDocument","dom","kb","div","createElement","setAttribute","sts","sz","rdf","Serializer","suggestNamespaces","namespaces","setBase","uri","str","statementsToN3","pre","appendChild","createTextNode"],"sources":["../src/n3Pane.js"],"sourcesContent":["/* Notation3 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 ** in generated N3 syntax.\n */\n import * as UI from 'solid-ui'\n import * as $rdf from 'rdflib'\nconst ns = UI.ns\n\nexport const n3Pane = {\n icon: UI.icons.originalIconBase + 'w3c/n3_smaller.png',\n\n name: 'n3',\n\n audience: [ns.solid('Developer')],\n\n label: function (subject, context) {\n const store = context.session.store\n if (\n 'http://www.w3.org/2007/ont/link#ProtocolEvent' in\n store.findTypeURIs(subject)\n ) {\n return null\n }\n const n = store.statementsMatching(undefined, undefined, undefined, subject)\n .length\n if (n === 0) return null\n return 'Data (' + n + ') as N3'\n },\n\n render: function (subject, context) {\n const myDocument = context.dom\n const kb = context.session.store\n const div = myDocument.createElement('div')\n div.setAttribute('class', 'n3Pane')\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 var kludge = kb.formula([]) // No features\n for (var i=0; i< sts.length; i++) {\n s = sts[i]\n kludge.add(s.subject, s.predicate, s.object)\n }\n */\n const sz = UI.rdf.Serializer(kb)\n sz.suggestNamespaces(kb.namespaces)\n sz.setBase(subject.uri)\n const str = sz.statementsToN3(sts)\n const pre = myDocument.createElement('PRE')\n pre.appendChild(myDocument.createTextNode(str))\n div.appendChild(pre)\n return div\n }\n}\n"],"mappings":";;;;;;;AAMC;AACA;AAA8B;AAAA;AAP/B;AACA;AACA;AACA;AACA;AACA;;AAGA,IAAMA,EAAE,GAAGC,EAAE,CAACD,EAAE;AAET,IAAME,MAAM,GAAI;EACrBC,IAAI,EAAEF,EAAE,CAACG,KAAK,CAACC,gBAAgB,GAAG,oBAAoB;EAEtDC,IAAI,EAAE,IAAI;EAEVC,QAAQ,EAAE,CAACP,EAAE,CAACQ,KAAK,CAAC,WAAW,CAAC,CAAC;EAEjCC,KAAK,EAAE,eAAUC,OAAO,EAAEC,OAAO,EAAE;IACjC,IAAMC,KAAK,GAAGD,OAAO,CAACE,OAAO,CAACD,KAAK;IACnC,IACE,+CAA+C,IAC/CA,KAAK,CAACE,YAAY,CAACJ,OAAO,CAAC,EAC3B;MACA,OAAO,IAAI;IACb;IACA,IAAMK,CAAC,GAAGH,KAAK,CAACI,kBAAkB,CAACC,SAAS,EAAEA,SAAS,EAAEA,SAAS,EAAEP,OAAO,CAAC,CACzEQ,MAAM;IACT,IAAIH,CAAC,KAAK,CAAC,EAAE,OAAO,IAAI;IACxB,OAAO,QAAQ,GAAGA,CAAC,GAAG,SAAS;EACjC,CAAC;EAEDI,MAAM,EAAE,gBAAUT,OAAO,EAAEC,OAAO,EAAE;IAClC,IAAMS,UAAU,GAAGT,OAAO,CAACU,GAAG;IAC9B,IAAMC,EAAE,GAAGX,OAAO,CAACE,OAAO,CAACD,KAAK;IAChC,IAAMW,GAAG,GAAGH,UAAU,CAACI,aAAa,CAAC,KAAK,CAAC;IAC3CD,GAAG,CAACE,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC;IACnC;IACA;IACA;IACA,IAAMC,GAAG,GAAGJ,EAAE,CAACN,kBAAkB,CAACC,SAAS,EAAEA,SAAS,EAAEA,SAAS,EAAEP,OAAO,CAAC,EAAC;IAC5E;AACJ;AACA;AACA;AACA;AACA;AACA;IACI,IAAMiB,EAAE,GAAG1B,EAAE,CAAC2B,GAAG,CAACC,UAAU,CAACP,EAAE,CAAC;IAChCK,EAAE,CAACG,iBAAiB,CAACR,EAAE,CAACS,UAAU,CAAC;IACnCJ,EAAE,CAACK,OAAO,CAACtB,OAAO,CAACuB,GAAG,CAAC;IACvB,IAAMC,GAAG,GAAGP,EAAE,CAACQ,cAAc,CAACT,GAAG,CAAC;IAClC,IAAMU,GAAG,GAAGhB,UAAU,CAACI,aAAa,CAAC,KAAK,CAAC;IAC3CY,GAAG,CAACC,WAAW,CAACjB,UAAU,CAACkB,cAAc,CAACJ,GAAG,CAAC,CAAC;IAC/CX,GAAG,CAACc,WAAW,CAACD,GAAG,CAAC;IACpB,OAAOb,GAAG;EACZ;AACF,CAAC;AAAA"}
1
+ {"version":3,"file":"n3Pane.js","names":["ns","UI","n3Pane","icon","icons","originalIconBase","name","audience","solid","label","subject","context","store","session","findTypeURIs","n","statementsMatching","undefined","length","render","myDocument","dom","kb","div","createElement","setAttribute","sts","sz","rdf","Serializer","suggestNamespaces","namespaces","setBase","uri","str","statementsToN3","pre","appendChild","createTextNode"],"sources":["../src/n3Pane.js"],"sourcesContent":["/* Notation3 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 ** in generated N3 syntax.\n */\nimport * as UI from 'solid-ui'\nconst ns = UI.ns\n\nexport const n3Pane = {\n icon: UI.icons.originalIconBase + 'w3c/n3_smaller.png',\n\n name: 'n3',\n\n audience: [ns.solid('Developer')],\n\n label: function (subject, context) {\n const store = context.session.store\n if (\n 'http://www.w3.org/2007/ont/link#ProtocolEvent' in\n store.findTypeURIs(subject)\n ) {\n return null\n }\n const n = store.statementsMatching(undefined, undefined, undefined, subject)\n .length\n if (n === 0) return null\n return 'Data (' + n + ') as N3'\n },\n\n render: function (subject, context) {\n const myDocument = context.dom\n const kb = context.session.store\n const div = myDocument.createElement('div')\n div.setAttribute('class', 'n3Pane')\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 var kludge = kb.formula([]) // No features\n for (var i=0; i< sts.length; i++) {\n s = sts[i]\n kludge.add(s.subject, s.predicate, s.object)\n }\n */\n const sz = UI.rdf.Serializer(kb)\n sz.suggestNamespaces(kb.namespaces)\n sz.setBase(subject.uri)\n const str = sz.statementsToN3(sts)\n const pre = myDocument.createElement('PRE')\n pre.appendChild(myDocument.createTextNode(str))\n div.appendChild(pre)\n return div\n }\n}\n"],"mappings":";;;;;;;AAMA;AAA8B;AAAA;AAN9B;AACA;AACA;AACA;AACA;AACA;;AAEA,IAAMA,EAAE,GAAGC,EAAE,CAACD,EAAE;AAET,IAAME,MAAM,GAAI;EACrBC,IAAI,EAAEF,EAAE,CAACG,KAAK,CAACC,gBAAgB,GAAG,oBAAoB;EAEtDC,IAAI,EAAE,IAAI;EAEVC,QAAQ,EAAE,CAACP,EAAE,CAACQ,KAAK,CAAC,WAAW,CAAC,CAAC;EAEjCC,KAAK,EAAE,eAAUC,OAAO,EAAEC,OAAO,EAAE;IACjC,IAAMC,KAAK,GAAGD,OAAO,CAACE,OAAO,CAACD,KAAK;IACnC,IACE,+CAA+C,IAC/CA,KAAK,CAACE,YAAY,CAACJ,OAAO,CAAC,EAC3B;MACA,OAAO,IAAI;IACb;IACA,IAAMK,CAAC,GAAGH,KAAK,CAACI,kBAAkB,CAACC,SAAS,EAAEA,SAAS,EAAEA,SAAS,EAAEP,OAAO,CAAC,CACzEQ,MAAM;IACT,IAAIH,CAAC,KAAK,CAAC,EAAE,OAAO,IAAI;IACxB,OAAO,QAAQ,GAAGA,CAAC,GAAG,SAAS;EACjC,CAAC;EAEDI,MAAM,EAAE,gBAAUT,OAAO,EAAEC,OAAO,EAAE;IAClC,IAAMS,UAAU,GAAGT,OAAO,CAACU,GAAG;IAC9B,IAAMC,EAAE,GAAGX,OAAO,CAACE,OAAO,CAACD,KAAK;IAChC,IAAMW,GAAG,GAAGH,UAAU,CAACI,aAAa,CAAC,KAAK,CAAC;IAC3CD,GAAG,CAACE,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC;IACnC;IACA;IACA;IACA,IAAMC,GAAG,GAAGJ,EAAE,CAACN,kBAAkB,CAACC,SAAS,EAAEA,SAAS,EAAEA,SAAS,EAAEP,OAAO,CAAC,EAAC;IAC5E;AACJ;AACA;AACA;AACA;AACA;AACA;IACI,IAAMiB,EAAE,GAAG1B,EAAE,CAAC2B,GAAG,CAACC,UAAU,CAACP,EAAE,CAAC;IAChCK,EAAE,CAACG,iBAAiB,CAACR,EAAE,CAACS,UAAU,CAAC;IACnCJ,EAAE,CAACK,OAAO,CAACtB,OAAO,CAACuB,GAAG,CAAC;IACvB,IAAMC,GAAG,GAAGP,EAAE,CAACQ,cAAc,CAACT,GAAG,CAAC;IAClC,IAAMU,GAAG,GAAGhB,UAAU,CAACI,aAAa,CAAC,KAAK,CAAC;IAC3CY,GAAG,CAACC,WAAW,CAACjB,UAAU,CAACkB,cAAc,CAACJ,GAAG,CAAC,CAAC;IAC/CX,GAAG,CAACc,WAAW,CAACD,GAAG,CAAC;IACpB,OAAOb,GAAG;EACZ;AACF,CAAC;AAAA"}
@@ -1,15 +1,11 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
6
  exports.licenseOptions = licenseOptions;
8
7
  exports.licenseURI = void 0;
9
- var UI = _interopRequireWildcard(require("solid-ui"));
10
8
  var _solidLogic = require("solid-logic");
11
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
12
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
13
9
  // This was a student project to
14
10
  // allow the user to chose favoite CC license terms and have them highlighted
15
11
 
@@ -1 +1 @@
1
- {"version":3,"file":"licenseOptions.js","names":["licenseURI","names","licenseOptions","options","references","checkedLicenses","openCheckBoxWindow","display","window","open","message","lics","kk","length","document","write","close","i","checkboxes","elements","selectAll","checked","deselectAll","submit","checkLicense","statement","licenses","store","each","why","sym","j","uri"],"sources":["../../src/outline/licenseOptions.js"],"sourcesContent":["// This was a student project to\n// allow the user to chose favoite CC license terms and have them highlighted\n\n// tabulator.options becaome UI.licenseOptions\n// Possible future alternative directoons: Store license preferences in a solid preferences file\nimport * as UI from 'solid-ui'\nimport { store } from 'solid-logic'\n\nexport const licenseURI = [\n 'http://creativecommons.org/licenses/by-nc-nd/3.0/',\n 'http://creativecommons.org/licenses/by-nc-sa/3.0/',\n 'http://creativecommons.org/licenses/by-nc/3.0/',\n 'http://creativecommons.org/licenses/by-nd/3.0/',\n 'http://creativecommons.org/licenses/by-sa/3.0/',\n 'http://creativecommons.org/licenses/by/3.0/'\n]\n\nconst names = ['BY-NC-ND', 'BY-NC-SA', 'BY-NC', 'BY-ND', 'BY-SA', 'BY']\n\nexport function licenseOptions () {\n this.options = {}\n this.references = []\n this.checkedLicenses = []\n\n this.openCheckBoxWindow = function () {\n this.this.display = window.open(\n ' ',\n 'NewWin',\n 'menubar=0,location=no,status=no,directories=no,toolbar=no,scrollbars=yes,height=200,width=200'\n )\n }\n let message = \"<font face='arial' size='2'><form name ='checkboxes'>\"\n const lics = this.checkedLicenses\n for (let kk = 0; kk < lics.length; kk++) {\n message +=\n \"<input type='checkbox' name = 'n\" +\n kk +\n \"' onClick = 'tabulator.options.submit()'\" + // @@ FIXME\n (lics[kk] ? 'CHECKED' : '') +\n ' />CC: ' +\n names[kk] +\n '<br />'\n }\n\n message +=\n \"<br /> <a onclick='tabulator.options.selectAll()'>[Select All] </a>\" // @@ FIXME\n message += \"<a onclick='tabulator.options.deselectAll()'> [Deselect All]</a>\" // @@ FIXME\n message += '</form></font>'\n\n this.display.document.write(message)\n\n this.display.document.close()\n\n let i\n for (i = 0; i < 6; i++) {\n this.references[i] = this.this.display.document.checkboxes.elements[i]\n }\n\n this.selectAll = function () {\n let i\n for (i = 0; i < 6; i++) {\n this.display.document.checkboxes.elements[i].checked = true\n this.references[i].checked = true\n this.checkedLicenses[i] = true\n }\n }\n\n this.deselectAll = function () {\n let i\n for (i = 0; i < 6; i++) {\n this.display.document.checkboxes.elements[i].checked = false\n this.references[i].checked = false\n this.checkedLicenses[i] = false\n }\n }\n\n this.submit = function () {\n // alert('this.submit: checked=' + this.references[0].checked)\n for (let i = 0; i < 6; i++) {\n this.checkedLicenses[i] = !!this.references[i].checked\n }\n }\n\n this.checkLicense = function checkLicense (statement) {\n const licenses = store.each(\n statement.why,\n store.sym('http://creativecommons.org/ns#license'),\n null,\n statement.why\n )\n // UI.log.info('licenses:' + statement.why + ': ' + licenses)\n for (let i = 0; i < licenses.length; i++) {\n for (let j = 0; j < this.checkedLicenses.length; j++) {\n if (this.checkedLicenses[j] && licenses[i].uri === licenseURI[j]) {\n return true\n // theClass += ' licOkay' // icon_expand\n // break\n }\n }\n }\n return false\n }\n return this\n}\n\n// ends\n"],"mappings":"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"}
1
+ {"version":3,"file":"licenseOptions.js","names":["licenseURI","names","licenseOptions","options","references","checkedLicenses","openCheckBoxWindow","display","window","open","message","lics","kk","length","document","write","close","i","checkboxes","elements","selectAll","checked","deselectAll","submit","checkLicense","statement","licenses","store","each","why","sym","j","uri"],"sources":["../../src/outline/licenseOptions.js"],"sourcesContent":["// This was a student project to\n// allow the user to chose favoite CC license terms and have them highlighted\n\n// tabulator.options becaome UI.licenseOptions\n// Possible future alternative directoons: Store license preferences in a solid preferences file\nimport { store } from 'solid-logic'\n\nexport const licenseURI = [\n 'http://creativecommons.org/licenses/by-nc-nd/3.0/',\n 'http://creativecommons.org/licenses/by-nc-sa/3.0/',\n 'http://creativecommons.org/licenses/by-nc/3.0/',\n 'http://creativecommons.org/licenses/by-nd/3.0/',\n 'http://creativecommons.org/licenses/by-sa/3.0/',\n 'http://creativecommons.org/licenses/by/3.0/'\n]\n\nconst names = ['BY-NC-ND', 'BY-NC-SA', 'BY-NC', 'BY-ND', 'BY-SA', 'BY']\n\nexport function licenseOptions () {\n this.options = {}\n this.references = []\n this.checkedLicenses = []\n\n this.openCheckBoxWindow = function () {\n this.this.display = window.open(\n ' ',\n 'NewWin',\n 'menubar=0,location=no,status=no,directories=no,toolbar=no,scrollbars=yes,height=200,width=200'\n )\n }\n let message = \"<font face='arial' size='2'><form name ='checkboxes'>\"\n const lics = this.checkedLicenses\n for (let kk = 0; kk < lics.length; kk++) {\n message +=\n \"<input type='checkbox' name = 'n\" +\n kk +\n \"' onClick = 'tabulator.options.submit()'\" + // @@ FIXME\n (lics[kk] ? 'CHECKED' : '') +\n ' />CC: ' +\n names[kk] +\n '<br />'\n }\n\n message +=\n \"<br /> <a onclick='tabulator.options.selectAll()'>[Select All] </a>\" // @@ FIXME\n message += \"<a onclick='tabulator.options.deselectAll()'> [Deselect All]</a>\" // @@ FIXME\n message += '</form></font>'\n\n this.display.document.write(message)\n\n this.display.document.close()\n\n let i\n for (i = 0; i < 6; i++) {\n this.references[i] = this.this.display.document.checkboxes.elements[i]\n }\n\n this.selectAll = function () {\n let i\n for (i = 0; i < 6; i++) {\n this.display.document.checkboxes.elements[i].checked = true\n this.references[i].checked = true\n this.checkedLicenses[i] = true\n }\n }\n\n this.deselectAll = function () {\n let i\n for (i = 0; i < 6; i++) {\n this.display.document.checkboxes.elements[i].checked = false\n this.references[i].checked = false\n this.checkedLicenses[i] = false\n }\n }\n\n this.submit = function () {\n // alert('this.submit: checked=' + this.references[0].checked)\n for (let i = 0; i < 6; i++) {\n this.checkedLicenses[i] = !!this.references[i].checked\n }\n }\n\n this.checkLicense = function checkLicense (statement) {\n const licenses = store.each(\n statement.why,\n store.sym('http://creativecommons.org/ns#license'),\n null,\n statement.why\n )\n // UI.log.info('licenses:' + statement.why + ': ' + licenses)\n for (let i = 0; i < licenses.length; i++) {\n for (let j = 0; j < this.checkedLicenses.length; j++) {\n if (this.checkedLicenses[j] && licenses[i].uri === licenseURI[j]) {\n return true\n // theClass += ' licOkay' // icon_expand\n // break\n }\n }\n }\n return false\n }\n return this\n}\n\n// ends\n"],"mappings":"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"}
@@ -162,7 +162,7 @@ function _default(context) {
162
162
 
163
163
  // check the IPR on the data. Ok if there is any checked license which is one the document has.
164
164
  if (statement && statement.why) {
165
- if (_licenseOptions.licenseOptions && _licenseOptions.licenseOptions.checklicense()) {
165
+ if (_licenseOptions.licenseOptions && _licenseOptions.licenseOptions.checklicense && _licenseOptions.licenseOptions.checklicense()) {
166
166
  theClass += ' licOkay'; // flag as light green etc .licOkay {background-color: #dfd}
167
167
  }
168
168
  }