solid-ui 2.4.28-6587e612 → 2.4.28-6a319caf
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/solid-ui.js +88 -204
- package/dist/solid-ui.js.map +1 -1
- package/dist/solid-ui.min.js +1 -1
- package/dist/solid-ui.min.js.map +1 -1
- package/lib/chat/message.js +1 -1
- package/lib/chat/message.js.map +1 -1
- package/lib/chat/signature.d.ts +0 -2
- package/lib/chat/signature.d.ts.map +1 -1
- package/lib/chat/signature.js +1 -70
- package/lib/chat/signature.js.map +1 -1
- package/lib/chat/thread.js +226 -159
- package/lib/chat/thread.js.map +1 -1
- package/lib/utils/keyHelpers/accessData.d.ts +2 -2
- package/lib/utils/keyHelpers/accessData.d.ts.map +1 -1
- package/lib/utils/keyHelpers/accessData.js +51 -131
- package/lib/utils/keyHelpers/accessData.js.map +1 -1
- package/lib/utils/keyHelpers/otherHelpers.d.ts +3 -0
- package/lib/utils/keyHelpers/otherHelpers.d.ts.map +1 -0
- package/lib/utils/keyHelpers/otherHelpers.js +23 -0
- package/lib/utils/keyHelpers/otherHelpers.js.map +1 -0
- package/lib/versionInfo.js +2 -2
- package/lib/versionInfo.js.map +1 -1
- package/package.json +3 -1
package/lib/chat/thread.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"thread.js","names":["_iconBase","require","_solidLogic","_index","ns","_interopRequireWildcard","login","pad","$rdf","style","utils","widgets","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","UI","icons","media","thread","dom","kb","subject","messageStore","options","store","doc","WF","Namespace","DCT","newestFirst","messageBodyStyle","div","createElement","messageTable","me","updater","anchor","text","term","a","uri","setAttribute","addEventListener","openHrefInOutlineMode","textContent","mention","message","pre","appendChild","createTextNode","announce","log","warn","error","newMessageForm","form","lhs","middle","rhs","AJAR_date","sendMessage","_ref","_asyncToGenerator2","_regenerator","mark","_callee","_yield$appendMsg","dateStamp","sts","sendComplete","wrap","_callee$","_context","prev","next","field","disabled","appendMsg","value","sent","success","body","errorMessageBlock","bindings","literal","renderMessage","update","stop","apply","arguments","sendButton","turnOnInput","creatorAndDate","innerHTML","rows","_ref2","_callee2","e","_callee2$","_context2","keyCode","altKey","_x","button","iconBase","buttonStyle","context","ensureLoggedIn","then","_ref3","fieldValue","oldMsg","length","undefined","_callee3","now","timestamp","msgBody","_callee3$","_context3","Date","getTime","sym","t0","t1","Statement","mostRecentVersion","t2","t3","t4","t5","t6","push","wf","concat","nick","sioc","foaf","abrupt","_x2","person","s","any","label","td1","creator","date","nickAnchor","fetcher","nowOrWhenFetched","_ok","_body","syncMessages","about","displayed","ele","ele2","firstChild","nextSibling","AJAR_subject","messages","each","stored","forEach","m","addMessage","removeChild","msg","statementsMatching","_deleteMessage","_ref4","_callee4","deletions","_callee4$","_context4","connectedStatements","ok","_x3","fresh","content","dateString","tr","done","insertBefore","shortDate","td2","td3","delButton","_event","cancelButton","sureButton","_ref5","_callee5","_yield$appendMsg2","_callee5$","_context5","_x4","query","Query","v","vs","x","vars","variable","pat","add","dct","doneQuery","refresh"],"sources":["../../src/chat/thread.js"],"sourcesContent":["/**\n * Contains the [[thread]] function\n * @packageDocumentation\n */\n\nimport { icons } from '../iconBase'\nimport { store } from 'solid-logic'\nimport { media } from '../media/index'\nimport * as ns from '../ns'\nimport * as login from '../login/login'\nimport * as pad from '../pad'\nimport * as $rdf from 'rdflib' // pull in first avoid cross-refs\nimport * as style from '../style'\nimport * as utils from '../utils'\nimport * as widgets from '../widgets'\n\nconst UI = { icons, ns, media, pad, style, utils, widgets }\n\n/**\n * HTML component for a chat thread\n */\nexport function thread (dom, kb, subject, messageStore, options) {\n kb = kb || store\n messageStore = messageStore.doc() // No hash\n const ns = UI.ns\n const WF = $rdf.Namespace('http://www.w3.org/2005/01/wf/flow#')\n const DCT = $rdf.Namespace('http://purl.org/dc/terms/')\n\n options = options || {}\n\n const newestFirst = !!options.newestFirst\n\n const messageBodyStyle =\n 'white-space: pre-wrap; width: 90%; font-size:100%; border: 0.07em solid #eee; padding: .2em 0.5em; margin: 0.1em 1em 0.1em 1em;'\n // 'font-size: 100%; margin: 0.1em 1em 0.1em 1em; background-color: white; white-space: pre-wrap; padding: 0.1em;'\n\n const div = dom.createElement('div')\n // eslint-disable-next-line prefer-const\n let messageTable\n\n let me\n\n const updater = store.updater\n\n const anchor = function (text, term) {\n // If there is no link return an element anyway\n const a = dom.createElement('a')\n if (term && term.uri) {\n a.setAttribute('href', term.uri)\n a.addEventListener('click', UI.widgets.openHrefInOutlineMode, true)\n a.setAttribute('style', 'color: #3B5998; text-decoration: none; ') // font-weight: bold\n }\n a.textContent = text\n return a\n }\n\n const mention = function mention (message, style) {\n const pre = dom.createElement('pre')\n pre.setAttribute('style', style || 'color: grey')\n div.appendChild(pre)\n pre.appendChild(dom.createTextNode(message))\n return pre\n }\n\n const announce = {\n log: function (message) {\n mention(message, 'color: #111;')\n },\n warn: function (message) {\n mention(message, 'color: #880;')\n },\n error: function (message) {\n mention(message, 'color: #800;')\n }\n }\n\n /**\n * Form for a new message\n */\n const newMessageForm = function () {\n const form = dom.createElement('tr')\n const lhs = dom.createElement('td')\n const middle = dom.createElement('td')\n const rhs = dom.createElement('td')\n form.appendChild(lhs)\n form.appendChild(middle)\n form.appendChild(rhs)\n form.AJAR_date = '9999-01-01T00:00:00Z' // ISO format for field sort\n\n const sendMessage = async function () {\n // titlefield.setAttribute('class','pendingedit')\n // titlefield.disabled = true\n field.setAttribute('class', 'pendingedit')\n field.disabled = true\n const { message, dateStamp, sts } = await appendMsg(field.value)\n\n const sendComplete = function (uri, success, body) {\n if (!success) {\n form.appendChild(\n UI.widgets.errorMessageBlock(dom, 'Error writing message: ' + body)\n )\n } else {\n const bindings = {\n '?msg': message,\n '?content': store.literal(field.value),\n '?date': dateStamp,\n '?creator': me\n }\n renderMessage(bindings, false) // not green\n\n field.value = '' // clear from out for reuse\n field.setAttribute('class', '')\n field.disabled = false\n }\n }\n updater.update([], sts, sendComplete)\n }\n form.appendChild(dom.createElement('br'))\n\n let field, sendButton\n const turnOnInput = function () {\n creatorAndDate(lhs, me, '', null)\n\n field = dom.createElement('textarea')\n middle.innerHTML = ''\n middle.appendChild(field)\n field.rows = 3\n // field.cols = 40\n field.setAttribute('style', messageBodyStyle + 'background-color: #eef;')\n\n field.addEventListener(\n 'keyup',\n async function (e) {\n // User preference?\n if (e.keyCode === 13) {\n if (!e.altKey) {\n // Alt-Enter just adds a new line\n await sendMessage()\n }\n }\n },\n false\n )\n\n rhs.innerHTML = ''\n sendButton = UI.widgets.button(\n dom,\n UI.icons.iconBase + 'noun_383448.svg',\n 'Send'\n )\n sendButton.setAttribute('style', UI.style.buttonStyle + 'float: right;')\n sendButton.addEventListener('click', sendMessage, false)\n rhs.appendChild(sendButton)\n }\n\n const context = { div: middle, dom }\n login.ensureLoggedIn(context).then(context => {\n me = context.me\n turnOnInput()\n })\n\n return form\n }\n\n const appendMsg = async function (fieldValue, oldMsg = {}, options = '') { // alain\n const sts = []\n const now = new Date()\n const timestamp = '' + now.getTime()\n const dateStamp = $rdf.term(now)\n // http://www.w3schools.com/jsref/jsref_obj_date.asp\n const message = store.sym(messageStore.uri + '#' + 'Msg' + timestamp)\n\n if (options === 'edit' || options === 'delete') {\n sts.push(\n new $rdf.Statement(await mostRecentVersion(oldMsg), DCT('isReplacedBy'), message, messageStore)\n )\n } else {\n sts.push(\n new $rdf.Statement(subject, ns.wf('message'), message, messageStore)\n )\n }\n // sts.push(new $rdf.Statement(message, ns.dc('title'), store.literal(titlefield.value), messageStore))\n const msgBody = options !== 'delete' ? fieldValue : `message deleted\\nby ${nick(me)}`\n sts.push(\n new $rdf.Statement(\n message,\n ns.sioc('content'),\n store.literal(msgBody),\n messageStore\n )\n )\n sts.push(\n new $rdf.Statement(message, DCT('created'), dateStamp, messageStore)\n )\n if (me) {\n sts.push(\n new $rdf.Statement(message, ns.foaf('maker'), me, messageStore)\n )\n }\n return { message, dateStamp, sts }\n }\n\n function nick (person) {\n const s = store.any(person, UI.ns.foaf('nick'))\n if (s) return '' + s.value\n return '' + utils.label(person)\n }\n\n function creatorAndDate (td1, creator, date, message) {\n const nickAnchor = td1.appendChild(anchor(nick(creator), creator))\n if (creator.uri) {\n store.fetcher.nowOrWhenFetched(creator.doc(), undefined, function (\n _ok,\n _body\n ) {\n nickAnchor.textContent = nick(creator)\n })\n }\n td1.appendChild(dom.createElement('br'))\n td1.appendChild(anchor(date, message))\n }\n\n // ///////////////////////////////////////////////////////////////////////\n\n function syncMessages (about, messageTable) {\n const displayed = {}\n let ele, ele2\n for (ele = messageTable.firstChild; ele; ele = ele.nextSibling) {\n if (ele.AJAR_subject) {\n displayed[ele.AJAR_subject.uri] = true\n }\n }\n const messages = store.each(about, ns.wf('message'))\n const stored = {}\n messages.forEach(function (m) {\n stored[m.uri] = true\n if (!displayed[m.uri]) {\n addMessage(m)\n }\n })\n\n // eslint-disable-next-line space-in-parens\n for (ele = messageTable.firstChild; ele; ) {\n ele2 = ele.nextSibling\n if (ele.AJAR_subject && !stored[ele.AJAR_subject.uri]) {\n messageTable.removeChild(ele)\n }\n ele = ele2\n }\n }\n\n const mostRecentVersion = function (message) {\n let msg = message\n // const listMsg = []\n while (msg) {\n message = msg\n // listMsg.push(msg)\n msg = store.statementsMatching(message, DCT('isReplacedBy'))\n }\n return message\n }\n\n const _deleteMessage = async function (message) { // alain: must delete message and all linked with isReplacedBy\n // alain: check that me is not the author and ask for confirmation.\n const deletions = await store.connectedStatements(message, messageStore)\n updater.update(deletions, [], function (uri, ok, body) {\n if (!ok) {\n announce.error('Cant delete messages:' + body)\n } else {\n syncMessages(subject, messageTable)\n }\n })\n }\n\n const addMessage = function (message) {\n const bindings = {\n '?msg': message,\n '?creator': store.any(message, ns.foaf('maker')),\n '?date': store.any(message, DCT('created')),\n '?content': store.any(message, ns.sioc('content'))\n }\n renderMessage(bindings, true) // fresh from elsewhere\n }\n\n const renderMessage = function (bindings, fresh) {\n const creator = bindings['?creator']\n const message = bindings['?msg']\n const date = bindings['?date']\n const content = bindings['?content']\n\n const dateString = date.value\n const tr = dom.createElement('tr')\n tr.AJAR_date = dateString\n tr.AJAR_subject = message\n\n let done = false\n for (let ele = messageTable.firstChild; ; ele = ele.nextSibling) {\n if (!ele) {\n // empty\n break\n }\n if (\n (dateString > ele.AJAR_date && newestFirst) ||\n (dateString < ele.AJAR_date && !newestFirst)\n ) {\n messageTable.insertBefore(tr, ele)\n done = true\n break\n }\n }\n if (!done) {\n messageTable.appendChild(tr)\n }\n\n const td1 = dom.createElement('td')\n tr.appendChild(td1)\n creatorAndDate(td1, creator, UI.widgets.shortDate(dateString), message)\n\n const td2 = dom.createElement('td')\n tr.appendChild(td2)\n const pre = dom.createElement('p')\n pre.setAttribute(\n 'style',\n messageBodyStyle +\n (fresh ? 'background-color: #e8ffe8;' : 'background-color: #white;')\n )\n td2.appendChild(pre)\n pre.textContent = content.value\n\n const td3 = dom.createElement('td')\n tr.appendChild(td3)\n\n const delButton = dom.createElement('button')\n td3.appendChild(delButton)\n delButton.textContent = '-'\n\n tr.setAttribute('class', 'hoverControl') // See tabbedtab.css (sigh global CSS)\n delButton.setAttribute('class', 'hoverControlHide')\n delButton.setAttribute('style', 'color: red;')\n delButton.addEventListener(\n 'click',\n function (_event) {\n td3.removeChild(delButton) // Ask -- are you sure?\n const cancelButton = dom.createElement('button')\n cancelButton.textContent = 'cancel'\n td3.appendChild(cancelButton).addEventListener(\n 'click',\n function (_event) {\n td3.removeChild(sureButton)\n td3.removeChild(cancelButton)\n td3.appendChild(delButton)\n },\n false\n )\n const sureButton = dom.createElement('button')\n sureButton.textContent = 'Delete message'\n td3.appendChild(sureButton).addEventListener(\n 'click',\n async function (_event) { // alain: test for delete or edit depending on me = maker\n td3.removeChild(sureButton)\n td3.removeChild(cancelButton)\n // deleteMessage(message) // alain or sendMessage(message, 'delete' or 'edit') //alain\n if (me.value === store.any(message, ns.foaf('maker')).value) {\n const { sts } = await appendMsg() // alain\n updater.update([], sts)\n }\n },\n false\n )\n },\n false\n )\n }\n\n // Messages with date, author etc\n\n messageTable = dom.createElement('table')\n messageTable.fresh = false\n div.appendChild(messageTable)\n messageTable.setAttribute('style', 'width: 100%;') // fill that div!\n\n const tr = newMessageForm()\n if (newestFirst) {\n messageTable.insertBefore(tr, messageTable.firstChild) // If newestFirst\n } else {\n messageTable.appendChild(tr) // not newestFirst\n }\n\n let query\n // Do this with a live query to pull in messages from web\n if (options.query) {\n query = options.query\n } else {\n query = new $rdf.Query('Messages')\n const v = {} // semicolon needed\n const vs = ['msg', 'date', 'creator', 'content']\n vs.forEach(function (x) {\n query.vars.push((v[x] = $rdf.variable(x)))\n })\n query.pat.add(subject, WF('message'), v.msg)\n query.pat.add(v.msg, ns.dct('created'), v.date)\n query.pat.add(v.msg, ns.foaf('maker'), v.creator)\n query.pat.add(v.msg, ns.sioc('content'), v.content)\n }\n\n function doneQuery () {\n messageTable.fresh = true // any new are fresh and so will be greenish\n }\n store.query(query, renderMessage, undefined, doneQuery)\n div.refresh = function () {\n syncMessages(subject, messageTable)\n }\n // syncMessages(subject, messageTable) // no the query will do this async\n return div\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"thread.js","names":["_iconBase","require","_solidLogic","_index","ns","_interopRequireWildcard","login","pad","$rdf","style","utils","widgets","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","UI","icons","media","thread","dom","kb","subject","messageStore","options","store","doc","WF","Namespace","DCT","newestFirst","messageBodyStyle","div","createElement","messageTable","me","updater","anchor","text","term","a","uri","setAttribute","addEventListener","openHrefInOutlineMode","textContent","mention","message","pre","appendChild","createTextNode","announce","log","warn","error","newMessageForm","form","lhs","middle","rhs","AJAR_date","sendMessage","_ref","_asyncToGenerator2","_regenerator","mark","_callee2","_yield$appendMsg","dateStamp","sts","sendComplete","wrap","_callee2$","_context2","prev","next","field","disabled","appendMsg","value","sent","_ref2","_callee","success","body","bindings","_callee$","_context","errorMessageBlock","literal","renderMessage","stop","_x","_x2","_x3","apply","arguments","updateMany","sendButton","turnOnInput","creatorAndDate","innerHTML","rows","_ref3","_callee3","e","_callee3$","_context3","keyCode","altKey","_x4","button","iconBase","buttonStyle","context","ensureLoggedIn","then","_ref4","fieldValue","oldMsg","length","undefined","_callee4","now","timestamp","msgBody","_callee4$","_context4","Date","getTime","sym","t0","t1","Statement","mostRecentVersion","t2","t3","t4","t5","t6","push","wf","concat","nick","sioc","foaf","abrupt","_x5","person","s","any","label","td1","creator","date","nickAnchor","fetcher","nowOrWhenFetched","_ok","_body","syncMessages","about","displayed","ele","ele2","firstChild","nextSibling","AJAR_subject","messages","each","stored","forEach","m","addMessage","removeChild","msg","statementsMatching","_deleteMessage","_ref5","_callee5","deletions","_callee5$","_context5","connectedStatements","ok","_x6","_ref6","_callee6","_callee6$","_context6","_x7","_ref7","_callee9","fresh","content","dateString","tr","done","td2","td3","delButton","_callee9$","_context9","insertBefore","shortDate","_ref8","_callee8","_event","cancelButton","sureButton","_callee8$","_context8","_ref9","_callee7","_yield$appendMsg2","_callee7$","_context7","_x11","_x10","_x8","_x9","query","Query","v","vs","x","vars","variable","pat","add","dct","doneQuery","refresh"],"sources":["../../src/chat/thread.js"],"sourcesContent":["/**\n * Contains the [[thread]] function\n * @packageDocumentation\n */\n\nimport { icons } from '../iconBase'\nimport { store } from 'solid-logic'\nimport { media } from '../media/index'\nimport * as ns from '../ns'\nimport * as login from '../login/login'\nimport * as pad from '../pad'\nimport * as $rdf from 'rdflib' // pull in first avoid cross-refs\nimport * as style from '../style'\nimport * as utils from '../utils'\nimport * as widgets from '../widgets'\n\nconst UI = { icons, ns, media, pad, style, utils, widgets }\n\n/**\n * HTML component for a chat thread\n */\nexport function thread (dom, kb, subject, messageStore, options) {\n kb = kb || store\n messageStore = messageStore.doc() // No hash\n const ns = UI.ns\n const WF = $rdf.Namespace('http://www.w3.org/2005/01/wf/flow#')\n const DCT = $rdf.Namespace('http://purl.org/dc/terms/')\n\n options = options || {}\n\n const newestFirst = !!options.newestFirst\n\n const messageBodyStyle =\n 'white-space: pre-wrap; width: 90%; font-size:100%; border: 0.07em solid #eee; padding: .2em 0.5em; margin: 0.1em 1em 0.1em 1em;'\n // 'font-size: 100%; margin: 0.1em 1em 0.1em 1em; background-color: white; white-space: pre-wrap; padding: 0.1em;'\n\n const div = dom.createElement('div')\n // eslint-disable-next-line prefer-const\n let messageTable\n\n let me\n\n const updater = store.updater\n\n const anchor = function (text, term) {\n // If there is no link return an element anyway\n const a = dom.createElement('a')\n if (term && term.uri) {\n a.setAttribute('href', term.uri)\n a.addEventListener('click', UI.widgets.openHrefInOutlineMode, true)\n a.setAttribute('style', 'color: #3B5998; text-decoration: none; ') // font-weight: bold\n }\n a.textContent = text\n return a\n }\n\n const mention = function mention (message, style) {\n const pre = dom.createElement('pre')\n pre.setAttribute('style', style || 'color: grey')\n div.appendChild(pre)\n pre.appendChild(dom.createTextNode(message))\n return pre\n }\n\n const announce = {\n log: function (message) {\n mention(message, 'color: #111;')\n },\n warn: function (message) {\n mention(message, 'color: #880;')\n },\n error: function (message) {\n mention(message, 'color: #800;')\n }\n }\n\n /**\n * Form for a new message\n */\n const newMessageForm = function () {\n const form = dom.createElement('tr')\n const lhs = dom.createElement('td')\n const middle = dom.createElement('td')\n const rhs = dom.createElement('td')\n form.appendChild(lhs)\n form.appendChild(middle)\n form.appendChild(rhs)\n form.AJAR_date = '9999-01-01T00:00:00Z' // ISO format for field sort\n\n const sendMessage = async function () {\n // titlefield.setAttribute('class','pendingedit')\n // titlefield.disabled = true\n field.setAttribute('class', 'pendingedit')\n field.disabled = true\n const { message, dateStamp, sts } = await appendMsg(field.value)\n\n const sendComplete = async function (uri, success, body) {\n if (!success) {\n form.appendChild(\n UI.widgets.errorMessageBlock(dom, 'Error writing message: ' + body)\n )\n } else {\n const bindings = {\n '?msg': message,\n '?content': store.literal(field.value),\n '?date': dateStamp,\n '?creator': me\n }\n renderMessage(bindings, false) // not green\n\n field.value = '' // clear from out for reuse\n field.setAttribute('class', '')\n field.disabled = false\n }\n }\n await updater.updateMany([], sts, sendComplete)\n }\n form.appendChild(dom.createElement('br'))\n\n let field, sendButton\n const turnOnInput = function () {\n creatorAndDate(lhs, me, '', null)\n\n field = dom.createElement('textarea')\n middle.innerHTML = ''\n middle.appendChild(field)\n field.rows = 3\n // field.cols = 40\n field.setAttribute('style', messageBodyStyle + 'background-color: #eef;')\n\n field.addEventListener(\n 'keyup',\n async function (e) {\n // User preference?\n if (e.keyCode === 13) {\n if (!e.altKey) {\n // Alt-Enter just adds a new line\n await sendMessage()\n }\n }\n },\n false\n )\n\n rhs.innerHTML = ''\n sendButton = UI.widgets.button(\n dom,\n UI.icons.iconBase + 'noun_383448.svg',\n 'Send'\n )\n sendButton.setAttribute('style', UI.style.buttonStyle + 'float: right;')\n sendButton.addEventListener('click', sendMessage, false)\n rhs.appendChild(sendButton)\n }\n\n const context = { div: middle, dom }\n login.ensureLoggedIn(context).then(context => {\n me = context.me\n turnOnInput()\n })\n\n return form\n }\n\n const appendMsg = async function (fieldValue, oldMsg = {}, options = '') { // alain\n const sts = []\n const now = new Date()\n const timestamp = '' + now.getTime()\n const dateStamp = $rdf.term(now)\n // http://www.w3schools.com/jsref/jsref_obj_date.asp\n const message = store.sym(messageStore.uri + '#' + 'Msg' + timestamp)\n\n if (options === 'edit' || options === 'delete') {\n sts.push(\n new $rdf.Statement(await mostRecentVersion(oldMsg), DCT('isReplacedBy'), message, messageStore)\n )\n } else {\n sts.push(\n new $rdf.Statement(subject, ns.wf('message'), message, messageStore)\n )\n }\n // sts.push(new $rdf.Statement(message, ns.dc('title'), store.literal(titlefield.value), messageStore))\n const msgBody = options !== 'delete' ? fieldValue : `message deleted\\nby ${nick(me)}`\n sts.push(\n new $rdf.Statement(\n message,\n ns.sioc('content'),\n store.literal(msgBody),\n messageStore\n )\n )\n sts.push(\n new $rdf.Statement(message, DCT('created'), dateStamp, messageStore)\n )\n if (me) {\n sts.push(\n new $rdf.Statement(message, ns.foaf('maker'), me, messageStore)\n )\n }\n return { message, dateStamp, sts }\n }\n\n function nick (person) {\n const s = store.any(person, UI.ns.foaf('nick'))\n if (s) return '' + s.value\n return '' + utils.label(person)\n }\n\n function creatorAndDate (td1, creator, date, message) {\n const nickAnchor = td1.appendChild(anchor(nick(creator), creator))\n if (creator.uri) {\n store.fetcher.nowOrWhenFetched(creator.doc(), undefined, function (\n _ok,\n _body\n ) {\n nickAnchor.textContent = nick(creator)\n })\n }\n td1.appendChild(dom.createElement('br'))\n td1.appendChild(anchor(date, message))\n }\n\n // ///////////////////////////////////////////////////////////////////////\n\n function syncMessages (about, messageTable) {\n const displayed = {}\n let ele, ele2\n for (ele = messageTable.firstChild; ele; ele = ele.nextSibling) {\n if (ele.AJAR_subject) {\n displayed[ele.AJAR_subject.uri] = true\n }\n }\n const messages = store.each(about, ns.wf('message'))\n const stored = {}\n messages.forEach(function (m) {\n stored[m.uri] = true\n if (!displayed[m.uri]) {\n addMessage(m)\n }\n })\n\n // eslint-disable-next-line space-in-parens\n for (ele = messageTable.firstChild; ele; ) {\n ele2 = ele.nextSibling\n if (ele.AJAR_subject && !stored[ele.AJAR_subject.uri]) {\n messageTable.removeChild(ele)\n }\n ele = ele2\n }\n }\n\n const mostRecentVersion = function (message) {\n let msg = message\n // const listMsg = []\n while (msg) {\n message = msg\n // listMsg.push(msg)\n msg = store.statementsMatching(message, DCT('isReplacedBy'))\n }\n return message\n }\n\n const _deleteMessage = async function (message) { // alain: must delete message and all linked with isReplacedBy\n // alain: check that me is not the author and ask for confirmation.\n const deletions = await store.connectedStatements(message, messageStore)\n await updater.updateMany(deletions, [], function (uri, ok, body) {\n if (!ok) {\n announce.error('Cant delete messages:' + body)\n } else {\n syncMessages(subject, messageTable)\n }\n })\n }\n\n const addMessage = async function (message) {\n const bindings = {\n '?msg': message,\n '?creator': store.any(message, ns.foaf('maker')),\n '?date': store.any(message, DCT('created')),\n '?content': store.any(message, ns.sioc('content'))\n }\n await renderMessage(bindings, true) // fresh from elsewhere\n }\n\n const renderMessage = async function (bindings, fresh) {\n const creator = bindings['?creator']\n const message = bindings['?msg']\n const date = bindings['?date']\n const content = bindings['?content']\n\n const dateString = date.value\n const tr = dom.createElement('tr')\n tr.AJAR_date = dateString\n tr.AJAR_subject = message\n\n let done = false\n for (let ele = messageTable.firstChild; ; ele = ele.nextSibling) {\n if (!ele) {\n // empty\n break\n }\n if (\n (dateString > ele.AJAR_date && newestFirst) ||\n (dateString < ele.AJAR_date && !newestFirst)\n ) {\n messageTable.insertBefore(tr, ele)\n done = true\n break\n }\n }\n if (!done) {\n messageTable.appendChild(tr)\n }\n\n const td1 = dom.createElement('td')\n tr.appendChild(td1)\n creatorAndDate(td1, creator, UI.widgets.shortDate(dateString), message)\n\n const td2 = dom.createElement('td')\n tr.appendChild(td2)\n const pre = dom.createElement('p')\n pre.setAttribute(\n 'style',\n messageBodyStyle +\n (fresh ? 'background-color: #e8ffe8;' : 'background-color: #white;')\n )\n td2.appendChild(pre)\n pre.textContent = content.value\n\n const td3 = dom.createElement('td')\n tr.appendChild(td3)\n\n const delButton = dom.createElement('button')\n td3.appendChild(delButton)\n delButton.textContent = '-'\n\n tr.setAttribute('class', 'hoverControl') // See tabbedtab.css (sigh global CSS)\n delButton.setAttribute('class', 'hoverControlHide')\n delButton.setAttribute('style', 'color: red;')\n delButton.addEventListener(\n 'click',\n async function (_event) {\n td3.removeChild(delButton) // Ask -- are you sure?\n const cancelButton = dom.createElement('button')\n cancelButton.textContent = 'cancel'\n td3.appendChild(cancelButton).addEventListener(\n 'click',\n function (_event) {\n td3.removeChild(sureButton)\n td3.removeChild(cancelButton)\n td3.appendChild(delButton)\n },\n false\n )\n const sureButton = dom.createElement('button')\n sureButton.textContent = 'Delete message'\n td3.appendChild(sureButton).addEventListener(\n 'click',\n async function (_event) { // alain: test for delete or edit depending on me = maker\n td3.removeChild(sureButton)\n td3.removeChild(cancelButton)\n // deleteMessage(message) // alain or sendMessage(message, 'delete' or 'edit') //alain\n if (me.value === store.any(message, ns.foaf('maker')).value) {\n const { sts } = await appendMsg() // alain\n await updater.updateMany([], sts) // alain\n }\n },\n false\n )\n },\n false\n )\n }\n\n // Messages with date, author etc\n\n messageTable = dom.createElement('table')\n messageTable.fresh = false\n div.appendChild(messageTable)\n messageTable.setAttribute('style', 'width: 100%;') // fill that div!\n\n const tr = newMessageForm()\n if (newestFirst) {\n messageTable.insertBefore(tr, messageTable.firstChild) // If newestFirst\n } else {\n messageTable.appendChild(tr) // not newestFirst\n }\n\n let query\n // Do this with a live query to pull in messages from web\n if (options.query) {\n query = options.query\n } else {\n query = new $rdf.Query('Messages')\n const v = {} // semicolon needed\n const vs = ['msg', 'date', 'creator', 'content']\n vs.forEach(function (x) {\n query.vars.push((v[x] = $rdf.variable(x)))\n })\n query.pat.add(subject, WF('message'), v.msg)\n query.pat.add(v.msg, ns.dct('created'), v.date)\n query.pat.add(v.msg, ns.foaf('maker'), v.creator)\n query.pat.add(v.msg, ns.sioc('content'), v.content)\n }\n\n function doneQuery () {\n messageTable.fresh = true // any new are fresh and so will be greenish\n }\n store.query(query, renderMessage, undefined, doneQuery)\n div.refresh = function () {\n syncMessages(subject, messageTable)\n }\n // syncMessages(subject, messageTable) // no the query will do this async\n return div\n}\n"],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { NamedNode } from 'rdflib';
|
|
2
|
-
export declare const pubKeyUrl: (webId: NamedNode) =>
|
|
2
|
+
export declare const pubKeyUrl: (webId: NamedNode) => any;
|
|
3
|
+
export declare const privKeyUrl: (webId: NamedNode) => any;
|
|
3
4
|
export declare function getExistingPublicKey(webId: NamedNode, publicKeyUrl: string): Promise<string | undefined>;
|
|
4
|
-
export declare const privKeyUrl: (webId: NamedNode) => Promise<string>;
|
|
5
5
|
export declare function getExistingPrivateKey(webId: NamedNode, privateKeyUrl: string): Promise<string | undefined>;
|
|
6
6
|
type KeyType = 'publicKey' | 'privateKey';
|
|
7
7
|
export declare function getKeyIfExists(webId: NamedNode, keyUrl: string, keyType: KeyType): Promise<string | undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accessData.d.ts","sourceRoot":"","sources":["../../../src/utils/keyHelpers/accessData.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;
|
|
1
|
+
{"version":3,"file":"accessData.d.ts","sourceRoot":"","sources":["../../../src/utils/keyHelpers/accessData.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAGlC,eAAO,MAAM,SAAS,UAAW,SAAS,QASzC,CAAA;AAED,eAAO,MAAM,UAAU,UAAW,SAAS,QAS1C,CAAA;AAED,wBAAsB,oBAAoB,CAAE,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,+BAEjF;AAED,wBAAsB,qBAAqB,CAAE,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,+BAEnF;AAED,KAAK,OAAO,GAAG,WAAW,GAAG,YAAY,CAAA;AAEzC,wBAAsB,cAAc,CAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,+BASvF"}
|
|
@@ -14,176 +14,96 @@ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/
|
|
|
14
14
|
var debug = _interopRequireWildcard(require("../../debug"));
|
|
15
15
|
var _solidLogic = require("solid-logic");
|
|
16
16
|
var ns = _interopRequireWildcard(require("../../ns"));
|
|
17
|
+
var _otherHelpers = require("./otherHelpers");
|
|
17
18
|
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); }
|
|
18
19
|
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; }
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
// find storage recursively in webId URL
|
|
27
|
-
let path = webIdURL.pathname
|
|
28
|
-
while (path.length) {
|
|
29
|
-
path = path.substring(0, path.lastIndexOf('/'))
|
|
30
|
-
podRoot = store.sym(webIdURL.origin + path + '/')
|
|
31
|
-
const res = await store.fetcher.webOperation('HEAD', podRoot.uri)
|
|
32
|
-
if (res.headers.get('link')?.includes(ns.space('Storage').value)) break
|
|
33
|
-
if (!path) debug.warn(`Current user storage not found for\n${webId}`)
|
|
34
|
-
}
|
|
35
|
-
} else {
|
|
36
|
-
// give preference to storage in webId root
|
|
37
|
-
podRoot = storages.find((storage) => webIdURL.origin === new URL(storage.value).origin) as NamedNode
|
|
38
|
-
if (!podRoot) podRoot = storages[0] as NamedNode
|
|
20
|
+
var pubKeyUrl = function pubKeyUrl(webId) {
|
|
21
|
+
var url;
|
|
22
|
+
try {
|
|
23
|
+
var root = (0, _otherHelpers.getRootIfPreferencesExist)(webId);
|
|
24
|
+
url = "".concat(root, "/profile/keys/publicKey.ttl");
|
|
25
|
+
} catch (err) {
|
|
26
|
+
debug.error(err);
|
|
39
27
|
}
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
} */
|
|
43
|
-
|
|
44
|
-
var pubKeyUrl = /*#__PURE__*/function () {
|
|
45
|
-
var _ref = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(webId) {
|
|
46
|
-
var _store$any, _parentSettings;
|
|
47
|
-
var parentSettings;
|
|
48
|
-
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
49
|
-
while (1) switch (_context.prev = _context.next) {
|
|
50
|
-
case 0:
|
|
51
|
-
parentSettings = (_store$any = _solidLogic.store.any(webId, ns.space('preferencesFile'), null, webId.doc())) === null || _store$any === void 0 ? void 0 : _store$any.value;
|
|
52
|
-
parentSettings = (_parentSettings = parentSettings) === null || _parentSettings === void 0 ? void 0 : _parentSettings.split('/').slice(0, -2).join('/');
|
|
53
|
-
if (parentSettings) {
|
|
54
|
-
_context.next = 4;
|
|
55
|
-
break;
|
|
56
|
-
}
|
|
57
|
-
throw new Error("prefererencesFile is expected to exist in ".concat(webId.doc));
|
|
58
|
-
case 4:
|
|
59
|
-
return _context.abrupt("return", "".concat(parentSettings, "/profile/keys/publicKey.ttl"));
|
|
60
|
-
case 5:
|
|
61
|
-
case "end":
|
|
62
|
-
return _context.stop();
|
|
63
|
-
}
|
|
64
|
-
}, _callee);
|
|
65
|
-
}));
|
|
66
|
-
return function pubKeyUrl(_x) {
|
|
67
|
-
return _ref.apply(this, arguments);
|
|
68
|
-
};
|
|
69
|
-
}();
|
|
28
|
+
return url;
|
|
29
|
+
};
|
|
70
30
|
exports.pubKeyUrl = pubKeyUrl;
|
|
71
|
-
function
|
|
31
|
+
var privKeyUrl = function privKeyUrl(webId) {
|
|
32
|
+
var url;
|
|
33
|
+
try {
|
|
34
|
+
var root = (0, _otherHelpers.getRootIfPreferencesExist)(webId);
|
|
35
|
+
url = "".concat(root, "/keys/privateKey.ttl");
|
|
36
|
+
} catch (err) {
|
|
37
|
+
debug.error(err);
|
|
38
|
+
}
|
|
39
|
+
return url;
|
|
40
|
+
};
|
|
41
|
+
exports.privKeyUrl = privKeyUrl;
|
|
42
|
+
function getExistingPublicKey(_x, _x2) {
|
|
72
43
|
return _getExistingPublicKey.apply(this, arguments);
|
|
73
44
|
}
|
|
74
45
|
function _getExistingPublicKey() {
|
|
75
|
-
_getExistingPublicKey = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
|
76
|
-
return _regenerator["default"].wrap(function
|
|
77
|
-
while (1) switch (
|
|
46
|
+
_getExistingPublicKey = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(webId, publicKeyUrl) {
|
|
47
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
48
|
+
while (1) switch (_context.prev = _context.next) {
|
|
78
49
|
case 0:
|
|
79
|
-
|
|
50
|
+
_context.next = 2;
|
|
80
51
|
return getKeyIfExists(webId, publicKeyUrl, 'publicKey');
|
|
81
52
|
case 2:
|
|
82
|
-
return
|
|
53
|
+
return _context.abrupt("return", _context.sent);
|
|
83
54
|
case 3:
|
|
84
55
|
case "end":
|
|
85
|
-
return
|
|
56
|
+
return _context.stop();
|
|
86
57
|
}
|
|
87
|
-
},
|
|
58
|
+
}, _callee);
|
|
88
59
|
}));
|
|
89
60
|
return _getExistingPublicKey.apply(this, arguments);
|
|
90
61
|
}
|
|
91
|
-
|
|
92
|
-
var _ref2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(webId) {
|
|
93
|
-
var _store$any2, _settings;
|
|
94
|
-
var settings;
|
|
95
|
-
return _regenerator["default"].wrap(function _callee2$(_context2) {
|
|
96
|
-
while (1) switch (_context2.prev = _context2.next) {
|
|
97
|
-
case 0:
|
|
98
|
-
settings = (_store$any2 = _solidLogic.store.any(webId, ns.space('preferencesFile'), null, webId.doc())) === null || _store$any2 === void 0 ? void 0 : _store$any2.value;
|
|
99
|
-
settings = (_settings = settings) === null || _settings === void 0 ? void 0 : _settings.split('/').slice(0, -1).join('/');
|
|
100
|
-
if (settings) {
|
|
101
|
-
_context2.next = 4;
|
|
102
|
-
break;
|
|
103
|
-
}
|
|
104
|
-
throw new Error("prefererencesFile is expected to exist in ".concat(webId.doc));
|
|
105
|
-
case 4:
|
|
106
|
-
return _context2.abrupt("return", "".concat(settings, "/keys/privateKey.ttl"));
|
|
107
|
-
case 5:
|
|
108
|
-
case "end":
|
|
109
|
-
return _context2.stop();
|
|
110
|
-
}
|
|
111
|
-
}, _callee2);
|
|
112
|
-
}));
|
|
113
|
-
return function privKeyUrl(_x4) {
|
|
114
|
-
return _ref2.apply(this, arguments);
|
|
115
|
-
};
|
|
116
|
-
}();
|
|
117
|
-
exports.privKeyUrl = privKeyUrl;
|
|
118
|
-
function getExistingPrivateKey(_x5, _x6) {
|
|
62
|
+
function getExistingPrivateKey(_x3, _x4) {
|
|
119
63
|
return _getExistingPrivateKey.apply(this, arguments);
|
|
120
64
|
}
|
|
121
65
|
function _getExistingPrivateKey() {
|
|
122
|
-
_getExistingPrivateKey = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
|
123
|
-
return _regenerator["default"].wrap(function
|
|
124
|
-
while (1) switch (
|
|
66
|
+
_getExistingPrivateKey = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(webId, privateKeyUrl) {
|
|
67
|
+
return _regenerator["default"].wrap(function _callee2$(_context2) {
|
|
68
|
+
while (1) switch (_context2.prev = _context2.next) {
|
|
125
69
|
case 0:
|
|
126
|
-
|
|
70
|
+
_context2.next = 2;
|
|
127
71
|
return getKeyIfExists(webId, privateKeyUrl, 'privateKey');
|
|
128
72
|
case 2:
|
|
129
|
-
return
|
|
73
|
+
return _context2.abrupt("return", _context2.sent);
|
|
130
74
|
case 3:
|
|
131
75
|
case "end":
|
|
132
|
-
return
|
|
76
|
+
return _context2.stop();
|
|
133
77
|
}
|
|
134
|
-
},
|
|
78
|
+
}, _callee2);
|
|
135
79
|
}));
|
|
136
80
|
return _getExistingPrivateKey.apply(this, arguments);
|
|
137
81
|
}
|
|
138
|
-
function getKeyIfExists(
|
|
82
|
+
function getKeyIfExists(_x5, _x6, _x7) {
|
|
139
83
|
return _getKeyIfExists.apply(this, arguments);
|
|
140
84
|
}
|
|
141
85
|
function _getKeyIfExists() {
|
|
142
|
-
_getKeyIfExists = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function
|
|
86
|
+
_getKeyIfExists = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3(webId, keyUrl, keyType) {
|
|
143
87
|
var key;
|
|
144
|
-
return _regenerator["default"].wrap(function
|
|
145
|
-
while (1) switch (
|
|
88
|
+
return _regenerator["default"].wrap(function _callee3$(_context3) {
|
|
89
|
+
while (1) switch (_context3.prev = _context3.next) {
|
|
146
90
|
case 0:
|
|
147
|
-
|
|
148
|
-
|
|
91
|
+
_context3.prev = 0;
|
|
92
|
+
_context3.next = 3;
|
|
149
93
|
return _solidLogic.store.fetcher.load(keyUrl);
|
|
150
94
|
case 3:
|
|
151
95
|
key = _solidLogic.store.any(webId, ns.solid(keyType)); // store.sym(CERT + keyType))
|
|
152
|
-
return
|
|
96
|
+
return _context3.abrupt("return", key === null || key === void 0 ? void 0 : key.value);
|
|
153
97
|
case 7:
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
}
|
|
160
|
-
debug.log('createIfNotExists: doc does NOT exist, will create... ' + keyUrl);
|
|
161
|
-
_context5.prev = 11;
|
|
162
|
-
_context5.next = 14;
|
|
163
|
-
return _solidLogic.store.fetcher.webOperation('PUT', keyUrl, {
|
|
164
|
-
data: '',
|
|
165
|
-
contentType: 'text/turtle'
|
|
166
|
-
});
|
|
167
|
-
case 14:
|
|
168
|
-
_context5.next = 20;
|
|
169
|
-
break;
|
|
170
|
-
case 16:
|
|
171
|
-
_context5.prev = 16;
|
|
172
|
-
_context5.t1 = _context5["catch"](11);
|
|
173
|
-
debug.log('createIfNotExists doc FAILED: ' + keyUrl + ': ' + _context5.t1);
|
|
174
|
-
throw _context5.t1;
|
|
175
|
-
case 20:
|
|
176
|
-
delete _solidLogic.store.fetcher.requested[keyUrl]; // delete cached 404 error
|
|
177
|
-
// debug.log('createIfNotExists doc created ok ' + doc)
|
|
178
|
-
return _context5.abrupt("return", undefined);
|
|
179
|
-
case 24:
|
|
180
|
-
debug.log('createIfNotExists doc FAILED: ' + keyUrl + ': ' + _context5.t0);
|
|
181
|
-
throw _context5.t0;
|
|
182
|
-
case 26:
|
|
98
|
+
_context3.prev = 7;
|
|
99
|
+
_context3.t0 = _context3["catch"](0);
|
|
100
|
+
debug.error('createIfNotExists doc FAILED: ' + keyUrl + ': ' + _context3.t0);
|
|
101
|
+
return _context3.abrupt("return", undefined);
|
|
102
|
+
case 11:
|
|
183
103
|
case "end":
|
|
184
|
-
return
|
|
104
|
+
return _context3.stop();
|
|
185
105
|
}
|
|
186
|
-
},
|
|
106
|
+
}, _callee3, null, [[0, 7]]);
|
|
187
107
|
}));
|
|
188
108
|
return _getKeyIfExists.apply(this, arguments);
|
|
189
109
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accessData.js","names":["debug","_interopRequireWildcard","require","_solidLogic","ns","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","pubKeyUrl","_ref","_asyncToGenerator2","_regenerator","mark","_callee","webId","_store$any","_parentSettings","parentSettings","wrap","_callee$","_context","prev","next","store","any","space","doc","value","split","slice","join","Error","concat","abrupt","stop","_x","apply","arguments","exports","getExistingPublicKey","_x2","_x3","_getExistingPublicKey","_callee3","publicKeyUrl","_callee3$","_context3","getKeyIfExists","sent","privKeyUrl","_ref2","_callee2","_store$any2","_settings","settings","_callee2$","_context2","_x4","getExistingPrivateKey","_x5","_x6","_getExistingPrivateKey","_callee4","privateKeyUrl","_callee4$","_context4","_x7","_x8","_x9","_getKeyIfExists","_callee5","keyUrl","keyType","_callee5$","_context5","fetcher","load","solid","t0","response","status","log","webOperation","data","contentType","t1","requested","undefined"],"sources":["../../../src/utils/keyHelpers/accessData.ts"],"sourcesContent":["import * as debug from '../../debug'\nimport { store } from 'solid-logic'\nimport * as ns from '../../ns'\nimport { NamedNode } from 'rdflib'\n\n/* export const getPodRoot = async (webId: NamedNode) => {\n const webIdURL = new URL(webId.uri)\n // find storages in webId document\n await store.fetcher.load(webId.uri)\n const storages = store.each(webId, ns.space('storage'), null, webId.doc())\n var podRoot: NamedNode | undefined\n if (!storages?.length) {\n // find storage recursively in webId URL\n let path = webIdURL.pathname\n while (path.length) {\n path = path.substring(0, path.lastIndexOf('/'))\n podRoot = store.sym(webIdURL.origin + path + '/')\n const res = await store.fetcher.webOperation('HEAD', podRoot.uri)\n if (res.headers.get('link')?.includes(ns.space('Storage').value)) break\n if (!path) debug.warn(`Current user storage not found for\\n${webId}`)\n }\n } else {\n // give preference to storage in webId root\n podRoot = storages.find((storage) => webIdURL.origin === new URL(storage.value).origin) as NamedNode\n if (!podRoot) podRoot = storages[0] as NamedNode\n }\n\n return podRoot as NamedNode\n} */\n\nexport const pubKeyUrl = async (webId: NamedNode) => {\n let parentSettings = store.any(webId, ns.space('preferencesFile'), null, webId.doc())?.value\n parentSettings = parentSettings?.split('/').slice(0, -2).join('/')\n if (!parentSettings) throw new Error(`prefererencesFile is expected to exist in ${webId.doc}`)\n return `${parentSettings}/profile/keys/publicKey.ttl`\n /* try {\n return (await getPodRoot(webId)).value + 'profile/keys/publicKey.ttl'\n } catch (err) { throw new Error(err) } */\n}\n\nexport async function getExistingPublicKey (webId: NamedNode, publicKeyUrl: string) {\n // find publickey\n return await getKeyIfExists(webId, publicKeyUrl, 'publicKey')\n}\n\nexport const privKeyUrl = async (webId: NamedNode) => {\n let settings = store.any(webId, ns.space('preferencesFile'), null, webId.doc())?.value\n settings = settings?.split('/').slice(0, -1).join('/')\n if (!settings) throw new Error(`prefererencesFile is expected to exist in ${webId.doc}`)\n return `${settings}/keys/privateKey.ttl`\n /* try {\n const podRoot = await getPodRoot(webId)\n if (!settings?.startsWith(podRoot.value)) throw new Error(`/settings/ is expected to be in ${podRoot.value}`)\n return `${settings}/keys/privateKey.ttl`\n } catch (err) { throw new Error(err) } */\n}\n\nexport async function getExistingPrivateKey (webId: NamedNode, privateKeyUrl: string) {\n // find privateKey\n return await getKeyIfExists(webId, privateKeyUrl, 'privateKey')\n}\n\ntype KeyType = 'publicKey' | 'privateKey'\n\nexport async function getKeyIfExists (webId: NamedNode, keyUrl: string, keyType: KeyType) {\n try {\n await store.fetcher.load(keyUrl)\n const key = store.any(webId, ns.solid(keyType)) // store.sym(CERT + keyType))\n return key?.value // as NamedNode\n } catch (err) {\n if (err.response.status === 404) {\n debug.log(\n 'createIfNotExists: doc does NOT exist, will create... ' + keyUrl\n )\n try {\n await store.fetcher.webOperation('PUT', keyUrl, {\n data: '',\n contentType: 'text/turtle'\n })\n } catch (err) {\n debug.log('createIfNotExists doc FAILED: ' + keyUrl + ': ' + err)\n throw err\n }\n delete store.fetcher.requested[keyUrl] // delete cached 404 error\n // debug.log('createIfNotExists doc created ok ' + doc)\n return undefined // response\n } else {\n debug.log('createIfNotExists doc FAILED: ' + keyUrl + ': ' + err)\n throw err\n }\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"accessData.js","names":["debug","_interopRequireWildcard","require","_solidLogic","ns","_otherHelpers","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","pubKeyUrl","webId","url","root","getRootIfPreferencesExist","concat","err","error","exports","privKeyUrl","getExistingPublicKey","_x","_x2","_getExistingPublicKey","apply","arguments","_asyncToGenerator2","_regenerator","mark","_callee","publicKeyUrl","wrap","_callee$","_context","prev","next","getKeyIfExists","abrupt","sent","stop","getExistingPrivateKey","_x3","_x4","_getExistingPrivateKey","_callee2","privateKeyUrl","_callee2$","_context2","_x5","_x6","_x7","_getKeyIfExists","_callee3","keyUrl","keyType","_callee3$","_context3","store","fetcher","load","any","solid","value","t0","undefined"],"sources":["../../../src/utils/keyHelpers/accessData.ts"],"sourcesContent":["import * as debug from '../../debug'\nimport { store } from 'solid-logic'\nimport * as ns from '../../ns'\nimport { NamedNode } from 'rdflib'\nimport { getRootIfPreferencesExist } from './otherHelpers'\n\nexport const pubKeyUrl = (webId: NamedNode) => {\n let url\n try {\n const root = getRootIfPreferencesExist(webId)\n url = `${root}/profile/keys/publicKey.ttl`\n } catch (err) {\n debug.error(err)\n }\n return url\n}\n\nexport const privKeyUrl = (webId: NamedNode) => {\n let url\n try {\n const root = getRootIfPreferencesExist(webId)\n url = `${root}/keys/privateKey.ttl`\n } catch (err) {\n debug.error(err)\n }\n return url\n}\n\nexport async function getExistingPublicKey (webId: NamedNode, publicKeyUrl: string) {\n return await getKeyIfExists(webId, publicKeyUrl, 'publicKey')\n}\n\nexport async function getExistingPrivateKey (webId: NamedNode, privateKeyUrl: string) {\n return await getKeyIfExists(webId, privateKeyUrl, 'privateKey')\n}\n\ntype KeyType = 'publicKey' | 'privateKey'\n\nexport async function getKeyIfExists (webId: NamedNode, keyUrl: string, keyType: KeyType) {\n try {\n await store.fetcher.load(keyUrl)\n const key = store.any(webId, ns.solid(keyType)) // store.sym(CERT + keyType))\n return key?.value // as NamedNode\n } catch (err) {\n debug.error('createIfNotExists doc FAILED: ' + keyUrl + ': ' + err)\n return undefined\n }\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"otherHelpers.d.ts","sourceRoot":"","sources":["../../../src/utils/keyHelpers/otherHelpers.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAIlC,eAAO,MAAM,yBAAyB,UAAW,SAAS,WAKzD,CAAA"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.getRootIfPreferencesExist = void 0;
|
|
8
|
+
var _solidLogic = require("solid-logic");
|
|
9
|
+
var ns = _interopRequireWildcard(require("../../ns"));
|
|
10
|
+
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
|
+
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
|
+
// Will rename this file later. We will probably be using solid-logic anyway
|
|
13
|
+
// moved it out so I can mock
|
|
14
|
+
|
|
15
|
+
var getRootIfPreferencesExist = function getRootIfPreferencesExist(webId) {
|
|
16
|
+
var _store$any, _root;
|
|
17
|
+
var root = (_store$any = _solidLogic.store.any(webId, ns.space('preferencesFile'), null, webId.doc())) === null || _store$any === void 0 ? void 0 : _store$any.value;
|
|
18
|
+
root = (_root = root) === null || _root === void 0 ? void 0 : _root.split('/').slice(0, -2).join('/');
|
|
19
|
+
if (!root) throw new Error("prefererencesFile is expected to exist in ".concat(webId));
|
|
20
|
+
return root;
|
|
21
|
+
};
|
|
22
|
+
exports.getRootIfPreferencesExist = getRootIfPreferencesExist;
|
|
23
|
+
//# sourceMappingURL=otherHelpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"otherHelpers.js","names":["_solidLogic","require","ns","_interopRequireWildcard","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","getRootIfPreferencesExist","webId","_store$any","_root","root","store","any","space","doc","value","split","slice","join","Error","concat","exports"],"sources":["../../../src/utils/keyHelpers/otherHelpers.ts"],"sourcesContent":["import { store } from 'solid-logic'\nimport * as ns from '../../ns'\nimport { NamedNode } from 'rdflib'\n// Will rename this file later. We will probably be using solid-logic anyway\n// moved it out so I can mock\n\nexport const getRootIfPreferencesExist = (webId: NamedNode) => {\n let root = store.any(webId, ns.space('preferencesFile'), null, webId.doc())?.value\n root = root?.split('/').slice(0, -2).join('/')\n if (!root) throw new Error(`prefererencesFile is expected to exist in ${webId}`)\n return root\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,EAAA,GAAAC,uBAAA,CAAAF,OAAA;AAA8B,SAAAG,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,SAAAF,wBAAAM,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;AAE9B;AACA;;AAEO,IAAMW,yBAAyB,GAAG,SAA5BA,yBAAyBA,CAAIC,KAAgB,EAAK;EAAA,IAAAC,UAAA,EAAAC,KAAA;EAC7D,IAAIC,IAAI,IAAAF,UAAA,GAAGG,iBAAK,CAACC,GAAG,CAACL,KAAK,EAAEzB,EAAE,CAAC+B,KAAK,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAEN,KAAK,CAACO,GAAG,EAAE,CAAC,cAAAN,UAAA,uBAAhEA,UAAA,CAAkEO,KAAK;EAClFL,IAAI,IAAAD,KAAA,GAAGC,IAAI,cAAAD,KAAA,uBAAJA,KAAA,CAAMO,KAAK,CAAC,GAAG,CAAC,CAACC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAACC,IAAI,CAAC,GAAG,CAAC;EAC9C,IAAI,CAACR,IAAI,EAAE,MAAM,IAAIS,KAAK,8CAAAC,MAAA,CAA8Cb,KAAK,EAAG;EAChF,OAAOG,IAAI;AACb,CAAC;AAAAW,OAAA,CAAAf,yBAAA,GAAAA,yBAAA"}
|
package/lib/versionInfo.js
CHANGED
|
@@ -5,8 +5,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.versionInfo = void 0;
|
|
7
7
|
var versionInfo = {
|
|
8
|
-
buildTime: '2023-
|
|
9
|
-
commit: '
|
|
8
|
+
buildTime: '2023-06-03T23:48:25Z',
|
|
9
|
+
commit: '6a319caf69ef4ecc171a5adcb375dea108d002c2',
|
|
10
10
|
npmInfo: {
|
|
11
11
|
'solid-ui': '2.4.28',
|
|
12
12
|
npm: '8.19.4',
|
package/lib/versionInfo.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"versionInfo.js","names":["versionInfo","buildTime","commit","npmInfo","npm","node","v8","uv","zlib","brotli","ares","modules","nghttp2","napi","llhttp","openssl","cldr","icu","tz","unicode","ngtcp2","nghttp3","exports"],"sources":["../src/versionInfo.ts"],"sourcesContent":["export const versionInfo = {\n buildTime: '2023-
|
|
1
|
+
{"version":3,"file":"versionInfo.js","names":["versionInfo","buildTime","commit","npmInfo","npm","node","v8","uv","zlib","brotli","ares","modules","nghttp2","napi","llhttp","openssl","cldr","icu","tz","unicode","ngtcp2","nghttp3","exports"],"sources":["../src/versionInfo.ts"],"sourcesContent":["export const versionInfo = {\n buildTime: '2023-06-03T23:48:25Z',\n commit: '6a319caf69ef4ecc171a5adcb375dea108d002c2',\n npmInfo:\n{\n 'solid-ui': '2.4.28',\n npm: '8.19.4',\n node: '16.20.0',\n v8: '9.4.146.26-node.26',\n uv: '1.43.0',\n zlib: '1.2.11',\n brotli: '1.0.9',\n ares: '1.19.0',\n modules: '93',\n nghttp2: '1.47.0',\n napi: '8',\n llhttp: '6.0.10',\n openssl: '1.1.1t+quic',\n cldr: '41.0',\n icu: '71.1',\n tz: '2022f',\n unicode: '14.0',\n ngtcp2: '0.8.1',\n nghttp3: '0.7.0'\n}\n}\n"],"mappings":";;;;;;AAAO,IAAMA,WAAW,GAAG;EACzBC,SAAS,EAAE,sBAAsB;EACjCC,MAAM,EAAE,0CAA0C;EAClDC,OAAO,EACT;IACE,UAAU,EAAE,QAAQ;IACpBC,GAAG,EAAE,QAAQ;IACbC,IAAI,EAAE,SAAS;IACfC,EAAE,EAAE,oBAAoB;IACxBC,EAAE,EAAE,QAAQ;IACZC,IAAI,EAAE,QAAQ;IACdC,MAAM,EAAE,OAAO;IACfC,IAAI,EAAE,QAAQ;IACdC,OAAO,EAAE,IAAI;IACbC,OAAO,EAAE,QAAQ;IACjBC,IAAI,EAAE,GAAG;IACTC,MAAM,EAAE,QAAQ;IAChBC,OAAO,EAAE,aAAa;IACtBC,IAAI,EAAE,MAAM;IACZC,GAAG,EAAE,MAAM;IACXC,EAAE,EAAE,OAAO;IACXC,OAAO,EAAE,MAAM;IACfC,MAAM,EAAE,OAAO;IACfC,OAAO,EAAE;EACX;AACA,CAAC;AAAAC,OAAA,CAAAtB,WAAA,GAAAA,WAAA"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "solid-ui",
|
|
3
|
-
"version": "2.4.28-
|
|
3
|
+
"version": "2.4.28-6a319caf",
|
|
4
4
|
"description": "UI library for writing Solid read-write-web applications",
|
|
5
5
|
"main": "./lib/index.js",
|
|
6
6
|
"types": "./lib/index.d.ts",
|
|
@@ -60,6 +60,7 @@
|
|
|
60
60
|
"acorn": "^7.4.1",
|
|
61
61
|
"escape-html": "^1.0.3",
|
|
62
62
|
"eslint-plugin-n": "^15.6.1",
|
|
63
|
+
"fsevents": "*",
|
|
63
64
|
"i": "^0.3.7",
|
|
64
65
|
"mime-types": "^2.1.35",
|
|
65
66
|
"npm": "^8.19.4",
|
|
@@ -109,6 +110,7 @@
|
|
|
109
110
|
"husky": "^7.0.4",
|
|
110
111
|
"isomorphic-fetch": "^3.0.0",
|
|
111
112
|
"jest": "^27.5.1",
|
|
113
|
+
"jest-environment-jsdom": "^27.5.1",
|
|
112
114
|
"jsdom": "^16.7.0",
|
|
113
115
|
"lint-staged": "^12.5.0",
|
|
114
116
|
"nock": "^13.3.0",
|