solid-ui 2.4.27-13192548 → 2.4.27-265a2743
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/solid-ui.js +474 -5651
- package/dist/solid-ui.js.map +1 -1
- package/dist/solid-ui.min.js +1 -1
- package/dist/solid-ui.min.js.LICENSE.txt +0 -8
- package/dist/solid-ui.min.js.map +1 -1
- package/lib/acl/access-controller.d.ts +2 -3
- package/lib/acl/access-controller.d.ts.map +1 -1
- package/lib/acl/access-controller.js +17 -15
- package/lib/acl/access-controller.js.map +1 -1
- package/lib/acl/access-groups.d.ts.map +1 -1
- package/lib/acl/access-groups.js +78 -8
- package/lib/acl/access-groups.js.map +1 -1
- package/lib/acl/acl-control.d.ts.map +1 -1
- package/lib/acl/acl-control.js +10 -11
- package/lib/acl/acl-control.js.map +1 -1
- package/lib/acl/acl.d.ts +1 -1
- package/lib/acl/acl.js +1 -1
- package/lib/acl/acl.js.map +1 -1
- package/lib/acl/add-agent-buttons.d.ts.map +1 -1
- package/lib/acl/add-agent-buttons.js +4 -3
- package/lib/acl/add-agent-buttons.js.map +1 -1
- package/lib/chat/bookmarks.js +2 -2
- package/lib/chat/bookmarks.js.map +1 -1
- package/lib/chat/chatLogic.js +1 -1
- package/lib/chat/chatLogic.js.map +1 -1
- package/lib/chat/infinite.js.map +1 -1
- package/lib/chat/messageTools.js +2 -2
- package/lib/chat/messageTools.js.map +1 -1
- package/lib/chat/thread.js +1 -1
- package/lib/chat/thread.js.map +1 -1
- package/lib/footer/index.d.ts.map +1 -1
- package/lib/footer/index.js +5 -1
- package/lib/footer/index.js.map +1 -1
- package/lib/header/index.d.ts.map +1 -1
- package/lib/header/index.js +41 -20
- package/lib/header/index.js.map +1 -1
- package/lib/login/login.d.ts.map +1 -1
- package/lib/login/login.js +13 -15
- package/lib/login/login.js.map +1 -1
- package/lib/style.js +60 -2
- package/lib/style.js.map +1 -1
- package/lib/utils/headerFooterHelpers.d.ts +0 -4
- package/lib/utils/headerFooterHelpers.d.ts.map +1 -1
- package/lib/utils/headerFooterHelpers.js +0 -27
- package/lib/utils/headerFooterHelpers.js.map +1 -1
- package/lib/versionInfo.js +2 -2
- package/lib/versionInfo.js.map +1 -1
- package/lib/widgets/buttons.d.ts.map +1 -1
- package/lib/widgets/buttons.js +43 -49
- package/lib/widgets/buttons.js.map +1 -1
- package/package.json +2 -4
- package/lib/acl/styles.d.ts +0 -90
- package/lib/acl/styles.d.ts.map +0 -1
- package/lib/acl/styles.js +0 -98
- package/lib/acl/styles.js.map +0 -1
- package/lib/footer/styleMap.d.ts +0 -8
- package/lib/footer/styleMap.d.ts.map +0 -1
- package/lib/footer/styleMap.js +0 -15
- package/lib/footer/styleMap.js.map +0 -1
- package/lib/header/styleMap.d.ts +0 -117
- package/lib/header/styleMap.d.ts.map +0 -1
- package/lib/header/styleMap.js +0 -139
- package/lib/header/styleMap.js.map +0 -1
- package/lib/jss/index.d.ts +0 -20
- package/lib/jss/index.d.ts.map +0 -1
- package/lib/jss/index.js +0 -47
- package/lib/jss/index.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messageTools.js","names":["debug","_interopRequireWildcard","require","_iconBase","ns","rdf","utils","widgets","_bookmarks","_solidLogic","_chatLogic","_message","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","dom","window","document","PENCIL_ICON","THUMBS_UP_ICON","THUMBS_DOWN_ICON","REPLY_ICON","emojiMap","schema","emojiFromActionClass","action","ActionClassFromEmoji","emoji","a","sym","slice","emojiFromAction","content","store","any","sioc","doc","klass","em","sentimentStrip","_x","_x2","_sentimentStrip","apply","arguments","_asyncToGenerator2","_regenerator","mark","_callee","target","versions","actions","strings","wrap","_callee$","_context","prev","next","allVersions","sent","log","map","version","each","flat","abrupt","createTextNode","join","stop","sentimentStripLinked","_x3","_x4","_sentimentStripLinked","_callee3","strip","refresh","_refresh","_callee3$","_context3","_refresh3","_callee2","sentiments","_callee2$","_context2","innerHTML","isDeleted","length","sort","forEach","ss","_ss","_slicedToArray2","theClass","agent","res","createElement","setAttribute","uri","textContent","appendChild","_refresh2","then","messageToolbar","_x5","_x6","_x7","_x8","_messageToolbar","_callee10","message","messageRow","userContext","channelObject","deleteMessage","_deleteMessage","editMessage","_editMessage","replyInThread","_replyInThread","div","closeToolbar","deleteThingThen","_deleteThingThen","me","sentimentButton","context1","cancelButton","_callee10$","_context10","_sentimentButton","context","icon","actionClass","mutuallyExclusive","setColor","button","style","backgroundColor","label","_ref","_callee4","_event","insertMe","dirty","i","_callee4$","_context4","newThing","st","updater","update","existingAction","refreshTree","_x11","filter","x","holds","_deleteThingThen3","_callee9","_callee9$","_context9","connectedStatements","_deleteThingThen2","_x10","_closeToolbar","parentElement","removeChild","_replyInThread3","_callee8","thread","options","_callee8$","_context8","createThread","chatOptions","Error","showThread","_replyInThread2","_editMessage3","_callee7","_callee7$","_context7","value","foaf","switchToEditor","_editMessage2","_x9","_deleteMessage3","_callee6","author","msg","area","_callee6$","_context6","alert","sameTerm","t0","warn","statusArea","parentNode","errorMessageBlock","_deleteMessage2","mostRecentVersion","t1","authn","currentUser","deleteButtonWithCheck","icons","iconBase","renderBookmarksButton","bookmarkButton","t2","t3","t4","dct","_callee5","_callee5$","_context5","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 { allVersions, mostRecentVersion, isDeleted } 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'\nconst REPLY_ICON = 'noun-reply-5506924.svg'\n/**\n * Emoji in Unicode\n */\nconst emojiMap = {}\nemojiMap[ns.schema('AgreeAction')] = '👍'\nemojiMap[ns.schema('DisagreeAction')] = '👎'\nemojiMap[ns.schema('EndorseAction')] = '⭐️'\nemojiMap[ns.schema('LikeAction')] = '❤️'\n\nexport function emojiFromActionClass (action) {\n return emojiMap[action] || null\n}\n\nexport function ActionClassFromEmoji (emoji) {\n for (const a in emojiMap) {\n if (emojiMap[a] === emoji) {\n return rdf.sym(a.slice(1, -1)) // remove < >\n }\n }\n return null\n}\n\n// Allow the qction to give its own emoji as content,\n// or get the emoji from the class lof action.\nexport function emojiFromAction (action) {\n const content = store.any(action, ns.sioc('content'), null, action.doc())\n if (content) return content\n const klass = store.any(action, ns.rdf('type'), null, action.doc())\n if (klass) {\n const em = emojiFromActionClass(klass)\n if (em) return em\n }\n return '⬜️'\n}\n\n/**\n * Create strip of sentiments expressed\n */\nexport async function sentimentStrip (target, doc) { // alain seems not used\n const versions = await allVersions(target)\n debug.log('sentimentStrip Versions for ' + target, versions)\n const actions = versions.map(version => store.each(null, ns.schema('target'), version, doc)).flat()\n debug.log('sentimentStrip: Actions for ' + target, actions)\n const strings = actions.map(action => emojiFromAction(action) || '')\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 async function sentimentStripLinked (target, doc) {\n const strip = dom.createElement('span')\n async function refresh () {\n strip.innerHTML = ''\n if (isDeleted(target)) return strip\n const versions = await allVersions(target)\n debug.log('sentimentStripLinked: Versions for ' + target, versions)\n const actions = versions.map(version => store.each(null, ns.schema('target'), version, doc)).flat()\n debug.log('sentimentStripLinked: Actions for ' + target, actions)\n if (actions.length === 0) return strip\n const sentiments = actions.map(a => [\n store.any(a, ns.rdf('type'), null, doc),\n store.any(a, ns.sioc('content'), null, doc),\n store.any(a, ns.schema('agent'), null, doc)\n ])\n debug.log(' Actions sentiments ', sentiments)\n sentiments.sort()\n sentiments.forEach(ss => {\n const [theClass, content, 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 = content || emojiMap[theClass] || '⬜️'\n strip.appendChild(res)\n })\n debug.log(' Actions strip ', strip)\n }\n refresh().then(debug.log('sentimentStripLinked: sentimentStripLinked async refreshed'))\n strip.refresh = refresh\n return strip\n}\n/**\n * Creates a message toolbar component\n */\nexport async 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 await switchToEditor(messageRow, message, channelObject, userContext)\n }\n }\n\n async function replyInThread () {\n const thread = await channelObject.createThread(message)\n const options = userContext.chatOptions\n if (!options) throw new Error('replyInThread: missing options')\n options.showThread(thread, options)\n closeToolbar() // a one-off action\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 (await 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\n if (me && (await 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 // Reply buttton\n\n if (store.any(message, ns.dct('created'))) { // Looks like a messsage? Bar can be used for other things\n div.appendChild(widgets.button(dom, icons.iconBase + REPLY_ICON, 'Reply in thread', async () => {\n await replyInThread()\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":";;;;;;;;;;;;;;;;AASA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AAEA,IAAAE,EAAA,GAAAH,uBAAA,CAAAC,OAAA;AAEA,IAAAG,GAAA,GAAAJ,uBAAA,CAAAC,OAAA;AAEA,IAAAI,KAAA,GAAAL,uBAAA,CAAAC,OAAA;AACA,IAAAK,OAAA,GAAAN,uBAAA,CAAAC,OAAA;AACA,IAAAM,UAAA,GAAAN,OAAA;AACA,IAAAO,WAAA,GAAAP,OAAA;AAEA,IAAAQ,UAAA,GAAAR,OAAA;AACA,IAAAS,QAAA,GAAAT,OAAA;AAA0C,SAAAU,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAZ,wBAAAgB,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,aAAAE,OAAA,CAAAF,GAAA,yBAAAA,GAAA,uCAAAA,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,cAAAN,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAtB1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAGA;;AAEA;AAC8B;AAC9B;;AASA,IAAMW,GAAG,GAAGC,MAAM,CAACC,QAAQ;;AAE3B;AACA;AACA;AACA;AACA;AACA;AACA,IAAMC,WAAW,GAAG,iBAAiB,EAAC;AACtC;AACA,IAAMC,cAAc,GAAG,kBAAkB;AACzC,IAAMC,gBAAgB,GAAG,kBAAkB;AAC3C,IAAMC,UAAU,GAAG,wBAAwB;AAC3C;AACA;AACA;AACA,IAAMC,QAAQ,GAAG,CAAC,CAAC;AACnBA,QAAQ,CAACrC,EAAE,CAACsC,MAAM,CAAC,aAAa,CAAC,CAAC,GAAG,IAAI;AACzCD,QAAQ,CAACrC,EAAE,CAACsC,MAAM,CAAC,gBAAgB,CAAC,CAAC,GAAG,IAAI;AAC5CD,QAAQ,CAACrC,EAAE,CAACsC,MAAM,CAAC,eAAe,CAAC,CAAC,GAAG,IAAI;AAC3CD,QAAQ,CAACrC,EAAE,CAACsC,MAAM,CAAC,YAAY,CAAC,CAAC,GAAG,IAAI;AAEjC,SAASC,oBAAoBA,CAAEC,MAAM,EAAE;EAC5C,OAAOH,QAAQ,CAACG,MAAM,CAAC,IAAI,IAAI;AACjC;AAEO,SAASC,oBAAoBA,CAAEC,KAAK,EAAE;EAC3C,KAAK,IAAMC,CAAC,IAAIN,QAAQ,EAAE;IACxB,IAAIA,QAAQ,CAACM,CAAC,CAAC,KAAKD,KAAK,EAAE;MACzB,OAAOzC,GAAG,CAAC2C,GAAG,CAACD,CAAC,CAACE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAC;IACjC;EACF;;EACA,OAAO,IAAI;AACb;;AAEA;AACA;AACO,SAASC,eAAeA,CAAEN,MAAM,EAAE;EACvC,IAAMO,OAAO,GAAGC,iBAAK,CAACC,GAAG,CAACT,MAAM,EAAExC,EAAE,CAACkD,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAEV,MAAM,CAACW,GAAG,EAAE,CAAC;EACzE,IAAIJ,OAAO,EAAE,OAAOA,OAAO;EAC3B,IAAMK,KAAK,GAAGJ,iBAAK,CAACC,GAAG,CAACT,MAAM,EAAExC,EAAE,CAACC,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,EAAEuC,MAAM,CAACW,GAAG,EAAE,CAAC;EACnE,IAAIC,KAAK,EAAE;IACT,IAAMC,EAAE,GAAGd,oBAAoB,CAACa,KAAK,CAAC;IACtC,IAAIC,EAAE,EAAE,OAAOA,EAAE;EACnB;EACA,OAAO,IAAI;AACb;;AAEA;AACA;AACA;AAFA,SAGsBC,cAAcA,CAAAC,EAAA,EAAAC,GAAA;EAAA,OAAAC,eAAA,CAAAC,KAAA,OAAAC,SAAA;AAAA;AAQpC;AACA;AACA;AACA;AACA;AACA;AALA,SAAAF,gBAAA;EAAAA,eAAA,OAAAG,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CARO,SAAAC,QAA+BC,MAAM,EAAEb,GAAG;IAAA,IAAAc,QAAA,EAAAC,OAAA,EAAAC,OAAA;IAAA,OAAAN,YAAA,YAAAO,IAAA,UAAAC,SAAAC,QAAA;MAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;QAAA;UAAAF,QAAA,CAAAE,IAAA;UAAA,OACxB,IAAAC,sBAAW,EAACT,MAAM,CAAC;QAAA;UAApCC,QAAQ,GAAAK,QAAA,CAAAI,IAAA;UACd9E,KAAK,CAAC+E,GAAG,CAAC,8BAA8B,GAAGX,MAAM,EAAEC,QAAQ,CAAC;UACtDC,OAAO,GAAGD,QAAQ,CAACW,GAAG,CAAC,UAAAC,OAAO;YAAA,OAAI7B,iBAAK,CAAC8B,IAAI,CAAC,IAAI,EAAE9E,EAAE,CAACsC,MAAM,CAAC,QAAQ,CAAC,EAAEuC,OAAO,EAAE1B,GAAG,CAAC;UAAA,EAAC,CAAC4B,IAAI,EAAE;UACnGnF,KAAK,CAAC+E,GAAG,CAAC,8BAA8B,GAAGX,MAAM,EAAEE,OAAO,CAAC;UACrDC,OAAO,GAAGD,OAAO,CAACU,GAAG,CAAC,UAAApC,MAAM;YAAA,OAAIM,eAAe,CAACN,MAAM,CAAC,IAAI,EAAE;UAAA,EAAC;UAAA,OAAA8B,QAAA,CAAAU,MAAA,WAC7DlD,GAAG,CAACmD,cAAc,CAACd,OAAO,CAACe,IAAI,CAAC,GAAG,CAAC,CAAC;QAAA;QAAA;UAAA,OAAAZ,QAAA,CAAAa,IAAA;MAAA;IAAA,GAAApB,OAAA;EAAA,CAC7C;EAAA,OAAAN,eAAA,CAAAC,KAAA,OAAAC,SAAA;AAAA;AAAA,SAOqByB,oBAAoBA,CAAAC,GAAA,EAAAC,GAAA;EAAA,OAAAC,qBAAA,CAAA7B,KAAA,OAAAC,SAAA;AAAA;AAmC1C;AACA;AACA;AAFA,SAAA4B,sBAAA;EAAAA,qBAAA,OAAA3B,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAnCO,SAAA0B,SAAqCxB,MAAM,EAAEb,GAAG;IAAA,IAAAsC,KAAA,EAEtCC,OAAO,EAAAC,QAAA;IAAA,OAAA9B,YAAA,YAAAO,IAAA,UAAAwB,UAAAC,SAAA;MAAA,kBAAAA,SAAA,CAAAtB,IAAA,GAAAsB,SAAA,CAAArB,IAAA;QAAA;UAAAmB,QAAA,YAAAG,UAAA;YAAAH,QAAA,OAAA/B,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAAtB,SAAAiC,SAAA;cAAA,IAAA9B,QAAA,EAAAC,OAAA,EAAA8B,UAAA;cAAA,OAAAnC,YAAA,YAAAO,IAAA,UAAA6B,UAAAC,SAAA;gBAAA,kBAAAA,SAAA,CAAA3B,IAAA,GAAA2B,SAAA,CAAA1B,IAAA;kBAAA;oBACEiB,KAAK,CAACU,SAAS,GAAG,EAAE;oBAAA,KAChB,IAAAC,oBAAS,EAACpC,MAAM,CAAC;sBAAAkC,SAAA,CAAA1B,IAAA;sBAAA;oBAAA;oBAAA,OAAA0B,SAAA,CAAAlB,MAAA,WAASS,KAAK;kBAAA;oBAAAS,SAAA,CAAA1B,IAAA;oBAAA,OACZ,IAAAC,sBAAW,EAACT,MAAM,CAAC;kBAAA;oBAApCC,QAAQ,GAAAiC,SAAA,CAAAxB,IAAA;oBACd9E,KAAK,CAAC+E,GAAG,CAAC,qCAAqC,GAAGX,MAAM,EAAEC,QAAQ,CAAC;oBAC7DC,OAAO,GAAGD,QAAQ,CAACW,GAAG,CAAC,UAAAC,OAAO;sBAAA,OAAI7B,iBAAK,CAAC8B,IAAI,CAAC,IAAI,EAAE9E,EAAE,CAACsC,MAAM,CAAC,QAAQ,CAAC,EAAEuC,OAAO,EAAE1B,GAAG,CAAC;oBAAA,EAAC,CAAC4B,IAAI,EAAE;oBACnGnF,KAAK,CAAC+E,GAAG,CAAC,oCAAoC,GAAGX,MAAM,EAAEE,OAAO,CAAC;oBAAA,MAC7DA,OAAO,CAACmC,MAAM,KAAK,CAAC;sBAAAH,SAAA,CAAA1B,IAAA;sBAAA;oBAAA;oBAAA,OAAA0B,SAAA,CAAAlB,MAAA,WAASS,KAAK;kBAAA;oBAChCO,UAAU,GAAG9B,OAAO,CAACU,GAAG,CAAC,UAAAjC,CAAC;sBAAA,OAAI,CAClCK,iBAAK,CAACC,GAAG,CAACN,CAAC,EAAE3C,EAAE,CAACC,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,EAAEkD,GAAG,CAAC,EACvCH,iBAAK,CAACC,GAAG,CAACN,CAAC,EAAE3C,EAAE,CAACkD,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAEC,GAAG,CAAC,EAC3CH,iBAAK,CAACC,GAAG,CAACN,CAAC,EAAE3C,EAAE,CAACsC,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,EAAEa,GAAG,CAAC,CAC5C;oBAAA,EAAC;oBACFvD,KAAK,CAAC+E,GAAG,CAAC,uBAAuB,EAAEqB,UAAU,CAAC;oBAC9CA,UAAU,CAACM,IAAI,EAAE;oBACjBN,UAAU,CAACO,OAAO,CAAC,UAAAC,EAAE,EAAI;sBACvB,IAAAC,GAAA,OAAAC,eAAA,aAAmCF,EAAE;wBAA9BG,QAAQ,GAAAF,GAAA;wBAAE1D,OAAO,GAAA0D,GAAA;wBAAEG,KAAK,GAAAH,GAAA;sBAC/B,IAAII,GAAG;sBACP,IAAID,KAAK,EAAE;wBACTC,GAAG,GAAG/E,GAAG,CAACgF,aAAa,CAAC,GAAG,CAAC;wBAC5BD,GAAG,CAACE,YAAY,CAAC,MAAM,EAAEH,KAAK,CAACI,GAAG,CAAC;sBACrC,CAAC,MAAM;wBACLH,GAAG,GAAG/E,GAAG,CAACmD,cAAc,CAAC,EAAE,CAAC;sBAC9B;sBACA4B,GAAG,CAACI,WAAW,GAAGlE,OAAO,IAAIV,QAAQ,CAACsE,QAAQ,CAAC,IAAI,IAAI;sBACvDlB,KAAK,CAACyB,WAAW,CAACL,GAAG,CAAC;oBACxB,CAAC,CAAC;oBACFjH,KAAK,CAAC+E,GAAG,CAAC,kBAAkB,EAAEc,KAAK,CAAC;kBAAA;kBAAA;oBAAA,OAAAS,SAAA,CAAAf,IAAA;gBAAA;cAAA,GAAAY,QAAA;YAAA,CACrC;YAAA,OAAAJ,QAAA,CAAAjC,KAAA,OAAAC,SAAA;UAAA;UA5Bc+B,OAAO,YAAAyB,UAAA;YAAA,OAAAxB,QAAA,CAAAjC,KAAA,OAAAC,SAAA;UAAA;UADhB8B,KAAK,GAAG3D,GAAG,CAACgF,aAAa,CAAC,MAAM,CAAC;UA8BvCpB,OAAO,EAAE,CAAC0B,IAAI,CAACxH,KAAK,CAAC+E,GAAG,CAAC,4DAA4D,CAAC,CAAC;UACvFc,KAAK,CAACC,OAAO,GAAGA,OAAO;UAAA,OAAAG,SAAA,CAAAb,MAAA,WAChBS,KAAK;QAAA;QAAA;UAAA,OAAAI,SAAA,CAAAV,IAAA;MAAA;IAAA,GAAAK,QAAA;EAAA,CACb;EAAA,OAAAD,qBAAA,CAAA7B,KAAA,OAAAC,SAAA;AAAA;AAAA,SAIqB0D,cAAcA,CAAAC,GAAA,EAAAC,GAAA,EAAAC,GAAA,EAAAC,GAAA;EAAA,OAAAC,eAAA,CAAAhE,KAAA,OAAAC,SAAA;AAAA;AAAA,SAAA+D,gBAAA;EAAAA,eAAA,OAAA9D,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAA7B,SAAA6D,UAA+BC,OAAO,EAAEC,UAAU,EAAEC,WAAW,EAAEC,aAAa;IAAA,IACpEC,aAAa,EAAAC,cAAA,EAqBbC,WAAW,EAAAC,YAAA,EAOXC,aAAa,EAAAC,cAAA,EAAAC,GAAA,EAanBC,YAAY,EAINC,eAAe,EAAAC,gBAAA,EAAAC,EAAA,EAkCrBC,eAAe,EAAAC,QAAA,EAAAC,YAAA;IAAA,OAAAhF,YAAA,YAAAO,IAAA,UAAA0E,WAAAC,UAAA;MAAA,kBAAAA,UAAA,CAAAxE,IAAA,GAAAwE,UAAA,CAAAvE,IAAA;QAAA;UAAfmE,eAAe,YAAAK,iBACtBC,OAAO,EACPjF,MAAM,EACNkF,IAAI,EACJC,WAAW,EACXhG,GAAG,EACHiG,iBAAiB,EACjB;YACA,SAASC,QAAQA,CAAA,EAAI;cACnBC,MAAM,CAACC,KAAK,CAACC,eAAe,GAAGhH,MAAM,GAAG,QAAQ,GAAG,OAAO;YAC5D;YACA,IAAM8G,MAAM,GAAGnJ,OAAO,CAACmJ,MAAM,CAC3BxH,GAAG,EACHoH,IAAI,EACJhJ,KAAK,CAACuJ,KAAK,CAACN,WAAW,CAAC;cAAA,IAAAO,IAAA,OAAA9F,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CACxB,SAAA6F,SAAgBC,MAAM;gBAAA,IAAAC,QAAA,EAAAC,KAAA,EAAAC,CAAA,EAAApH,CAAA;gBAAA,OAAAkB,YAAA,YAAAO,IAAA,UAAA4F,UAAAC,SAAA;kBAAA,kBAAAA,SAAA,CAAA1F,IAAA,GAAA0F,SAAA,CAAAzF,IAAA;oBAAA;sBAAA,KAChBhC,MAAM;wBAAAyH,SAAA,CAAAzF,IAAA;wBAAA;sBAAA;sBAAAyF,SAAA,CAAAzF,IAAA;sBAAA,OACFgE,eAAe,CAAChG,MAAM,CAAC;oBAAA;sBAC7BA,MAAM,GAAG,IAAI;sBACb6G,QAAQ,EAAE;sBAAAY,SAAA,CAAAzF,IAAA;sBAAA;oBAAA;sBAEV;sBACAhC,MAAM,GAAGrC,OAAO,CAAC+J,QAAQ,CAAC/G,GAAG,CAAC;sBACxB0G,QAAQ,GAAG,CACf5J,GAAG,CAACkK,EAAE,CAAC3H,MAAM,EAAExC,EAAE,CAACsC,MAAM,CAAC,OAAO,CAAC,EAAE2G,OAAO,CAACP,EAAE,EAAEvF,GAAG,CAAC,EACnDlD,GAAG,CAACkK,EAAE,CAAC3H,MAAM,EAAExC,EAAE,CAACC,GAAG,CAAC,MAAM,CAAC,EAAEkJ,WAAW,EAAEhG,GAAG,CAAC,EAChDlD,GAAG,CAACkK,EAAE,CAAC3H,MAAM,EAAExC,EAAE,CAACsC,MAAM,CAAC,QAAQ,CAAC,EAAE0B,MAAM,EAAEb,GAAG,CAAC,CACjD;sBAAA8G,SAAA,CAAAzF,IAAA;sBAAA,OACKxB,iBAAK,CAACoH,OAAO,CAACC,MAAM,CAAC,EAAE,EAAER,QAAQ,CAAC;oBAAA;sBACxCR,QAAQ,EAAE;sBAAA,KAEND,iBAAiB;wBAAAa,SAAA,CAAAzF,IAAA;wBAAA;sBAAA;sBACnB;sBACIsF,KAAK,GAAG,KAAK;sBACRC,CAAC,GAAG,CAAC;oBAAA;sBAAA,MAAEA,CAAC,GAAGX,iBAAiB,CAAC/C,MAAM;wBAAA4D,SAAA,CAAAzF,IAAA;wBAAA;sBAAA;sBACpC7B,CAAC,GAAG2H,cAAc,CAAClB,iBAAiB,CAACW,CAAC,CAAC,CAAC;sBAAA,KAC1CpH,CAAC;wBAAAsH,SAAA,CAAAzF,IAAA;wBAAA;sBAAA;sBAAAyF,SAAA,CAAAzF,IAAA;sBAAA,OACGgE,eAAe,CAAC7F,CAAC,CAAC;oBAAA;sBAAC;sBACzBmH,KAAK,GAAG,IAAI;oBAAA;sBAJ8BC,CAAC,EAAE;sBAAAE,SAAA,CAAAzF,IAAA;sBAAA;oBAAA;sBAOjD,IAAIsF,KAAK,EAAE;wBACT;wBACA3J,OAAO,CAACoK,WAAW,CAAC1C,UAAU,CAAC,EAAC;sBAClC;oBAAC;oBAAA;sBAAA,OAAAoC,SAAA,CAAA9E,IAAA;kBAAA;gBAAA,GAAAwE,QAAA;cAAA,CAGN;cAAA,iBAAAa,IAAA;gBAAA,OAAAd,IAAA,CAAAhG,KAAA,OAAAC,SAAA;cAAA;YAAA,IACF;YACD,SAAS2G,cAAcA,CAAEnB,WAAW,EAAE;cACpC,IAAMjF,OAAO,GAAGlB,iBAAK,CAClB8B,IAAI,CAAC,IAAI,EAAE9E,EAAE,CAACsC,MAAM,CAAC,OAAO,CAAC,EAAE2G,OAAO,CAACP,EAAE,EAAEvF,GAAG,CAAC,CAC/CsH,MAAM,CAAC,UAAAC,CAAC;gBAAA,OAAI1H,iBAAK,CAAC2H,KAAK,CAACD,CAAC,EAAE1K,EAAE,CAACC,GAAG,CAAC,MAAM,CAAC,EAAEkJ,WAAW,EAAEhG,GAAG,CAAC;cAAA,EAAC,CAC7DsH,MAAM,CAAC,UAAAC,CAAC;gBAAA,OAAI1H,iBAAK,CAAC2H,KAAK,CAACD,CAAC,EAAE1K,EAAE,CAACsC,MAAM,CAAC,QAAQ,CAAC,EAAE0B,MAAM,EAAEb,GAAG,CAAC;cAAA,EAAC;cAChE,OAAOe,OAAO,CAACmC,MAAM,GAAGnC,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI;YAC3C;YACA,SAASwB,OAAOA,CAAA,EAAI;cAClBlD,MAAM,GAAG8H,cAAc,CAACnB,WAAW,CAAC;cACpCE,QAAQ,EAAE;YACZ;YACA,IAAI7G,MAAM;YACV8G,MAAM,CAAC5D,OAAO,GAAGA,OAAO,EAAC;YACzBA,OAAO,EAAE;YACT,OAAO4D,MAAM;UACf,CAAC;UAAAb,gBAAA,YAAAmC,kBAAA;YAAAnC,gBAAA,OAAA7E,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAlGD,SAAA+G,SAAgCH,CAAC;cAAA,OAAA7G,YAAA,YAAAO,IAAA,UAAA0G,UAAAC,SAAA;gBAAA,kBAAAA,SAAA,CAAAxG,IAAA,GAAAwG,SAAA,CAAAvG,IAAA;kBAAA;oBAAAuG,SAAA,CAAAvG,IAAA;oBAAA,OACzBxB,iBAAK,CAACoH,OAAO,CAACC,MAAM,CAACrH,iBAAK,CAACgI,mBAAmB,CAACN,CAAC,CAAC,EAAE,EAAE,CAAC;kBAAA;kBAAA;oBAAA,OAAAK,SAAA,CAAA5F,IAAA;gBAAA;cAAA,GAAA0F,QAAA;YAAA,CAC7D;YAAA,OAAApC,gBAAA,CAAA/E,KAAA,OAAAC,SAAA;UAAA;UAFc6E,eAAe,YAAAyC,kBAAAC,IAAA;YAAA,OAAAzC,gBAAA,CAAA/E,KAAA,OAAAC,SAAA;UAAA;UAJrB4E,YAAY,YAAA4C,cAAA,EAAI;YACvB7C,GAAG,CAAC8C,aAAa,CAACA,aAAa,CAACC,WAAW,CAAC/C,GAAG,CAAC8C,aAAa,CAAC,EAAC;UACjE,CAAC;UAAA/C,cAAA,YAAAiD,gBAAA;YAAAjD,cAAA,OAAAzE,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAfD,SAAAyH,SAAA;cAAA,IAAAC,MAAA,EAAAC,OAAA;cAAA,OAAA5H,YAAA,YAAAO,IAAA,UAAAsH,UAAAC,SAAA;gBAAA,kBAAAA,SAAA,CAAApH,IAAA,GAAAoH,SAAA,CAAAnH,IAAA;kBAAA;oBAAAmH,SAAA,CAAAnH,IAAA;oBAAA,OACuBuD,aAAa,CAAC6D,YAAY,CAAChE,OAAO,CAAC;kBAAA;oBAAlD4D,MAAM,GAAAG,SAAA,CAAAjH,IAAA;oBACN+G,OAAO,GAAG3D,WAAW,CAAC+D,WAAW;oBAAA,IAClCJ,OAAO;sBAAAE,SAAA,CAAAnH,IAAA;sBAAA;oBAAA;oBAAA,MAAQ,IAAIsH,KAAK,CAAC,gCAAgC,CAAC;kBAAA;oBAC/DL,OAAO,CAACM,UAAU,CAACP,MAAM,EAAEC,OAAO,CAAC;oBACnClD,YAAY,EAAE,EAAC;kBAAA;kBAAA;oBAAA,OAAAoD,SAAA,CAAAxG,IAAA;gBAAA;cAAA,GAAAoG,QAAA;YAAA,CAChB;YAAA,OAAAlD,cAAA,CAAA3E,KAAA,OAAAC,SAAA;UAAA;UANcyE,aAAa,YAAA4D,gBAAA;YAAA,OAAA3D,cAAA,CAAA3E,KAAA,OAAAC,SAAA;UAAA;UAAAwE,YAAA,YAAA8D,cAAA;YAAA9D,YAAA,OAAAvE,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAP5B,SAAAoI,SAA4BrE,UAAU;cAAA,OAAAhE,YAAA,YAAAO,IAAA,UAAA+H,UAAAC,SAAA;gBAAA,kBAAAA,SAAA,CAAA7H,IAAA,GAAA6H,SAAA,CAAA5H,IAAA;kBAAA;oBAAA,MAChCkE,EAAE,CAAC2D,KAAK,KAAKrJ,iBAAK,CAACC,GAAG,CAAC2E,OAAO,EAAE5H,EAAE,CAACsM,IAAI,CAAC,OAAO,CAAC,CAAC,CAACD,KAAK;sBAAAD,SAAA,CAAA5H,IAAA;sBAAA;oBAAA;oBACzD+D,YAAY,EAAE,EAAC;oBAAA6D,SAAA,CAAA5H,IAAA;oBAAA,OACT,IAAA+H,uBAAc,EAAC1E,UAAU,EAAED,OAAO,EAAEG,aAAa,EAAED,WAAW,CAAC;kBAAA;kBAAA;oBAAA,OAAAsE,SAAA,CAAAjH,IAAA;gBAAA;cAAA,GAAA+G,QAAA;YAAA,CAExE;YAAA,OAAA/D,YAAA,CAAAzE,KAAA,OAAAC,SAAA;UAAA;UALcuE,WAAW,YAAAsE,cAAAC,GAAA;YAAA,OAAAtE,YAAA,CAAAzE,KAAA,OAAAC,SAAA;UAAA;UAAAsE,cAAA,YAAAyE,gBAAA;YAAAzE,cAAA,OAAArE,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CArB1B,SAAA6I,SAAA;cAAA,IAAAC,MAAA,EAAAC,GAAA,EAAAC,IAAA;cAAA,OAAAjJ,YAAA,YAAAO,IAAA,UAAA2I,UAAAC,SAAA;gBAAA,kBAAAA,SAAA,CAAAzI,IAAA,GAAAyI,SAAA,CAAAxI,IAAA;kBAAA;oBACQoI,MAAM,GAAG5J,iBAAK,CAACC,GAAG,CAAC2E,OAAO,EAAE5H,EAAE,CAACsM,IAAI,CAAC,OAAO,CAAC,CAAC;oBAAA,IAC9C5D,EAAE;sBAAAsE,SAAA,CAAAxI,IAAA;sBAAA;oBAAA;oBACLyI,KAAK,CAAC,uDAAuD,CAAC;oBAAAD,SAAA,CAAAxI,IAAA;oBAAA;kBAAA;oBAAA,KACrDkE,EAAE,CAACwE,QAAQ,CAACN,MAAM,CAAC;sBAAAI,SAAA,CAAAxI,IAAA;sBAAA;oBAAA;oBAAAwI,SAAA,CAAAzI,IAAA;oBAAAyI,SAAA,CAAAxI,IAAA;oBAAA,OAEpBuD,aAAa,CAACC,aAAa,CAACJ,OAAO,CAAC;kBAAA;oBAAAoF,SAAA,CAAAxI,IAAA;oBAAA;kBAAA;oBAAAwI,SAAA,CAAAzI,IAAA;oBAAAyI,SAAA,CAAAG,EAAA,GAAAH,SAAA;oBAEpCH,GAAG,GAAG,0BAA0B,GAAAG,SAAA,CAAAG,EAAM;oBAC5CvN,KAAK,CAACwN,IAAI,CAACP,GAAG,CAAC;oBACfI,KAAK,CAACJ,GAAG,CAAC;oBACJC,IAAI,GAAGhF,WAAW,CAACuF,UAAU,IAAIxF,UAAU,CAACyF,UAAU;oBAC5DR,IAAI,CAAC5F,WAAW,CAAC/G,OAAO,CAACoN,iBAAiB,CAACzL,GAAG,EAAE+K,GAAG,CAAC,CAAC;kBAAA;oBAEvDhF,UAAU,CAACyF,UAAU,CAACjC,WAAW,CAACxD,UAAU,CAAC;oBAAAmF,SAAA,CAAAxI,IAAA;oBAAA;kBAAA;oBAE7CyI,KAAK,CAAC,sEAAsE,GAAGL,MAAM,CAAC;kBAAA;oBAExFrE,YAAY,EAAE;kBAAA;kBAAA;oBAAA,OAAAyE,SAAA,CAAA7H,IAAA;gBAAA;cAAA,GAAAwH,QAAA;YAAA,CACf;YAAA,OAAA1E,cAAA,CAAAvE,KAAA,OAAAC,SAAA;UAAA;UAnBcqE,aAAa,YAAAwF,gBAAA;YAAA,OAAAvF,cAAA,CAAAvE,KAAA,OAAAC,SAAA;UAAA;UAoC5B;UAEM2E,GAAG,GAAGxG,GAAG,CAACgF,aAAa,CAAC,KAAK,CAAC,EACpC;UAAAiC,UAAA,CAAAvE,IAAA;UAAA,OACU,IAAAiJ,4BAAiB,EAAC7F,OAAO,CAAC,CAACyE,KAAK;QAAA;UAAAtD,UAAA,CAAAoE,EAAA,GAAApE,UAAA,CAAArE,IAAA;UAAAqE,UAAA,CAAA2E,EAAA,GAAK1N,EAAE,CAACsC,MAAM,CAAC,aAAa,CAAC,CAAC+J,KAAK;UAAA,MAAAtD,UAAA,CAAAoE,EAAA,KAAApE,UAAA,CAAA2E,EAAA;YAAA3E,UAAA,CAAAvE,IAAA;YAAA;UAAA;UAAA,OAAAuE,UAAA,CAAA/D,MAAA,WAASsD,GAAG;QAAA;UASzF;UACII,EAAE,GAAGiF,iBAAK,CAACC,WAAW,EAAE,EAAC;UAC7B,IAAIlF,EAAE,IAAI1F,iBAAK,CAAC2H,KAAK,CAAC/C,OAAO,EAAE5H,EAAE,CAACsM,IAAI,CAAC,OAAO,CAAC,EAAE5D,EAAE,CAAC,EAAE;YACpD;YACAJ,GAAG,CAACpB,WAAW,CAAC/G,OAAO,CAAC0N,qBAAqB,CAAC/L,GAAG,EAAEwG,GAAG,EAAE,SAAS,EAAEN,aAAa,CAAC,CAAC;YAClF;YACAM,GAAG,CAACpB,WAAW,CAAC/G,OAAO,CAACmJ,MAAM,CAACxH,GAAG,EAAEgM,eAAK,CAACC,QAAQ,GAAG9L,WAAW,EAAE,MAAM,EAAE;cAAA,OAAMiG,WAAW,CAACL,UAAU,CAAC;YAAA,EAAC,CAAC;UAC3G,CAAC,CAAC;UACF;UACA;AACF;AACA;AACA;AACA;AACA;UACE;;UAEA,IAAAmG,gCAAqB,EAAClG,WAAW,CAAC,CAACV,IAAI,CAAC,UAAA6G,cAAc,EAAI;YACxD,IAAIA,cAAc,EAAE3F,GAAG,CAACpB,WAAW,CAAC+G,cAAc,CAAC;UACrD,CAAC,CAAC;;UAEF;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;UAmEE;UACA;UACAvF,EAAE,GAAGiF,iBAAK,CAACC,WAAW,EAAE,EAAC;UAAA7E,UAAA,CAAAmF,EAAA,GAErBxF,EAAE;UAAA,KAAAK,UAAA,CAAAmF,EAAA;YAAAnF,UAAA,CAAAvE,IAAA;YAAA;UAAA;UAAAuE,UAAA,CAAAvE,IAAA;UAAA,OAAW,IAAAiJ,4BAAiB,EAAC7F,OAAO,CAAC,CAACyE,KAAK;QAAA;UAAAtD,UAAA,CAAAoF,EAAA,GAAApF,UAAA,CAAArE,IAAA;UAAAqE,UAAA,CAAAqF,EAAA,GAAKpO,EAAE,CAACsC,MAAM,CAAC,aAAa,CAAC,CAAC+J,KAAK;UAAAtD,UAAA,CAAAmF,EAAA,GAAAnF,UAAA,CAAAoF,EAAA,KAAApF,UAAA,CAAAqF,EAAA;QAAA;UAAA,KAAArF,UAAA,CAAAmF,EAAA;YAAAnF,UAAA,CAAAvE,IAAA;YAAA;UAAA;UAC5EoE,QAAQ,GAAG;YAAEF,EAAE,EAAFA,EAAE;YAAE5G,GAAG,EAAHA,GAAG;YAAEwG,GAAG,EAAHA;UAAI,CAAC;UACjCA,GAAG,CAACpB,WAAW,CACbyB,eAAe,CACbC,QAAQ,EACRhB,OAAO;UAAE;UACTkG,eAAK,CAACC,QAAQ,GAAG7L,cAAc,EAC/BlC,EAAE,CAACsC,MAAM,CAAC,aAAa,CAAC,EACxBsF,OAAO,CAACzE,GAAG,EAAE,EACb,CAACnD,EAAE,CAACsC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAC9B,CACF;UACD;UACAgG,GAAG,CAACpB,WAAW,CACbyB,eAAe,CACbC,QAAQ,EACRhB,OAAO,EACPkG,eAAK,CAACC,QAAQ,GAAG5L,gBAAgB,EACjCnC,EAAE,CAACsC,MAAM,CAAC,gBAAgB,CAAC,EAC3BsF,OAAO,CAACzE,GAAG,EAAE,EACb,CAACnD,EAAE,CAACsC,MAAM,CAAC,aAAa,CAAC,CAAC,CAC3B,CACF;QAAA;UAEH;;UAEA,IAAIU,iBAAK,CAACC,GAAG,CAAC2E,OAAO,EAAE5H,EAAE,CAACqO,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE;YAAE;YAC3C/F,GAAG,CAACpB,WAAW,CAAC/G,OAAO,CAACmJ,MAAM,CAACxH,GAAG,EAAEgM,eAAK,CAACC,QAAQ,GAAG3L,UAAU,EAAE,iBAAiB,mBAAAwB,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAAE,SAAAwK,SAAA;cAAA,OAAAzK,YAAA,YAAAO,IAAA,UAAAmK,UAAAC,SAAA;gBAAA,kBAAAA,SAAA,CAAAjK,IAAA,GAAAiK,SAAA,CAAAhK,IAAA;kBAAA;oBAAAgK,SAAA,CAAAhK,IAAA;oBAAA,OAC5E4D,aAAa,EAAE;kBAAA;kBAAA;oBAAA,OAAAoG,SAAA,CAAArJ,IAAA;gBAAA;cAAA,GAAAmJ,QAAA;YAAA,CACtB,GAAC,CAAC;UACL;UACA;UACMzF,YAAY,GAAGP,GAAG,CAACpB,WAAW,CAAC/G,OAAO,CAAC0I,YAAY,CAAC/G,GAAG,CAAC,CAAC;UAC/D+G,YAAY,CAACU,KAAK,SAAM,GAAG,OAAO;UAClCV,YAAY,CAAC4F,UAAU,CAAClF,KAAK,CAACmF,OAAO,GAAG,KAAK;UAC7C7F,YAAY,CAAC8F,gBAAgB,CAAC,OAAO,EAAEpG,YAAY,CAAC;UAAA,OAAAQ,UAAA,CAAA/D,MAAA,WAC7CsD,GAAG;QAAA;QAAA;UAAA,OAAAS,UAAA,CAAA5D,IAAA;MAAA;IAAA,GAAAwC,SAAA;EAAA,CACX;EAAA,OAAAD,eAAA,CAAAhE,KAAA,OAAAC,SAAA;AAAA"}
|
|
1
|
+
{"version":3,"file":"messageTools.js","names":["debug","_interopRequireWildcard","require","_iconBase","ns","rdf","utils","widgets","_bookmarks","_solidLogic","_chatLogic","_message","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","dom","window","document","PENCIL_ICON","THUMBS_UP_ICON","THUMBS_DOWN_ICON","REPLY_ICON","emojiMap","schema","emojiFromActionClass","action","ActionClassFromEmoji","emoji","a","sym","slice","emojiFromAction","content","store","any","sioc","doc","klass","em","sentimentStrip","_x","_x2","_sentimentStrip","apply","arguments","_asyncToGenerator2","_regenerator","mark","_callee","target","versions","actions","strings","wrap","_callee$","_context","prev","next","allVersions","sent","log","map","version","each","flat","abrupt","createTextNode","join","stop","sentimentStripLinked","_x3","_x4","_sentimentStripLinked","_callee3","strip","refresh","_refresh","_callee3$","_context3","_refresh3","_callee2","sentiments","_callee2$","_context2","innerHTML","isDeleted","length","sort","forEach","ss","_ss","_slicedToArray2","theClass","agent","res","createElement","setAttribute","uri","textContent","appendChild","_refresh2","then","messageToolbar","_x5","_x6","_x7","_x8","_messageToolbar","_callee10","message","messageRow","userContext","channelObject","deleteMessage","_deleteMessage","editMessage","_editMessage","replyInThread","_replyInThread","div","closeToolbar","deleteThingThen","_deleteThingThen","me","sentimentButton","context1","cancelButton","_callee10$","_context10","_sentimentButton","context","icon","actionClass","mutuallyExclusive","setColor","button","style","backgroundColor","label","_ref","_callee4","_event","insertMe","dirty","i","_callee4$","_context4","newThing","st","updater","update","existingAction","refreshTree","_x11","filter","x","holds","_deleteThingThen3","_callee9","_callee9$","_context9","connectedStatements","_deleteThingThen2","_x10","_closeToolbar","parentElement","removeChild","_replyInThread3","_callee8","thread","options","_callee8$","_context8","createThread","chatOptions","Error","showThread","_replyInThread2","_editMessage3","_callee7","_callee7$","_context7","value","foaf","switchToEditor","_editMessage2","_x9","_deleteMessage3","_callee6","author","msg","area","_callee6$","_context6","alert","sameTerm","t0","warn","statusArea","parentNode","errorMessageBlock","_deleteMessage2","mostRecentVersion","t1","authn","currentUser","deleteButtonWithCheck","icons","iconBase","renderBookmarksButton","bookmarkButton","t2","t3","t4","dct","_callee5","_callee5$","_context5","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 { allVersions, mostRecentVersion, isDeleted } 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'\nconst REPLY_ICON = 'noun-reply-5506924.svg'\n/**\n * Emoji in Unicode\n */\nconst emojiMap = {}\nemojiMap[ns.schema('AgreeAction')] = '👍'\nemojiMap[ns.schema('DisagreeAction')] = '👎'\nemojiMap[ns.schema('EndorseAction')] = '⭐️'\nemojiMap[ns.schema('LikeAction')] = '❤️'\n\nexport function emojiFromActionClass (action) {\n return emojiMap[action] || null\n}\n\nexport function ActionClassFromEmoji (emoji) {\n for (const a in emojiMap) {\n if (emojiMap[a] === emoji) {\n return rdf.sym(a.slice(1, -1)) // remove < >\n }\n }\n return null\n}\n\n// Allow the action to give its own emoji as content,\n// or get the emoji from the class of action.\nexport function emojiFromAction (action) {\n const content = store.any(action, ns.sioc('content'), null, action.doc())\n if (content) return content\n const klass = store.any(action, ns.rdf('type'), null, action.doc())\n if (klass) {\n const em = emojiFromActionClass(klass)\n if (em) return em\n }\n return '⬜️'\n}\n\n/**\n * Create strip of sentiments expressed\n */\nexport async function sentimentStrip (target, doc) { // alain: seems not used\n const versions = await allVersions(target)\n debug.log('sentimentStrip Versions for ' + target, versions)\n const actions = versions.map(version => store.each(null, ns.schema('target'), version, doc)).flat()\n debug.log('sentimentStrip: Actions for ' + target, actions)\n const strings = actions.map(action => emojiFromAction(action) || '')\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 async function sentimentStripLinked (target, doc) {\n const strip = dom.createElement('span')\n async function refresh () {\n strip.innerHTML = ''\n if (isDeleted(target)) return strip\n const versions = await allVersions(target)\n debug.log('sentimentStripLinked: Versions for ' + target, versions)\n const actions = versions.map(version => store.each(null, ns.schema('target'), version, doc)).flat()\n debug.log('sentimentStripLinked: Actions for ' + target, actions)\n if (actions.length === 0) return strip\n const sentiments = actions.map(a => [\n store.any(a, ns.rdf('type'), null, doc),\n store.any(a, ns.sioc('content'), null, doc),\n store.any(a, ns.schema('agent'), null, doc)\n ])\n debug.log(' Actions sentiments ', sentiments)\n sentiments.sort()\n sentiments.forEach(ss => {\n const [theClass, content, 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 = content || emojiMap[theClass] || '⬜️'\n strip.appendChild(res)\n })\n debug.log(' Actions strip ', strip)\n }\n refresh().then(debug.log('sentimentStripLinked: sentimentStripLinked async refreshed'))\n strip.refresh = refresh\n return strip\n}\n/**\n * Creates a message toolbar component\n */\nexport async 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 await switchToEditor(messageRow, message, channelObject, userContext)\n }\n }\n\n async function replyInThread () {\n const thread = await channelObject.createThread(message)\n const options = userContext.chatOptions\n if (!options) throw new Error('replyInThread: missing options')\n options.showThread(thread, options)\n closeToolbar() // a one-off action\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 (await 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\n if (me && (await 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 // Reply buttton\n\n if (store.any(message, ns.dct('created'))) { // Looks like a messsage? Bar can be used for other things\n div.appendChild(widgets.button(dom, icons.iconBase + REPLY_ICON, 'Reply in thread', async () => {\n await replyInThread()\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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"}
|
package/lib/chat/thread.js
CHANGED
|
@@ -402,7 +402,7 @@ function thread(dom, kb, subject, messageStore, options) {
|
|
|
402
402
|
return _regenerator["default"].wrap(function _callee5$(_context5) {
|
|
403
403
|
while (1) switch (_context5.prev = _context5.next) {
|
|
404
404
|
case 0:
|
|
405
|
-
// alain test for delete or edit depending on me = maker
|
|
405
|
+
// alain: test for delete or edit depending on me = maker
|
|
406
406
|
td3.removeChild(sureButton);
|
|
407
407
|
td3.removeChild(cancelButton);
|
|
408
408
|
// deleteMessage(message) // alain or sendMessage(message, 'delete' or 'edit') //alain
|
package/lib/chat/thread.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"thread.js","names":["_iconBase","require","_solidLogic","_index","ns","_interopRequireWildcard","login","pad","$rdf","style","utils","widgets","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","UI","icons","media","thread","dom","kb","subject","messageStore","options","store","doc","WF","Namespace","DCT","newestFirst","messageBodyStyle","div","createElement","messageTable","me","updater","anchor","text","term","a","uri","setAttribute","addEventListener","openHrefInOutlineMode","textContent","mention","message","pre","appendChild","createTextNode","announce","log","warn","error","newMessageForm","form","lhs","middle","rhs","AJAR_date","sendMessage","_ref","_asyncToGenerator2","_regenerator","mark","_callee","_yield$appendMsg","dateStamp","sts","sendComplete","wrap","_callee$","_context","prev","next","field","disabled","appendMsg","value","sent","success","body","errorMessageBlock","bindings","literal","renderMessage","update","stop","apply","arguments","sendButton","turnOnInput","creatorAndDate","innerHTML","rows","_ref2","_callee2","e","_callee2$","_context2","keyCode","altKey","_x","button","iconBase","buttonStyle","context","ensureLoggedIn","then","_ref3","fieldValue","oldMsg","length","undefined","_callee3","now","timestamp","msgBody","_callee3$","_context3","Date","getTime","sym","t0","t1","Statement","mostRecentVersion","t2","t3","t4","t5","t6","push","wf","concat","nick","sioc","foaf","abrupt","_x2","person","s","any","label","td1","creator","date","nickAnchor","fetcher","nowOrWhenFetched","_ok","_body","syncMessages","about","displayed","ele","ele2","firstChild","nextSibling","AJAR_subject","messages","each","stored","forEach","m","addMessage","removeChild","msg","statementsMatching","_deleteMessage","_ref4","_callee4","deletions","_callee4$","_context4","connectedStatements","ok","_x3","fresh","content","dateString","tr","done","insertBefore","shortDate","td2","td3","delButton","_event","cancelButton","sureButton","_ref5","_callee5","_yield$appendMsg2","_callee5$","_context5","_x4","query","Query","v","vs","x","vars","variable","pat","add","dct","doneQuery","refresh"],"sources":["../../src/chat/thread.js"],"sourcesContent":["/**\n * Contains the [[thread]] function\n * @packageDocumentation\n */\n\nimport { icons } from '../iconBase'\nimport { store } from 'solid-logic'\nimport { media } from '../media/index'\nimport * as ns from '../ns'\nimport * as login from '../login/login'\nimport * as pad from '../pad'\nimport * as $rdf from 'rdflib' // pull in first avoid cross-refs\nimport * as style from '../style'\nimport * as utils from '../utils'\nimport * as widgets from '../widgets'\n\nconst UI = { icons, ns, media, pad, style, utils, widgets }\n\n/**\n * HTML component for a chat thread\n */\nexport function thread (dom, kb, subject, messageStore, options) {\n kb = kb || store\n messageStore = messageStore.doc() // No hash\n const ns = UI.ns\n const WF = $rdf.Namespace('http://www.w3.org/2005/01/wf/flow#')\n const DCT = $rdf.Namespace('http://purl.org/dc/terms/')\n\n options = options || {}\n\n const newestFirst = !!options.newestFirst\n\n const messageBodyStyle =\n 'white-space: pre-wrap; width: 90%; font-size:100%; border: 0.07em solid #eee; padding: .2em 0.5em; margin: 0.1em 1em 0.1em 1em;'\n // 'font-size: 100%; margin: 0.1em 1em 0.1em 1em; background-color: white; white-space: pre-wrap; padding: 0.1em;'\n\n const div = dom.createElement('div')\n // eslint-disable-next-line prefer-const\n let messageTable\n\n let me\n\n const updater = store.updater\n\n const anchor = function (text, term) {\n // If there is no link return an element anyway\n const a = dom.createElement('a')\n if (term && term.uri) {\n a.setAttribute('href', term.uri)\n a.addEventListener('click', UI.widgets.openHrefInOutlineMode, true)\n a.setAttribute('style', 'color: #3B5998; text-decoration: none; ') // font-weight: bold\n }\n a.textContent = text\n return a\n }\n\n const mention = function mention (message, style) {\n const pre = dom.createElement('pre')\n pre.setAttribute('style', style || 'color: grey')\n div.appendChild(pre)\n pre.appendChild(dom.createTextNode(message))\n return pre\n }\n\n const announce = {\n log: function (message) {\n mention(message, 'color: #111;')\n },\n warn: function (message) {\n mention(message, 'color: #880;')\n },\n error: function (message) {\n mention(message, 'color: #800;')\n }\n }\n\n /**\n * Form for a new message\n */\n const newMessageForm = function () {\n const form = dom.createElement('tr')\n const lhs = dom.createElement('td')\n const middle = dom.createElement('td')\n const rhs = dom.createElement('td')\n form.appendChild(lhs)\n form.appendChild(middle)\n form.appendChild(rhs)\n form.AJAR_date = '9999-01-01T00:00:00Z' // ISO format for field sort\n\n const sendMessage = async function () {\n // titlefield.setAttribute('class','pendingedit')\n // titlefield.disabled = true\n field.setAttribute('class', 'pendingedit')\n field.disabled = true\n const { message, dateStamp, sts } = await appendMsg(field.value)\n\n const sendComplete = function (uri, success, body) {\n if (!success) {\n form.appendChild(\n UI.widgets.errorMessageBlock(dom, 'Error writing message: ' + body)\n )\n } else {\n const bindings = {\n '?msg': message,\n '?content': store.literal(field.value),\n '?date': dateStamp,\n '?creator': me\n }\n renderMessage(bindings, false) // not green\n\n field.value = '' // clear from out for reuse\n field.setAttribute('class', '')\n field.disabled = false\n }\n }\n updater.update([], sts, sendComplete)\n }\n form.appendChild(dom.createElement('br'))\n\n let field, sendButton\n const turnOnInput = function () {\n creatorAndDate(lhs, me, '', null)\n\n field = dom.createElement('textarea')\n middle.innerHTML = ''\n middle.appendChild(field)\n field.rows = 3\n // field.cols = 40\n field.setAttribute('style', messageBodyStyle + 'background-color: #eef;')\n\n field.addEventListener(\n 'keyup',\n async function (e) {\n // User preference?\n if (e.keyCode === 13) {\n if (!e.altKey) {\n // Alt-Enter just adds a new line\n await sendMessage()\n }\n }\n },\n false\n )\n\n rhs.innerHTML = ''\n sendButton = UI.widgets.button(\n dom,\n UI.icons.iconBase + 'noun_383448.svg',\n 'Send'\n )\n sendButton.setAttribute('style', UI.style.buttonStyle + 'float: right;')\n sendButton.addEventListener('click', sendMessage, false)\n rhs.appendChild(sendButton)\n }\n\n const context = { div: middle, dom }\n login.ensureLoggedIn(context).then(context => {\n me = context.me\n turnOnInput()\n })\n\n return form\n }\n\n const appendMsg = async function (fieldValue, oldMsg = {}, options = '') { // alain\n const sts = []\n const now = new Date()\n const timestamp = '' + now.getTime()\n const dateStamp = $rdf.term(now)\n // http://www.w3schools.com/jsref/jsref_obj_date.asp\n const message = store.sym(messageStore.uri + '#' + 'Msg' + timestamp)\n\n if (options === 'edit' || options === 'delete') {\n sts.push(\n new $rdf.Statement(await mostRecentVersion(oldMsg), DCT('isReplacedBy'), message, messageStore)\n )\n } else {\n sts.push(\n new $rdf.Statement(subject, ns.wf('message'), message, messageStore)\n )\n }\n // sts.push(new $rdf.Statement(message, ns.dc('title'), store.literal(titlefield.value), messageStore))\n const msgBody = options !== 'delete' ? fieldValue : `message deleted\\nby ${nick(me)}`\n sts.push(\n new $rdf.Statement(\n message,\n ns.sioc('content'),\n store.literal(msgBody),\n messageStore\n )\n )\n sts.push(\n new $rdf.Statement(message, DCT('created'), dateStamp, messageStore)\n )\n if (me) {\n sts.push(\n new $rdf.Statement(message, ns.foaf('maker'), me, messageStore)\n )\n }\n return { message, dateStamp, sts }\n }\n\n function nick (person) {\n const s = store.any(person, UI.ns.foaf('nick'))\n if (s) return '' + s.value\n return '' + utils.label(person)\n }\n\n function creatorAndDate (td1, creator, date, message) {\n const nickAnchor = td1.appendChild(anchor(nick(creator), creator))\n if (creator.uri) {\n store.fetcher.nowOrWhenFetched(creator.doc(), undefined, function (\n _ok,\n _body\n ) {\n nickAnchor.textContent = nick(creator)\n })\n }\n td1.appendChild(dom.createElement('br'))\n td1.appendChild(anchor(date, message))\n }\n\n // ///////////////////////////////////////////////////////////////////////\n\n function syncMessages (about, messageTable) {\n const displayed = {}\n let ele, ele2\n for (ele = messageTable.firstChild; ele; ele = ele.nextSibling) {\n if (ele.AJAR_subject) {\n displayed[ele.AJAR_subject.uri] = true\n }\n }\n const messages = store.each(about, ns.wf('message'))\n const stored = {}\n messages.forEach(function (m) {\n stored[m.uri] = true\n if (!displayed[m.uri]) {\n addMessage(m)\n }\n })\n\n // eslint-disable-next-line space-in-parens\n for (ele = messageTable.firstChild; ele; ) {\n ele2 = ele.nextSibling\n if (ele.AJAR_subject && !stored[ele.AJAR_subject.uri]) {\n messageTable.removeChild(ele)\n }\n ele = ele2\n }\n }\n\n const mostRecentVersion = function (message) {\n let msg = message\n // const listMsg = []\n while (msg) {\n // 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 async function (_event) { // alain test for delete or edit depending on me = maker\n td3.removeChild(sureButton)\n td3.removeChild(cancelButton)\n // deleteMessage(message) // alain or sendMessage(message, 'delete' or 'edit') //alain\n if (me.value === store.any(message, ns.foaf('maker')).value) {\n const { sts } = await appendMsg() // alain\n updater.update([], sts)\n }\n },\n false\n )\n },\n false\n )\n }\n\n // Messages with date, author etc\n\n messageTable = dom.createElement('table')\n messageTable.fresh = false\n div.appendChild(messageTable)\n messageTable.setAttribute('style', 'width: 100%;') // fill that div!\n\n const tr = newMessageForm()\n if (newestFirst) {\n messageTable.insertBefore(tr, messageTable.firstChild) // If newestFirst\n } else {\n messageTable.appendChild(tr) // not newestFirst\n }\n\n let query\n // Do this with a live query to pull in messages from web\n if (options.query) {\n query = options.query\n } else {\n query = new $rdf.Query('Messages')\n const v = {} // semicolon needed\n const vs = ['msg', 'date', 'creator', 'content']\n vs.forEach(function (x) {\n query.vars.push((v[x] = $rdf.variable(x)))\n })\n query.pat.add(subject, WF('message'), v.msg)\n query.pat.add(v.msg, ns.dct('created'), v.date)\n query.pat.add(v.msg, ns.foaf('maker'), v.creator)\n query.pat.add(v.msg, ns.sioc('content'), v.content)\n }\n\n function doneQuery () {\n messageTable.fresh = true // any new are fresh and so will be greenish\n }\n store.query(query, renderMessage, undefined, doneQuery)\n div.refresh = function () {\n syncMessages(subject, messageTable)\n }\n // syncMessages(subject, messageTable) // no the query will do this async\n return div\n}\n"],"mappings":";;;;;;;;;;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,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,yBAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAR,wBAAAY,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,aAAAE,OAAA,CAAAF,GAAA,yBAAAA,GAAA,uCAAAA,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,cAAAN,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAdrC;AACA;AACA;AACA;;AAQ+B;;AAK/B,IAAMW,EAAE,GAAG;EAAEC,KAAK,EAALA,eAAK;EAAE/B,EAAE,EAAFA,EAAE;EAAEgC,KAAK,EAALA,YAAK;EAAE7B,GAAG,EAAHA,GAAG;EAAEE,KAAK,EAALA,KAAK;EAAEC,KAAK,EAALA,KAAK;EAAEC,OAAO,EAAPA;AAAQ,CAAC;;AAE3D;AACA;AACA;AACO,SAAS0B,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,EAAE,EAAC;EAClC,IAAMxC,EAAE,GAAG8B,EAAE,CAAC9B,EAAE;EAChB,IAAMyC,EAAE,GAAGrC,IAAI,CAACsC,SAAS,CAAC,oCAAoC,CAAC;EAC/D,IAAMC,GAAG,GAAGvC,IAAI,CAACsC,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;EAEhB,IAAIC,EAAE;EAEN,IAAMC,OAAO,GAAGX,iBAAK,CAACW,OAAO;EAE7B,IAAMC,MAAM,GAAG,SAATA,MAAMA,CAAaC,IAAI,EAAEC,IAAI,EAAE;IACnC;IACA,IAAMC,CAAC,GAAGpB,GAAG,CAACa,aAAa,CAAC,GAAG,CAAC;IAChC,IAAIM,IAAI,IAAIA,IAAI,CAACE,GAAG,EAAE;MACpBD,CAAC,CAACE,YAAY,CAAC,MAAM,EAAEH,IAAI,CAACE,GAAG,CAAC;MAChCD,CAAC,CAACG,gBAAgB,CAAC,OAAO,EAAE3B,EAAE,CAACvB,OAAO,CAACmD,qBAAqB,EAAE,IAAI,CAAC;MACnEJ,CAAC,CAACE,YAAY,CAAC,OAAO,EAAE,yCAAyC,CAAC,EAAC;IACrE;;IACAF,CAAC,CAACK,WAAW,GAAGP,IAAI;IACpB,OAAOE,CAAC;EACV,CAAC;EAED,IAAMM,OAAO,GAAG,SAASA,OAAOA,CAAEC,OAAO,EAAExD,KAAK,EAAE;IAChD,IAAMyD,GAAG,GAAG5B,GAAG,CAACa,aAAa,CAAC,KAAK,CAAC;IACpCe,GAAG,CAACN,YAAY,CAAC,OAAO,EAAEnD,KAAK,IAAI,aAAa,CAAC;IACjDyC,GAAG,CAACiB,WAAW,CAACD,GAAG,CAAC;IACpBA,GAAG,CAACC,WAAW,CAAC7B,GAAG,CAAC8B,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,GAAGpC,GAAG,CAACa,aAAa,CAAC,IAAI,CAAC;IACpC,IAAMwB,GAAG,GAAGrC,GAAG,CAACa,aAAa,CAAC,IAAI,CAAC;IACnC,IAAMyB,MAAM,GAAGtC,GAAG,CAACa,aAAa,CAAC,IAAI,CAAC;IACtC,IAAM0B,GAAG,GAAGvC,GAAG,CAACa,aAAa,CAAC,IAAI,CAAC;IACnCuB,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;MAAA,IAAAC,IAAA,OAAAC,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAAG,SAAAC,QAAA;QAAA,IAAAC,gBAAA,EAAApB,OAAA,EAAAqB,SAAA,EAAAC,GAAA,EAAAC,YAAA;QAAA,OAAAN,YAAA,YAAAO,IAAA,UAAAC,SAAAC,QAAA;UAAA,kBAAAA,QAAA,CAAAC,IAAA,GAAAD,QAAA,CAAAE,IAAA;YAAA;cAClB;cACA;cACAC,KAAK,CAAClC,YAAY,CAAC,OAAO,EAAE,aAAa,CAAC;cAC1CkC,KAAK,CAACC,QAAQ,GAAG,IAAI;cAAAJ,QAAA,CAAAE,IAAA;cAAA,OACqBG,SAAS,CAACF,KAAK,CAACG,KAAK,CAAC;YAAA;cAAAZ,gBAAA,GAAAM,QAAA,CAAAO,IAAA;cAAxDjC,OAAO,GAAAoB,gBAAA,CAAPpB,OAAO;cAAEqB,SAAS,GAAAD,gBAAA,CAATC,SAAS;cAAEC,GAAG,GAAAF,gBAAA,CAAHE,GAAG;cAEzBC,YAAY,GAAG,SAAfA,YAAYA,CAAa7B,GAAG,EAAEwC,OAAO,EAAEC,IAAI,EAAE;gBACjD,IAAI,CAACD,OAAO,EAAE;kBACZzB,IAAI,CAACP,WAAW,CACdjC,EAAE,CAACvB,OAAO,CAAC0F,iBAAiB,CAAC/D,GAAG,EAAE,yBAAyB,GAAG8D,IAAI,CAAC,CACpE;gBACH,CAAC,MAAM;kBACL,IAAME,QAAQ,GAAG;oBACf,MAAM,EAAErC,OAAO;oBACf,UAAU,EAAEtB,iBAAK,CAAC4D,OAAO,CAACT,KAAK,CAACG,KAAK,CAAC;oBACtC,OAAO,EAAEX,SAAS;oBAClB,UAAU,EAAEjC;kBACd,CAAC;kBACDmD,aAAa,CAACF,QAAQ,EAAE,KAAK,CAAC,EAAC;;kBAE/BR,KAAK,CAACG,KAAK,GAAG,EAAE,EAAC;kBACjBH,KAAK,CAAClC,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC;kBAC/BkC,KAAK,CAACC,QAAQ,GAAG,KAAK;gBACxB;cACF,CAAC;cACDzC,OAAO,CAACmD,MAAM,CAAC,EAAE,EAAElB,GAAG,EAAEC,YAAY,CAAC;YAAA;YAAA;cAAA,OAAAG,QAAA,CAAAe,IAAA;UAAA;QAAA,GAAAtB,OAAA;MAAA,CACtC;MAAA,gBA3BKL,WAAWA,CAAA;QAAA,OAAAC,IAAA,CAAA2B,KAAA,OAAAC,SAAA;MAAA;IAAA,GA2BhB;IACDlC,IAAI,CAACP,WAAW,CAAC7B,GAAG,CAACa,aAAa,CAAC,IAAI,CAAC,CAAC;IAEzC,IAAI2C,KAAK,EAAEe,UAAU;IACrB,IAAMC,WAAW,GAAG,SAAdA,WAAWA,CAAA,EAAe;MAC9BC,cAAc,CAACpC,GAAG,EAAEtB,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC;MAEjCyC,KAAK,GAAGxD,GAAG,CAACa,aAAa,CAAC,UAAU,CAAC;MACrCyB,MAAM,CAACoC,SAAS,GAAG,EAAE;MACrBpC,MAAM,CAACT,WAAW,CAAC2B,KAAK,CAAC;MACzBA,KAAK,CAACmB,IAAI,GAAG,CAAC;MACd;MACAnB,KAAK,CAAClC,YAAY,CAAC,OAAO,EAAEX,gBAAgB,GAAG,yBAAyB,CAAC;MAEzE6C,KAAK,CAACjC,gBAAgB,CACpB,OAAO;QAAA,IAAAqD,KAAA,OAAAjC,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CACP,SAAAgC,SAAgBC,CAAC;UAAA,OAAAlC,YAAA,YAAAO,IAAA,UAAA4B,UAAAC,SAAA;YAAA,kBAAAA,SAAA,CAAA1B,IAAA,GAAA0B,SAAA,CAAAzB,IAAA;cAAA;gBAAA,MAEXuB,CAAC,CAACG,OAAO,KAAK,EAAE;kBAAAD,SAAA,CAAAzB,IAAA;kBAAA;gBAAA;gBAAA,IACbuB,CAAC,CAACI,MAAM;kBAAAF,SAAA,CAAAzB,IAAA;kBAAA;gBAAA;gBAAAyB,SAAA,CAAAzB,IAAA;gBAAA,OAELd,WAAW,EAAE;cAAA;cAAA;gBAAA,OAAAuC,SAAA,CAAAZ,IAAA;YAAA;UAAA,GAAAS,QAAA;QAAA,CAGxB;QAAA,iBAAAM,EAAA;UAAA,OAAAP,KAAA,CAAAP,KAAA,OAAAC,SAAA;QAAA;MAAA,KACD,KAAK,CACN;MAED/B,GAAG,CAACmC,SAAS,GAAG,EAAE;MAClBH,UAAU,GAAG3E,EAAE,CAACvB,OAAO,CAAC+G,MAAM,CAC5BpF,GAAG,EACHJ,EAAE,CAACC,KAAK,CAACwF,QAAQ,GAAG,iBAAiB,EACrC,MAAM,CACP;MACDd,UAAU,CAACjD,YAAY,CAAC,OAAO,EAAE1B,EAAE,CAACzB,KAAK,CAACmH,WAAW,GAAG,eAAe,CAAC;MACxEf,UAAU,CAAChD,gBAAgB,CAAC,OAAO,EAAEkB,WAAW,EAAE,KAAK,CAAC;MACxDF,GAAG,CAACV,WAAW,CAAC0C,UAAU,CAAC;IAC7B,CAAC;IAED,IAAMgB,OAAO,GAAG;MAAE3E,GAAG,EAAE0B,MAAM;MAAEtC,GAAG,EAAHA;IAAI,CAAC;IACpChC,KAAK,CAACwH,cAAc,CAACD,OAAO,CAAC,CAACE,IAAI,CAAC,UAAAF,OAAO,EAAI;MAC5CxE,EAAE,GAAGwE,OAAO,CAACxE,EAAE;MACfyD,WAAW,EAAE;IACf,CAAC,CAAC;IAEF,OAAOpC,IAAI;EACb,CAAC;EAED,IAAMsB,SAAS;IAAA,IAAAgC,KAAA,OAAA/C,kBAAA,aAAG,UAAgBgD,UAAU;MAAA,IAAEC,MAAM,GAAAtB,SAAA,CAAAuB,MAAA,QAAAvB,SAAA,QAAAwB,SAAA,GAAAxB,SAAA,MAAG,CAAC,CAAC;MAAA,IAAElE,OAAO,GAAAkE,SAAA,CAAAuB,MAAA,QAAAvB,SAAA,QAAAwB,SAAA,GAAAxB,SAAA,MAAG,EAAE;MAAA,oBAAA1B,YAAA,YAAAC,IAAA,UAAAkD,SAAA;QAAA,IAAA9C,GAAA,EAAA+C,GAAA,EAAAC,SAAA,EAAAjD,SAAA,EAAArB,OAAA,EAAAuE,OAAA;QAAA,OAAAtD,YAAA,YAAAO,IAAA,UAAAgD,UAAAC,SAAA;UAAA,kBAAAA,SAAA,CAAA9C,IAAA,GAAA8C,SAAA,CAAA7C,IAAA;YAAA;cAAI;cACnEN,GAAG,GAAG,EAAE;cACR+C,GAAG,GAAG,IAAIK,IAAI,EAAE;cAChBJ,SAAS,GAAG,EAAE,GAAGD,GAAG,CAACM,OAAO,EAAE;cAC9BtD,SAAS,GAAG9E,IAAI,CAACiD,IAAI,CAAC6E,GAAG,CAAC,EAChC;cACMrE,OAAO,GAAGtB,iBAAK,CAACkG,GAAG,CAACpG,YAAY,CAACkB,GAAG,GAAG,GAAG,GAAG,KAAK,GAAG4E,SAAS,CAAC;cAAA,MAEjE7F,OAAO,KAAK,MAAM,IAAIA,OAAO,KAAK,QAAQ;gBAAAgG,SAAA,CAAA7C,IAAA;gBAAA;cAAA;cAAA6C,SAAA,CAAAI,EAAA,GAC5CvD,GAAG;cAAAmD,SAAA,CAAAK,EAAA,GACGvI,IAAI,CAACwI,SAAS;cAAAN,SAAA,CAAA7C,IAAA;cAAA,OAAOoD,iBAAiB,CAACf,MAAM,CAAC;YAAA;cAAAQ,SAAA,CAAAQ,EAAA,GAAAR,SAAA,CAAAxC,IAAA;cAAAwC,SAAA,CAAAS,EAAA,GAAEpG,GAAG,CAAC,cAAc,CAAC;cAAA2F,SAAA,CAAAU,EAAA,GAAEnF,OAAO;cAAAyE,SAAA,CAAAW,EAAA,GAAE5G,YAAY;cAAAiG,SAAA,CAAAY,EAAA,OAAAZ,SAAA,CAAAK,EAAA,CAAAL,SAAA,CAAAQ,EAAA,EAAAR,SAAA,CAAAS,EAAA,EAAAT,SAAA,CAAAU,EAAA,EAAAV,SAAA,CAAAW,EAAA;cAAAX,SAAA,CAAAI,EAAA,CAD5FS,IAAI,CAAAxH,IAAA,CAAA2G,SAAA,CAAAI,EAAA,EAAAJ,SAAA,CAAAY,EAAA;cAAAZ,SAAA,CAAA7C,IAAA;cAAA;YAAA;cAIRN,GAAG,CAACgE,IAAI,CACN,IAAI/I,IAAI,CAACwI,SAAS,CAACxG,OAAO,EAAEpC,EAAE,CAACoJ,EAAE,CAAC,SAAS,CAAC,EAAEvF,OAAO,EAAExB,YAAY,CAAC,CACrE;YAAA;cAEH;cACM+F,OAAO,GAAG9F,OAAO,KAAK,QAAQ,GAAGuF,UAAU,0BAAAwB,MAAA,CAA0BC,IAAI,CAACrG,EAAE,CAAC,CAAE;cACrFkC,GAAG,CAACgE,IAAI,CACN,IAAI/I,IAAI,CAACwI,SAAS,CAChB/E,OAAO,EACP7D,EAAE,CAACuJ,IAAI,CAAC,SAAS,CAAC,EAClBhH,iBAAK,CAAC4D,OAAO,CAACiC,OAAO,CAAC,EACtB/F,YAAY,CACb,CACF;cACD8C,GAAG,CAACgE,IAAI,CACN,IAAI/I,IAAI,CAACwI,SAAS,CAAC/E,OAAO,EAAElB,GAAG,CAAC,SAAS,CAAC,EAAEuC,SAAS,EAAE7C,YAAY,CAAC,CACrE;cACD,IAAIY,EAAE,EAAE;gBACNkC,GAAG,CAACgE,IAAI,CACN,IAAI/I,IAAI,CAACwI,SAAS,CAAC/E,OAAO,EAAE7D,EAAE,CAACwJ,IAAI,CAAC,OAAO,CAAC,EAAEvG,EAAE,EAAEZ,YAAY,CAAC,CAChE;cACH;cAAC,OAAAiG,SAAA,CAAAmB,MAAA,WACM;gBAAE5F,OAAO,EAAPA,OAAO;gBAAEqB,SAAS,EAATA,SAAS;gBAAEC,GAAG,EAAHA;cAAI,CAAC;YAAA;YAAA;cAAA,OAAAmD,SAAA,CAAAhC,IAAA;UAAA;QAAA,GAAA2B,QAAA;MAAA;IAAA,CACnC;IAAA,gBApCKrC,SAASA,CAAA8D,GAAA;MAAA,OAAA9B,KAAA,CAAArB,KAAA,OAAAC,SAAA;IAAA;EAAA,GAoCd;EAED,SAAS8C,IAAIA,CAAEK,MAAM,EAAE;IACrB,IAAMC,CAAC,GAAGrH,iBAAK,CAACsH,GAAG,CAACF,MAAM,EAAE7H,EAAE,CAAC9B,EAAE,CAACwJ,IAAI,CAAC,MAAM,CAAC,CAAC;IAC/C,IAAII,CAAC,EAAE,OAAO,EAAE,GAAGA,CAAC,CAAC/D,KAAK;IAC1B,OAAO,EAAE,GAAGvF,KAAK,CAACwJ,KAAK,CAACH,MAAM,CAAC;EACjC;EAEA,SAAShD,cAAcA,CAAEoD,GAAG,EAAEC,OAAO,EAAEC,IAAI,EAAEpG,OAAO,EAAE;IACpD,IAAMqG,UAAU,GAAGH,GAAG,CAAChG,WAAW,CAACZ,MAAM,CAACmG,IAAI,CAACU,OAAO,CAAC,EAAEA,OAAO,CAAC,CAAC;IAClE,IAAIA,OAAO,CAACzG,GAAG,EAAE;MACfhB,iBAAK,CAAC4H,OAAO,CAACC,gBAAgB,CAACJ,OAAO,CAACxH,GAAG,EAAE,EAAEwF,SAAS,EAAE,UACvDqC,GAAG,EACHC,KAAK,EACL;QACAJ,UAAU,CAACvG,WAAW,GAAG2F,IAAI,CAACU,OAAO,CAAC;MACxC,CAAC,CAAC;IACJ;IACAD,GAAG,CAAChG,WAAW,CAAC7B,GAAG,CAACa,aAAa,CAAC,IAAI,CAAC,CAAC;IACxCgH,GAAG,CAAChG,WAAW,CAACZ,MAAM,CAAC8G,IAAI,EAAEpG,OAAO,CAAC,CAAC;EACxC;;EAEA;;EAEA,SAAS0G,YAAYA,CAAEC,KAAK,EAAExH,YAAY,EAAE;IAC1C,IAAMyH,SAAS,GAAG,CAAC,CAAC;IACpB,IAAIC,GAAG,EAAEC,IAAI;IACb,KAAKD,GAAG,GAAG1H,YAAY,CAAC4H,UAAU,EAAEF,GAAG,EAAEA,GAAG,GAAGA,GAAG,CAACG,WAAW,EAAE;MAC9D,IAAIH,GAAG,CAACI,YAAY,EAAE;QACpBL,SAAS,CAACC,GAAG,CAACI,YAAY,CAACvH,GAAG,CAAC,GAAG,IAAI;MACxC;IACF;IACA,IAAMwH,QAAQ,GAAGxI,iBAAK,CAACyI,IAAI,CAACR,KAAK,EAAExK,EAAE,CAACoJ,EAAE,CAAC,SAAS,CAAC,CAAC;IACpD,IAAM6B,MAAM,GAAG,CAAC,CAAC;IACjBF,QAAQ,CAACG,OAAO,CAAC,UAAUC,CAAC,EAAE;MAC5BF,MAAM,CAACE,CAAC,CAAC5H,GAAG,CAAC,GAAG,IAAI;MACpB,IAAI,CAACkH,SAAS,CAACU,CAAC,CAAC5H,GAAG,CAAC,EAAE;QACrB6H,UAAU,CAACD,CAAC,CAAC;MACf;IACF,CAAC,CAAC;;IAEF;IACA,KAAKT,GAAG,GAAG1H,YAAY,CAAC4H,UAAU,EAAEF,GAAG,GAAI;MACzCC,IAAI,GAAGD,GAAG,CAACG,WAAW;MACtB,IAAIH,GAAG,CAACI,YAAY,IAAI,CAACG,MAAM,CAACP,GAAG,CAACI,YAAY,CAACvH,GAAG,CAAC,EAAE;QACrDP,YAAY,CAACqI,WAAW,CAACX,GAAG,CAAC;MAC/B;MACAA,GAAG,GAAGC,IAAI;IACZ;EACF;EAEA,IAAM9B,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAahF,OAAO,EAAE;IAC3C,IAAIyH,GAAG,GAAGzH,OAAO;IACjB;IACA,OAAOyH,GAAG,EAAE;MACV;MACAA,GAAG,GAAG/I,iBAAK,CAACgJ,kBAAkB,CAAC1H,OAAO,EAAElB,GAAG,CAAC,cAAc,CAAC,CAAC;IAC9D;IACA,OAAO2I,GAAG;EACZ,CAAC;EAED,IAAME,cAAc;IAAA,IAAAC,KAAA,OAAA5G,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CAAG,SAAA2G,SAAgB7H,OAAO;MAAA,IAAA8H,SAAA;MAAA,OAAA7G,YAAA,YAAAO,IAAA,UAAAuG,UAAAC,SAAA;QAAA,kBAAAA,SAAA,CAAArG,IAAA,GAAAqG,SAAA,CAAApG,IAAA;UAAA;YAAAoG,SAAA,CAAApG,IAAA;YAAA,OAEpBlD,iBAAK,CAACuJ,mBAAmB,CAACjI,OAAO,EAAExB,YAAY,CAAC;UAAA;YAAlEsJ,SAAS,GAAAE,SAAA,CAAA/F,IAAA;YACf5C,OAAO,CAACmD,MAAM,CAACsF,SAAS,EAAE,EAAE,EAAE,UAAUpI,GAAG,EAAEwI,EAAE,EAAE/F,IAAI,EAAE;cACrD,IAAI,CAAC+F,EAAE,EAAE;gBACP9H,QAAQ,CAACG,KAAK,CAAC,uBAAuB,GAAG4B,IAAI,CAAC;cAChD,CAAC,MAAM;gBACLuE,YAAY,CAACnI,OAAO,EAAEY,YAAY,CAAC;cACrC;YACF,CAAC,CAAC;UAAA;UAAA;YAAA,OAAA6I,SAAA,CAAAvF,IAAA;QAAA;MAAA,GAAAoF,QAAA;IAAA,CACH;IAAA,gBAVKF,cAAcA,CAAAQ,GAAA;MAAA,OAAAP,KAAA,CAAAlF,KAAA,OAAAC,SAAA;IAAA;EAAA,GAUnB;EAED,IAAM4E,UAAU,GAAG,SAAbA,UAAUA,CAAavH,OAAO,EAAE;IACpC,IAAMqC,QAAQ,GAAG;MACf,MAAM,EAAErC,OAAO;MACf,UAAU,EAAEtB,iBAAK,CAACsH,GAAG,CAAChG,OAAO,EAAE7D,EAAE,CAACwJ,IAAI,CAAC,OAAO,CAAC,CAAC;MAChD,OAAO,EAAEjH,iBAAK,CAACsH,GAAG,CAAChG,OAAO,EAAElB,GAAG,CAAC,SAAS,CAAC,CAAC;MAC3C,UAAU,EAAEJ,iBAAK,CAACsH,GAAG,CAAChG,OAAO,EAAE7D,EAAE,CAACuJ,IAAI,CAAC,SAAS,CAAC;IACnD,CAAC;IACDnD,aAAa,CAACF,QAAQ,EAAE,IAAI,CAAC,EAAC;EAChC,CAAC;;EAED,IAAME,aAAa,GAAG,SAAhBA,aAAaA,CAAaF,QAAQ,EAAE+F,KAAK,EAAE;IAC/C,IAAMjC,OAAO,GAAG9D,QAAQ,CAAC,UAAU,CAAC;IACpC,IAAMrC,OAAO,GAAGqC,QAAQ,CAAC,MAAM,CAAC;IAChC,IAAM+D,IAAI,GAAG/D,QAAQ,CAAC,OAAO,CAAC;IAC9B,IAAMgG,OAAO,GAAGhG,QAAQ,CAAC,UAAU,CAAC;IAEpC,IAAMiG,UAAU,GAAGlC,IAAI,CAACpE,KAAK;IAC7B,IAAMuG,EAAE,GAAGlK,GAAG,CAACa,aAAa,CAAC,IAAI,CAAC;IAClCqJ,EAAE,CAAC1H,SAAS,GAAGyH,UAAU;IACzBC,EAAE,CAACtB,YAAY,GAAGjH,OAAO;IAEzB,IAAIwI,IAAI,GAAG,KAAK;IAChB,KAAK,IAAI3B,GAAG,GAAG1H,YAAY,CAAC4H,UAAU,GAAIF,GAAG,GAAGA,GAAG,CAACG,WAAW,EAAE;MAC/D,IAAI,CAACH,GAAG,EAAE;QACR;QACA;MACF;MACA,IACGyB,UAAU,GAAGzB,GAAG,CAAChG,SAAS,IAAI9B,WAAW,IACzCuJ,UAAU,GAAGzB,GAAG,CAAChG,SAAS,IAAI,CAAC9B,WAAY,EAC5C;QACAI,YAAY,CAACsJ,YAAY,CAACF,EAAE,EAAE1B,GAAG,CAAC;QAClC2B,IAAI,GAAG,IAAI;QACX;MACF;IACF;IACA,IAAI,CAACA,IAAI,EAAE;MACTrJ,YAAY,CAACe,WAAW,CAACqI,EAAE,CAAC;IAC9B;IAEA,IAAMrC,GAAG,GAAG7H,GAAG,CAACa,aAAa,CAAC,IAAI,CAAC;IACnCqJ,EAAE,CAACrI,WAAW,CAACgG,GAAG,CAAC;IACnBpD,cAAc,CAACoD,GAAG,EAAEC,OAAO,EAAElI,EAAE,CAACvB,OAAO,CAACgM,SAAS,CAACJ,UAAU,CAAC,EAAEtI,OAAO,CAAC;IAEvE,IAAM2I,GAAG,GAAGtK,GAAG,CAACa,aAAa,CAAC,IAAI,CAAC;IACnCqJ,EAAE,CAACrI,WAAW,CAACyI,GAAG,CAAC;IACnB,IAAM1I,GAAG,GAAG5B,GAAG,CAACa,aAAa,CAAC,GAAG,CAAC;IAClCe,GAAG,CAACN,YAAY,CACd,OAAO,EACPX,gBAAgB,IACboJ,KAAK,GAAG,4BAA4B,GAAG,2BAA2B,CAAC,CACvE;IACDO,GAAG,CAACzI,WAAW,CAACD,GAAG,CAAC;IACpBA,GAAG,CAACH,WAAW,GAAGuI,OAAO,CAACrG,KAAK;IAE/B,IAAM4G,GAAG,GAAGvK,GAAG,CAACa,aAAa,CAAC,IAAI,CAAC;IACnCqJ,EAAE,CAACrI,WAAW,CAAC0I,GAAG,CAAC;IAEnB,IAAMC,SAAS,GAAGxK,GAAG,CAACa,aAAa,CAAC,QAAQ,CAAC;IAC7C0J,GAAG,CAAC1I,WAAW,CAAC2I,SAAS,CAAC;IAC1BA,SAAS,CAAC/I,WAAW,GAAG,GAAG;IAE3ByI,EAAE,CAAC5I,YAAY,CAAC,OAAO,EAAE,cAAc,CAAC,EAAC;IACzCkJ,SAAS,CAAClJ,YAAY,CAAC,OAAO,EAAE,kBAAkB,CAAC;IACnDkJ,SAAS,CAAClJ,YAAY,CAAC,OAAO,EAAE,aAAa,CAAC;IAC9CkJ,SAAS,CAACjJ,gBAAgB,CACxB,OAAO,EACP,UAAUkJ,MAAM,EAAE;MAChBF,GAAG,CAACpB,WAAW,CAACqB,SAAS,CAAC,EAAC;MAC3B,IAAME,YAAY,GAAG1K,GAAG,CAACa,aAAa,CAAC,QAAQ,CAAC;MAChD6J,YAAY,CAACjJ,WAAW,GAAG,QAAQ;MACnC8I,GAAG,CAAC1I,WAAW,CAAC6I,YAAY,CAAC,CAACnJ,gBAAgB,CAC5C,OAAO,EACP,UAAUkJ,MAAM,EAAE;QAChBF,GAAG,CAACpB,WAAW,CAACwB,UAAU,CAAC;QAC3BJ,GAAG,CAACpB,WAAW,CAACuB,YAAY,CAAC;QAC7BH,GAAG,CAAC1I,WAAW,CAAC2I,SAAS,CAAC;MAC5B,CAAC,EACD,KAAK,CACN;MACD,IAAMG,UAAU,GAAG3K,GAAG,CAACa,aAAa,CAAC,QAAQ,CAAC;MAC9C8J,UAAU,CAAClJ,WAAW,GAAG,gBAAgB;MACzC8I,GAAG,CAAC1I,WAAW,CAAC8I,UAAU,CAAC,CAACpJ,gBAAgB,CAC1C,OAAO;QAAA,IAAAqJ,KAAA,OAAAjI,kBAAA,2BAAAC,YAAA,YAAAC,IAAA,CACP,SAAAgI,SAAgBJ,MAAM;UAAA,IAAAK,iBAAA,EAAA7H,GAAA;UAAA,OAAAL,YAAA,YAAAO,IAAA,UAAA4H,UAAAC,SAAA;YAAA,kBAAAA,SAAA,CAAA1H,IAAA,GAAA0H,SAAA,CAAAzH,IAAA;cAAA;gBAAI;gBACxBgH,GAAG,CAACpB,WAAW,CAACwB,UAAU,CAAC;gBAC3BJ,GAAG,CAACpB,WAAW,CAACuB,YAAY,CAAC;gBAC7B;gBAAA,MACI3J,EAAE,CAAC4C,KAAK,KAAKtD,iBAAK,CAACsH,GAAG,CAAChG,OAAO,EAAE7D,EAAE,CAACwJ,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC3D,KAAK;kBAAAqH,SAAA,CAAAzH,IAAA;kBAAA;gBAAA;gBAAAyH,SAAA,CAAAzH,IAAA;gBAAA,OACnCG,SAAS,EAAE;cAAA;gBAAAoH,iBAAA,GAAAE,SAAA,CAAApH,IAAA;gBAAzBX,GAAG,GAAA6H,iBAAA,CAAH7H,GAAG;gBAAuB;gBAClCjC,OAAO,CAACmD,MAAM,CAAC,EAAE,EAAElB,GAAG,CAAC;cAAA;cAAA;gBAAA,OAAA+H,SAAA,CAAA5G,IAAA;YAAA;UAAA,GAAAyG,QAAA;QAAA,CAE1B;QAAA,iBAAAI,GAAA;UAAA,OAAAL,KAAA,CAAAvG,KAAA,OAAAC,SAAA;QAAA;MAAA,KACD,KAAK,CACN;IACH,CAAC,EACD,KAAK,CACN;EACH,CAAC;;EAED;;EAEAxD,YAAY,GAAGd,GAAG,CAACa,aAAa,CAAC,OAAO,CAAC;EACzCC,YAAY,CAACiJ,KAAK,GAAG,KAAK;EAC1BnJ,GAAG,CAACiB,WAAW,CAACf,YAAY,CAAC;EAC7BA,YAAY,CAACQ,YAAY,CAAC,OAAO,EAAE,cAAc,CAAC,EAAC;;EAEnD,IAAM4I,EAAE,GAAG/H,cAAc,EAAE;EAC3B,IAAIzB,WAAW,EAAE;IACfI,YAAY,CAACsJ,YAAY,CAACF,EAAE,EAAEpJ,YAAY,CAAC4H,UAAU,CAAC,EAAC;EACzD,CAAC,MAAM;IACL5H,YAAY,CAACe,WAAW,CAACqI,EAAE,CAAC,EAAC;EAC/B;;EAEA,IAAIgB,KAAK;EACT;EACA,IAAI9K,OAAO,CAAC8K,KAAK,EAAE;IACjBA,KAAK,GAAG9K,OAAO,CAAC8K,KAAK;EACvB,CAAC,MAAM;IACLA,KAAK,GAAG,IAAIhN,IAAI,CAACiN,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,CAACrC,OAAO,CAAC,UAAUsC,CAAC,EAAE;MACtBJ,KAAK,CAACK,IAAI,CAACtE,IAAI,CAAEmE,CAAC,CAACE,CAAC,CAAC,GAAGpN,IAAI,CAACsN,QAAQ,CAACF,CAAC,CAAC,CAAE;IAC5C,CAAC,CAAC;IACFJ,KAAK,CAACO,GAAG,CAACC,GAAG,CAACxL,OAAO,EAAEK,EAAE,CAAC,SAAS,CAAC,EAAE6K,CAAC,CAAChC,GAAG,CAAC;IAC5C8B,KAAK,CAACO,GAAG,CAACC,GAAG,CAACN,CAAC,CAAChC,GAAG,EAAEtL,EAAE,CAAC6N,GAAG,CAAC,SAAS,CAAC,EAAEP,CAAC,CAACrD,IAAI,CAAC;IAC/CmD,KAAK,CAACO,GAAG,CAACC,GAAG,CAACN,CAAC,CAAChC,GAAG,EAAEtL,EAAE,CAACwJ,IAAI,CAAC,OAAO,CAAC,EAAE8D,CAAC,CAACtD,OAAO,CAAC;IACjDoD,KAAK,CAACO,GAAG,CAACC,GAAG,CAACN,CAAC,CAAChC,GAAG,EAAEtL,EAAE,CAACuJ,IAAI,CAAC,SAAS,CAAC,EAAE+D,CAAC,CAACpB,OAAO,CAAC;EACrD;EAEA,SAAS4B,SAASA,CAAA,EAAI;IACpB9K,YAAY,CAACiJ,KAAK,GAAG,IAAI,EAAC;EAC5B;;EACA1J,iBAAK,CAAC6K,KAAK,CAACA,KAAK,EAAEhH,aAAa,EAAE4B,SAAS,EAAE8F,SAAS,CAAC;EACvDhL,GAAG,CAACiL,OAAO,GAAG,YAAY;IACxBxD,YAAY,CAACnI,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","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","UI","icons","media","thread","dom","kb","subject","messageStore","options","store","doc","WF","Namespace","DCT","newestFirst","messageBodyStyle","div","createElement","messageTable","me","updater","anchor","text","term","a","uri","setAttribute","addEventListener","openHrefInOutlineMode","textContent","mention","message","pre","appendChild","createTextNode","announce","log","warn","error","newMessageForm","form","lhs","middle","rhs","AJAR_date","sendMessage","_ref","_asyncToGenerator2","_regenerator","mark","_callee","_yield$appendMsg","dateStamp","sts","sendComplete","wrap","_callee$","_context","prev","next","field","disabled","appendMsg","value","sent","success","body","errorMessageBlock","bindings","literal","renderMessage","update","stop","apply","arguments","sendButton","turnOnInput","creatorAndDate","innerHTML","rows","_ref2","_callee2","e","_callee2$","_context2","keyCode","altKey","_x","button","iconBase","buttonStyle","context","ensureLoggedIn","then","_ref3","fieldValue","oldMsg","length","undefined","_callee3","now","timestamp","msgBody","_callee3$","_context3","Date","getTime","sym","t0","t1","Statement","mostRecentVersion","t2","t3","t4","t5","t6","push","wf","concat","nick","sioc","foaf","abrupt","_x2","person","s","any","label","td1","creator","date","nickAnchor","fetcher","nowOrWhenFetched","_ok","_body","syncMessages","about","displayed","ele","ele2","firstChild","nextSibling","AJAR_subject","messages","each","stored","forEach","m","addMessage","removeChild","msg","statementsMatching","_deleteMessage","_ref4","_callee4","deletions","_callee4$","_context4","connectedStatements","ok","_x3","fresh","content","dateString","tr","done","insertBefore","shortDate","td2","td3","delButton","_event","cancelButton","sureButton","_ref5","_callee5","_yield$appendMsg2","_callee5$","_context5","_x4","query","Query","v","vs","x","vars","variable","pat","add","dct","doneQuery","refresh"],"sources":["../../src/chat/thread.js"],"sourcesContent":["/**\n * Contains the [[thread]] function\n * @packageDocumentation\n */\n\nimport { icons } from '../iconBase'\nimport { store } from 'solid-logic'\nimport { media } from '../media/index'\nimport * as ns from '../ns'\nimport * as login from '../login/login'\nimport * as pad from '../pad'\nimport * as $rdf from 'rdflib' // pull in first avoid cross-refs\nimport * as style from '../style'\nimport * as utils from '../utils'\nimport * as widgets from '../widgets'\n\nconst UI = { icons, ns, media, pad, style, utils, widgets }\n\n/**\n * HTML component for a chat thread\n */\nexport function thread (dom, kb, subject, messageStore, options) {\n kb = kb || store\n messageStore = messageStore.doc() // No hash\n const ns = UI.ns\n const WF = $rdf.Namespace('http://www.w3.org/2005/01/wf/flow#')\n const DCT = $rdf.Namespace('http://purl.org/dc/terms/')\n\n options = options || {}\n\n const newestFirst = !!options.newestFirst\n\n const messageBodyStyle =\n 'white-space: pre-wrap; width: 90%; font-size:100%; border: 0.07em solid #eee; padding: .2em 0.5em; margin: 0.1em 1em 0.1em 1em;'\n // 'font-size: 100%; margin: 0.1em 1em 0.1em 1em; background-color: white; white-space: pre-wrap; padding: 0.1em;'\n\n const div = dom.createElement('div')\n // eslint-disable-next-line prefer-const\n let messageTable\n\n let me\n\n const updater = store.updater\n\n const anchor = function (text, term) {\n // If there is no link return an element anyway\n const a = dom.createElement('a')\n if (term && term.uri) {\n a.setAttribute('href', term.uri)\n a.addEventListener('click', UI.widgets.openHrefInOutlineMode, true)\n a.setAttribute('style', 'color: #3B5998; text-decoration: none; ') // font-weight: bold\n }\n a.textContent = text\n return a\n }\n\n const mention = function mention (message, style) {\n const pre = dom.createElement('pre')\n pre.setAttribute('style', style || 'color: grey')\n div.appendChild(pre)\n pre.appendChild(dom.createTextNode(message))\n return pre\n }\n\n const announce = {\n log: function (message) {\n mention(message, 'color: #111;')\n },\n warn: function (message) {\n mention(message, 'color: #880;')\n },\n error: function (message) {\n mention(message, 'color: #800;')\n }\n }\n\n /**\n * Form for a new message\n */\n const newMessageForm = function () {\n const form = dom.createElement('tr')\n const lhs = dom.createElement('td')\n const middle = dom.createElement('td')\n const rhs = dom.createElement('td')\n form.appendChild(lhs)\n form.appendChild(middle)\n form.appendChild(rhs)\n form.AJAR_date = '9999-01-01T00:00:00Z' // ISO format for field sort\n\n const sendMessage = async function () {\n // titlefield.setAttribute('class','pendingedit')\n // titlefield.disabled = true\n field.setAttribute('class', 'pendingedit')\n field.disabled = true\n const { message, dateStamp, sts } = await appendMsg(field.value)\n\n const sendComplete = function (uri, success, body) {\n if (!success) {\n form.appendChild(\n UI.widgets.errorMessageBlock(dom, 'Error writing message: ' + body)\n )\n } else {\n const bindings = {\n '?msg': message,\n '?content': store.literal(field.value),\n '?date': dateStamp,\n '?creator': me\n }\n renderMessage(bindings, false) // not green\n\n field.value = '' // clear from out for reuse\n field.setAttribute('class', '')\n field.disabled = false\n }\n }\n updater.update([], sts, sendComplete)\n }\n form.appendChild(dom.createElement('br'))\n\n let field, sendButton\n const turnOnInput = function () {\n creatorAndDate(lhs, me, '', null)\n\n field = dom.createElement('textarea')\n middle.innerHTML = ''\n middle.appendChild(field)\n field.rows = 3\n // field.cols = 40\n field.setAttribute('style', messageBodyStyle + 'background-color: #eef;')\n\n field.addEventListener(\n 'keyup',\n async function (e) {\n // User preference?\n if (e.keyCode === 13) {\n if (!e.altKey) {\n // Alt-Enter just adds a new line\n await sendMessage()\n }\n }\n },\n false\n )\n\n rhs.innerHTML = ''\n sendButton = UI.widgets.button(\n dom,\n UI.icons.iconBase + 'noun_383448.svg',\n 'Send'\n )\n sendButton.setAttribute('style', UI.style.buttonStyle + 'float: right;')\n sendButton.addEventListener('click', sendMessage, false)\n rhs.appendChild(sendButton)\n }\n\n const context = { div: middle, dom }\n login.ensureLoggedIn(context).then(context => {\n me = context.me\n turnOnInput()\n })\n\n return form\n }\n\n const appendMsg = async function (fieldValue, oldMsg = {}, options = '') { // alain\n const sts = []\n const now = new Date()\n const timestamp = '' + now.getTime()\n const dateStamp = $rdf.term(now)\n // http://www.w3schools.com/jsref/jsref_obj_date.asp\n const message = store.sym(messageStore.uri + '#' + 'Msg' + timestamp)\n\n if (options === 'edit' || options === 'delete') {\n sts.push(\n new $rdf.Statement(await mostRecentVersion(oldMsg), DCT('isReplacedBy'), message, messageStore)\n )\n } else {\n sts.push(\n new $rdf.Statement(subject, ns.wf('message'), message, messageStore)\n )\n }\n // sts.push(new $rdf.Statement(message, ns.dc('title'), store.literal(titlefield.value), messageStore))\n const msgBody = options !== 'delete' ? fieldValue : `message deleted\\nby ${nick(me)}`\n sts.push(\n new $rdf.Statement(\n message,\n ns.sioc('content'),\n store.literal(msgBody),\n messageStore\n )\n )\n sts.push(\n new $rdf.Statement(message, DCT('created'), dateStamp, messageStore)\n )\n if (me) {\n sts.push(\n new $rdf.Statement(message, ns.foaf('maker'), me, messageStore)\n )\n }\n return { message, dateStamp, sts }\n }\n\n function nick (person) {\n const s = store.any(person, UI.ns.foaf('nick'))\n if (s) return '' + s.value\n return '' + utils.label(person)\n }\n\n function creatorAndDate (td1, creator, date, message) {\n const nickAnchor = td1.appendChild(anchor(nick(creator), creator))\n if (creator.uri) {\n store.fetcher.nowOrWhenFetched(creator.doc(), undefined, function (\n _ok,\n _body\n ) {\n nickAnchor.textContent = nick(creator)\n })\n }\n td1.appendChild(dom.createElement('br'))\n td1.appendChild(anchor(date, message))\n }\n\n // ///////////////////////////////////////////////////////////////////////\n\n function syncMessages (about, messageTable) {\n const displayed = {}\n let ele, ele2\n for (ele = messageTable.firstChild; ele; ele = ele.nextSibling) {\n if (ele.AJAR_subject) {\n displayed[ele.AJAR_subject.uri] = true\n }\n }\n const messages = store.each(about, ns.wf('message'))\n const stored = {}\n messages.forEach(function (m) {\n stored[m.uri] = true\n if (!displayed[m.uri]) {\n addMessage(m)\n }\n })\n\n // eslint-disable-next-line space-in-parens\n for (ele = messageTable.firstChild; ele; ) {\n ele2 = ele.nextSibling\n if (ele.AJAR_subject && !stored[ele.AJAR_subject.uri]) {\n messageTable.removeChild(ele)\n }\n ele = ele2\n }\n }\n\n const mostRecentVersion = function (message) {\n let msg = message\n // const listMsg = []\n while (msg) {\n // 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 async function (_event) { // alain: test for delete or edit depending on me = maker\n td3.removeChild(sureButton)\n td3.removeChild(cancelButton)\n // deleteMessage(message) // alain or sendMessage(message, 'delete' or 'edit') //alain\n if (me.value === store.any(message, ns.foaf('maker')).value) {\n const { sts } = await appendMsg() // alain\n updater.update([], sts)\n }\n },\n false\n )\n },\n false\n )\n }\n\n // Messages with date, author etc\n\n messageTable = dom.createElement('table')\n messageTable.fresh = false\n div.appendChild(messageTable)\n messageTable.setAttribute('style', 'width: 100%;') // fill that div!\n\n const tr = newMessageForm()\n if (newestFirst) {\n messageTable.insertBefore(tr, messageTable.firstChild) // If newestFirst\n } else {\n messageTable.appendChild(tr) // not newestFirst\n }\n\n let query\n // Do this with a live query to pull in messages from web\n if (options.query) {\n query = options.query\n } else {\n query = new $rdf.Query('Messages')\n const v = {} // semicolon needed\n const vs = ['msg', 'date', 'creator', 'content']\n vs.forEach(function (x) {\n query.vars.push((v[x] = $rdf.variable(x)))\n })\n query.pat.add(subject, WF('message'), v.msg)\n query.pat.add(v.msg, ns.dct('created'), v.date)\n query.pat.add(v.msg, ns.foaf('maker'), v.creator)\n query.pat.add(v.msg, ns.sioc('content'), v.content)\n }\n\n function doneQuery () {\n messageTable.fresh = true // any new are fresh and so will be greenish\n }\n store.query(query, renderMessage, undefined, doneQuery)\n div.refresh = function () {\n syncMessages(subject, messageTable)\n }\n // syncMessages(subject, messageTable) // no the query will do this async\n return div\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/footer/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/footer/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAW7C,MAAM,MAAM,aAAa,GAAG;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B,CAAA;AAEH;;;;GAIG;AACH,wBAAsB,UAAU,CAAE,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,aAAa,iBAU1E;AACD;;GAEG;AACH,wBAAgB,aAAa,CAAE,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,GAAG,IAAI,EAAE,QAAQ,EAAE,SAAS,GAAG,IAAI,EAAE,OAAO,CAAC,EAAE,aAAa,uBAM/I;AACD;;GAEG;AACH,wBAAgB,yBAAyB,CAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,IAAI,EAAE,GAAG,EAAE,SAAS,GAAG,IAAI,EAAE,QAAQ,EAAE,SAAS,GAAG,IAAI,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,WAAW,CAyC5K"}
|
package/lib/footer/index.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
@@ -10,7 +11,10 @@ exports.rebuildFooter = rebuildFooter;
|
|
|
10
11
|
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
11
12
|
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
12
13
|
var _solidLogic = require("solid-logic");
|
|
14
|
+
var style = _interopRequireWildcard(require("../style"));
|
|
13
15
|
var _headerFooterHelpers = require("../utils/headerFooterHelpers");
|
|
16
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
17
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
14
18
|
/*
|
|
15
19
|
This file was copied from mashlib/src/global/footer.ts file. It is modified to
|
|
16
20
|
work in solid-ui by adjusting where imported functions are found.
|
|
@@ -91,7 +95,7 @@ function createControllerInfoBlock(store, user, pod, podOwner, options) {
|
|
|
91
95
|
if (!pod || !podOwner || user && user.equals(podOwner)) {
|
|
92
96
|
return profileLinkContainer;
|
|
93
97
|
}
|
|
94
|
-
|
|
98
|
+
profileLinkContainer.setAttribute('style', style.footer);
|
|
95
99
|
var podLinkPre = document.createElement('span');
|
|
96
100
|
podLinkPre.innerText = "You're visiting ";
|
|
97
101
|
var podLink = document.createElement('a');
|
package/lib/footer/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_solidLogic","require","_headerFooterHelpers","DEFAULT_SOLID_PROJECT_URL","DEFAULT_SOLID_PROJECT_NAME","initFooter","_x","_x2","_initFooter","apply","arguments","_asyncToGenerator2","_regenerator","mark","_callee2","store","options","footer","pod","podOwner","wrap","_callee2$","_context2","prev","next","document","getElementById","abrupt","getPod","getPodOwner","sent","rebuildFooter","authSession","onLogin","onLogout","stop","_callee","user","_callee$","_context","authn","currentUser","innerHTML","t0","createControllerInfoBlock","t1","appendChild","
|
|
1
|
+
{"version":3,"file":"index.js","names":["_solidLogic","require","style","_interopRequireWildcard","_headerFooterHelpers","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","DEFAULT_SOLID_PROJECT_URL","DEFAULT_SOLID_PROJECT_NAME","initFooter","_x","_x2","_initFooter","apply","arguments","_asyncToGenerator2","_regenerator","mark","_callee2","store","options","footer","pod","podOwner","wrap","_callee2$","_context2","prev","next","document","getElementById","abrupt","getPod","getPodOwner","sent","rebuildFooter","authSession","onLogin","onLogout","stop","_callee","user","_callee$","_context","authn","currentUser","innerHTML","t0","createControllerInfoBlock","t1","appendChild","profileLinkContainer","createElement","equals","setAttribute","podLinkPre","innerText","podLink","href","uri","profileLinkPre","profileLink","getName","solidProjectLinkPre","solidProjectLink","solidProjectUrl","solidProjectName","solidProjectLinkPost"],"sources":["../../src/footer/index.ts"],"sourcesContent":["/*\n This file was copied from mashlib/src/global/footer.ts file. It is modified to\n work in solid-ui by adjusting where imported functions are found.\n */\nimport { LiveStore, NamedNode } from 'rdflib'\nimport { authn, authSession } from 'solid-logic'\nimport * as style from '../style'\nimport { getName, getPod, getPodOwner } from '../utils/headerFooterHelpers'\n\nconst DEFAULT_SOLID_PROJECT_URL = 'https://solidproject.org'\nconst DEFAULT_SOLID_PROJECT_NAME = 'solidproject.org'\n\n/*\n FooterOptions allow for customizing the link and name of the link part of the footer.\n */\nexport type FooterOptions = {\n solidProjectUrl?: string,\n solidProjectName?: string\n }\n\n/**\n * Initialize footer component, the footer object returned depends on whether the user is authenticated.\n * @param store the data store\n * @returns the footer\n */\nexport async function initFooter (store: LiveStore, options?: FooterOptions) {\n const footer = document.getElementById('PageFooter')\n if (!footer) {\n return\n }\n const pod = getPod()\n const podOwner = await getPodOwner(pod, store)\n rebuildFooter(footer, store, pod, podOwner, options)()\n authSession.onLogin(rebuildFooter(footer, store, pod, podOwner, options))\n authSession.onLogout(rebuildFooter(footer, store, pod, podOwner, options))\n}\n/**\n * @ignore exporting this only for the unit test\n */\nexport function rebuildFooter (footer: HTMLElement, store: LiveStore, pod: NamedNode | null, podOwner: NamedNode | null, options?: FooterOptions) {\n return async () => {\n const user = authn.currentUser()\n footer.innerHTML = ''\n footer.appendChild(await createControllerInfoBlock(store, user, pod, podOwner, options))\n }\n}\n/**\n * @ignore exporting this only for the unit test\n */\nexport function createControllerInfoBlock (store: LiveStore, user: NamedNode | null, pod: NamedNode | null, podOwner: NamedNode | null, options?: FooterOptions): HTMLElement {\n const profileLinkContainer = document.createElement('div')\n if (!pod || !podOwner || (user && user.equals(podOwner))) {\n return profileLinkContainer\n }\n\n profileLinkContainer.setAttribute('style', style.footer)\n\n const podLinkPre = document.createElement('span')\n podLinkPre.innerText = \"You're visiting \"\n\n const podLink = document.createElement('a')\n podLink.href = pod.uri\n podLink.innerText = 'the Pod'\n\n const profileLinkPre = document.createElement('span')\n profileLinkPre.innerText = ' controlled by '\n\n const profileLink = document.createElement('a')\n profileLink.href = podOwner.uri\n profileLink.innerText = getName(store, podOwner)\n\n const solidProjectLinkPre = document.createElement('span')\n solidProjectLinkPre.innerText = '. For more info, check out '\n\n const solidProjectLink = document.createElement('a')\n solidProjectLink.href = options && options.solidProjectUrl ? options.solidProjectUrl : DEFAULT_SOLID_PROJECT_URL\n solidProjectLink.innerText = options && options.solidProjectName ? options.solidProjectName : DEFAULT_SOLID_PROJECT_NAME\n\n const solidProjectLinkPost = document.createElement('span')\n solidProjectLinkPost.innerText = '.'\n\n profileLinkContainer.appendChild(podLinkPre)\n profileLinkContainer.appendChild(podLink)\n profileLinkContainer.appendChild(profileLinkPre)\n profileLinkContainer.appendChild(profileLink)\n profileLinkContainer.appendChild(solidProjectLinkPre)\n profileLinkContainer.appendChild(solidProjectLink)\n profileLinkContainer.appendChild(solidProjectLinkPost)\n\n return profileLinkContainer\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/header/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/header/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAgBlD,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,IAAI,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,SAAS,GAAG,YAAY,GAAG,cAAc,CAAA;AAMrD,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,SAAS,EAAE,CAAA;CAC3B,CAAA;AAED;;;;;;GAMG;AACH,wBAAsB,UAAU,CAAE,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,SAAS,EAAE,EAAE,OAAO,CAAC,EAAE,aAAa,iBAU1G;AACD;;GAEG;AACH,wBAAgB,aAAa,CAAE,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,EAAE,OAAO,CAAC,EAAE,aAAa,uBAM5I;AACD;;GAEG;AACH,wBAAsB,YAAY,CAAE,KAAK,EAAE,cAAc,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,GAAG,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,CAAC,CA+B3K;AACD;;GAEG;AACH,wBAAgB,cAAc,CAAE,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,SAAS,EAAE,8BAkDjF;AACD;;GAEG;AACH,wBAAgB,wBAAwB,mBAKvC;AACD;;GAEG;AACH,wBAAgB,oBAAoB,CAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,kCAAkC,GAAG,WAAW,CAY7G;AACD;;GAEG;AACH,wBAAgB,kBAAkB,CAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,WAAW,CAa7F;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAE,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC,CAyD7H;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAE,KAAK,EAAE,WAAW,GAAG,WAAW,CAKnE;AACD;;GAEG;AACH,wBAAgB,aAAa,CAAE,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,GAAG,MAAM,GAAG,WAAW,CAe3F"}
|