solid-ui 2.4.29-ee8e69c2 → 2.4.30-00b22a41

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.
Files changed (82) hide show
  1. package/dist/805.solid-ui.min.js +1 -1
  2. package/dist/805.solid-ui.min.js.map +1 -1
  3. package/dist/solid-ui.js +3511 -1964
  4. package/dist/solid-ui.js.map +1 -1
  5. package/dist/solid-ui.min.js +1 -1
  6. package/dist/solid-ui.min.js.map +1 -1
  7. package/dist/vendors-node_modules_jsonld_lib_jsonld_js.solid-ui.js +191 -80
  8. package/dist/vendors-node_modules_jsonld_lib_jsonld_js.solid-ui.js.map +1 -1
  9. package/lib/acl/access-groups.js +0 -2
  10. package/lib/acl/access-groups.js.map +1 -1
  11. package/lib/acl/acl.js +0 -2
  12. package/lib/acl/acl.js.map +1 -1
  13. package/lib/chat/chatLogic.js +6 -4
  14. package/lib/chat/chatLogic.js.map +1 -1
  15. package/lib/chat/infinite.js +0 -5
  16. package/lib/chat/infinite.js.map +1 -1
  17. package/lib/chat/message.js +3 -7
  18. package/lib/chat/message.js.map +1 -1
  19. package/lib/chat/messageTools.js +1 -0
  20. package/lib/chat/messageTools.js.map +1 -1
  21. package/lib/chat/thread.js +0 -4
  22. package/lib/chat/thread.js.map +1 -1
  23. package/lib/create/create.js +0 -2
  24. package/lib/create/create.js.map +1 -1
  25. package/lib/login/login.d.ts.map +1 -1
  26. package/lib/login/login.js +37 -42
  27. package/lib/login/login.js.map +1 -1
  28. package/lib/matrix/matrix.js +0 -2
  29. package/lib/matrix/matrix.js.map +1 -1
  30. package/lib/media/media-capture.d.ts +2 -2
  31. package/lib/media/media-capture.d.ts.map +1 -1
  32. package/lib/media/media-capture.js +11 -18
  33. package/lib/media/media-capture.js.map +1 -1
  34. package/lib/messageArea.js +0 -4
  35. package/lib/messageArea.js.map +1 -1
  36. package/lib/pad.d.ts +2 -2
  37. package/lib/pad.d.ts.map +1 -1
  38. package/lib/pad.js +18 -45
  39. package/lib/pad.js.map +1 -1
  40. package/lib/participation.d.ts +7 -7
  41. package/lib/participation.d.ts.map +1 -1
  42. package/lib/participation.js +27 -28
  43. package/lib/participation.js.map +1 -1
  44. package/lib/style.js +93 -85
  45. package/lib/style.js.map +1 -1
  46. package/lib/styleConstants.js +35 -0
  47. package/lib/styleConstants.js.map +1 -0
  48. package/lib/table.js +0 -4
  49. package/lib/table.js.map +1 -1
  50. package/lib/tabs.d.ts +0 -125
  51. package/lib/tabs.d.ts.map +1 -1
  52. package/lib/tabs.js +15 -10
  53. package/lib/tabs.js.map +1 -1
  54. package/lib/utils/index.js +0 -7
  55. package/lib/utils/index.js.map +1 -1
  56. package/lib/versionInfo.js +3 -3
  57. package/lib/versionInfo.js.map +1 -1
  58. package/lib/widgets/buttons.js +2 -10
  59. package/lib/widgets/buttons.js.map +1 -1
  60. package/lib/widgets/dragAndDrop.js +11 -20
  61. package/lib/widgets/dragAndDrop.js.map +1 -1
  62. package/lib/widgets/error.d.ts.map +1 -1
  63. package/lib/widgets/error.js +9 -2
  64. package/lib/widgets/error.js.map +1 -1
  65. package/lib/widgets/forms/autocomplete/autocompleteBar.js +5 -5
  66. package/lib/widgets/forms/autocomplete/autocompleteField.js +0 -1
  67. package/lib/widgets/forms/autocomplete/autocompleteField.js.map +1 -1
  68. package/lib/widgets/forms/autocomplete/autocompletePicker.d.ts.map +1 -1
  69. package/lib/widgets/forms/autocomplete/autocompletePicker.js +6 -8
  70. package/lib/widgets/forms/autocomplete/autocompletePicker.js.map +1 -1
  71. package/lib/widgets/forms/autocomplete/publicData.js +0 -3
  72. package/lib/widgets/forms/autocomplete/publicData.js.map +1 -1
  73. package/lib/widgets/forms/basic.d.ts.map +1 -1
  74. package/lib/widgets/forms/basic.js +5 -5
  75. package/lib/widgets/forms/basic.js.map +1 -1
  76. package/lib/widgets/forms/fieldParams.js +16 -16
  77. package/lib/widgets/forms/fieldParams.js.map +1 -1
  78. package/lib/widgets/forms.js +12 -30
  79. package/lib/widgets/forms.js.map +1 -1
  80. package/lib/widgets/peoplePicker.js +0 -1
  81. package/lib/widgets/peoplePicker.js.map +1 -1
  82. package/package.json +16 -16
@@ -1 +1 @@
1
- {"version":3,"file":"messageTools.js","names":["debug","_interopRequireWildcard","require","_iconBase","ns","rdf","utils","widgets","_bookmarks","_solidLogic","_chatLogic","_message","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","dom","window","document","PENCIL_ICON","THUMBS_UP_ICON","THUMBS_DOWN_ICON","emoji","schema","sentimentStrip","target","doc","latest","mostRecentVersion","actions","store","holds","value","each","sentiments","map","any","sort","strings","x","createTextNode","join","sentimentStripLinked","strip","createElement","refresh","innerHTML","uri","forEach","ss","_ss","_slicedToArray2","theClass","agent","res","setAttribute","textContent","appendChild","messageToolbar","message","messageRow","userContext","channelObject","deleteMessage","_deleteMessage","apply","arguments","_asyncToGenerator2","_regenerator","mark","_callee2","author","msg","area","wrap","_callee2$","_context2","prev","next","foaf","me","alert","sameTerm","t0","warn","statusArea","parentNode","errorMessageBlock","removeChild","closeToolbar","stop","editMessage","_x","_editMessage","_callee3","_callee3$","_context3","switchToEditor","div","parentElement","deleteThingThen","_x2","_deleteThingThen","_callee4","_callee4$","_context4","updater","update","connectedStatements","authn","currentUser","deleteButtonWithCheck","button","icons","iconBase","renderBookmarksButton","then","bookmarkButton","sentimentButton","context","icon","actionClass","mutuallyExclusive","setColor","style","backgroundColor","action","label","_ref","_callee","_event","insertMe","dirty","_callee$","_context","newThing","st","length","existingAction","refreshTree","_x3","filter","context1","cancelButton","firstChild","opacity","addEventListener"],"sources":["../../src/chat/messageTools.js"],"sourcesContent":["/**\n * Tools for doing things with a message\n * Let us be creative here. Allow all sorts of things to\n * be done to a message - linking to new or old objects in an open way\n *\n * Ideas: Bookmark, Like, star, pin at top of chat, reply as new thread,\n * If you made it originally: edit, delete, attach\n * @packageDocumentation\n */\nimport * as debug from '../debug'\nimport { icons } from '../iconBase'\n// import { media } from '../media/index'\nimport * as ns from '../ns'\n// import * as pad from '../pad'\nimport * as rdf from 'rdflib' // pull in first avoid cross-refs\n// import * as style from '../style'\nimport * as utils from '../utils'\nimport * as widgets from '../widgets'\nimport { renderBookmarksButton } from './bookmarks'\nimport { authn, store } from 'solid-logic'\n\nimport { mostRecentVersion } from './chatLogic'\nimport { switchToEditor } from './message'\n\nconst dom = window.document\n\n// THE UNUSED ICONS are here as reminders for possible future functionality\n// const BOOKMARK_ICON = 'noun_45961.svg'\n// const HEART_ICON = 'noun_130259.svg' -> Add this to my (private) favorites\n// const MENU_ICON = 'noun_897914.svg'\n// const PAPERCLIP_ICON = 'noun_25830.svg' -> add attachments to this message\n// const PIN_ICON = 'noun_562340.svg' -> pin this message permanently in the chat UI\nconst PENCIL_ICON = 'noun_253504.svg' // edit a message\n// const SPANNER_ICON = 'noun_344563.svg' -> settings\nconst THUMBS_UP_ICON = 'noun_1384132.svg'\nconst THUMBS_DOWN_ICON = 'noun_1384135.svg'\n/**\n * Emoji in Unicode\n */\nconst emoji = {}\nemoji[ns.schema('AgreeAction')] = '👍'\nemoji[ns.schema('DisagreeAction')] = '👎'\nemoji[ns.schema('EndorseAction')] = '⭐️'\nemoji[ns.schema('LikeAction')] = '❤️'\n\n/**\n * Create strip of sentiments expressed\n */\nexport function sentimentStrip (target, doc) { // alain seems not used\n const latest = mostRecentVersion(target)\n const actions = store.holds(latest, ns.schema('dateDeleted').value, null, latest.doc()) ? store.each(null, ns.schema('target'), target, doc) : []\n const sentiments = actions.map(a => store.any(a, ns.rdf('type'), null, doc))\n sentiments.sort()\n const strings = sentiments.map(x => emoji[x] || '')\n return dom.createTextNode(strings.join(' '))\n}\n/**\n * Create strip of sentiments expressed, with hyperlinks\n *\n * @param target {NamedNode} - The thing about which they are expressed\n * @param doc {NamedNode} - The document in which they are expressed\n */\nexport function sentimentStripLinked (target, doc) {\n const strip = dom.createElement('span')\n function refresh () {\n strip.innerHTML = ''\n const actions = (mostRecentVersion(target).uri !== ns.schema('dateDeleted').uri) ? store.each(null, ns.schema('target'), target, doc) : []\n const sentiments = actions.map(a => [\n store.any(a, ns.rdf('type'), null, doc),\n store.any(a, ns.schema('agent'), null, doc)\n ])\n sentiments.sort()\n sentiments.forEach(ss => {\n const [theClass, agent] = ss\n let res\n if (agent) {\n res = dom.createElement('a')\n res.setAttribute('href', agent.uri)\n } else {\n res = dom.createTextNode('')\n }\n res.textContent = emoji[theClass] || '*'\n strip.appendChild(res)\n })\n }\n refresh()\n strip.refresh = refresh\n return strip\n}\n/**\n * Creates a message toolbar component\n */\nexport function messageToolbar (message, messageRow, userContext, channelObject) {\n async function deleteMessage () {\n const author = store.any(message, ns.foaf('maker'))\n if (!me) {\n alert('You can\\'t delete the message, you are not logged in.')\n } else if (me.sameTerm(author)) {\n try {\n await channelObject.deleteMessage(message)\n } catch (err) {\n const msg = 'Error deleting messaage ' + err\n debug.warn(msg)\n alert(msg)\n const area = userContext.statusArea || messageRow.parentNode\n area.appendChild(widgets.errorMessageBlock(dom, msg))\n }\n messageRow.parentNode.removeChild(messageRow)\n } else {\n alert('You can\\'t delete the message, you are not logged in as the author, ' + author)\n }\n closeToolbar()\n }\n\n async function editMessage (messageRow) {\n if (me.value === store.any(message, ns.foaf('maker')).value) {\n closeToolbar() // edit is a one-off action\n switchToEditor(messageRow, message, channelObject, userContext)\n }\n }\n\n // alain TODO allow chat owner to fully delete message + sentiments and replacing messages\n\n const div = dom.createElement('div')\n // is message deleted ?\n if (mostRecentVersion(message).value === ns.schema('dateDeleted').value) return div\n function closeToolbar () {\n div.parentElement.parentElement.removeChild(div.parentElement) // remive the TR\n }\n\n async function deleteThingThen (x) {\n await store.updater.update(store.connectedStatements(x), [])\n }\n\n // Things only the original author can do\n let me = authn.currentUser() // If already logged on\n if (me && store.holds(message, ns.foaf('maker'), me)) {\n // button to delete the message\n div.appendChild(widgets.deleteButtonWithCheck(dom, div, 'message', deleteMessage))\n // button to edit the message\n div.appendChild(widgets.button(dom, icons.iconBase + PENCIL_ICON, 'edit', () => editMessage(messageRow)))\n } // if mine\n // Things anyone can do if they have a bookmark list async\n /*\n var bookmarkButton = await bookmarks.renderBookmarksButton(userContext)\n if (bookmarkButton) {\n div.appendChild(bookmarkButton)\n }\n */\n // Things anyone can do if they have a bookmark list\n\n renderBookmarksButton(userContext).then(bookmarkButton => {\n if (bookmarkButton) div.appendChild(bookmarkButton)\n })\n\n /** Button to allow user to express a sentiment (like, endorse, etc) about a target\n *\n * @param context {Object} - Provide dom and me\n * @param target {NamedNode} - The thing the user expresses an opnion about\n * @param icon {uristring} - The icon to be used for the button\n * @param actionClass {NamedNode} - The RDF class - typically a subclass of schema:Action\n * @param doc - {NamedNode} - the Solid document iunto which the data should be written\n * @param mutuallyExclusive {Array<NamedNode>} - Any RDF classes of sentimentswhich are mutiually exclusive\n */\n function sentimentButton (\n context,\n target,\n icon,\n actionClass,\n doc,\n mutuallyExclusive\n ) {\n function setColor () {\n button.style.backgroundColor = action ? 'yellow' : 'white'\n }\n const button = widgets.button(\n dom,\n icon,\n utils.label(actionClass),\n async function (_event) {\n if (action) {\n await deleteThingThen(action)\n action = null\n setColor()\n } else {\n // no action\n action = widgets.newThing(doc)\n const insertMe = [\n rdf.st(action, ns.schema('agent'), context.me, doc),\n rdf.st(action, ns.rdf('type'), actionClass, doc),\n rdf.st(action, ns.schema('target'), target, doc)\n ]\n await store.updater.update([], insertMe)\n setColor()\n\n if (mutuallyExclusive) {\n // Delete incompative sentiments\n let dirty = false\n for (let i = 0; i < mutuallyExclusive.length; i++) {\n const a = existingAction(mutuallyExclusive[i])\n if (a) {\n await deleteThingThen(a) // but how refresh? refreshTree the parent?\n dirty = true\n }\n }\n if (dirty) {\n // widgets.refreshTree(button.parentNode) // requires them all to be immediate siblings\n widgets.refreshTree(messageRow) // requires them all to be immediate siblings\n }\n }\n }\n }\n )\n function existingAction (actionClass) {\n const actions = store\n .each(null, ns.schema('agent'), context.me, doc)\n .filter(x => store.holds(x, ns.rdf('type'), actionClass, doc))\n .filter(x => store.holds(x, ns.schema('target'), target, doc))\n return actions.length ? actions[0] : null\n }\n function refresh () {\n action = existingAction(actionClass)\n setColor()\n }\n let action\n button.refresh = refresh // If the file changes, refresh live\n refresh()\n return button\n }\n\n // THUMBS_UP_ICON\n // https://schema.org/AgreeAction\n me = authn.currentUser() // If already logged on\n // debug.log('Actions 3' + mostRecentVersion(message).value + ' ' + ns.schema('dateDeleted').value + ' ' + (mostRecentVersion(message).value !== ns.schema('dateDeleted').value))\n\n if (me && (mostRecentVersion(message).value !== ns.schema('dateDeleted').value)) {\n const context1 = { me, dom, div }\n div.appendChild(\n sentimentButton(\n context1,\n message, // @@ TODO use widgets.sentimentButton\n icons.iconBase + THUMBS_UP_ICON,\n ns.schema('AgreeAction'),\n message.doc(),\n [ns.schema('DisagreeAction')]\n )\n )\n // Thumbs down\n div.appendChild(\n sentimentButton(\n context1,\n message,\n icons.iconBase + THUMBS_DOWN_ICON,\n ns.schema('DisagreeAction'),\n message.doc(),\n [ns.schema('AgreeAction')]\n )\n )\n }\n // X button to remove the tool UI itself\n const cancelButton = div.appendChild(widgets.cancelButton(dom))\n cancelButton.style.float = 'right'\n cancelButton.firstChild.style.opacity = '0.3'\n cancelButton.addEventListener('click', closeToolbar)\n return div\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"messageTools.js","names":["debug","_interopRequireWildcard","require","_iconBase","ns","rdf","utils","widgets","_bookmarks","_solidLogic","_chatLogic","_message","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","dom","window","document","PENCIL_ICON","THUMBS_UP_ICON","THUMBS_DOWN_ICON","emoji","schema","sentimentStrip","target","doc","latest","mostRecentVersion","actions","store","holds","value","each","sentiments","map","any","sort","strings","x","createTextNode","join","sentimentStripLinked","strip","createElement","refresh","innerHTML","uri","forEach","ss","_ss","_slicedToArray2","theClass","agent","res","setAttribute","textContent","appendChild","messageToolbar","message","messageRow","userContext","channelObject","deleteMessage","_deleteMessage","apply","arguments","_asyncToGenerator2","_regenerator","mark","_callee2","author","msg","area","wrap","_callee2$","_context2","prev","next","foaf","me","alert","sameTerm","t0","warn","statusArea","parentNode","errorMessageBlock","removeChild","closeToolbar","stop","editMessage","_x","_editMessage","_callee3","_callee3$","_context3","switchToEditor","div","parentElement","deleteThingThen","_x2","_deleteThingThen","_callee4","_callee4$","_context4","updater","update","connectedStatements","authn","currentUser","deleteButtonWithCheck","button","icons","iconBase","renderBookmarksButton","then","bookmarkButton","sentimentButton","context","icon","actionClass","mutuallyExclusive","setColor","style","backgroundColor","action","label","_ref","_callee","_event","insertMe","dirty","_callee$","_context","newThing","st","length","existingAction","refreshTree","_x3","filter","context1","cancelButton","firstChild","opacity","addEventListener"],"sources":["../../src/chat/messageTools.js"],"sourcesContent":["/**\n * Tools for doing things with a message\n * Let us be creative here. Allow all sorts of things to\n * be done to a message - linking to new or old objects in an open way\n *\n * Ideas: Bookmark, Like, star, pin at top of chat, reply as new thread,\n * If you made it originally: edit, delete, attach\n * @packageDocumentation\n */\nimport * as debug from '../debug'\nimport { icons } from '../iconBase'\n// import { media } from '../media/index'\nimport * as ns from '../ns'\n// import * as pad from '../pad'\nimport * as rdf from 'rdflib' // pull in first avoid cross-refs\n// import * as style from '../style'\nimport * as utils from '../utils'\nimport * as widgets from '../widgets'\nimport { renderBookmarksButton } from './bookmarks'\nimport { authn, store } from 'solid-logic'\n\nimport { mostRecentVersion } from './chatLogic'\nimport { switchToEditor } from './message'\n\nconst dom = window.document\n\n// THE UNUSED ICONS are here as reminders for possible future functionality\n// const BOOKMARK_ICON = 'noun_45961.svg'\n// const HEART_ICON = 'noun_130259.svg' -> Add this to my (private) favorites\n// const MENU_ICON = 'noun_897914.svg'\n// const PAPERCLIP_ICON = 'noun_25830.svg' -> add attachments to this message\n// const PIN_ICON = 'noun_562340.svg' -> pin this message permanently in the chat UI\nconst PENCIL_ICON = 'noun_253504.svg' // edit a message\n// const SPANNER_ICON = 'noun_344563.svg' -> settings\nconst THUMBS_UP_ICON = 'noun_1384132.svg'\nconst THUMBS_DOWN_ICON = 'noun_1384135.svg'\n/**\n * Emoji in Unicode\n */\nconst emoji = {}\nemoji[ns.schema('AgreeAction')] = '👍'\nemoji[ns.schema('DisagreeAction')] = '👎'\nemoji[ns.schema('EndorseAction')] = '⭐️'\nemoji[ns.schema('LikeAction')] = '❤️'\n\n/**\n * Create strip of sentiments expressed\n */\nexport function sentimentStrip (target, doc) { // alain seems not used\n const latest = mostRecentVersion(target)\n const actions = store.holds(latest, ns.schema('dateDeleted').value, null, latest.doc()) ? store.each(null, ns.schema('target'), target, doc) : []\n const sentiments = actions.map(a => store.any(a, ns.rdf('type'), null, doc))\n sentiments.sort()\n const strings = sentiments.map(x => emoji[x] || '')\n return dom.createTextNode(strings.join(' '))\n}\n/**\n * Create strip of sentiments expressed, with hyperlinks\n *\n * @param target {NamedNode} - The thing about which they are expressed\n * @param doc {NamedNode} - The document in which they are expressed\n */\nexport function sentimentStripLinked (target, doc) {\n const strip = dom.createElement('span')\n function refresh () {\n strip.innerHTML = ''\n const actions = (mostRecentVersion(target).uri !== ns.schema('dateDeleted').uri) ? store.each(null, ns.schema('target'), target, doc) : []\n const sentiments = actions.map(a => [\n store.any(a, ns.rdf('type'), null, doc),\n store.any(a, ns.schema('agent'), null, doc)\n ])\n sentiments.sort()\n sentiments.forEach(ss => {\n const [theClass, agent] = ss\n let res\n if (agent) {\n res = dom.createElement('a')\n res.setAttribute('href', agent.uri)\n } else {\n res = dom.createTextNode('')\n }\n res.textContent = emoji[theClass] || '*'\n strip.appendChild(res)\n })\n }\n refresh()\n strip.refresh = refresh\n return strip\n}\n/**\n * Creates a message toolbar component\n */\nexport function messageToolbar (message, messageRow, userContext, channelObject) {\n async function deleteMessage () {\n const author = store.any(message, ns.foaf('maker'))\n if (!me) {\n alert('You can\\'t delete the message, you are not logged in.')\n } else if (me.sameTerm(author)) {\n try {\n await channelObject.deleteMessage(message)\n } catch (err) {\n const msg = 'Error deleting messaage ' + err\n debug.warn(msg)\n alert(msg)\n const area = userContext.statusArea || messageRow.parentNode\n area.appendChild(widgets.errorMessageBlock(dom, msg))\n }\n messageRow.parentNode.removeChild(messageRow)\n } else {\n alert('You can\\'t delete the message, you are not logged in as the author, ' + author)\n }\n closeToolbar()\n }\n\n async function editMessage (messageRow) {\n if (me.value === store.any(message, ns.foaf('maker')).value) {\n closeToolbar() // edit is a one-off action\n switchToEditor(messageRow, message, channelObject, userContext)\n }\n }\n\n // alain TODO allow chat owner to fully delete message + sentiments and replacing messages\n\n const div = dom.createElement('div')\n // is message deleted ?\n if (mostRecentVersion(message).value === ns.schema('dateDeleted').value) return div\n function closeToolbar () {\n div.parentElement.parentElement.removeChild(div.parentElement) // remive the TR\n }\n\n async function deleteThingThen (x) {\n await store.updater.update(store.connectedStatements(x), [])\n }\n\n // Things only the original author can do\n let me = authn.currentUser() // If already logged on\n if (me && store.holds(message, ns.foaf('maker'), me)) {\n // button to delete the message\n div.appendChild(widgets.deleteButtonWithCheck(dom, div, 'message', deleteMessage))\n // button to edit the message\n div.appendChild(widgets.button(dom, icons.iconBase + PENCIL_ICON, 'edit', () => editMessage(messageRow)))\n } // if mine\n // Things anyone can do if they have a bookmark list async\n /*\n var bookmarkButton = await bookmarks.renderBookmarksButton(userContext)\n if (bookmarkButton) {\n div.appendChild(bookmarkButton)\n }\n */\n // Things anyone can do if they have a bookmark list\n\n renderBookmarksButton(userContext).then(bookmarkButton => {\n if (bookmarkButton) div.appendChild(bookmarkButton)\n })\n\n /** Button to allow user to express a sentiment (like, endorse, etc) about a target\n *\n * @param context {Object} - Provide dom and me\n * @param target {NamedNode} - The thing the user expresses an opnion about\n * @param icon {uristring} - The icon to be used for the button\n * @param actionClass {NamedNode} - The RDF class - typically a subclass of schema:Action\n * @param doc - {NamedNode} - the Solid document iunto which the data should be written\n * @param mutuallyExclusive {Array<NamedNode>} - Any RDF classes of sentimentswhich are mutiually exclusive\n */\n function sentimentButton (\n context,\n target,\n icon,\n actionClass,\n doc,\n mutuallyExclusive\n ) {\n function setColor () {\n button.style.backgroundColor = action ? 'yellow' : 'white'\n }\n const button = widgets.button(\n dom,\n icon,\n utils.label(actionClass),\n async function (_event) {\n if (action) {\n await deleteThingThen(action)\n action = null\n setColor()\n } else {\n // no action\n action = widgets.newThing(doc)\n const insertMe = [\n rdf.st(action, ns.schema('agent'), context.me, doc),\n rdf.st(action, ns.rdf('type'), actionClass, doc),\n rdf.st(action, ns.schema('target'), target, doc)\n ]\n await store.updater.update([], insertMe)\n setColor()\n\n if (mutuallyExclusive) {\n // Delete incompative sentiments\n let dirty = false\n for (let i = 0; i < mutuallyExclusive.length; i++) {\n const a = existingAction(mutuallyExclusive[i])\n if (a) {\n await deleteThingThen(a) // but how refresh? refreshTree the parent?\n dirty = true\n }\n }\n if (dirty) {\n // widgets.refreshTree(button.parentNode) // requires them all to be immediate siblings\n widgets.refreshTree(messageRow) // requires them all to be immediate siblings\n }\n }\n }\n }\n )\n function existingAction (actionClass) {\n const actions = store\n .each(null, ns.schema('agent'), context.me, doc)\n .filter(x => store.holds(x, ns.rdf('type'), actionClass, doc))\n .filter(x => store.holds(x, ns.schema('target'), target, doc))\n return actions.length ? actions[0] : null\n }\n function refresh () {\n action = existingAction(actionClass)\n setColor()\n }\n let action\n button.refresh = refresh // If the file changes, refresh live\n refresh()\n return button\n }\n\n // THUMBS_UP_ICON\n // https://schema.org/AgreeAction\n me = authn.currentUser() // If already logged on\n // debug.log('Actions 3' + mostRecentVersion(message).value + ' ' + ns.schema('dateDeleted').value + ' ' + (mostRecentVersion(message).value !== ns.schema('dateDeleted').value))\n\n if (me && (mostRecentVersion(message).value !== ns.schema('dateDeleted').value)) {\n const context1 = { me, dom, div }\n div.appendChild(\n sentimentButton(\n context1,\n message, // @@ TODO use widgets.sentimentButton\n icons.iconBase + THUMBS_UP_ICON,\n ns.schema('AgreeAction'),\n message.doc(),\n [ns.schema('DisagreeAction')]\n )\n )\n // Thumbs down\n div.appendChild(\n sentimentButton(\n context1,\n message,\n icons.iconBase + THUMBS_DOWN_ICON,\n ns.schema('DisagreeAction'),\n message.doc(),\n [ns.schema('AgreeAction')]\n )\n )\n }\n // X button to remove the tool UI itself\n const cancelButton = div.appendChild(widgets.cancelButton(dom))\n cancelButton.style.float = 'right'\n cancelButton.firstChild.style.opacity = '0.3'\n cancelButton.addEventListener('click', closeToolbar)\n return div\n}\n"],"mappings":"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"}
@@ -65,7 +65,6 @@ function thread(dom, kb, subject, messageStore, options) {
65
65
  a.addEventListener('click', UI.widgets.openHrefInOutlineMode, true);
66
66
  a.setAttribute('style', 'color: #3B5998; text-decoration: none; '); // font-weight: bold
67
67
  }
68
-
69
68
  a.textContent = text;
70
69
  return a;
71
70
  };
@@ -341,7 +340,6 @@ function thread(dom, kb, subject, messageStore, options) {
341
340
  };
342
341
  renderMessage(bindings, true); // fresh from elsewhere
343
342
  };
344
-
345
343
  var renderMessage = function renderMessage(bindings, fresh) {
346
344
  var creator = bindings['?creator'];
347
345
  var message = bindings['?msg'];
@@ -421,7 +419,6 @@ function thread(dom, kb, subject, messageStore, options) {
421
419
  } else {
422
420
  messageTable.appendChild(tr); // not newestFirst
423
421
  }
424
-
425
422
  var query;
426
423
  // Do this with a live query to pull in messages from web
427
424
  if (options.query) {
@@ -441,7 +438,6 @@ function thread(dom, kb, subject, messageStore, options) {
441
438
  function doneQuery() {
442
439
  messageTable.fresh = true; // any new are fresh and so will be greenish
443
440
  }
444
-
445
441
  _solidLogic.store.query(query, renderMessage, undefined, doneQuery);
446
442
  div.refresh = function () {
447
443
  syncMessages(subject, messageTable);
@@ -1 +1 @@
1
- {"version":3,"file":"thread.js","names":["_iconBase","require","_solidLogic","_index","ns","_interopRequireWildcard","login","pad","$rdf","style","utils","widgets","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","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","uri","setAttribute","addEventListener","openHrefInOutlineMode","textContent","mention","message","pre","appendChild","createTextNode","announce","log","warn","error","newMessageForm","form","lhs","middle","rhs","AJAR_date","sendMessage","field","disabled","_appendMsg","appendMsg","value","dateStamp","sts","sendComplete","success","body","errorMessageBlock","bindings","literal","renderMessage","update","sendButton","turnOnInput","creatorAndDate","innerHTML","rows","keyCode","altKey","button","iconBase","buttonStyle","context","ensureLoggedIn","then","fieldValue","oldMsg","arguments","length","undefined","now","Date","timestamp","getTime","sym","push","Statement","mostRecentVersion","wf","msgBody","concat","nick","sioc","foaf","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","_ref","_asyncToGenerator2","_regenerator","mark","_callee","deletions","wrap","_callee$","_context","prev","next","connectedStatements","sent","ok","stop","_x","apply","fresh","content","dateString","tr","done","insertBefore","shortDate","td2","td3","delButton","_event","cancelButton","sureButton","_appendMsg2","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 // Shared by initial build and addMessageFromBindings\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 = function () {\n // titlefield.setAttribute('class','pendingedit')\n // titlefield.disabled = true\n field.setAttribute('class', 'pendingedit')\n field.disabled = true\n const { message, dateStamp, sts } = 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 function (e) {\n // User preference?\n if (e.keyCode === 13) {\n if (!e.altKey) {\n // Alt-Enter just adds a new line\n 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 sendMessage = function (oldMsg, options) { // alain\n // titlefield.setAttribute('class','pendingedit')\n // titlefield.disabled = true\n field.setAttribute('class', 'pendingedit')\n field.disabled = true\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(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' ? field.value : `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\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\n const appendMsg = 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(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 // listMsg.push(msg)\n msg = store.statementsMatching(message, DCT('isReplacedBy'))\n }\n return msg\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 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 } = 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":";;;;;;;;;;AAKA,IAAAA,SAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,EAAA,GAAAC,uBAAA,CAAAJ,OAAA;AACA,IAAAK,KAAA,GAAAD,uBAAA,CAAAJ,OAAA;AACA,IAAAM,GAAA,GAAAF,uBAAA,CAAAJ,OAAA;AACA,IAAAO,IAAA,GAAAH,uBAAA,CAAAJ,OAAA;AACA,IAAAQ,KAAA,GAAAJ,uBAAA,CAAAJ,OAAA;AACA,IAAAS,KAAA,GAAAL,uBAAA,CAAAJ,OAAA;AACA,IAAAU,OAAA,GAAAN,uBAAA,CAAAJ,OAAA;AAAqC,SAAAW,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAR,wBAAAQ,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,gBAAAK,OAAA,CAAAL,CAAA,0BAAAA,CAAA,sBAAAA,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,cAAAR,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAdrC;AACA;AACA;AACA;;AAQ+B;;AAK/B,IAAMY,EAAE,GAAG;EAAEC,KAAK,EAALA,eAAK;EAAE9B,EAAE,EAAFA,EAAE;EAAE+B,KAAK,EAALA,YAAK;EAAE5B,GAAG,EAAHA,GAAG;EAAEE,KAAK,EAALA,KAAK;EAAEC,KAAK,EAALA,KAAK;EAAEC,OAAO,EAAPA;AAAQ,CAAC;;AAE3D;AACA;AACA;AACO,SAASyB,MAAMA,CAAEC,GAAG,EAAEC,EAAE,EAAEC,OAAO,EAAEC,YAAY,EAAEC,OAAO,EAAE;EAC/DH,EAAE,GAAGA,EAAE,IAAII,iBAAK;EAChBF,YAAY,GAAGA,YAAY,CAACG,GAAG,CAAC,CAAC,EAAC;EAClC,IAAMvC,EAAE,GAAG6B,EAAE,CAAC7B,EAAE;EAChB,IAAMwC,EAAE,GAAGpC,IAAI,CAACqC,SAAS,CAAC,oCAAoC,CAAC;EAC/D,IAAMC,GAAG,GAAGtC,IAAI,CAACqC,SAAS,CAAC,2BAA2B,CAAC;EAEvDJ,OAAO,GAAGA,OAAO,IAAI,CAAC,CAAC;EAEvB,IAAMM,WAAW,GAAG,CAAC,CAACN,OAAO,CAACM,WAAW;EAEzC,IAAMC,gBAAgB,GACpB,iIAAiI;EACnI;;EAEA,IAAMC,GAAG,GAAGZ,GAAG,CAACa,aAAa,CAAC,KAAK,CAAC;EACpC;EACA,IAAIC,YAAY,EAAC;;EAEjB,IAAIC,EAAE;EAEN,IAAMC,OAAO,GAAGX,iBAAK,CAACW,OAAO;EAE7B,IAAMC,MAAM,GAAG,SAATA,MAAMA,CAAaC,IAAI,EAAEC,IAAI,EAAE;IACnC;IACA,IAAMjC,CAAC,GAAGc,GAAG,CAACa,aAAa,CAAC,GAAG,CAAC;IAChC,IAAIM,IAAI,IAAIA,IAAI,CAACC,GAAG,EAAE;MACpBlC,CAAC,CAACmC,YAAY,CAAC,MAAM,EAAEF,IAAI,CAACC,GAAG,CAAC;MAChClC,CAAC,CAACoC,gBAAgB,CAAC,OAAO,EAAE1B,EAAE,CAACtB,OAAO,CAACiD,qBAAqB,EAAE,IAAI,CAAC;MACnErC,CAAC,CAACmC,YAAY,CAAC,OAAO,EAAE,yCAAyC,CAAC,EAAC;IACrE;;IACAnC,CAAC,CAACsC,WAAW,GAAGN,IAAI;IACpB,OAAOhC,CAAC;EACV,CAAC;EAED,IAAMuC,OAAO,GAAG,SAASA,OAAOA,CAAEC,OAAO,EAAEtD,KAAK,EAAE;IAChD,IAAMuD,GAAG,GAAG3B,GAAG,CAACa,aAAa,CAAC,KAAK,CAAC;IACpCc,GAAG,CAACN,YAAY,CAAC,OAAO,EAAEjD,KAAK,IAAI,aAAa,CAAC;IACjDwC,GAAG,CAACgB,WAAW,CAACD,GAAG,CAAC;IACpBA,GAAG,CAACC,WAAW,CAAC5B,GAAG,CAAC6B,cAAc,CAACH,OAAO,CAAC,CAAC;IAC5C,OAAOC,GAAG;EACZ,CAAC;EAED,IAAMG,QAAQ,GAAG;IACfC,GAAG,EAAE,SAAAA,IAAUL,OAAO,EAAE;MACtBD,OAAO,CAACC,OAAO,EAAE,cAAc,CAAC;IAClC,CAAC;IACDM,IAAI,EAAE,SAAAA,KAAUN,OAAO,EAAE;MACvBD,OAAO,CAACC,OAAO,EAAE,cAAc,CAAC;IAClC,CAAC;IACDO,KAAK,EAAE,SAAAA,MAAUP,OAAO,EAAE;MACxBD,OAAO,CAACC,OAAO,EAAE,cAAc,CAAC;IAClC;EACF,CAAC;;EAED;AACF;AACA;EACE,IAAMQ,cAAc,GAAG,SAAjBA,cAAcA,CAAA,EAAe;IACjC,IAAMC,IAAI,GAAGnC,GAAG,CAACa,aAAa,CAAC,IAAI,CAAC;IACpC,IAAMuB,GAAG,GAAGpC,GAAG,CAACa,aAAa,CAAC,IAAI,CAAC;IACnC,IAAMwB,MAAM,GAAGrC,GAAG,CAACa,aAAa,CAAC,IAAI,CAAC;IACtC,IAAMyB,GAAG,GAAGtC,GAAG,CAACa,aAAa,CAAC,IAAI,CAAC;IACnCsB,IAAI,CAACP,WAAW,CAACQ,GAAG,CAAC;IACrBD,IAAI,CAACP,WAAW,CAACS,MAAM,CAAC;IACxBF,IAAI,CAACP,WAAW,CAACU,GAAG,CAAC;IACrBH,IAAI,CAACI,SAAS,GAAG,sBAAsB,EAAC;;IAExC,IAAMC,WAAW,GAAG,SAAdA,WAAWA,CAAA,EAAe;MAC9B;MACA;MACAC,KAAK,CAACpB,YAAY,CAAC,OAAO,EAAE,aAAa,CAAC;MAC1CoB,KAAK,CAACC,QAAQ,GAAG,IAAI;MACrB,IAAAC,UAAA,GAAoCC,SAAS,CAACH,KAAK,CAACI,KAAK,CAAC;QAAlDnB,OAAO,GAAAiB,UAAA,CAAPjB,OAAO;QAAEoB,SAAS,GAAAH,UAAA,CAATG,SAAS;QAAEC,GAAG,GAAAJ,UAAA,CAAHI,GAAG;MAE/B,IAAMC,YAAY,GAAG,SAAfA,YAAYA,CAAa5B,GAAG,EAAE6B,OAAO,EAAEC,IAAI,EAAE;QACjD,IAAI,CAACD,OAAO,EAAE;UACZd,IAAI,CAACP,WAAW,CACdhC,EAAE,CAACtB,OAAO,CAAC6E,iBAAiB,CAACnD,GAAG,EAAE,yBAAyB,GAAGkD,IAAI,CACpE,CAAC;QACH,CAAC,MAAM;UACL,IAAME,QAAQ,GAAG;YACf,MAAM,EAAE1B,OAAO;YACf,UAAU,EAAErB,iBAAK,CAACgD,OAAO,CAACZ,KAAK,CAACI,KAAK,CAAC;YACtC,OAAO,EAAEC,SAAS;YAClB,UAAU,EAAE/B;UACd,CAAC;UACDuC,aAAa,CAACF,QAAQ,EAAE,KAAK,CAAC,EAAC;;UAE/BX,KAAK,CAACI,KAAK,GAAG,EAAE,EAAC;UACjBJ,KAAK,CAACpB,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC;UAC/BoB,KAAK,CAACC,QAAQ,GAAG,KAAK;QACxB;MACF,CAAC;MACD1B,OAAO,CAACuC,MAAM,CAAC,EAAE,EAAER,GAAG,EAAEC,YAAY,CAAC;IACvC,CAAC;IACDb,IAAI,CAACP,WAAW,CAAC5B,GAAG,CAACa,aAAa,CAAC,IAAI,CAAC,CAAC;IAEzC,IAAI4B,KAAK,EAAEe,UAAU;IACrB,IAAMC,WAAW,GAAG,SAAdA,WAAWA,CAAA,EAAe;MAC9BC,cAAc,CAACtB,GAAG,EAAErB,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC;MAEjC0B,KAAK,GAAGzC,GAAG,CAACa,aAAa,CAAC,UAAU,CAAC;MACrCwB,MAAM,CAACsB,SAAS,GAAG,EAAE;MACrBtB,MAAM,CAACT,WAAW,CAACa,KAAK,CAAC;MACzBA,KAAK,CAACmB,IAAI,GAAG,CAAC;MACd;MACAnB,KAAK,CAACpB,YAAY,CAAC,OAAO,EAAEV,gBAAgB,GAAG,yBAAyB,CAAC;MAEzE8B,KAAK,CAACnB,gBAAgB,CACpB,OAAO,EACP,UAAU9C,CAAC,EAAE;QACX;QACA,IAAIA,CAAC,CAACqF,OAAO,KAAK,EAAE,EAAE;UACpB,IAAI,CAACrF,CAAC,CAACsF,MAAM,EAAE;YACb;YACAtB,WAAW,CAAC,CAAC;UACf;QACF;MACF,CAAC,EACD,KACF,CAAC;MAEDF,GAAG,CAACqB,SAAS,GAAG,EAAE;MAClBH,UAAU,GAAG5D,EAAE,CAACtB,OAAO,CAACyF,MAAM,CAC5B/D,GAAG,EACHJ,EAAE,CAACC,KAAK,CAACmE,QAAQ,GAAG,iBAAiB,EACrC,MACF,CAAC;MACDR,UAAU,CAACnC,YAAY,CAAC,OAAO,EAAEzB,EAAE,CAACxB,KAAK,CAAC6F,WAAW,GAAG,eAAe,CAAC;MACxET,UAAU,CAAClC,gBAAgB,CAAC,OAAO,EAAEkB,WAAW,EAAE,KAAK,CAAC;MACxDF,GAAG,CAACV,WAAW,CAAC4B,UAAU,CAAC;IAC7B,CAAC;IAED,IAAMU,OAAO,GAAG;MAAEtD,GAAG,EAAEyB,MAAM;MAAErC,GAAG,EAAHA;IAAI,CAAC;IACpC/B,KAAK,CAACkG,cAAc,CAACD,OAAO,CAAC,CAACE,IAAI,CAAC,UAAAF,OAAO,EAAI;MAC5CnD,EAAE,GAAGmD,OAAO,CAACnD,EAAE;MACf0C,WAAW,CAAC,CAAC;IACf,CAAC,CAAC;IAEF,OAAOtB,IAAI;EACb,CAAC;;EAED;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;EAKE,IAAMS,SAAS,GAAG,SAAZA,SAASA,CAAayB,UAAU,EAA6B;IAAA,IAA3BC,MAAM,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;IAAA,IAAEnE,OAAO,GAAAmE,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,EAAE;IAAI;IACnE,IAAMxB,GAAG,GAAG,EAAE;IACd,IAAM2B,GAAG,GAAG,IAAIC,IAAI,CAAC,CAAC;IACtB,IAAMC,SAAS,GAAG,EAAE,GAAGF,GAAG,CAACG,OAAO,CAAC,CAAC;IACpC,IAAM/B,SAAS,GAAG3E,IAAI,CAACgD,IAAI,CAACuD,GAAG,CAAC;IAChC;IACA,IAAMhD,OAAO,GAAGrB,iBAAK,CAACyE,GAAG,CAAC3E,YAAY,CAACiB,GAAG,GAAG,GAAG,GAAG,KAAK,GAAGwD,SAAS,CAAC;IAErE,IAAIxE,OAAO,KAAK,MAAM,IAAIA,OAAO,KAAK,QAAQ,EAAE;MAC9C2C,GAAG,CAACgC,IAAI,CACN,IAAI5G,IAAI,CAAC6G,SAAS,CAACC,iBAAiB,CAACX,MAAM,CAAC,EAAE7D,GAAG,CAAC,cAAc,CAAC,EAAEiB,OAAO,EAAEvB,YAAY,CAC1F,CAAC;IACH,CAAC,MAAM;MACL4C,GAAG,CAACgC,IAAI,CACN,IAAI5G,IAAI,CAAC6G,SAAS,CAAC9E,OAAO,EAAEnC,EAAE,CAACmH,EAAE,CAAC,SAAS,CAAC,EAAExD,OAAO,EAAEvB,YAAY,CACrE,CAAC;IACH;IACA;IACA,IAAMgF,OAAO,GAAG/E,OAAO,KAAK,QAAQ,GAAGiE,UAAU,0BAAAe,MAAA,CAA0BC,IAAI,CAACtE,EAAE,CAAC,CAAE;IACrFgC,GAAG,CAACgC,IAAI,CACN,IAAI5G,IAAI,CAAC6G,SAAS,CAChBtD,OAAO,EACP3D,EAAE,CAACuH,IAAI,CAAC,SAAS,CAAC,EAClBjF,iBAAK,CAACgD,OAAO,CAAC8B,OAAO,CAAC,EACtBhF,YACF,CACF,CAAC;IACD4C,GAAG,CAACgC,IAAI,CACN,IAAI5G,IAAI,CAAC6G,SAAS,CAACtD,OAAO,EAAEjB,GAAG,CAAC,SAAS,CAAC,EAAEqC,SAAS,EAAE3C,YAAY,CACrE,CAAC;IACD,IAAIY,EAAE,EAAE;MACNgC,GAAG,CAACgC,IAAI,CACN,IAAI5G,IAAI,CAAC6G,SAAS,CAACtD,OAAO,EAAE3D,EAAE,CAACwH,IAAI,CAAC,OAAO,CAAC,EAAExE,EAAE,EAAEZ,YAAY,CAChE,CAAC;IACH;IACA,OAAO;MAAEuB,OAAO,EAAPA,OAAO;MAAEoB,SAAS,EAATA,SAAS;MAAEC,GAAG,EAAHA;IAAI,CAAC;EACpC,CAAC;EAED,SAASsC,IAAIA,CAAEG,MAAM,EAAE;IACrB,IAAMC,CAAC,GAAGpF,iBAAK,CAACqF,GAAG,CAACF,MAAM,EAAE5F,EAAE,CAAC7B,EAAE,CAACwH,IAAI,CAAC,MAAM,CAAC,CAAC;IAC/C,IAAIE,CAAC,EAAE,OAAO,EAAE,GAAGA,CAAC,CAAC5C,KAAK;IAC1B,OAAO,EAAE,GAAGxE,KAAK,CAACsH,KAAK,CAACH,MAAM,CAAC;EACjC;EAEA,SAAS9B,cAAcA,CAAEkC,GAAG,EAAEC,OAAO,EAAEC,IAAI,EAAEpE,OAAO,EAAE;IACpD,IAAMqE,UAAU,GAAGH,GAAG,CAAChE,WAAW,CAACX,MAAM,CAACoE,IAAI,CAACQ,OAAO,CAAC,EAAEA,OAAO,CAAC,CAAC;IAClE,IAAIA,OAAO,CAACzE,GAAG,EAAE;MACff,iBAAK,CAAC2F,OAAO,CAACC,gBAAgB,CAACJ,OAAO,CAACvF,GAAG,CAAC,CAAC,EAAEmE,SAAS,EAAE,UACvDyB,GAAG,EACHC,KAAK,EACL;QACAJ,UAAU,CAACvE,WAAW,GAAG6D,IAAI,CAACQ,OAAO,CAAC;MACxC,CAAC,CAAC;IACJ;IACAD,GAAG,CAAChE,WAAW,CAAC5B,GAAG,CAACa,aAAa,CAAC,IAAI,CAAC,CAAC;IACxC+E,GAAG,CAAChE,WAAW,CAACX,MAAM,CAAC6E,IAAI,EAAEpE,OAAO,CAAC,CAAC;EACxC;;EAEA;;EAEA,SAAS0E,YAAYA,CAAEC,KAAK,EAAEvF,YAAY,EAAE;IAC1C,IAAMwF,SAAS,GAAG,CAAC,CAAC;IACpB,IAAIC,GAAG,EAAEC,IAAI;IACb,KAAKD,GAAG,GAAGzF,YAAY,CAAC2F,UAAU,EAAEF,GAAG,EAAEA,GAAG,GAAGA,GAAG,CAACG,WAAW,EAAE;MAC9D,IAAIH,GAAG,CAACI,YAAY,EAAE;QACpBL,SAAS,CAACC,GAAG,CAACI,YAAY,CAACvF,GAAG,CAAC,GAAG,IAAI;MACxC;IACF;IACA,IAAMwF,QAAQ,GAAGvG,iBAAK,CAACwG,IAAI,CAACR,KAAK,EAAEtI,EAAE,CAACmH,EAAE,CAAC,SAAS,CAAC,CAAC;IACpD,IAAM4B,MAAM,GAAG,CAAC,CAAC;IACjBF,QAAQ,CAACG,OAAO,CAAC,UAAUC,CAAC,EAAE;MAC5BF,MAAM,CAACE,CAAC,CAAC5F,GAAG,CAAC,GAAG,IAAI;MACpB,IAAI,CAACkF,SAAS,CAACU,CAAC,CAAC5F,GAAG,CAAC,EAAE;QACrB6F,UAAU,CAACD,CAAC,CAAC;MACf;IACF,CAAC,CAAC;;IAEF;IACA,KAAKT,GAAG,GAAGzF,YAAY,CAAC2F,UAAU,EAAEF,GAAG,GAAI;MACzCC,IAAI,GAAGD,GAAG,CAACG,WAAW;MACtB,IAAIH,GAAG,CAACI,YAAY,IAAI,CAACG,MAAM,CAACP,GAAG,CAACI,YAAY,CAACvF,GAAG,CAAC,EAAE;QACrDN,YAAY,CAACoG,WAAW,CAACX,GAAG,CAAC;MAC/B;MACAA,GAAG,GAAGC,IAAI;IACZ;EACF;EAEA,IAAMvB,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAavD,OAAO,EAAE;IAC3C,IAAIyF,GAAG,GAAGzF,OAAO;IACjB;IACA,OAAOyF,GAAG,EAAE;MACV;MACAA,GAAG,GAAG9G,iBAAK,CAAC+G,kBAAkB,CAAC1F,OAAO,EAAEjB,GAAG,CAAC,cAAc,CAAC,CAAC;IAC9D;IACA,OAAO0G,GAAG;EACZ,CAAC;EAED,IAAME,cAAc;IAAA,IAAAC,IAAA,OAAAC,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAAG,SAAAC,QAAgBhG,OAAO;MAAA,IAAAiG,SAAA;MAAA,OAAAH,YAAA,YAAAI,IAAA,UAAAC,SAAAC,QAAA;QAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;UAAA;YAAAF,QAAA,CAAAE,IAAA;YAAA,OAEpB3H,iBAAK,CAAC4H,mBAAmB,CAACvG,OAAO,EAAEvB,YAAY,CAAC;UAAA;YAAlEwH,SAAS,GAAAG,QAAA,CAAAI,IAAA;YACflH,OAAO,CAACuC,MAAM,CAACoE,SAAS,EAAE,EAAE,EAAE,UAAUvG,GAAG,EAAE+G,EAAE,EAAEjF,IAAI,EAAE;cACrD,IAAI,CAACiF,EAAE,EAAE;gBACPrG,QAAQ,CAACG,KAAK,CAAC,uBAAuB,GAAGiB,IAAI,CAAC;cAChD,CAAC,MAAM;gBACLkD,YAAY,CAAClG,OAAO,EAAEY,YAAY,CAAC;cACrC;YACF,CAAC,CAAC;UAAA;UAAA;YAAA,OAAAgH,QAAA,CAAAM,IAAA;QAAA;MAAA,GAAAV,OAAA;IAAA,CACH;IAAA,gBAVKL,cAAcA,CAAAgB,EAAA;MAAA,OAAAf,IAAA,CAAAgB,KAAA,OAAA/D,SAAA;IAAA;EAAA,GAUnB;EAED,IAAM0C,UAAU,GAAG,SAAbA,UAAUA,CAAavF,OAAO,EAAE;IACpC,IAAM0B,QAAQ,GAAG;MACf,MAAM,EAAE1B,OAAO;MACf,UAAU,EAAErB,iBAAK,CAACqF,GAAG,CAAChE,OAAO,EAAE3D,EAAE,CAACwH,IAAI,CAAC,OAAO,CAAC,CAAC;MAChD,OAAO,EAAElF,iBAAK,CAACqF,GAAG,CAAChE,OAAO,EAAEjB,GAAG,CAAC,SAAS,CAAC,CAAC;MAC3C,UAAU,EAAEJ,iBAAK,CAACqF,GAAG,CAAChE,OAAO,EAAE3D,EAAE,CAACuH,IAAI,CAAC,SAAS,CAAC;IACnD,CAAC;IACDhC,aAAa,CAACF,QAAQ,EAAE,IAAI,CAAC,EAAC;EAChC,CAAC;;EAED,IAAME,aAAa,GAAG,SAAhBA,aAAaA,CAAaF,QAAQ,EAAEmF,KAAK,EAAE;IAC/C,IAAM1C,OAAO,GAAGzC,QAAQ,CAAC,UAAU,CAAC;IACpC,IAAM1B,OAAO,GAAG0B,QAAQ,CAAC,MAAM,CAAC;IAChC,IAAM0C,IAAI,GAAG1C,QAAQ,CAAC,OAAO,CAAC;IAC9B,IAAMoF,OAAO,GAAGpF,QAAQ,CAAC,UAAU,CAAC;IAEpC,IAAMqF,UAAU,GAAG3C,IAAI,CAACjD,KAAK;IAC7B,IAAM6F,EAAE,GAAG1I,GAAG,CAACa,aAAa,CAAC,IAAI,CAAC;IAClC6H,EAAE,CAACnG,SAAS,GAAGkG,UAAU;IACzBC,EAAE,CAAC/B,YAAY,GAAGjF,OAAO;IAEzB,IAAIiH,IAAI,GAAG,KAAK;IAChB,KAAK,IAAIpC,GAAG,GAAGzF,YAAY,CAAC2F,UAAU,GAAIF,GAAG,GAAGA,GAAG,CAACG,WAAW,EAAE;MAC/D,IAAI,CAACH,GAAG,EAAE;QACR;QACA;MACF;MACA,IACGkC,UAAU,GAAGlC,GAAG,CAAChE,SAAS,IAAI7B,WAAW,IACzC+H,UAAU,GAAGlC,GAAG,CAAChE,SAAS,IAAI,CAAC7B,WAAY,EAC5C;QACAI,YAAY,CAAC8H,YAAY,CAACF,EAAE,EAAEnC,GAAG,CAAC;QAClCoC,IAAI,GAAG,IAAI;QACX;MACF;IACF;IACA,IAAI,CAACA,IAAI,EAAE;MACT7H,YAAY,CAACc,WAAW,CAAC8G,EAAE,CAAC;IAC9B;IAEA,IAAM9C,GAAG,GAAG5F,GAAG,CAACa,aAAa,CAAC,IAAI,CAAC;IACnC6H,EAAE,CAAC9G,WAAW,CAACgE,GAAG,CAAC;IACnBlC,cAAc,CAACkC,GAAG,EAAEC,OAAO,EAAEjG,EAAE,CAACtB,OAAO,CAACuK,SAAS,CAACJ,UAAU,CAAC,EAAE/G,OAAO,CAAC;IAEvE,IAAMoH,GAAG,GAAG9I,GAAG,CAACa,aAAa,CAAC,IAAI,CAAC;IACnC6H,EAAE,CAAC9G,WAAW,CAACkH,GAAG,CAAC;IACnB,IAAMnH,GAAG,GAAG3B,GAAG,CAACa,aAAa,CAAC,GAAG,CAAC;IAClCc,GAAG,CAACN,YAAY,CACd,OAAO,EACPV,gBAAgB,IACb4H,KAAK,GAAG,4BAA4B,GAAG,2BAA2B,CACvE,CAAC;IACDO,GAAG,CAAClH,WAAW,CAACD,GAAG,CAAC;IACpBA,GAAG,CAACH,WAAW,GAAGgH,OAAO,CAAC3F,KAAK;IAE/B,IAAMkG,GAAG,GAAG/I,GAAG,CAACa,aAAa,CAAC,IAAI,CAAC;IACnC6H,EAAE,CAAC9G,WAAW,CAACmH,GAAG,CAAC;IAEnB,IAAMC,SAAS,GAAGhJ,GAAG,CAACa,aAAa,CAAC,QAAQ,CAAC;IAC7CkI,GAAG,CAACnH,WAAW,CAACoH,SAAS,CAAC;IAC1BA,SAAS,CAACxH,WAAW,GAAG,GAAG;IAE3BkH,EAAE,CAACrH,YAAY,CAAC,OAAO,EAAE,cAAc,CAAC,EAAC;IACzC2H,SAAS,CAAC3H,YAAY,CAAC,OAAO,EAAE,kBAAkB,CAAC;IACnD2H,SAAS,CAAC3H,YAAY,CAAC,OAAO,EAAE,aAAa,CAAC;IAC9C2H,SAAS,CAAC1H,gBAAgB,CACxB,OAAO,EACP,UAAU2H,MAAM,EAAE;MAChBF,GAAG,CAAC7B,WAAW,CAAC8B,SAAS,CAAC,EAAC;MAC3B,IAAME,YAAY,GAAGlJ,GAAG,CAACa,aAAa,CAAC,QAAQ,CAAC;MAChDqI,YAAY,CAAC1H,WAAW,GAAG,QAAQ;MACnCuH,GAAG,CAACnH,WAAW,CAACsH,YAAY,CAAC,CAAC5H,gBAAgB,CAC5C,OAAO,EACP,UAAU2H,MAAM,EAAE;QAChBF,GAAG,CAAC7B,WAAW,CAACiC,UAAU,CAAC;QAC3BJ,GAAG,CAAC7B,WAAW,CAACgC,YAAY,CAAC;QAC7BH,GAAG,CAACnH,WAAW,CAACoH,SAAS,CAAC;MAC5B,CAAC,EACD,KACF,CAAC;MACD,IAAMG,UAAU,GAAGnJ,GAAG,CAACa,aAAa,CAAC,QAAQ,CAAC;MAC9CsI,UAAU,CAAC3H,WAAW,GAAG,gBAAgB;MACzCuH,GAAG,CAACnH,WAAW,CAACuH,UAAU,CAAC,CAAC7H,gBAAgB,CAC1C,OAAO,EACP,UAAU2H,MAAM,EAAE;QAAE;QAClBF,GAAG,CAAC7B,WAAW,CAACiC,UAAU,CAAC;QAC3BJ,GAAG,CAAC7B,WAAW,CAACgC,YAAY,CAAC;QAC7B;QACA,IAAInI,EAAE,CAAC8B,KAAK,KAAKxC,iBAAK,CAACqF,GAAG,CAAChE,OAAO,EAAE3D,EAAE,CAACwH,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC1C,KAAK,EAAE;UAC3D,IAAAuG,WAAA,GAAgBxG,SAAS,CAAC,CAAC;YAAnBG,GAAG,GAAAqG,WAAA,CAAHrG,GAAG,CAAgB,CAAC;UAC5B/B,OAAO,CAACuC,MAAM,CAAC,EAAE,EAAER,GAAG,CAAC;QACzB;MACF,CAAC,EACD,KACF,CAAC;IACH,CAAC,EACD,KACF,CAAC;EACH,CAAC;;EAED;;EAEAjC,YAAY,GAAGd,GAAG,CAACa,aAAa,CAAC,OAAO,CAAC;EACzCC,YAAY,CAACyH,KAAK,GAAG,KAAK;EAC1B3H,GAAG,CAACgB,WAAW,CAACd,YAAY,CAAC;EAC7BA,YAAY,CAACO,YAAY,CAAC,OAAO,EAAE,cAAc,CAAC,EAAC;;EAEnD,IAAMqH,EAAE,GAAGxG,cAAc,CAAC,CAAC;EAC3B,IAAIxB,WAAW,EAAE;IACfI,YAAY,CAAC8H,YAAY,CAACF,EAAE,EAAE5H,YAAY,CAAC2F,UAAU,CAAC,EAAC;EACzD,CAAC,MAAM;IACL3F,YAAY,CAACc,WAAW,CAAC8G,EAAE,CAAC,EAAC;EAC/B;;EAEA,IAAIW,KAAK;EACT;EACA,IAAIjJ,OAAO,CAACiJ,KAAK,EAAE;IACjBA,KAAK,GAAGjJ,OAAO,CAACiJ,KAAK;EACvB,CAAC,MAAM;IACLA,KAAK,GAAG,IAAIlL,IAAI,CAACmL,KAAK,CAAC,UAAU,CAAC;IAClC,IAAMC,CAAC,GAAG,CAAC,CAAC,EAAC;IACb,IAAMC,EAAE,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC;IAChDA,EAAE,CAACzC,OAAO,CAAC,UAAU0C,CAAC,EAAE;MACtBJ,KAAK,CAACK,IAAI,CAAC3E,IAAI,CAAEwE,CAAC,CAACE,CAAC,CAAC,GAAGtL,IAAI,CAACwL,QAAQ,CAACF,CAAC,CAAE,CAAC;IAC5C,CAAC,CAAC;IACFJ,KAAK,CAACO,GAAG,CAACC,GAAG,CAAC3J,OAAO,EAAEK,EAAE,CAAC,SAAS,CAAC,EAAEgJ,CAAC,CAACpC,GAAG,CAAC;IAC5CkC,KAAK,CAACO,GAAG,CAACC,GAAG,CAACN,CAAC,CAACpC,GAAG,EAAEpJ,EAAE,CAAC+L,GAAG,CAAC,SAAS,CAAC,EAAEP,CAAC,CAACzD,IAAI,CAAC;IAC/CuD,KAAK,CAACO,GAAG,CAACC,GAAG,CAACN,CAAC,CAACpC,GAAG,EAAEpJ,EAAE,CAACwH,IAAI,CAAC,OAAO,CAAC,EAAEgE,CAAC,CAAC1D,OAAO,CAAC;IACjDwD,KAAK,CAACO,GAAG,CAACC,GAAG,CAACN,CAAC,CAACpC,GAAG,EAAEpJ,EAAE,CAACuH,IAAI,CAAC,SAAS,CAAC,EAAEiE,CAAC,CAACf,OAAO,CAAC;EACrD;EAEA,SAASuB,SAASA,CAAA,EAAI;IACpBjJ,YAAY,CAACyH,KAAK,GAAG,IAAI,EAAC;EAC5B;;EACAlI,iBAAK,CAACgJ,KAAK,CAACA,KAAK,EAAE/F,aAAa,EAAEmB,SAAS,EAAEsF,SAAS,CAAC;EACvDnJ,GAAG,CAACoJ,OAAO,GAAG,YAAY;IACxB5D,YAAY,CAAClG,OAAO,EAAEY,YAAY,CAAC;EACrC,CAAC;EACD;EACA,OAAOF,GAAG;AACZ"}
1
+ {"version":3,"file":"thread.js","names":["_iconBase","require","_solidLogic","_index","ns","_interopRequireWildcard","login","pad","$rdf","style","utils","widgets","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","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","uri","setAttribute","addEventListener","openHrefInOutlineMode","textContent","mention","message","pre","appendChild","createTextNode","announce","log","warn","error","newMessageForm","form","lhs","middle","rhs","AJAR_date","sendMessage","field","disabled","_appendMsg","appendMsg","value","dateStamp","sts","sendComplete","success","body","errorMessageBlock","bindings","literal","renderMessage","update","sendButton","turnOnInput","creatorAndDate","innerHTML","rows","keyCode","altKey","button","iconBase","buttonStyle","context","ensureLoggedIn","then","fieldValue","oldMsg","arguments","length","undefined","now","Date","timestamp","getTime","sym","push","Statement","mostRecentVersion","wf","msgBody","concat","nick","sioc","foaf","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","_ref","_asyncToGenerator2","_regenerator","mark","_callee","deletions","wrap","_callee$","_context","prev","next","connectedStatements","sent","ok","stop","_x","apply","fresh","content","dateString","tr","done","insertBefore","shortDate","td2","td3","delButton","_event","cancelButton","sureButton","_appendMsg2","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 // Shared by initial build and addMessageFromBindings\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 = function () {\n // titlefield.setAttribute('class','pendingedit')\n // titlefield.disabled = true\n field.setAttribute('class', 'pendingedit')\n field.disabled = true\n const { message, dateStamp, sts } = 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 function (e) {\n // User preference?\n if (e.keyCode === 13) {\n if (!e.altKey) {\n // Alt-Enter just adds a new line\n 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 sendMessage = function (oldMsg, options) { // alain\n // titlefield.setAttribute('class','pendingedit')\n // titlefield.disabled = true\n field.setAttribute('class', 'pendingedit')\n field.disabled = true\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(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' ? field.value : `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\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\n const appendMsg = 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(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 // listMsg.push(msg)\n msg = store.statementsMatching(message, DCT('isReplacedBy'))\n }\n return msg\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 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 } = 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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"}
@@ -56,7 +56,6 @@ function newThingUI(createContext, dataBrowserContext, thePanes) {
56
56
  iconArray[i].setAttribute('style', st); // eg 'background-color: #ccc;'
57
57
  }
58
58
  }
59
-
60
59
  function selectTool(icon) {
61
60
  styleTheIcons('display: none;'); // 'background-color: #ccc;'
62
61
  icon.setAttribute('style', iconStyle + 'background-color: yellow;');
@@ -111,7 +110,6 @@ function newThingUI(createContext, dataBrowserContext, thePanes) {
111
110
  // selectUI.parentNode.removeChild(selectUI) // Clean up
112
111
  // selectUIParent.removeChild(selectUI) // Clean up
113
112
  }
114
-
115
113
  selectNewTool(); // toggle star to plain and menu vanish again
116
114
  })["catch"](function (err) {
117
115
  complain(err);
@@ -1 +1 @@
1
- {"version":3,"file":"create.js","names":["_solidLogic","require","debug","_interopRequireWildcard","_iconBase","_login","ns","utils","widgets","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","kb","solidLogicSingleton","store","newThingUI","createContext","dataBrowserContext","thePanes","dom","div","me","uri","Error","iconStyle","star","appendChild","createElement","visible","setAttribute","icons","iconBase","complain","message","pre","createTextNode","styleTheIcons","style","iconArray","length","st","disabled","selectTool","icon","selectNewTool","_event","addEventListener","makeNewAppInstance","options","Promise","resolve","reject","selectUI","callbackWS","ws","newBase","ensureLoadedProfile","then","_context","newPaneOptions","assign","folder","undefined","workspace","opt","log","concat","pane","name","mintNew","newInstance","tail","slice","isPackage","includes","add","ldp","sym","doc","refreshTarget","refresh","p","innerHTML","noun","err","pa","mintClass","label","appPathSegment","toUpperCase","selectWorkspace","gotName","endsWith","encodeURIComponent","askName","foaf","mintingPanes","values","filter","mintingClassMap","reduce","classMap","forEach","push","event","iconEle","noIndexHTML"],"sources":["../../src/create/create.ts"],"sourcesContent":["/* create.js UI to craete new objects in the solid-app-set world\n **\n */\n\nimport { DataBrowserContext, NewPaneOptions, PaneDefinition } from 'pane-registry'\nimport { solidLogicSingleton } from 'solid-logic'\nimport * as debug from '../debug'\nimport { icons } from '../iconBase'\nimport { ensureLoadedProfile, selectWorkspace } from '../login/login'\nimport * as ns from '../ns'\nimport * as utils from '../utils'\nimport * as widgets from '../widgets'\nimport { CreateContext, NewAppInstanceOptions } from './types'\n\nconst kb = solidLogicSingleton.store\n\n/* newThingUI -- return UI for user to select a new object, folder, etc\n **\n ** context must include: dom, div,\n ** optional: folder: NamedNode -- the folder where the thing is bring put\n ** (suppresses asking for a full URI or workspace)\n **\n */\nexport function newThingUI (\n createContext: CreateContext,\n dataBrowserContext: DataBrowserContext,\n thePanes: Array<PaneDefinition>\n): void {\n const dom = createContext.dom\n const div = createContext.div\n if (createContext.me && !createContext.me.uri) {\n throw new Error('newThingUI: Invalid userid: ' + createContext.me)\n }\n\n const iconStyle = 'padding: 0.7em; width: 2em; height: 2em;' // was: 'padding: 1em; width: 3em; height: 3em;'\n const star = div.appendChild(dom.createElement('img'))\n let visible = false // the inividual tools tools\n // noun_272948.svg = black star\n // noun_34653_green.svg = green plus\n star.setAttribute('src', icons.iconBase + 'noun_34653_green.svg')\n star.setAttribute('style', iconStyle)\n star.setAttribute('title', 'Add another tool')\n\n const complain = function complain (message) {\n const pre = div.appendChild(dom.createElement('pre'))\n pre.setAttribute('style', 'background-color: pink')\n pre.appendChild(dom.createTextNode(message))\n }\n\n function styleTheIcons (style) {\n for (let i = 0; i < iconArray.length; i++) {\n let st = iconStyle + style\n if (iconArray[i].disabled) {\n // @@ unused\n st += 'opacity: 0.3;'\n }\n iconArray[i].setAttribute('style', st) // eg 'background-color: #ccc;'\n }\n }\n\n function selectTool (icon) {\n styleTheIcons('display: none;') // 'background-color: #ccc;'\n icon.setAttribute('style', iconStyle + 'background-color: yellow;')\n }\n\n function selectNewTool (_event?) {\n visible = !visible\n star.setAttribute(\n 'style',\n iconStyle + (visible ? 'background-color: yellow;' : '')\n )\n styleTheIcons(visible ? '' : 'display: none;')\n }\n\n star.addEventListener('click', selectNewTool)\n\n function makeNewAppInstance (options: NewAppInstanceOptions) {\n return new Promise(function (resolve, reject) {\n let selectUI // , selectUIParent\n function callbackWS (ws, newBase) {\n ensureLoadedProfile(createContext).then(\n _context => {\n const newPaneOptions: NewPaneOptions = Object.assign({\n newBase,\n folder: options.folder || undefined,\n workspace: ws\n }, options)\n for (const opt in options) {\n // get div, dom, me, folder, pane, refreshTable\n newPaneOptions[opt] = options[opt]\n }\n debug.log(`newThingUI: Minting new ${newPaneOptions.pane.name} at ${newPaneOptions.newBase}`)\n options.pane\n .mintNew!(dataBrowserContext, newPaneOptions)\n .then(function (newPaneOptions) {\n if (!newPaneOptions || !newPaneOptions.newInstance) {\n throw new Error('Cannot mint new - missing newInstance')\n }\n if (newPaneOptions.folder) {\n const tail = newPaneOptions.newInstance.uri.slice(\n newPaneOptions.folder.uri.length\n )\n const isPackage = tail.includes('/')\n debug.log(' new thing is packge? ' + isPackage)\n if (isPackage) {\n kb.add(\n newPaneOptions.folder,\n ns.ldp('contains'),\n kb.sym(newPaneOptions.newBase),\n newPaneOptions.folder.doc()\n )\n } else {\n // single file\n kb.add(\n newPaneOptions.folder,\n ns.ldp('contains'),\n newPaneOptions.newInstance,\n newPaneOptions.folder.doc()\n ) // Ping the patch system?\n }\n // @ts-ignore @@ TODO check whether refresh can exist here. Either fix type or remove unreachable code\n if (newPaneOptions.refreshTarget && newPaneOptions.refreshTarget.refresh) {\n // @@ TODO Remove the need to cast as any\n ;(newPaneOptions.refreshTarget as any).refresh() // Refresh the containing display\n }\n // selectUI.parentNode.removeChild(selectUI) It removes itself\n } else {\n const p = options.div.appendChild(dom.createElement('p'))\n p.setAttribute('style', 'font-size: 120%;')\n // Make link to new thing\n p.innerHTML =\n \"Your <a target='_blank' href='\" +\n newPaneOptions.newInstance.uri +\n \"'><b>new \" +\n options.noun +\n '</b></a> is ready to be set up. ' +\n \"<br/><br/><a target='_blank' href='\" +\n newPaneOptions.newInstance.uri +\n \"'>Go to your new \" +\n options.noun +\n '.</a>'\n // selectUI.parentNode.removeChild(selectUI) // Clean up\n // selectUIParent.removeChild(selectUI) // Clean up\n }\n selectNewTool() // toggle star to plain and menu vanish again\n })\n .catch(function (err) {\n complain(err)\n reject(err)\n })\n },\n err => {\n // login fails\n complain('Error logging on: ' + err)\n }\n )\n } // callbackWS\n\n const pa = options.pane\n // options.appPathSegment = pa.name // was 'edu.mit.solid.pane.'\n options.noun = pa.mintClass ? utils.label(pa.mintClass) : pa.name\n options.appPathSegment = options.noun.slice(0, 1).toUpperCase() + options.noun.slice(1)\n\n if (!options.folder) {\n // No folder given? Ask user for full URI\n selectUI = selectWorkspace(dom, {\n noun: options.noun,\n appPathSegment: options.appPathSegment\n }, callbackWS)\n options.div.appendChild(selectUI)\n // selectUIParent = options.div\n } else {\n const gotName = function (name) {\n if (!name) {\n // selectUIParent.removeChild(selectUI) itremves itself if cancelled\n selectNewTool() // toggle star to plain and menu vanish again\n } else {\n let uri = options.folder!.uri\n if (!uri.endsWith('/')) {\n uri = uri + '/'\n }\n uri = uri + encodeURIComponent(name) + '/'\n callbackWS(null, uri)\n }\n }\n widgets\n .askName(\n dom,\n kb,\n options.div,\n ns.foaf('name'),\n null,\n options.noun\n )\n .then(gotName)\n // selectUI = getNameForm(dom, kb, options.noun, gotName)\n // options.div.appendChild(selectUI)\n // selectUIParent = options.div\n }\n })\n } // makeNewAppInstance\n\n const iconArray: Array<any> = []\n const mintingPanes = Object.values(thePanes).filter(pane => pane.mintNew)\n const mintingClassMap = mintingPanes.reduce((classMap, pane) => {\n if (pane.mintClass) {\n classMap[pane.mintClass.uri] = (classMap[pane.mintClass.uri] || 0) + 1\n }\n return classMap\n }, {})\n mintingPanes.forEach(pane => {\n // @@ TODO Remove the need to cast to any\n const icon: any = createContext.div.appendChild(dom.createElement('img'))\n icon.setAttribute('src', pane.icon)\n const noun = pane.mintClass\n ? mintingClassMap[pane.mintClass.uri] > 1\n ? `${utils.label(pane.mintClass)} (using ${pane.name} pane)`\n : utils.label(pane.mintClass)\n : pane.name + ' @@'\n icon.setAttribute('title', 'Make new ' + noun)\n icon.setAttribute('style', iconStyle + 'display: none;')\n iconArray.push(icon)\n if (!icon.disabled) {\n icon.addEventListener('click', function (e) {\n selectTool(icon)\n makeNewAppInstance({\n event: e,\n folder: createContext.folder || null,\n iconEle: icon,\n pane,\n noun,\n noIndexHTML: true, // do NOT @@ for now write a HTML file\n div: createContext.div,\n me: createContext.me,\n dom: createContext.dom,\n refreshTarget: createContext.refreshTarget\n })\n })\n }\n })\n}\n\n// Form to get the name of a new thing before we create it\n//\n// Used in contacts for new groups, individuals.\n//\n/*\nfunction getNameForm (dom, kb, classLabel, gotNameCallback) {\n const form = dom.createElement('div') // form is broken as HTML behaviour can resurface on js error\n form.innerHTML = '<p>Name of new ' + classLabel + ':</p>'\n const namefield = dom.createElement('input')\n namefield.setAttribute('type', 'text')\n namefield.setAttribute('size', '30')\n namefield.setAttribute('style', style.textInputStyle)\n namefield.setAttribute('maxLength', '2048') // No arbitrary limits\n namefield.select() // focus next user input\n\n const gotName = function () {\n namefield.setAttribute('class', 'pendingedit')\n namefield.disabled = true\n continueButton.disabled = true\n cancel.disabled = true\n gotNameCallback(true, namefield.value)\n }\n\n namefield.addEventListener('keyup', function (e) {\n if (e.keyCode === 13) {\n gotName()\n }\n }, false)\n form.appendChild(namefield)\n\n form.appendChild(dom.createElement('br'))\n\n const cancel = form.appendChild(widgets.cancelButton(dom))\n cancel.addEventListener('click', function (e) {\n form.parentNode.removeChild(form)\n gotNameCallback(false)\n }, false)\n\n const continueButton = form.appendChild(widgets.continueButton(dom))\n continueButton.addEventListener('click', function (e) {\n gotName()\n }, false)\n\n return form\n}\n*/\n"],"mappings":";;;;;;;AAKA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAC,uBAAA,CAAAF,OAAA;AACA,IAAAG,SAAA,GAAAH,OAAA;AACA,IAAAI,MAAA,GAAAJ,OAAA;AACA,IAAAK,EAAA,GAAAH,uBAAA,CAAAF,OAAA;AACA,IAAAM,KAAA,GAAAJ,uBAAA,CAAAF,OAAA;AACA,IAAAO,OAAA,GAAAL,uBAAA,CAAAF,OAAA;AAAqC,SAAAQ,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAP,wBAAAO,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,gBAAAK,OAAA,CAAAL,CAAA,0BAAAA,CAAA,sBAAAA,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAc,CAAA,SAAAI,CAAA,GAAAR,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAI,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAI,CAAA,IAAAV,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,cAAAR,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAgB,GAAA,CAAAnB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAXrC;AACA;AACA;;AAYA,IAAMY,EAAE,GAAGC,+BAAmB,CAACC,KAAK;;AAEpC;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASC,UAAUA,CACxBC,aAA4B,EAC5BC,kBAAsC,EACtCC,QAA+B,EACzB;EACN,IAAMC,GAAG,GAAGH,aAAa,CAACG,GAAG;EAC7B,IAAMC,GAAG,GAAGJ,aAAa,CAACI,GAAG;EAC7B,IAAIJ,aAAa,CAACK,EAAE,IAAI,CAACL,aAAa,CAACK,EAAE,CAACC,GAAG,EAAE;IAC7C,MAAM,IAAIC,KAAK,CAAC,+BAA+B,GAAGP,aAAa,CAACK,EAAE,CAAC;EACrE;EAEA,IAAMG,SAAS,GAAG,0CAA0C,EAAC;EAC7D,IAAMC,IAAI,GAAGL,GAAG,CAACM,WAAW,CAACP,GAAG,CAACQ,aAAa,CAAC,KAAK,CAAC,CAAC;EACtD,IAAIC,OAAO,GAAG,KAAK,EAAC;EACpB;EACA;EACAH,IAAI,CAACI,YAAY,CAAC,KAAK,EAAEC,eAAK,CAACC,QAAQ,GAAG,sBAAsB,CAAC;EACjEN,IAAI,CAACI,YAAY,CAAC,OAAO,EAAEL,SAAS,CAAC;EACrCC,IAAI,CAACI,YAAY,CAAC,OAAO,EAAE,kBAAkB,CAAC;EAE9C,IAAMG,QAAQ,GAAG,SAASA,QAAQA,CAAEC,OAAO,EAAE;IAC3C,IAAMC,GAAG,GAAGd,GAAG,CAACM,WAAW,CAACP,GAAG,CAACQ,aAAa,CAAC,KAAK,CAAC,CAAC;IACrDO,GAAG,CAACL,YAAY,CAAC,OAAO,EAAE,wBAAwB,CAAC;IACnDK,GAAG,CAACR,WAAW,CAACP,GAAG,CAACgB,cAAc,CAACF,OAAO,CAAC,CAAC;EAC9C,CAAC;EAED,SAASG,aAAaA,CAAEC,KAAK,EAAE;IAC7B,KAAK,IAAI3B,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG4B,SAAS,CAACC,MAAM,EAAE7B,CAAC,EAAE,EAAE;MACzC,IAAI8B,EAAE,GAAGhB,SAAS,GAAGa,KAAK;MAC1B,IAAIC,SAAS,CAAC5B,CAAC,CAAC,CAAC+B,QAAQ,EAAE;QACzB;QACAD,EAAE,IAAI,eAAe;MACvB;MACAF,SAAS,CAAC5B,CAAC,CAAC,CAACmB,YAAY,CAAC,OAAO,EAAEW,EAAE,CAAC,EAAC;IACzC;EACF;;EAEA,SAASE,UAAUA,CAAEC,IAAI,EAAE;IACzBP,aAAa,CAAC,gBAAgB,CAAC,EAAC;IAChCO,IAAI,CAACd,YAAY,CAAC,OAAO,EAAEL,SAAS,GAAG,2BAA2B,CAAC;EACrE;EAEA,SAASoB,aAAaA,CAAEC,MAAO,EAAE;IAC/BjB,OAAO,GAAG,CAACA,OAAO;IAClBH,IAAI,CAACI,YAAY,CACf,OAAO,EACPL,SAAS,IAAII,OAAO,GAAG,2BAA2B,GAAG,EAAE,CACzD,CAAC;IACDQ,aAAa,CAACR,OAAO,GAAG,EAAE,GAAG,gBAAgB,CAAC;EAChD;EAEAH,IAAI,CAACqB,gBAAgB,CAAC,OAAO,EAAEF,aAAa,CAAC;EAE7C,SAASG,kBAAkBA,CAAEC,OAA8B,EAAE;IAC3D,OAAO,IAAIC,OAAO,CAAC,UAAUC,OAAO,EAAEC,MAAM,EAAE;MAC5C,IAAIC,QAAQ,EAAC;MACb,SAASC,UAAUA,CAAEC,EAAE,EAAEC,OAAO,EAAE;QAChC,IAAAC,0BAAmB,EAACxC,aAAa,CAAC,CAACyC,IAAI,CACrC,UAAAC,QAAQ,EAAI;UACV,IAAMC,cAA8B,GAAGxD,MAAM,CAACyD,MAAM,CAAC;YACnDL,OAAO,EAAPA,OAAO;YACPM,MAAM,EAAEb,OAAO,CAACa,MAAM,IAAIC,SAAS;YACnCC,SAAS,EAAET;UACb,CAAC,EAAEN,OAAO,CAAC;UACX,KAAK,IAAMgB,GAAG,IAAIhB,OAAO,EAAE;YACzB;YACAW,cAAc,CAACK,GAAG,CAAC,GAAGhB,OAAO,CAACgB,GAAG,CAAC;UACpC;UACAhF,KAAK,CAACiF,GAAG,4BAAAC,MAAA,CAA4BP,cAAc,CAACQ,IAAI,CAACC,IAAI,UAAAF,MAAA,CAAOP,cAAc,CAACJ,OAAO,CAAE,CAAC;UAC7FP,OAAO,CAACmB,IAAI,CACTE,OAAO,CAAEpD,kBAAkB,EAAE0C,cAAc,CAAC,CAC5CF,IAAI,CAAC,UAAUE,cAAc,EAAE;YAC9B,IAAI,CAACA,cAAc,IAAI,CAACA,cAAc,CAACW,WAAW,EAAE;cAClD,MAAM,IAAI/C,KAAK,CAAC,uCAAuC,CAAC;YAC1D;YACA,IAAIoC,cAAc,CAACE,MAAM,EAAE;cACzB,IAAMU,IAAI,GAAGZ,cAAc,CAACW,WAAW,CAAChD,GAAG,CAACkD,KAAK,CAC/Cb,cAAc,CAACE,MAAM,CAACvC,GAAG,CAACiB,MAC5B,CAAC;cACD,IAAMkC,SAAS,GAAGF,IAAI,CAACG,QAAQ,CAAC,GAAG,CAAC;cACpC1F,KAAK,CAACiF,GAAG,CAAC,yBAAyB,GAAGQ,SAAS,CAAC;cAChD,IAAIA,SAAS,EAAE;gBACb7D,EAAE,CAAC+D,GAAG,CACJhB,cAAc,CAACE,MAAM,EACrBzE,EAAE,CAACwF,GAAG,CAAC,UAAU,CAAC,EAClBhE,EAAE,CAACiE,GAAG,CAAClB,cAAc,CAACJ,OAAO,CAAC,EAC9BI,cAAc,CAACE,MAAM,CAACiB,GAAG,CAAC,CAC5B,CAAC;cACH,CAAC,MAAM;gBACL;gBACAlE,EAAE,CAAC+D,GAAG,CACJhB,cAAc,CAACE,MAAM,EACrBzE,EAAE,CAACwF,GAAG,CAAC,UAAU,CAAC,EAClBjB,cAAc,CAACW,WAAW,EAC1BX,cAAc,CAACE,MAAM,CAACiB,GAAG,CAAC,CAC5B,CAAC,EAAC;cACJ;cACA;cACA,IAAInB,cAAc,CAACoB,aAAa,IAAIpB,cAAc,CAACoB,aAAa,CAACC,OAAO,EAAE;gBACxE;gBACA;gBAAErB,cAAc,CAACoB,aAAa,CAASC,OAAO,CAAC,CAAC,EAAC;cACnD;cACA;YACF,CAAC,MAAM;cACL,IAAMC,CAAC,GAAGjC,OAAO,CAAC5B,GAAG,CAACM,WAAW,CAACP,GAAG,CAACQ,aAAa,CAAC,GAAG,CAAC,CAAC;cACzDsD,CAAC,CAACpD,YAAY,CAAC,OAAO,EAAE,kBAAkB,CAAC;cAC3C;cACAoD,CAAC,CAACC,SAAS,GACT,gCAAgC,GAChCvB,cAAc,CAACW,WAAW,CAAChD,GAAG,GAC9B,WAAW,GACX0B,OAAO,CAACmC,IAAI,GACZ,kCAAkC,GAClC,qCAAqC,GACrCxB,cAAc,CAACW,WAAW,CAAChD,GAAG,GAC9B,mBAAmB,GACnB0B,OAAO,CAACmC,IAAI,GACZ,OAAO;cACT;cACA;YACF;;YACAvC,aAAa,CAAC,CAAC,EAAC;UAClB,CAAC,CAAC,SACI,CAAC,UAAUwC,GAAG,EAAE;YACpBpD,QAAQ,CAACoD,GAAG,CAAC;YACbjC,MAAM,CAACiC,GAAG,CAAC;UACb,CAAC,CAAC;QACN,CAAC,EACD,UAAAA,GAAG,EAAI;UACL;UACApD,QAAQ,CAAC,oBAAoB,GAAGoD,GAAG,CAAC;QACtC,CACF,CAAC;MACH,CAAC,CAAC;;MAEF,IAAMC,EAAE,GAAGrC,OAAO,CAACmB,IAAI;MACvB;MACAnB,OAAO,CAACmC,IAAI,GAAGE,EAAE,CAACC,SAAS,GAAGjG,KAAK,CAACkG,KAAK,CAACF,EAAE,CAACC,SAAS,CAAC,GAAGD,EAAE,CAACjB,IAAI;MACjEpB,OAAO,CAACwC,cAAc,GAAGxC,OAAO,CAACmC,IAAI,CAACX,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAACiB,WAAW,CAAC,CAAC,GAAGzC,OAAO,CAACmC,IAAI,CAACX,KAAK,CAAC,CAAC,CAAC;MAEvF,IAAI,CAACxB,OAAO,CAACa,MAAM,EAAE;QACnB;QACAT,QAAQ,GAAG,IAAAsC,sBAAe,EAACvE,GAAG,EAAE;UAC9BgE,IAAI,EAAEnC,OAAO,CAACmC,IAAI;UAClBK,cAAc,EAAExC,OAAO,CAACwC;QAC1B,CAAC,EAAEnC,UAAU,CAAC;QACdL,OAAO,CAAC5B,GAAG,CAACM,WAAW,CAAC0B,QAAQ,CAAC;QACjC;MACF,CAAC,MAAM;QACL,IAAMuC,OAAO,GAAG,SAAVA,OAAOA,CAAavB,IAAI,EAAE;UAC9B,IAAI,CAACA,IAAI,EAAE;YACT;YACAxB,aAAa,CAAC,CAAC,EAAC;UAClB,CAAC,MAAM;YACL,IAAItB,GAAG,GAAG0B,OAAO,CAACa,MAAM,CAAEvC,GAAG;YAC7B,IAAI,CAACA,GAAG,CAACsE,QAAQ,CAAC,GAAG,CAAC,EAAE;cACtBtE,GAAG,GAAGA,GAAG,GAAG,GAAG;YACjB;YACAA,GAAG,GAAGA,GAAG,GAAGuE,kBAAkB,CAACzB,IAAI,CAAC,GAAG,GAAG;YAC1Cf,UAAU,CAAC,IAAI,EAAE/B,GAAG,CAAC;UACvB;QACF,CAAC;QACDhC,OAAO,CACJwG,OAAO,CACN3E,GAAG,EACHP,EAAE,EACFoC,OAAO,CAAC5B,GAAG,EACXhC,EAAE,CAAC2G,IAAI,CAAC,MAAM,CAAC,EACf,IAAI,EACJ/C,OAAO,CAACmC,IACV,CAAC,CACA1B,IAAI,CAACkC,OAAO,CAAC;QAChB;QACA;QACA;MACF;IACF,CAAC,CAAC;EACJ,CAAC,CAAC;;EAEF,IAAMrD,SAAqB,GAAG,EAAE;EAChC,IAAM0D,YAAY,GAAG7F,MAAM,CAAC8F,MAAM,CAAC/E,QAAQ,CAAC,CAACgF,MAAM,CAAC,UAAA/B,IAAI;IAAA,OAAIA,IAAI,CAACE,OAAO;EAAA,EAAC;EACzE,IAAM8B,eAAe,GAAGH,YAAY,CAACI,MAAM,CAAC,UAACC,QAAQ,EAAElC,IAAI,EAAK;IAC9D,IAAIA,IAAI,CAACmB,SAAS,EAAE;MAClBe,QAAQ,CAAClC,IAAI,CAACmB,SAAS,CAAChE,GAAG,CAAC,GAAG,CAAC+E,QAAQ,CAAClC,IAAI,CAACmB,SAAS,CAAChE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC;IACxE;IACA,OAAO+E,QAAQ;EACjB,CAAC,EAAE,CAAC,CAAC,CAAC;EACNL,YAAY,CAACM,OAAO,CAAC,UAAAnC,IAAI,EAAI;IAC3B;IACA,IAAMxB,IAAS,GAAG3B,aAAa,CAACI,GAAG,CAACM,WAAW,CAACP,GAAG,CAACQ,aAAa,CAAC,KAAK,CAAC,CAAC;IACzEgB,IAAI,CAACd,YAAY,CAAC,KAAK,EAAEsC,IAAI,CAACxB,IAAI,CAAC;IACnC,IAAMwC,IAAI,GAAGhB,IAAI,CAACmB,SAAS,GACvBa,eAAe,CAAChC,IAAI,CAACmB,SAAS,CAAChE,GAAG,CAAC,GAAG,CAAC,MAAA4C,MAAA,CAClC7E,KAAK,CAACkG,KAAK,CAACpB,IAAI,CAACmB,SAAS,CAAC,cAAApB,MAAA,CAAWC,IAAI,CAACC,IAAI,cAClD/E,KAAK,CAACkG,KAAK,CAACpB,IAAI,CAACmB,SAAS,CAAC,GAC7BnB,IAAI,CAACC,IAAI,GAAG,KAAK;IACrBzB,IAAI,CAACd,YAAY,CAAC,OAAO,EAAE,WAAW,GAAGsD,IAAI,CAAC;IAC9CxC,IAAI,CAACd,YAAY,CAAC,OAAO,EAAEL,SAAS,GAAG,gBAAgB,CAAC;IACxDc,SAAS,CAACiE,IAAI,CAAC5D,IAAI,CAAC;IACpB,IAAI,CAACA,IAAI,CAACF,QAAQ,EAAE;MAClBE,IAAI,CAACG,gBAAgB,CAAC,OAAO,EAAE,UAAUtD,CAAC,EAAE;QAC1CkD,UAAU,CAACC,IAAI,CAAC;QAChBI,kBAAkB,CAAC;UACjByD,KAAK,EAAEhH,CAAC;UACRqE,MAAM,EAAE7C,aAAa,CAAC6C,MAAM,IAAI,IAAI;UACpC4C,OAAO,EAAE9D,IAAI;UACbwB,IAAI,EAAJA,IAAI;UACJgB,IAAI,EAAJA,IAAI;UACJuB,WAAW,EAAE,IAAI;UAAE;UACnBtF,GAAG,EAAEJ,aAAa,CAACI,GAAG;UACtBC,EAAE,EAAEL,aAAa,CAACK,EAAE;UACpBF,GAAG,EAAEH,aAAa,CAACG,GAAG;UACtB4D,aAAa,EAAE/D,aAAa,CAAC+D;QAC/B,CAAC,CAAC;MACJ,CAAC,CAAC;IACJ;EACF,CAAC,CAAC;AACJ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA"}
1
+ {"version":3,"file":"create.js","names":["_solidLogic","require","debug","_interopRequireWildcard","_iconBase","_login","ns","utils","widgets","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","kb","solidLogicSingleton","store","newThingUI","createContext","dataBrowserContext","thePanes","dom","div","me","uri","Error","iconStyle","star","appendChild","createElement","visible","setAttribute","icons","iconBase","complain","message","pre","createTextNode","styleTheIcons","style","iconArray","length","st","disabled","selectTool","icon","selectNewTool","_event","addEventListener","makeNewAppInstance","options","Promise","resolve","reject","selectUI","callbackWS","ws","newBase","ensureLoadedProfile","then","_context","newPaneOptions","assign","folder","undefined","workspace","opt","log","concat","pane","name","mintNew","newInstance","tail","slice","isPackage","includes","add","ldp","sym","doc","refreshTarget","refresh","p","innerHTML","noun","err","pa","mintClass","label","appPathSegment","toUpperCase","selectWorkspace","gotName","endsWith","encodeURIComponent","askName","foaf","mintingPanes","values","filter","mintingClassMap","reduce","classMap","forEach","push","event","iconEle","noIndexHTML"],"sources":["../../src/create/create.ts"],"sourcesContent":["/* create.js UI to craete new objects in the solid-app-set world\n **\n */\n\nimport { DataBrowserContext, NewPaneOptions, PaneDefinition } from 'pane-registry'\nimport { solidLogicSingleton } from 'solid-logic'\nimport * as debug from '../debug'\nimport { icons } from '../iconBase'\nimport { ensureLoadedProfile, selectWorkspace } from '../login/login'\nimport * as ns from '../ns'\nimport * as utils from '../utils'\nimport * as widgets from '../widgets'\nimport { CreateContext, NewAppInstanceOptions } from './types'\n\nconst kb = solidLogicSingleton.store\n\n/* newThingUI -- return UI for user to select a new object, folder, etc\n **\n ** context must include: dom, div,\n ** optional: folder: NamedNode -- the folder where the thing is bring put\n ** (suppresses asking for a full URI or workspace)\n **\n */\nexport function newThingUI (\n createContext: CreateContext,\n dataBrowserContext: DataBrowserContext,\n thePanes: Array<PaneDefinition>\n): void {\n const dom = createContext.dom\n const div = createContext.div\n if (createContext.me && !createContext.me.uri) {\n throw new Error('newThingUI: Invalid userid: ' + createContext.me)\n }\n\n const iconStyle = 'padding: 0.7em; width: 2em; height: 2em;' // was: 'padding: 1em; width: 3em; height: 3em;'\n const star = div.appendChild(dom.createElement('img'))\n let visible = false // the inividual tools tools\n // noun_272948.svg = black star\n // noun_34653_green.svg = green plus\n star.setAttribute('src', icons.iconBase + 'noun_34653_green.svg')\n star.setAttribute('style', iconStyle)\n star.setAttribute('title', 'Add another tool')\n\n const complain = function complain (message) {\n const pre = div.appendChild(dom.createElement('pre'))\n pre.setAttribute('style', 'background-color: pink')\n pre.appendChild(dom.createTextNode(message))\n }\n\n function styleTheIcons (style) {\n for (let i = 0; i < iconArray.length; i++) {\n let st = iconStyle + style\n if (iconArray[i].disabled) {\n // @@ unused\n st += 'opacity: 0.3;'\n }\n iconArray[i].setAttribute('style', st) // eg 'background-color: #ccc;'\n }\n }\n\n function selectTool (icon) {\n styleTheIcons('display: none;') // 'background-color: #ccc;'\n icon.setAttribute('style', iconStyle + 'background-color: yellow;')\n }\n\n function selectNewTool (_event?) {\n visible = !visible\n star.setAttribute(\n 'style',\n iconStyle + (visible ? 'background-color: yellow;' : '')\n )\n styleTheIcons(visible ? '' : 'display: none;')\n }\n\n star.addEventListener('click', selectNewTool)\n\n function makeNewAppInstance (options: NewAppInstanceOptions) {\n return new Promise(function (resolve, reject) {\n let selectUI // , selectUIParent\n function callbackWS (ws, newBase) {\n ensureLoadedProfile(createContext).then(\n _context => {\n const newPaneOptions: NewPaneOptions = Object.assign({\n newBase,\n folder: options.folder || undefined,\n workspace: ws\n }, options)\n for (const opt in options) {\n // get div, dom, me, folder, pane, refreshTable\n newPaneOptions[opt] = options[opt]\n }\n debug.log(`newThingUI: Minting new ${newPaneOptions.pane.name} at ${newPaneOptions.newBase}`)\n options.pane\n .mintNew!(dataBrowserContext, newPaneOptions)\n .then(function (newPaneOptions) {\n if (!newPaneOptions || !newPaneOptions.newInstance) {\n throw new Error('Cannot mint new - missing newInstance')\n }\n if (newPaneOptions.folder) {\n const tail = newPaneOptions.newInstance.uri.slice(\n newPaneOptions.folder.uri.length\n )\n const isPackage = tail.includes('/')\n debug.log(' new thing is packge? ' + isPackage)\n if (isPackage) {\n kb.add(\n newPaneOptions.folder,\n ns.ldp('contains'),\n kb.sym(newPaneOptions.newBase),\n newPaneOptions.folder.doc()\n )\n } else {\n // single file\n kb.add(\n newPaneOptions.folder,\n ns.ldp('contains'),\n newPaneOptions.newInstance,\n newPaneOptions.folder.doc()\n ) // Ping the patch system?\n }\n // @ts-ignore @@ TODO check whether refresh can exist here. Either fix type or remove unreachable code\n if (newPaneOptions.refreshTarget && newPaneOptions.refreshTarget.refresh) {\n // @@ TODO Remove the need to cast as any\n ;(newPaneOptions.refreshTarget as any).refresh() // Refresh the containing display\n }\n // selectUI.parentNode.removeChild(selectUI) It removes itself\n } else {\n const p = options.div.appendChild(dom.createElement('p'))\n p.setAttribute('style', 'font-size: 120%;')\n // Make link to new thing\n p.innerHTML =\n \"Your <a target='_blank' href='\" +\n newPaneOptions.newInstance.uri +\n \"'><b>new \" +\n options.noun +\n '</b></a> is ready to be set up. ' +\n \"<br/><br/><a target='_blank' href='\" +\n newPaneOptions.newInstance.uri +\n \"'>Go to your new \" +\n options.noun +\n '.</a>'\n // selectUI.parentNode.removeChild(selectUI) // Clean up\n // selectUIParent.removeChild(selectUI) // Clean up\n }\n selectNewTool() // toggle star to plain and menu vanish again\n })\n .catch(function (err) {\n complain(err)\n reject(err)\n })\n },\n err => {\n // login fails\n complain('Error logging on: ' + err)\n }\n )\n } // callbackWS\n\n const pa = options.pane\n // options.appPathSegment = pa.name // was 'edu.mit.solid.pane.'\n options.noun = pa.mintClass ? utils.label(pa.mintClass) : pa.name\n options.appPathSegment = options.noun.slice(0, 1).toUpperCase() + options.noun.slice(1)\n\n if (!options.folder) {\n // No folder given? Ask user for full URI\n selectUI = selectWorkspace(dom, {\n noun: options.noun,\n appPathSegment: options.appPathSegment\n }, callbackWS)\n options.div.appendChild(selectUI)\n // selectUIParent = options.div\n } else {\n const gotName = function (name) {\n if (!name) {\n // selectUIParent.removeChild(selectUI) itremves itself if cancelled\n selectNewTool() // toggle star to plain and menu vanish again\n } else {\n let uri = options.folder!.uri\n if (!uri.endsWith('/')) {\n uri = uri + '/'\n }\n uri = uri + encodeURIComponent(name) + '/'\n callbackWS(null, uri)\n }\n }\n widgets\n .askName(\n dom,\n kb,\n options.div,\n ns.foaf('name'),\n null,\n options.noun\n )\n .then(gotName)\n // selectUI = getNameForm(dom, kb, options.noun, gotName)\n // options.div.appendChild(selectUI)\n // selectUIParent = options.div\n }\n })\n } // makeNewAppInstance\n\n const iconArray: Array<any> = []\n const mintingPanes = Object.values(thePanes).filter(pane => pane.mintNew)\n const mintingClassMap = mintingPanes.reduce((classMap, pane) => {\n if (pane.mintClass) {\n classMap[pane.mintClass.uri] = (classMap[pane.mintClass.uri] || 0) + 1\n }\n return classMap\n }, {})\n mintingPanes.forEach(pane => {\n // @@ TODO Remove the need to cast to any\n const icon: any = createContext.div.appendChild(dom.createElement('img'))\n icon.setAttribute('src', pane.icon)\n const noun = pane.mintClass\n ? mintingClassMap[pane.mintClass.uri] > 1\n ? `${utils.label(pane.mintClass)} (using ${pane.name} pane)`\n : utils.label(pane.mintClass)\n : pane.name + ' @@'\n icon.setAttribute('title', 'Make new ' + noun)\n icon.setAttribute('style', iconStyle + 'display: none;')\n iconArray.push(icon)\n if (!icon.disabled) {\n icon.addEventListener('click', function (e) {\n selectTool(icon)\n makeNewAppInstance({\n event: e,\n folder: createContext.folder || null,\n iconEle: icon,\n pane,\n noun,\n noIndexHTML: true, // do NOT @@ for now write a HTML file\n div: createContext.div,\n me: createContext.me,\n dom: createContext.dom,\n refreshTarget: createContext.refreshTarget\n })\n })\n }\n })\n}\n\n// Form to get the name of a new thing before we create it\n//\n// Used in contacts for new groups, individuals.\n//\n/*\nfunction getNameForm (dom, kb, classLabel, gotNameCallback) {\n const form = dom.createElement('div') // form is broken as HTML behaviour can resurface on js error\n form.innerHTML = '<p>Name of new ' + classLabel + ':</p>'\n const namefield = dom.createElement('input')\n namefield.setAttribute('type', 'text')\n namefield.setAttribute('size', '30')\n namefield.setAttribute('style', style.textInputStyle)\n namefield.setAttribute('maxLength', '2048') // No arbitrary limits\n namefield.select() // focus next user input\n\n const gotName = function () {\n namefield.setAttribute('class', 'pendingedit')\n namefield.disabled = true\n continueButton.disabled = true\n cancel.disabled = true\n gotNameCallback(true, namefield.value)\n }\n\n namefield.addEventListener('keyup', function (e) {\n if (e.keyCode === 13) {\n gotName()\n }\n }, false)\n form.appendChild(namefield)\n\n form.appendChild(dom.createElement('br'))\n\n const cancel = form.appendChild(widgets.cancelButton(dom))\n cancel.addEventListener('click', function (e) {\n form.parentNode.removeChild(form)\n gotNameCallback(false)\n }, false)\n\n const continueButton = form.appendChild(widgets.continueButton(dom))\n continueButton.addEventListener('click', function (e) {\n gotName()\n }, false)\n\n return form\n}\n*/\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../src/login/login.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAa,SAAS,EAAM,MAAM,QAAQ,CAAA;AAGjD,OAAO,EACL,UAAU,EACV,qBAAqB,EAYtB,MAAM,aAAa,CAAA;AAwBpB;;;;GAIG;AAEH,wBAAgB,cAAc,CAAE,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAwB9F;AAED;;;;;;;GAOG;AAEH,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,qBAAqB,CAAC,CAwDhC;AAED;;;;;;GAMG;AAEH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,qBAAqB,CAAC,CAiBhC;AAED;;;;IAII;AACJ,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,qBAAqB,EAC9B,QAAQ,EAAE,SAAS,EACnB,QAAQ,CAAC,EAAE,OAAO,GACjB,OAAO,CAAC,qBAAqB,CAAC,CAShC;AAED,wBAAgB,UAAU,CAAE,OAAO,KAAA,EAAE,KAAK,KAAA,UAIzC;AACD;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,qBAAqB,EAC9B,QAAQ,KAAA,EACR,QAAQ,KAAA,GACP,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAgEvC;AAED,wBAAgB,qBAAqB,CAAE,OAAO,KAAA,EAAE,KAAK,KAAA,EAAE,KAAK,KAAA,OAY3D;AACD;;IAEI;AACJ,wBAAsB,gBAAgB,CAAE,OAAO,EAAE,qBAAqB,EAAE,OAAO,EAAE;IAC/E,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,IAAI,CAAC,EAAE,SAAS,CAAA;CACjB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAuCjC;AAqGD,wBAAgB,iBAAiB,CAAE,GAAG,EAAE,YAAY,QA+InD;AAED;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAC5B,GAAG,EAAE,YAAY,EACjB,QAAQ,GAAE,CAAC,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC,GAAG,IAAW,EACtD,OAAO,GAAE;IACP,WAAW,CAAC,EAAE,MAAM,CAAC;CACjB,GACL,WAAW,CAwFb;AAyBD;;;GAGG;AAEH;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,YAAY,EACjB,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,GAC9D,WAAW,CA0Pb;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,cAAc,CAC5B,GAAG,EAAE,YAAY,EACjB,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,GAC5D,WAAW,CAmBb;AACD;;;GAGG;AACH,wBAAsB,YAAY,IAAK,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAgB/D;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,GAC3B,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAGhC"}
1
+ {"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../src/login/login.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAa,SAAS,EAAM,MAAM,QAAQ,CAAA;AAGjD,OAAO,EACL,UAAU,EACV,qBAAqB,EAYtB,MAAM,aAAa,CAAA;AAwBpB;;;;GAIG;AAEH,wBAAgB,cAAc,CAAE,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAwB9F;AAED;;;;;;;GAOG;AAEH,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,qBAAqB,CAAC,CAwDhC;AAED;;;;;;GAMG;AAEH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,qBAAqB,CAAC,CAiBhC;AAED;;;;IAII;AACJ,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,qBAAqB,EAC9B,QAAQ,EAAE,SAAS,EACnB,QAAQ,CAAC,EAAE,OAAO,GACjB,OAAO,CAAC,qBAAqB,CAAC,CAShC;AAED,wBAAgB,UAAU,CAAE,OAAO,KAAA,EAAE,KAAK,KAAA,UAIzC;AACD;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,qBAAqB,EAC9B,QAAQ,KAAA,EACR,QAAQ,KAAA,GACP,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAgEvC;AAED,wBAAgB,qBAAqB,CAAE,OAAO,KAAA,EAAE,KAAK,KAAA,EAAE,KAAK,KAAA,OAY3D;AACD;;IAEI;AACJ,wBAAsB,gBAAgB,CAAE,OAAO,EAAE,qBAAqB,EAAE,OAAO,EAAE;IAC/E,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,IAAI,CAAC,EAAE,SAAS,CAAA;CACjB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAuCjC;AAiGD,wBAAgB,iBAAiB,CAAE,GAAG,EAAE,YAAY,QA+InD;AAED;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAC5B,GAAG,EAAE,YAAY,EACjB,QAAQ,GAAE,CAAC,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC,GAAG,IAAW,EACtD,OAAO,GAAE;IACP,WAAW,CAAC,EAAE,MAAM,CAAC;CACjB,GACL,WAAW,CAwFb;AAyBD;;;GAGG;AAEH;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,eAAe,CAC7B,GAAG,EAAE,YAAY,EACjB,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,GAC9D,WAAW,CA0Pb;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,cAAc,CAC5B,GAAG,EAAE,YAAY,EACjB,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,GAC5D,WAAW,CAmBb;AACD;;;GAGG;AACH,wBAAsB,YAAY,IAAK,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAgB/D;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,GAC3B,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAGhC"}