solid-ui 3.0.6 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (129) hide show
  1. package/README.md +128 -2
  2. package/dist/acl/access-groups.js +1 -1
  3. package/dist/components/footer/index.d.ts +1 -0
  4. package/dist/components/footer/index.esm.js +24364 -0
  5. package/dist/components/footer/index.esm.js.map +1 -0
  6. package/dist/components/footer/index.esm.min.js +137 -0
  7. package/dist/components/footer/index.esm.min.js.map +1 -0
  8. package/dist/components/footer/index.js +23252 -0
  9. package/dist/components/footer/index.js.map +1 -0
  10. package/dist/components/footer/index.min.js +125 -0
  11. package/dist/components/footer/index.min.js.map +1 -0
  12. package/dist/components/header/index.d.ts +1 -0
  13. package/dist/components/header/index.esm.js +1894 -0
  14. package/dist/components/header/index.esm.js.map +1 -0
  15. package/dist/components/header/index.esm.min.js +1083 -0
  16. package/dist/components/header/index.esm.min.js.map +1 -0
  17. package/dist/components/header/index.js +1855 -0
  18. package/dist/components/header/index.js.map +1 -0
  19. package/dist/components/header/index.min.js +1084 -0
  20. package/dist/components/header/index.min.js.map +1 -0
  21. package/dist/components/loginButton/index.d.ts +1 -0
  22. package/dist/components/loginButton/index.esm.js +719 -0
  23. package/dist/components/loginButton/index.esm.js.map +1 -0
  24. package/dist/components/loginButton/index.esm.min.js +402 -0
  25. package/dist/components/loginButton/index.esm.min.js.map +1 -0
  26. package/dist/components/loginButton/index.js +701 -0
  27. package/dist/components/loginButton/index.js.map +1 -0
  28. package/dist/components/loginButton/index.min.js +402 -0
  29. package/dist/components/loginButton/index.min.js.map +1 -0
  30. package/dist/components/signupButton/index.d.ts +1 -0
  31. package/dist/components/signupButton/index.esm.js +270 -0
  32. package/dist/components/signupButton/index.esm.js.map +1 -0
  33. package/dist/components/signupButton/index.esm.min.js +82 -0
  34. package/dist/components/signupButton/index.esm.min.js.map +1 -0
  35. package/dist/components/signupButton/index.js +264 -0
  36. package/dist/components/signupButton/index.js.map +1 -0
  37. package/dist/components/signupButton/index.min.js +82 -0
  38. package/dist/components/signupButton/index.min.js.map +1 -0
  39. package/dist/footer/index.d.ts.map +1 -1
  40. package/dist/footer/index.js +8 -4
  41. package/dist/footer/index.js.map +1 -1
  42. package/dist/icons/v2/icons-svg/contactIcons.d.ts +3 -0
  43. package/dist/icons/v2/icons-svg/contactIcons.d.ts.map +1 -0
  44. package/dist/icons/v2/icons-svg/contactIcons.js +27 -0
  45. package/dist/icons/v2/icons-svg/contactIcons.js.map +1 -0
  46. package/dist/icons/v2/icons-svg/headerIcons.d.ts +18 -0
  47. package/dist/icons/v2/icons-svg/headerIcons.d.ts.map +1 -0
  48. package/dist/icons/v2/icons-svg/headerIcons.js +245 -0
  49. package/dist/icons/v2/icons-svg/headerIcons.js.map +1 -0
  50. package/dist/icons/v2/icons-svg/pngIcons.d.ts +3 -0
  51. package/dist/icons/v2/icons-svg/pngIcons.d.ts.map +1 -0
  52. package/dist/icons/v2/icons-svg/pngIcons.js +4 -0
  53. package/dist/icons/v2/icons-svg/pngIcons.js.map +1 -0
  54. package/dist/icons/v2/icons-svg/profileIcons.d.ts +23 -0
  55. package/dist/icons/v2/icons-svg/profileIcons.d.ts.map +1 -0
  56. package/dist/icons/v2/icons-svg/profileIcons.js +317 -0
  57. package/dist/icons/v2/icons-svg/profileIcons.js.map +1 -0
  58. package/dist/pad.d.ts.map +1 -1
  59. package/dist/pad.js +13 -13
  60. package/dist/pad.js.map +1 -1
  61. package/dist/solid-ui.esm.js +9560 -12181
  62. package/dist/solid-ui.esm.js.map +1 -1
  63. package/dist/solid-ui.esm.min.js +15 -14
  64. package/dist/solid-ui.esm.min.js.map +1 -1
  65. package/dist/solid-ui.js +12531 -14794
  66. package/dist/solid-ui.js.map +1 -1
  67. package/dist/solid-ui.min.js +23 -22
  68. package/dist/solid-ui.min.js.map +1 -1
  69. package/dist/utils/headerFooterHelpers.d.ts.map +1 -1
  70. package/dist/utils/headerFooterHelpers.js +11 -2
  71. package/dist/utils/headerFooterHelpers.js.map +1 -1
  72. package/dist/v2/components/footer/Footer.d.ts +60 -0
  73. package/dist/v2/components/footer/Footer.d.ts.map +1 -0
  74. package/dist/v2/components/footer/Footer.js +148 -0
  75. package/dist/v2/components/footer/Footer.js.map +1 -0
  76. package/dist/v2/components/footer/Footer.test.d.ts +2 -0
  77. package/dist/v2/components/footer/Footer.test.d.ts.map +1 -0
  78. package/dist/v2/components/footer/Footer.test.js +53 -0
  79. package/dist/v2/components/footer/Footer.test.js.map +1 -0
  80. package/dist/v2/components/footer/index.d.ts +3 -0
  81. package/dist/v2/components/footer/index.d.ts.map +1 -0
  82. package/dist/v2/components/footer/index.js +7 -0
  83. package/dist/v2/components/footer/index.js.map +1 -0
  84. package/dist/v2/components/header/Header.d.ts +155 -0
  85. package/dist/v2/components/header/Header.d.ts.map +1 -0
  86. package/dist/v2/components/header/Header.js +845 -0
  87. package/dist/v2/components/header/Header.js.map +1 -0
  88. package/dist/v2/components/header/header.test.d.ts +2 -0
  89. package/dist/v2/components/header/header.test.d.ts.map +1 -0
  90. package/dist/v2/components/header/header.test.js +242 -0
  91. package/dist/v2/components/header/header.test.js.map +1 -0
  92. package/dist/v2/components/header/index.d.ts +4 -0
  93. package/dist/v2/components/header/index.d.ts.map +1 -0
  94. package/dist/v2/components/header/index.js +7 -0
  95. package/dist/v2/components/header/index.js.map +1 -0
  96. package/dist/v2/components/loginButton/LoginButton.d.ts +62 -0
  97. package/dist/v2/components/loginButton/LoginButton.d.ts.map +1 -0
  98. package/dist/v2/components/loginButton/LoginButton.js +497 -0
  99. package/dist/v2/components/loginButton/LoginButton.js.map +1 -0
  100. package/dist/v2/components/loginButton/LoginButton.test.d.ts +2 -0
  101. package/dist/v2/components/loginButton/LoginButton.test.d.ts.map +1 -0
  102. package/dist/v2/components/loginButton/LoginButton.test.js +53 -0
  103. package/dist/v2/components/loginButton/LoginButton.test.js.map +1 -0
  104. package/dist/v2/components/loginButton/downArrow.d.ts +2 -0
  105. package/dist/v2/components/loginButton/downArrow.d.ts.map +1 -0
  106. package/dist/v2/components/loginButton/downArrow.js +10 -0
  107. package/dist/v2/components/loginButton/downArrow.js.map +1 -0
  108. package/dist/v2/components/loginButton/index.d.ts +3 -0
  109. package/dist/v2/components/loginButton/index.d.ts.map +1 -0
  110. package/dist/v2/components/loginButton/index.js +7 -0
  111. package/dist/v2/components/loginButton/index.js.map +1 -0
  112. package/dist/v2/components/signupButton/SignupButton.d.ts +36 -0
  113. package/dist/v2/components/signupButton/SignupButton.d.ts.map +1 -0
  114. package/dist/v2/components/signupButton/SignupButton.js +84 -0
  115. package/dist/v2/components/signupButton/SignupButton.js.map +1 -0
  116. package/dist/v2/components/signupButton/SignupButton.test.d.ts +2 -0
  117. package/dist/v2/components/signupButton/SignupButton.test.d.ts.map +1 -0
  118. package/dist/v2/components/signupButton/SignupButton.test.js +49 -0
  119. package/dist/v2/components/signupButton/SignupButton.test.js.map +1 -0
  120. package/dist/v2/components/signupButton/index.d.ts +3 -0
  121. package/dist/v2/components/signupButton/index.d.ts.map +1 -0
  122. package/dist/v2/components/signupButton/index.js +7 -0
  123. package/dist/v2/components/signupButton/index.js.map +1 -0
  124. package/dist/versionInfo.js +7 -7
  125. package/dist/widgets/buttons.d.ts +9 -3
  126. package/dist/widgets/buttons.d.ts.map +1 -1
  127. package/dist/widgets/buttons.js +68 -7
  128. package/dist/widgets/buttons.js.map +1 -1
  129. package/package.json +34 -7
@@ -0,0 +1,125 @@
1
+ (()=>{var e={423(e,t,n){"use strict";function i(...e){console.log(...e)}function a(...e){console.warn(...e)}function o(...e){console.error(...e)}function s(...e){console.trace(...e)}n.d(t,{R8:()=>a,Rm:()=>i,uP:()=>s,z3:()=>o})},378(e,t,n){"use strict";n.d(t,{LN:()=>s,Pt:()=>o,i1:()=>r});var i=n(423);const a="https://solidos.github.io/solid-ui/src",o=(e=n.hmd(e)).scriptURI?{iconBase:e.scriptURI.slice(0,e.scriptURI.lastIndexOf("/"))+"/icons/",originalIconBase:e.scriptURI.slice(0,e.scriptURI.lastIndexOf("/"))+"/originalIcons/"}:"undefined"!=typeof $SolidTestEnvironment&&$SolidTestEnvironment.iconBase?{iconBase:$SolidTestEnvironment.iconBase,originalIconBase:$SolidTestEnvironment.originalIconBase}:{iconBase:a+"/icons/",originalIconBase:a+"/originalIcons/"};(0,i.Rm)(" icons.iconBase is set to : "+o.iconBase);const s=o.iconBase,r=o.originalIconBase},325(e,t,n){"use strict";n.d(t,{icons:()=>st.Pt,ns:()=>b});var i={};n.r(i),n.d(i,{LogLevel:()=>x,alert:()=>R,clear:()=>N,debug:()=>T,dumpHTML:()=>$,error:()=>j,escapeForXML:()=>O,info:()=>S,logAscending:()=>B,logDescending:()=>D,msg:()=>A,setInternals:()=>M,setLevel:()=>I,success:()=>L,warn:()=>_});var a={};n.r(a),n.d(a,{AJARImage:()=>ce,RDFComparePredicateObject:()=>ge,RDFComparePredicateSubject:()=>be,addLoadEvent:()=>oe,ancestor:()=>te,beep:()=>W,clearVariableNames:()=>G,emptyNode:()=>X,escapeForXML:()=>de,findPos:()=>se,genUuid:()=>Q,getAbout:()=>ne,getEyeFocus:()=>re,getTarget:()=>ee,getTerm:()=>ie,hashColor:()=>J,include:()=>ae,label:()=>F,labelForXML:()=>me,labelWithOntology:()=>ue,newVariableName:()=>V,ontologyLabel:()=>pe,predParentOf:()=>ve,predicateLabel:()=>he,predicateLabelForXML:()=>fe,shortName:()=>le,stackString:()=>K,syncTableToArray:()=>Z,syncTableToArrayReOrdered:()=>Y});var o={};n.r(o),n.d(o,{addDefaults:()=>kn,defaultPreferredLanguages:()=>En,filterByLanguage:()=>Tn,getPreferredLanguages:()=>_n,getPreferredLanguagesFor:()=>An,languageCodeURIBase:()=>Cn});var s={};n.r(s),n.d(s,{AUTOCOMPLETE_LIMIT:()=>Sn,ESCOResultToBindings:()=>zn,bindingToTerm:()=>Fn,dbPediaTypeMap:()=>Bn,dbpediaParameters:()=>$n,escoParameters:()=>In,fetcherOptionsJsonPublicData:()=>Nn,getDbpediaDetails:()=>Kn,getWikidataDetails:()=>Qn,getWikidataDetailsOld:()=>Zn,getWikidataLocation:()=>Yn,instituteDetailsWikidataQuery:()=>Rn,loadFromBindings:()=>Pn,loadPublicDataThing:()=>Jn,queryESCODataByName:()=>qn,queryPublicDataByName:()=>Vn,queryPublicDataConstruct:()=>Wn,queryPublicDataSelect:()=>Gn,variableNameToPredicateMap:()=>Un,wikidataClasses:()=>Ln,wikidataIncomingClassMap:()=>Mn,wikidataOutgoingClassMap:()=>Dn,wikidataParameters:()=>On});var r={};n.r(r),n.d(r,{Group:()=>pt,GroupBuilder:()=>ut,GroupPicker:()=>lt,PeoplePicker:()=>ct,Person:()=>dt,addStyleSheet:()=>sn,allClassURIs:()=>Kt,appendForm:()=>di,askName:()=>zt,attachmentList:()=>Qt,basicField:()=>wn,buildCheckboxForm:()=>Ai,button:()=>Ut,cancelButton:()=>Ft,clearElement:()=>Et,complain:()=>Ct,continueButton:()=>Pt,createLinkDiv:()=>Gt,createLinkForURI:()=>vt,createNameDiv:()=>Vt,defaultAnnotationStore:()=>Yt,deleteButtonWithCheck:()=>Mt,editFormButton:()=>ui,errorMessageBlock:()=>ot,extractLogURI:()=>kt,faviconOrDefault:()=>Ot,field:()=>mn,fieldFunction:()=>hn,fieldLabel:()=>xn,fieldParams:()=>un,fieldStore:()=>yn,fileUploadButtonDiv:()=>pn,findClosest:()=>fi,findImage:()=>$t,findImageFromURI:()=>It,formatDateTime:()=>_t,formsFor:()=>hi,iconForClass:()=>Rt,imagesOf:()=>Lt,index:()=>on,isAudio:()=>rn,isImage:()=>ln,isVideo:()=>cn,linkButton:()=>en,linkIcon:()=>bt,makeDescription:()=>yi,makeDraggable:()=>it,makeDropTarget:()=>nt,makeSelectForCategory:()=>Ei,makeSelectForChoice:()=>Ti,makeSelectForClassifierOptions:()=>wi,makeSelectForNestedCategory:()=>ki,makeSelectForOptions:()=>Ci,mostSpecificClassURI:()=>fn,newButton:()=>vi,newThing:()=>_i,openHrefInOutlineMode:()=>Zt,personTR:()=>qt,promptForNew:()=>xi,propertiesForClass:()=>mi,propertyTriage:()=>Xt,publicData:()=>s,refreshTree:()=>Jt,removeButton:()=>tn,renderAsDiv:()=>Wt,renderAsRow:()=>Ht,renderAutoComplete:()=>ei,renderAutocompleteControl:()=>ai,renderNameValuePair:()=>vn,selectorPanel:()=>nn,selectorPanelRefresh:()=>an,setImage:()=>Dt,setName:()=>jt,setVisible:()=>Xn,shortDate:()=>At,shortTime:()=>St,sortByLabel:()=>bi,sortBySequence:()=>gi,timestamp:()=>Tt,uploadFiles:()=>at});var c={};n.r(c),n.d(c,{ensureLoadedPreferences:()=>Ui,ensureLoadedProfile:()=>Fi,ensureLoggedIn:()=>Mi,filterAvailablePanes:()=>Yi,findAppInstances:()=>Pi,getUserRoles:()=>Zi,loginStatusBox:()=>Wi,newAppInstance:()=>Qi,registrationControl:()=>qi,registrationList:()=>Vi,renderScopeHeadingRow:()=>Hi,renderSignInPopup:()=>Gi,scopeLabel:()=>zi,selectWorkspace:()=>Ji});var l={};n.r(l),n.d(l,{manageParticipation:()=>er,participationObject:()=>Ks,recordParticipation:()=>Xs,renderParticipants:()=>Ys});var p={};n.r(p),n.d(p,{getChunks:()=>or,lightColorHash:()=>ir,manageParticipation:()=>er,notepad:()=>ar,notepadToHTML:()=>rr,participationObject:()=>Ks,recordParticipation:()=>Xs,renderParticipants:()=>Ys,xmlEncode:()=>sr});var u={};n.r(u),n.d(u,{get:()=>Sr,getPreferencesForClass:()=>$r,recordPersonalDefaults:()=>Rr,recordSharedPreferences:()=>Lr,renderPreferencesForm:()=>Nr,set:()=>jr,value:()=>Tr});var d={};n.r(d),n.d(d,{TabWidgetElement:()=>Dr,tabWidget:()=>Or});var m={};n.r(m);var f=n(386),h=n.n(f),g=n(511);const b=h()(g);var v=n(892);let x=function(e){return e[e.Error=1]="Error",e[e.Warning=2]="Warning",e[e.Message=4]="Message",e[e.Success=8]="Success",e[e.Info=16]="Info",e[e.Debug=32]="Debug",e[e.All=63]="All",e}({}),y=7,w=!1,C=document,E=window;function k(e,t=4,n="mesg"){if(y&t)if(void 0!==C){const t=C.getElementById("status");if(!t)return;const i=C.createElement("span");i.setAttribute("class",n);const a=new Date;i.innerHTML=`${a.getHours()}:${a.getMinutes()}:${a.getSeconds()} [${n}] ${O(e)}<br/>`,w?t.insertBefore(i,t.firstChild):t.appendChild(i)}else"undefined"!=typeof console&&console.log(e)}function A(e){k(e)}function _(e){k(e,2,"warn")}function T(e){k(e,32,"dbug")}function S(e){k(e,16,"info")}function j(e){k(e,1,"eror")}function L(e){k(e,8,"good")}function R(e){E&&void 0!==E.alert?E.alert(e):_(e)}function N(){const e=C?.getElementById("status");e&&(e.innerHTML="")}function I(e){y=63,T("Log level is now "+e),y=e}function $(){if(!C)return;const e=y;y=63,T(C?.body?.innerHTML||""),y=e}function B(){w=!0}function D(){w=!1}function O(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function M(e,t){E=e,C=t}const U={log:i,ns:b,rdf:g};function F(e,t=!1){function n(e){return t?e.slice(0,1).toUpperCase()+e.slice(1):e}function i(e){let t="";"/"===e.slice(-1)&&(e=e.slice(0,-1));for(let n=0;n<e.length;n++)"_"!==e[n]&&"-"!==e[n]?(t+=e[n],n+1<e.length&&e[n].toUpperCase()!==e[n]&&e[n+1].toLowerCase()!==e[n+1]&&(t+=" ")):t+=" ";return"has "===t.slice(0,4)&&(t=t.slice(4)),n(t)}const a=function(e){return v.store.any(e,U.ns.ui("label"))||v.store.any(e,U.ns.link("message"))||v.store.any(e,U.ns.vcard("fn"))||v.store.any(e,U.ns.foaf("name"))||v.store.any(e,U.ns.dct("title"))||v.store.any(e,U.ns.dc("title"))||v.store.any(e,U.ns.rss("title"))||v.store.any(e,U.ns.contact("fullName"))||v.store.any(e,v.store.sym("http://www.w3.org/2001/04/roadmap/org#name"))||v.store.any(e,U.ns.cal("summary"))||v.store.any(e,U.ns.foaf("nick"))||v.store.any(e,U.ns.as("name"))||v.store.any(e,U.ns.schema("name"))||v.store.any(e,U.ns.rdfs("label"))||v.store.any(e,v.store.sym("http://www.w3.org/2004/02/skos/core#prefLabel"))}(e);if(a)return n(a.value);if("BlankNode"===e.termType)return"...";if("Collection"===e.termType)return"("+e.elements.length+")";let o=e.uri;if(void 0===o)return e.toString();try{o=o.split("/").map(decodeURIComponent).join("/")}catch(e){for(let e=o.length-3;e>0;e--){const t="0123456789abcefABCDEF";for(;"%"===o[e]&&t.indexOf(o[e+1])>=0&&t.indexOf(o[e+2])>=0;)o=o.slice(0,e)+String.fromCharCode(parseInt(o.slice(e+1,e+3),16))+o.slice(e+3)}}o=P(o,"/profile/card#me"),o=P(o,"#this"),o=P(o,"#me");const s=o.indexOf("#");if(s>=0)return i(o.slice(s+1));const r=o.lastIndexOf("/",o.length-2);return r>=0&&r<e.uri.length?i(o.slice(r+1)):n(decodeURIComponent(e.uri))}function P(e,t){const n=-1*t.length;return e.slice(n)===t?e.slice(0,n):e}const z={log:i,ns:b,rdf:g};let q,H=0;function V(){return"v"+H++}function G(){H=0}function W(){if(!q)return;const e=new q;return function(t,n,i,a){t=+(t||.3),i=i||"sine","function"!=typeof a&&(a=function(){});const o=e.createOscillator();o.type=i,o.frequency.value=n||256,o.connect(e.destination),o.start(0),o.stop(t)}}function J(e){e=e.uri||e;return"#"+(16777215&(t=e,t.split("").reduce(function(e,t){return(e=(e<<5)-e+t.charCodeAt(0))&e},0))|12632256).toString(16);var t}function Q(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){const t=16*Math.random()|0;return("x"===e?t:3&t|8).toString(16)})}function Z(e,t,n,i){let a,o,s;for(s=0;s<e.children.length;s++)o=e.children[s],o.trashMe=!0;for(let r=0;r<t.length;r++){const c=t[r];for(a=!1,s=0;s<e.children.length;s++)if(o=e.children[s],o.subject&&o.subject.sameTerm(c)){if(i){const e=i(o,c);e&&e!==o&&(o.parentNode.replaceChild(e,o),e.subject=c,o=e)}o.trashMe=!1,a=!0;break}if(!a){const t=n(c);if(r>=e.children.length)e.appendChild(t);else{const n=e.children[r];e.insertBefore(t,n)}t.subject=c}}for(s=0;s<e.children.length;s++)o=e.children[s],o.trashMe&&e.removeChild(o)}function Y(e,t,n){const i={};for(let t=0;t<e.children.length;t++){const n=e.children[t];i[n.subject.toNT()]=n}for(let a=0;a<t.length;a++){const o=t[a];if(a>=e.children.length){const t=n(o);t.subject=o,e.appendChild(t)}else{const t=e.children[a];if(t.subject.sameTerm(o));else{const a=i[o.toNT()];if(a)e.removeChild(a),e.insertBefore(a,t);else{const e=n(o);t.before(e),e.subject=o}}}}for(;e.children.length>t.length;)e.removeChild(e.children[e.children.length-1])}function K(e){let t,n=e+"\n";if(!e.stack)return n+"No stack available.\n";const i=e.stack.toString().split("\n"),a=[];for(t=0;t<i.length;t++){let e=i[t];if(e.indexOf("ecmaunit.js")>-1)break;"("===e.charAt(0)&&(e="function"+e);const n=e.split("@");a.push(n)}for(t=0;t<a.length;t++)n+=" "+a[t][1]+"\n "+a[t][0];return n}function X(e){const t=e.childNodes;for(let n=t.length-1;n>=0;n--)e.removeChild(t[n]);return e}function ee(e){let t;return(e=e||window.event).target?t=e.target:e.srcElement&&(t=e.srcElement),3===t.nodeType&&(t=t.parentNode),t}function te(e,t){let n;for(n=e;n;n=n.parentNode)try{if(n.tagName===t)return n}catch(e){return}}function ne(e,t){let n,i;for(n=t;n&&1===n.nodeType;n=n.parentNode)if(i=n.getAttribute("about"),i)return e.fromNT(i);z.log.debug("getAbout: No about found")}function ie(e){const t=e.parentNode,n=t?t.AJAR_statement:void 0;switch(n?e.className:""){case"pred":case"pred selected":return n.predicate;case"obj":case"obj selected":return t.AJAR_inverse?n.subject:n.object;case"":case"selected":return ne(v.store,e);case"undetermined selected":return e.nextSibling?n.predicate:t.AJAR_inverse?n.subject:n.object}}function ae(e,t){const n=e.createElement("script");return n.setAttribute("type","text/javascript"),n.setAttribute("src",t),n}function oe(e){const t=window.onload;"function"!=typeof window.onload?window.onload=e:window.onload=function(){t(),e()}}function se(e){const t=e.ownerDocument.documentElement.getBoundingClientRect(),n=e.getBoundingClientRect();return[n.left-t.left,n.top-t.top]}function re(e,t,n,i){i||(i=window);const a=se(e)[1],o=window.SolidAppContext||{},s=a-(o&&o.scroll||52)-i.scrollY;if(t)return n?void i.scrollBy(0,a+e.clientHeight-(i.scrollY+i.innerHeight)):void i.scrollBy(0,s);const r=i.setInterval(function(){i.scrollBy(0,s/10),c++,10===c&&i.clearInterval(r)},50);let c=0}function ce(e,t,n,i){i||(i=document);const a=i.createElement("img");return a.setAttribute("src",e),a.addEventListener("copy",function(e){e.clipboardData.setData("text/plain",""),e.clipboardData.setData("text/html",""),e.preventDefault()}),void 0!==n&&a.setAttribute("title",n),a}function le(e){let t=e;"#/".indexOf(t[t.length-1])>=0&&(t=t.slice(0,-1));const n=[];for(const e in this.prefixes)n[this.prefixes[e]]=e;let i;const a=function(e){return"ns"!==e&&(i=e,!0)};let o;const s=t.lastIndexOf("#");for(s>=0&&(t=t.slice(s-1));;){const e=t.lastIndexOf("/");for(e>=0&&(t=t.slice(e+1)),o=0;o<t.length&&this.prefixchars.indexOf(t[o]);)o++;if(t=t.slice(0,o),t.length<6&&a(t))return i;if(a(t.slice(0,3)))return i;if(a(t.slice(0,2)))return i;if(a(t.slice(0,4)))return i;if(a(t.slice(0,1)))return i;if(a(t.slice(0,5)))return i;for(o=0;;o++)if(a(t.slice(0,3)+o))return i}}function pe(e){if(void 0===e.uri)return"??";let t=e.uri;const n=[];let i,a=t.lastIndexOf("#");if(a>=0)t=t.slice(0,a+1);else{if(a=t.lastIndexOf("/"),!(a>=0))return e.uri+"?!";t=t.slice(0,a+1)}for(const e in z.ns)n[z.ns[e]]=e;try{return n[t]}catch(e){}for(t=t.slice(0,-1);t;){if(a=t.lastIndexOf("/"),!(a>=0))return e.uri+"!?";if(i=t.slice(a+1),t=t.slice(0,a),"ns"!==i&&"0123456789".indexOf(i[0])<0)return i}}function ue(e,t){const n=v.store.findTypeURIs(e);return n[z.ns.rdf("Predicate").uri]||n[z.ns.rdfs("Class").uri]?F(e,t)+" ("+pe(e)+")":F(e,t)}function de(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;")}function me(e){return de(F(e))}function fe(e,t){return de(he(e,t))}function he(e,t){const n=F(e);if(t){const t=v.store.any(e,z.ns.owl("inverseOf"))||v.store.any(void 0,z.ns.owl("inverseOf"),e);return t?F(t):"type"===n?"...":"is "+n+" of"}return n}function ge(e,t){const n=e.predicate.compareTerm(t.predicate);return 0!==n?n:e.object.compareTerm(t.object)}function be(e,t){const n=e.predicate.compareTerm(t.predicate);return 0!==n?n:e.subject.compareTerm(t.subject)}function ve(e){let t=e;for(;;){if(t.getAttribute("predTR"))return t;if(!t.previousSibling||"TR"!==t.previousSibling.nodeName)return z.log.error("Could not find predParent"),e;t=t.previousSibling}}"undefined"!=typeof AudioContext?q=AudioContext:"undefined"!=typeof window&&(q=window.AudioContext||window.webkitAudioContext);var xe=n(423);const ye=v.solidLogicSingleton.store;function we(e,t,n,i){const a=b.acl,o="/"===e.uri.slice(-1),s=ye.each(void 0,a("default"),n,i).concat(ye.each(void 0,a("defaultForNew"),n,i)).reduce((t,n)=>t.concat(ye.statementsMatching(n,b.rdf("type"),a("Authorization"),i)).concat(ye.statementsMatching(n,a("agent"),void 0,i)).concat(ye.statementsMatching(n,a("agentClass"),void 0,i)).concat(ye.statementsMatching(n,a("agentGroup"),void 0,i)).concat(ye.statementsMatching(n,a("origin"),void 0,i)).concat(ye.statementsMatching(n,a("originClass"),void 0,i)).concat(ye.statementsMatching(n,a("mode"),void 0,i)).concat((0,g.st)(n,a("accessTo"),e,i)).concat(o?(0,g.st)(n,a("default"),e,i):[]),[]),r=(0,g.graph)();return s.forEach(e=>r.add(c(e.subject),c(e.predicate),c(e.object),(0,g.sym)(t.uri))),r;function c(e){const n=i.uri.length;return(0,g.sym)(e.uri.slice(0,n)===i.uri?t.uri+e.uri.slice(n):e.uri)}}function Ce(e,t,n=ye,i=!1){const a=i?function(t,n){return t.each(void 0,n.acl("default"),e).concat(t.each(void 0,n.acl("defaultForNew"),e))}(n,b):n.each(void 0,b.acl("accessTo"),e),o=b.acl,s={agent:{},agentClass:{},agentGroup:{},origin:{},originClass:{}};return Object.keys(s).forEach(e=>{a.forEach(function(t){n.each(t,o("mode")).forEach(function(i){n.each(t,o(e)).forEach(function(n){s[e][n.uri]=s[e][n.uri]||{},s[e][n.uri][i.uri]=t})})})}),s}function Ee(e,t){const n=function(e,t){for(const n in{agent:!0,agentClass:!0,agentGroup:!0,origin:!0,originClass:!0})if(e[n])for(const i in e[n])for(const a in e[n][i])if(!t[n][i]||!t[n][i][a])return!1;return!0};return n(e,t)&&n(t,e)}function ke(e){const t=e[0];let n,i;for(let a=1;a<e.length;a++)["agent","agentClass","agentGroup","origin","originClass"].forEach(function(o){if(n=e[a],n[o])for(i in n[o])for(const e in n[o][i])t[o][i]||(t[o][i]=[]),t[o][i][e]=!0});return t}function Ae(e,t){const n=[],i=function(e){if(e.length){Ie(e.shift().doc(),function(a,o,s,r,c,l){const p=!o;if(!a||!c||!l)return t(a,r);const u=Ce(p?c:s);n.push(u),i(e.slice(1))})}else t(!0,ke(n))};i(e)}function _e(e){const t={};return["agent","agentClass","agentGroup","origin","originClass"].forEach(function(n){for(const i in e[n]){const a=[];for(const t in e[n][i])a.push(t);a.sort();const o=a.join("\n");t[o]||(t[o]=[]),t[o].push([n,i])}}),t}function Te(e,t,n,i){return Se(e,t,_e(n),i)}function Se(e,t,n,i,a,o){const s=b.acl;for(const r in n){const c=n[r];if(!c.length)continue;const l=r.split("\n");let p=l.map(function(e){return e.split("#")[1]}).join("");o&&!a&&(p+="Default");const u=e.sym(i.uri+"#"+p);e.add(u,b.rdf("type"),s("Authorization"),i),a&&e.add(u,s("accessTo"),t,i),o&&e.add(u,s("default"),t,i);for(let t=0;t<l.length;t++)e.add(u,s("mode"),e.sym(l[t]),i);for(let t=0;t<c.length;t++){const n=c[t][0],a=c[t][1];e.add(u,s(n),e.sym(a),i)}}}function je(e){let t="";for(const n in e){t+=n.split("\n").map(function(e){return e.split("#")[1][0]}).join("")+":";const i=e[n];for(let e=0;e<i.length;e++){const n=i[e][0],a=(0,g.sym)(i[e][1]);t+="agent"===n?"@":"",t+=a.sameTerm(b.foaf("Agent"))?"*":F(a),e<i.length-1&&(t+=",")}t+=";"}return"{"+t.slice(0,-1)+"}"}function Le(e,t,n,i,a){return Re(e,t,_e(n),i,a)}function Re(e,t,n,i,a){const o=(0,g.graph)();Se(o,t,n,i,!0),e.updater?.put(i,o.statementsMatching(void 0,void 0,void 0,i),"text/turtle",function(o,s,r){s?(e.fetcher?.unload(i),Se(e,t,n,i,!0),e.fetcher.requested[i.uri]="done",a(s)):a(s,r)})}function Ne(e,t,n,i){n=n||xe.Rm;const a=e.doc();Ie(a,function(o,s,r,c,l,p){if(!o||!l||!p)return i(!1,c);const u=Ce(s?r:l);Ae(t,function(t,o){if(!t)return i(!1,o);Ee(o,u)?n("Nice - same ACL. no change "+F(e)+" "+a):(n("Group ACLs differ for "+F(e)+" "+a),Le(ye,r,o,c,i))})})}function Ie(e,t){$e(e,function(n,i,a,o){const s=b.acl;if(!n)return t(!1,!1,i,o);const r=function(n){"/"===n.slice(-1)&&(n=n.slice(0,-1));const i=n.lastIndexOf("/");if(n.indexOf("/",n.indexOf("//")+2)>i)return t(!1,!0,404,"Found no ACL resource");n=n.slice(0,i+1);const o=(0,g.sym)(n);$e(o,function(i,c,l){if(!i)return t(!1,!0,c,`( No ACL pointer ${n} ${c})${l}`);if(403===c)return t(!1,!0,c,`( default ACL file FORBIDDEN. Stop.${n})`);if(404===c)return r(n);if(200!==c)return t(!1,!0,c,`Error status '${c}' searching for default for ${o}`);if(!ye.each(void 0,s("default"),ye.sym(n),l).concat(ye.each(void 0,s("defaultForNew"),ye.sym(n),l)).length)return r(n);const p=ye.sym(n);return t(!0,!1,e,a,p,l)})};return n?404!==i?403===i?t(!1,!1,i,`(Sharing not available to you)${o}`):200!==i?t(!1,!1,i,`Error ${i} accessing Access Control information for ${e}: ${o}`):t(!0,!0,e,a):void r(e.uri):t(!1,!1,i,`Error accessing Access Control information for ${e}) ${o}`)})}function $e(e,t){if(!ye.fetcher)throw new Error("kb has no fetcher");ye.fetcher.nowOrWhenFetched(e,void 0,function(n,i){if(!n)return t(n,`Can't get headers to find ACL for ${e}: ${i}`);const a=ye.any(e,v.ACL_LINK);if(a){if(!ye.fetcher)throw new Error("kb has no fetcher");if(ye.fetcher.nonexistent[a.value])return t(!0,404,a,`ACL file ${a} does not exist.`);ye.fetcher.nowOrWhenFetched(a,void 0,function(e,n,i){e?t(!0,200,a):t(!0,i.status,a,`Can't read Access Control File ${a}: ${n}`)})}else t(!1,900,`No Link rel=ACL header for ${e}`)})}async function Be(e){return new Promise((t,n)=>Ie((0,g.sym)(e),(i,a,o,s,r)=>i?t(a?o:r):n(new Error(`Error loading ${e}`))))}var De=n(580),Oe=n.n(De);const Me={randomUUID:"undefined"!=typeof crypto&&crypto.randomUUID&&crypto.randomUUID.bind(crypto)};let Ue;const Fe=new Uint8Array(16);const Pe=[];for(let e=0;e<256;++e)Pe.push((e+256).toString(16).slice(1));function ze(e,t=0){return(Pe[e[t+0]]+Pe[e[t+1]]+Pe[e[t+2]]+Pe[e[t+3]]+"-"+Pe[e[t+4]]+Pe[e[t+5]]+"-"+Pe[e[t+6]]+Pe[e[t+7]]+"-"+Pe[e[t+8]]+Pe[e[t+9]]+"-"+Pe[e[t+10]]+Pe[e[t+11]]+Pe[e[t+12]]+Pe[e[t+13]]+Pe[e[t+14]]+Pe[e[t+15]]).toLowerCase()}function qe(e,t,n){const i=(e=e||{}).random??e.rng?.()??function(){if(!Ue){if("undefined"==typeof crypto||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");Ue=crypto.getRandomValues.bind(crypto)}return Ue(Fe)}();if(i.length<16)throw new Error("Random bytes length must be >= 16");if(i[6]=15&i[6]|64,i[8]=63&i[8]|128,t){if((n=n||0)<0||n+16>t.length)throw new RangeError(`UUID byte range ${n}:${n+15} is out of buffer bounds`);for(let e=0;e<16;++e)t[n+e]=i[e];return t}return ze(i)}const He=function(e,t,n){return!Me.randomUUID||t||e?qe(e,t,n):Me.randomUUID()};var Ve=n(49);const Ge="#888888",We="8em",Je=20,Qe="#fff",Ze="#000",Ye="#888",Ke="#fee",Xe="white",et="4096",tt={checkboxStyle:"color: black; font-size: 100%; padding-left: 0.5 em; padding-right: 0.5 em;",checkboxInputStyle:"font-size: 150%; height: 1.2em; width: 1.2em; background-color: #eef; border-radius:0.2em; margin: 0.1em;",fieldLabelStyle:"color: #3B5998; text-decoration: none;",formSelectStyle:"background-color: #eef; padding: 0.5em; border: .05em solid #88c; border-radius:0.2em; font-size: 100%; margin:0.4em;",textInputStyle:"background-color: #eef; padding: 0.5em; border: .05em solid #88c; border-radius:0.2em; font-size: 100%; margin:0.4em;",textInputStyleUneditable:"background-color: white; padding: 0.5em; border: .05em solid white; border-radius:0.2em; font-size: 100%; margin:0.4em;",buttonStyle:"background-color: #fff; padding: 0.7em; border: .01em solid white; border-radius:0.2em; font-size: 100%; margin: 0.3em;",commentStyle:"padding: 0.7em; border: none; font-size: 100%; white-space: pre-wrap;",iconStyle:"width: 3em; height: 3em; margin: 0.1em; border-radius: 1em;",smallButtonStyle:"margin: 0.2em; width: 1em; height:1em;",classIconStyle:"width: 3em; height: 3em; margin: 0.1em; border-radius: 0.2em; border: 0.1em solid green; padding: 0.2em; background-color: #efe;",confirmPopupStyle:"padding: 0.7em; border-radius: 0.2em; border: 0.1em solid orange; background-color: white; box-shadow: 0.5em 0.9em #888;",messageBodyStyle:"white-space: pre-wrap; width: 99%; font-size:100%; border: 0.07em solid #eee; border-radius:0.2em; padding: .3em 0.5em; margin: 0.1em;",pendingeditModifier:"color: #bbb;",personaBarStyle:"width: 100%; height: 4em; background-color: #eee; vertical-align: middle;",searchInputStyle:"border: 0.1em solid #444; border-radius: 0.2em; width: 100%; font-size: 100%; padding: 0.1em 0.6em; margin 0.2em;",autocompleteRowStyle:"border: 0.2em solid straw;",signInAndUpButtonStyle:"padding: 1em; border-radius:0.2em; font-size: 100%;",headerBannerLoginInput:"margin: 0.75em 0 0.75em 0.5em !important; padding: 0.5em !important;",signUpBackground:"background-color: #eef;",signInBackground:"background-color: #efe;",heading1Style:"font-size: 180%; font-weight: bold; color: #888888; padding: 0.5em; margin: 0.7em 0.0m;",heading2Style:"font-size: 130%; font-weight: bold; color: #888888; padding: 0.4em; margin: 0.7em 0.0em;",heading3Style:"font-size: 120%; font-weight: bold; color: #888888; padding: 0.3em; margin: 0.7em 0.0em;",heading4Style:"font-size: 110%; font-weight: bold; color: #888888; padding: 0.2em; margin: 0.7em 0.0em;",formHeadingStyle:"font-size: 110%; font-weight: bold; color: #888888; padding: 0.2em; margin: 0.7em 0.0em;",formTextInput:"font-size: 100%; margin: 0.1em; padding: 0.1em;",formGroupStyle:[`padding-left: 0em; border: 0.0em solid ${Ge}; border-radius: 0.2em;`,`padding-left: 2em; border: 0.05em solid ${Ge}; border-radius: 0.2em;`,`padding-left: 2em; border: 0.1em solid ${Ge}; border-radius: 0.2em;`,`padding-left: 2em; border: 0.2em solid ${Ge}; border-radius: 0.2em;`],formFieldLabelStyle:`color: ${"#3B5998"}; text-decoration: none;`,formFieldNameBoxStyle:`padding: 0.3em; vertical-align: middle; width:${We};`,multilineTextInputStyle:"font-size:100%; white-space: pre-wrap; background-color: #eef; border: 0.07em solid gray; padding: 1em 0.5em; margin: 1em 1em;",renderAsDivStyle:"display: flex; align-items: center; justify-content: space-between; height: 2.5em; padding: 1em;",imageDivStyle:"width:2.5em; padding:0.5em; height: 2.5em;",linkDivStyle:"width:2em; padding:0.5em; height: 4em;",aclControlBoxContainer:"margin: 1em;",aclControlBoxHeader:"font-size: 120%; margin: 0 0 1rem;",aclControlBoxStatus:"display: none; margin: 1rem 0;",aclControlBoxStatusRevealed:"display: block;",aclGroupContent:"maxWidth: 650;",accessGroupList:"display: grid; grid-template-columns: 1fr; margin: 1em; width: 100%;",accessGroupListItem:"display: grid; grid-template-columns: 100px auto 30%;",defaultsController:"display: flex;",defaultsControllerNotice:"color: #888; flexGrow: 1; fontSize: 80%;",bigButton:"background-color: white; border: 0.1em solid #888; border-radius: 0.3em; max-width: 50%; padding-bottom: 1em; padding-top: 1em;",group:"color: #888;",group1:"color: green;",group2:"color: #cc0;",group3:"color: orange;",group5:"color: red;",group9:"color: blue;",group13:"color: purple;",trustedAppAddApplicationsTable:"background-color: #eee;",trustedAppCancelButton:"float: right;",trustedAppControllerI:"border-color: orange; border-radius: 1em; border-width: 0.1em;",temporaryStatusInit:"background: green;",temporaryStatusEnd:"background: transparent; transition: background 5s linear;",headerUserMenuLink:"background: none; border: 0; color: black; cursor: pointer; display: block; font-family: Arial; font-size: 1em; text-align: left; padding: 1em; width: 100%; text-decoration: none;",headerUserMenuLinkHover:"background: none; border: 0; color: black; cursor: pointer; display: block; font-family: Arial; font-size: 1em; text-align: left; padding: 1em; width: 100%; text-decoration: none; background-image: linear-gradient(to right, #7C4DFF 0%, #18A9E6 50%, #01C9EA 100%);",headerUserMenuTrigger:"background: none; border: 0; cursor: pointer; width: 60px; height: 60px;",headerUserMenuTriggerImg:"border-radius: 50%; height: 56px; width: 28px !important;",headerUserMenuButton:"background: none; border: 0; color: black; cursor: pointer; display: block; font-family: Arial; font-size: 1em; text-align: left; padding: 1em; width: 100%;",headerUserMenuButtonHover:"background: none; border: 0; color: black; cursor: pointer; display: block; font-family: Arial; font-size: 1em; text-align: left; padding: 1em; width: 100%; background-image: linear-gradient(to right, #7C4DFF 0%, #18A9E6 50%, #01C9EA 100%);",headerUserMenuList:"list-style: none; margin: 0; padding: 0;",headerUserMenuListDisplay:"list-style: none; margin: 0; padding: 0; display:true;",headerUserMenuNavigationMenu:"background: white; border: solid 1px #000000; border-right: 0; position: absolute; right: 0; top: 60px; width: 200px; z-index: 1; display: true;",headerUserMenuNavigationMenuNotDisplayed:"background: white; border: solid 1px #000000; border-right: 0; position: absolute; right: 0; top: 60px; width: 200px; z-index: 1; display: none;",headerUserMenuListItem:"border-bottom: solid 1px #000000;",headerUserMenuPhoto:"border-radius: 50%; background-position: center; background-repeat: no-repeat; background-size: cover; height: 50px; width: 50px;",headerBanner:"box-shadow: 0px 1px 4px #000000; display: flex; justify-content: space-between; padding: 0 1.5em; margin-bottom: 4px;",headerBannerLink:"display: block;",headerBannerRightMenu:"display: flex;",headerBannerLogin:"margin-left: auto;",allChildrenVisible:"display:true;",headerBannerUserMenu:"border-left: solid 1px #000000; margin-left: auto;",headerBannerHelpMenu:"border-left: solid 1px #000000; margin-left: auto;",headerBannerIcon:"background-size: 65px 60px !important; height: 60px !important; width: 65px !important;",footer:"border-top: solid 1px $divider-color; font-size: 0.9em; padding: 0.5em 1.5em;",primaryButton:"background-color: #7c4dff; color: #ffffff; font-family: Raleway, Roboto, sans-serif; border-radius: 0.25em; border-color: #7c4dff; border: 1px solid; cursor: pointer; font-size: .8em; text-decoration: none; padding: 0.5em 4em; transition: 0.25s all ease-in-out; outline: none;",primaryButtonHover:"background-color: #9f7dff; color: #ffffff; font-family: Raleway, Roboto, sans-serif;border-radius: 0.25em; border-color: #7c4dff; border: 1px solid; cursor: pointer; font-size: .8em; text-decoration: none; padding: 0.5em 4em; transition: 0.25s all ease-in-out; outline: none; transition: 0.25s all ease-in-out;",primaryButtonNoBorder:"background-color: #ffffff; color: #7c4dff; font-family: Raleway, Roboto, sans-serif;border-radius: 0.25em; border-color: #7c4dff; border: 1px solid; cursor: pointer; font-size: .8em; text-decoration: none; padding: 0.5em 4em; transition: 0.25s all ease-in-out; outline: none;",primaryButtonNoBorderHover:"background-color: #7c4dff; color: #ffffff; font-family: Raleway, Roboto, sans-serif; border-radius: 0.25em; border-color: #7c4dff; border: 1px solid; cursor: pointer; font-size: .8em; text-decoration: none; padding: 0.5em 4em; transition: 0.25s all ease-in-out; outline: none; transition: 0.25s all ease-in-out;",secondaryButton:"background-color: #01c9ea; color: #ffffff; font-family: Raleway, Roboto, sans-serif;border-radius: 0.25em; border-color: #01c9ea; border: 1px solid; cursor: pointer; font-size: .8em; text-decoration: none; padding: 0.5em 4em; transition: 0.25s all ease-in-out; outline: none;",secondaryButtonHover:"background-color: #37cde6; color: #ffffff; font-family: Raleway, Roboto, sans-serif;border-radius: 0.25em; border-color: #7c4dff; border: 1px solid; cursor: pointer; font-size: .8em; text-decoration: none; padding: 0.5em 4em; transition: 0.25s all ease-in-out; outline: none; transition: 0.25s all ease-in-out;",secondaryButtonNoBorder:"background-color: #ffffff; color: #01c9ea; font-family: Raleway, Roboto, sans-serif; border-radius: 0.25em; border-color: #01c9ea; border: 1px solid; cursor: pointer; font-size: .8em; text-decoration: none; padding: 0.5em 4em; transition: 0.25s all ease-in-out; outline: none;",secondaryButtonNoBorderHover:"background-color: #01c9ea; color: #ffffff; font-family: Raleway, Roboto, sans-serif; border-radius: 0.25em; border-color: #01c9ea; border: 1px solid; cursor: pointer; font-size: .8em; text-decoration: none; padding: 0.5em 4em; transition: 0.25s all ease-in-out; outline: none; transition: 0.25s all ease-in-out;",controlStyle:`border-radius: 0.5em; margin: 0.8em; width:${"640"}; height:${"480"};`,dragEvent:"background-color: #ccc; border: 0.25em dashed black; border-radius: 0.3em;",dropEvent:"background-color: white; border: 0em solid black;",restoreStyle:"background-color: white;",errorCancelButton:"width: 2em; height: 2em; align: right;",errorMessageBlockStyle:"margin: 0.1em; padding: 0.5em; border: 0.05em solid gray; color:black;",notepadStyle:"padding: 1em; overflow: auto; resize: horizontal; min-width: 40em;",upstreamStatus:"width: 50%;",downstreamStatus:"width: 50%;",baseStyle:"font-size: 100%; font-family: monospace; width: 100%; border: none; white-space: pre-wrap;",headingCore:"font-family: sans-serif; font-weight: bold; border: none;",headingStyle:["font-size: 110%; padding-top: 0.5em; padding-bottom: 0.5em; width: 100%;","font-size: 120%; padding-top: 1em; padding-bottom: 1em; width: 100%;","font-size: 150%; padding-top: 1em; padding-bottom: 1em; width: 100%;"],participantsStyle:"margin: 0.8em;",participantsBlock:"height: 1.5em; width: 1.5em; margin: 0.3em; border 0.01em solid #888;",personTableTD:"vertical-align: middle;",tabsNavElement:"margin: 0;",tabsRootElement:"display: flex; height: 100%; width: 100%;",tabsMainElement:"margin: 0; width:100%; height: 100%;",tabContainer:"list-style-type: none; display: flex; height: 100%; width: 100%; margin: 0; padding: 0;",makeNewSlot:"background: none; border: none; font: inherit; cursor: pointer;",ellipsis:"position: absolute; right: 0; bottom: 0; width: 20%; background: none; color: inherit; border: none; padding: 0; font: inherit; cursor: pointer; outline: inherit;"};function nt(e,t,n){const i=function(e){e.preventDefault(),e.dataTransfer.dropEffect="copy"},a=function(e){xe.Rm("dragenter event dropEffect: "+e.dataTransfer.dropEffect),this.localStyle&&(this.savedStyle||(this.savedStyle=tt.dragEvent)),e.dataTransfer.dropEffect="link",xe.Rm("dragenter event dropEffect 2: "+e.dataTransfer.dropEffect)},o=function(e){xe.Rm("dragleave event dropEffect: "+e.dataTransfer.dropEffect),this.savedStyle?this.localStyle=this.savedStyle:this.localStyle=tt.dropEvent},s=function(e){e.preventDefault&&e.preventDefault(),xe.Rm("Drop event. dropEffect: "+e.dataTransfer.dropEffect),xe.Rm("Drop event. types: "+(e.dataTransfer.types?e.dataTransfer.types.join(", "):"NOPE"));let i,a=null;if(e.dataTransfer.types){for(let t=0;t<e.dataTransfer.types.length;t++){const o=e.dataTransfer.types[t];if("text/uri-list"===o)a=e.dataTransfer.getData(o).split("\n"),xe.Rm("Dropped text/uri-list: "+a);else if("text/plain"===o)i=e.dataTransfer.getData(o);else if("Files"===o&&n){const t=e.dataTransfer.files;for(let e=0;t[e];e++){const n=t[e];xe.Rm("Filename: "+n.name+", type: "+(n.type||"n/a")+" size: "+n.size+" bytes, last modified: "+(n.lastModifiedDate?n.lastModifiedDate.toLocaleDateString():"n/a"))}n(t)}}null===a&&i&&"http"===i.slice(0,4)&&(a=i,xe.Rm("Waring: Poor man's drop: using text for URI"))}else a=[e.dataTransfer.getData("Text")],xe.Rm("WARNING non-standard drop event: "+a[0]);return xe.Rm("Dropped URI list (2): "+a),a&&t(a),this.localStyle=tt.restoreStyle,!1};!function(e){e||xe.Rm("@@@ addTargetListeners: ele "+e),e.addEventListener("dragover",i),e.addEventListener("dragenter",a),e.addEventListener("dragleave",o),e.addEventListener("drop",s)}(e)}function it(e,t){e.setAttribute("draggable","true"),e.addEventListener("dragstart",function(n){e.style.fontWeight="bold",n.dataTransfer.setData("text/uri-list",t.uri),n.dataTransfer.setData("text/plain",t.uri),n.dataTransfer.setData("text/html",e.outerHTML),xe.Rm("Dragstart: "+e+" -> "+t+"de: "+n.dataTransfer.dropEffect)},!1),e.addEventListener("drag",function(e){e.preventDefault(),e.stopPropagation()},!1),e.addEventListener("dragend",function(n){e.style.fontWeight="normal",xe.Rm("Dragend dropeffect: "+n.dataTransfer.dropEffect),xe.Rm("Dragend: "+e+" -> "+t)},!1)}function at(e,t,n,i,a){for(let o=0;t[o];o++){const s=t[o];xe.Rm(" dropped: Filename: "+s.name+", type: "+(s.type||"n/a")+" size: "+s.size+" bytes, last modified: "+(s.lastModifiedDate?s.lastModifiedDate.toLocaleDateString():"n/a"));const r=new FileReader;r.onload=function(t){return function(o){const s=o.target.result;let r="";xe.Rm(" File read byteLength : "+s.byteLength);let c=t.type;if(t.type&&""!==t.type){const e=Ve.extension(t.type);e&&"false"!==e&&!t.name.endsWith("."+e)&&t.type!==Ve.lookup(t.name)&&(r="_."+e)}else if(c=Ve.lookup(t.name),!c){const e="Filename needs to have an extension which gives a type we know: "+t.name;throw xe.Rm(e),alert(e),new Error(e)}const l=t.type.startsWith("image/")&&i||n,p=l+(l.endsWith("/")?"":"/")+encodeURIComponent(t.name)+r;e.webOperation("PUT",p,{data:s,contentType:c}).then(e=>{xe.Rm(" Upload: put OK: "+p),a(t,p)},e=>{const t=" Upload: FAIL "+p+", Error: "+e;throw xe.Rm(t),alert(t),new Error(t)})}}(s),r.readAsArrayBuffer(s)}}function ot(e,t,n,i){const a=e.createElement("div"),o=i||t instanceof Error?t:null;return o?(console.error(`errorMessageBlock: ${o} at: ${o.stack||"??"}`,o),a.textContent=o.message):a.textContent=t,a.appendChild(Ft(e,()=>{a.parentNode&&a.parentNode.removeChild(a)})).style=tt.errorCancelButton,a.setAttribute("style",tt.errorMessageBlockStyle),a.style.backgroundColor=n||Ke,a}tt.setStyle=function(e,t){e.style=tt[t]};var st=n(378);const rt=v.solidLogicSingleton.store;class ct{constructor(e,t,n,i){this.options=i||{},this.element=e,this.typeIndex=t,this.groupPickedCb=n,this.selectedgroup=this.options.selectedgroup,this.onSelectGroup=this.onSelectGroup.bind(this)}render(){const e=document.createElement("div");if(e.style.maxWidth="350px",e.style.minHeight="200px",e.style.outline="1px solid black",e.style.display="flex",this.selectedgroup){e.style.flexDirection="column";const t=document.createElement("div");new pt(t,this.selectedgroup).render();const n=document.createElement("button");n.textContent=Oe()("Change group"),n.addEventListener("click",e=>{this.selectedgroup=null,this.render()}),e.appendChild(t),e.appendChild(n)}else this.findAddressBook(this.typeIndex).then(({book:t})=>{const n=document.createElement("button");n.textContent=Oe()("Pick an existing group"),n.style.margin="auto",n.addEventListener("click",n=>{new lt(e,t,this.onSelectGroup).render()});const i=document.createElement("button");i.textContent=Oe()("Create a new group"),i.style.margin="auto",i.addEventListener("click",e=>{this.createNewGroup(t,this.options.defaultNewGroupName).then(({group:e})=>{new ut(this.element,t,e,this.onSelectGroup).render()}).catch(e=>{this.element.appendChild(ot(document,Oe()(`Error creating a new group. (${e})`)))})}),e.appendChild(n),e.appendChild(i),this.element.innerHTML="",this.element.appendChild(e)}).catch(e=>{this.element.appendChild(ot(document,Oe()(`Could find your groups. (${e})`)))});return this.element.innerHTML="",this.element.appendChild(e),this}findAddressBook(e){return new Promise((t,n)=>{rt.fetcher.nowOrWhenFetched(e,(i,a)=>{if(!i)return n(a);const o=rt.any(null,b.solid("forClass"),b.vcard("AddressBook"));if(!o)return n(new Error("no address book registered in the solid type index "+e));const s=rt.any(o,b.solid("instance"));if(!s)return n(new Error("incomplete address book registration"));rt.fetcher.load(s).then(function(e){return t({book:s})}).catch(function(e){return n(new Error("Could not load address book "+e))})})})}createNewGroup(e,t){const{groupIndex:n,groupContainer:i}=ht(e),a=g.sym(`${i.uri}${He().slice(0,8)}.ttl#this`),o=t||"Untitled Group",s=[a.doc(),n].map(t=>{const i=g.st(a,b.rdf("type"),b.vcard("Group"),t),s=g.st(a,b.vcard("fn"),o,a.doc(),t),r=g.st(e,b.vcard("includesGroup"),a,t),c=t.equals(n)?[i,s,r]:[i,s];return ft(t.uri,{toIns:c}).then(()=>{c.forEach(e=>{rt.add(e)})})});return Promise.all(s).then(()=>({group:a})).catch(e=>{throw xe.Rm("Could not create new group. PATCH failed "+e),new Error(`Couldn't create new group. PATCH failed for (${e.xhr?e.xhr.responseURL:""} )`)})}onSelectGroup(e){this.selectedgroup=e,this.groupPickedCb(e),this.render()}}class lt{constructor(e,t,n){this.element=e,this.book=t,this.onSelectGroup=n}render(){return this.loadGroups().then(e=>{const t=document.createElement("div");t.style.display="flex",t.style.flexDirection="column",e.forEach(e=>{const n=document.createElement("button");n.addEventListener("click",this.handleClickGroup(e)),new pt(n,e).render(),t.appendChild(n)}),this.element.innerHTML="",this.element.appendChild(t)}).catch(e=>{this.element.appendChild(ot(document,Oe()(`There was an error loading your groups. (${e})`)))}),this}loadGroups(){return new Promise((e,t)=>{const{groupIndex:n}=ht(this.book);rt.fetcher.nowOrWhenFetched(n,(n,i)=>{if(!n)return t(i);const a=rt.each(this.book,b.vcard("includesGroup"));return e(a)})})}handleClickGroup(e){return t=>{this.onSelectGroup(e)}}}class pt{constructor(e,t){this.element=e,this.group=t}render(){const e=document.createElement("div");return e.textContent=Oe()(mt(this.group,b.vcard("fn"),`[${this.group.value}]`)),this.element.innerHTML="",this.element.appendChild(e),this}}class ut{constructor(e,t,n,i,a){this.element=e,this.book=t,this.group=n,this.onGroupChanged=(e,t,n)=>{a&&a(e,t,n)},this.groupChangedCb=a,this.doneBuildingCb=i}refresh(){}render(){const e=document.createElement("div");e.style.maxWidth="350px",e.style.minHeight="200px",e.style.outline="1px solid black",e.style.display="flex",e.style.flexDirection="column",nt(e,e=>{e.forEach(e=>{this.add(e).catch(e=>{this.element.appendChild(ot(document,Oe()(`Could not add the given WebId. (${e})`)))})})});const t=document.createElement("input");t.type="text",t.value=mt(this.group,b.vcard("fn"),"Untitled Group"),t.addEventListener("change",e=>{this.setGroupName(e.target.value).catch(e=>{this.element.appendChild(ot(document,`Error changing group name. (${e})`))})});const n=document.createElement("label");if(n.textContent=Oe()("Group Name:"),n.appendChild(t),e.appendChild(n),rt.any(this.group,b.vcard("hasMember")))rt.match(this.group,b.vcard("hasMember")).forEach(t=>{const n=t.object,i=document.createElement("div");new dt(i,n,this.handleRemove(n)).render(),e.appendChild(i)});else{const t=document.createElement("p");t.textContent=Oe()`
2
+ To add someone to this group, drag and drop their WebID URL onto the box.
3
+ `,e.appendChild(t)}const i=document.createElement("button");return i.textContent=Oe()("Done"),i.addEventListener("click",e=>{this.doneBuildingCb(this.group)}),e.appendChild(i),this.element.innerHTML="",this.element.appendChild(e),this}add(e){return new Promise((t,n)=>{rt.fetcher.nowOrWhenFetched(e,(i,a)=>{if(!i)return this.onGroupChanged(a),n(a);const o=g.namedNode(e),s=rt.any(o,b.rdf("type"));return s&&s.equals(b.foaf("Person"))?t(o):n(new Error(`Only people supported right now. (tried to add something of type ${s.value})`))})}).then(e=>{const t=g.st(this.group,b.vcard("hasMember"),e);return rt.holdsStatement(t)?e:ft(this.group.doc().uri,{toIns:[t]}).then(()=>{t.why=this.group.doc(),rt.add(t),this.onGroupChanged(null,"added",e),this.render()})})}handleRemove(e){return t=>{const n=g.st(this.group,b.vcard("hasMember"),e);return ft(this.group.doc().uri,{toDel:[n]}).then(()=>(rt.remove(n),this.onGroupChanged(null,"removed",e),this.render(),!0)).catch(t=>{const n=rt.any(e,b.foaf("name")),i=n&&n.value?`Could not remove ${n.value}. (${t})`:`Could not remove ${e.value}. (${t})`;throw new Error(i)})}}setGroupName(e){const{groupIndex:t}=ht(this.book),n=[this.group.doc(),t].map(t=>{const n=rt.match(this.group,b.vcard("fn"),null,t),i=g.st(this.group,b.vcard("fn"),g.literal(e));return ft(t.value,{toDel:n,toIns:[i]}).then(e=>{rt.removeStatements(n),i.why=t,rt.add(i)})});return Promise.all(n)}}class dt{constructor(e,t,n){this.webIdNode=t,this.element=e,this.handleRemove=n}render(){const e=document.createElement("div");e.style.display="flex";const t=mt(this.webIdNode,b.foaf("img"),st.LN+"noun_15059.svg"),n=document.createElement("img");n.src=Oe()(t),n.width="50",n.height="50",n.style.margin="5px";const i=mt(this.webIdNode,b.foaf("name"),`[${this.webIdNode}]`),a=document.createElement("span");a.innerHTML=Oe()(i),a.style.flexGrow="1",a.style.margin="auto 0";const o=document.createElement("button");return o.textContent="Remove",o.addEventListener("click",e=>this.handleRemove().catch(e=>{this.element.appendChild(ot(document,Oe()(`${e}`)))})),o.style.margin="5px",e.appendChild(n),e.appendChild(a),e.appendChild(o),this.element.innerHTML="",this.element.appendChild(e),this}}function mt(e,t,n){const i=rt.any(e,t);return i?i.value:n}function ft(e,{toDel:t,toIns:n}){return new Promise((e,i)=>{rt.updater.update(t,n,(t,n,a)=>{if(!n)return i(new Error(`PATCH failed for resource <${t}>: ${a}`));e()})})}function ht(e){return{groupIndex:rt.any(e,b.vcard("groupIndex")),groupContainer:rt.sym(e.dir().uri+"Group/")}}const gt="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEzLjAxNTcgOS4yNzM2M0MxNC4yOTU0IDguMzQwMzEgMTUuMTI4OCA2LjgyOTg0IDE1LjEyODggNS4xMjgyQzE1LjEyODggMi4zMDA1MSAxMi44MjgzIDAgMTAuMDAwNiAwQzcuMTcyODkgMCA0Ljg3MjM4IDIuMzAwNTEgNC44NzIzOCA1LjEyODJDNC44NzIzOCA2LjgyOTg0IDUuNzA1NyA4LjM0MDMxIDYuOTg1NDcgOS4yNzM2M0MzLjgwNDIyIDEwLjQ5MSAxLjUzOTA2IDEzLjU3NTQgMS41MzkwNiAxNy4xNzk1QzEuNTM5MDYgMTguNzM0NyAyLjgwNDM0IDIwIDQuMzU5NTcgMjBIMTUuNjQxNkMxNy4xOTY4IDIwIDE4LjQ2MjEgMTguNzM0NyAxOC40NjIxIDE3LjE3OTVDMTguNDYyMSAxMy41NzU0IDE2LjE5NyAxMC40OTEgMTMuMDE1NyA5LjI3MzYzWk02LjQxMDg2IDUuMTI4MkM2LjQxMDg2IDMuMTQ4ODMgOC4wMjEyMSAxLjUzODQ4IDEwLjAwMDYgMS41Mzg0OEMxMS45OCAxLjUzODQ4IDEzLjU5MDMgMy4xNDg4MyAxMy41OTAzIDUuMTI4MkMxMy41OTAzIDcuMTA3NTggMTEuOTggOC43MTc5NyAxMC4wMDA2IDguNzE3OTdDOC4wMjEyMSA4LjcxNzk3IDYuNDEwODYgNy4xMDc1OCA2LjQxMDg2IDUuMTI4MlpNMTUuNjQxNiAxOC40NjE1SDQuMzU5NTdDMy42NTI2NiAxOC40NjE1IDMuMDc3NTQgMTcuODg2NCAzLjA3NzU0IDE3LjE3OTVDMy4wNzc1NCAxMy4zNjIgNi4xODMxNiAxMC4yNTY0IDEwLjAwMDYgMTAuMjU2NEMxMy44MTgxIDEwLjI1NjQgMTYuOTIzNyAxMy4zNjIgMTYuOTIzNyAxNy4xNzk1QzE2LjkyMzcgMTcuODg2NCAxNi4zNDg2IDE4LjQ2MTUgMTUuNjQxNiAxOC40NjE1WiIgZmlsbD0iIzMxNDE1OCIvPgo8L3N2Zz4K";function bt(e,t,n){const i=e.createElement("a");i.setAttribute("href",t.uri),t.uri.startsWith("http")&&i.setAttribute("target","_blank");const a=i.appendChild(e.createElement("img"));return a.setAttribute("src",n||st.i1+"go-to-this.png"),a.setAttribute("style","margin: 0.3em;"),i}const vt=(e,t,n)=>{const i=bt(e,n);t.appendChild(i).classList.add("HoverControlHide"),t.appendChild(e.createElement("br"))},{iconBase:xt}=st.Pt,yt=xt+"noun_1180156.svg",wt=xt+"noun_1180158.svg";function Ct(e,t){if(!t)return;const n=function(e){let t=e&&e.statusArea||e&&e.div||null;if(t)return t;let n=e&&e.dom;if(n||"undefined"==typeof document||(n=document),n){const i=n.getElementsByTagName("body")[0];return t=n.createElement("div"),i.insertBefore(t,i.firstElementChild),e&&(e.statusArea=t),t}return null}(e);xe.Rm("Complaint: "+t),n?n.appendChild(ot(e&&e.dom||document,t)):alert(t)}function Et(e){for(;e.firstChild;)e.removeChild(e.firstChild);return e}function kt(e){const t=e.search(/logFile=/),n=e.search(/&rulesFile=/);return e.substring(t+8,n)}function At(e,t){if(!e)return"???";const n=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];try{const i=(new Date).toISOString();return e.slice(0,10)!==i.slice(0,10)||t?e.slice(0,4)===i.slice(0,4)?n[parseInt(e.slice(5,7),10)-1]+" "+parseInt(e.slice(8,10),10):e.slice(0,10):e.slice(11,16)}catch(e){return"shortdate:"+e}}function _t(e,t){return t.split("{").map(function(t){const n=t.split("}")[0];return t?("000"+(e["get"+n]()+({Month:1}[n]||0))).slice(-({Milliseconds:3,FullYear:4}[n]||2))+t.split("}")[1]:""}).join("")}function Tt(){return _t(new Date,"{FullYear}-{Month}-{Date}T{Hours}:{Minutes}:{Seconds}.{Milliseconds}")}function St(){return _t(new Date,"{Hours}:{Minutes}:{Seconds}.{Milliseconds}")}function jt(e,t){const n=v.store,i=function(e){const t=n.any(e,b.vcard("fn"))||n.any(e,b.foaf("name"))||n.any(e,b.vcard("organization-name"));return t?t.value:null},a=t.sameTerm(b.foaf("Agent"))?"Everyone":i(t);if(e.textContent=a||F(t),!a&&t.uri){if(!n.fetcher)throw new Error("kb has no fetcher");n.fetcher.nowOrWhenFetched(t.doc(),void 0,function(n){e.textContent=i(t)||F(t)})}}function Lt(e,t){return t.each(e,b.sioc("avatar")).concat(t.each(e,b.foaf("img"))).concat(t.each(e,b.vcard("logo"))).concat(t.each(e,b.vcard("hasPhoto"))).concat(t.each(e,b.vcard("photo"))).concat(t.each(e,b.foaf("depiction")))}const Rt={"solid:AppProviderClass":"noun_144.svg","solid:AppProvider":"noun_15177.svg","solid:Pod":"noun_Cabinet_1434380.svg","vcard:Group":"noun_339237.svg","vcard:Organization":"noun_143899.svg","vcard:Individual":gt,"schema:Person":gt,"foaf:Person":gt,"foaf:Agent":"noun_98053.svg","acl:AuthenticatedAgent":"noun_99101.svg","prov:SoftwareAgent":"noun_Robot_849764.svg","vcard:AddressBook":"noun_15695.svg","trip:Trip":"noun_581629.svg","meeting:LongChat":"noun_1689339.svg","meeting:Meeting":"noun_66617.svg","meeting:Project":"noun_1036577.svg","ui:Form":"noun_122196.svg","rdfs:Class":"class-rectangle.svg","rdf:Property":"property-diamond.svg","owl:Ontology":"noun_classification_1479198.svg","wf:Tracker":"noun_122196.svg","wf:Task":"noun_17020_gray-tick.svg","wf:Open":"noun_17020_sans-tick.svg","wf:Closed":"noun_17020.svg"};function Nt(e){const t=e.uri.split("#")[0],n=t.indexOf("//");if(n<0)throw new Error("This URI does not have a web site part (origin)");const i=t.indexOf("/",n+2);return i<0?t.slice(0)+"/":t.slice(0,i+1)}function It(e){const t=xt;return"string"!=typeof e&&e.uri?4!==e.uri.split("/").length||e.uri.split("/")[1]||e.uri.split("/")[3]?e.uri.startsWith("message:")||e.uri.startsWith("mid:")?t+"noun_480183.svg":e.uri.startsWith("mailto:")?t+"noun_567486.svg":e.uri.startsWith("https:")&&e.uri.indexOf("#")<0?Nt(e)+"favicon.ico":null:t+"noun_15177.svg":t+"noun_10636_grey.svg"}function $t(e){const t=v.store,n=xt;if(e.sameTerm(b.foaf("Agent"))||e.sameTerm(b.rdf("Resource")))return n+"noun_98053.svg";const i=t.any(e,b.sioc("avatar"))||t.any(e,b.foaf("img"))||t.any(e,b.vcard("logo"))||t.any(e,b.vcard("hasPhoto"))||t.any(e,b.vcard("photo"))||t.any(e,b.foaf("depiction"));return i?i.uri:null}function Bt(e,t,n){const i=v.store,a=$t(t);if(a)return e.setAttribute("src",a),!0;const o=n[t.uri];if(o)return e.setAttribute("src",o),e.style=tt.classIconStyle,!0;const s=It(t);if(s)return e.setAttribute("src",s),!0;const r=i.findTypeURIs(t);for(const t in r)if(n[t])return e.setAttribute("src",n[t]),!1;return e.setAttribute("src",xt+"noun_10636_grey.svg"),!1}function Dt(e,t){const n=v.store,i={};for(const e in Rt){const t=e.split(":")[0],n=e.split(":")[1],a=b[t](n),o=Rt[e];o.startsWith("data:")?i[a.uri]=o:i[a.uri]=g.uri.join(o,xt)}if(!Bt(e,t,i)&&t.uri){if(!n.fetcher)throw new Error("kb has no fetcher");n.fetcher.nowOrWhenFetched(t.doc(),void 0,n=>{n&&Bt(e,t,i)})}}function Ot(e,t){const n=e.createElement("img");n.style=tt.iconStyle;if(n.setAttribute("src",xt+(function(e){if(!e.uri)return!1;const t=e.uri.split("/");return 3===t.length||4===t.length&&""===t[3]}(t)?"noun_15177.svg":"noun_681601.svg")),t.uri&&t.uri.startsWith("https:")&&t.uri.indexOf("#")<0){const i=e.createElement("object");return i.setAttribute("data",Nt(t)+"favicon.ico"),i.setAttribute("type","image/x-icon"),i.appendChild(n),i}return Dt(n,t),n}function Mt(e,t,n,i){const a=xt+"noun_2188_red.svg",o=e.createElement("img");o.setAttribute("src",a),o.setAttribute("style",tt.smallButtonStyle),o.style.float="right";const s="Remove this "+n;return o.title=s,o.classList.add("hoverControlHide"),o.addEventListener("click",function(){const n=e.createElement("div");t.insertBefore(n,o),n.style.position="relative",n.appendChild(function(e,t,n,i){function a(){t.parentElement.removeChild(t)}function o(){a(),i()}const s=e.createElement("div");s.style=tt.confirmPopupStyle,s.style.position="absolute",s.style.top="-1em",s.style.display="grid",s.style.gridTemplateColumns="auto auto";const r=e.createElement("div");r.style.gridColumn="1/2",r.style.gridRow="1";const c=e.createElement("div");c.style.gridColumn="1/2",c.style.gridRow="2";const l=Ft(e,a);s.appendChild(l),l.style.gridColumn="1",l.style.gridRow="2";const p=s.appendChild(e.createElement("button"));p.style=tt.buttonStyle,p.style.gridRow="2",p.style.gridColumn="2",p.textContent="Cancel";const u=Ut(e,st.Pt.iconBase+"noun_925021.svg","Delete it");s.appendChild(u),u.style.gridRow="1",u.style.gridColumn="1";const d=s.appendChild(e.createElement("button"));return d.style=tt.buttonStyle,d.style.gridRow="1",d.style.gridColumn="2",d.textContent=n,s.appendChild(d),u.addEventListener("click",o),d.addEventListener("click",o),p.addEventListener("click",a),s}(e,n,s,i))}),t.classList.add("hoverControl"),t.appendChild(o),o.setAttribute("data-testid","deleteButtonWithCheck"),o}function Ut(e,t,n,i,a={buttonColor:"Primary",needsBorder:!1}){const o=e.createElement("button");if(o.setAttribute("type","button"),t){const i=o.appendChild(e.createElement("img"));i.setAttribute("src",t),i.setAttribute("style","width: 2em; height: 2em;"),i.title=n,o.setAttribute("style",tt.buttonStyle)}else o.textContent=n.toLocaleUpperCase(),o.onmouseover=function(){"Secondary"===a.buttonColor?a.needsBorder?o.setAttribute("style",tt.secondaryButtonNoBorderHover):o.setAttribute("style",tt.secondaryButtonHover):a.needsBorder?o.setAttribute("style",tt.primaryButtonNoBorderHover):o.setAttribute("style",tt.primaryButtonHover)},o.onmouseout=function(){"Secondary"===a.buttonColor?a.needsBorder?o.setAttribute("style",tt.secondaryButtonNoBorder):o.setAttribute("style",tt.secondaryButton):a.needsBorder?o.setAttribute("style",tt.primaryButtonNoBorder):o.setAttribute("style",tt.primaryButton)},"Secondary"===a.buttonColor?a.needsBorder?o.setAttribute("style",tt.secondaryButtonNoBorder):o.setAttribute("style",tt.secondaryButton):a.needsBorder?o.setAttribute("style",tt.primaryButtonNoBorder):o.setAttribute("style",tt.primaryButton);return i&&o.addEventListener("click",i,!1),o}function Ft(e,t){const n=Ut(e,yt,"Cancel",t);return n.firstChild&&(n.firstChild.style.opacity="0.3"),n}function Pt(e,t){return Ut(e,wt,"Continue",t)}function zt(e,t,n,i,a,o){return new Promise(function(t,s){const r=e.createElement("div");i=i||b.foaf("name");const c=(o=o||(a?F(a):" "))+" "+F(i)+": ";r.appendChild(e.createElement("p")).textContent=c;const l=e.createElement("input");function p(){r.parentNode.removeChild(r),t(l.value.trim())}l.setAttribute("type","text"),l.setAttribute("size","100"),l.setAttribute("maxLength","2048"),l.setAttribute("style",tt.textInputStyle),l.select(),r.appendChild(l),n.appendChild(r),l.addEventListener("keyup",function(e){13===e.keyCode&&p()},!1),r.appendChild(e.createElement("br")),r.appendChild(Ft(e,function(e){r.parentNode.removeChild(r),t(null)})),r.appendChild(Pt(e,function(e){p()})),l.focus()})}const qt=Ht;function Ht(e,t,n,i){const a=e.createElement("tr");i=i||{};const o=a.appendChild(e.createElement("td")),s=a.appendChild(e.createElement("td")),r=a.appendChild(e.createElement("td")),c=i.image||Ot(e,n);o.setAttribute("style","vertical-align: middle; width:2.5em; padding:0.5em; height: 2.5em;"),s.setAttribute("style","vertical-align: middle; text-align:left;"),r.setAttribute("style","vertical-align: middle; width:2em; padding:0.5em; height: 4em;"),o.appendChild(c);const l=s.appendChild(e.createElement("div")),p=l.appendChild(e.createElement("span"));if(i.title?p.textContent=i.title:jt(p,n),"function"==typeof i.renderNameSuffix){const t=i.renderNameSuffix(n,e);if(t){const n=l.appendChild(e.createElement("span"));n.setAttribute("style","margin-left: 0.4em; opacity: 0.8;"),"string"==typeof t?n.textContent=t:n.appendChild(t)}}if("function"==typeof i.renderSupportingInfo){const t=i.renderSupportingInfo(n,e);if(t){const n=s.appendChild(e.createElement("div"));n.setAttribute("style","font-size: 90%; opacity: 0.8;"),"string"==typeof t?n.textContent=t:n.appendChild(t)}}if(i.deleteFunction&&Mt(e,r,i.noun||"one",i.deleteFunction),n.uri){if(!1!==i.link){r.appendChild(bt(e,n)).classList.add("HoverControlHide"),r.appendChild(e.createElement("br"))}!1!==i.draggable&&(c.setAttribute("draggable","false"),it(a,n))}return a.subject=n,a}function Vt(e,t,n,i){const a=t.appendChild(e.createElement("div"));n?a.textContent=n:jt(a,i)}function Gt(e,t,n,i){const a=t.appendChild(e.createElement("div"));a.setAttribute("style",tt.linkDivStyle),i.deleteFunction&&Mt(e,a,i.noun||"one",i.deleteFunction),n.uri&&(!1!==i.link&&vt(e,a,n),it(t,n))}function Wt(e,t,n){const i=e.createElement("div");i.setAttribute("style",tt.renderAsDivStyle);if(((e,t,n)=>{const i=t.appendChild(e.createElement("div"));i.setAttribute("style",tt.imageDivStyle),i.appendChild(n),n.setAttribute("draggable","false")})(e,i,(n=n||{}).image||Ot(e,t)),Vt(e,i,n.title,t),Gt(e,i,t,n),n.clickable&&n.onClickFunction&&((e,t)=>{e.addEventListener("click",t)})(i,n.onClickFunction),n.wrapInATR){const n=((e,t,n)=>{const i=e.createElement("tr");return i.appendChild(e.createElement("td")).appendChild(t),i.subject=n,i})(e,i,t);return n}return i}function Jt(e){if(e.refresh)e.refresh();else for(let t=0;t<e.children.length;t++)Jt(e.children[t])}function Qt(e,t,n,i={}){const a=new Set,o=!(!i.renderSupportingInfo&&!i.renderNameSuffix);function s(n){const s=n,c={noun:f};if(c.renderSupportingInfo=i.renderSupportingInfo,c.renderNameSuffix=i.renderNameSuffix,o&&n?.uri&&h.fetcher){const e=n.doc(),t=e?.uri?h.fetcher.requested?.[e.uri]:void 0,i="done"!==t&&"failed"!==t;e?.uri&&i&&!a.has(e.uri)&&(a.add(e.uri),h.fetcher.nowOrWhenFetched(e,void 0,()=>{a.delete(e.uri),r()}))}return u&&(c.deleteFunction=function(){!function(e){if(!h.updater)throw new Error("kb has no updater");h.updater.update((0,g.st)(t,m,e,p),[],function(e,t,n,i){t?r():Ct(void 0,"Error deleting one: "+n)})}(s)}),qt(e,m,n,c)}const r=function(){const e=h.each(t,m);e.sort(),Z(C,e,s,o?function(e,t){return s(t)}:void 0)};function c(e){const n=[];if(e.forEach(function(e){const i=(0,g.sym)(e);xe.Rm("Dropped on attachemnt "+e),n.push((0,g.st)(t,m,i,p))}),!h.updater)throw new Error("kb has no updater");h.updater.update([],n,function(e,t,n,i){t?r():Ct(void 0,"Error adding one: "+n)})}function l(e){at(h.fetcher,e,i.uploadFolder?.uri,i.uploadFolder?.uri,function(e,n){const i=[(0,g.st)(t,m,h.sym(n),p)];if(!h.updater)throw new Error("kb has no updater");h.updater.update([],i,function(e,t,n,i){t?r():Ct(void 0,"Error adding link to uploaded file: "+n)})})}const p=i.doc||t.doc();void 0===i.modify&&(i.modify=!0);const u=i.modify,d=i.promptIcon||xt+"noun_748003.svg",m=i.predicate||b.wf("attachment"),f=i.noun||"attachment",h=v.store,x=n.appendChild(e.createElement("table"));x.setAttribute("style","margin-top: 1em; margin-bottom: 1em;");const y=x.appendChild(e.createElement("tr")),w=y.appendChild(e.createElement("td")),C=y.appendChild(e.createElement("td")).appendChild(e.createElement("table"));if(C.appendChild(e.createElement("tr")),x.refresh=r,r(),u){const t=Ut(e,d,"Drop attachments here");w.appendChild(t);const n=i.uploadFolder?l:null;if(nt(t,c,n),nt(w,c,n),i.uploadFolder){const t=pn(e,l);w.appendChild(t)}}return x}function Zt(e){e.preventDefault(),e.stopPropagation();const t=ee(e).getAttribute("href");if(!t)return xe.Rm("openHrefInOutlineMode: No href found!\n");const n=window.document;n.outlineManager?n.outlineManager.GotoSubject(v.store.sym(t),!0,void 0,!0,void 0):window&&window.panes&&window.panes.getOutliner?window.panes.getOutliner().GotoSubject(v.store.sym(t),!0,void 0,!0,void 0):xe.Rm("ERROR: Can't access outline manager in this config")}function Yt(e){if(void 0===e.uri)return;let t=e.uri;if("http://"!==t.slice(0,7))return;t=t.slice(7);const n=t.indexOf("#");if(n>=0)t=t.slice(0,n);else{const e=t.lastIndexOf("/");if(e<0)return;t=t.slice(0,e)}return v.store.sym("http://tabulator.org/wiki/annnotation/"+t)}function Kt(){const e={};return v.store.statementsMatching(void 0,b.rdf("type"),void 0).forEach(function(t){t.object.value&&(e[t.object.value]=!0)}),v.store.statementsMatching(void 0,b.rdfs("subClassOf"),void 0).forEach(function(t){t.object.value&&(e[t.object.value]=!0),t.subject.value&&(e[t.subject.value]=!0)}),v.store.each(void 0,b.rdf("type"),b.rdfs("Class")).forEach(function(t){t.value&&(e[t.value]=!0)}),e}function Xt(e){const t={},n={},i={};let a=0,o=0,s=0;const r=e.predicateIndex;for(const e in r){"Literal"===r[e][0].object.termType?(n[e]=!0,o++):(i[e]=!0,a++)}const c=e.each(void 0,b.rdf("type"),b.rdf("Property"));for(let e=0;e<c.length;e++){const t=c[e].toNT();i[t]||n[t]||(n[t]=!0,i[t]=!0,s++)}return t.op=i,t.dp=n,S(`propertyTriage: ${a} non-lit, ${o} literal. ${s} unknown.`),t}function en(e,t){const n=e.createElement("button");return n.setAttribute("type","button"),n.textContent="Goto "+F(t),n.addEventListener("click",function(n){e.outlineManager.GotoSubject(t,!0,void 0,!0,void 0)},!0),n}function tn(e,t){const n=e.createElement("button");return n.setAttribute("type","button"),n.textContent="✕",n.addEventListener("click",function(e){t.parentNode.removeChild(t)},!0),n}function nn(e,t,n,i,a,o,s,r,c){return an(e.createElement("div"),e,t,n,i,a,o,s,r,c)}function an(e,t,n,i,a,o,s,r,c,l){const p="border: 0.1em solid #ddd; border-bottom: none; width: 95%; height: 2em; padding: 0.5em;";let u=null;e.innerHTML="";const d=function(e,s){let d,m;const f=function(){const e=o?n.each(void 0,a,s):n.each(s,a);v.setAttribute("class",0===e.length?"hideTillHover":""),m.setAttribute("src",r.connectIcon||xt+"noun_25830.svg"),m.setAttribute("title",e.length?e.length:"attach")},h=on.twoLine.widgetForClass(i);d=h(t,s),d.setAttribute("style",p);const g=t.createElement("div");g.setAttribute("class","hideTillHover"),g.setAttribute("style","float:right; width:10%");const b=t.createElement("a");b.setAttribute("href",s.uri),b.setAttribute("style","float:right"),g.appendChild(b).textContent=">",e.appendChild(g);const v=t.createElement("div");return v.setAttribute("style",(o?"float:left;":"float:right;")+" width:30px;"),m=t.createElement("img"),f(),v.appendChild(m),e.appendChild(v),d.addEventListener("click",function(e){u===d?(d.setAttribute("style",p),u=null):(u&&u.setAttribute("style",p),d.setAttribute("style",p+"background-color: #ccc; color:black;"),u=d),c(s,e,u===d),f()},!1),m.addEventListener("click",function(e){l(s,e,o,f)},!1),e.appendChild(d),e};for(let n=0;n<s.length;n++){const i=t.createElement("div");e.appendChild(i),d(i,s[n])}return e}let on={};function sn(e,t){const n=e.querySelectorAll("link");for(let e=0;e<n.length;e++)if("stylesheet"===(n[e].getAttribute("rel")||"")&&(n[e].getAttribute("href")||"")===t)return;const i=e.createElement("link");i.setAttribute("rel","stylesheet"),i.setAttribute("type","text/css"),i.setAttribute("href",t),e.getElementsByTagName("head")[0].appendChild(i)}function rn(e){return ln(e,"audio")}function cn(e){return ln(e,"video")}function ln(e,t){const n=t||"image",i=v.store.findTypeURIs(e),a=g.Util.mediaTypeClass(n+"/*").uri.split("*")[0];for(const e in i)if(e.startsWith(a))return!0;return{audio:"http://purl.org/dc/dcmitype/Sound",image:"http://purl.org/dc/dcmitype/Image",video:"http://purl.org/dc/dcmitype/MovingImage"}[n]in i}function pn(e,t){const n=e.createElement("div"),i=n.appendChild(e.createElement("input"));i.setAttribute("type","file"),i.setAttribute("multiple","true"),i.addEventListener("change",e=>{xe.Rm("File drop event: ",e),e.files?t(e.files):e.target&&e.target.files?t(e.target.files):alert("Sorry no files .. internal error?")},!1),i.style="display:none";return nt(n.appendChild(Ut(e,xt+"noun_Upload_76574_000000.svg","Upload files",e=>{i.click()})),null,t),n}on={line:{},twoLine:{"":function(e,t){const n=e.createElement("div");return n.textContent=F(t),n},"http://www.w3.org/2000/10/swap/pim/qif#Transaction":function(e,t){let n="";const i=function(e){const i=v.store.any(t,b.qu(e));return i||(n+="@@ No value for "+e+"! "),i?de(i.value):"?"},a=e.createElement("table");return a.innerHTML=`\n <tr>\n <td colspan="2"> ${i("payee")}</td>\n < /tr>\n < tr >\n <td>${i("date").slice(0,10)}</td>\n <td style = "text-align: right;">${i("amount")}</td>\n </tr>`,n&&(a.innerHTML=`\n <tr>\n <td><a href="${de(t.uri)}">${de(n)}</a></td>\n </tr>`),a},"http://www.w3.org/ns/pim/trip#Trip":function(e,t){const n=function(e){const n=v.store.any(t,e);return n?de(n.value):"?"},i=e.createElement("table");return i.innerHTML=`\n <tr>\n <td colspan="2">${n(b.dc("title"))}</td>\n </tr>\n <tr style="color: #777">\n <td>${n(b.cal("dtstart"))}</td>\n <td>${n(b.cal("dtend"))}</td>\n </tr>`,i},widgetForClass:function(e){let t=on.twoLine[e.uri];const n=v.store;if(t)return t;const i=n.findSuperClassesNT(e);for(const e in i)if(t=on.twoLine[n.fromNT(e).uri],t)return t;return on.twoLine[""]}}};const un={[b.ui("ColorField").uri]:{size:9,type:"color",style:"height: 3em;",dt:"color",pattern:/^\s*#[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]([0-9a-f][0-9a-f])?\s*$/},[b.ui("DateField").uri]:{size:20,type:"date",dt:"date",pattern:/^\s*[0-9][0-9][0-9][0-9](-[0-1]?[0-9]-[0-3]?[0-9])?Z?\s*$/},[b.ui("DateTimeField").uri]:{size:20,type:"datetime-local",dt:"dateTime",pattern:/^\s*[0-9][0-9][0-9][0-9](-[0-1]?[0-9]-[0-3]?[0-9])?(T[0-2][0-9]:[0-5][0-9](:[0-5][0-9])?)?Z?\s*$/},[b.ui("TimeField").uri]:{size:10,type:"time",dt:"time",pattern:/^\s*([0-2]?[0-9]:[0-5][0-9](:[0-5][0-9])?)\s*$/},[b.ui("IntegerField").uri]:{size:12,style:"text-align: right;",dt:"integer",pattern:/^\s*-?[0-9]+\s*$/},[b.ui("DecimalField").uri]:{size:12,style:"text-align: right;",dt:"decimal",pattern:/^\s*-?[0-9]*(\.[0-9]*)?\s*$/},[b.ui("FloatField").uri]:{size:12,style:"text-align: right;",dt:"float",pattern:/^\s*-?[0-9]*(\.[0-9]*)?((e|E)-?[0-9]*)?\s*$/},[b.ui("SingleLineTextField").uri]:{},[b.ui("NamedNodeURIField").uri]:{namedNode:!0},[b.ui("TextField").uri]:{},[b.ui("PhoneField").uri]:{size:20,uriPrefix:"tel:",pattern:/^\+?[\d-]+[\d]*$/},[b.ui("EmailField").uri]:{size:30,uriPrefix:"mailto:",pattern:/^\s*.*@.*\..*\s*$/},[b.ui("Group").uri]:{style:tt.formGroupStyle},[b.ui("Comment").uri]:{element:"p",style:tt.commentStyle},[b.ui("Heading").uri]:{element:"h3",style:tt.formHeadingStyle}},dn=v.solidLogicSingleton.store,mn={};function fn(e){const t=dn,n=t.findTypeURIs(e),i=t.bottomTypeURIs(n),a=[];for(const e in i)a.push(e);return a[0]}function hn(e,t){const n=fn(t),i=mn[n];return T("paneUtils: Going to implement field "+t+" of type "+n),i||function(e,i){const a=ot(e,"No handler for field "+t+" of type "+n);return i&&i.appendChild(a),a}}const gn="https://www.w3.org/ns/css#";const bn=v.solidLogicSingleton.store;function vn(e,t,n,i,a){n.style.display="flex",n.style.flexDirection="row";const o=n.appendChild(e.createElement("div"));o.style.width=We;const s=n.appendChild(e.createElement("div"));return o.setAttribute("class","formFieldName"),o.setAttribute("style",tt.formFieldNameBoxStyle),s.setAttribute("class","formFieldValue"),a?o.appendChild(e.createTextNode(a)):t.any(i,b.ui("property"))?o.appendChild(xn(e,t.any(i,b.ui("property")),i)):(s.appendChild(ot(e,"No property or label given for form field: "+i)),o.appendChild(e.createTextNode("???"))),s}function xn(e,t,n){let i=bn.any(n,b.ui("label"));if(i||(i=F(t,!0)),void 0===t)return e.createTextNode("@@Internal error: undefined property");const a=e.createElement("a");return t.uri&&a.setAttribute("href",t.uri),a.setAttribute("style","color: #3B5998; text-decoration: none;"),a.textContent=i,a}function yn(e,t,n){const i=bn.statementsMatching(e,t);if(0===i.length)return n;if(!bn.updater)throw new Error("Store has no updater");return i.length>0&&i[0].why.value&&bn.updater.editable(i[0].why.value,bn)?bn.sym(i[0].why.value):n}function wn(e,t,n,i,a,o,s){const r=bn,c=a.doc?a.doc():null,l=e.createElement("div"),p=r.any(a,b.ui("property"));if(t&&t.appendChild(l),!p)return l.appendChild(ot(e,"Error: No property given for text field: "+a));const u=vn(e,r,l,a),d=r.anyJS(a,b.ui("suppressEmptyUneditable"),null,c),m=fn(a);let f=un[m];void 0===f&&(f={style:""});const h=f.style||"",v=tt.textInputStyle+h,x=e.createElement("input");x.style=v,u.appendChild(x),x.setAttribute("type",f.type?f.type:"text");const y=(x.getAttribute("type")||"").toLowerCase(),w="date"===y||"datetime-local"===y,C=r.anyJS(a,b.ui("size"))||Je||20;x.setAttribute("size",C);const E=r.any(a,b.ui("maxLength"));x.setAttribute("maxLength",E?""+E:et),o=o||yn(i,p,o);let k=r.any(i,p,void 0,o);if(k||(k=r.any(a,b.ui("default"))),k&&k.value&&f.uriPrefix?x.value=decodeURIComponent(k.value.replace(f.uriPrefix,"")).replace(/ /g,""):k&&(x.value=k.value||k.value||""),x.setAttribute("style",v),!r.updater)throw new Error("kb has no updater");return r.updater.editable(o.uri)?(x.addEventListener("keyup",function(e){f.pattern&&x.setAttribute("style",v+(x.value.match(f.pattern)?"color: green;":"color: red;"))},!0),x.addEventListener("change",function(t){if(w&&e.activeElement===x)return void(x.dataset&&(x.dataset.deferredChange="true"));if(f.pattern&&!x.value.match(f.pattern))return;const n=!w;n&&(x.disabled=!0),x.setAttribute("style",v+"color: gray;");const a=r.statementsMatching(i,p);let c;f.namedNode?c=r.sym(x.value):f.uriPrefix?(c=encodeURIComponent(x.value.replace(/ /g,"")),c=r.sym(f.uriPrefix+x.value)):c=f.dt?new g.Literal(x.value.trim(),void 0,b.xsd(f.dt)):new g.Literal(x.value);let u=a.map(e=>(0,g.st)(e.subject,e.predicate,c,e.why));0===u.length&&(u=[(0,g.st)(i,p,c,o)]),function e(t,n,i){const a=[];if(n.forEach(e=>{a.includes(e.why.uri)||a.push(e.why.uri)}),t.forEach(e=>{a.includes(e.why.uri)||a.push(e.why.uri)}),0===a.length)throw new Error("updateMany has no docs to patch");if(!r.updater)throw new Error("kb has no updater");if(1===a.length)return r.updater.update(t,n,i);const o=a.pop(),s=n.filter(e=>e.why.uri===o),c=n.filter(e=>e.why.uri!==o),l=t.filter(e=>e.why.uri===o),p=t.filter(e=>e.why.uri!==o);r.updater.update(l,s,function(t,n,a){n?e(p,c,i):i(t,n,a)})}(a,u,function(t,i,a){i?(n&&(x.disabled=!1),x.setAttribute("style",v)):l.appendChild(ot(e,a)),s(i,a)})},!0),x.addEventListener("blur",function(e){if(w&&x.dataset&&"true"===x.dataset.deferredChange){delete x.dataset.deferredChange;const e=new Event("change",{bubbles:!0});x.dispatchEvent(e)}},!0),l):(x.readOnly=!0,x.style=tt.textInputStyleUneditable+h,d&&""===x.value&&(l.style.display="none"),l)}const Cn="https://www.w3.org/ns/iana/language-code/",En=["en","fr","de","it","ar"];function kn(e){return e||(e=[]),e.concat(En.filter(t=>!e.includes(t)))}async function An(e){const t=e.doc();await(v.store.fetcher?.load(t));const n=v.store.any(e,b.schema("knowsLanguage"),null,t);if(!n)return En;const i=[];return n.elements.forEach(e=>{const n=v.store.any(e,b.solid("publicId"),null,t);if(!n)return void console.warn("getPreferredLanguages: No publiID of language.");if(!n.value.startsWith(Cn))return void console.error(`What should be a language code ${n.value} does not start with ${Cn}`);const a=n.value.slice(Cn.length);i.push(a)}),i.length>0?(console.log(` User knows languages with codes: "${i.join(",")}"`),kn(i)):null}async function _n(){const e=await v.authn.currentUser();if(e){const t=await An(e);if(t)return t}if("undefined"!=typeof navigator){if(navigator.languages)return kn(navigator.languages.map(e=>e.split("-")[0]));if(navigator.language)return kn([navigator.language.split("-")[0]])}return En}function Tn(e,t){const n={};e.forEach(e=>{const t=e.subject.value;n[t]=n[t]||[],n[t].push(e)});const i=t||En;i.reverse();const a=[];for(const e in n){const t=n[e].map(e=>{const t=e.name["xml:lang"];return[i.indexOf(t),e]});t.sort(),t.reverse(),a.push(t[0][1])}return xe.Rm(` Filter by language: ${e.length} -> ${a.length}`),a}const Sn=200,jn=/\$\(subject\)/g,Ln={Corporation:"http://www.wikidata.org/entity/Q6881511",EducationalOrganization:"http://www.wikidata.org/entity/Q178706",GovernmentOrganization:"http://www.wikidata.org/entity/Q327333",MedicalOrganization:"http://www.wikidata.org/entity/Q4287745",MusicGroup:"http://www.wikidata.org/entity/Q32178211",NGO:"http://www.wikidata.org/entity/Q163740",Occupation:"http://www.wikidata.org/entity/Q28640",Project:"http://www.wikidata.org/entity/Q170584",ResearchOrganization:"http://www.wikidata.org/entity/Q31855",SportsOrganization:"http://www.wikidata.org/entity/Q4438121"},Rn='prefix vcard: <http://www.w3.org/2006/vcard/ns#>\nCONSTRUCT\n{ wd:Q49108 vcard:fn ?itemLabel.\nwd:Q49108 rdf:type ?klass. ?klass rdfs:label ?klassLabel; rdfs:comment ?klassDescription .\nwd:Q49108 schema:logo ?logo;\n schema:image ?image;\n schema:logo ?sealImage;\n schema:subOrganization ?subsidiary .\n ?subsidiary rdfs:label ?subsidiaryLabel .\n ?supersidiary schema:subOrganization wd:Q49108 .\n ?supersidiary rdfs:label ?supersidiaryLabel .\n wd:Q49108 schema:location ?location .\n ?location schema:elevation ?elevation .\n ?location wdt:P131 ?region . ?region rdfs:label ?regionLabel .\n ?location wdt:P625 ?coordinates .\n ?location schema:country ?country . ?country rdfs:label ?countryLabel .\n}\nWHERE\n{ optional {wd:Q49108 rdfs:label ?itemLabel} .\n optional {wd:Q49108 wdt:P154 ?logo .}\n optional {wd:Q49108 wdt:P31 ?klass .}\n optional {wd:Q49108 wdt:P158 ?sealImage .}\n optional {wd:Q49108 wdt:P18 ?image .}\n\n optional { wd:Q49108 wdt:P355 ?subsidiary . }\n optional { ?supersidiary wdt:P355 wd:Q49108. }\n\n optional { wd:Q49108 wdt:P276 ?location .\n\n optional { ?location schema:eleveation ?elevation }\n optional { ?location wdt:P131 ?region }\n optional { ?location wdt:P625 ?coordinates }\n optional { ?location wdt:P17 ?country }\n }\n SERVICE wikibase:label { bd:serviceParam wikibase:language "fr,en,de,it". }\n}',Nn={credentials:"omit",headers:new Headers({Accept:"application/json"})},In={label:"ESCO",logo:v.store.sym("https://ec.europa.eu/esco/portal/static_resource2/images/logo/logo_en.gif"),searchByNameURI:"https://ec.europa.eu/esco/api/search?language=$(language)&type=occupation&text=$(name)"},$n={label:"DBPedia",logo:v.store.sym("https://upload.wikimedia.org/wikipedia/commons/thumb/7/73/DBpediaLogo.svg/263px-DBpediaLogo.svg.png"),searchByNameQuery:'select distinct ?subject, ?name where {\n ?subject a $(targetClass); rdfs:label ?name\n FILTER regex(?name, "$(name)", "i")\n } LIMIT $(limit)',endpoint:"https://dbpedia.org/sparql/"},Bn={AcademicInsitution:"http://umbel.org/umbel/rc/EducationalOrganization"},Dn={AcademicInsitution:"http://www.wikidata.org/entity/Q4671277",Enterprise:"http://www.wikidata.org/entity/Q6881511",Business:"http://www.wikidata.org/entity/Q4830453",NGO:"http://www.wikidata.org/entity/Q79913",CharitableOrganization:"http://www.wikidata.org/entity/Q708676",Insitute:"http://www.wikidata.org/entity/Q1664720"},On={label:"WikiData",limit:3e3,logo:v.store.sym("https://www.wikimedia.org/static/images/project-logos/wikidatawiki.png"),endpoint:"https://query.wikidata.org/sparql",searchByNameQuery:'SELECT ?subject ?name\n WHERE {\n ?klass wdt:P279* $(targetClass) .\n ?subject wdt:P31 ?klass .\n ?subject rdfs:label ?name.\n FILTER regex(?name, "$(name)", "i")\n } LIMIT $(limit) ',insitituteDetailsQuery:'CONSTRUCT\n{ wd:Q49108 schema:name ?itemLabel;\n schema:logo ?logo;\n schema:logo ?sealImage;\n schema:subOrganization ?subsidiary .\n ?subsidiary schema:name ?subsidiaryLabel .\n}\nWHERE\n{\n wd:Q49108 # rdfs:label ?itemLabel ;\n wdt:P154 ?logo;\n wdt:P158 ?sealImage ;\n wdt:P355 ?subsidiary .\n # ?subsidiary rdfs:label ?subsidiaryLabel .\n\n SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE], fr". }\n}'},Mn={"http://www.wikidata.org/entity/Q15936437":b.schema("CollegeOrUniversity"),"http://www.wikidata.org/entity/Q1664720":b.schema("EducationalOrganization"),"http://www.wikidata.org/entity/Q43229":b.schema("Organization"),"http://www.wikidata.org/entity/Q3918":b.schema("CollegeOrUniversity"),"http://www.wikidata.org/entity/Q170584":b.schema("Project"),"http://www.wikidata.org/entity/Q327333":b.schema("GovernmentOrganization"),"http://www.wikidata.org/entity/Q2221906":b.schema("Place"),"http://www.wikidata.org/entity/Q167037":b.schema("Corporation")},Un={targetClass:b.rdf("type"),sealImage:b.schema("logo"),shortName:b.foaf("nick"),subsidiary:b.schema("subOrganization"),city:b.vcard("locality"),state:b.vcard("region"),country:b.vcard("country-name"),homepage:b.foaf("homepage"),lat:b.schema("latitude"),long:b.schema("longitude")};function Fn(e){const t=e.type.toLowerCase();if("uri"===t||"iri"===t)return v.store.sym(e.value);if("literal"===t)return e["xml:lang"]?new g.Literal(e.value,e["xml:lang"]):new g.Literal(e.value);throw new Error(`bindingToTerm: Unexpected type "${e.type}" in sparql binding}`)}function Pn(e,t,n,i,a=Un){const o={};xe.Rm(`loadFromBindings: subject: ${t}`),xe.Rm(` doc: ${i}`),n.forEach(e=>{for(const t in e){const n=e[t],i=JSON.stringify(n);o[t]=o[t]||new Set,o[t].add(i)}});for(const n in o){const s=o[n];xe.Rm(` results ${n} -> ${s}`),s.forEach(o=>{const s=JSON.parse(o),{type:r,value:c}=s;let l;if("uri"===r)l=e.sym(c);else{if("literal"!==r)throw new Error(`loadFromBindings: unexpected type: ${r}`);l=new g.Literal(c,s.language,s.datatype)}if("type"===n)Mn[c]?l=Mn[c]:xe.R8("Unmapped Wikidata Class: "+c);else if("coordinates"===n){xe.Rm(" @@@ hey a point: "+c);const n=/.*\(([-0-9.-]*) ([-0-9.-]*)\)/.exec(c);if(n){const a=b.xsd("float"),o=new g.Literal(n[1],null,a),s=new g.Literal(n[2],null,a);e.add(t,b.schema("longitude"),s,i),e.add(t,b.schema("latitude"),o,i)}else xe.Rm("Bad coordinates syntax: "+c)}else{const o=a[n]||b.schema(n);e.add(t,o,l,i),xe.Rm(` public data ${o} ${l}.`)}})}}function zn(e){return e._embedded.results.map(e=>({name:{value:e.title,type:"literal"},subject:{type:"IRI",value:e.uri}}))}async function qn(e,t,n){if(!n.searchByNameURI)throw new Error("Missing queryTarget.searchByNameURI on queryESCODataByName");const i=n.limit||Sn,a=n.searchByNameURI.replace("$(name)",e).replace("$(limit)",""+i).replace("$(targetClass)",t.toNT());xe.Rm("Querying ESCO data - uri: "+a);const o=await(v.store.fetcher?.webOperation("GET",a,Nn)),s=o?.responseText||"";if(xe.Rm(" Query result text"+s.slice(0,500)+"..."),0===s.length)throw new Error("Wot no text back from ESCO query "+a);const r=JSON.parse(s);return xe.Rm(" ESCO Query result JSON"+JSON.stringify(r,null,4).slice(0,500)+"..."),zn(r)}function Hn(e){const t=e.indexOf("SPARQL-QUERY");if(t<0)return e;xe.R8(" ### Fixing JSON with wikidata error code injection "+e.slice(t,t+200));const n=e.lastIndexOf("}, {");return e.slice(0,n)+" } ] } } "}async function Vn(e,t,n,i){function a(n){const a=i.limit||Sn;return n.replace("$(name)",e).replace("$(limit)",""+a).replace("$(language)",o).replace("$(targetClass)",t.toNT())}if(!t)throw new Error("queryPublicDataByName: No class provided");const o=(await _n()||En)[0]||"en";if(i.searchByNameQuery){const e=a(i.searchByNameQuery);return xe.Rm("Querying public data - sparql: "+e),Gn(e,i)}if(i.searchByNameURI){const e=a(i.searchByNameURI);let t;try{t=await(v.store.fetcher?.webOperation("GET",e,Nn))}catch(t){throw new Error(`Exception when trying to fetch ${e} \n ${t}`)}const n=t.responseText||"";if(200!==t.status)throw new Error(`HTTP error status ${t.status} trying to fetch ${e} `);if(xe.Rm(" Query result text"+n.slice(0,500)+"..."),0===n.length)throw new Error("queryPublicDataByName: No text back from public data query "+e);const o=Hn(n),s=JSON.parse(o);if(xe.Rm(" API Query result JSON"+JSON.stringify(s,null,4).slice(0,500)+"..."),s._embedded){xe.Rm(" Looks like ESCO");return zn(s)}throw alert("Code me: unrecognized API return format"),new Error(`*** Need to add code to parse unrecognized API JSON return\n${JSON.stringify(s,null,4)}`)}throw new Error("Query source must have either rest API or SPARQL endpoint.")}async function Gn(e,t){if(!t.endpoint)throw new Error("Missing queryTarget.endpoint required for queryPublicDataSelect");const n=new URL(t.endpoint);n.searchParams.append("query",e);const i=n.href;xe.Rm(" queryPublicDataSelect uri: "+i);const a=new Headers;a.append("Accept","application/json");const o={credentials:"omit",headers:a},s=await(v.store.fetcher?.webOperation("GET",i,o)),r=s?.responseText||"";if(0===r.length)throw new Error("No text back from query "+i);const c=Hn(r),l=JSON.parse(c);xe.Rm(" Query result JSON"+JSON.stringify(l,null,4).slice(0,100)+"...");return l.results.bindings}async function Wn(e,t,n){if(xe.Rm("queryPublicDataConstruct: sparql:",e),!n.endpoint)throw new Error("Missing queryTarget.endpoint required for queryPublicDataConstruct");const i=new URL(n.endpoint);i.searchParams.append("query",e);const a=i.href;xe.Rm(" queryPublicDataConstruct uri: "+a);const o=new Headers;o.append("Accept","text/turtle");const s={credentials:"omit",headers:o},r=await(v.store.fetcher?.webOperation("GET",a,s)),c=r?.responseText||"No response text?",l=c.length>500?c.slice(0,200)+" ... "+c.slice(-200):c;if(xe.Rm(" queryPublicDataConstruct result text:"+l),0===c.length)throw new Error("queryPublicDataConstruct: No text back from construct query:"+a);(0,g.parse)(c,v.store,t.uri,"text/turtle")}async function Jn(e,t,n){if(n.uri.startsWith("https://dbpedia.org/resource/"))return Kn(e,t,n);if(!n.uri.match(/^https?:\/\/www\.wikidata\.org\/entity\/.*/)){const t=n.uri.startsWith("http:")?e.sym("https:"+n.uri.slice(5)):n,i=new Headers;return i.append("Accept","text/turtle"),e.fetcher.load(t,{credentials:"omit",headers:i})}await Qn(e,t,n)}async function Qn(e,t,n){const i=Rn.replace(/wd:Q49108/g,n.toNT());await Wn(i,n,On),xe.Rm("getWikidataDetails: loaded.",n)}async function Zn(e,t,n){const i='select distinct * where {\n optional { $(subject) wdt:P31 ?targetClass } # instance of\n optional { $(subject) wdt:P154 ?logo }\n optional { $(subject) wdt:P158 ?sealImage }\n# optional { $(subject) wdt:P159 ?headquartersLocation }\n\noptional { $(subject) wdt:P17 ?country }\noptional { $(subject) wdt:P18 ?image }\noptional { $(subject) wdt:P1813 ?shortName }\n\noptional { $(subject) wdt:P355 ?subsidiary }\n# SERVICE wikibase:label { bd:serviceParam wikibase:language "fr,en,de,it" }\n}'.replace(jn,n.toNT());Pn(e,n,await Gn(i,On),n.doc())}async function Yn(e,t,n){const i='select distinct * where {\n\n $(subject) wdt:P276 ?location .\n\n optional { ?location wdt:P2044 ?elevation }\n optional { ?location wdt:P131 ?region }\n optional { ?location wdt:P625 ?coordinates }\noptional { ?location wdt:P17 ?country }\n\n# SERVICE wikibase:label { bd:serviceParam wikibase:language "fr,en,de,it" }\n}'.replace(jn,n.toNT());xe.Rm(" location query sparql:"+i);const a=await Gn(i,On);xe.Rm(" location query bindings:",a),Pn(e,n,a,n.doc())}async function Kn(e,t,n){const i=`select distinct ?city, ?state, ?country, ?homepage, ?logo, ?lat, ?long, WHERE {\n OPTIONAL { <${n}> <http://dbpedia.org/ontology/city> ?city }\n OPTIONAL { ${n} <http://dbpedia.org/ontology/state> ?state }\n OPTIONAL { ${n} <http://dbpedia.org/ontology/country> ?country }\n OPTIONAL { ${n} foaf:homepage ?homepage }\n OPTIONAL { ${n} foaf:lat ?lat; foaf:long ?long }\n OPTIONAL { ${n} <http://dbpedia.org/ontology/country> ?country }\n }`;Pn(e,n,await Gn(i,$n),n.doc()),xe.Rm("Finished getDbpediaDetails.")}function Xn(e,t){e.style.display=t?"":"none"}async function ei(e,t,n,i){function a(e,n){xe.Rm("Auto complete: finish! "+e),"Literal"===e.termType&&t.queryParams.objectURIBase&&(e=v.store.sym(t.queryParams.objectURIBase.value+e.value)),r(),i(e,n)}async function o(e,t){if(n.acceptButton)return n.acceptButton.disbaled=!1,Xn(n.acceptButton,!0),C.value=t.value,b=t,x=e,xe.Rm("Auto complete: name: "+t),xe.Rm("Auto complete: waiting for accept "+e),void r();Xn(n.cancelButton,!0),a(e,t)}async function s(e){b&&C.value===b.value&&a(x,b)}function r(){for(;y.children.length>1;)y.removeChild(y.lastChild)}function c(){t.currentObject?(C.value=t.currentName?t.currentName.value:"??? wot no name for "+t.currentObject,b=t.currentName,u=t.currentName?t.currentName.value:void 0,x=t.currentObject):(C.value="",u=void 0,x=void 0),n.deleteButton&&Xn(n.deleteButton,!!t.currentObject),n.acceptButton&&Xn(n.acceptButton,!1),n.editButton&&Xn(n.editButton,!0),n.cancelButton&&Xn(n.cancelButton,!1),m=!1,r()}const l=t.targetClass;if(!l)throw new Error("renderAutoComplete: missing targetClass");let p;n.acceptButton&&n.acceptButton.addEventListener("click",s,!1),n.cancelButton&&n.cancelButton.addEventListener("click",async function(e){xe.Rm("Auto complete: Canceled by user! "),t.permanent?c():g.parentNode&&g.parentNode.removeChild(g)},!1);let u,d=!1,m=!1,f=!1,h=20;const g=e.createElement("div");let b,x;const y=g.appendChild(e.createElement("table"));y.setAttribute("data-testid","autocomplete-table"),y.setAttribute("style","max-width: 30em; margin: 0.5em;");const w=y.appendChild(e.createElement("tr"));tt.setStyle(w,"autocompleteRowStyle");const C=w.appendChild(e.createElement("td")).appendChild(e.createElement("input"));C.setAttribute("type","text"),c();const E=t.size||Je||20;C.setAttribute("size",E),C.setAttribute("data-testid","autocomplete-input");const k=tt.textInputStyle||"border: 0.1em solid #444; border-radius: 0.5em; width: 100%; font-size: 100%; padding: 0.1em 0.6em";return C.setAttribute("style",k),C.addEventListener("keyup",function(e){13===e.keyCode&&s()},!1),C.addEventListener("input",async function(i){Xn(n.cancelButton,!0),async function(){function n(t){const n=e.createElement("tr");tt.setStyle(n,"autocompleteRowStyle"),n.setAttribute("style","padding: 0.3em;"),n.style.color=f?"#080":"#088",n.textContent=t.name.value;const i=Fn(t.subject),a=Fn(t.name);return n.addEventListener("click",async e=>{xe.Rm(" click row textContent: "+n.textContent),xe.Rm(" click name: "+a.value),i&&a&&o(i,a)}),n}function i(e,t){return t.name.value>e.name.value?1:t.name.name<e.name.value?-1:0}if(m)return void xe.Rm(`Ignoring "${C.value}" because of lock `);xe.Rm(`Setting lock at "${C.value}"`),m=!0;const a=await _n(),s=C.value.trim().toLowerCase();if(s.length<4)r(),h=20;else{f&&u&&s.startsWith(u)||(xe.Rm(` Querying database at "${s}" cf last "${u}".`),p=await async function(n,i){let a;try{a=await Vn(n,l,0,t.queryParams)}catch(t){return function(t){const n=y.appendChild(e.createElement("tr"));xe.Rm(t);const i=new Error(t);n.appendChild(ot(e,i,"pink")),tt.setStyle(n,"autocompleteRowStyle"),n.style.padding="1em"}("Error querying db of organizations: "+t),void(m=!1)}d=a.length<Sn,u=d?n:void 0;r();const o=Tn(a,i);return o}(s,a));const c=function(e,t){return t.filter(t=>function(e,t){const n=e.split(" ");for(let e=0;e<n.length;e++){const i=n[e];if(t.toLowerCase().indexOf(i)<0)return!1}return!0}(e,t.name.value))}(s,p);d&&c.length<=40&&(h=c.length),f=d&&c.length<=h,xe.Rm(` Filter:"${s}" lastBindings: ${p.length}, slimmed to ${c.length}; rows: ${h}, Enough? ${d}, All displayed? ${f}`);const g=c.slice(0,h);g.sort(i),r();for(const e of g)y.appendChild(n(e));1===c.length&&o(Fn(c[0].subject),Fn(c[0].name))}m=!1}()}),g}const ti=st.Pt.iconBase+"noun_34653_green.svg",ni=st.Pt.iconBase+"noun_Search_875351.svg",ii=st.Pt.iconBase+"noun_253504.svg";async function ai(e,t,n,i,a,o){async function s(e,t){return i.permanent?(Xn(m,!0),Xn(c,!1),Xn(l,!1)):x&&(y.removeChild(x),x=void 0),a(e,t)}async function r(){x=e.createElement("div"),x.setAttribute("style","display: flex; flex-flow: wrap;"),x.appendChild(await ei(e,i,g,s)),x.appendChild(c),x.appendChild(l),x.appendChild(m),x.appendChild(p),y.appendChild(x)}const c=Pt(e);c.setAttribute("data-testid","accept-button");const l=Ft(e);l.setAttribute("data-testid","cancel-button");const p=e.createElement("div"),u=i.targetClass?F(i.targetClass):"item",d=Mt(e,p,u,o);d.setAttribute("data-testid","delete-button");const m=Ut(e,ii,"Edit",e=>{f=!f,h()});m.setAttribute("data-testid","edit-button");let f=!0;function h(){f?(Xn(m,!1),Xn(c,!1),Xn(l,!1)):(Xn(m,!0),Xn(c,!1),Xn(l,!1))}const g={acceptButton:c,cancelButton:l,editButton:m,deleteButton:d};let x;const y=e.createElement("div");if(y.style.display="flex",y.style.flexDirection="row",(i.permanent||i.currentObject)&&await r(),n.editable){if(y.style.width="100%",n.manualURIEntry){nt(y.appendChild(Ut(e,ti,n.idNoun,async function(n){const i=await zt(e,v.store,y,b.vcard("url"),void 0,"Solid ID");if(i)return a(t,i)})),async function(e){for(const n of e)await a(t,n)},void 0)}!n.dbLookup||i.currentObject||i.permanent||y.appendChild(Ut(e,ni,n.idNoun,async function(e){x?(y.removeChild(x),x=void 0):await r()}))}return h(),y}
4
+ /**
5
+ * @version IconicMultiSelect v0.7.0
6
+ * @licence MIT
7
+ */
8
+ const oi={multiselect__container:"\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n background-color: #fff;\n border-radius: 2px;\n -webkit-box-shadow: 0 1px 3px 0 #d1d1d2, 0 0 0 1px #d1d1d2;\n box-shadow: 0 1px 3px 0 #d1d1d2, 0 0 0 1px #d1d1d2;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n min-height: 36px;\n padding: 4px 8px 0 8px;\n position: relative;\n width: 354px;\n margin-bottom: 5px;\n font-size: 100%\n ",multiselect__wrapper:"\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n height: 100%;\n width: 100%;\n ",multiselect__clear_btn:"\n cursor: pointer;\n align-items: center;\n margin-bottom: 4px;\n margin-left: 4px;\n ",multiselect__options:"\n background-color: #f6f6f6;\n border-radius: 2px;\n left: 0;\n max-height: 0;\n overflow: hidden;\n position: absolute;\n top: calc(100% + 3px);\n z-index: 9999;\n width: 100%;\n opacity: 0;\n transition: max-height 0.1s ease;\n ",multiselect__options_visible:"\n background-color: #f6f6f6;\n border-radius: 2px;\n left: 0;\n max-height: 0;\n overflow: hidden;\n position: absolute;\n top: calc(100% + 3px);\n z-index: 9999;\n width: 100%;\n opacity: 0;\n transition: max-height 0.1s ease;\n max-height: 200px;\n -webkit-box-shadow: 0 1px 3px 0 #d1d1d2, 0 0 0 1px #d1d1d2;\n box-shadow: 0 1px 3px 0 #d1d1d2, 0 0 0 1px #d1d1d2;\n opacity: 1;\n transition: max-height 0.2s ease;\n ",multiselect__options_ul:"\n list-style: none;\n margin: 0;\n padding: 2px 0;\n max-height: 200px;\n overflow: auto;\n ",multiselect__options_ul_li:"\n cursor: pointer;\n padding: 4px 8px;\n ",multiselect__options_ul_li_hover:"\n background-color: #dedede;\n ",multiselect__options_ul_p_multiselect__options_no_results:"\n margin: 0;\n padding: 8px;\n text-align: center;\n ",multiselect__options_ul_p_multiselect__options_no_data:"\n margin: 0;\n padding: 8px;\n text-align: center;\n ",multiselect__options_ul_li_multiselect__options_selected:"\n background-color: #656565;\n color: #fff;\n ",multiselect__options_ul_li_multiselect__options_selected_hover:"\n background-color: #656565;\n ",multiselect__options_ul_li_arrow_selected:"\n border: 2px solid rgba(101, 101, 101, 0.5);\n ",multiselect__selected:"\n background-color: #656565;\n border-radius: 2px;\n color: #fff;\n margin-bottom: 4px;\n margin-right: 4px;\n padding: 4px 8px;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n ",multiselect__selected_multiselect__remove_btn:"\n cursor: pointer;\n display: flex;\n margin-left: 6px;\n ",multiselect__input:"\n border: none;\n -ms-flex-preferred-size: 40%;\n flex-basis: 40%;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n height: 5px; \n margin-bottom: 4px;\n min-width: 40%;\n outline: none; \n ",setStyle:function(e,t){e.style=oi[t]}};
9
+ /**
10
+ * @version IconicMultiSelect v0.7.0
11
+ * @licence MIT
12
+ */
13
+ class si{_data;_domElements;_event=()=>{};_itemTemplate;_multiselect;_noData;_noResults;_options=[];_placeholder;_select;_selectContainer;_selectedOptions=[];_tagTemplate;_textField;_valueField;_cross='\n <svg\n width="24"\n height="24"\n viewBox="0 0 24 24"\n fill="none"\n xmlns="http://www.w3.org/2000/svg"\n >\n <path\n d="M6.2253 4.81108C5.83477 4.42056 5.20161 4.42056 4.81108 4.81108C4.42056 5.20161 4.42056 5.83477 4.81108 6.2253L10.5858 12L4.81114 17.7747C4.42062 18.1652 4.42062 18.7984 4.81114 19.1889C5.20167 19.5794 5.83483 19.5794 6.22535 19.1889L12 13.4142L17.7747 19.1889C18.1652 19.5794 18.7984 19.5794 19.1889 19.1889C19.5794 18.7984 19.5794 18.1652 19.1889 17.7747L13.4142 12L19.189 6.2253C19.5795 5.83477 19.5795 5.20161 19.189 4.81108C18.7985 4.42056 18.1653 4.42056 17.7748 4.81108L12 10.5858L6.2253 4.81108Z"\n fill="currentColor"\n />\n </svg>\n ';constructor({data:e,itemTemplate:t,noData:n,noResults:i,placeholder:a,select:o,container:s,tagTemplate:r,textField:c,valueField:l}){this._data=e??[],this._itemTemplate=t??null,this._noData=n??"No data found.",this._noResults=i??"No results found.",this._placeholder=a??"Select...",this._select=o,this._selectContainer=s,this._tagTemplate=r??null,this._textField=c??null,this._valueField=l??null}init(){if(!this._select||"SELECT"!==this._select.nodeName)throw new Error(`The selector '${this._select}' did not select any valid select tag.`);if(this._itemTemplate&&0===this._data.length)throw new Error("itemTemplate must be initialized with data from the component settings");if(this._tagTemplate&&0===this._data.length)throw new Error("tagTemplate must be initialized with data from the component settings");this._options=this._data.length>0?this._getDataFromSettings():this._getDataFromSelectTag(),this._renderMultiselect(),this._renderOptionsList(),this._domElements={clear:this._multiselect.querySelector(".multiselect__clear-btn"),input:this._multiselect.querySelector(".multiselect__input"),optionsContainer:this._multiselect.querySelector(".multiselect__options"),optionsContainerList:this._multiselect.querySelector(".multiselect__options > ul"),options:{list:this._multiselect.querySelectorAll(".multiselect__options > ul > li"),find:function(e){for(let t=0;t<this.list.length;t++){const n=this.list[t];if(e(n))return n}},some:function(e){for(let t=0;t<this.list.length;t++){if(e(this.list[t],t))return!0}return!1}}},this._enableEventListenners(),this._initSelectedList()}subscribe(e){if("function"!=typeof e)throw new Error("parameter in the subscribe method is not a function");this._event=e}_addOptionToList(e,t){const n=`<span class="multiselect__selected" style="${oi.multiselect__selected}" data-value="${e.value}">${this._tagTemplate?this._processTemplate(this._tagTemplate,t):e.text}<span class="multiselect__remove-btn" style="${oi.multiselect__remove_btn}">${this._cross}</span></span>`;this._domElements.input.insertAdjacentHTML("beforebegin",n);const{lastElementChild:i}=this._multiselect.querySelector(`span[data-value="${e.value}"]`);i.addEventListener("click",()=>{const t=this._domElements.options.find(t=>t.dataset.value===e.value);this._handleOption(t)})}_clearSelection(){for(let e=0;e<this._selectedOptions.length;e++){const t=this._selectedOptions[e],n=this._domElements.options.find(e=>e.dataset.value===t.value);n.classList.remove("multiselect__options--selected"),n.setAttribute("style",oi.multiselect__options),this._removeOptionFromList(n.dataset.value)}this._selectedOptions=[],this._handleClearSelectionBtn(),this._handlePlaceholder(),this._dispatchEvent({action:"CLEAR_ALL_OPTIONS",selection:this._selectedOptions})}_closeList(){this._domElements.input.value="",this._domElements.optionsContainer.classList.remove("visible"),this._domElements.optionsContainer.setAttribute("style",oi.multiselect__options),this._filterOptions(""),this._removeAllArrowSelected()}_dispatchEvent(e){this._event(e)}_enableEventListenners(){document.addEventListener("mouseup",({target:e})=>{this._multiselect.contains(e)||(this._filterOptions(""),this._closeList(),this._handlePlaceholder())}),this._domElements.clear.addEventListener("click",()=>{this._clearSelection()});for(let e=0;e<this._domElements.options.list.length;e++){this._domElements.options.list[e].addEventListener("click",({target:e})=>{this._handleOption(e),this._closeList()})}this._domElements.input.addEventListener("focus",()=>{this._domElements.optionsContainer.classList.add("visible"),this._domElements.optionsContainer.setAttribute("style",oi.multiselect__options_visible)}),this._domElements.input.addEventListener("input",({target:{value:e}})=>{this._domElements.options.list.length>0&&this._filterOptions(e)}),this._domElements.input.addEventListener("keydown",e=>{this._handleArrows(e),this._handleBackspace(e),this._handleEnter(e)})}_filterOptions(e){const t=this._domElements.optionsContainer.classList.contains("visible"),n=e.toLowerCase();if(!t&&e.length>0&&(this._domElements.optionsContainer.classList.add("visible"),this._domElements.optionsContainer.setAttribute("style",oi.multiselect__options_visible)),this._domElements.options.list.length>0){for(let e=0;e<this._domElements.options.list.length;e++){const t=this._domElements.options.list[e];(this._itemTemplate?this._data[e][this._textField]:t.textContent).toLowerCase().substring(0,n.length)===n?this._domElements.optionsContainerList.appendChild(t):t.parentNode&&t.parentNode.removeChild(t)}const e=this._domElements.options.some((e,t)=>(this._itemTemplate?this._data[t][this._textField]:e.textContent).toLowerCase().substring(0,n.length)===n);this._showNoResults(!e)}}_generateId(e){let t="";const n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";for(let i=0;i<e;i++)t+=n.charAt(Math.floor(62*Math.random()));return t}_getDataFromSelectTag(){const e=[],{options:t}=this._select;for(let n=0;n<t.length;n++){const i=t[n];e.push({text:i.text,value:i.value,selected:i.hasAttribute("selected")})}return e}_getDataFromSettings(){if(this._data.length>0&&this._valueField&&this._textField){const e="string"==typeof this._valueField,t="string"==typeof this._textField,n=[];if(!e||!t)throw new Error("textField and valueField must be of type string");for(let e=0;e<this._data.length;e++){const t=this._data[e];n.push({value:t[this._valueField],text:t[this._textField],selected:"boolean"==typeof t.selected&&t.selected})}return n}return null}_handleArrows(e){if(40===e.keyCode||38===e.keyCode){e.preventDefault();const t=this._domElements.optionsContainer.classList.contains("visible"),n=this._multiselect.querySelector(".multiselect__options > ul");if(t){let t=this._multiselect.querySelector(".multiselect__options ul li.arrow-selected");const i={ArrowUp:"previous",Up:"previous",ArrowDown:"next",Down:"next"};if(!t)return n.firstElementChild.classList.add("arrow-selected"),n.firstElementChild.setAttribute("style",oi.multiselect__options_ul_li_arrow_selected),void n.firstElementChild.scrollIntoView(!1);if(t.classList.remove("arrow-selected"),t.setAttribute("style",oi.multiselect__options_ul_li),t=t[i[e.key]+"ElementSibling"],!t)return t=n.children["next"===i[e.key]?0:n.children.length-1],t.classList.add("arrow-selected"),t.setAttribute("style",oi.multiselect__options_ul_li_arrow_selected),void this._scrollIntoView(n,t);t.classList.add("arrow-selected"),t.setAttribute("style",oi.multiselect__options_ul_li_arrow_selected),this._scrollIntoView(n,t)}else this._domElements.optionsContainer.classList.add("visible"),this._domElements.optionsContainer.setAttribute("style",oi.multiselect__options_visible),n.firstElementChild.classList.add("arrow-selected"),n.firstElementChild.setAttribute("style",oi.multiselect__options_ul_li_arrow_selected),n.firstElementChild.scrollIntoView(!1)}}_handleBackspace(e){if(8===e.keyCode&&""===e.target.value){const e=this._selectedOptions.length>0?this._selectedOptions[this._selectedOptions.length-1]:null;if(e){const t=this._multiselect.querySelector(`li[data-value="${e.value}"]`);this._handleOption(t),0===this._selectedOptions.length&&(this._domElements.optionsContainer.classList.remove("visible"),this._domElements.optionsContainer.setAttribute("style",oi.multiselect__options))}}}_handleClearSelectionBtn(){this._selectedOptions.length>0?this._domElements.clear.style.display="flex":this._domElements.clear.style.display="none"}_handleEnter(e){if(13===e.keyCode){const e=this._multiselect.querySelector(".multiselect__options ul li.arrow-selected");e&&(this._handleOption(e),this._closeList())}}_handleOption(e,t=!0){for(let n=0;n<this._selectedOptions.length;n++){if(this._selectedOptions[n].value===e.dataset.value)return e.classList.remove("multiselect__options--selected"),e.setAttribute("style",oi.multiselect__options),this._selectedOptions.splice(n,1),this._removeOptionFromList(e.dataset.value),this._handleClearSelectionBtn(),this._handlePlaceholder(),t&&this._dispatchEvent({action:"REMOVE_OPTION",value:e.dataset.value,selection:this._selectedOptions})}for(let n=0;n<this._options.length;n++){const i=this._options[n];if(i.value===e.dataset.value)return e.classList.add("multiselect__options--selected"),e.setAttribute("style",oi.multiselect__options_selected),this._selectedOptions=[...this._selectedOptions,i],this._addOptionToList(i,n),this._handleClearSelectionBtn(),this._handlePlaceholder(),t&&this._dispatchEvent({action:"ADD_OPTION",value:e.dataset.value,selection:this._selectedOptions})}}_handlePlaceholder(){this._domElements.input.placeholder=this._placeholder}_initSelectedList(){let e=!1;for(let t=0;t<this._options.length;t++){const n=this._options[t];if(n.selected){e=!0;const i=this._domElements.options.find(e=>e.dataset.value===n.value);i.classList.add("multiselect__options--selected"),i.setAttribute("style",oi.multiselect__options_selected),this._selectedOptions=[...this._selectedOptions,n],this._addOptionToList(n,t)}}e&&this._handleClearSelectionBtn(),this._handlePlaceholder()}_processTemplate(e,t){let n=e;const i=e.match(/\$\{(\w+)\}/g).map(e=>e.replace(/\$\{|\}/g,""));for(let e=0;e<i.length;e++){const a=i[e];n=n.replace(`\${${a}}`,this._data[t][a]??"")}return n}_removeAllArrowSelected(){const e="arrow-selected",t=this._domElements.options.find(t=>t.classList.contains(e));t&&t.classList.remove(e)&&t.setAttribute("style",oi.multiselect__options_ul_li)}_removeOptionFromList(e){const t=this._multiselect.querySelector(`span[data-value="${e}"]`);t&&t.parentNode&&t.parentNode.removeChild(t)}_renderOptionsList(){const e=`\n <div class="multiselect__options" style="${oi.multiselect__options}">\n <ul style="${oi.multiselect__options_ul}">\n ${this._options.length>0&&!this._itemTemplate?this._options.map(e=>`\n <li data-value="${e.value}" style="${oi.multiselect__options_ul_li}">${e.text}</li>\n `).join(""):""}\n\n ${this._options.length>0&&this._itemTemplate?this._options.map((e,t)=>`\n <li data-value="${e.value}" style="${oi.multiselect__options_ul_li}">${this._processTemplate(this._itemTemplate,t)}</li>\n `).join(""):""}\n ${this._showNoData(0===this._options.length)}\n </ul>\n </div>\n `;this._multiselect.insertAdjacentHTML("beforeend",e)}_renderMultiselect(){this._select.style.display="none";const e="iconic-"+this._generateId(20);this._multiselect=document.createElement("div"),this._multiselect.setAttribute("id",e),this._multiselect.setAttribute("class","multiselect__container"),this._multiselect.setAttribute("style",oi.multiselect__container);const t=`\n <div class="multiselect__wrapper" style="${oi.multiselect__wrapper}">\n <input class="multiselect__input" style="${oi.multiselect__input}" placeholder="${this._placeholder}" />\n </div>\n <span style="display: none;" class="multiselect__clear-btn" style="${oi.multiselect__clear_btn}">${this._cross}</span>\n `;this._multiselect.innerHTML=t,this._selectContainer.appendChild(this._multiselect)}_scrollIntoView(e,t){const n=e.getBoundingClientRect(),i=t.getBoundingClientRect();n.top<i.bottom-t.offsetHeight||(e.scrollTop=t.clientHeight+(t.offsetTop-t.offsetHeight)),n.bottom>i.top+t.offsetHeight||(e.scrollTop=t.clientHeight+(t.offsetTop-t.offsetHeight)-(e.offsetHeight-(t.offsetHeight+(t.offsetHeight-t.clientHeight))))}_showNoData(e){return e?`<p class="multiselect__options--no-data" style="${oi.multiselect__options_ul_p_multiselect__options_no_data}">${this._noData}</p>`:""}_showNoResults(e){const t=this._multiselect.querySelector(".multiselect__options--no-results");if(e){const e=`<p class="multiselect__options--no-results" style="${oi.multiselect__options_ul_p_multiselect__options_no_results}">${this._noResults}</p>`;!t&&this._domElements.optionsContainerList.insertAdjacentHTML("beforeend",e)}else t&&t.parentNode&&t.parentNode.removeChild(t)}}const ri=v.store;function ci(e,t,n,i,a,o,s){const r=o.children;for(let c=0;c<s.length;c++){const l=s[c];if(fn(l)===b.ui("Options").uri){const s=hn(0,l)(e,null,t,n,l,i,a);xe.Rm("Refreshing Options field by replacing it."),o.insertBefore(s,r[c]),o.removeChild(r[c+1])}}}function li(e,t,n,i,a,o,s,r){const c=b.ui,l=v.store,p=l.any(a,c("property"));if(!p){const n=ot(e,"No property to boolean field: "+a);return t&&t.appendChild(n),n}let u=l.any(a,c("label"));u||(u=F(p,!0)),o=yn(i,p,o);let d=l.any(i,p);void 0===d&&(d=!1);const m=g.st(i,p,!0,o),f=Ai(e,l,u,g.st(i,p,!1,o),m,a,o,r);return t&&t.appendChild(f),f}function pi(e,t,n,i,a,o,s){hn(0,a)(e,t,n,i,a,o,s)}function ui(e,t,n,i,a){const o=e.createElement("button");return o.setAttribute("type","button"),o.innerHTML="Edit "+F(b.ui("Form")),o.addEventListener("click",function(s){di(e,t,{},n,b.ui("FormForm"),i,a).setAttribute("style",b.ui("FormForm").sameTerm(n)?"background-color: #fee;":"background-color: #ffffe7;"),o.parentNode.removeChild(o)},!0),o}function di(e,t,n,i,a,o,s){return hn(0,a)(e,t,n,i,a,o,s)}function mi(e,t){const n=e.each(void 0,b.rdf("range"),t);[b.rdfs("comment"),b.dc("title"),b.foaf("name"),b.foaf("homepage")].forEach(function(e){n.push(e)});let i=e.each(void 0,b.rdf("type"),t);i.length>60&&(i=i.slice(0,60));const a={};for(let t=0;t<(i.length>60?60:i.length);t++)e.statementsMatching(i[t],void 0,void 0).forEach(function(e){a[e.predicate.uri]=!0});n.forEach(function(e){a[e.uri]=!0});const o=[];for(const t in a)o.push(e.sym(t));return o}function fi(e,t,n){const i=[e.sym(t)];for(;i.length>0;){const t=i.shift(),a=e.each(t,n);if(T("Lists for "+t+", "+n+": "+a.length),0!==a.length)return a;const o=e.each(t,b.rdfs("subClassOf"));for(let e=0;e<o.length;e++)i.push(o[e]),T("findClosest: add super: "+o[e])}return[]}function hi(e){const t=v.store;T("formsFor: subject="+e);const n=t.findTypeURIs(e);let i;for(i in n)T(" type: "+i);const a=t.bottomTypeURIs(n);let o=[];for(const e in a)T("candidatesFor: trying bottom type ="+e),o=o.concat(fi(t,e,b.ui("creationForm"))),o=o.concat(fi(t,e,b.ui("annotationForm")));return o}function gi(e){const t=e.map(function(e){return[ri.any(e,b.ui("sequence"))||9999,e]});return t.sort(function(e,t){return e[0]-t[0]}),t.map(function(e){return e[1]})}function bi(e){const t=e.map(function(e){return[F(e).toLowerCase(),e]});return t.sort(),t.map(function(e){return e[1]})}function vi(e,t,n,i,a,o,s,r){const c=e.createElement("button");return c.setAttribute("type","button"),c.innerHTML="New "+F(a),c.addEventListener("click",function(l){c.parentNode.appendChild(xi(e,t,n,i,a,o,s,r))},!1),c}function xi(e,t,n,i,a,o,s,r){const c=e.createElement("form");if(!o){const n=fi(t,a.uri,b.ui("creationForm"));if(0===n.length){c.appendChild(e.createElement("p")).textContent="I am sorry, you need to provide information about a "+F(a)+" but I don't know enough information about those to ask you.";const t=c.appendChild(e.createElement("button"));return t.setAttribute("type","button"),t.setAttribute("style","float: right;"),t.innerHTML="Goto "+F(a),t.addEventListener("click",function(t){e.outlineManager.GotoSubject(a,!0,void 0,!0,void 0)},!1),c}T("lists[0] is "+n[0]),o=n[0]}T("form is "+o),c.setAttribute("style",`border: 0.05em solid ${Ge}; color: ${Ge}`),c.innerHTML="<h3>New "+F(a)+"</h3>";const l=hn(0,o),p=_i(s);let u=!1;function d(e,t,n){return r(t,n)}S("paneUtils Object is "+p);const m=l(e,c,{},p,o,s,function(o,l){if(!o)return r(o,l);const m=[];n&&!t.holds(n,i,p,s)&&m.push(g.st(n,i,p,s)),n&&!t.holds(p,b.rdf("type"),a,s)&&m.push(g.st(p,b.rdf("type"),a,s)),m.length?t.updater.update([],m,d):r(!0,l),u||(u=c.appendChild(en(e,p)))});return tn(e,m).setAttribute("style","float: right;"),c.AJAR_subject=p,c}function yi(e,t,n,i,a,o){const s=e.createElement("div"),r=t.anyJS(n,i,null,a)||"",c=e.createElement("textarea");function l(r){p.disabled=!0,p.setAttribute("style","visibility: hidden; float: right;"),c.disabled=!0,c.style.color=Ye;const l=t.statementsMatching(n,i,null,a),u=g.st(n,i,c.value,a);t.updater.update(l,u,function(t,n,i){n?(c.style.color=Ze,c.disabled=!1):s.appendChild(ot(e,"Error (while saving change to "+a.uri+"): "+i)),o&&o(n,i)})}s.appendChild(c),c.rows=r?r.split("\n").length+2:2,c.cols=80,c.setAttribute("style",tt.multilineTextInputStyle),null!==r?c.value=r:c.select(),s.refresh=function(){const e=t.any(n,i,null,a);e&&e.value!==c.value&&(c.value=e.value)};let p;return t.updater.editable(a.uri)?(p=Pt(e,l),p.disabled=!0,p.style.visibility="hidden",p.style.float="right",s.appendChild(p),c.addEventListener("keyup",function(e){c.style.color="green",p&&(p.disabled=!1,p.style.visibility="")},!0),c.addEventListener("change",l,!0)):(c.disabled=!0,c.style.backgroundColor=Qe),s}function wi(e,t,n,i,a,o,s,r){T("Select list length now "+a.length);let c=0;const l={},p=t.updater.editable(s.uri);for(let e=0;e<a.length;e++){const t=a[e];t.uri||xe.R8(`makeSelectForClassifierOptions: option does not have an uri: ${t}, with predicate: ${i}`),t.uri&&!(t.uri in l)&&(l[t.uri]=!0,c++)}if(0===c&&!o.mint)return ot(e,"Can't do selector with no options, subject= "+n+" property = "+i+".");let u;T("makeSelectForClassifierOptions: dataDoc="+s);const d=function(){return u={},i.sameTerm(b.rdf("type"))?u=t.findTypeURIs(n):t.each(n,i,null,s).forEach(function(e){u[e.uri]=!0}),u};u=d();const m=function(a){f.disabled=!0;const c=[];let l=[];const p=function(e){t.holds(n,i,e,s)&&c.push(g.st(n,i,e,s))};let m;for(let a=0;a<f.options.length;a++){const c=f.options[a];if(c.selected&&c.AJAR_mint){if(o.mintClass){const a=xi(e,t,n,i,o.mintClass,null,s,function(e,t){e||r(e,t,{change:"new"})});f.parentNode.appendChild(a),m=a.AJAR_subject}else m=_i(s);l.push(g.st(n,i,m,s)),o.mintStatementsFun&&(l=l.concat(o.mintStatementsFun(m)))}c.AJAR_uri&&(c.selected&&!(c.AJAR_uri in u)&&l.push(g.st(n,i,t.sym(c.AJAR_uri),s)),!c.selected&&c.AJAR_uri in u&&p(t.sym(c.AJAR_uri)),c.selected&&(f.currentURI=c.AJAR_uri))}let h=f.subSelect;for(;h&&h.currentURI;)p(t.sym(h.currentURI)),h=h.subSelect;for(h=f.superSelect;h&&h.currentURI;)p(t.sym(h.currentURI)),h=h.superSelect;function b(e,t){r(e,{widget:"select",event:"new"})}S("makeSelectForClassifierOptions: data doc = "+s),t.updater.update(c,l,function(t,n,i){if(u=d(),!n)return f.parentNode.appendChild(ot(e,"Error updating data in select: "+i));if(f.disabled=!1,m){hn(0,o.subForm)(e,f.parentNode,{},m,o.subForm,s,b)}r&&r(n,{widget:"select",event:"change"})})},f=e.createElement("select");f.setAttribute("style",tt.formSelectStyle),o.multiple&&f.setAttribute("multiple","true"),f.currentURI=null,f.refresh=function(){u=d();for(let e=0;e<f.children.length;e++){const t=f.children[e];t.AJAR_uri&&(t.selected=t.AJAR_uri in u)}f.disabled=!1};for(const n in l){const i=t.sym(n),a=e.createElement("option");o.disambiguate?a.appendChild(e.createTextNode(ue(i,!0))):a.appendChild(e.createTextNode(F(i,!0)));const s=t.any(i,t.sym("http://www.w3.org/ns/ui#backgroundColor"));s&&a.setAttribute("style","background-color: "+s.value+"; "),a.AJAR_uri=n,n in u&&(a.setAttribute("selected","true"),f.currentURI=n),f.appendChild(a)}if(p&&o.mint){const t=e.createElement("option");t.appendChild(e.createTextNode(o.mint)),t.AJAR_mint=!0,f.insertBefore(t,f.firstChild)}if(null==f.currentURI&&!o.multiple){const t=e.createElement("option");t.appendChild(e.createTextNode(o.nullLabel)),f.insertBefore(t,f.firstChild),t.selected=!0}return p&&f.addEventListener("change",m,!1),f}function Ci(e,t,n,i,a,o,s,r){T("Select list length now "+a.length);let c=0;const l={},p=t.updater.editable(s.uri);for(let e=0;e<a.length;e++){const t=a[e];t.uri||xe.R8(`makeSelectForOptions: option does not have an uri: ${t}, with predicate: ${i}`),t.uri&&!(t.uri in l)&&(l[t.uri]=!0,c++)}if(0===c)return ot(e,"Can't do selector with no options, subject= "+n+" property = "+i+".");let u;T("makeSelectForOptions: dataDoc="+s);const d=function(){return u={},i.sameTerm(b.rdf("type"))?u=t.findTypeURIs(n):t.each(n,i,null,s).forEach(function(e){e.uri&&(u[e.uri]=!0)}),u};u=d();const m=function(a){f.disabled=!0;const o=[],c=[],l=function(e){t.holds(n,i,e,s)&&o.push(g.st(n,i,e,s))};for(let e=0;e<f.options.length;e++){const a=f.options[e];a.AJAR_uri&&(a.selected&&!(a.AJAR_uri in u)&&c.push(g.st(n,i,t.sym(a.AJAR_uri),s)),!a.selected&&a.AJAR_uri in u&&l(t.sym(a.AJAR_uri)),a.selected&&(f.currentURI=a.AJAR_uri))}let p=f.subSelect;for(;p&&p.currentURI;)l(t.sym(p.currentURI)),p=p.subSelect;for(p=f.superSelect;p&&p.currentURI;)l(t.sym(p.currentURI)),p=p.superSelect;S("selectForOptions: data doc = "+s),t.updater.update(o,c,function(t,n,i){if(u=d(),!n)return f.parentNode.appendChild(ot(e,"Error updating data in select: "+i));f.disabled=!1,r&&r(n,{widget:"select",event:"change"})})},f=e.createElement("select");f.setAttribute("style",tt.formSelectStyle),f.currentURI=null,f.refresh=function(){u=d();for(let e=0;e<f.children.length;e++){const t=f.children[e];t.AJAR_uri&&(t.selected=t.AJAR_uri in u)}f.disabled=!1};for(const n in l){const i=t.sym(n),a=e.createElement("option");o.disambiguate?a.appendChild(e.createTextNode(ue(i,!0))):a.appendChild(e.createTextNode(F(i,!0)));const s=t.any(i,t.sym("http://www.w3.org/ns/ui#backgroundColor"));s&&a.setAttribute("style","background-color: "+s.value+"; "),a.AJAR_uri=n,n in u&&(a.setAttribute("selected","true"),f.currentURI=n),f.appendChild(a)}if(!f.currentURI){const t=e.createElement("option");t.appendChild(e.createTextNode(o.nullLabel)),f.insertBefore(t,f.firstChild),t.selected=!0}return p&&f.addEventListener("change",m,!1),f}function Ei(e,t,n,i,a,o){const s=t.any(i,b.owl("disjointUnionOf"));let r,c=!1;return s?r=s.elements:(r=t.each(void 0,b.rdfs("subClassOf"),i),c=!0),T("Select list length "+r.length),0===r.length?ot(e,"Can't do "+(c?"multiple ":"")+"selector with no subclasses of category: "+i):1===r.length?ot(e,"Can't do "+(c?"multiple ":"")+"selector with only 1 subclass of category: "+i+":"+r[1]):wi(e,t,n,b.rdf("type"),r,{multiple:c,nullLabel:"* Select type *"},a,o)}function ki(e,t,n,i,a,o){function s(){c&&(r.removeChild(c),c=null),l.currentURI&&t.any(t.sym(l.currentURI),b.owl("disjointUnionOf"))&&(c=ki(e,t,n,t.sym(l.currentURI),a,o),l.subSelect=c.firstChild,l.subSelect.superSelect=l,r.appendChild(c))}const r=e.createElement("span");let c=null;const l=Ei(e,t,n,i,a,function(e,t){e&&s(),o(e,t)});return r.appendChild(l),s(),r}function Ai(e,t,n,i,a,o,s,r){const c=e.createElement("div"),l=vn(e,t,c,o,n),p=t.updater.editable(s.uri),u=e.createElement("button"),d=u;function m(e){if(!e)return[];if(e.object)return e.why||(e.why=s),[e];if(e instanceof Array)return e;throw new Error("buildCheckboxForm: bad param "+e)}function f(e){return 0===e.filter(e=>!t.holds(e.subject,e.predicate,e.object,e.why)).length}if(u.style=tt.checkboxInputStyle,l.appendChild(u),a=m(a),i=m(i),function(){let n=f(a),s=n;if(i.length){const l=f(i);if(n&&l)return c.appendChild(ot(e,"Inconsistent data in dataDoc!\n"+a+" and\n"+i)),c;if(!n&&!l){n=null;const e=t.any(o,b.ui("default"));s=e?"1"===e.value:!!r&&null}}u.state=n,u.textContent={true:"✓",false:r?"✕":" ",null:"-"}[s]}(),!p)return c;return u.addEventListener("click",function(n){d.style.color="#bbb";const o=!0===u.state?a:!1===u.state?i:[];u.newState=null===u.state||!0!==u.state&&(!r||null);const s=!0===u.newState?a:!1===u.newState?i:[];xe.Rm(` Deleting ${o}`),xe.Rm(` Inserting ${s}`),t.updater.update(o,s,function(n,i,a){if(i)d.style.color="#000",u.state=u.newState,u.textContent={true:"✓",false:"✕",null:"-"}[u.state];else{if(o.why){t.holds(o.subject,o.predicate,o.object,o.why)&&xe.Rm(" @@@@@ weird if 409 - does hold statement")}d.style.color="#000",d.style.backgroundColor="#fee",c.appendChild(ot(e,`Checkbox: Error updating dataDoc from ${u.state} to ${u.newState}:\n\n${a}`))}})},!1),c}function _i(e){const t=new Date;return g.sym(e.uri+"#id"+t.getTime())}function Ti(e,t,n,i,a,o,s,r,c,l,p){const u={},d=n.updater.editable(l.uri);for(let e=0;e<o.length;e++){const t=o[e];t.uri&&!(t.uri in u)&&(u[t.uri]=!0)}if(0===Object.keys(u).length&&!c.mint)return ot(e,"Can't do selector with no options, subject= "+i+" property = "+a+".");T("makeSelectForChoice: dataDoc="+l);const m=function(e){t.removeChild(t.lastChild),f.refresh()},f=e.createElement("select");f.setAttribute("style",tt.formSelectStyle),f.setAttribute("id","formSelect"),f.currentURI=null;for(const e in u)f.appendChild(h(e));if(d&&c.mint){const t=e.createElement("option");t.appendChild(e.createTextNode(c.mint)),t.AJAR_mint=!0,f.insertBefore(t,f.firstChild)}function h(t){const i=e.createElement("option"),a=n.sym(t);let o;o=c.disambiguate?ue(a,!0):F(a,!0),i.appendChild(e.createTextNode(o)),i.setAttribute("value",t);const r=n.any(a,n.sym("http://www.w3.org/ns/ui#backgroundColor"));return r&&i.setAttribute("style","background-color: "+r.value+"; "),i.AJAR_uri=t,Si(a.value,s)&&i.setAttribute("selected","true"),i}return 0===f.children.length&&f.insertBefore(function(){const t=e.createElement("option");return t.appendChild(e.createTextNode(function(){let e="--- choice ---";return a&&"BlankNode"!==a.termType&&(e="* Select for property: "+F(a)+" *"),i&&"BlankNode"!==i.termType&&(e="* Select for "+F(i,!0)+" *"),e}())),t.disabled=!0,t.value=!0,t.hidden=!0,t.selected=!0,t}(),f.firstChild),f.update=function(t){s=t;const o=[],c=[],u=function(e){n.holds(i,a,e,l)&&o.push(g.st(i,a,e,l))},d=function(e){n.holds(i,a,e,l)||c.push(g.st(i,a,e,l)),r&&!n.holds(e,b.rdf("type"),n.sym(r),l)&&c.push(g.st(e,b.rdf("type"),n.sym(r),l))},m=n.each(i,a,null,l).map(e=>e.value);for(const e of m)Si(e,s)||u(g.sym(e));for(const e of s)e in m||d(g.sym(e));n.updater.update(o,c,function(t,n,i){if(!n)return f.parentNode.appendChild(ot(e,"Error updating data in select: "+i));f.refresh(),p&&p(n,{widget:"select",event:"change"})})},f.refresh=function(){f.disabled=!0;let o,u=[];for(let t=0;t<f.options.length;t++){const d=f.options[t];if(d.selected&&d.AJAR_mint){if(c.mintClass){const t=xi(e,n,i,a,r,c.subForm,l,function(e,t){e||p(e,t,{change:"new"})});f.parentNode.appendChild(t),o=t.AJAR_subject}else o=_i(l);u.push(g.st(i,a,n.sym(o),l)),r&&u.push(g.st(o,b.rdf("type"),n.sym(r),l)),c.mintStatementsFun&&(u=u.concat(c.mintStatementsFun(o))),f.currentURI=o}d.AJAR_uri&&(d.selected&&Si(d.AJAR_uri,s)&&(f.currentURI=d.AJAR_uri),Si(d.AJAR_uri,s)||d.removeAttribute("selected"),Si(d.AJAR_uri,s)&&d.setAttribute("selected","true"))}S("selectForOptions: data doc = "+l),f.currentURI&&c.subForm&&!c.multiSelect&&pi(e,t,{},g.sym(f.currentURI),c.subForm,l,function(i,a){i?(n.updater.update([],u,function(n,i,a){i||t.appendChild(ot(e,"Error updating select: "+a))}),p&&p(i,{widget:"select",event:"new"})):t.appendChild(ot(e,"Error updating data in field of select: "+a))}),f.disabled=!1},d&&f.addEventListener("change",m,!1),f}function Si(e,t){let n;for(n=0;n<t.length;n++)if(t[n]===e)return!0;return!1}mn[b.ui("AutocompleteField").uri]=function(e,t,n,i,a,o,s){if("NamedNode"!==i.termType)throw new Error("Sorry this field only works on NamedNode subjects (for editable)");const r=v.store,c=a.doc?a.doc():null,l=e.createElement("div");t&&t.appendChild(l);const p=e.createElement("div");p.setAttribute("class","formFieldName"),p.setAttribute("style",tt.formFieldNameBoxStyle),l.appendChild(p);const u=e.createElement("div");u.setAttribute("class","formFieldValue"),l.appendChild(u);const d=r.any(a,b.ui("property"));if(!d)return l.appendChild(ot(e,"Error: No property given for autocomplete field: "+a));const m=r.any(a,b.ui("labelProperty"))||b.schema("name"),f=r.any(a,b.ui("dataSource"));if(!f)return l.appendChild(ot(e,"Error: No data source given for autocomplete field: "+a));const h={label:r.anyJS(f,b.schema("name"),null,f.doc()),logo:r.any(f,b.schema("logo"),null,f.doc())},x=r.any(a,b.ui("targetClass"),null,a.doc())||r.any(f,b.ui("targetClass"),null,f.doc());x&&(h.targetClass=x),h.objectURIBase=r.any(f,b.ui("objectURIBase"),null,f.doc())||void 0;const y=r.anyJS(f,b.ui("endpoint"),null,f.doc());if(y){if(h.endpoint=y,h.searchByNameQuery=r.anyJS(f,b.ui("searchByNameQuery"),null,f.doc()),!h.searchByNameQuery)return l.appendChild(ot(e,"Error: No searchByNameQuery given for endpoint data Source: "+a));h.insitituteDetailsQuery=r.anyJS(f,b.ui("insitituteDetailsQuery"),null,f.doc())}else{const t=r.anyJS(f,b.ui("searchByNameURI"));if(!t)return l.appendChild(ot(e,"Error: No searchByNameURI OR sparql endpoint given for dataSource: "+f));h.searchByNameURI=t}const w=r.anyJS(a,b.ui("suppressEmptyUneditable"),null,c),C=r.updater?.editable(o.uri),E={permanent:!0,targetClass:h.targetClass,queryParams:h};E.size=r.anyJS(a,b.ui("size"),null,c)||void 0;let k=r.any(i,d,void 0,o);if(k)E.currentObject=k,E.currentName=r.any(E.currentObject,m,null,o);else if(k=r.any(a,b.ui("default")),k)E.currentObject=k,E.currentName=r.any(E.currentObject,m,null,o);else if(w&&!C)return l.style.display="none",l;return p.appendChild(xn(e,d,a)),ai(e,i,{editable:C,dbLookup:!0},E,async function(t,n){if(!n)throw new Error("autocompleteField: No name set.");const a=r.the(i,d,null,o);if(a){const e=r.any(a,m,null,o);if(a.equals(t)&&e&&e.sameTerm(n))return}const c=a?r.statementsMatching(i,d,a,o).concat(r.statementsMatching(a,m,null,o)):[],p=[(0,g.st)(i,d,t,o),(0,g.st)(t,m,n,o)];try{await(r.updater?.updateMany(c,p))}catch(t){return s(!1,t),void l.appendChild(ot(e,"Autocomplete form data update error:"+t,null,t))}s(!0,"")},async function(t,n){const a=r.the(i,d,null,o);if(!a)return s(!1,"NO data to elete"),void l.appendChild(ot(e,"Autocomplete delete: no old data!"));const c=r.statementsMatching(i,d,a,o).concat(r.statementsMatching(a,m,null,o)),p=[];try{await(r.updater?.updateMany(c,p))}catch(t){const n=new Error("Autocomplete form data delete error:"+t);return s(!1,t),void l.appendChild(ot(e,n,null,t))}s(!0,"")}).then(e=>{u.appendChild(e)},t=>{u.appendChild(ot(e,`Error rendering autocomplete ${a}: ${t}`,"#fee",t))}),l},mn[b.ui("Form").uri]=mn[b.ui("Group").uri]=function(e,t,n,i,a,o,s){const r=e.createElement("div"),c=b.ui;if(t&&t.appendChild(r),!a)return;const l=i.toNT()+"|"+a.toNT();if(n[l])return r.appendChild(e.createTextNode("Group: see above "+l)),r;const p={};for(const e in n)p[e]=1;p[l]=1;const u=a.doc?a.doc():null,d=ri.any(a,c("weight"),null,u),m=d?Number(d.value):1;if(m>3||m<0)return r.appendChild(ot(e,`Form Group weight ${m} should be 0-3`));r.setAttribute("style",tt.formGroupStyle[m]),r.style.display="flex",r.style.flexDirection="column",r.class="form-weight-"+m;let f,h=ri.any(a,c("parts"),null,u);if(h?f=h.elements:(h=ri.each(a,c("part"),null,u),f=gi(h)),!h)return r.appendChild(ot(e,"No parts to form! "));for(let t=0;t<f.length;t++){const a=f[t],c=hn(0,a),l=function(t,a){t&&a&&a.widget&&"select"===a.widget&&ci(e,n,i,o,s,r,f),s(t,{widget:"group",change:a})};r.appendChild(c(e,null,p,i,a,o,l))}return r},mn[b.ui("Options").uri]=function(e,t,n,i,a,o,s){const r=v.store,c=e.createElement("div"),l=a.doc?a.doc():null,p=b.ui;t&&t.appendChild(c);let u=r.any(a,p("dependingOn"));u||(u=b.rdf("type"));const d=r.each(a,p("case"),null,l);let m;d||c.appendChild(ot(e,"No cases to Options form. ")),m=u.sameTerm(b.rdf("type"))?Object.keys(r.findTypeURIs(i)).map(e=>g.sym(e)):r.each(i,u);for(let t=0;t<d.length;t++){const u=d[t],f=r.each(u,p("for"),null,l);let h=!1;for(let e=0;e<f.length;e++)for(const t of m){const n=f[e];(t.sameTerm(f)||t.termType===n.termType&&t.value===n.value)&&(h=!0)}if(h){const t=r.the(u,p("use"));if(!t)return c.appendChild(ot(e,'No "use" part for case in form '+a)),c;di(e,c,n,i,t,o,s);break}}return c},mn[b.ui("Multiple").uri]=function(e,t,n,i,a,o,s){function r(e){return e.map(e=>e.toString().slice(-7)).join(", ")}async function c(){const t=_i(o);if(y)L(),S.elements.push(t),await R();else{const n=C?[g.st(t,w,i,o)]:[g.st(i,w,t,o)];try{await u.updater.update([],n)}catch(t){const n="Error adding to unordered multiple: "+t;m.appendChild(ot(e,n)),xe.z3(n)}N()}}function l(t){async function a(e,n){let i;for(xe.Rm("pre move: "+r(S.elements)),i=0;i<S.elements.length&&!S.elements[i].sameTerm(t);i++);if(i===S.elements.length&&alert("list move: not found element for "+t),n){if(0===i)return void alert("@@ boop - already at top -temp message");S.elements.splice(i-1,2,S.elements[i],S.elements[i-1])}else{if(i===S.elements.length-1)return void alert("@@ boop - already at bottom -temp message");S.elements.splice(i,2,S.elements[i+1],S.elements[i])}await R()}T("Multiple: render object: "+t);const c=hn(0,A)(e,null,n,t,A,o,function(e,n){xe.Rm(`Item done callback for item ${t.toString()}`),e||xe.z3(" Item done callback: Error: "+n),s(e,n)});if(c.subject=t,u.updater.editable(o.uri)&&(Mt(e,c,E,async function(){if(y){xe.Rm("pre delete: "+r(S.elements));for(let e=0;e<S.elements.length;e++)if(S.elements[e].sameTerm(t))return S.elements.splice(e,1),void await R()}else if(u.holds(i,w,t,o)){const n=[g.st(i,w,t,o)];u.updater.update(n,[],function(t,n,i){n?_.removeChild(c):_.appendChild(ot(e,"Multiple: delete failed: "+i))})}}),y)){const t=e.createElement("div");t.style.display="grid",t.style.gridTemplateColumns="auto 3em",t.style.gridTemplateRows="50% 50%";const n=Ut(e,st.Pt.iconBase+"noun_1369237.svg","Move Up",async e=>a(0,!0)),i=Ut(e,st.Pt.iconBase+"noun_1369241.svg","Move Down",async e=>a(0,!1)),o=e.createElement("div");return o.appendChild(c),t.appendChild(o),t.appendChild(n),t.appendChild(i),n.style.gridColumn=2,i.style.gridColumn=2,n.style.gridRow=1,i.style.padding="0em",n.style.padding="0em",i.style.gridRow=2,o.style.gridColumn=1,o.style.gridRowStart="span 2",t}return c}const p=st.Pt.iconBase+"noun_19460_green.svg",u=v.store,d=a.doc?a.doc():null,m=e.createElement("div"),f=m,h=b.ui;t&&t.appendChild(m);const x=u.any(a,h("ordered")),y=!!x&&g.Node.toJS(x),w=u.any(a,h("property")),C=u.anyJS(a,h("reverse"),null,d);if(!w)return m.appendChild(ot(e,"No property to multiple: "+a)),f;let E=u.any(a,h("label"));E||(E=F(w));let k=u.any(a,h("min"));k=k?0+k.value:0;const A=u.any(a,h("part"));if(!A)return m.appendChild(ot(e,"No part to multiple: "+a)),f;const _=m.appendChild(e.createElement("div"));let S,j;if(_.style.display="flex",_.style.flexDirection="column",j=C?u.any(null,w,i,o):u.any(i,w,null,o),y?(S=C?u.any(null,w,i,o):u.any(i,w,null,o),j=S?S.elements:[]):(j=C?u.each(null,w,i,o):u.each(i,w,null,o),S=null),u.updater.editable(o.uri)){const t=m.appendChild(e.createElement("div"));t.style.padding="0.5em";const n=t.appendChild(e.createElement("img"));n.setAttribute("src",p),n.setAttribute("style","margin: 0.2em; width: 1.5em; height:1.5em"),n.title="Click to add another "+E;const i=e.createElement("span");i.textContent=(0===j.length?"Add another ":"Add ")+E,t.addEventListener("click",async e=>{await c()},!0),t.appendChild(i)}function L(){S||(S=new g.Collection,C?u.add(S,w,i,o):u.add(i,w,S,o))}async function R(){xe.Rm("save list: "+r(S.elements)),L();try{await u.fetcher.putBack(o)}catch(t){return void m.appendChild(ot(e,"Error trying to put back a list: "+t))}N()}function N(){let e;if(y){const t=C?u.the(null,w,i,o):u.the(i,w,null,o);e=t?t.elements:[]}else e=C?u.each(null,w,i,o):u.each(i,w,null,o),e.sort();Y(_,e,l)}return _.refresh=N,N(),async function(){const e=k-j.length;if(e>0){for(let t=0;t<e;t++)xe.Rm("Adding extra: min "+k),await c();await R()}}().then(()=>{xe.Rm(" Multiple render: async stuff ok")},e=>{xe.z3(" Multiple render: async stuff fails. #### ",e)}),f},mn[b.ui("PhoneField").uri]=wn,mn[b.ui("EmailField").uri]=wn,mn[b.ui("ColorField").uri]=wn,mn[b.ui("DateField").uri]=wn,mn[b.ui("DateTimeField").uri]=wn,mn[b.ui("TimeField").uri]=wn,mn[b.ui("NumericField").uri]=wn,mn[b.ui("IntegerField").uri]=wn,mn[b.ui("DecimalField").uri]=wn,mn[b.ui("FloatField").uri]=wn,mn[b.ui("TextField").uri]=wn,mn[b.ui("SingleLineTextField").uri]=wn,mn[b.ui("NamedNodeURIField").uri]=wn,mn[b.ui("MultiLineTextField").uri]=function(e,t,n,i,a,o,s){const r=b.ui,c=v.store,l=a.doc?a.doc():null,p=c.any(a,r("property"));if(!p)return ot(e,"No property to text field: "+a);const u=e.createElement("div");u.style.display="flex",u.style.flexDirection="row";const d=u.appendChild(e.createElement("div"));d.style.width=We;const m=u.appendChild(e.createElement("div"));d.appendChild(xn(e,p,a)),o=yn(i,p,o);const f=c.anyJS(i,p,null,o)||"",h=c.updater.editable(o.uri),g=a&&c.anyJS(a,b.ui("suppressEmptyUneditable"),null,l);!h&&g&&""===f&&(u.style.display="none");const x=yi(e,c,i,p,o,s);return m.appendChild(x),t&&t.appendChild(u),u},mn[b.ui("BooleanField").uri]=function(e,t,n,i,a,o,s){return li(e,t,0,i,a,o,0,!1)},mn[b.ui("TristateField").uri]=function(e,t,n,i,a,o,s){return li(e,t,0,i,a,o,0,!0)},mn[b.ui("Classifier").uri]=function(e,t,n,i,a,o,s){const r=v.store,c=b.ui,l=r.any(a,c("category"));if(!l)return ot(e,"No category for classifier: "+a);T("Classifier: dataDoc="+o);const p=e.createElement("div");p.setAttribute("class","classifierBox");const u=e.createElement("div");u.setAttribute("class","formFieldName classifierBox-label"),u.appendChild(xn(e,l,a)),p.appendChild(u);const d=e.createElement("div");d.setAttribute("class","formFieldValue classifierBox-selectBox");const m=ki(e,r,i,l,o,function(e,t){return s(e,t)});if(m&&m.querySelectorAll){const e=m.querySelectorAll("select");e.length&&!r.updater.editable(o.uri)&&e.forEach(e=>{e.readOnly=!0,e.style=tt.textInputStyleUneditable})}return d.appendChild(m),p.appendChild(d),t&&t.appendChild(p),p},mn[b.ui("Choice").uri]=function(e,t,n,i,a,o,s){const r=b.ui,c=v.store,l=a.doc?a.doc():null;let p;const u=e.createElement("div");u.setAttribute("class","choiceBox"),t&&t.appendChild(u);const d=e.createElement("div");d.setAttribute("class","formFieldName choiceBox-label"),u.appendChild(d);const m=e.createElement("div");m.setAttribute("class","formFieldValue choiceBox-selectBox"),u.appendChild(m);const f=c.any(a,r("property"));if(!f)return u.appendChild(ot(e,"No property for Choice: "+a));d.appendChild(xn(e,f,a));const h=c.any(a,r("from"));if(!h)return ot(e,"No 'from' for Choice: "+a);const x=c.any(a,r("use")),y={form:a,subForm:x,disambiguate:!1};c.any(a,r("canMintNew"))&&(y.mint="* Create new *");const w=c.any(a,r("multiselect"));w&&(y.multiSelect=!0);const C=c.each(a,r("search-full-store")).length?null:o;let E;return m.refresh=function(){let t=c.each(i,f,null,o).map(e=>e.value),n=function(e){let t,n=[];n=c.each(void 0,b.rdf("type"),h,l);for(const t in function(e,t,n){let i,a,o,s,r,c,l,p,u,d,m;const f={};f[t.toNT()]=!0;const h={},g=e.transitiveClosure(f,e.rdfFactory.namedNode("http://www.w3.org/2000/01/rdf-schema#subClassOf"),!0);for(const t in g){r=e.statementsMatching(null,e.rdfFactory.namedNode("http://www.w3.org/1999/02/22-rdf-syntax-ns#type"),e.fromNT(t),n);for(let e=0,t=r.length;e<t;e++)d=r[e],h[d.subject.toNT()]=d;c=e.each(null,e.rdfFactory.namedNode("http://www.w3.org/2000/01/rdf-schema#domain"),e.fromNT(t),n);for(let t=0,a=c.length;t<a;t++)for(s=c[t],l=e.statementsMatching(null,s,null,n),o=0,i=l.length;o<i;o++)d=l[o],h[d.subject.toNT()]=d;p=e.each(null,e.rdfFactory.namedNode("http://www.w3.org/2000/01/rdf-schema#range"),e.fromNT(t),n);for(let t=0,i=p.length;t<i;t++)for(s=p[t],u=e.statementsMatching(null,s,null,n),m=0,a=u.length;m<a;m++)d=u[m],h[d.object.toNT()]=d}return h}(c,h,e))n.push(c.fromNT(t));if(h.sameTerm(b.rdfs("Class")))for(p in Kt())n.push(c.sym(p));else if(h.sameTerm(b.rdf("Property"))){for(p in t=Xt(c),t.op)n.push(c.fromNT(p));for(p in t.dp)n.push(c.fromNT(p));y.disambiguate=!0}else if(h.sameTerm(b.owl("ObjectProperty"))){for(p in t=Xt(c),t.op)n.push(c.fromNT(p));y.disambiguate=!0}else if(h.sameTerm(b.owl("DatatypeProperty"))){for(p in t=Xt(c),t.dp)n.push(c.fromNT(p));y.disambiguate=!0}return n}(C);if(n.push(t),n=bi(n),E=Ti(e,m,c,i,f,n,t,h,y,o,s),m.innerHTML="",m.appendChild(E),w){const n=new si({placeholder:E.selected,select:E,container:m,textField:"textField",valueField:"valueField"});n.init(),n.subscribe(function(n){if("REMOVE_OPTION"===n.action&&(t=t.filter(function(e){return e!==n.value})),"CLEAR_ALL_OPTIONS"===n.action&&(t=[]),"ADD_OPTION"===n.action){if((n.value+"").includes("Create new")){const n=_i(o),a=[];a.push(g.st(i,f,c.sym(n),o)),h&&a.push(g.st(n,b.rdf("type"),c.sym(h),o)),x&&pi(e,m,{},g.sym(n),x,o,function(i,o){i?(c.updater.update([],a,function(t,n,i){n||m.appendChild(ot(e,"Error updating select: "+i))}),t.push(n),s&&s(i,{widget:"select",event:"new"})):m.appendChild(ot(e,"Error updating data in field of select: "+o))})}else t.push(n.value)}E.update(t)})}},m.refresh(),E&&E.refresh&&E.refresh(),u},mn[b.ui("Comment").uri]=mn[b.ui("Heading").uri]=function(e,t,n,i,a,o,s){const r=b.ui,c=v.store;let l=c.any(a,r("contents"));l||(l="Error: No contents in comment field.");const p=a.doc?a.doc():null,u=fn(a),d=un[u]||{},m=e.createElement("div");t&&t.appendChild(m);const f=m.appendChild(e.createElement(d.element));f.textContent=l,function(e,t){const n=fn(t),i=un[n]||{},a=v.store.any(t,b.ui("style"));a?"Literal"===a.termType?a&&e.setAttribute("style",a.value):v.store.statementsMatching(a,null,null,t.doc()).forEach(t=>{if(t.predicate.uri&&t.predicate.uri.startsWith(gn)){const n=t.predicate.uri.slice(26);try{e.style[n]=t.object.value}catch(i){console.warn(`setFieldStyle: Error setting element style ${n} to "${t.object.value}"`),console.warn(`setFieldStyle: ... Element tagName was "${e.tagName||"???"}"`)}}}):i.style&&e.setAttribute("style",i.style)}(f,a);const h=c.anyJS(a,b.ui("suppressIfUneditable"),null,p),g=c.updater.editable(o.uri);return h&&!g&&(m.style.display="none"),m};const ji={authEndpoint:"",fallbackAuthEndpoint:"https://databox.me/",signupEndpoint:"https://solidproject.org/get_a_pod",signupWindowHeight:600,signupWindowWidth:1024,key:"",cert:""};function Li(e){this.config=e||ji}Li.prototype.listen=function(){return new Promise(function(e,t){const n=window.addEventListener?"addEventListener":"attachEvent";(0,window[n])("attachEvent"===n?"onmessage":"message",function(n){const i=n.data;if("User:"===i.slice(0,5)){const n=i.slice(5,i.length);return n&&n.length>0&&"http"===n.slice(0,4)?e(n):t(n)}},!0)})},Li.prototype.signup=function(e){e=e||this.config.signupEndpoint;const t=this.config.signupWindowWidth,n=this.config.signupWindowHeight,i=window.screen.width/2-(t/2+10),a=window.screen.height/2-(n/2+50),o=e+"?origin="+encodeURIComponent(window.location.origin),s="resizable,scrollbars,status,width="+t+",height="+n+",left="+i+",top="+a;window.open(o,"Solid signup",s);const r=this;return new Promise(function(e){r.listen().then(function(t){return e(t)})})};v.solidLogicSingleton.store;const{loadPreferences:Ri,loadProfile:Ni}=v.solidLogicSingleton.profile,{getScopedAppInstances:Ii,getRegistrations:$i,loadAllTypeIndexes:Bi,getScopedAppsFromIndex:Di,deleteTypeIndexRegistration:Oi}=v.solidLogicSingleton.typeIndex;function Mi(e){const t=v.authn.currentUser();return t?(v.authn.saveUser(t,e),Promise.resolve(e)):new Promise(t=>{v.authn.checkUser().then(n=>{if(n)return xe.Rm(`logIn: Already logged in as ${n}`),t(e);if(!e.div||!e.dom)return t(e);const i=Wi(e.dom,n=>{v.authn.saveUser(n,e),t(e)});e.div.appendChild(i)})})}async function Ui(e){if(e.preferencesFile)return Promise.resolve(e);let t;try{e=await Fi(e);const n=await Ri(e.me);t,e.preferencesFile=n}catch(t){let n;if(t instanceof v.UnauthorizedError)n="Oops — you are not authenticated (properly logged in), so SolidOS cannot read your preferences file. Try logging out and then logging back in.",R(n);else{if(t instanceof v.CrossOriginForbiddenError)return n=`Unauthorized: Assuming preference file blocked for origin ${window.location.origin}`,e.preferencesFileError=n,e;if(t instanceof v.SameOriginForbiddenError)return n="You are not authorized to read your preference file. This may be because you are using an untrusted web app.",xe.R8(n),e;if(t instanceof v.NotEditableError)return n="You are not authorized to edit your preference file. This may be because you are using an untrusted web app.",xe.R8(n),e;if(t instanceof v.WebOperationError)n="You are not authorized to edit your preference file. This may be because you are using an untrusted web app.",xe.R8(n);else{if(!(t instanceof v.FetchError))throw new Error(`(via loadPrefs) ${t}`);n=`Strange: Error ${t.status} trying to read your preference file.${t.message}`,R(n)}}}return e}async function Fi(e){if(e.publicProfile)return e;try{const t=await Mi(e);if(!t.me)throw new Error("Could not log in");e.publicProfile=await Ni(t.me)}catch(t){throw e.div&&e.dom&&e.div.appendChild(ot(e.dom,t.message)),new Error(`Can't log in: ${t}`)}return e}async function Pi(e,t,n){let i=e.me?await Ii(t,e.me):[];return!0===n?i=i.filter(e=>"public"===e.scope.label):!1===n&&(i=i.filter(e=>"private"===e.scope.label)),e.instances=i.map(e=>e.instance),e}function zi(e,t){return`${e.me&&e.me.sameTerm(t.agent)?"":F(t.agent)+" "}${t.label}`}async function qi(e,t,n){function i(i){const a=function(e){const i=$i(t,n),a=i.length?i[0]:_i(e);return[(0,g.st)(a,b.solid("instance"),t,e),(0,g.st)(a,b.solid("forClass"),n,e)]}(i.index),o=`${zi(e,i)} link to this ${e.noun}`;return Ai(e.dom,v.solidLogicSingleton.store,o,null,a,l,i.index)}const a=e.dom;if(!a||!e.div)throw new Error("registrationControl: need dom and div");const o=a.createElement("div");e.div.appendChild(o),e.me=v.authn.currentUser();const s=e.me;if(!s)return o.innerHTML='<p style="margin:2em;">(Log in to save a link to this)</p>',e;let r;try{r=await Bi(s)}catch(t){let n;return e.div&&e.preferencesFileError?(n="(Lists of stuff not available)",e.div.appendChild(a.createElement("p")).textContent=n):e.div&&(n=`registrationControl: Type indexes not available: ${t}`,e.div.appendChild(ot(e.dom,t))),xe.Rm(n),e}o.innerHTML="<table><tbody></tbody></table>",o.setAttribute("style","font-size: 120%; text-align: right; padding: 1em; border: solid gray 0.05em;");const c=o.children[0].children[0],l=new g.BlankNode;for(const e of r){c.appendChild(a.createElement("tr")).appendChild(i(e))}return e}function Hi(e,t,n){const{dom:i}=e,a=zi(e,n),o=i.createElement("tr"),s=o.appendChild(i.createElement("td"));s.setAttribute("colspan","3"),s.style.backgoundColor={private:"#fee",public:"#efe"}[n.label]||"white";const r=s.appendChild(i.createElement("h3"));return r.textContent=a+" links",r.style.textAlign="left",o}async function Vi(e,t){const n=e.dom,i=e.div,a=n.createElement("div");if(i.appendChild(a),e.me=v.authn.currentUser(),!e.me)return a.innerHTML='<p style="margin:2em;">(Log in list your stuff)</p>',e;const o=await Bi(e.me);a.innerHTML="<table><tbody></tbody></table>",a.setAttribute("style","font-size: 120%; text-align: right; padding: 1em; border: solid #eee 0.5em;");const s=a.firstChild.firstChild;for(const i of o){const a=Hi(e,0,i);s.appendChild(a);const o=await Di(i,t.type||null);0===o.length&&(a.style.display="none");for(const e of o){const t=qt(n,b.solid("instance"),e.instance,{deleteFunction:async()=>{await Oi(e),s.removeChild(t)}});t.children[0].style.paddingLeft="3em",s.appendChild(t)}}return e}function Gi(e){const t=e.createElement("div");t.setAttribute("style","position: fixed; top: 0; left: 0; right: 0; bottom: 0; display: flex; justify-content: center; align-items: center;"),e.body.appendChild(t);const n=e.createElement("div");n.setAttribute("style","\n background-color: white;\n box-shadow: 0px 1px 4px rgba(0, 0, 0, 0.2);\n -webkit-box-shadow: 0px 1px 4px rgba(0, 0, 0, 0.2);\n -moz-box-shadow: 0px 1px 4px rgba(0, 0, 0, 0.2);\n -o-box-shadow: 0px 1px 4px rgba(0, 0, 0, 0.2);\n border-radius: 4px;\n min-width: 400px;\n padding: 10px;\n z-index : 10;\n "),t.appendChild(n);const i=e.createElement("div");i.setAttribute("style","\n border-bottom: 1px solid #DDD;\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n "),n.appendChild(i);const a=e.createElement("label");a.setAttribute("style","margin-right: 5px; font-weight: 800"),a.innerText="Select an identity provider";const o=e.createElement("button");o.innerHTML='<img src="https://solidos.github.io/solid-ui/src/icons/noun_1180156.svg" style="width: 2em; height: 2em;" title="Cancel">',o.setAttribute("style","background-color: transparent; border: none;"),o.addEventListener("click",()=>{t.remove()}),i.appendChild(a),i.appendChild(o);const s=async e=>{try{v.solidLogicSingleton.store.updater.flagAuthorizationMetadata();const t=new URL(window.location.href).hash;t&&window.localStorage.setItem("preLoginRedirectHash",t),window.localStorage.setItem("loginIssuer",e);const n=new URL(window.location.href);n.hash="",await v.authSession.login({redirectUrl:n.href,oidcIssuer:e})}catch(e){R(e.message)}},r=e.createElement("div");r.setAttribute("style","\n border-bottom: 1px solid #DDD;\n display: flex;\n flex-direction: column;\n padding-top: 10px;\n ");const c=e.createElement("div");c.setAttribute("style","\n display: flex;\n flex-direction: row;\n ");const l=e.createElement("label");l.innerText="Enter the URL of your identity provider:",l.setAttribute("style","color: #888");const p=e.createElement("input");p.setAttribute("type","text"),p.setAttribute("style","margin-left: 0 !important; flex: 1; margin-right: 5px !important"),p.setAttribute("placeholder","https://example.com"),p.value=localStorage.getItem("loginIssuer")||"";const u=e.createElement("button");u.innerText="Go",u.setAttribute("style","margin-top: 12px; margin-bottom: 12px;"),u.addEventListener("click",()=>{s(p.value)}),r.appendChild(l),c.appendChild(p),c.appendChild(u),r.appendChild(c),n.appendChild(r);const d=e.createElement("div");d.setAttribute("style","\n display: flex;\n flex-direction: column;\n padding-top: 10px;\n ");const m=e.createElement("label");m.innerText="Or pick an identity provider from the list below:",m.setAttribute("style","color: #888"),d.appendChild(m),(0,v.getSuggestedIssuers)().forEach(t=>{const n=e.createElement("button");n.innerText=t.name,n.setAttribute("style","height: 38px; margin-top: 10px"),n.addEventListener("click",()=>{s(t.uri)}),d.appendChild(n)}),n.appendChild(d)}function Wi(e,t=null,n={}){let i=(0,v.offlineTestID)();const a=e.createElement("div");function o(e){e&&(i=v.authn.saveUser(e),a.refresh(),t&&t(i.uri))}function s(e){const n=i;v.authSession.logout().then(function(){const e=`Your WebID was ${n}. It has been forgotten.`;i=null;try{R(e)}catch(t){window.alert(e)}a.refresh(),t&&t(null)},e=>{R("Fail to log out:"+e)})}function r(){i=v.authn.currentUser(),a.refresh()}return a.refresh=function(){const t=v.authSession.info;i=t&&t.webId&&t.isLoggedIn?v.solidLogicSingleton.store.sym(t.webId):null,(i&&a.me!==i.uri||!i&&a.me)&&(Et(a),i?a.appendChild(function(t,n){const i=n.buttonStyle||tt.signInAndUpButtonStyle;let a="WebID logout";if(t){const e=v.solidLogicSingleton.store.any(t,b.foaf("nick"))||v.solidLogicSingleton.store.any(t,b.foaf("name"));e&&(a="Logout "+e.value)}const o=e.createElement("input");return o.setAttribute("type","button"),o.setAttribute("value",a),o.setAttribute("style",`${i}`),o.addEventListener("click",s,!1),o}(i,n)):a.appendChild(function(e,t,n={}){const i=(n=n||{}).buttonStyle||tt.signInAndUpButtonStyle,a=e.createElement("div"),o="SolidSignInOrSignUpBox";xe.Rm("widgets.signInOrSignUpBox"),a.setUserCallback=t,a.setAttribute("class",o),a.setAttribute("style","display:flex;");const s=e.createElement("input");a.appendChild(s),s.setAttribute("type","button"),s.setAttribute("value","Log in"),s.setAttribute("style",`${i}${tt.headerBannerLoginInput}`+tt.signUpBackground),v.authSession.events.on("login",()=>{const t=v.authn.currentUser();if(t){const n=t.uri,i=e.getElementsByClassName(o);xe.Rm(`Logged in, ${i.length} panels to be serviced`);for(let t=0;t<i.length;t++){const a=i[t];if(a.setUserCallback)try{a.setUserCallback(n);const e=a.parentNode;e&&e.removeChild(a)}catch(t){xe.Rm(`## Error satisfying login box: ${t}`),a.appendChild(ot(e,t))}}}}),s.addEventListener("click",()=>{const n=(0,v.offlineTestID)();if(n)return t(n.uri);Gi(e)},!1);const r=e.createElement("input");return a.appendChild(r),r.setAttribute("type","button"),r.setAttribute("value","Sign Up for Solid"),r.setAttribute("style",`${i}${tt.headerBannerLoginInput}`+tt.signInBackground),r.addEventListener("click",function(e){(new Li).signup().then(function(e){xe.Rm("signInOrSignUpBox signed up "+e),t(e)})},!1),a}(e,o,n))),a.me=i?i.uri:null},a.refresh(),r(),v.authSession.events.on("login",r),v.authSession.events.on("logout",r),a.me="99999",a.refresh(),a}function Ji(e,t,n){const i=t.noun,a=t.appPathSegment,o=(0,v.offlineTestID)(),s=e.createElement("div"),r={me:o,dom:e,div:s};function c(t,n){s.appendChild(ot(e,t,n))}function l(e){const t=v.solidLogicSingleton.store.any(e,b.space("uriPrefix"));let n;n=t?t.value:e.uri.split("#")[0],"/"!==n.slice(-1)&&(xe.Rm(`${a}: No / at end of uriPrefix ${n}`),n=`${n}/`);const i=new Date;return n+=`${a}/id${i.getTime()}/`,n}return Ui(r).then(function(t){const a=t.me,o=t.preferencesFile;let r=null,p=v.solidLogicSingleton.store.each(a,b.space("workspace"),void 0,o);const u=v.solidLogicSingleton.store.each(a,b.space("storage"));0===p.length&&u&&(c(`You don't seem to have any workspaces. You have ${u.length} storage spaces.`,"white"),u.map(function(e){return p=p.concat(v.solidLogicSingleton.store.each(e,b.ldp("contains"))),p}).filter(e=>e.id?["public","private"].includes(e.id().toLowerCase()):"")),1===p.length&&(c(`Workspace used: ${p[0].uri}`,"white"),r=l(p[0]));const d=e.createElement("table");d.setAttribute("style","border-collapse:separate; border-spacing: 0.5em;"),s.appendChild(d),s.appendChild(e.createElement("hr"));const m=s.appendChild(e.createElement("p"));m.setAttribute("style",tt.commentStyle),m.textContent=`Where would you like to store the data for the ${i}?\n Give the URL of the folder where you would like the data stored.\n It can be anywhere in solid world - this URI is just an idea.`;const f=s.appendChild(e.createElement("input"));f.setAttribute("type","text"),f.setAttribute("style",tt.textInputStyle),f.size=80,f.label="base URL",f.autocomplete="on",r&&(f.value=r),t.baseField=f,s.appendChild(e.createElement("br"));const h=s.appendChild(e.createElement("button"));let x,y,w,C,E,k,A;h.setAttribute("style",tt.buttonStyle),h.textContent=`Start new ${i} at this URI`,h.addEventListener("click",function(e){let t=f.value.replace(" ","%20");"/"!==t.slice(-1)&&(t+="/"),n(null,t)}),p=p.filter(function(e){return!v.solidLogicSingleton.store.holds(e,b.rdf("type"),b.space("MasterWorkspace"))});const _="height: 3em; margin: 1em; padding: 1em white; border-radius: 0.3em;",T=`${_}border: 0px;`;for(let t=0;t<p.length;t++){if(E=p[t],C=e.createElement("tr"),0===t&&(x=e.createElement("td"),x.setAttribute("rowspan",`${p.length}`),x.textContent="Choose a workspace for this:",x.setAttribute("style","vertical-align:middle;"),C.appendChild(x)),y=e.createElement("td"),k=v.solidLogicSingleton.store.anyValue(E,b.ui("style")),!k){const e=`#${(16777215&function(e){return e.split("").reduce(function(e,t){return(e=(e<<5)-e+t.charCodeAt(0))&e},0)}(E.uri)|12632256).toString(16)}`;k=`color: black ; background-color: ${e};`}y.setAttribute("style",T+k),C.target=E.uri;let i=v.solidLogicSingleton.store.any(E,b.rdfs("label"));i||(i=E.uri.split("/").slice(-1)[0]||E.uri.split("/").slice(-2)[0]),y.textContent=i||"???",C.appendChild(y),0===t&&(w=e.createElement("td"),w.setAttribute("rowspan",`${p.length}1`),w.setAttribute("style","width:50%;"),C.appendChild(w)),d.appendChild(C),A=v.solidLogicSingleton.store.any(E,b.rdfs("comment")),A=A?A.value:"Use this workspace",y.addEventListener("click",function(t){w.textContent=A?A.value:"",w.setAttribute("style",T+k);const i=e.createElement("button");i.textContent="Continue";const a=l(E);f.value=a,i.addEventListener("click",function(e){i.disabled=!0,n(E,a),i.textContent="----\x3e"},!0),w.appendChild(i)},!0)}const S=e.createElement("tr");y=e.createElement("td"),y.setAttribute("style",_),y.textContent="+ Make a new workspace",y.addEventListener("click",async function(n){const i=d.appendChild(e.createElement("tr")).appendChild(e.createElement("td"));i.setAttribute("colspan","3"),i.style.padding="0.5em";const a=encodeURI(await zt(e,v.solidLogicSingleton.store,i,b.solid("URL"),b.space("Workspace"),"Workspace")),o=_i(t.preferencesFile),s=[(0,g.st)(t.me,b.space("workspace"),o,t.preferencesFile),(0,g.st)(o,b.space("uriPrefix"),a,t.preferencesFile)];if(!v.solidLogicSingleton.store.updater)throw new Error("store has no updater");await v.solidLogicSingleton.store.updater.update([],s)}),S.appendChild(y),d.appendChild(S)}).catch(e=>{s.appendChild(ot(r.dom,e))}),s}function Qi(e,t,n){const i=function(e,t){n(e,t)},a=e.createElement("div"),o=e.createElement("button");return o.setAttribute("type","button"),a.appendChild(o),o.innerHTML=`Make new ${t.noun}`,o.addEventListener("click",n=>{a.appendChild(Ji(e,t,i))},!1),a.appendChild(o),a}async function Zi(){try{const{me:e,preferencesFile:t,preferencesFileError:n}=await Ui({});if(!t||n)throw new Error(n);return v.solidLogicSingleton.store.each(e,b.rdf("type"),null,t.doc())}catch(e){xe.R8("Unable to fetch your preferences - this was the error: ",e)}return[]}async function Yi(e){const t=await Zi();return e.filter(e=>function(e,t){const n=e.audience||[];return n.reduce((e,n)=>e&&!!t.find(e=>e.equals(n)),!0)}(e,t))}v.authSession.events.on("logout",async()=>{const e=window.localStorage.getItem("loginIssuer");if(e)try{v.solidLogicSingleton.store.updater.flagAuthorizationMetadata();const t=new URL(e);t.pathname="/.well-known/openid-configuration";const n=await fetch(t.toString());if(200===n.status){const e=await n.json();e&&e.end_session_endpoint&&await fetch(e.end_session_endpoint,{credentials:"include"})}}catch(e){}window.location.reload()});class Ki{rootElement;barElement;isExpanded=!1;constructor(e){this.groupList=e,this.rootElement=e.controller.dom.createElement("div"),this.barElement=e.controller.dom.createElement("div")}render(){return this.rootElement.innerHTML="",this.rootElement.appendChild(this.renderAddButton()),this.rootElement.appendChild(this.barElement),this.rootElement}renderAddButton(){return Ut(this.groupList.controller.dom,`${st.Pt.iconBase}noun_34653_green.svg`,"Add ...",()=>{this.toggleBar(),this.renderBar()})}renderBar(){this.barElement.innerHTML="",this.isExpanded&&(this.barElement.appendChild(this.renderPersonButton()),this.barElement.appendChild(this.renderGroupButton()),this.barElement.appendChild(this.renderPublicButton()),this.barElement.appendChild(this.renderAuthenticatedAgentButton()),this.barElement.appendChild(this.renderBotButton()),this.barElement.appendChild(this.renderAppsButton()))}renderSimplifiedBar(e){Array.from(this.barElement.children).filter(t=>t!==e).forEach(e=>this.barElement.removeChild(e))}renderPersonButton(){return Ut(this.groupList.controller.dom,st.Pt.iconBase+Rt["vcard:Individual"],"Add Person",e=>{this.renderSimplifiedBar(e.target),this.renderNameForm(b.vcard("Individual"),"person").then(e=>this.addPerson(e)).then(()=>this.renderCleanup()).catch(e=>this.groupList.controller.renderStatus(e))})}renderGroupButton(){return Ut(this.groupList.controller.dom,st.Pt.iconBase+Rt["vcard:Group"],"Add Group",e=>{this.renderSimplifiedBar(e.target),this.renderNameForm(b.vcard("Group"),"group").then(e=>this.addGroup(e)).then(()=>this.renderCleanup()).catch(e=>this.groupList.controller.renderStatus(e))})}renderNameForm(e,t){return zt(this.groupList.controller.dom,this.groupList.store,this.barElement,b.vcard("URI"),e,t)}renderPublicButton(){return Ut(this.groupList.controller.dom,st.Pt.iconBase+Rt["foaf:Agent"],"Add Everyone",()=>this.addAgent(b.foaf("Agent").uri).then(()=>this.groupList.controller.renderTemporaryStatus("Adding the general public to those who can read. Drag the globe to a different level to give them more access.")).then(()=>this.renderCleanup()))}renderAuthenticatedAgentButton(){return Ut(this.groupList.controller.dom,`${st.Pt.iconBase}noun_99101.svg`,"Anyone logged In",()=>this.addAgent(b.acl("AuthenticatedAgent").uri).then(()=>this.groupList.controller.renderTemporaryStatus("Adding anyone logged in to those who can read. Drag the ID icon to a different level to give them more access.")).then(()=>this.renderCleanup()))}renderBotButton(){return Ut(this.groupList.controller.dom,st.Pt.iconBase+"noun_Robot_849764.svg","A Software Agent (bot)",e=>{this.renderSimplifiedBar(e.target),this.renderNameForm(b.schema("Application"),"bot").then(e=>this.addBot(e)).then(()=>this.renderCleanup())})}renderAppsButton(){return Ut(this.groupList.controller.dom,`${st.Pt.iconBase}noun_15177.svg`,"A Web App (origin)",e=>{this.renderSimplifiedBar(e.target);const t={div:this.barElement,dom:this.groupList.controller.dom},n=this.renderAppsTable(t).catch(e=>this.groupList.controller.renderStatus(e));this.renderAppsView();const i=this.renderNameForm(b.schema("WebApplication"),"webapp domain").then(e=>this.getOriginFromName(e));Promise.race([n,i]).then(e=>{e&&this.groupList.addNewURI(e)}).then(()=>this.renderCleanup())})}renderAppsView(){const e=this.groupList.controller.context.session.paneRegistry.byName("trustedApplications");if(e){const t=e.render(null,this.groupList.controller.context);t.setAttribute("style",tt.trustedAppController);const n=Ft(this.groupList.controller.dom,()=>this.renderCleanup());n.setAttribute("style",tt.trustedAppCancelButton),t.insertBefore(n,t.firstChild),this.barElement.appendChild(t)}}async renderAppsTable(e){await Fi(e);const t=this.groupList.store.each(e.me,b.acl("trustedApp")),n=t.flatMap(e=>this.groupList.store.each(e,b.acl("origin")));return this.barElement.appendChild(this.groupList.controller.dom.createElement("p")).textContent=`You have ${n.length} selected web apps.`,new Promise((e,n)=>{const i=this.barElement.appendChild(this.groupList.controller.dom.createElement("table"));i.setAttribute("style",tt.trustedAppAddApplicationsTable),t.forEach(t=>{const a=this.groupList.store.any(t,b.acl("origin"));a||n(new Error(`Unable to pick app: ${t.value}`));const o=qt(this.groupList.controller.dom,b.acl("origin"),a,{}),s=this.groupList.controller.dom.createElement("table"),r=s.appendChild(this.groupList.controller.dom.createElement("tr"));r.appendChild(this.groupList.controller.dom.createElement("td")).appendChild(o);r.appendChild(this.groupList.controller.dom.createElement("td")).textContent=`Give access to ${this.groupList.controller.noun} ${F(this.groupList.controller.subject)}?`;r.appendChild(this.groupList.controller.dom.createElement("td")).appendChild(Pt(this.groupList.controller.dom,()=>e(a.value))),i.appendChild(s)})})}renderCleanup(){this.renderBar(),this.groupList.render()}async addPerson(e){if(!e)return this.toggleBar();if(!e.match(/^https?:/i))return Promise.reject(new Error("Not a http URI"));xe.Rm(`Adding to ACL person: ${e}`),await this.groupList.addNewURI(e),this.toggleBar()}async addGroup(e){if(!e)return this.toggleBar();if(!e.match(/^https?:/i))return Promise.reject(new Error("Not a http URI"));xe.Rm("Adding to ACL group: "+e),await this.groupList.addNewURI(e),this.toggleBar()}async addAgent(e){await this.groupList.addNewURI(e),this.toggleBar()}async addBot(e){if(!e)return this.toggleBar();if(!e.match(/^https?:/i))return Promise.reject(new Error("Not a http URI"));xe.Rm("Adding to ACL bot: "+e),await this.groupList.addNewURI(e),this.toggleBar()}async getOriginFromName(e){if(!e)return Promise.resolve();if(!e.match(/^([a-z0-9]+(-[a-z0-9]+)*\.)+[a-z]{2,}$/i))return Promise.reject(new Error("Not a domain name"));const t="https://"+e;return xe.Rm("Adding to ACL origin: "+t),this.toggleBar(),t}toggleBar(){this.isExpanded=!this.isExpanded}}const Xi=b.acl,ea={13:"Owners",9:"Owners (write locked)",5:"Editors",3:"Posters",2:"Submitters",1:"Viewers"},ta={13:!0,5:!0,3:!0,2:!0,1:!0},na={13:"can read, write, and control sharing.",9:"can read and control sharing, currently write-locked.",5:"can read and change information",3:"can add new information, and read but not change existing information",2:"can add new information but not read any",1:"can read but not change information"};class ia{defaults;byCombo;aclMap;addAgentButton;rootElement;_store;constructor(e,t,n,i,a={}){this.doc=e,this.aclDoc=t,this.controller=n,this._options=a,this.defaults=this._options.defaults||!1,this._store=i,this.aclMap=Ce(e,0,i,this.defaults),this.byCombo=_e(this.aclMap),this.addAgentButton=new Ki(this),this.rootElement=this.controller.dom.createElement("div"),this.rootElement.setAttribute("style",tt.accessGroupList)}get store(){return this._store}set store(e){this._store=e,this.aclMap=Ce(this.doc,this.aclDoc,e,this.defaults),this.byCombo=_e(this.aclMap)}render(){return this.rootElement.innerHTML="",this.renderGroups().forEach(e=>this.rootElement.appendChild(e)),this.controller.isEditable&&this.rootElement.appendChild(this.addAgentButton.render()),this.rootElement}renderGroups(){const e=[];for(let t=15;t>0;t--){const n=aa(t);(this.controller.isEditable&&ta[t]||this.byCombo[n])&&e.push(this.renderGroup(t,n))}return e}renderGroup(e,t){const n=this.controller.dom.createElement("div");n.setAttribute("style",tt.accessGroupListItem),nt(n,e=>this.handleDroppedUris(e,t).then(()=>this.controller.render()).catch(e=>this.controller.renderStatus(e)));return this.renderGroupElements(e,t).forEach(e=>n.appendChild(e)),n}renderGroupElements(e,t){const n=this.controller.dom.createElement("div");if(n.setAttribute("style",tt.group),this.controller.isEditable)switch(e){case 1:n.setAttribute("style",tt.group1);break;case 2:n.setAttribute("style",tt.group2);break;case 3:n.setAttribute("style",tt.group3);break;case 5:n.setAttribute("style",tt.group5);break;case 9:n.setAttribute("style",tt.group9);break;case 13:n.setAttribute("style",tt.group13);break;default:n.setAttribute("style",tt.group)}n.innerText=ea[e]||function(e){let t="";const n=["Read","Append","Write","Control"];for(let i=0;i<4;i++)e&1<<i&&(t+=n[i]);return t}(e);const i=this.controller.dom.createElement("div");if(i.setAttribute("style",tt.group),this.controller.isEditable)switch(e){case 1:i.setAttribute("style",tt.group1);break;case 2:i.setAttribute("style",tt.group2);break;case 3:i.setAttribute("style",tt.group3);break;case 5:i.setAttribute("style",tt.group5);break;case 9:i.setAttribute("style",tt.group9);break;case 13:i.setAttribute("style",tt.group13);break;default:i.setAttribute("style",tt.group)}const a=i.appendChild(this.controller.dom.createElement("table"));(this.byCombo[t]||[]).map(([e,n])=>this.renderAgent(a,t,e,n)).forEach(e=>a.appendChild(e));const o=this.controller.dom.createElement("div");if(o.setAttribute("style",tt.group),this.controller.isEditable)switch(e){case 1:o.setAttribute("style",tt.group1);break;case 2:o.setAttribute("style",tt.group2);break;case 3:o.setAttribute("style",tt.group3);break;case 5:o.setAttribute("style",tt.group5);break;case 9:o.setAttribute("style",tt.group9);break;case 13:o.setAttribute("style",tt.group13);break;default:o.setAttribute("style",tt.group)}return o.innerText=na[e]||"Unusual combination",[n,i,o]}renderAgent(e,t,n,i){const a=qt(this.controller.dom,Xi(n),(0,g.sym)(i),this.controller.isEditable?{deleteFunction:()=>this.deleteAgent(t,n,i).then(()=>e.removeChild(a)).catch(e=>this.controller.renderStatus(e))}:{});return a}async deleteAgent(e,t,n){const i=this.byCombo[e]||[],a=i.find(([e,i])=>e===t&&i===n);a&&i.splice(i.indexOf(a),1),await this.controller.save()}async addNewURI(e){await this.handleDroppedUri(e,aa(1)),await this.controller.save()}async handleDroppedUris(e,t){try{await Promise.all(e.map(e=>this.handleDroppedUri(e,t))),await this.controller.save()}catch(e){return Promise.reject(e)}}async handleDroppedUri(e,t,n=!1){const i=function(e,t){const n=(0,g.sym)(e),i=t.findTypeURIs(n);for(const e in i)xe.Rm(" drop object type includes: "+e);if(e.startsWith("http")&&3===e.split("/").length)return{pred:"origin",obj:n};if(e.startsWith("http")&&4===e.split("/").length&&e.endsWith("/"))return xe.Rm("Assuming final slash on dragged origin URI was unintended!"),{pred:"origin",obj:(0,g.sym)(e.slice(0,-1))};if(b.vcard("WebID").uri in i)return{pred:"agent",obj:n};if(b.vcard("Group").uri in i)return{pred:"agentGroup",obj:n};if(n.sameTerm(b.foaf("Agent"))||n.sameTerm(b.acl("AuthenticatedAgent"))||n.sameTerm(b.rdf("Resource"))||n.sameTerm(b.owl("Thing")))return{pred:"agentClass",obj:n};if(b.vcard("Individual").uri in i||b.foaf("Person").uri in i||b.foaf("Agent").uri in i){const e=t.any(n,b.foaf("preferredURI"));return e?{pred:"agent",obj:(0,g.sym)(e)}:{pred:"agent",obj:n}}if(b.solid("AppProvider").uri in i)return{pred:"origin",obj:n};if(b.solid("AppProviderClass").uri in i)return{pred:"originClass",obj:n};return xe.Rm(" Triage fails for "+e),null}(e,this.store),a=(0,g.sym)(e);if(!i&&!n){xe.Rm(` Not obvious: looking up dropped thing ${a}`);try{await(this._store?.fetcher?.load(a.doc()))}catch(e){const t=`Ignore error looking up dropped thing: ${e}`;return xe.z3(t),Promise.reject(new Error(t))}return this.handleDroppedUri(e,t,!0)}if(!i){const t=Object.keys(this.store.findTypeURIs(a)),n=`Error: Failed to add access target: ${e} is not a recognized ACL target type. Expected one of: vcard:WebID, vcard:Group, foaf:Person, foaf:Agent, solid:AppProvider, solid:AppProviderClass, or recognized ACL classes. Hint: try dropping a WebID profile URI, a vcard:Group URI, or a web app origin.`+(t.length>0?`Detected RDF types: ${t.join(", ")}`:"No RDF type was detected for this URI.");return xe.z3(n),Promise.reject(new Error(n))}this.setACLCombo(t,e,i,this.controller.subject)}setACLCombo(e,t,n,i){e in this.byCombo||(this.byCombo[e]=[]),this.removeAgentFromCombos(t),this.byCombo[e].push([n.pred,n.obj.uri]),xe.Rm(`ACL: setting access to ${i} by ${n.pred}: ${n.obj}`)}removeAgentFromCombos(e){for(let t=0;t<16;t++){const n=this.byCombo[aa(t)];if(n)for(let t=0;t<n.length;t++)for(;t<n.length&&n[t][1]===e;)n.splice(t,1)}}}function aa(e){const t=["Read","Append","Write","Control"],n=[];for(let i=0;i<4;i++)e&1<<i&&n.push("http://www.w3.org/ns/auth/acl#"+t[i]);return n.sort(),n.join("\n")}class oa{mainCombo;defaultsCombo;isContainer;defaultsDiffer;rootElement;isUsingDefaults;constructor(e,t,n,i,a,o,s,r,c,l,p,u){if(this.subject=e,this.noun=t,this.context=n,this.statusElement=i,this.targetIsProtected=a,this.targetDoc=o,this.targetACLDoc=s,this.defaultHolder=r,this.defaultACLDoc=c,this.prospectiveDefaultHolder=l,this.store=p,this.dom=u,this.rootElement=u.createElement("div"),this.rootElement.setAttribute("style",tt.aclGroupContent),this.isContainer="/"===o.uri.slice(-1),r&&c){this.isUsingDefaults=!0;const e=we(this.targetDoc,s,r,c);this.mainCombo=new ia(o,s,this,e,{defaults:this.isContainer}),this.defaultsCombo=null,this.defaultsDiffer=!1}else this.isUsingDefaults=!1,this.mainCombo=new ia(o,s,this,p),this.defaultsCombo=new ia(o,s,this,p,{defaults:this.isContainer}),this.defaultsDiffer=!Ee(this.mainCombo.aclMap,this.defaultsCombo.aclMap)}get isEditable(){return!this.isUsingDefaults}render(){if(this.rootElement.innerHTML="",this.isUsingDefaults){if(this.renderStatus(`The sharing for this ${this.noun} is the default for folder `),this.defaultHolder){const e=this.statusElement.appendChild(this.dom.createElement("a"));e.href=this.defaultHolder.uri,e.innerText=pa(this.defaultHolder)}}else!this.defaultsDiffer&&this.isContainer?this.renderStatus("This is also the default for things in this folder."):this.renderStatus("");return this.rootElement.appendChild(this.mainCombo.render()),this.defaultsCombo&&this.defaultsDiffer?(this.rootElement.appendChild(this.renderRemoveDefaultsController()),this.rootElement.appendChild(this.defaultsCombo.render())):this.isEditable&&this.isContainer&&this.rootElement.appendChild(this.renderAddDefaultsController()),!this.targetIsProtected&&this.isUsingDefaults?this.rootElement.appendChild(this.renderAddAclsController()):this.targetIsProtected||this.rootElement.appendChild(this.renderRemoveAclsController()),this.rootElement}renderRemoveAclsController(){const e=this.dom.createElement("button");return e.innerText=`Remove custom sharing settings for this ${this.noun} -- just use default${this.prospectiveDefaultHolder?` for ${F(this.prospectiveDefaultHolder)}`:""}`,e.setAttribute("style",tt.bigButton),e.addEventListener("click",()=>this.removeAcls().then(()=>this.render()).catch(e=>this.renderStatus(e))),e}renderAddAclsController(){const e=this.dom.createElement("button");return e.innerText=`Set specific sharing for this ${this.noun}`,e.setAttribute("style",tt.bigButton),e.addEventListener("click",()=>this.addAcls().then(()=>this.render()).catch(e=>this.renderStatus(e))),e}renderAddDefaultsController(){const e=this.dom.createElement("div");e.setAttribute("style",tt.defaultsController);const t=e.appendChild(this.dom.createElement("div"));t.innerText="Sharing for things within the folder currently tracks sharing for the folder.",t.setAttribute("style",tt.defaultsControllerNotice);const n=e.appendChild(this.dom.createElement("button"));return n.innerText="Set the sharing of folder contents separately from the sharing for the folder",n.setAttribute("style",tt.bigButton),n.addEventListener("click",()=>this.addDefaults().then(()=>this.render())),e}renderRemoveDefaultsController(){const e=this.dom.createElement("div");e.setAttribute("style",tt.defaultsController);const t=e.appendChild(this.dom.createElement("div"));t.innerText="Access to things within this folder:",t.setAttribute("style",tt.defaultsControllerNotice);const n=e.appendChild(this.dom.createElement("button"));return n.innerText="Set default for folder contents to just track the sharing for the folder",n.setAttribute("style",tt.bigButton),n.addEventListener("click",()=>this.removeDefaults().then(()=>this.render()).catch(e=>this.renderStatus(e))),e}renderTemporaryStatus(e){this.statusElement.setAttribute("style",tt.aclControlBoxStatusRevealed),this.statusElement.innerText=e,this.statusElement.setAttribute("style",tt.temporaryStatusInit),setTimeout(()=>{this.statusElement.setAttribute("style",tt.temporaryStatusEnd)}),setTimeout(()=>{this.statusElement.innerText=""},5e3)}renderStatus(e){e||this.statusElement.setAttribute("style",tt.aclControlBoxStatusRevealed),this.statusElement.innerText=e}async addAcls(){if(!this.defaultHolder||!this.defaultACLDoc){const e="Unable to find defaults to copy";return xe.z3(e),Promise.reject(e)}we(this.targetDoc,this.targetACLDoc,this.defaultHolder,this.defaultACLDoc).statements.forEach(e=>this.store.add(e.subject,e.predicate,e.object,this.targetACLDoc));try{return await this.store.fetcher.putBack(this.targetACLDoc),this.isUsingDefaults=!1,Promise.resolve()}catch(e){const t=` Error writing back access control file! ${e}`;return xe.z3(t),Promise.reject(t)}}async addDefaults(){this.defaultsCombo=new ia(this.targetDoc,this.targetACLDoc,this,this.store,{defaults:!0}),this.defaultsDiffer=!0}async removeAcls(){try{await this.store.fetcher.delete(this.targetACLDoc.uri,{}),this.isUsingDefaults=!0;try{this.prospectiveDefaultHolder=await Be(this.targetDoc.uri)}catch(e){xe.R8(e)}}catch(e){const t=`Error deleting access control file: ${this.targetACLDoc}: ${e}`;return xe.z3(t),Promise.reject(t)}}async removeDefaults(){const e=this.defaultsCombo;try{this.defaultsCombo=null,this.defaultsDiffer=!1,await this.save()}catch(t){return this.defaultsCombo=e,this.defaultsDiffer=!0,xe.z3(t),Promise.reject(t)}}save(){const e=(0,g.graph)();this.isContainer?this.defaultsCombo&&this.defaultsDiffer?(Se(e,this.targetDoc,this.mainCombo.byCombo,this.targetACLDoc,!0),Se(e,this.targetDoc,this.defaultsCombo.byCombo,this.targetACLDoc,!1,!0)):Se(e,this.targetDoc,this.mainCombo.byCombo,this.targetACLDoc,!0,!0):Se(e,this.targetDoc,this.mainCombo.byCombo,this.targetACLDoc,!0),e.fetcher=(0,g.fetcher)(e,{fetch:this.store.fetcher._fetch});const t=e.updater||new g.UpdateManager(e);return new Promise((n,i)=>{t.put(this.targetACLDoc,e.statementsMatching(void 0,void 0,void 0,this.targetACLDoc),"text/turtle",(t,a,o)=>{if(!a)return i(new Error(`ACL file save failed: ${o}`));this.store.fetcher.unload(this.targetACLDoc),this.store.add(e.statements),this.store.fetcher.requested[this.targetACLDoc.uri]="done",this.mainCombo.store=this.store,this.defaultsCombo&&(this.defaultsCombo.store=this.store),this.defaultsDiffer=!!this.defaultsCombo&&!Ee(this.mainCombo.aclMap,this.defaultsCombo.aclMap),xe.Rm("ACL modification: success!"),n()})})}}let sa=window;const ra=Symbol("prevent double triggering of drop event");function ca(e){e.stopPropagation(),e.preventDefault()}function la(e){e.dataTransfer.files.length>0&&(sa.confirm("Are you sure you want to drop this file here? (Cancel opens it in a new tab)")||(e.stopPropagation(),e.preventDefault(),(0,xe.Rm)("@@@@ document-level DROP suppressed: "+e.dataTransfer.dropEffect)))}function pa(e){let t=e.uri;"/"===t.slice(-1)&&(t=t.slice(0,-1));const n=t.lastIndexOf("/");return n>=0&&(t=t.slice(n+1)),t||"/"}const ua={adoptACLDefault:we,readACL:Ce,sameACL:Ee,ACLunion:ke,loadUnionACL:Ae,ACLbyCombination:_e,makeACLGraph:Te,makeACLGraphbyCombo:Se,ACLToString:function(e){return je(_e(e))},comboToString:je,makeACLString:function(e,t,n){const i=(0,g.graph)();return Te(i,e,t,n),(0,g.serialize)(n,i,n.uri,"text/turtle")||""},putACLObject:Le,putACLbyCombo:Re,fixIndividualCardACL:function(e,t,n){const i=ye.each(void 0,b.vcard("hasMember"),e);i?Ne(e,i,t,n):(t("This card is in no groups"),n(!0))},fixIndividualACL:Ne,setACL:function(e,t,n){const i=ye.any(e,v.ACL_LINK);if(!ye.fetcher)throw new Error("Store has no fetcher");i?ye.fetcher.webOperation("PUT",i.value,{data:t,contentType:"text/turtle"}).then(e=>{n(e.ok,e.error||"")}):ye.fetcher.nowOrWhenFetched(e,void 0,function(i,a){if(!i)return n(i,"Gettting headers for ACL: "+a);const o=ye.any(e,v.ACL_LINK);if(o){if(!ye.fetcher)throw new Error("Store has no fetcher");ye.fetcher.webOperation("PUT",o.value,{data:t,contentType:"text/turtle"}).then(e=>{n(e.ok,e.error||"")})}else n(!1,"No Link rel=ACL header for "+e)})},getACLorDefault:Ie,getACL:$e},da={preventBrowserDropEvents:function(e){if((0,xe.Rm)("preventBrowserDropEvents called."),void 0!==sa){if(sa[ra])return;sa[ra]=!0}e.addEventListener("drop",la,!1),e.addEventListener("dragenter",ca,!1),e.addEventListener("dragover",ca,!1)},shortNameForFolder:pa,ACLControlBox5:function(e,t,n,i){const a=t.dom,o=e.doc(),s=a.createElement("div");s.setAttribute("style",tt.aclControlBoxContainer);const r=s.appendChild(a.createElement("h1"));r.textContent=`Sharing for ${n} ${F(e)}`,r.setAttribute("style",tt.aclControlBoxHeader);const c=s.appendChild(a.createElement("div"));c.setAttribute("style",tt.aclControlBoxStatus);try{(async function(e,t,n,i,a,o,s){return new Promise((r,c)=>Ie(e,async(e,l,p,u,d,m)=>{if(!e)return c(new Error(`Error reading ${l?"":" default "}ACL. status ${p}: ${u}`));const f=function(e){const t=e.uri.split("#")[0],n=t.slice(0,-1).lastIndexOf("/"),i=t.indexOf("//");return i>=0&&n<i+2||n<0?null:t.slice(0,n+1)}(p),h=function(e,t,n){return n.holds(e,b.rdf("type"),b.space("Storage"),t)}(p,u,t)||function(e){return e.uri===e.site().uri}(p);if(!h&&f)try{const e=await Be(f);return r(g(e))}catch(e){(0,xe.R8)(e)}return r(g());function g(e){return new oa(n,i,a,s,h,p,u,d,m,e,t,o)}}))})(o,i,e,n,t,a,c).then(e=>s.appendChild(e.render()))}catch(e){c.innerText=e}return s}},ma=v.solidLogicSingleton.store;const fa={newThingUI:function(e,t,n){const i=e.dom,a=e.div;if(e.me&&!e.me.uri)throw new Error("newThingUI: Invalid userid: "+e.me);const o="padding: 0.7em; width: 2em; height: 2em;",s=a.appendChild(i.createElement("img"));let r=!1;s.setAttribute("src",st.Pt.iconBase+"noun_34653_green.svg"),s.setAttribute("style",o),s.setAttribute("title","Add another tool");const c=function(e){const t=a.appendChild(i.createElement("pre"));t.setAttribute("style","background-color: pink"),t.appendChild(i.createTextNode(e))};function l(e){for(let t=0;t<u.length;t++){let n=o+e;u[t].disabled&&(n+="opacity: 0.3;"),u[t].setAttribute("style",n)}}function p(e){r=!r,s.setAttribute("style",o+(r?"background-color: yellow;":"")),l(r?"":"display: none;")}s.addEventListener("click",p);const u=[],d=Object.values(n).filter(e=>e.mintNew),m=d.reduce((e,t)=>(t.mintClass&&(e[t.mintClass.uri]=(e[t.mintClass.uri]||0)+1),e),{});d.forEach(n=>{const a=e.div.appendChild(i.createElement("img"));a.setAttribute("src",n.icon);const s=n.mintClass?m[n.mintClass.uri]>1?`${F(n.mintClass)} (using ${n.name} pane)`:F(n.mintClass):n.name+" @@";a.setAttribute("title","Make new "+s),a.setAttribute("style",o+"display: none;"),u.push(a),a.disabled||a.addEventListener("click",function(r){var u;!function(e){l("display: none;"),e.setAttribute("style",o+"background-color: yellow;")}(a),u={event:r,folder:e.folder||null,iconEle:a,pane:n,noun:s,noIndexHTML:!0,div:e.div,me:e.me,dom:e.dom,refreshTarget:e.refreshTarget},new Promise(function(n,a){let o;function s(n,o){Fi(e).then(e=>{const s=Object.assign({newBase:o,folder:u.folder||void 0,workspace:n},u);for(const e in u)s[e]=u[e];xe.Rm(`newThingUI: Minting new ${s.pane.name} at ${s.newBase}`),u.pane.mintNew(t,s).then(function(e){if(!e||!e.newInstance)throw new Error("Cannot mint new - missing newInstance");if(e.folder){const t=e.newInstance.uri.slice(e.folder.uri.length).includes("/");xe.Rm(" new thing is packge? "+t),t?ma.add(e.folder,b.ldp("contains"),ma.sym(e.newBase),e.folder.doc()):ma.add(e.folder,b.ldp("contains"),e.newInstance,e.folder.doc()),e.refreshTarget&&e.refreshTarget.refresh&&e.refreshTarget.refresh()}else{const t=u.div.appendChild(i.createElement("p"));t.setAttribute("style","font-size: 120%;"),t.innerHTML="Your <a target='_blank' href='"+e.newInstance.uri+"'><b>new "+u.noun+"</b></a> is ready to be set up. <br/><br/><a target='_blank' href='"+e.newInstance.uri+"'>Go to your new "+u.noun+".</a>"}p()}).catch(function(e){c(e),a(e)})},e=>{c("Error logging on: "+e)})}const r=u.pane;if(u.noun=r.mintClass?F(r.mintClass):r.name,u.appPathSegment=u.noun.slice(0,1).toUpperCase()+u.noun.slice(1),u.folder){const e=function(e){if(e){let t=u.folder.uri;t.endsWith("/")||(t+="/"),t=t+encodeURIComponent(e)+"/",s(null,t)}else p()};zt(i,0,u.div,b.foaf("name"),null,u.noun).then(e)}else o=Ji(i,{noun:u.noun,appPathSegment:u.appPathSegment},s),u.div.appendChild(o)})})})}},ha=v.solidLogicSingleton.store;const ga={matrixForQuery:function(e,t,n,i,a,o,s){const r=e.createElement("table"),c=e.createElement("tr");c.appendChild(e.createElement("td")).setAttribute("class","MatrixCorner"),r.appendChild(c),r.lastHeader=c;let l=[];const p=[],u=function(e,t,n,i){for(;e.firstChild;)e.removeChild(e.firstChild);e.setAttribute("style",""),e.style.textAlign="center",o.cellFunction?o.cellFunction(e,t,n,i):(e.textContent=F(i),e.setAttribute("style","padding: 0.3em")),delete e.old},d=function(t){const n=t.toNT();if(p[n])return p[n];const i=e.createElement("tr"),a=i.appendChild(e.createElement("td"));a.setAttribute("style","padding: 0.3em;"),a.textContent=F(t),"NamedNode"===t.termType&&ha.fetcher.nowOrWhenFetched(t.uri.split("#")[0],void 0,function(e,n,i){e&&(a.textContent=F(t))});for(let n=0;n<l.length;n++)u(i.appendChild(e.createElement("td")),g.fromNT(l[n]),t,null);i.dataValueNT=n,p[n]=i;for(let e=r.lastHeader.nextSibling;e;e=e.nextSibling)if(n>e.dataValueNT&&o&&o.yDecreasing||n<e.dataValueNT&&(!o||!o.yDecreasing))return r.insertBefore(i,e);return r.appendChild(i)},m=function(t){const n=t.toNT();let i=null;for(let e=0;e<l.length;e++){if(l[e]===n)return e;if(n>l[e]&&o.xDecreasing||n<l[e]&&!o.xDecreasing){l=l.slice(0,e).concat([n]).concat(l.slice(e)),i=e;break}}null===i&&(i=l.length,l.push(n));for(let n=r.firstChild;n;n=n.nextSibling){const a=n.dataValueNT,o=e.createElement("td");if(o.style.textAlign="center",n===r.firstChild?o.textContent=F(t):u(o,t,g.fromNT(a),null),i===l.length-1)n.appendChild(o);else{let e=n.firstChild;for(let t=0;t<i+1;t++)e=e.nextSibling;n.insertBefore(o,e)}}return i},f=function(){let e,t;const n=[],i=[];if(o.set_y)for(let e=0;e<o.set_y.length;e++)i[o.set_y[e]]=!0;if(o.set_x)for(let e=0;e<o.set_x.length;e++)n[m(o.set_x[e])+1]=!0;for(let a=1;a<r.children.length;a++){e=r.children[a];for(let a=1;a<e.children.length;a++)if(t=e.children[a],t.old){const n=g.fromNT(e.dataValueNT),i=g.fromNT(l[a-1]);u(t,i,n,null)}else i[e.dataValueNT]=!0,n[a]=!0}for(let t=0;t<r.children.length;t++)if(e=r.children[t],t>0&&!i[e.dataValueNT])delete p[e.dataValueNT],r.removeChild(e);else for(let t=e.children.length-1;t>0;t--){const i=e.children[t];n[t]||e.removeChild(i)}const a=[];for(let e=0;e<l.length;e++)n[e+1]&&a.push(l[e]);l=a};r.refresh=function(){!function(){for(let e=1;e<r.children.length;e++){const t=r.children[e];for(let e=1;e<t.children.length;e++)t.children[e].old=!0}}(),ha.query(t,h,void 0,f)};const h=function(e){const t=e[n.toString()],o=e[i.toString()],s=e[a.toString()],r=d(o),c=m(t),l=r.children[c+1];u(l,t,o,s)};if(o.set_y)for(let e=0;e<o.set_y.length;e++)d(o.set_y[e]);if(o.set_x)for(let e=0;e<o.set_x.length;e++)m(o.set_x[e]);return ha.query(t,h,void 0,s),r}},ba=st.Pt.iconBase+"noun_Camera_1618446_000000.svg",va=st.Pt.iconBase+"noun_479395.svg";function xa(e,t,n,i){const a=e.createElement("div");let o,s,r,c;const l=a.appendChild(e.createElement("table")),p=l.appendChild(e.createElement("tr")).appendChild(e.createElement("td"));p.setAttribute("colspan","4");const u=l.appendChild(e.createElement("tr"));u.appendChild(e.createElement("td")).appendChild(Ft(e)).addEventListener("click",e=>{b(),i(null)});const d=u.appendChild(e.createElement("td")).appendChild(Ut(e,va,"Retake"));d.addEventListener("click",e=>{p.removeChild(c),h()}),d.style.visibility="collapse";const m=u.appendChild(e.createElement("td")).appendChild(Ut(e,st.Pt.iconBase+"noun_10636.svg","Snap"));m.addEventListener("click",function(){c=e.createElement("canvas"),c.setAttribute("width",tt.canvasWidth),c.setAttribute("height",tt.canvasHeight),c.setAttribute("style",tt.controlStyle),p.appendChild(c);c.getContext("2d").drawImage(r,0,0,c.width,c.height),r.parentNode.removeChild(r),c.toBlob(e=>{const t=`got blob type ${e.type} size ${e.size}`;xe.Rm(t),o=n(),s=e,f.style.visibility="visible",d.style.visibility="visible",m.style.visibility="collapse"},"image/png")}),m.style.visibility="collapse";const f=u.appendChild(e.createElement("td")).appendChild(Pt(e));function h(){if(r=p.appendChild(e.createElement("video")),r.setAttribute("controls","1"),r.setAttribute("autoplay","1"),r.setAttribute("style",tt.controlStyle),!navigator.mediaDevices)throw new Error("navigator.mediaDevices not available");navigator.mediaDevices.getUserMedia(g).then(e=>{r.srcObject=e,m.style.visibility="visible",f.style.visibility="collapse",d.style.visibility="collapse"})}f.addEventListener("click",e=>{!function(e,n){const a=e.type;xe.Rm("Putting "+e.size+" bytes of "+a+" to "+n),t.fetcher.webOperation("PUT",n.uri,{data:e,contentType:a}).then(e=>{xe.Rm("ok saved "+n),b(),i(n)},e=>{b(),alert(e)})}(s,o)}),f.style.visibility="collapse";const g={video:!0};function b(){r&&r.srcObject&&r.srcObject.getVideoTracks().forEach(e=>e.stop())}return h(),a}const ya={cameraCaptureControl:xa,cameraButton:function(e,t,n,i){const a=e.createElement("div"),o=Ut(e,ba,"Take picture");let s;async function r(e){a.removeChild(s),a.appendChild(o),i(e)}return a.appendChild(o),o.addEventListener("click",i=>{a.removeChild(o),s=xa(e,t,n,r),a.appendChild(s)}),a}},wa={icons:st.Pt,ns:b,rdf:g,style:tt,widgets:r};async function Ca(e){return await v.store.fetcher.load(e),!(v.store.statementsMatching(null,b.dct("created"),null,e).length>0)}class Ea{constructor(e,t,n){this.root=e,this.rootFolder=e.dir(),this.leafFileName=t||"index.ttl",this.membershipProperty=n||b.wf("leafObject")}leafDocumentFromDate(e){let t=e.toISOString().split("T")[0].replace(/-/g,"/");return t=this.root.dir().uri+t+"/"+this.leafFileName,v.store.sym(t)}dateFromLeafDocument(e){const t=this.rootFolder.uri.length,n=e.uri.slice(t,t+10).replace(/\//g,"-");return new Date(n)}async loadPrevious(e,t){async function n(e,i){function a(e){const t=e.uri.slice(0,-1).split("/").slice(-1)[0];return!!"0123456789".includes(t[0])}function o(e){return(e=e.filter(a)).sort(),t||e.reverse(),e.pop()}const s=e.dir();try{await v.store.fetcher.load(s);let n=v.store.each(s,b.ldp("contains"));n=n.filter(function(n){return!(t?n.uri>=e.uri:n.uri<=e.uri)});const i=o(n);if(i)return i}catch(e){if(!e.response||!e.response.status||404!==e.response.status)throw xe.Rm("*** Error NON 404 for chat parent file "+s),new Error(`*** ${e.message} for chat folder ${s}`);xe.Rm("Error 404 for chat parent file "+s)}if(0===i)return null;const r=await n(s,i-1);if(!r)return null;await v.store.fetcher.load(r);return o(v.store.each(r,b.ldp("contains")))}let i=this.leafDocumentFromDate(e).dir();for(;;){const t=await n(i,3);if(!t)return null;{const n=v.store.sym(t.uri+this.leafFileName),a=this.dateFromLeafDocument(n);if(!await Ca(n))return a;e=a,i=this.leafDocumentFromDate(e).dir()}}}async firstLeaf(e){const t=g.graph(),n=new g.Fetcher(t);async function i(i){delete n.requested[i.uri],await n.load(i,{force:!0});let a=t.each(i,b.ldp("contains"));if(a=a.filter(function(e){const t=e.uri.slice(0,-1).split("/").slice(-1)[0];return!!"0123456789".includes(t[0])}),0===a.length)throw new Error(" @@@ No children to parent2 "+i);return a.sort(),e&&a.reverse(),a[0]}const a=await i(this.root.dir()),o=await i(a),s=await i(o),r=g.sym(s.uri+"chat.ttl");await n.load(r);const c=t.each(this.root,this.membershipProperty,null,r);if(0===c.length){const e=" INCONSISTENCY -- no chat leafObject in file "+r;throw xe.uP(e),new Error(e)}const l=c.map(e=>[t.any(e,b.dct("created")),e]);return l.sort(),e&&l.reverse(),l[0][1]}}function ka(e,t=""){if("number"!=typeof e){throw new TypeError(`${t&&`"${t}" `}expected number, got ${typeof e}`)}if(!Number.isSafeInteger(e)||e<0){throw new RangeError(`${t&&`"${t}" `}expected integer >= 0, got ${e}`)}}function Aa(e,t,n=""){const i=(a=e)instanceof Uint8Array||ArrayBuffer.isView(a)&&"Uint8Array"===a.constructor.name&&"BYTES_PER_ELEMENT"in a&&1===a.BYTES_PER_ELEMENT;var a;const o=e?.length,s=void 0!==t;if(!i||s&&o!==t){const a=(n&&`"${n}" `)+"expected Uint8Array"+(s?` of length ${t}`:"")+", got "+(i?`length=${o}`:"type="+typeof e);if(!i)throw new TypeError(a);throw new RangeError(a)}return e}function _a(e,t=!0){if(e.destroyed)throw new Error("Hash instance has been destroyed");if(t&&e.finished)throw new Error("Hash#digest() has already been called")}function Ta(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function Sa(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function ja(e,t){return e<<32-t|e>>>t}const La=(()=>"function"==typeof Uint8Array.from([]).toHex&&"function"==typeof Uint8Array.fromHex)(),Ra=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function Na(e){if(Aa(e),La)return e.toHex();let t="";for(let n=0;n<e.length;n++)t+=Ra[e[n]];return t}const Ia=48,$a=57,Ba=65,Da=70,Oa=97,Ma=102;function Ua(e){return e>=Ia&&e<=$a?e-Ia:e>=Ba&&e<=Da?e-(Ba-10):e>=Oa&&e<=Ma?e-(Oa-10):void 0}function Fa(e){if("string"!=typeof e)throw new TypeError("hex string expected, got "+typeof e);if(La)try{return Uint8Array.fromHex(e)}catch(e){if(e instanceof SyntaxError)throw new RangeError(e.message);throw e}const t=e.length,n=t/2;if(t%2)throw new RangeError("hex string expected, got unpadded hex of length "+t);const i=new Uint8Array(n);for(let t=0,a=0;t<n;t++,a+=2){const n=Ua(e.charCodeAt(a)),o=Ua(e.charCodeAt(a+1));if(void 0===n||void 0===o){const t=e[a]+e[a+1];throw new RangeError('hex string expected, got non-hex character "'+t+'" at index '+a)}i[t]=16*n+o}return i}function Pa(e,t={}){const n=(t,n)=>e(n).update(t).digest(),i=e(void 0);return n.outputLen=i.outputLen,n.blockLen=i.blockLen,n.canXOF=i.canXOF,n.create=t=>e(t),Object.assign(n,t),Object.freeze(n)}function za(e=32){ka(e,"bytesLength");const t="object"==typeof globalThis?globalThis.crypto:null;if("function"!=typeof t?.getRandomValues)throw new Error("crypto.getRandomValues must be defined");if(e>65536)throw new RangeError(`"bytesLength" expected <= 65536, got ${e}`);return t.getRandomValues(new Uint8Array(e))}const qa=e=>({oid:Uint8Array.from([6,9,96,134,72,1,101,3,4,2,e])});function Ha(e,t,n){return e&t^~e&n}function Va(e,t,n){return e&t^e&n^t&n}class Ga{blockLen;outputLen;canXOF=!1;padOffset;isLE;buffer;view;finished=!1;length=0;pos=0;destroyed=!1;constructor(e,t,n,i){this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=i,this.buffer=new Uint8Array(e),this.view=Sa(this.buffer)}update(e){_a(this),Aa(e);const{view:t,buffer:n,blockLen:i}=this,a=e.length;for(let o=0;o<a;){const s=Math.min(i-this.pos,a-o);if(s===i){const t=Sa(e);for(;i<=a-o;o+=i)this.process(t,o);continue}n.set(e.subarray(o,o+s),this.pos),this.pos+=s,o+=s,this.pos===i&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){_a(this),function(e,t){Aa(e,void 0,"digestInto() output");const n=t.outputLen;if(e.length<n)throw new RangeError('"digestInto() output" expected to be of length >='+n)}(e,this),this.finished=!0;const{buffer:t,view:n,blockLen:i,isLE:a}=this;let{pos:o}=this;t[o++]=128,Ta(this.buffer.subarray(o)),this.padOffset>i-o&&(this.process(n,0),o=0);for(let e=o;e<i;e++)t[e]=0;n.setBigUint64(i-8,BigInt(8*this.length),a),this.process(n,0);const s=Sa(e),r=this.outputLen;if(r%4)throw new Error("_sha2: outputLen must be aligned to 32bit");const c=r/4,l=this.get();if(c>l.length)throw new Error("_sha2: outputLen bigger than state");for(let e=0;e<c;e++)s.setUint32(4*e,l[e],a)}digest(){const{buffer:e,outputLen:t}=this;this.digestInto(e);const n=e.slice(0,t);return this.destroy(),n}_cloneInto(e){e||=new this.constructor,e.set(...this.get());const{blockLen:t,buffer:n,length:i,finished:a,destroyed:o,pos:s}=this;return e.destroyed=o,e.finished=a,e.length=i,e.pos=s,i%t&&e.buffer.set(n),e}clone(){return this._cloneInto()}}const Wa=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]);const Ja=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),Qa=new Uint32Array(64);class Za extends Ga{constructor(e){super(64,e,8,!1)}get(){const{A:e,B:t,C:n,D:i,E:a,F:o,G:s,H:r}=this;return[e,t,n,i,a,o,s,r]}set(e,t,n,i,a,o,s,r){this.A=0|e,this.B=0|t,this.C=0|n,this.D=0|i,this.E=0|a,this.F=0|o,this.G=0|s,this.H=0|r}process(e,t){for(let n=0;n<16;n++,t+=4)Qa[n]=e.getUint32(t,!1);for(let e=16;e<64;e++){const t=Qa[e-15],n=Qa[e-2],i=ja(t,7)^ja(t,18)^t>>>3,a=ja(n,17)^ja(n,19)^n>>>10;Qa[e]=a+Qa[e-7]+i+Qa[e-16]|0}let{A:n,B:i,C:a,D:o,E:s,F:r,G:c,H:l}=this;for(let e=0;e<64;e++){const t=l+(ja(s,6)^ja(s,11)^ja(s,25))+Ha(s,r,c)+Ja[e]+Qa[e]|0,p=(ja(n,2)^ja(n,13)^ja(n,22))+Va(n,i,a)|0;l=c,c=r,r=s,s=o+t|0,o=a,a=i,i=n,n=t+p|0}n=n+this.A|0,i=i+this.B|0,a=a+this.C|0,o=o+this.D|0,s=s+this.E|0,r=r+this.F|0,c=c+this.G|0,l=l+this.H|0,this.set(n,i,a,o,s,r,c,l)}roundClean(){Ta(Qa)}destroy(){this.destroyed=!0,this.set(0,0,0,0,0,0,0,0),Ta(this.buffer)}}class Ya extends Za{A=0|Wa[0];B=0|Wa[1];C=0|Wa[2];D=0|Wa[3];E=0|Wa[4];F=0|Wa[5];G=0|Wa[6];H=0|Wa[7];constructor(){super(32)}}const Ka=Pa(()=>new Ya,qa(1));
14
+ /*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
15
+ const Xa=(e,t,n)=>Aa(e,t,n),eo=ka,to=Na,no=(...e)=>function(...e){let t=0;for(let n=0;n<e.length;n++){const i=e[n];Aa(i),t+=i.length}const n=new Uint8Array(t);for(let t=0,i=0;t<e.length;t++){const a=e[t];n.set(a,i),i+=a.length}return n}(...e),io=BigInt(0),ao=BigInt(1);function oo(e,t=""){if("boolean"!=typeof e){throw new TypeError((t&&`"${t}" `)+"expected boolean, got type="+typeof e)}return e}function so(e){if("bigint"==typeof e){if(!ho(e))throw new RangeError("positive bigint expected, got "+e)}else eo(e);return e}function ro(e,t=""){if("number"!=typeof e){throw new TypeError((t&&`"${t}" `)+"expected number, got type="+typeof e)}if(!Number.isSafeInteger(e)){throw new RangeError((t&&`"${t}" `)+"expected safe integer, got "+e)}}function co(e){const t=so(e).toString(16);return 1&t.length?"0"+t:t}function lo(e){if("string"!=typeof e)throw new TypeError("hex string expected, got "+typeof e);return""===e?io:BigInt("0x"+e)}function po(e){return lo(Na(e))}function uo(e){return lo(Na(function(e){return Uint8Array.from(Xa(e))}(Aa(e)).reverse()))}function mo(e,t){if(ka(t),0===t)throw new RangeError("zero length");const n=(e=so(e)).toString(16);if(n.length>2*t)throw new RangeError("number too large");return Fa(n.padStart(2*t,"0"))}function fo(e,t){return mo(e,t).reverse()}const ho=e=>"bigint"==typeof e&&io<=e;function go(e,t,n,i){if(!function(e,t,n){return ho(e)&&ho(t)&&ho(n)&&t<=e&&e<n}(t,n,i))throw new RangeError("expected valid "+e+": "+n+" <= n < "+i+", got "+t)}function bo(e){if(e<io)throw new Error("expected non-negative bigint, got "+e);let t;for(t=0;e>io;e>>=ao,t+=1);return t}const vo=e=>(ao<<BigInt(e))-ao;function xo(e,t={},n={}){if("[object Object]"!==Object.prototype.toString.call(e))throw new TypeError("expected valid options object");const i=(t,n)=>Object.entries(t).forEach(([t,i])=>function(t,n,i){if(!i&&"function"!==n&&!Object.hasOwn(e,t))throw new TypeError(`param "${t}" is invalid: expected own property`);const a=e[t];if(i&&void 0===a)return;const o=typeof a;if(o!==n||null===a)throw new TypeError(`param "${t}" is invalid: expected ${n}, got ${o}`)}(t,i,n));i(t,!1),i(n,!0)}const yo=BigInt(0),wo=BigInt(1),Co=BigInt(2),Eo=BigInt(3),ko=BigInt(4),Ao=BigInt(5),_o=BigInt(7),To=BigInt(8),So=BigInt(9),jo=BigInt(16);function Lo(e,t){if(t<=yo)throw new Error("mod: expected positive modulus, got "+t);const n=e%t;return n>=yo?n:t+n}function Ro(e,t,n){if(t<yo)throw new Error("pow2: expected non-negative exponent, got "+t);let i=e;for(;t-- >yo;)i*=i,i%=n;return i}function No(e,t){if(e===yo)throw new Error("invert: expected non-zero number");if(t<=yo)throw new Error("invert: expected positive modulus, got "+t);let n=Lo(e,t),i=t,a=yo,o=wo,s=wo,r=yo;for(;n!==yo;){const e=i/n,t=i-n*e,c=a-s*e,l=o-r*e;i=n,n=t,a=s,o=r,s=c,r=l}if(i!==wo)throw new Error("invert: does not exist");return Lo(a,t)}function Io(e,t,n){const i=e;if(!i.eql(i.sqr(t),n))throw new Error("Cannot find square root")}function $o(e,t){const n=e,i=(n.ORDER+wo)/ko,a=n.pow(t,i);return Io(n,a,t),a}function Bo(e,t){const n=e,i=(n.ORDER-Ao)/To,a=n.mul(t,Co),o=n.pow(a,i),s=n.mul(t,o),r=n.mul(n.mul(s,Co),o),c=n.mul(s,n.sub(r,n.ONE));return Io(n,c,t),c}function Do(e){if(e<Eo)throw new Error("sqrt is not defined for small field");let t=e-wo,n=0;for(;t%Co===yo;)t/=Co,n++;let i=Co;const a=Ho(e);for(;1===Po(a,i);)if(i++>1e3)throw new Error("Cannot find square root: probably non-prime P");if(1===n)return $o;let o=a.pow(i,t);const s=(t+wo)/Co;return function(e,i){const a=e;if(a.is0(i))return i;if(1!==Po(a,i))throw new Error("Cannot find square root");let r=n,c=a.mul(a.ONE,o),l=a.pow(i,t),p=a.pow(i,s);for(;!a.eql(l,a.ONE);){if(a.is0(l))return a.ZERO;let e=1,t=a.sqr(l);for(;!a.eql(t,a.ONE);)if(e++,t=a.sqr(t),e===r)throw new Error("Cannot find square root");const n=wo<<BigInt(r-e-1),i=a.pow(c,n);r=e,c=a.sqr(i),l=a.mul(l,c),p=a.mul(p,i)}return p}}function Oo(e){return e%ko===Eo?$o:e%To===Ao?Bo:e%jo===So?function(e){const t=Ho(e),n=Do(e),i=n(t,t.neg(t.ONE)),a=n(t,i),o=n(t,t.neg(i)),s=(e+_o)/jo;return(e,t)=>{const n=e;let r=n.pow(t,s),c=n.mul(r,i);const l=n.mul(r,a),p=n.mul(r,o),u=n.eql(n.sqr(c),t),d=n.eql(n.sqr(l),t);r=n.cmov(r,c,u),c=n.cmov(p,l,d);const m=n.eql(n.sqr(c),t),f=n.cmov(r,c,m);return Io(n,f,t),f}}(e):Do(e)}const Mo=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function Uo(e,t,n){const i=e;if(n<yo)throw new Error("invalid exponent, negatives unsupported");if(n===yo)return i.ONE;if(n===wo)return t;let a=i.ONE,o=t;for(;n>yo;)n&wo&&(a=i.mul(a,o)),o=i.sqr(o),n>>=wo;return a}function Fo(e,t,n=!1){const i=e,a=new Array(t.length).fill(n?i.ZERO:void 0),o=t.reduce((e,t,n)=>i.is0(t)?e:(a[n]=e,i.mul(e,t)),i.ONE),s=i.inv(o);return t.reduceRight((e,t,n)=>i.is0(t)?e:(a[n]=i.mul(e,a[n]),i.mul(e,t)),s),a}function Po(e,t){const n=e,i=(n.ORDER-wo)/Co,a=n.pow(t,i),o=n.eql(a,n.ONE),s=n.eql(a,n.ZERO),r=n.eql(a,n.neg(n.ONE));if(!o&&!s&&!r)throw new Error("invalid Legendre symbol result");return o?1:s?0:-1}const zo=new WeakMap;class qo{ORDER;BITS;BYTES;isLE;ZERO=yo;ONE=wo;_lengths;_mod;constructor(e,t={}){if(e<=wo)throw new Error("invalid field: expected ORDER > 1, got "+e);let n;this.isLE=!1,null!=t&&"object"==typeof t&&("number"==typeof t.BITS&&(n=t.BITS),"function"==typeof t.sqrt&&Object.defineProperty(this,"sqrt",{value:t.sqrt,enumerable:!0}),"boolean"==typeof t.isLE&&(this.isLE=t.isLE),t.allowedLengths&&(this._lengths=Object.freeze(t.allowedLengths.slice())),"boolean"==typeof t.modFromBytes&&(this._mod=t.modFromBytes));const{nBitLength:i,nByteLength:a}=function(e,t){if(void 0!==t&&eo(t),e<=yo)throw new Error("invalid n length: expected positive n, got "+e);if(void 0!==t&&t<1)throw new Error("invalid n length: expected positive bit length, got "+t);const n=bo(e);if(void 0!==t&&t<n)throw new Error(`invalid n length: expected bit length (${n}) >= n.length (${t})`);const i=void 0!==t?t:n;return{nBitLength:i,nByteLength:Math.ceil(i/8)}}(e,n);if(a>2048)throw new Error("invalid field: expected ORDER of <= 2048 bytes");this.ORDER=e,this.BITS=i,this.BYTES=a,Object.freeze(this)}create(e){return Lo(e,this.ORDER)}isValid(e){if("bigint"!=typeof e)throw new TypeError("invalid field element: expected bigint, got "+typeof e);return yo<=e&&e<this.ORDER}is0(e){return e===yo}isValidNot0(e){return!this.is0(e)&&this.isValid(e)}isOdd(e){return(e&wo)===wo}neg(e){return Lo(-e,this.ORDER)}eql(e,t){return e===t}sqr(e){return Lo(e*e,this.ORDER)}add(e,t){return Lo(e+t,this.ORDER)}sub(e,t){return Lo(e-t,this.ORDER)}mul(e,t){return Lo(e*t,this.ORDER)}pow(e,t){return Uo(this,e,t)}div(e,t){return Lo(e*No(t,this.ORDER),this.ORDER)}sqrN(e){return e*e}addN(e,t){return e+t}subN(e,t){return e-t}mulN(e,t){return e*t}inv(e){return No(e,this.ORDER)}sqrt(e){let t=zo.get(this);return t||zo.set(this,t=Oo(this.ORDER)),t(this,e)}toBytes(e){return this.isLE?fo(e,this.BYTES):mo(e,this.BYTES)}fromBytes(e,t=!1){Xa(e);const{_lengths:n,BYTES:i,isLE:a,ORDER:o,_mod:s}=this;if(n){if(e.length<1||!n.includes(e.length)||e.length>i)throw new Error("Field.fromBytes: expected "+n+" bytes, got "+e.length);const t=new Uint8Array(i);t.set(e,a?0:t.length-e.length),e=t}if(e.length!==i)throw new Error("Field.fromBytes: expected "+i+" bytes, got "+e.length);let r=a?uo(e):po(e);if(s&&(r=Lo(r,o)),!t&&!this.isValid(r))throw new Error("invalid field element: outside of range 0..ORDER");return r}invertBatch(e){return Fo(this,e)}cmov(e,t,n){return oo(n,"condition"),n?t:e}}function Ho(e,t={}){return new qo(e,t)}function Vo(e){if("bigint"!=typeof e)throw new Error("field order must be bigint");if(e<=wo)throw new Error("field order must be greater than 1");const t=bo(e-wo);return Math.ceil(t/8)}function Go(e,t,n=!1){Xa(e);const i=e.length,a=Vo(t),o=Math.max(function(e){const t=Vo(e);return t+Math.ceil(t/2)}(t),16);if(i<o||i>1024)throw new Error("expected "+o+"-1024 bytes of input, got "+i);const s=Lo(n?uo(e):po(e),t-wo)+wo;return n?fo(s,a):mo(s,a)}Object.freeze(qo.prototype);
16
+ /*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
17
+ const Wo=BigInt(0),Jo=BigInt(1);function Qo(e,t){const n=t.negate();return e?n:t}function Zo(e,t){const n=Fo(e.Fp,t.map(e=>e.Z));return t.map((t,i)=>e.fromAffine(t.toAffine(n[i])))}function Yo(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw new Error("invalid window size, expected [1.."+t+"], got W="+e)}function Ko(e,t){Yo(e,t);const n=2**e;return{windows:Math.ceil(t/e)+1,windowSize:2**(e-1),mask:vo(e),maxNumber:n,shiftBy:BigInt(e)}}function Xo(e,t,n){const{windowSize:i,mask:a,maxNumber:o,shiftBy:s}=n;let r=Number(e&a),c=e>>s;r>i&&(r-=o,c+=Jo);const l=t*i;return{nextN:c,offset:l+Math.abs(r)-1,isZero:0===r,isNeg:r<0,isNegF:t%2!=0,offsetF:l}}const es=new WeakMap,ts=new WeakMap;function ns(e){return ts.get(e)||1}function is(e){if(e!==Wo)throw new Error("invalid wNAF")}class as{BASE;ZERO;Fn;bits;constructor(e,t){this.BASE=e.BASE,this.ZERO=e.ZERO,this.Fn=e.Fn,this.bits=t}_unsafeLadder(e,t,n=this.ZERO){let i=e;for(;t>Wo;)t&Jo&&(n=n.add(i)),i=i.double(),t>>=Jo;return n}precomputeWindow(e,t){const{windows:n,windowSize:i}=Ko(t,this.bits),a=[];let o=e,s=o;for(let e=0;e<n;e++){s=o,a.push(s);for(let e=1;e<i;e++)s=s.add(o),a.push(s);o=s.double()}return a}wNAF(e,t,n){if(!this.Fn.isValid(n))throw new Error("invalid scalar");let i=this.ZERO,a=this.BASE;const o=Ko(e,this.bits);for(let e=0;e<o.windows;e++){const{nextN:s,offset:r,isZero:c,isNeg:l,isNegF:p,offsetF:u}=Xo(n,e,o);n=s,c?a=a.add(Qo(p,t[u])):i=i.add(Qo(l,t[r]))}return is(n),{p:i,f:a}}wNAFUnsafe(e,t,n,i=this.ZERO){const a=Ko(e,this.bits);for(let e=0;e<a.windows&&n!==Wo;e++){const{nextN:o,offset:s,isZero:r,isNeg:c}=Xo(n,e,a);if(n=o,!r){const e=t[s];i=i.add(c?e.negate():e)}}return is(n),i}getPrecomputes(e,t,n){let i=es.get(t);return i||(i=this.precomputeWindow(t,e),1!==e&&("function"==typeof n&&(i=n(i)),es.set(t,i))),i}cached(e,t,n){const i=ns(e);return this.wNAF(i,this.getPrecomputes(i,e,n),t)}unsafe(e,t,n,i){const a=ns(e);return 1===a?this._unsafeLadder(e,t,i):this.wNAFUnsafe(a,this.getPrecomputes(a,e,n),t,i)}createCache(e,t){Yo(t,this.bits),ts.set(e,t),es.delete(e)}hasCache(e){return 1!==ns(e)}}function os(e,t,n){if(t){if(t.ORDER!==e)throw new Error("Field.ORDER must match order: Fp == p, Fn == n");return function(e){if(xo(e,Mo.reduce((e,t)=>(e[t]="function",e),{ORDER:"bigint",BYTES:"number",BITS:"number"})),ro(e.BYTES,"BYTES"),ro(e.BITS,"BITS"),e.BYTES<1||e.BITS<1)throw new Error("invalid field: expected BYTES/BITS > 0");if(e.ORDER<=wo)throw new Error("invalid field: expected ORDER > 1, got "+e.ORDER)}(t),t}return Ho(e,{isLE:n})}function ss(e,t){return function(n){const i=e(n);return{secretKey:i,publicKey:t(i)}}}
18
+ /*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
19
+ const rs=(e,t)=>(e+(e>=0?t:-t)/ds)/t;class cs extends Error{constructor(e=""){super(e)}}const ls={Err:cs,_tlv:{encode:(e,t)=>{const{Err:n}=ls;if(ro(e,"tag"),e<0||e>255)throw new n("tlv.encode: wrong tag");if("string"!=typeof t)throw new TypeError('"data" expected string, got type='+typeof t);if(1&t.length)throw new n("tlv.encode: unpadded data");const i=t.length/2,a=co(i);if(a.length/2&128)throw new n("tlv.encode: long form length too big");const o=i>127?co(a.length/2|128):"";return co(e)+o+a+t},decode(e,t){const{Err:n}=ls;t=Xa(t,void 0,"DER data");let i=0;if(e<0||e>255)throw new n("tlv.encode: wrong tag");if(t.length<2||t[i++]!==e)throw new n("tlv.decode: wrong tlv");const a=t[i++];let o=0;if(!!(128&a)){const e=127&a;if(!e)throw new n("tlv.decode(long): indefinite length not supported");if(e>4)throw new n("tlv.decode(long): byte length is too big");const s=t.subarray(i,i+e);if(s.length!==e)throw new n("tlv.decode: length bytes not complete");if(0===s[0])throw new n("tlv.decode(long): zero leftmost byte");for(const e of s)o=o<<8|e;if(i+=e,o<128)throw new n("tlv.decode(long): not minimal encoding")}else o=a;const s=t.subarray(i,i+o);if(s.length!==o)throw new n("tlv.decode: wrong value length");return{v:s,l:t.subarray(i+o)}}},_int:{encode(e){const{Err:t}=ls;if(so(e),e<ps)throw new t("integer: negative integers are not allowed");let n=co(e);if(8&Number.parseInt(n[0],16)&&(n="00"+n),1&n.length)throw new t("unexpected DER parsing assertion: unpadded hex");return n},decode(e){const{Err:t}=ls;if(e.length<1)throw new t("invalid signature integer: empty");if(128&e[0])throw new t("invalid signature integer: negative");if(e.length>1&&0===e[0]&&!(128&e[1]))throw new t("invalid signature integer: unnecessary leading zero");return po(e)}},toSig(e){const{Err:t,_int:n,_tlv:i}=ls,a=Xa(e,void 0,"signature"),{v:o,l:s}=i.decode(48,a);if(s.length)throw new t("invalid signature: left bytes after parsing");const{v:r,l:c}=i.decode(2,o),{v:l,l:p}=i.decode(2,c);if(p.length)throw new t("invalid signature: left bytes after parsing");return{r:n.decode(r),s:n.decode(l)}},hexFromSig(e){const{_tlv:t,_int:n}=ls,i=t.encode(2,n.encode(e.r))+t.encode(2,n.encode(e.s));return t.encode(48,i)}};Object.freeze(ls._tlv),Object.freeze(ls._int),Object.freeze(ls);const ps=BigInt(0),us=BigInt(1),ds=BigInt(2),ms=BigInt(3),fs=BigInt(4);function hs(e,t={}){const n=function(e,t,n={},i){if(void 0===i&&(i="edwards"===e),!t||"object"!=typeof t)throw new Error(`expected valid ${e} CURVE object`);for(const e of["p","n","h"]){const n=t[e];if(!("bigint"==typeof n&&n>Wo))throw new Error(`CURVE.${e} must be positive bigint`)}const a=os(t.p,n.Fp,i),o=os(t.n,n.Fn,i),s=["Gx","Gy","a","weierstrass"===e?"b":"d"];for(const e of s)if(!a.isValid(t[e]))throw new Error(`CURVE.${e} must be valid field element of CURVE.Fp`);return{CURVE:t=Object.freeze(Object.assign({},t)),Fp:a,Fn:o}}("weierstrass",e,t),i=n.Fp,a=n.Fn;let o=n.CURVE;const{h:s,n:r}=o;xo(t,{},{allowInfinityPoint:"boolean",clearCofactor:"function",isTorsionFree:"function",fromBytes:"function",toBytes:"function",endo:"object"});const{endo:c,allowInfinityPoint:l}=t;if(c&&(!i.is0(o.a)||"bigint"!=typeof c.beta||!Array.isArray(c.basises)))throw new Error('invalid endo: expected "beta": bigint and "basises": array');const p=bs(i,a);function u(){if(!i.isOdd)throw new Error("compression is not supported: Field does not have .isOdd()")}const d=void 0===t.toBytes?function(e,t,n){if(l&&t.is0())return Uint8Array.of(0);const{x:a,y:o}=t.toAffine(),s=i.toBytes(a);if(oo(n,"isCompressed"),n){u();const e=!i.isOdd(o);return no(gs(e),s)}return no(Uint8Array.of(4),s,i.toBytes(o))}:t.toBytes,m=void 0===t.fromBytes?function(e){Xa(e,void 0,"Point");const{publicKey:t,publicKeyUncompressed:n}=p,a=e.length,o=e[0],s=e.subarray(1);if(l&&1===a&&0===o)return{x:i.ZERO,y:i.ZERO};if(a!==t||2!==o&&3!==o){if(a===n&&4===o){const e=i.BYTES,t=i.fromBytes(s.subarray(0,e)),n=i.fromBytes(s.subarray(e,2*e));if(!h(t,n))throw new Error("bad point: is not on curve");return{x:t,y:n}}throw new Error(`bad point: got length ${a}, expected compressed=${t} or uncompressed=${n}`)}{const e=i.fromBytes(s);if(!i.isValid(e))throw new Error("bad point: is not on curve, wrong x");const t=f(e);let n;try{n=i.sqrt(t)}catch(e){const t=e instanceof Error?": "+e.message:"";throw new Error("bad point: is not on curve, sqrt error"+t)}u();return!(1&~o)!==i.isOdd(n)&&(n=i.neg(n)),{x:e,y:n}}}:t.fromBytes;function f(e){const t=i.sqr(e),n=i.mul(t,e);return i.add(i.add(n,i.mul(e,o.a)),o.b)}function h(e,t){const n=i.sqr(t),a=f(e);return i.eql(n,a)}if(!h(o.Gx,o.Gy))throw new Error("bad curve params: generator point");const g=i.mul(i.pow(o.a,ms),fs),b=i.mul(i.sqr(o.b),BigInt(27));if(i.is0(i.add(g,b)))throw new Error("bad curve params: a or b");function v(e,t,n=!1){if(!i.isValid(t)||n&&i.is0(t))throw new Error(`bad point coordinate ${e}`);return t}function x(e){if(!(e instanceof C))throw new Error("Weierstrass Point expected")}function y(e){if(!c||!c.basises)throw new Error("no endo");return function(e,t,n){go("scalar",e,ps,n);const[[i,a],[o,s]]=t,r=rs(s*e,n),c=rs(-a*e,n);let l=e-r*i-c*o,p=-r*a-c*s;const u=l<ps,d=p<ps;u&&(l=-l),d&&(p=-p);const m=vo(Math.ceil(bo(n)/2))+us;if(l<ps||l>=m||p<ps||p>=m)throw new Error("splitScalar (endomorphism): failed for k");return{k1neg:u,k1:l,k2neg:d,k2:p}}(e,c.basises,a.ORDER)}function w(e,t,n,a,o){return n=new C(i.mul(n.X,e),n.Y,n.Z),t=Qo(a,t),n=Qo(o,n),t.add(n)}class C{static BASE=new C(o.Gx,o.Gy,i.ONE);static ZERO=new C(i.ZERO,i.ONE,i.ZERO);static Fp=i;static Fn=a;X;Y;Z;constructor(e,t,n){this.X=v("x",e),this.Y=v("y",t,!0),this.Z=v("z",n),Object.freeze(this)}static CURVE(){return o}static fromAffine(e){const{x:t,y:n}=e||{};if(!e||!i.isValid(t)||!i.isValid(n))throw new Error("invalid affine point");if(e instanceof C)throw new Error("projective point not allowed");return i.is0(t)&&i.is0(n)?C.ZERO:new C(t,n,i.ONE)}static fromBytes(e){const t=C.fromAffine(m(Xa(e,void 0,"point")));return t.assertValidity(),t}static fromHex(e){return C.fromBytes((e=>Fa(e))(e))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(e=8,t=!0){return k.createCache(this,e),t||this.multiply(ms),this}assertValidity(){const e=this;if(e.is0()){if(t.allowInfinityPoint&&i.is0(e.X)&&i.eql(e.Y,i.ONE)&&i.is0(e.Z))return;throw new Error("bad point: ZERO")}const{x:n,y:a}=e.toAffine();if(!i.isValid(n)||!i.isValid(a))throw new Error("bad point: x or y not field elements");if(!h(n,a))throw new Error("bad point: equation left != right");if(!e.isTorsionFree())throw new Error("bad point: not in prime-order subgroup")}hasEvenY(){const{y:e}=this.toAffine();if(!i.isOdd)throw new Error("Field doesn't support isOdd");return!i.isOdd(e)}equals(e){x(e);const{X:t,Y:n,Z:a}=this,{X:o,Y:s,Z:r}=e,c=i.eql(i.mul(t,r),i.mul(o,a)),l=i.eql(i.mul(n,r),i.mul(s,a));return c&&l}negate(){return new C(this.X,i.neg(this.Y),this.Z)}double(){const{a:e,b:t}=o,n=i.mul(t,ms),{X:a,Y:s,Z:r}=this;let c=i.ZERO,l=i.ZERO,p=i.ZERO,u=i.mul(a,a),d=i.mul(s,s),m=i.mul(r,r),f=i.mul(a,s);return f=i.add(f,f),p=i.mul(a,r),p=i.add(p,p),c=i.mul(e,p),l=i.mul(n,m),l=i.add(c,l),c=i.sub(d,l),l=i.add(d,l),l=i.mul(c,l),c=i.mul(f,c),p=i.mul(n,p),m=i.mul(e,m),f=i.sub(u,m),f=i.mul(e,f),f=i.add(f,p),p=i.add(u,u),u=i.add(p,u),u=i.add(u,m),u=i.mul(u,f),l=i.add(l,u),m=i.mul(s,r),m=i.add(m,m),u=i.mul(m,f),c=i.sub(c,u),p=i.mul(m,d),p=i.add(p,p),p=i.add(p,p),new C(c,l,p)}add(e){x(e);const{X:t,Y:n,Z:a}=this,{X:s,Y:r,Z:c}=e;let l=i.ZERO,p=i.ZERO,u=i.ZERO;const d=o.a,m=i.mul(o.b,ms);let f=i.mul(t,s),h=i.mul(n,r),g=i.mul(a,c),b=i.add(t,n),v=i.add(s,r);b=i.mul(b,v),v=i.add(f,h),b=i.sub(b,v),v=i.add(t,a);let y=i.add(s,c);return v=i.mul(v,y),y=i.add(f,g),v=i.sub(v,y),y=i.add(n,a),l=i.add(r,c),y=i.mul(y,l),l=i.add(h,g),y=i.sub(y,l),u=i.mul(d,v),l=i.mul(m,g),u=i.add(l,u),l=i.sub(h,u),u=i.add(h,u),p=i.mul(l,u),h=i.add(f,f),h=i.add(h,f),g=i.mul(d,g),v=i.mul(m,v),h=i.add(h,g),g=i.sub(f,g),g=i.mul(d,g),v=i.add(v,g),f=i.mul(h,v),p=i.add(p,f),f=i.mul(y,v),l=i.mul(b,l),l=i.sub(l,f),f=i.mul(b,h),u=i.mul(y,u),u=i.add(u,f),new C(l,p,u)}subtract(e){return x(e),this.add(e.negate())}is0(){return this.equals(C.ZERO)}multiply(e){const{endo:n}=t;if(!a.isValidNot0(e))throw new RangeError("invalid scalar: out of range");let i,o;const s=e=>k.cached(this,e,e=>Zo(C,e));if(n){const{k1neg:t,k1:a,k2neg:r,k2:c}=y(e),{p:l,f:p}=s(a),{p:u,f:d}=s(c);o=p.add(d),i=w(n.beta,l,u,t,r)}else{const{p:t,f:n}=s(e);i=t,o=n}return Zo(C,[i,o])[0]}multiplyUnsafe(e){const{endo:n}=t,i=this,o=e;if(!a.isValid(o))throw new RangeError("invalid scalar: out of range");if(o===ps||i.is0())return C.ZERO;if(o===us)return i;if(k.hasCache(this))return this.multiply(o);if(n){const{k1neg:e,k1:t,k2neg:a,k2:s}=y(o),{p1:r,p2:c}=function(e,t,n,i){let a=t,o=e.ZERO,s=e.ZERO;for(;n>Wo||i>Wo;)n&Jo&&(o=o.add(a)),i&Jo&&(s=s.add(a)),a=a.double(),n>>=Jo,i>>=Jo;return{p1:o,p2:s}}(C,i,t,s);return w(n.beta,r,c,e,a)}return k.unsafe(i,o)}toAffine(e){let t=e;const{X:n,Y:a,Z:o}=this;if(i.eql(o,i.ONE))return{x:n,y:a};const s=this.is0();null==t&&(t=s?i.ONE:i.inv(o));const r=i.mul(n,t),c=i.mul(a,t),l=i.mul(o,t);if(s)return{x:i.ZERO,y:i.ZERO};if(!i.eql(l,i.ONE))throw new Error("invZ was invalid");return{x:r,y:c}}isTorsionFree(){const{isTorsionFree:e}=t;return s===us||(e?e(C,this):k.unsafe(this,r).is0())}clearCofactor(){const{clearCofactor:e}=t;return s===us?this:e?e(C,this):this.multiplyUnsafe(s)}isSmallOrder(){return s===us?this.is0():this.clearCofactor().is0()}toBytes(e=!0){return oo(e,"isCompressed"),this.assertValidity(),d(C,this,e)}toHex(e=!0){return to(this.toBytes(e))}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}}const E=a.BITS,k=new as(C,t.endo?Math.ceil(E/2):E);return E>=8&&C.BASE.precompute(8),Object.freeze(C.prototype),Object.freeze(C),C}function gs(e){return Uint8Array.of(e?2:3)}function bs(e,t){return{secretKey:t.BYTES,publicKey:1+e.BYTES,publicKeyUncompressed:1+2*e.BYTES,publicKeyHasPrefix:!0,signature:2*t.BYTES}}
20
+ /*! noble-curves - MIT License (c) 2022 Paul Miller (paulmillr.com) */
21
+ const vs={p:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),n:BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),h:BigInt(1),a:BigInt(0),b:BigInt(7),Gx:BigInt("0x79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798"),Gy:BigInt("0x483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8")},xs={beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),basises:[[BigInt("0x3086d221a7d46bcde86c90e49284eb15"),-BigInt("0xe4437ed6010e88286f547fa90abfe4c3")],[BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),BigInt("0x3086d221a7d46bcde86c90e49284eb15")]]},ys=BigInt(0),ws=BigInt(2);const Cs=Ho(vs.p,{sqrt:function(e){const t=vs.p,n=BigInt(3),i=BigInt(6),a=BigInt(11),o=BigInt(22),s=BigInt(23),r=BigInt(44),c=BigInt(88),l=e*e*e%t,p=l*l*e%t,u=Ro(p,n,t)*p%t,d=Ro(u,n,t)*p%t,m=Ro(d,ws,t)*l%t,f=Ro(m,a,t)*m%t,h=Ro(f,o,t)*f%t,g=Ro(h,r,t)*h%t,b=Ro(g,c,t)*g%t,v=Ro(b,r,t)*h%t,x=Ro(v,n,t)*p%t,y=Ro(x,s,t)*f%t,w=Ro(y,i,t)*l%t,C=Ro(w,ws,t);if(!Cs.eql(Cs.sqr(C),e))throw new Error("Cannot find square root");return C}}),Es=hs(vs,{Fp:Cs,endo:xs}),ks={};function As(e,...t){let n=ks[e];if(void 0===n){const t=Ka(function(e){if("string"!=typeof e)throw new TypeError("ascii string expected, got "+typeof e);return Uint8Array.from(e,(t,n)=>{const i=t.charCodeAt(0);if(1!==t.length||i>127)throw new RangeError(`string contains non-ASCII character "${e[n]}" with code ${i} at position ${n}`);return i})}(e));n=no(t,t),ks[e]=n}return Ka(no(n,...t))}const _s=e=>e.toBytes(!0).slice(1),Ts=e=>e%ws===ys;function Ss(e){const{Fn:t,BASE:n}=Es,i=t.fromBytes(e),a=n.multiply(i);return{scalar:Ts(a.y)?i:t.neg(i),bytes:_s(a)}}function js(e){const t=Cs;if(!t.isValidNot0(e))throw new Error("invalid x: Fail if x ≥ p");const n=t.create(e*e),i=t.create(n*e+BigInt(7));let a=t.sqrt(i);Ts(a)||(a=t.neg(a));const o=Es.fromAffine({x:e,y:a});return o.assertValidity(),o}const Ls=po;function Rs(...e){return Es.Fn.create(Ls(As("BIP0340/challenge",...e)))}function Ns(e){return Ss(e).bytes}function Is(e,t,n=za(32)){const{Fn:i,BASE:a}=Es,o=Xa(e,void 0,"message"),{bytes:s,scalar:r}=Ss(t),c=Xa(n,32,"auxRand"),l=i.toBytes(r^Ls(As("BIP0340/aux",c))),p=As("BIP0340/nonce",l,s,o),u=i.create(Ls(p));if(0n===u)throw new Error("sign failed: k is zero");const d=a.multiply(u),m=Ts(d.y)?u:i.neg(u),f=_s(d),h=Rs(f,s,o),g=new Uint8Array(64);if(g.set(f,0),g.set(i.toBytes(i.create(m+h*r)),32),!$s(g,o,s))throw new Error("sign: Invalid signature produced");return g}function $s(e,t,n){const{Fp:i,Fn:a,BASE:o}=Es,s=Xa(e,64,"signature"),r=Xa(t,void 0,"message"),c=Xa(n,32,"publicKey");try{const e=js(Ls(c)),t=Ls(s.subarray(0,32));if(!i.isValidNot0(t))return!1;const n=Ls(s.subarray(32,64));if(!a.isValidNot0(n))return!1;const l=Rs(a.toBytes(t),_s(e),r),p=o.multiplyUnsafe(n).add(e.multiplyUnsafe(a.neg(l))),{x:u,y:d}=p.toAffine();return!(p.is0()||!Ts(d)||u!==t)}catch(e){return!1}}const Bs=(()=>{const e=e=>Go(e=void 0===e?za(48):e,vs.n);return Object.freeze({keygen:ss(e,Ns),getPublicKey:Ns,sign:Is,verify:$s,Point:Es,utils:Object.freeze({randomSecretKey:e,taggedHash:As,lift_x:js,pointToBytes:_s}),lengths:Object.freeze({secretKey:32,publicKey:32,publicKeyHasPrefix:!1,signature:64,seed:48})})})();new TextDecoder("utf-8");const Ds=new TextEncoder,Os="https://w3id.org/security#";function Ms(e){const t=Ka(Ds.encode(function(e){return JSON.stringify(e)}(e)));return Na(t)}const Us=e=>{let t=v.store.any(e,b.space("preferencesFile"),null,e.doc())?.value;if(t=t?.split("/").slice(0,-2).join("/"),!t)throw new Error(`prefererencesFile is expected to exist in ${e}`);return t},Fs=e=>{let t;try{t=`${Us(e)}/profile/keys/publicKey.ttl`}catch(e){xe.z3(e)}return t};async function Ps(e,t,n){try{await v.store.fetcher.load(t);const i=v.store.any(e,b.solid(n));return i?.value}catch(e){if(404===e.response.status){xe.Rm("createIfNotExists: doc does NOT exist, will create... "+t);try{await v.store.fetcher.webOperation("PUT",t,{data:"",contentType:"text/turtle"})}catch(e){throw xe.Rm("createIfNotExists doc FAILED: "+t+": "+e),e}return void delete v.store.fetcher.requested[t]}throw xe.Rm("createIfNotExists doc FAILED: "+t+": "+e),e}}async function zs(e,t){await v.store.fetcher.load(e);const n=v.store.any(v.store.sym(e),v.store.sym("http://www.iana.org/assignments/link-relations/acl"));if(!n)throw new Error("Key ACL doc not found!");try{await v.store.fetcher.webOperation("PUT",n.value,{data:t,contentType:"text/turtle"})}catch(e){if(404!==e?.response?.status)throw new Error(e);xe.Rm("delete "+n.value+" "+e.response.status)}}function qs(e){return Na(Bs.getPublicKey(Fa(e)))}async function Hs(e){await v.store.fetcher.load(e);const t=await Fs(e),n=await(e=>{let t;try{t=`${Us(e)}/settings/keys/privateKey.ttl`}catch(e){xe.z3(e)}return t})(e),i=await async function(e,t){return await Ps(e,t,"publicKey")}(e,t);let a=await async function(e,t){return await Ps(e,t,"privateKey")}(e,n),o=!0;if(a&&i!==qs(a)&&confirm("This is strange the publicKey is not valid for\n"+e?.uri+"'shall we repair keeping the private key ?")&&(o=!1),!a||!i||!o){let r=[],c=[];if(a||(a=Na(Bs.utils.randomSecretKey()),c=[g.st(e,b.solid("privateKey"),g.literal(a),v.store.sym(n))],await Vs(n,[],c,e.uri)),!i||!o){r=[],i&&(r=[g.st(e,b.solid("publicKey"),g.lit(i),v.store.sym(t))],xe.Rm("delete invalid publicKey "+r));const n=qs(a);c=[g.st(e,b.solid("publicKey"),g.literal(n),v.store.sym(t))],await Vs(t,r,c)}const l=n.substring(0,n.lastIndexOf("/")+1);await zs(l,(s=e.uri,`\n@prefix : <#>.\n@prefix acl: <http://www.w3.org/ns/auth/acl#>.\n@prefix foaf: <http://xmlns.com/foaf/0.1/>.\n@prefix key: <./>.\n\n:ReadWrite\n a acl:Authorization;\n acl:accessTo key:;\n acl:default key:;\n acl:agent <${s}>;\n acl:mode acl:Read, acl:Write.\n`))}var s;return a}async function Vs(e,t,n,i=""){await(async e=>{await v.store.fetcher.load(e);const t=v.store.any(v.store.sym(e),v.store.sym("http://www.iana.org/assignments/link-relations/acl"));if(t)try{const e=await v.store.fetcher.webOperation("DELETE",t.value);xe.Rm("delete keyAcl"+t.value+" "+e.status)}catch(e){if(404!==e.response.status)throw new Error(e);xe.Rm("delete keyAcl"+t.value+" "+e.response.status)}})(e),await v.store.updater.updateMany(t,n);const a=((e,t)=>{let n="acl:agentClass foaf:Agent";return t?.length&&(n=`acl:agent <${t}>`),`\n@prefix foaf: <http://xmlns.com/foaf/0.1/>.\n@prefix acl: <http://www.w3.org/ns/auth/acl#>.\n<#Read>\n a acl:Authorization;\n ${n};\n acl:accessTo <${e.split("/").pop()}>;\n acl:mode acl:Read.\n`})(e,i);await zs(e,a)}class Gs{constructor(e,t){this.channel=e,this.channelRoot=e.doc(),this.options=t,this.dateFolder=new Ea(this.channelRoot,"chat.ttl"),this.div=null}async createMessage(e){return this.updateMessage(e)}async updateMessage(e,t=null,n,i=null){const a=[],o=new Date,s=""+o.getTime(),r=g.term(o),c=t?t.doc():this.dateFolder.leafDocumentFromDate(o),l=v.store.sym(c.uri+"#Msg"+s),p=v.authn.currentUser(),u={id:"",created:"",dateDeleted:"",content:"",maker:"",sig:""};if(u.id=l.uri,t){const e=v.store.any(t,b.foaf("maker"));if(e.uri!==p.uri){const t="Error you cannot delete/edit a message from someone else : \n"+e.uri;throw xe.R8(t),alert(t),new Error(t)}{const e=await Js(t);a.push(g.st(e,b.dct("isReplacedBy"),l,c));const i=v.store.any(e,b.sioc("has_reply"));i&&a.push(g.st(l,b.sioc("has_reply"),i,c)),n&&a.push(g.st(l,b.schema("dateDeleted"),r,c))}}else a.push(g.st(this.channel,b.wf("message"),l,c));if(a.push(g.st(l,b.sioc("content"),v.store.literal(e),c)),u.content=e,a.push(g.st(l,b.dct("created"),r,c)),u.created=r.value,p){a.push(g.st(l,b.foaf("maker"),p,c)),u.maker=p.uri;const e=function(e,t){return Na(Bs.sign(Fa(Ms(e)),Fa(t)))}(u,await Hs(p));a.push(g.st(l,g.sym(`${Os}proofValue`),g.lit(e),c))}i&&(a.push(g.st(i,b.sioc("has_member"),l,c)),i.doc().sameTerm(l.doc())||a.push(g.st(i,b.sioc("has_member"),l,i.doc())));try{await v.store.updater.updateMany([],a)}catch(e){const t="Error saving chat message: "+e;throw xe.R8(t),alert(t),new Error(t)}return l}async deleteMessage(e){return this.updateMessage("(message deleted)",e,!0)}async createThread(e){const t=v.store.each(e,b.sioc("has_reply"),null,e.doc()).filter(e=>v.store.holds(e,b.rdf("type"),b.sioc("Thread"),e.doc()));if(t.length>0)return t[0];const n=g.sym(e.uri+"-thread"),i=[g.st(n,b.rdf("type"),b.sioc("Thread"),n.doc()),g.st(e,b.sioc("has_reply"),n,n.doc())];return await v.store.updater.update([],i),n}}async function Ws(e){const t=[e],n={};n[e.uri]=!0;let i=e;for(;;){const e=v.store.any(null,b.dct("isReplacedBy"),i,i.doc());if(!e||n[e.uri])break;await v.store.fetcher.load(e),t.unshift(e),n[e.uri]=!0,i=e}for(i=e;;){const e=v.store.any(i,b.dct("isReplacedBy"),null,i.doc());if(!e||n[e.uri])break;t.push(e),n[e.uri]=!0,i=e}return t}async function Js(e){let t=e;const n={};for(;t;){if(n[t.uri])return xe.z3("mostRecentVersion: verion loop"+e),e;n[t.uri]=!0,e=t,await v.store.fetcher.load(e),t=v.store.any(e,b.dct("isReplacedBy"),null,e.doc())}return e}function Qs(e){return v.store.holds(e,b.schema("dateDeleted"),null,e.doc())}const Zs=v.solidLogicSingleton.store;function Ys(e,t,n,i,a,o){t.setAttribute("style",tt.participantsStyle);const s=function(n){const i=Zs.any(n,b.wf("participant"));let a;if(!i)return a=e.createElement("tr"),a.textContent="???",a;const s=Zs.anyValue(n,b.ui("backgroundColor"))||Xe,r=e.createElement("div");r.setAttribute("style",tt.participantsBlock),r.style.backgroundColor=s,a=qt(e,null,i,o),t.appendChild(a);const c=e.createElement("td");return c.setAttribute("style",tt.personTableTD),c.appendChild(r),a.insertBefore(c,a.firstChild),a},r=function(){const e=Zs.each(i,b.wf("participation")).map(function(e){return(0,xe.Rm)("in participants"),[Zs.anyValue(e,b.cal("dtstart"))||"9999-12-31",e]});e.sort();const n=e.map(function(e){return e[1]});Z(t,n,s)};return t.refresh=r,r(),t}function Ks(e,t,n){return new Promise(function(i,a){if(!n)throw new Error("No user id");const o=Zs.each(e,b.wf("participation")).filter(function(e){return Zs.holds(e,b.wf("participant"),n)});if(o.length>1){const e=[];for(const t of o){const n=Zs.anyValue(t,b.cal("dtstart"));n&&e.push([n,t])}e.sort(),xe.R8("Multiple participation objects, picking earliest, in "+t),i(e[0][1])}if(o.length)i(o[0]);else{const o=_i(t),s=[(0,g.st)(e,b.wf("participation"),o,t),(0,g.st)(o,b.wf("participant"),n,t),(0,g.st)(o,b.cal("dtstart"),new Date,t),(0,g.st)(o,b.ui("backgroundColor"),ir(n),t)];Zs.updater.update([],s,function(e,t,n){t?i(o):a(new Error("Error recording your participation: "+n))}),i(o)}})}function Xs(e,t,n){const i=v.authn.currentUser();if(!i)return;const a=Zs.each(e,b.wf("participation")).filter(function(e){return Zs.holds(e,b.wf("participant"),i)});if(a.length>1)throw new Error("Multiple records of your participation");if(a.length)return a[0];{if(!Zs.updater.editable(t))return xe.Rm("Not recording participation, as no write access as "+i+" to "+t),null;const a=_i(t),o=[(0,g.st)(e,b.wf("participation"),a,t),(0,g.st)(a,b.wf("participant"),i,t),(0,g.st)(a,b.cal("dtstart"),new Date,t),(0,g.st)(a,b.ui("backgroundColor"),ir(i),t)];return Zs.updater.update([],o,function(e,t,i){if(!t)throw new Error("Error recording your participation: "+i);n&&n.refresh&&n.refresh()}),a}}function er(e,t,n,i,a,o){const s=e.createElement("table");t.appendChild(s),Ys(e,s,0,i,0,o);try{Xs(i,n,s)}catch(n){t.appendChild(ot(e,"Error recording your participation: "+n))}return s}const tr=v.solidLogicSingleton.store,nr=(0,g.Namespace)("http://www.w3.org/ns/pim/pad#");function ir(e){return e&&e.uri?"#"+(16777215&(t=e.uri,t.split("").reduce(function(e,t){return(e=(e<<5)-e+t.charCodeAt(0))&e},0))|12632256).toString(16):"#ffffff";var t}function ar(e,t,n,i,a){const o=(a=a||{}).exists,s=e.createElement("table"),r=tr;if(i&&!i.uri)throw new Error("UI.pad.notepad: Invalid userid");const c=tr.updater,l=(0,g.Namespace)("http://www.w3.org/ns/pim/pad#");s.setAttribute("style",tt.notepadStyle);let p=null,u=null;if(a.statusArea){const t=a.statusArea.appendChild(e.createElement("table")).appendChild(e.createElement("tr"));p=t.appendChild(e.createElement("td")),u=t.appendChild(e.createElement("td")),p&&p.setAttribute("style",tt.upstreamStatus),u&&u.setAttribute("style",tt.downstreamStatus)}const d=function(t,n=!1){(0,xe.Rm)(t),a.statusArea&&(n?p:u).appendChild(ot(e,t,"pink"))},m=function(e){a.statusArea&&(a.statusArea.innerHTML="")},f=function(e,t,n){const i=e.subject;t=t||"";const a=tt.baseStyle,o=tt.headingCore,s=tt.headingStyle,c=r.any(i,b.dc("author"));if(!t&&c){t="color: "+(n?"#888":"black")+"; background-color: "+ir(c)+";"}let p=r.any(i,l("indent"));p=p?p.value:0;const u=p>=0?a+"text-indent: "+3*p+"em;":o+s[-1-p];e.setAttribute("style",u+t)},h=function(e){const i=e.subject;if(!i)throw new Error("No chunk for line to be deleted!");const a=r.any(void 0,l("next"),i),o=r.any(i,l("next"));if(a.sameTerm(n)&&o.sameTerm(n))return void(0,xe.Rm)("You can't delete the only line.");const s=r.statementsMatching(i,void 0,void 0,t).concat(r.statementsMatching(void 0,void 0,i,t)),p=[(0,g.st)(a,l("next"),o,t)];if(i instanceof g.NamedNode){const e=i.uri.slice(-4);(0,xe.Rm)("Deleting line "+e)}if(!c)throw new Error("have no updater");c.update(s,p,function(t,n,a,o){if(n){const t=e.parentNode;if(t){const e=t.previousSibling;t.parentNode&&t.parentNode.removeChild(t),e&&e.firstChild&&e.firstChild.focus()}}else if(o&&409===o.status)f(e,"color: black; background-color: #ffd;"),e.state=0,W(),setTimeout(function(){A()},1e3);else{(0,xe.Rm)(" removePart FAILED "+i+": "+a),(0,xe.Rm)(" removePart was deleting :'"+s),f(e,"color: black; background-color: #fdd;");const t=o?o.status:" [no response field] ";d("Error "+t+" saving changes: "+String(a))}})},v=function(e,n){let i=null;e.addEventListener("keydown",function(i){if(!c)throw new Error("no updater");let a,o;switch(i.keyCode){case 13:{const t=i.shiftKey;if((0,xe.Rm)("enter"),t?(o=r.any(void 0,l("next"),n),a="newlinesAfter"):(o=r.any(n,l("next")),a="newlinesBefore"),o[a]=o[a]||0,o[a]+=1,o[a]>1)return void(0,xe.Rm)(" queueing newline queue = "+o[a]);(0,xe.Rm)(" go ahead line before "+o[a]),y(e,t);break}case 8:if(0===e.value.length)switch((0,xe.Rm)("Delete key line "+n.uri.slice(-4)+" state "+e.state),e.state){case 1:case 2:return void(e.state=4);case 3:case 4:return;case void 0:case 0:e.state=3,h(e),i.preventDefault();break;default:throw new Error("pad: Unexpected state "+e)}break;case 9:{const a=i.shiftKey?-1:1;!function(e,n,i){const a=r.statementsMatching(n,l("indent")),o=a.length?Number(a[0].object.value):0;if(o+i<-3)return;const s=o+i,p=(0,g.st)(n,l("indent"),s,t);if(!c)throw new Error("no updater");c.update(a,p,function(n,i,a){i?f(e):((0,xe.Rm)("Indent change FAILED '"+s+"' for "+t+": "+a),f(e,"color: black; background-color: #fdd;"),c.requestDownstreamAction(t,A))})}(e,n,a),i.preventDefault();break}case 27:(0,xe.Rm)("escape"),c.requestDownstreamAction(t,A),i.preventDefault();break;case 38:e.parentNode.previousSibling&&(e.parentNode.previousSibling.firstChild.focus(),i.preventDefault());break;case 40:e.parentNode.nextSibling&&(e.parentNode.nextSibling.firstChild.focus(),i.preventDefault())}});const a=function(e){const n=e.subject;f(e,void 0,!0);const i=r.any(n,b.sioc("content")).value,o=[(0,g.st)(n,b.sioc("content"),i,t)];let s;e.value&&(s=[(0,g.st)(n,b.sioc("content"),e.value,t)]);const l=e.value;if(e.lastSent&&i!==e.lastSent&&console.warn("Out of order, last sent expected '"+i+"' but found '"+e.lastSent+"'"),e.lastSent=l,!c)throw new Error("no updater");c.update(o,s,function(n,o,s,r){if(o)m(),f(e),(0,xe.Rm)(" Patch ok '"+i+"' -> '"+l+"' "),4===e.state?(e.state=3,h(e)):3===e.state||(2===e.state?(e.state=1,a(e)):e.state=0);else if((0,xe.Rm)(" patch FAILED "+r.status+" for '"+i+"' -> '"+l+"': "+s),409===r.status)f(e,"color: black; background-color: #fdd;"),e.state=0,W(),setTimeout(function(){c.requestDownstreamAction(t,A)},1e3);else{f(e,"color: black; background-color: #fdd;");const t=r?.status;t&&502!==t&&503!==t?(e.state=0,d(" Error "+t+" sending data: "+s,!0),W()):(e.lastSent=void 0,e.state=0,setTimeout(()=>{0!==e.state&&void 0!==e.state||(e.state=1,a(e))},2e3))}})};e.addEventListener("input",function(t){switch(f(e,void 0,!0),(0,xe.Rm)("Input event state "+e.state+" value '"+e.value+"'"),e.state){case 3:case 4:case 2:return;case 1:return void(e.state=2);case 0:case void 0:null!==i&&clearTimeout(i),i=setTimeout(()=>{i=null,0!==e.state&&void 0!==e.state||(e.state=1,a(e))},400)}})},x=function(t,n,a){let o=r.any(n,b.sioc("content"));o=o?o.value:"";const c=e.createElement("tr");a?s.insertBefore(c,t):t&&t.nextSibling?s.insertBefore(c,t.nextSibling):s.appendChild(c);const l=c.appendChild(e.createElement("input"));return l.subject=n,l.setAttribute("type","text"),l.value=o,i?(f(l,""),v(l,n)):(f(l,"color: #222; background-color: #fff"),(0,xe.Rm)("Note can't add listeners - not logged in")),l},y=function(e,a){const o=tr;let s,r,p,u,d,m=0,h=null;e?("input"!==e.tagName.toLowerCase()&&(0,xe.Rm)("return pressed when current document is: "+e.tagName),s=e.subject,m=o.any(s,l("indent")),m=m?Number(m.value):0,a?(r=o.any(void 0,l("next"),s),p=s,u=r,h="newlinesAfter"):(r=s,p=o.any(s,l("next")),u=p,h="newlinesBefore"),d=e.parentNode):(r=n,p=n,d=void 0);const v=_i(t),w=v.uri.slice(-4),C=[(0,g.st)(r,l("next"),p,t)],E=[(0,g.st)(r,l("next"),v,t),(0,g.st)(v,l("next"),p,t),(0,g.st)(v,b.dc("author"),i,t),(0,g.st)(v,b.sioc("content"),"",t)];if(m>0&&E.push((0,g.st)(v,l("indent"),m,t)),(0,xe.Rm)(" Fresh chunk "+w+" proposed"),!c)throw new Error("no updater");c.update(C,E,function(e,t,n,i){if(t){const e=x(d,v,a);f(e),e.focus(),h&&((0,xe.Rm)(" Fresh chunk "+w+" updated, queue = "+u[h]),u[h]-=1,u[h]>0&&((0,xe.Rm)(" Implementing queued newlines = "+p.newLinesBefore),y(e,a)))}else(0,xe.Rm)(" ERROR writing new line "+w+": "+n)})},w=function(){const e={};let t=0;function i(e){d(e),t++}if(!r.the(n,l("next")))return i("No initial next pointer"),!1;let a,o=n;for(;a=r.the(o,l("next")),a||i("No next pointer from "+o),!a.sameTerm(n);){o=a;const t=a.uri.split("#")[1];if(e[a.uri])return i("Loop!"),!1;e[a.uri]=!0;let n=r.each(a,l("next")).length;1!==n&&i("Should be 1 not "+n+" next pointer for "+t),n=r.each(a,l("indent")).length,n>1&&i("Should be 0 or 1 not "+n+" indent for "+t),n=r.each(a,b.sioc("content")).length,1!==n&&i("Should be 1 not "+n+" contents for "+t),n=r.each(a,b.dc("author")).length,1!==n&&i("Should be 1 not "+n+" author for "+t);r.statementsMatching(void 0,b.sioc("contents")).forEach(function(t){e[t.subject.value]||i("Loose chunk! "+t.subject.value)})}return!t},C=function(){if(1!==r.each(n,l("next")).length){const e="Pad: Inconsistent data - NEXT pointers: "+r.each(n,l("next")).length;return(0,xe.Rm)(e),void(a.statusArea&&(a.statusArea.textContent+=e))}let e;const t=[];for(let e=r.the(n,l("next"));!e.sameTerm(n);e=r.the(e,l("next")))for(let n=0;n<s.children.length;n++){const i=s.children[n];i.firstChild&&i.firstChild.subject.sameTerm(e)&&(t[e.uri]=i.firstChild)}for(let n=s.children.length-1;n>=0;n--)e=s.children[n],t[e.firstChild.subject.uri]||s.removeChild(e);e=s.firstChild;for(let i=r.the(n,l("next"));!i.sameTerm(n);i=r.the(i,l("next"))){const n=r.any(i,b.sioc("content")).value;if(e&&t[i.uri]){const t=e.firstChild;n!==t.value&&(t.value=n),f(t),t.state=0,delete t.lastSent,e=e.nextSibling}else x(e,i,!0)}},E=function(e){if(e.refresh)e.refresh();else for(let t=0;t<e.children.length;t++)E(e.children[t])};let k=!1;const A=function(){if(k)return void(0,xe.Rm)(" Already reloading - stop");k=!0;let e=1e3;const n=function(){if((0,xe.Rm)("try reload - timeout = "+e),!c)throw new Error("no updater");c.reload(c.store,t,function(i,a,o){k=!1,i?((0,xe.Rm)(" reloaded OK"),m(),w()?E(s):d("CONSISTENCY CHECK FAILED")):0===o.status?(d("Network error refreshing the pad. Retrying in "+e/1e3),k=!0,e*=2,setTimeout(n,e)):d("Error "+o.status+"refreshing the pad:"+a+". Stopped. "+t)})};n()};if(s.refresh=C,s.reloadAndSync=A,i||(0,xe.Rm)("Warning: must be logged in for pad to be edited"),o)(0,xe.Rm)("Existing pad."),w()?(C(),r.holds(n,l("next"),n)&&y()):(0,xe.Rm)(s.textContent="Inconsistent data. Abort");else{(0,xe.Rm)("No pad exists - making new one.");const e=[(0,g.st)(n,b.rdf("type"),l("Notepad"),t),(0,g.st)(n,b.dc("author"),i,t),(0,g.st)(n,b.dc("created"),new Date,t),(0,g.st)(n,l("next"),n,t)];if(!c)throw new Error("no updater");c.update([],e,function(e,t,n){t?((0,xe.Rm)("Initial pad created"),y()):d(n||"")})}return s}function or(e,t){const n=[];for(let i=t.the(e,nr("next"));!i.sameTerm(e);i=t.the(i,nr("next")))n.push(i);return n}function sr(e){return e.replace("&","&amp;").replace("<","&lt;").replace(">","&gt;")}function rr(e,t){const n=or(e,t);let i="<html>\n <head>\n";const a=t.anyValue(e,b.dct("title"));a&&(i+=` <title>${sr(a)}</title>\n`),i+=" </head>\n <body>\n";let o=0;function s(e){for(;o>e;o--)i+="</ul>\n"}return n.forEach(e=>{const n=t.anyJS(e,nr("indent")),a=t.anyJS(e,b.sioc("content"));if(!a)return;const r=sr(a);if(n<0){s(0);const e=n>=-3?4+n:1;i+=`\n<h${e}>${r}</h${e}>\n`}else n>0?(s(n),function(e){for(;o<e;o++)i+="<ul>\n"}(n),i+=`<li>${r}</li>\n`):(s(n),i+=`<p>${r}</p>\n`)}),s(0),i+=" </body>\n</html>\n",i}const cr={icons:st.Pt,ns:b,media:ya,pad:p,style:tt,utils:a,widgets:r},lr=g.Namespace("http://www.w3.org/2002/01/bookmark#"),pr=F,ur=window.document||null;function dr(e,t){return new Promise(function(n,i){v.store.updater.update(e,t,function(e,t,a){t?n():i(new Error(a))})})}async function mr(e,t,n){await v.store.fetcher.load(e.bookmarkDocument);const i=v.store.each(null,lr("recalls"),t,e.bookmarkDocument);if(i.length){if(!confirm("Delete bookmark on this?"+i.length))return;for(let e=0;e<i.length;e++)try{await dr(v.store.connectedStatements(i[e]),[]),n.style.backgroundColor="white",xe.Rm("Bookmark deleted: "+i[e])}catch(e){xe.z3("Cant delete bookmark:"+e),xe.R8("Cannot delete bookmark:"+e)}}else{const i=await async function(e,t){let n="";const i=v.authn.currentUser();if(!i)throw new Error("Must be logged on to add Bookmark");const a=v.store.any(t,b.foaf("maker"));n=pr(a)+": "+v.store.anyValue(t,b.sioc("content")).slice(0,80);const o=e.bookmarkDocument,s=cr.widgets.newThing(o,n),r=[g.st(o,cr.ns.dct("references"),s,o),g.st(s,cr.ns.rdf("type"),lr("Bookmark"),o),g.st(s,cr.ns.dct("created"),new Date,o),g.st(s,lr("recalls"),t,o),g.st(s,cr.ns.foaf("maker"),i,o),g.st(s,cr.ns.dct("title"),n,o)];try{await dr([],r)}catch(e){const t="Making bookmark: "+e;return xe.R8(t),null}return s}(e,t);n.style.backgroundColor="yellow",xe.Rm("Bookmark added: "+i)}}const fr=window.document,hr={};async function gr(e,t,n,i){async function a(t){c.value===v.store.any(e,b.foaf("maker")).value&&(s(),await async function(e,t,n,i){const a=e.parentNode,o=kr(n,a,i,n.options,await Js(t));a.insertBefore(o,e),o.originalRow=e,e.style.visibility="hidden"}(t,e,i,n))}const o=fr.createElement("div");if(await Js(e).value===b.schema("dateDeleted").value)return o;function s(){o.parentElement.parentElement.removeChild(o.parentElement)}async function r(e){await v.store.updater.update(v.store.connectedStatements(e),[])}let c=v.authn.currentUser();function l(e,n,i,a,o,s){function c(){l.style.backgroundColor=d?"yellow":"white"}const l=Ut(fr,i,F(a),async function(i){if(d)await r(d),d=null,c();else{d=_i(o);const i=[g.st(d,b.schema("agent"),e.me,o),g.st(d,b.rdf("type"),a,o),g.st(d,b.schema("target"),n,o)];if(await v.store.updater.update([],i),c(),s){let e=!1;for(let t=0;t<s.length;t++){const n=p(s[t]);n&&(await r(n),e=!0)}e&&Jt(t)}}});function p(t){const i=v.store.each(null,b.schema("agent"),e.me,o).filter(e=>v.store.holds(e,b.rdf("type"),t,o)).filter(e=>v.store.holds(e,b.schema("target"),n,o));return i.length?i[0]:null}function u(){d=p(a),c()}let d;return l.refresh=u,u(),l}if(c&&v.store.holds(e,b.foaf("maker"),c)&&(o.appendChild(Mt(fr,o,"message",async function(){const a=v.store.any(e,b.foaf("maker"));if(c)if(c.sameTerm(a)){try{await i.deleteMessage(e)}catch(e){const i="Error deleting messaage "+e;xe.R8(i),alert(i),(n.statusArea||t.parentNode).appendChild(ot(fr,i))}t.parentNode.removeChild(t)}else alert("You can't delete the message, you are not logged in as the author, "+a);else alert("You can't delete the message, you are not logged in.");s()})),o.appendChild(Ut(fr,st.Pt.iconBase+"noun_253504.svg","edit",()=>a(t)))),async function(e,t){let n;if(e.bookmarkDocument)return n=cr.widgets.button(ur,cr.icons.iconBase+"noun_45961.svg",pr(lr("Bookmark")),()=>{mr(e,t,n)}),n.target=t,await async function(t){await v.store.fetcher.load(e.bookmarkDocument);const n=v.store.any(null,lr("recalls"),t.target,e.bookmarkDocument);t.style=cr.style.buttonStyle,n&&(t.style.backgroundColor="yellow")}(n),n}(n).then(e=>{e&&o.appendChild(e)}),c=v.authn.currentUser(),c&&await Js(e).value!==b.schema("dateDeleted").value){const t={me:c,dom:fr,div:o};o.appendChild(l(t,e,st.Pt.iconBase+"noun_1384132.svg",b.schema("AgreeAction"),e.doc(),[b.schema("DisagreeAction")])),o.appendChild(l(t,e,st.Pt.iconBase+"noun_1384135.svg",b.schema("DisagreeAction"),e.doc(),[b.schema("AgreeAction")]))}v.store.any(e,b.dct("created"))&&o.appendChild(Ut(fr,st.Pt.iconBase+"noun-reply-5506924.svg","Reply in thread",async()=>{await async function(){const t=await i.createThread(e),a=n.chatOptions;if(!a)throw new Error("replyInThread: missing options");a.showThread(t,a),s()}()}));const p=o.appendChild(Ft(fr));return p.style.float="right",p.firstChild.style.opacity="0.3",p.addEventListener("click",s),o}hr[b.schema("AgreeAction")]="👍",hr[b.schema("DisagreeAction")]="👎",hr[b.schema("EndorseAction")]="⭐️",hr[b.schema("LikeAction")]="❤️";const br=window.document,vr=tt.messageBodyStyle,xr=F;const yr=function(e,t){const n=br.createElement("a");return t&&t.uri&&(n.setAttribute("href",t.uri),n.addEventListener("click",Zt,!0),n.setAttribute("style","color: #3B5998; text-decoration: none; ")),n.textContent=e,n};function wr(e){const t=v.store.any(e,b.foaf("nick"));return t?""+t.value:""+xr(e)}function Cr(e,t,n,i){const a=e.appendChild(yr(wr(t),t));t.uri&&v.store.fetcher.nowOrWhenFetched(t.doc(),void 0,function(e,n){a.textContent=wr(t)}),e.appendChild(br.createElement("br")),e.appendChild(yr(n,i))}async function Er(e,t,n,i,a){let o=!1;const s="1"===i.colorizeByAuthor||!0===i.colorizeByAuthor,r=v.store.any(t,b.foaf("maker")),c=v.store.any(t,b.dct("created")),l=await Js(t),p=v.store.any(l,b.foaf("maker")),u=r.uri===p?.uri?l:t,d=v.store.any(u,b.sioc("content")),m=await Ws(u);m.length>1&&xe.Rm("renderMessageRow versions: ",m.join(", "));const f=m.map(e=>v.store.each(e,b.sioc("has_reply"))).flat();let h=null;const g=[];for(const e of f)v.store.holds(e,b.rdf("type"),b.sioc("Thread"))?(h=e,xe.Rm("renderMessageRow: found thread: "+h)):g.push(e);g.length>1&&xe.Rm("renderMessageRow: found normal replies: ",g),h||(h=v.store.any(null,b.sioc("has_member"),t));const x=v.store.any(u,$rdf.sym(`${Os}proofValue`)),y={id:"",created:"",dateDeleted:"",content:"",maker:"",sig:""};y.id=u.uri,y.created=v.store.any(u,b.dct("created")).value,y.content=d.value,y.maker=r.uri,x?.value?async function(e){await v.store.fetcher.load(e);const t=await Fs(e);try{await v.store.fetcher.load(t);const n=v.store.any(e,b.solid("publicKey"));return n?.value}catch(e){return}}(r).then(e=>{e||xe.R8("message is signed but "+r.uri+" is missing publicKey");e?.match(/[0-9A-Fa-f]{6}/g)?x?.value&&!function(e,t,n){return Bs.verify(Fa(e),Fa(Ms(t)),Fa(n))}(x?.value,y,e)&&xe.R8("invalid signature\n"+y.id):xe.R8("invalid publicKey hex string\n"+r.uri+"\n"+e)}):(o=!0,xe.R8(u.uri+" is unsigned"));const w=await async function(e){let t=e;const n={};for(;t;){if(n[t.uri])return xe.z3("originalVersion: verion loop"+e),e;n[t.uri]=!0,e=t,await v.store.fetcher.load(e),t=v.store.any(null,b.dct("isReplacedBy"),e,e.doc())}return e}(t),C=!t.sameTerm(w),E=v.store.the(w,b.dct("created"),null,w.doc())||v.store.the(t,b.dct("created"),null,t.doc()),k=br.createElement("tr");o&&k.setAttribute("style","background-color: red"),k.AJAR_date=E.value,k.AJAR_subject=t;const A=br.createElement("td");if(k.appendChild(A),i.authorDateOnLeft)Cr(A,r,At(E.value),t);else{const e=br.createElement("img");e.setAttribute("style","max-height: 2.5em; max-width: 2.5em; border-radius: 0.5em; margin: auto;"),Dt(e,r),A.appendChild(e)}let _=At(E.value);C&&(_+=" ... "+At(c.value));const T=k.appendChild(br.createElement("td"));i.authorDateOnLeft||function(e,t,n,i){const a=e.appendChild(yr(xr(t),t));t.uri&&v.store.fetcher.nowOrWhenFetched(t.doc(),void 0,function(e,n){a.textContent=wr(t)});const o=e.appendChild(yr(n,i));o.style.fontSize="80%",o.style.marginLeft="1em",e.appendChild(br.createElement("br"))}(T,r,_,t);const S=d?d.value.trim():"??? no content?";let j=null;if(/^https?:\/[^ <>]*$/i.test(S)){if(/\.(gif|jpg|jpeg|tiff|png|svg)$/i.test(S)&&i.expandImagesInline){const e=function(e,t){const n=br.createElement("img");let i="10";t.inlineImageHeightEms&&(i=(""+t.inlineImageHeightEms).trim()),n.setAttribute("style","max-height: "+i+"em; border-radius: 1em; margin: 0.7em;"),e&&n.setAttribute("src",e);const a=br.createElement("a");return a.setAttribute("href",e),a.setAttribute("target","images"),a.appendChild(n),it(n,$rdf.sym(e)),a}(S,i);T.appendChild(e)}else{const e=T.appendChild(br.createElement("a"));j=e.appendChild(br.createElement("p")),e.href=S,j.textContent=S,T.appendChild(e)}}else j=br.createElement("p"),T.appendChild(j),j.textContent=S;if(j){const e=s?ir(r):function(e){return e?"#e8ffe8":"white"}(n);j.setAttribute("style",vr+"background-color: "+e+";")}const L=await async function(e,t){const n=fr.createElement("span");async function i(){if(n.innerHTML="",Qs(e))return n;const i=(await Ws(e)).map(e=>v.store.each(null,b.schema("target"),e,t)).flat();if(0===i.length)return n;const a=i.map(e=>[v.store.any(e,b.rdf("type"),null,t),v.store.any(e,b.sioc("content"),null,t),v.store.any(e,b.schema("agent"),null,t)]);a.sort(),a.forEach(e=>{const[t,i,a]=e;let o;a?(o=fr.createElement("a"),o.setAttribute("href",a.uri)):o=fr.createTextNode(""),o.textContent=i||hr[t]||"⬜️",n.appendChild(o)})}return i().then(xe.Rm("sentimentStripLinked: sentimentStripLinked async refreshed")),n.refresh=i,n}(t,t.doc());L.children.length&&(T.appendChild(br.createElement("br")),T.appendChild(L));const R=br.createElement("td");k.appendChild(R);const N=Ut(br,st.Pt.iconBase+"noun_243787.svg","...");return R.appendChild(N),N.addEventListener("click",async function(n){if(k.toolTR)return k.parentNode.removeChild(k.toolTR),void delete k.toolTR;const o=br.createElement("tr"),s=await gr(t,k,{...a,chatOptions:i},e);s.style="border: 0.05em solid #888; border-radius: 0 0 0.7em 0.7em; border-top: 0; height:3.5em; background-color: #fff;",k.nextSibling?k.parentElement.insertBefore(o,k.nextSibling):k.parentElement.appendChild(o),k.toolTR=o,o.appendChild(br.createElement("td"));const r=o.appendChild(br.createElement("td"));o.appendChild(br.createElement("td")),r.appendChild(s)}),h&&i.showThread&&R.appendChild(Ut(br,st.Pt.iconBase+"noun_1180164.svg","see thread",e=>{i.showThread(h,i)})),k}function kr(e,t,n,i,a){async function o(e){await s(h.value,!0)}async function s(o,s){let r;s&&(h.setAttribute("style",vr+"color: #bbb;"),h.disabled=!0);try{r=await e.updateMessage(o,a,null,i.thread)}catch(e){return void(n.statusArea||u).appendChild(ot(br,"Error writing message: "+e))}await async function(o){if(await Ar(e,t,o,!1,i,n),a){const e=u.originalRow;e.parentNode?e.parentNode.removeChild(e):(xe.R8("No parentNode on old message "+e.textContent),e.style.backgroundColor="#fee",e.style.visibility="hidden"),u.parentNode.removeChild(u)}else s&&(h.value="",h.setAttribute("style",vr),h.disabled=!1,h.scrollIntoView(i.newestFirst),h.focus(),h.select())}(r)}function r(e){const n=t.chatDocument.dir().uri;at(v.store.fetcher,e,n+"Files",n+"Pictures",async function(e,t){await s(t)})}const c=async function(e){for(const t of e)await s(t)};let l,p;a?(l=v.store.anyValue(a,b.dct("created"),null,a.doc()),p=st.Pt.iconBase+"noun_1180158.svg"):(p=st.Pt.iconBase+"noun_383448.svg",l="9999-01-01T00:00:00Z");const u=br.createElement("tr"),d=br.createElement("td"),m=br.createElement("td"),f=br.createElement("td");let h,x;u.appendChild(d),u.appendChild(m),u.appendChild(f),u.AJAR_date=l;return Mi({div:m,dom:br}).then(t=>{!function(){if(i.menuHandler){const e=Ut(br,st.Pt.iconBase+"noun_243787.svg","More");e.setAttribute("style",tt.buttonStyle+"float: right;"),f.appendChild(e)}i.menuHandler;const t=v.authn.currentUser();if(Cr(d,t,"",null),h=br.createElement("textarea"),m.innerHTML="",m.appendChild(h),h.rows=3,a&&(h.value=v.store.anyValue(a,b.sioc("content"),null,a.doc())),h.setAttribute("style",vr+"background-color: #eef;"),h.addEventListener("keydown",async function(e){"Enter"===e.code&&(!e.shiftKey&&!i.shiftEnterSendsMessage||e.shiftKey&&i.shiftEnterSendsMessage)&&await o()},!1),nt(h,c,r),f.innerHTML="",x=Ut(br,p,"Send"),x.style.float="right",x.addEventListener("click",e=>o(),!1),f.appendChild(x),a){const e=f.appendChild(Ft(br));e.style.float="left",e.addEventListener("click",e=>function(e){e.originalRow.style.visibility="visible",e.parentNode.removeChild(e)}(u),!1),f.appendChild(e)}const n=e.dateFolder.leafDocumentFromDate(new Date);let l;m.appendChild(ya.cameraButton(br,v.store,function(){return l=$rdf.sym(n.dir().uri+"Image_"+Date.now()+".png"),l},async function(e){e&&await s(e.uri)})),Xs(e.channel,e.channel.doc())}(),Object.assign(t,n),async function(e){const t=lr("Bookmark");if(await Pi(e,t,!0),e.instances&&e.instances.length>0)e.bookmarkDocument=e.instances[0],e.instances.length>1&&xe.R8("More than one bookmark file! "+e.instances);else if(e.publicProfile){const n=g.sym(e.publicProfile.dir().uri+"bookmarks.ttl");try{xe.Rm("Creating new bookmark file "+n),await v.store.fetcher.createIfNotExists(n)}catch(t){return xe.R8("Can't make fresh bookmark file:"+t),e}await v.createTypeIndexLogic.registerInTypeIndex(n,e.index,t),e.bookmarkDocument=n}else xe.R8("You seem to have no bookmark file, nor even a profile file!");return e}(t).then(e=>{})}),u}async function Ar(e,t,n,i,a,o){const s=await Er(e,n,i,a,o);a.selectedMessage&&a.selectedMessage.sameTerm(n)&&(s.style.backgroundColor="yellow",a.selectedElement=s,t.selectedElement=s);let r=!1;for(let e=t.firstChild;e;e=e.nextSibling){const n=!0===a.newestfirst,i=s.AJAR_date;if(i>e.AJAR_date&&n||i<e.AJAR_date&&!n){t.insertBefore(s,e),r=!0;break}}r||t.appendChild(s)}const _r=v.store,Tr=[];function Sr(e){return Tr[e]}function jr(e,t){if("string"!=typeof t)throw xe.Rm("Non-string value of preference "+e+": "+t),new Error("Non-string value of preference "+e+": "+t);this.value[e]=t}function Lr(e,t){return new Promise(function(n,i){const a=_r.any(e,b.ui("sharedPreferences"));if(a)t.sharedPreferences=a,n(t);else{_r.updater.editable(e.doc())||(xe.Rm(` Cant make shared preferences, may not change ${e.doc}`),n(t));const a=g.sym(e.doc().uri+"#SharedPreferences"),o=[g.st(e,b.ui("sharedPreferences"),a,e.doc())];xe.Rm("Creating shared preferences "+a),_r.updater.update([],o,function(e,o,s){o?(t.sharedPreferences=a,n(t)):i(new Error("Error creating shared prefs: "+s))})}})}function Rr(e,t){return new Promise(function(n,i){Ui(t).then(t=>{if(!t.preferencesFile)return void xe.Rm("Not doing private class preferences as no access to preferences file. "+t.preferencesFileError);const a=_r.each(null,b.solid("forClass"),e,t.preferencesFile);let o,s,r=[];if(a.length){if(a.forEach(e=>{o=o||_r.any(e,b.solid("personalDefaults"))}),o)return t.personalDefaults=o,void n(t);o=_i(t.preferencesFile),s=a[0]}else s=_i(t.preferencesFile),r=[g.st(s,b.rdf("type"),b.solid("TypeRegistration"),t.preferencesFile),g.st(s,b.solid("forClass"),e,t.preferencesFile)];o=_i(t.preferencesFile),r.push(g.st(s,b.solid("personalDefaults"),o,t.preferencesFile)),_r.updater.update([],r,function(a,s,r){s?(t.personalDefaults=o,n(t)):i(new Error("Setting preferences for "+e+": "+r))})},e=>{i(e)})})}function Nr(e,t,n,i){const a=i.dom.createElement("div");return Ks(e,e.doc(),i.me).then(o=>{const s=i.dom;function r(e){a.appendChild(s.createElement("h5")).textContent=e}r("My view of this "+i.noun),di(s,a,{},o,n,e.doc(),(e,t)=>{e||Ct(i,t)}),r("Everyone's view of this "+i.noun),Lr(e,i).then(i=>{const o=i.sharedPreferences;di(s,a,{},o,n,e.doc(),(e,t)=>{e||Ct(i,t)}),r("My default view of any "+i.noun),Rr(t,i).then(e=>{di(s,a,{},e.personalDefaults,n,e.preferencesFile,(t,n)=>{t||Ct(e,n)})},e=>{Ct(i,e)})})},e=>{a.appendChild(ot(i.dom,e))}),a}function Ir(e){return e.datatype?e.datatype.equals(b.xsd("boolean"))?"1"===e.value:e.datatype.equals(b.xsd("dateTime"))||e.datatype.equals(b.xsd("date"))?new Date(e.value):e.datatype.equals(b.xsd("integer"))||e.datatype.equals(b.xsd("float"))||e.datatype.equals(b.xsd("decimal"))?Number(e.value):e.value:e}function $r(e,t,n,i){return new Promise(function(a,o){Lr(e,i).then(i=>{const s=i.sharedPreferences;if(i.me)Ks(e,e.doc(),i.me).then(e=>{Rr(t,i).then(t=>{const i=[],o=t.personalDefaults;n.forEach(t=>{const n=_r.any(e,t)||_r.any(s,t)||_r.any(o,t);n&&(i[t.uri]=Ir(n))}),a(i)},o)},o);else{const e=[];n.forEach(t=>{const n=_r.any(s,t);n&&(e[t.uri]=Ir(n))}),a(e)}})})}const Br={icons:st.Pt,log:i,ns:b,utils:a,widgets:r};class Dr extends HTMLElement{bodyContainer;refresh;tabContainer}function Or(e){const t=e.subject,n=e.dom||document,i=parseInt(e.orientation||"0"),a=e.backgroundColor||"#ddddcc",o=2&i,s=1&i,r=e.onClose,[c,l]=function(e){return function(e){let t=0;for(let n=0;n<3;n++)t+=parseInt(e.slice(2*n+1,2*n+3),16);return t>384}(e)?[Mr(e,"#ffffff",.3),"#000000"]:[Mr(e,"#000000",.3),"#ffffff"]}(a),p=`display: grid; width: auto; height: 100%; border: 0.1em; border-style: solid; border-color: ${c}; padding: 1em;`,u=n.createElement("div");u.setAttribute("style",tt.tabsRootElement),u.style.flexDirection=(s?"row":"column")+(o?"-reverse":"");const d=u.appendChild(n.createElement("nav"));d.setAttribute("style",tt.tabsNavElement);const m=u.appendChild(n.createElement("main"));m.setAttribute("style",tt.tabsMainElement);const f=d.appendChild(n.createElement("ul"));f.setAttribute("style",tt.tabContainer),f.style.flexDirection=""+(s?"column":"row");const h=m;u.tabContainer=f,u.bodyContainer=h;const g=["0.2em","0.2em","0","0"],b=`border-radius: ${g.concat(g).slice(i,i+4).join(" ")};`,x=["0.3em","0.3em","0","0.3em"],y=x.concat(x).slice(i,i+4),w=`margin: ${y.join(" ")};`,C=`padding: ${y.join(" ")};`,E=b+`position: relative; padding: 0.7em; max-width: 20em; color: ${l};`,k=`${E+w} opacity: 50%; background-color: ${a};`,A=`${E+w} background-color: ${c};`,_="height: 100%; width: 100%;",T=_+"display: none;";if(u.refresh=j,j(),!e.startEmpty&&f.children.length&&e.selectedTab){const t=Array.from(f.children).map(e=>e.firstChild).find(t=>t.dataset.name===e.selectedTab),n=e.selectedTab.uri,i=Array.from(f.children).find(e=>e.subject&&e.subject.uri&&e.subject.uri===n),a=i||t||f.children[0],o=a.firstChild;o?.click?o.click():a instanceof HTMLElement&&a.click()}else if(!e.startEmpty){const e=f.children[0],t=e?.firstChild;t?.click?t.click():e instanceof HTMLElement&&e.click()}return u;function S(t){const i=n.createElement("li");i.setAttribute("style",k),i.subject=t;const a=i.appendChild(n.createElement("button"));if(a.setAttribute("style",tt.makeNewSlot),a.onclick=function(){if(L(),R(),i.setAttribute("style",A),!i.bodyTR)return;i.bodyTR.setAttribute("style",_);const n=o(i);e.renderMain&&i.subject&&!1!==n.asSettings&&(n.innerHTML="loading item ..."+t,e.renderMain(n,i.subject),n.asSettings=!1)},e.renderTabSettings&&i.subject){const a=n.createElement("button");a.textContent="...",a.setAttribute("style",tt.ellipsis),a.onclick=function(){if(L(),R(),i.setAttribute("style",A),!i.bodyTR)return;i.bodyTR.setAttribute("style",_);const n=o(i);e.renderTabSettings&&i.subject&&!0!==n.asSettings&&(n.innerHTML="loading settings ..."+t,e.renderTabSettings(n,i.subject),n.asSettings=!0)},i.appendChild(a)}return e.renderTab?e.renderTab(a,t):a.innerHTML=F(t),i;function o(e){const t=e.bodyTR?.children[0];if(t)return t;const i=e.bodyTR.appendChild(n.createElement("main"));return i.setAttribute("style",p),i}}function j(){const i=e.items?e.items:!1!==e.ordered?v.store.the(t,e.predicate).elements:v.store.each(t,e.predicate);let a,o,s,c,l,p=!1;for(c=0;c<f.children.length;c++)if(a=f.children[c],c>=i.length||a.subject&&!a.subject.sameTerm(i[c])){p=!0;break}if(!p&&i.length===f.children.length)return;for(l=f.children.length-1;l>=0&&(a=f.children[l],s=l-f.children.length+i.length,!a.subject||a.subject.sameTerm(i[s]));l--);const u=i.slice(c,l-f.children.length+i.length+1);for(;l>=c;)f.removeChild(f.children[c]),h.removeChild(h.children[c]),l-=1;for(o=0;o<u.length;o++){const e=S(u[o]),t=n.createElement("div");e.bodyTR=t,c===f.children.length?(f.appendChild(e),h.appendChild(t)):(f.insertBefore(e,f.children[c+o]),h.insertBefore(t,h.children[c+o]))}r&&function(e){if(e.dataset.onCloseSet){const t=e.querySelector(".unstyled");e.removeChild(t)}const t=n.createElement("li");t.classList.add("unstyled");const i=Ft(n,r);i.setAttribute("style",i.getAttribute("style")+C),t.appendChild(i),e.appendChild(t),e.dataset.onCloseSet="true"}(f)}function L(){for(let e=0;e<f.children.length;e++){const t=f.children[e];t.classList.contains("unstyled")||t.setAttribute("style",k)}}function R(){for(let e=0;e<h.children.length;e++)h.children[e].setAttribute("style",T)}}function Mr(e,t,n){let i,a,o,s="#";const r="0123456789abcdef";for(let c=0;c<3;c++){i=parseInt(e.slice(2*c+1,2*c+3),16),a=parseInt(t.slice(2*c+1,2*c+3),16),o=i*(1-n)+a*n;const l=parseInt((""+o).split(".")[0]),p=parseInt((""+l/16).split(".")[0]),u=parseInt((""+l%16).split(".")[0]);s+=r[p]+r[u]}return s}const Ur='\n<svg xmlns="http://www.w3.org/2000/svg" width="26" height="26" viewBox="0 0 26 26" fill="none">\n <path fill-rule="evenodd" clip-rule="evenodd" d="M13 25C19.6274 25 25 19.6274 25 13C25 6.37258 19.6274 1 13 1C6.37258 1 1 6.37258 1 13C1 19.6274 6.37258 25 13 25Z" fill="#D8D8D8" stroke="#8B8B8B"/>\n <mask id="mask0" mask-type="alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="26" height="26">\n <path fill-rule="evenodd" clip-rule="evenodd" d="M13 25C19.6274 25 25 19.6274 25 13C25 6.37258 19.6274 1 13 1C6.37258 1 1 6.37258 1 13C1 19.6274 6.37258 25 13 25Z" fill="white" stroke="white"/>\n </mask>\n <g mask="url(#mask0)">\n <path fill-rule="evenodd" clip-rule="evenodd" d="M17.0468 10.4586C17.0468 14.4979 15.4281 16.9214 12.9999 16.9214C10.5718 16.9214 8.95298 14.4979 8.95298 10.4586C8.95298 6.41931 12.9999 6.41931 12.9999 6.41931C12.9999 6.41931 17.0468 6.41931 17.0468 10.4586ZM4.09668 23.3842C6.52483 17.7293 12.9999 17.7293 12.9999 17.7293C12.9999 17.7293 19.475 17.7293 21.9031 23.3842C21.9031 23.3842 17.8481 25 12.9999 25C8.15169 25 4.09668 23.3842 4.09668 23.3842Z" fill="#8B8B8B"/>\n </g>\n</svg>';var Fr=n(565);const Pr=st.Pt.iconBase+"noun_help.svg",zr="https://solidproject.org/assets/img/solid-emblem.svg";function qr(e,t,n,i,a){return async()=>{const o=v.authn.currentUser();e.innerHTML="",e.appendChild(await async function(e,t,n,i,a){const o=document.createElement("a");o.href=t.uri,o.setAttribute("style",tt.headerBannerLink);const s=document.createElement("img");a&&(s.src=a.logo?a.logo:zr);s.setAttribute("style",tt.headerBannerIcon),o.appendChild(s);const r=n?await async function(e,t,n){const i=e.fetcher;i&&await i.load(t);const a=document.createElement("ul");a.setAttribute("style",tt.headerUserMenuList),n&&n.forEach(function(e){"url"===(e.url?"url":"onclick")?a.appendChild(Gr(Vr(e.label,e.url,e.target))):a.appendChild(Gr(Hr(e.label,e.onclick)))});const o=document.createElement("nav");o.setAttribute("style",tt.headerUserMenuNavigationMenuNotDisplayed),o.setAttribute("aria-hidden","true"),o.setAttribute("id","loggedInNav"),o.appendChild(a);const s=document.createElement("button");s.setAttribute("style",tt.headerUserMenuTrigger),s.type="button";const r=function(e,t){let n=null;try{if(n=$t(t),!n)return Ur}catch{return Ur}const i=document.createElement("div");return i.setAttribute("style",tt.headerUserMenuPhoto),i.style.backgroundImage=`url(${n})`,i}(0,t);"string"==typeof r?s.innerHTML=r:s.appendChild(r);const c=document.createElement("div");c.setAttribute("style",tt.headerBannerUserMenuNotDisplayed),c.appendChild(s),c.appendChild(o);const l=(0,Fr.nF)(e=>Wr(e,s,o),50);s.addEventListener("click",l);let p=setTimeout(()=>null,0);return c.addEventListener("mouseover",e=>{clearTimeout(p),l(e);const t=document.getElementById("loggedInNav");t?.setAttribute("style",tt.headerUserMenuNavigationMenu)}),c.addEventListener("mouseout",e=>{p=setTimeout(()=>l(e),200);const t=document.getElementById("loggedInNav");t?.setAttribute("style",tt.headerUserMenuNavigationMenuNotDisplayed)}),c}(e,n,i):function(){const e=document.createElement("div");return e.setAttribute("style",tt.headerBannerLogin),e.appendChild(Wi(document,null,{})),e}(),c=document.createElement("div");c.setAttribute("style",tt.headerBanner),c.appendChild(o);const l=document.createElement("div");if(l.setAttribute("style",tt.headerBannerRightMenu),l.appendChild(r),a&&a.helpMenuList){const e=function(e,t){if(!t)return;const n=document.createElement("ul");n.setAttribute("style",tt.headerUserMenuList),t.forEach(function(e){"url"===(e.url?"url":"onclick")?n.appendChild(Gr(Vr(e.label,e.url,e.target))):n.appendChild(Gr(Hr(e.label,e.onclick)))});const i=document.createElement("nav");i.setAttribute("style",tt.headerUserMenuNavigationMenuNotDisplayed),i.setAttribute("aria-hidden","true"),i.setAttribute("id","helperNav"),i.appendChild(n);const a=document.createElement("div");a.setAttribute("style",tt.headerBannerUserMenu),a.appendChild(i);const o=document.createElement("button");o.setAttribute("style",tt.headerUserMenuTrigger),o.type="button";const s=document.createElement("img");s.src=e&&e.helpIcon?e.helpIcon:st.Pt.iconBase+Pr,s.setAttribute("style",tt.headerUserMenuTriggerImg),a.appendChild(o),o.appendChild(s);const r=(0,Fr.nF)(e=>Wr(e,o,i),50);o.addEventListener("click",r);let c=setTimeout(()=>null,0);return a.addEventListener("mouseover",e=>{clearTimeout(c),r(e);const t=document.getElementById("helperNav");t?.setAttribute("style",tt.headerUserMenuNavigationMenu)}),a.addEventListener("mouseout",e=>{c=setTimeout(()=>r(e),200);const t=document.getElementById("helperNav");t?.setAttribute("style",tt.headerUserMenuNavigationMenuNotDisplayed)}),a}(a,a.helpMenuList);l.appendChild(e)}return c.appendChild(l),c}(t,n,o,i,a))}}function Hr(e,t){const n=document.createElement("button");return n.setAttribute("style",tt.headerUserMenuButton),n.onmouseover=function(){n.setAttribute("style",tt.headerUserMenuButtonHover)},n.onmouseout=function(){n.setAttribute("style",tt.headerUserMenuButton)},n.addEventListener("click",t),n.innerText=e,n}function Vr(e,t,n){const i=document.createElement("a");return i.setAttribute("style",tt.headerUserMenuLink),i.onmouseover=function(){i.setAttribute("style",tt.headerUserMenuLinkHover)},i.onmouseout=function(){i.setAttribute("style",tt.headerUserMenuLink)},i.href=t,i.innerText=e,n&&(i.target=n),i}function Gr(e){const t=document.createElement("li");return t.setAttribute("style",tt.headerUserMenuListItem),t.appendChild(e),t}function Wr(e,t,n){const i="true"===t.getAttribute("aria-expanded"),a="mouseover"===e.type,o="mouseout"===e.type;i&&a||!i&&o||(t.setAttribute("aria-expanded",(!i).toString()),n.setAttribute("aria-hidden",i.toString()))}const Jr="https://solidproject.org",Qr="solidproject.org";function Zr(e,t,n,i,a){return async()=>{const o=v.authn.currentUser();e.innerHTML="",e.appendChild(await function(e,t,n,i,a){const o=document.createElement("div");o.setAttribute("style",tt.footer);const s=document.createElement("a");if(s.href=a&&a.solidProjectUrl?a.solidProjectUrl:Jr,s.innerText=a&&a.solidProjectName?a.solidProjectName:Qr,!n||!i||t&&t.equals(i)){const e=document.createElement("span");return e.innerText="Powered by ",o.appendChild(e),o.appendChild(s),o}const r=document.createElement("span");r.innerText="You're visiting ";const c=document.createElement("a");c.href=n.uri,c.innerText="the Pod";const l=document.createElement("span");l.innerText=" controlled by ";const p=document.createElement("a");p.href=i.uri,p.innerText=(0,Fr.mG)(e,i);const u=document.createElement("span");u.innerText=". For more info, check out ";const d=document.createElement("span");return d.innerText=".",o.appendChild(r),o.appendChild(c),o.appendChild(l),o.appendChild(p),o.appendChild(u),o.appendChild(s),o.appendChild(d),o}(t,o,n,i,a))}}const Yr=window?window.document:null;"undefined"!=typeof window&&(window.UI={ns:b,acl:ua,aclControl:da,create:fa,createTypes:m,dom:Yr,icons:st.Pt,language:o,log:i,login:c,matrix:ga,media:ya,messageArea:function(e,t,n,i,a){t=t||v.solidLogicSingleton.store,i=i.doc();const o=wa.ns,s=g.Namespace("http://www.w3.org/2005/01/wf/flow#"),r=g.Namespace("http://purl.org/dc/terms/"),c=!!(a=a||{}).newestFirst,l="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;",p=e.createElement("div");let u,d;const m=v.solidLogicSingleton.store.updater,f=function(t,n){const i=e.createElement("a");return n&&n.uri&&(i.setAttribute("href",n.uri),i.addEventListener("click",wa.widgets.openHrefInOutlineMode,!0),i.setAttribute("style","color: #3B5998; text-decoration: none; ")),i.textContent=t,i},h=function(t,n){const i=e.createElement("pre");return i.setAttribute("style",n||"color: grey"),p.appendChild(i),i.appendChild(e.createTextNode(t)),i},b=function(e){h(e,"color: #800;")};function x(e){const t=v.solidLogicSingleton.store.any(e,wa.ns.foaf("nick"));return t?""+t.value:""+F(e)}function y(t,n,i,a){const o=t.appendChild(f(x(n),n));n.uri&&v.solidLogicSingleton.store.fetcher.nowOrWhenFetched(n.doc(),void 0,function(e,t){o.textContent=x(n)}),t.appendChild(e.createElement("br")),t.appendChild(f(i,a))}function w(e,n){const i={};let a,s;for(a=n.firstChild;a;a=a.nextSibling)a.AJAR_subject&&(i[a.AJAR_subject.uri]=!0);const r=t.each(e,o.wf("message")),c={};for(r.forEach(function(e){c[e.uri]=!0,i[e.uri]||C(e)}),a=n.firstChild;a;)s=a.nextSibling,a.AJAR_subject&&!c[a.AJAR_subject.uri]&&n.removeChild(a),a=s}const C=function(e){const n={"?msg":e,"?creator":t.any(e,o.foaf("maker")),"?date":t.any(e,r("created")),"?content":t.any(e,o.sioc("content"))};E(n,!0)},E=function(i,a){const o=i["?creator"],s=i["?msg"],r=i["?date"],p=i["?content"],d=r.value,f=e.createElement("tr");f.AJAR_date=d,f.AJAR_subject=s;let h=!1;for(let e=u.firstChild;e;e=e.nextSibling)if(d>e.AJAR_date&&c||d<e.AJAR_date&&!c){u.insertBefore(f,e),h=!0;break}h||u.appendChild(f);const g=e.createElement("td");f.appendChild(g),y(g,o,wa.widgets.shortDate(d),s);const v=e.createElement("td");f.appendChild(v);const x=e.createElement("p");x.setAttribute("style",l+(a?"background-color: #e8ffe8;":"background-color: #white;")),v.appendChild(x),x.textContent=p.value;const C=e.createElement("td");f.appendChild(C);const E=e.createElement("button");C.appendChild(E),E.textContent="-",f.setAttribute("class","hoverControl"),E.setAttribute("class","hoverControlHide"),E.setAttribute("style","color: red;"),E.addEventListener("click",function(i){C.removeChild(E);const a=e.createElement("button");a.textContent="cancel",C.appendChild(a).addEventListener("click",function(e){C.removeChild(o),C.removeChild(a),C.appendChild(E)},!1);const o=e.createElement("button");o.textContent="Delete message",C.appendChild(o).addEventListener("click",function(e){C.removeChild(o),C.removeChild(a),function(e){const i=t.statementsMatching(e).concat(t.statementsMatching(void 0,void 0,e));m.update(i,[],function(e,t,i){t?w(n,u):b("Cant delete messages:"+i)})}(s)},!1)},!1)};u=e.createElement("table"),u.fresh=!1,p.appendChild(u),u.setAttribute("style","width: 100%;");const k=function(){const a=e.createElement("tr"),s=e.createElement("td"),c=e.createElement("td"),p=e.createElement("td");a.appendChild(s),a.appendChild(c),a.appendChild(p),a.AJAR_date="9999-01-01T00:00:00Z";const u=function(){f.setAttribute("class","pendingedit"),f.disabled=!0;const s=[],c=new Date,l=""+c.getTime(),p=g.term(c),u=t.sym(i.uri+"#Msg"+l);s.push(new g.Statement(n,o.wf("message"),u,i)),s.push(new g.Statement(u,o.sioc("content"),t.literal(f.value),i)),s.push(new g.Statement(u,r("created"),p,i)),d&&s.push(new g.Statement(u,o.foaf("maker"),d,i)),m.update([],s,function(n,i,o){if(i){const e={"?msg":u,"?content":t.literal(f.value),"?date":p,"?creator":d};E(e,!1),f.value="",f.setAttribute("class",""),f.disabled=!1}else a.appendChild(wa.widgets.errorMessageBlock(e,"Error writing message: "+o))})};let f,h;return a.appendChild(e.createElement("br")),Mi({div:c,dom:e}).then(t=>{d=t.me,y(s,d,"",null),f=e.createElement("textarea"),c.innerHTML="",c.appendChild(f),f.rows=3,f.setAttribute("style",l+"background-color: #eef;"),f.addEventListener("keyup",function(e){13===e.keyCode&&(e.altKey||u())},!1),p.innerHTML="",h=wa.widgets.button(e,wa.icons.iconBase+"noun_383448.svg","Send"),h.setAttribute("style",wa.style.buttonStyle+"float: right;"),h.addEventListener("click",u,!1),p.appendChild(h)}),a}();let A;if(c?u.insertBefore(k,u.firstChild):u.appendChild(k),a.query)A=a.query;else{A=new g.Query("Messages");const e={};["msg","date","creator","content"].forEach(function(t){A.vars.push(e[t]=g.variable(t))}),A.pat.add(n,s("message"),e.msg),A.pat.add(e.msg,o.dct("created"),e.date),A.pat.add(e.msg,o.foaf("maker"),e.creator),A.pat.add(e.msg,o.sioc("content"),e.content)}return t.query(A,E,void 0,function(){u.fresh=!0}),p.refresh=function(){w(n,u)},p},infiniteMessageArea:async function(e,t,n,i){async function a(e,t){if(Qs(e)&&!i.showDeletedMessages)return;let n=v.store.any(null,b.sioc("has_member"),e,e.doc());const a=v.store.any(e,b.sioc("id"),null,e.doc());if(a&&!n&&(n=v.store.any(null,b.sioc("has_member"),a,e.doc())),i.thread){if(v.store.holds(e,b.sioc("has_reply"),i.thread));else if(!n||!n.sameTerm(i.thread))return}else if(n)return;t.fresh||await Ar(u,t,e,t.fresh,i,h)}async function o(e){const t=e?w:C;let n=t.messageTable.date;if(e&&w.limit&&n<=w.limit)return x||await c(),!0;if(n=await d.loadPrevious(n,e),n||e||x||await c(),!n)return!0;let i=!1;if(!e){const e=d.leafDocumentFromDate(new Date);i=d.leafDocumentFromDate(n).sameTerm(e)}const a=await s(n,i);return t.messageTable=a,(e?p:!p)?m.appendChild(a):m.insertBefore(a,m.firstChild),i}async function s(t,n){const i=d.leafDocumentFromDate(t);try{await v.store.fetcher.createIfNotExists(i)}catch(a){const o=e.createElement("table").appendChild(e.createElement("tr"));return a.response&&a.response.status&&404===a.response.status?await r(t,n):(xe.Rm("*** Error NON 404 for chat file "+i),o.appendChild(ot(e,a,"pink")),o)}return await r(t,n)}async function r(t,n){async function s(){return await o(!1)}const r=e.createElement("table");r.style.width="100%",r.extendBackwards=async function(){const e=await o(!0);return e?r.initial=!0:r.extendedBack=!0,e},r.extendForwards=s,r.date=t;const c=d.leafDocumentFromDate(t);if(r.chatDocument=c,r.fresh=!1,r.setAttribute("style","width: 100%;"),n){r.final=!0,x=r,C.messageTable=r;const e=kr(u,r,h,i);p?r.insertBefore(e,r.firstChild):r.appendChild(e),r.inputRow=e}{const n=e.createElement("tr"),a=n.appendChild(e.createElement("td"));a.style="text-align: center; vertical-align: middle; color: #888; font-style: italic;",a.textContent=At(t.toISOString(),!0);const o=n.appendChild(e.createElement("td"));i.includeRemoveButton&&o.appendChild(Ft(e,e=>{m.parentNode.removeChild(m)})),r.extendedForwards=!1,p?r.appendChild(n):r.insertBefore(n,r.firstChild)}const l=v.store.statementsMatching(null,b.wf("message"),null,c);!n&&l.length;for(const e of l)await a(e.object,r);return r.fresh=!0,r}async function c(){const e=new Date,t=d.leafDocumentFromDate(e),i=await s(e,!0);return m.appendChild(i),m.refresh=async function(){var e;await async function(){const e=d.leafDocumentFromDate(new Date);if(!e.sameTerm(C.messageTable.chatDocument)){x.inputRow&&(x.removeChild(x.inputRow),delete x.inputRow);const t=C.messageTable.chatDocument;if(await c(),!v.store.holds(t,b.rdfs("seeAlso"),e,t)){const n=[g.st(t,b.rdfs("seeAlso"),e,t)];try{v.store.updater.update([],n)}catch(e){alert("Unable to link old chat file to new one:"+e)}}}}(new Date),await async function(e,t){const n={};let i,o;for(i=t.firstChild;i;i=i.nextSibling)i.AJAR_subject&&(n[i.AJAR_subject.uri]=!0);const s=v.store.each(e,b.wf("message"),null,t.chatDocument),r={};for(const e of s)r[e.uri]=!0,n[e.uri]||await a(e,t);for(i=t.firstChild;i;)o=i.nextSibling,i.AJAR_subject&&!r[i.AJAR_subject.uri]&&t.removeChild(i),i=o;for(i=t.firstChild;i;i=i.nextSibling)i.AJAR_subject&&Jt(i)}(n,i),e=n,"Notification"in window?"granted"===Notification.permission?new Notification(e):"denied"!==Notification.permission&&Notification.requestPermission().then(function(t){"granted"===t&&new Notification(e)}):xe.R8("This browser does no t support desktop notification")},v.store.updater.addDownstreamChangeListener(t,m.refresh),x=i,C.messageTable=x,i}async function l(e,t){if(E)return;E=!0;const n=!t;let a;for(;m.scrollTop<150&&w.messageTable&&!w.messageTable.initial&&w.messageTable.extendBackwards;){if(0===m.scrollHeight)return setTimeout(l,2e3),void(E=!1);const e=m.scrollHeight-m.scrollTop;if(a=await w.messageTable.extendBackwards(),n&&(m.scrollTop=m.scrollHeight-e),t&&t(),a)break}for(;i.selectedMessage&&m.scrollHeight-m.scrollTop-m.clientHeight<150&&C.messageTable&&!C.messageTable.final&&C.messageTable.extendForwards;){const e=m.scrollTop;if(a=await C.messageTable.extendForwards(),n&&(m.scrollTop=e),t&&t(),a)break}E=!1}(i=i||{}).authorDateOnLeft=!1;const p="1"===i.newestFirst||!0===i.newestFirst,u=new Gs(n,i),d=u.dateFolder,m=e.createElement("div");u.div=m;const f=m.appendChild(e.createElement("div")),h={dom:e,statusArea:f,div:f};let x,y;const w={messageTable:null},C={messageTable:null};if(i.thread){const e=i.thread;if(y=v.store.any(null,b.sioc("has_reply"),e,e.doc()),y){const e=v.store.any(y,b.dct("created"),null,y.doc());e&&(w.limit=new Date(e.value))}}let E=!1;return await async function(){function e(){r&&r.selectedElement&&r.selectedElement.scrollIntoView({block:"center"})}let t,n,a;i.selectedMessage&&(n=i.selectedMessage.doc()),y&&(a=y.doc());const o=n||a;if(o){const e=new Date;t=d.leafDocumentFromDate(e).sameTerm(o)}let r;if(o&&!t){const n=d.dateFromLeafDocument(o);r=await s(n,t),m.appendChild(r),w.messageTable=r,C.messageTable=r,e(),setTimeout(e,1e3)}else await c(),w.messageTable=x,C.messageTable=x;await l(0,function(){i.selectedElement?i.selectedElement.scrollIntoView({block:"center"}):x.inputRow.scrollIntoView&&x.inputRow.scrollIntoView(p)}),m.addEventListener("scroll",l),i.solo&&document.body.addEventListener("scroll",l)}(),m},pad:p,participation:l,preferences:u,style:tt,table:function(e,t){const n=t.sourceDocument,i=t.tableClass,a=t.query,o=Br.ns,s=v.store,r={},c={"http://www.w3.org/2002/07/owl#sameAs":!0,"http://www.w3.org/1999/02/22-rdf-syntax-ns#type":!0},l={"http://www.w3.org/2001/XMLSchema#decimal":!0,"http://www.w3.org/2001/XMLSchema#float":!0,"http://www.w3.org/2001/XMLSchema#double":!0,"http://www.w3.org/2001/XMLSchema#integer":!0,"http://www.w3.org/2001/XMLSchema#nonNegativeInteger":!0,"http://www.w3.org/2001/XMLSchema#positiveInteger":!0,"http://www.w3.org/2001/XMLSchema#nonPositiveInteger":!0,"http://www.w3.org/2001/XMLSchema#negativeInteger":!0,"http://www.w3.org/2001/XMLSchema#long":!0,"http://www.w3.org/2001/XMLSchema#int":!0,"http://www.w3.org/2001/XMLSchema#short":!0,"http://www.w3.org/2001/XMLSchema#byte":!0,"http://www.w3.org/2001/XMLSchema#unsignedLong":!0,"http://www.w3.org/2001/XMLSchema#unsignedInt":!0,"http://www.w3.org/2001/XMLSchema#unsignedShort":!0,"http://www.w3.org/2001/XMLSchema#unsignedByte":!0},p={"http://www.w3.org/2001/XMLSchema#dateTime":!0,"http://www.w3.org/2001/XMLSchema#date":!0},u={"http://xmlns.com/foaf/0.1/Image":!0,"http://purl.org/dc/terms/Image":!0},d=t.keyVariable||"?_row";let m,f,h,b,x=0,y=null,w=null;const C=e.createElement("div");C.className="tableViewPane",C.appendChild(function(){const t=e.createElement("table");t.setAttribute("class","toolbar");const n=e.createElement("tr");return h=e.createElement("td"),n.appendChild(h),b=e.createElement("td"),n.appendChild(b),t.appendChild(n),t}());const E=e.createElement("div");let k;if(C.appendChild(E),C.refresh=function(){Y(k.query,k.logicalRows,k.columns,k)},a)k=te(a),E.appendChild(k);else{const t=function(){let e,t;const a=function(){const e={},t=s.statementsMatching(void 0,Br.ns.rdf("type"),i,n),a={};for(let n=0;n<t.length;++n){const i=t[n].object;if("NamedNode"!==i.termType)continue;const o=I(e,i);i.uri in a||(a[i.uri]=[]),a[i.uri].push(t[n].subject),o.addUse()}return[a,e]}();e=a[0],t=a[1];for(const n in e){const i=e[n];B(t[n],i)}return[new S(null),L(t)]}();m=t[0],f=t[1],i||h.appendChild(function(t,n){const i=e.createElement("div");i.appendChild(e.createTextNode("Select type: "));const a=e.createElement("select");a.appendChild(R("All types","null"));for(const e in n)a.appendChild(R(n[e].getLabel(),e));return a.addEventListener("click",function(){let e;e="null"===a.value?t:n[a.value],_(e)},!1),i.appendChild(a),i}(m,f)),w=function(e){let t,n=-1,i=null;for(t in e){const a=e[t];a.useCount>n&&(i=a,n=a.useCount)}return i}(f),_(w||m)}return C;function A(e){const t=new g.Query,n=s.variable(d.slice(1));return function(e,t){const n=t.getColumns();for(let t=0;t<n.length;++t){const i=s.variable("_col"+t);e.vars.push(i),n[t].setVariable(i)}}(t,e),function(e,t,n){let i=n.type;i||(i=s.variable("_any")),e.pat.add(t,Br.ns.rdf("type"),i)}(t,n,e),function(e,t,n){const i=n.getColumns();for(let n=0;n<i.length;++n){const a=i[n],o=s.formula();o.add(t,a.predicate,a.getVariable()),e.pat.optional.push(o)}}(t,n,e),t}function _(t){T(b),b.appendChild(function(t){const n=e.createElement("div"),i=t.getUnusedColumns();if(i.sort(function(e,t){const n=e.sortKey(),i=t.sortKey();return(n>i)-(n<i)}),i.length>0){n.appendChild(e.createTextNode("Add column: "));const a=e.createElement("select");a.appendChild(R("","-1"));for(let e=0;e<i.length;++e){const t=i[e];a.appendChild(R(t.getLabel(),""+e))}n.appendChild(a),a.addEventListener("click",function(){const e=Number(a.value);e>=0&&(t.addColumn(i[e]),_(t))},!1)}return n}(t)),function(e,t){y&&(y.running=!1);const n=te(e,t);T(E),E.appendChild(n),y=e}(A(t),t)}function T(e){for(;e.childNodes.length>0;)e.removeChild(e.childNodes[0])}function S(e){this.type=e,this.columns=null,this.allColumns=[],this.useCount=0,this.getAllColumns=function(){return this.allColumns},this.getColumns=function(){if(!this.columns){const e=this.getAllColumns();this.columns=e.slice(0,7)}return this.columns},this.getUnusedColumns=function(){const e=this.getAllColumns(),t=this.getColumns(),n=[];for(let i=0;i<e.length;++i)-1===t.indexOf(e[i])&&n.push(e[i]);return n},this.addColumn=function(e){this.columns.push(e)},this.removeColumn=function(e){this.columns=this.columns.filter(function(t){return t!==e})},this.getLabel=function(){return F(this.type)},this.addUse=function(){this.useCount+=1}}function j(){this.useCount=0,this.checkedAnyValues=!1,this.possiblyLiteral=!0,this.possiblyNumber=!0,this.constraints=[],this.checkValue=function(e){const t=e.termType;this.possiblyLiteral&&"Literal"!==t&&"NamedNode"!==t?(this.possiblyNumber=!1,this.possiblyLiteral=!1):this.possiblyNumber&&("Literal"!==t?this.possiblyNumber=!1:e.value.match(/^-?\d+(\.\d*)?$/)||(this.possiblyNumber=!1)),this.checkedAnyValues=!0},this.getVariable=function(){return this.variable},this.setVariable=function(e){this.variable=e},this.getKey=function(){return this.variable.toString()},this.addUse=function(){this.useCount+=1},this.getHints=function(){return t&&t.hints&&this.variable&&t.hints[this.variable.toNT()]?t.hints[this.variable.toNT()]:{}},this.getLabel=function(){return this.getHints().label?this.getHints().label:this.predicate?this.predicate.sameTerm(o.rdf("type"))&&this.superClass?F(this.superClass,!0):F(this.predicate):this.variable?this.variable.toString():"unlabeled column?"},this.setPredicate=function(e,t,n){t?(this.inverse=e,this.constraints=this.constraints.concat(s.each(e,Br.ns.rdfs("domain"))),e.sameTerm(o.rdfs("subClassOf"))&&"NamedNode"===n.termType&&(this.superClass=n,this.alternatives=s.each(void 0,o.rdfs("subClassOf"),n))):(this.predicate=e,this.constraints=this.constraints.concat(s.each(e,Br.ns.rdfs("range"))))},this.getConstraints=function(){return this.constraints},this.filterFunction=function(){return!0},this.sortKey=function(){return this.getLabel().toLowerCase()},this.isImageColumn=function(){for(let e=0;e<this.constraints.length;e++)if(this.constraints[e].uri in u)return!0;return!1}}function L(e,t){const n=[];for(const i in e){const a=e[i];t&&!t(i,a)||n.push(a)}return n}function R(t,n){const i=e.createElement("option");return i.setAttribute("value",n),i.appendChild(e.createTextNode(t)),i}function N(e,t){let n;return t.uri in e?n=e[t.uri]:(n=new j,n.setPredicate(t),e[t.uri]=n),n}function I(e,t){let n;return t.uri in e?n=e[t.uri]:(n=new S(t),e[t.uri]=n),n}function $(e,t){const i=s.statementsMatching(e,void 0,void 0,n),a={};for(let e=0;e<i.length;++e){const n=i[e].predicate;if(n.uri in c)continue;const o=N(t,n);o.checkValue(i[e].object),a[n.uri]=o}return a}function B(e,t){const n={};for(let e=0;e<t.length;++e){const i=$(t[e],n);for(const e in i)i[e].addUse()}const i=L(n);!function(e){function t(e,t){return(e.useCount<t.useCount)-(e.useCount>t.useCount)}e.sort(t)}(i),e.allColumns=i}function D(t,n){const i=e.createElement("a");return i.appendChild(e.createTextNode("[x]")),i.addEventListener("click",function(){t.removeColumn(n),_(t)},!1),i}function O(e,t){let n=!0;for(let i=0;i<t.length;++i){const a=t[i],o=a.getKey();let s=null;if(o in e.values&&(s=e.values[o][0]),!a.filterFunction(s)){n=!1;break}}e._htmlRow.style.display=n?"":"none"}function M(e,t){for(let n=0;n<e.length;++n)O(e[n],t)}function U(e,t,n){function i(e){return e?"Literal"===e.termType?e.value.toLowerCase():"NamedNode"===e.termType?F(e).toLowerCase():e.value.toLowerCase():""}!function(e,t,n,i){const a=t.getKey();if(e.sort(function(e,t){let o=null,s=null;a in e.values&&(o=e.values[a][0]),a in t.values&&(s=t.values[a][0]);const r=n(o,s);return i?-r:r}),e.length){const t=e[0]._htmlRow.parentNode;for(let n=0;n<e.length;++n)t.removeChild(e[n]._htmlRow);for(let n=0;n<e.length;++n)t.appendChild(e[n]._htmlRow)}}(e,t,function(e,t){const n=i(e),a=i(t);return n<a?-1:n>a?1:0},n)}function P(t,n,i){const a=e.createElement("div"),o=e.createElement("input");o.setAttribute("type","text"),o.style.width="70%",a.appendChild(o);const s=e.createElement("span");s.appendChild(e.createTextNode("▼")),s.addEventListener("click",function(){U(t,i,!1)},!1),a.appendChild(s);const r=e.createElement("span");r.appendChild(e.createTextNode("▲")),r.addEventListener("click",function(){U(t,i,!0)},!1),a.appendChild(r);let c=null;return i.filterFunction=function(e){if(c){if(e){let t;return t="Literal"===e.termType?e.value:"NamedNode"===e.termType?F(e):"",t.toLowerCase().indexOf(c)>=0}return!1}return!0},o.addEventListener("keyup",function(){c=""!==o.value?o.value.toLowerCase():null,M(t,n)},!1),a}function z(t,n,i,a){const o=e.createElement("div"),s=e.createElement("select");let r={};for(let e=0;e<a.length;++e){const t=a[e];r[t.uri]=!0}const c=G(i).initialSelection;c&&(r=c),s.setAttribute("multiple","true");for(let e=0;e<a.length;++e){const t=a[e],n=R(F(t),e);r[t.uri]&&(n.selected=!0),s.appendChild(n)}return o.appendChild(s),i.filterFunction=function(e){return!r||e&&r[e.uri]},s.addEventListener("click",function(){{r={};const e=s.options;for(let t=0;t<e.length;t++){const n=e[t],i=Number(n.value);e[t].selected&&(r[a[i].uri]=!0)}}M(t,n)},!0),o}function q(t,n,i){const a=e.createElement("div"),o=e.createElement("input");o.setAttribute("type","text"),o.style.width="40px",a.appendChild(o);const s=e.createElement("input");s.setAttribute("type","text"),s.style.width="40px",a.appendChild(s);let r=null,c=null;function l(){r=""===o.value?null:Number(o.value),c=""===s.value?null:Number(s.value),M(t,n)}return i.filterFunction=function(e){return e&&(e=Number(e)),!(r&&(!e||e<r)||c&&(!e||e>c))},o.addEventListener("keyup",l,!1),s.addEventListener("keyup",l,!1),a}function H(e,t,n){if(n.superClass&&n.alternatives.length>0)return z(e,t,n,n.alternatives);const i=n.getConstraints();let a;for(let o=0;o<i.length;o++){if(a=i[o],n.checkedAnyValues&&n.possiblyNumber||a.uri in l)return q(e,t,n);if("http://www.w3.org/2000/01/rdf-schema#Literal"===a.uri)return P(e,t,n);const r=s.each(a,Br.ns.owl("oneOf"));if(r.length>0)return z(e,t,n,r.elements)}return function(e,t,n){return n.checkedAnyValues&&n.possiblyNumber?q(e,t,n):n.possiblyLiteral?P(e,t,n):null}(e,t,n)}function V(t,n,i){i=i||{};const a=e.createElement("a"),o=i.linkFunction;return a.setAttribute("href",t),a.appendChild(e.createTextNode(n)),o?a.addEventListener("click",function(e){e.preventDefault(),e.stopPropagation();const t=ee(e).getAttribute("href");t||xe.Rm("No href found \n"),o(t)},!0):a.addEventListener("click",Br.widgets.openHrefInOutlineMode,!0),a}function G(e){return t&&t.hints&&e.variable&&t.hints[e.variable.toNT()]?t.hints[e.variable.toNT()]:{}}function W(t,n){const i=G(n),a=i.cellFormat;if(!a){if("Literal"===t.termType){if(t.datatype){if(p[t.datatype.uri])return e.createTextNode(Br.widgets.shortDate(t.value));if(l[t.datatype.uri]){const n=e.createElement("span");return n.textContent=t.value,n.setAttribute("style","text-align: right"),n}}return e.createTextNode(t.value)}if("NamedNode"===t.termType&&n.isImageColumn())return function(t){const n=e.createElement("img");return n.setAttribute("src",t.uri),n.style.height="40px",n}(t);if("NamedNode"===t.termType||"BlankNode"===t.termType)return function(e,t){let n=!1;return e.uri&&(n=e.uri.match(/^mailto:(.*)/)),V(e.uri,n?n[1]:F(e),t)}(t,i);if("Collection"===t.termType){const i=e.createElement("span");return i.appendChild(e.createTextNode("[")),t.elements.forEach(function(t){i.appendChild(W(t,n)),i.appendChild(e.createTextNode(", "))}),i.removeChild(i.lastChild),i.appendChild(e.createTextNode("]")),i}return e.createTextNode("unknown termtype '"+t.termType+"'!")}if("shortDate"===a)return e.createTextNode(Br.widgets.shortDate(t.value))}function J(e,t){let n,i=null;if("Literal"===e.termType)i="value";else{if("NamedNode"!==e.termType)return t.indexOf(e)>=0;i="uri"}for(n=0;n<t.length;++n)if(t[n].termType===e.termType&&t[n][i]===e[i])return!0;return!1}function Q(t,n,i){let a,o=!1;for(a in i){const e=i[a];a in t.values||(t.values[a]=[]),J(e,t.values[a])||(t.values[a].push(e),o=!0)}o&&(T(t._htmlRow),function(t,n,i){const a=e.createElement("td");n._subject&&"uri"in n._subject&&a.appendChild(V(n._subject.uri,"→")),t.appendChild(a);for(let a=0;a<i.length;++a){const o=i[a],s=e.createElement("td");let r;const c=o.getKey();if(c in n.values){const t=n.values[c];let i=!1;n.originalValues&&n.originalValues[c]&&t.length!==n.originalValues[c].length&&(i=!0);for(let a=0;a<t.length;++a){const l=t[a];n.originalValues&&n.originalValues[c]&&n.originalValues[c].length>a&&(r=n.originalValues[c][a],l.toString()!==r.toString()&&(i=!0)),s.appendChild(W(l,o)),a!==t.length-1&&s.appendChild(e.createTextNode(",\n")),i&&(s.style.background="#efe")}}t.appendChild(s)}n._htmlRow=t}(t._htmlRow,t,n)),O(t,n)}function Z(e){if("uri"in e)return e.uri;if("_subject_id"in e)return e._subject_id;{const t=""+x;return e._subject_id=t,++x,t}}function Y(n,i,a,o){n.running=!0;const c=Date.now();let l=e.createElement("tr");o.appendChild(l),l.textContent="Loading ...";for(let e=0;e<i.length;e++)i[e].original=!0,i[e].originalValues||(i[e].originalValues=i[e].values),i[e].values={};s.query(n,function(t){if(!n.running)return;l.textContent+=".";let s,c=null,p=null;if(d in t&&(p=t[d],s=Z(p),s in r&&(c=r[s])),!c){const t=e.createElement("tr");o.appendChild(t),c={_htmlRow:t,_subject:p,values:{}},i.push(c),p&&(r[s]=c)}delete c.original,Q(c,a,t)},void 0,function(){l&&l.parentNode&&l.parentNode.removeChild&&(l.parentNode.removeChild(l),l=null);const e=Date.now()-c;xe.Rm("Query done: "+i.length+" rows, "+e+"ms");for(let e=i.length-1;e>=0;e--)if(i[e].original){xe.Rm(" deleting row "+i[e]._subject);const t=i[e]._htmlRow;t.parentNode.removeChild(t),delete r[Z(i[e]._subject)],i.splice(e,1)}if(t.sortBy){const e=function(e,t){for(const n in e){const i=e[n];if(i.variable.toNT()===t)return i}throw new Error(`getColumnForVariable: no column for variable ${t}`)}(a,t.sortBy);U(i,e,t.sortReverse)}t.onDone&&t.onDone(C)})}function K(e,t){Br.log.debug(">> processing formula");for(let n=0;n<t.statements.length;++n){const i=t.statements[n];if("NamedNode"===i.predicate.termType&&"Variable"===i.object.termType){const t=i.object.toString();t in e&&e[t].setPredicate(i.predicate,!1,i.subject)}if("NamedNode"===i.predicate.termType&&"Variable"===i.subject.termType){const t=i.subject.toString();t in e&&e[t].setPredicate(i.predicate,!0,i.object)}}for(let n=0;n<t.optional.length;++n)Br.log.debug("recurse to optional subformula "+n),K(e,t.optional[n]);Br.log.debug("<< finished processing formula")}function X(e){const t=[],n={};for(let i=0;i<e.vars.length;++i){const a=new j,o=e.vars[i];Br.log.debug("column "+i+" : "+o),a.setVariable(o),n[o]=a,t.push(a)}return K(n,e.pat),t}function te(t,n){let i;i=a?X(t):n.getColumns();const o=[],s=e.createElement("table");return s.appendChild(function(t,n){const i=e.createElement("tr"),a=e.createElement("th");i.appendChild(a);for(let a=0;a<t.length;++a){const o=e.createElement("th"),s=t[a];o.appendChild(e.createTextNode(s.getLabel())),n&&o.appendChild(D(n,s)),i.appendChild(o)}return i}(i,n)),s.appendChild(function(t,n){const i=e.createElement("tr");i.className="selectors",i.appendChild(e.createElement("td"));for(let a=0;a<n.length;++a){const o=e.createElement("td"),s=H(t,n,n[a]);s&&o.appendChild(s),i.appendChild(o)}return i}(o,i)),s.logicalRows=o,s.columns=i,s.query=t,Y(t,o,i,s),s}},tabs:d,utils:a,widgets:r,initHeader:async function(e,t,n){const i=document.getElementById("PageHeader");if(!i)return;const a=(0,Fr.E6)();qr(i,e,a,t,n)(),v.authSession.events.on("logout",qr(i,e,a,t,n)),v.authSession.events.on("login",qr(i,e,a,t,n))},initFooter:async function(e,t){const n=document.getElementById("PageFooter");if(!n)return;const i=(0,Fr.E6)(),a=await(0,Fr.bB)(i,e);Zr(n,e,i,a,t)(),v.authSession.events.on("login",Zr(n,e,i,a,t)),v.authSession.events.on("logout",Zr(n,e,i,a,t))}})},565(e,t,n){"use strict";n.d(t,{E6:()=>o,bB:()=>s,mG:()=>r,nF:()=>c});var i=n(511),a=n(325);function o(){const{origin:e,pathname:t}=document.location,n="databrowser"===document.body?.dataset?.appShell,a=t.split("/").filter(Boolean),o=a[a.length-1]||"",s=/\.[^/]+$/.test(o);return n&&a.length>0&&!s?(0,i.sym)(`${e}/${a[0]}/`):(0,i.sym)(e).site()}async function s(e,t){try{if(!t.any(e,null,a.ns.ldp("Container"),e)){const n=(await t.fetcher.webOperation("GET",e.uri,t.fetcher.initFetchOptions(e.uri,{headers:{accept:"text/turtle"}}))).responseText;(0,i.parse)(n,t,e.uri,"text/turtle")}}catch(t){return console.error("Error loading pod "+e+": "+t),null}if(!t.holds(e,a.ns.rdf("type"),a.ns.space("Storage"),e))return console.warn("Pod "+e+" does not declare itself as a space:Storage"),null;const n=t.any(e,a.ns.solid("owner"),null,e)||t.any(null,a.ns.space("storage"),e,e);if(n){try{await t.fetcher.load(n.doc())}catch(e){return console.warn("Unable to load profile of pod owner "+n),null}return t.holds(n,a.ns.space("storage"),e,n.doc())||console.warn(`Pod owner ${n} does NOT list pod ${e} as their storage`),n}{const n=(0,i.sym)(`${e.uri}profile/card#me`);try{await t.fetcher.load(n)}catch(e){return console.error("Ooops. Guessed wrong pod owner webid {$guess} : can't load it."),null}return t.holds(n,a.ns.space("storage"),e,n.doc())?(console.warn("Using guessed pod owner webid but it links back."),n):null}}function r(e,t){return e.anyValue(t,a.ns.vcard("fn"),null,t.doc())||e.anyValue(t,a.ns.foaf("name"),null,t.doc())||t.uri}function c(e,t,n={}){let i,a,o,s=null,r=0;const c=function(){r=n.leading?Date.now():0,s=null,o=e.apply(i,a),s||(i=a=null)};return function(){const l=Date.now();r||n.leading||(r=l);const p=t-(l-r);return i=this,a=arguments,p<=0||p>t?(s&&(clearTimeout(s),s=null),r=l,o=e.apply(i,a),s||(i=a=null)):s||!1===n.trailing||(s=setTimeout(c,p)),o}}},580(e){"use strict";
22
+ /*!
23
+ * escape-html
24
+ * Copyright(c) 2012-2013 TJ Holowaychuk
25
+ * Copyright(c) 2015 Andreas Lubbe
26
+ * Copyright(c) 2015 Tiancheng "Timothy" Gu
27
+ * MIT Licensed
28
+ */var t=/["'&<>]/;e.exports=function(e){var n,i=""+e,a=t.exec(i);if(!a)return i;var o="",s=0,r=0;for(s=a.index;s<i.length;s++){switch(i.charCodeAt(s)){case 34:n="&quot;";break;case 38:n="&amp;";break;case 39:n="&#39;";break;case 60:n="&lt;";break;case 62:n="&gt;";break;default:continue}r!==s&&(o+=i.substring(r,s)),r=s+1,o+=n}return r!==s?o+i.substring(r,s):o}},598(e,t,n){
29
+ /*!
30
+ * mime-db
31
+ * Copyright(c) 2014 Jonathan Ong
32
+ * Copyright(c) 2015-2022 Douglas Christopher Wilson
33
+ * MIT Licensed
34
+ */
35
+ e.exports=n(813)},49(e,t,n){"use strict";
36
+ /*!
37
+ * mime-types
38
+ * Copyright(c) 2014 Jonathan Ong
39
+ * Copyright(c) 2015 Douglas Christopher Wilson
40
+ * MIT Licensed
41
+ */var i,a,o=n(598),s=n(466).extname,r=n(983),c=/^\s*([^;\s]*)(?:;|\s|$)/,l=/^text\//i;function p(e){if(!e||"string"!=typeof e)return!1;var t=c.exec(e),n=t&&o[t[1].toLowerCase()];return n&&n.charset?n.charset:!(!t||!l.test(t[1]))&&"UTF-8"}function u(e){if(!e||"string"!=typeof e)return!1;var n=c.exec(e),i=n&&t.extensions[n[1].toLowerCase()];return!(!i||!i.length)&&i[0]}function d(e,t,n){return(t?r(t,o[t].source):0)>(n?r(n,o[n].source):0)?t:n}function m(e,n,i){var a=["nginx","apache",void 0,"iana"],s=n?a.indexOf(o[n].source):0,r=i?a.indexOf(o[i].source):0;return"application/octet-stream"!==t.types[u]&&(s>r||s===r&&"application/"===t.types[u]?.slice(0,12))||s>r?n:i}t.charset=p,t.charsets={lookup:p},t.contentType=function(e){if(!e||"string"!=typeof e)return!1;var n=-1===e.indexOf("/")?t.lookup(e):e;if(!n)return!1;if(-1===n.indexOf("charset")){var i=t.charset(n);i&&(n+="; charset="+i.toLowerCase())}return n},t.extension=u,t.extensions=Object.create(null),t.lookup=function(e){if(!e||"string"!=typeof e)return!1;var n=s("x."+e).toLowerCase().slice(1);if(!n)return!1;return t.types[n]||!1},t.types=Object.create(null),t._extensionConflicts=[],i=t.extensions,a=t.types,Object.keys(o).forEach(function(e){var n=o[e].extensions;if(n&&n.length){i[e]=n;for(var s=0;s<n.length;s++){var r=n[s];a[r]=d(r,a[r],e);const i=m(r,a[r],e);i!==a[r]&&t._extensionConflicts.push([r,i,a[r]])}}})},983(e){var t={"prs.":100,"x-":200,"x.":300,"vnd.":400,default:900},n={nginx:10,apache:20,iana:40,default:30},i={application:1,font:2,audio:2,video:3,default:0};e.exports=function(e,a="default"){if("application/octet-stream"===e)return 0;const[o,s]=e.split("/"),r=s.replace(/(\.|x-).*/,"$1");return(t[r]||t.default)+(n[a]||n.default)+(i[o]||i.default)+(1-e.length/100)}},386(e){const t={acl:"http://www.w3.org/ns/auth/acl#",arg:"http://www.w3.org/ns/pim/arg#",as:"https://www.w3.org/ns/activitystreams#",bookmark:"http://www.w3.org/2002/01/bookmark#",cal:"http://www.w3.org/2002/12/cal/ical#",cco:"http://www.ontologyrepository.com/CommonCoreOntologies/",cert:"http://www.w3.org/ns/auth/cert#",contact:"http://www.w3.org/2000/10/swap/pim/contact#",dc:"http://purl.org/dc/elements/1.1/",dct:"http://purl.org/dc/terms/",doap:"http://usefulinc.com/ns/doap#",foaf:"http://xmlns.com/foaf/0.1/",geo:"http://www.w3.org/2003/01/geo/wgs84_pos#",gpx:"http://www.w3.org/ns/pim/gpx#",gr:"http://purl.org/goodrelations/v1#",http:"http://www.w3.org/2007/ont/http#",httph:"http://www.w3.org/2007/ont/httph#",icalTZ:"http://www.w3.org/2002/12/cal/icaltzd#",ldp:"http://www.w3.org/ns/ldp#",link:"http://www.w3.org/2007/ont/link#",log:"http://www.w3.org/2000/10/swap/log#",meeting:"http://www.w3.org/ns/pim/meeting#",mo:"http://purl.org/ontology/mo/",org:"http://www.w3.org/ns/org#",owl:"http://www.w3.org/2002/07/owl#",pad:"http://www.w3.org/ns/pim/pad#",patch:"http://www.w3.org/ns/pim/patch#",prov:"http://www.w3.org/ns/prov#",pto:"http://www.productontology.org/id/",qu:"http://www.w3.org/2000/10/swap/pim/qif#",trip:"http://www.w3.org/ns/pim/trip#",rdf:"http://www.w3.org/1999/02/22-rdf-syntax-ns#",rdfs:"http://www.w3.org/2000/01/rdf-schema#",rss:"http://purl.org/rss/1.0/",sched:"http://www.w3.org/ns/pim/schedule#",schema:"http://schema.org/",sioc:"http://rdfs.org/sioc/ns#",skos:"http://www.w3.org/2004/02/skos/core#",solid:"http://www.w3.org/ns/solid/terms#",space:"http://www.w3.org/ns/pim/space#",stat:"http://www.w3.org/ns/posix/stat#",tab:"http://www.w3.org/2007/ont/link#",tabont:"http://www.w3.org/2007/ont/link#",ui:"http://www.w3.org/ns/ui#",vann:"http://purl.org/vocab/vann/",vcard:"http://www.w3.org/2006/vcard/ns#",wf:"http://www.w3.org/2005/01/wf/flow#",xsd:"http://www.w3.org/2001/XMLSchema#"};e.exports=function(e={namedNode:e=>e}){const n={};for(const i in t){const a=t[i];n[i]=function(t=""){return e.namedNode(a+t)}}return n}},511(e){"use strict";e.exports=$rdf},892(e){"use strict";e.exports=SolidLogic},466(){},813(e){"use strict";e.exports=JSON.parse('{"application/1d-interleaved-parityfec":{"source":"iana"},"application/3gpdash-qoe-report+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/3gpp-ims+xml":{"source":"iana","compressible":true},"application/3gpphal+json":{"source":"iana","compressible":true},"application/3gpphalforms+json":{"source":"iana","compressible":true},"application/a2l":{"source":"iana"},"application/ace+cbor":{"source":"iana"},"application/ace+json":{"source":"iana","compressible":true},"application/ace-groupcomm+cbor":{"source":"iana"},"application/ace-trl+cbor":{"source":"iana"},"application/activemessage":{"source":"iana"},"application/activity+json":{"source":"iana","compressible":true},"application/aif+cbor":{"source":"iana"},"application/aif+json":{"source":"iana","compressible":true},"application/alto-cdni+json":{"source":"iana","compressible":true},"application/alto-cdnifilter+json":{"source":"iana","compressible":true},"application/alto-costmap+json":{"source":"iana","compressible":true},"application/alto-costmapfilter+json":{"source":"iana","compressible":true},"application/alto-directory+json":{"source":"iana","compressible":true},"application/alto-endpointcost+json":{"source":"iana","compressible":true},"application/alto-endpointcostparams+json":{"source":"iana","compressible":true},"application/alto-endpointprop+json":{"source":"iana","compressible":true},"application/alto-endpointpropparams+json":{"source":"iana","compressible":true},"application/alto-error+json":{"source":"iana","compressible":true},"application/alto-networkmap+json":{"source":"iana","compressible":true},"application/alto-networkmapfilter+json":{"source":"iana","compressible":true},"application/alto-propmap+json":{"source":"iana","compressible":true},"application/alto-propmapparams+json":{"source":"iana","compressible":true},"application/alto-tips+json":{"source":"iana","compressible":true},"application/alto-tipsparams+json":{"source":"iana","compressible":true},"application/alto-updatestreamcontrol+json":{"source":"iana","compressible":true},"application/alto-updatestreamparams+json":{"source":"iana","compressible":true},"application/aml":{"source":"iana"},"application/andrew-inset":{"source":"iana","extensions":["ez"]},"application/appinstaller":{"compressible":false,"extensions":["appinstaller"]},"application/applefile":{"source":"iana"},"application/applixware":{"source":"apache","extensions":["aw"]},"application/appx":{"compressible":false,"extensions":["appx"]},"application/appxbundle":{"compressible":false,"extensions":["appxbundle"]},"application/at+jwt":{"source":"iana"},"application/atf":{"source":"iana"},"application/atfx":{"source":"iana"},"application/atom+xml":{"source":"iana","compressible":true,"extensions":["atom"]},"application/atomcat+xml":{"source":"iana","compressible":true,"extensions":["atomcat"]},"application/atomdeleted+xml":{"source":"iana","compressible":true,"extensions":["atomdeleted"]},"application/atomicmail":{"source":"iana"},"application/atomsvc+xml":{"source":"iana","compressible":true,"extensions":["atomsvc"]},"application/atsc-dwd+xml":{"source":"iana","compressible":true,"extensions":["dwd"]},"application/atsc-dynamic-event-message":{"source":"iana"},"application/atsc-held+xml":{"source":"iana","compressible":true,"extensions":["held"]},"application/atsc-rdt+json":{"source":"iana","compressible":true},"application/atsc-rsat+xml":{"source":"iana","compressible":true,"extensions":["rsat"]},"application/atxml":{"source":"iana"},"application/auth-policy+xml":{"source":"iana","compressible":true},"application/automationml-aml+xml":{"source":"iana","compressible":true,"extensions":["aml"]},"application/automationml-amlx+zip":{"source":"iana","compressible":false,"extensions":["amlx"]},"application/bacnet-xdd+zip":{"source":"iana","compressible":false},"application/batch-smtp":{"source":"iana"},"application/bdoc":{"compressible":false,"extensions":["bdoc"]},"application/beep+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/bufr":{"source":"iana"},"application/c2pa":{"source":"iana"},"application/calendar+json":{"source":"iana","compressible":true},"application/calendar+xml":{"source":"iana","compressible":true,"extensions":["xcs"]},"application/call-completion":{"source":"iana"},"application/cals-1840":{"source":"iana"},"application/captive+json":{"source":"iana","compressible":true},"application/cbor":{"source":"iana"},"application/cbor-seq":{"source":"iana"},"application/cccex":{"source":"iana"},"application/ccmp+xml":{"source":"iana","compressible":true},"application/ccxml+xml":{"source":"iana","compressible":true,"extensions":["ccxml"]},"application/cda+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/cdfx+xml":{"source":"iana","compressible":true,"extensions":["cdfx"]},"application/cdmi-capability":{"source":"iana","extensions":["cdmia"]},"application/cdmi-container":{"source":"iana","extensions":["cdmic"]},"application/cdmi-domain":{"source":"iana","extensions":["cdmid"]},"application/cdmi-object":{"source":"iana","extensions":["cdmio"]},"application/cdmi-queue":{"source":"iana","extensions":["cdmiq"]},"application/cdni":{"source":"iana"},"application/ce+cbor":{"source":"iana"},"application/cea":{"source":"iana"},"application/cea-2018+xml":{"source":"iana","compressible":true},"application/cellml+xml":{"source":"iana","compressible":true},"application/cfw":{"source":"iana"},"application/cid-edhoc+cbor-seq":{"source":"iana"},"application/city+json":{"source":"iana","compressible":true},"application/city+json-seq":{"source":"iana"},"application/clr":{"source":"iana"},"application/clue+xml":{"source":"iana","compressible":true},"application/clue_info+xml":{"source":"iana","compressible":true},"application/cms":{"source":"iana"},"application/cnrp+xml":{"source":"iana","compressible":true},"application/coap-eap":{"source":"iana"},"application/coap-group+json":{"source":"iana","compressible":true},"application/coap-payload":{"source":"iana"},"application/commonground":{"source":"iana"},"application/concise-problem-details+cbor":{"source":"iana"},"application/conference-info+xml":{"source":"iana","compressible":true},"application/cose":{"source":"iana"},"application/cose-key":{"source":"iana"},"application/cose-key-set":{"source":"iana"},"application/cose-x509":{"source":"iana"},"application/cpl+xml":{"source":"iana","compressible":true,"extensions":["cpl"]},"application/csrattrs":{"source":"iana"},"application/csta+xml":{"source":"iana","compressible":true},"application/cstadata+xml":{"source":"iana","compressible":true},"application/csvm+json":{"source":"iana","compressible":true},"application/cu-seeme":{"source":"apache","extensions":["cu"]},"application/cwl":{"source":"iana","extensions":["cwl"]},"application/cwl+json":{"source":"iana","compressible":true},"application/cwl+yaml":{"source":"iana"},"application/cwt":{"source":"iana"},"application/cybercash":{"source":"iana"},"application/dart":{"compressible":true},"application/dash+xml":{"source":"iana","compressible":true,"extensions":["mpd"]},"application/dash-patch+xml":{"source":"iana","compressible":true,"extensions":["mpp"]},"application/dashdelta":{"source":"iana"},"application/davmount+xml":{"source":"iana","compressible":true,"extensions":["davmount"]},"application/dca-rft":{"source":"iana"},"application/dcd":{"source":"iana"},"application/dec-dx":{"source":"iana"},"application/dialog-info+xml":{"source":"iana","compressible":true},"application/dicom":{"source":"iana","extensions":["dcm"]},"application/dicom+json":{"source":"iana","compressible":true},"application/dicom+xml":{"source":"iana","compressible":true},"application/dii":{"source":"iana"},"application/dit":{"source":"iana"},"application/dns":{"source":"iana"},"application/dns+json":{"source":"iana","compressible":true},"application/dns-message":{"source":"iana"},"application/docbook+xml":{"source":"apache","compressible":true,"extensions":["dbk"]},"application/dots+cbor":{"source":"iana"},"application/dpop+jwt":{"source":"iana"},"application/dskpp+xml":{"source":"iana","compressible":true},"application/dssc+der":{"source":"iana","extensions":["dssc"]},"application/dssc+xml":{"source":"iana","compressible":true,"extensions":["xdssc"]},"application/dvcs":{"source":"iana"},"application/eat+cwt":{"source":"iana"},"application/eat+jwt":{"source":"iana"},"application/eat-bun+cbor":{"source":"iana"},"application/eat-bun+json":{"source":"iana","compressible":true},"application/eat-ucs+cbor":{"source":"iana"},"application/eat-ucs+json":{"source":"iana","compressible":true},"application/ecmascript":{"source":"apache","compressible":true,"extensions":["ecma"]},"application/edhoc+cbor-seq":{"source":"iana"},"application/edi-consent":{"source":"iana"},"application/edi-x12":{"source":"iana","compressible":false},"application/edifact":{"source":"iana","compressible":false},"application/efi":{"source":"iana"},"application/elm+json":{"source":"iana","charset":"UTF-8","compressible":true},"application/elm+xml":{"source":"iana","compressible":true},"application/emergencycalldata.cap+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/emergencycalldata.comment+xml":{"source":"iana","compressible":true},"application/emergencycalldata.control+xml":{"source":"iana","compressible":true},"application/emergencycalldata.deviceinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.ecall.msd":{"source":"iana"},"application/emergencycalldata.legacyesn+json":{"source":"iana","compressible":true},"application/emergencycalldata.providerinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.serviceinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.subscriberinfo+xml":{"source":"iana","compressible":true},"application/emergencycalldata.veds+xml":{"source":"iana","compressible":true},"application/emma+xml":{"source":"iana","compressible":true,"extensions":["emma"]},"application/emotionml+xml":{"source":"iana","compressible":true,"extensions":["emotionml"]},"application/encaprtp":{"source":"iana"},"application/entity-statement+jwt":{"source":"iana"},"application/epp+xml":{"source":"iana","compressible":true},"application/epub+zip":{"source":"iana","compressible":false,"extensions":["epub"]},"application/eshop":{"source":"iana"},"application/exi":{"source":"iana","extensions":["exi"]},"application/expect-ct-report+json":{"source":"iana","compressible":true},"application/express":{"source":"iana","extensions":["exp"]},"application/fastinfoset":{"source":"iana"},"application/fastsoap":{"source":"iana"},"application/fdf":{"source":"iana","extensions":["fdf"]},"application/fdt+xml":{"source":"iana","compressible":true,"extensions":["fdt"]},"application/fhir+json":{"source":"iana","charset":"UTF-8","compressible":true},"application/fhir+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/fido.trusted-apps+json":{"compressible":true},"application/fits":{"source":"iana"},"application/flexfec":{"source":"iana"},"application/font-sfnt":{"source":"iana"},"application/font-tdpfr":{"source":"iana","extensions":["pfr"]},"application/font-woff":{"source":"iana","compressible":false},"application/framework-attributes+xml":{"source":"iana","compressible":true},"application/geo+json":{"source":"iana","compressible":true,"extensions":["geojson"]},"application/geo+json-seq":{"source":"iana"},"application/geopackage+sqlite3":{"source":"iana"},"application/geopose+json":{"source":"iana","compressible":true},"application/geoxacml+json":{"source":"iana","compressible":true},"application/geoxacml+xml":{"source":"iana","compressible":true},"application/gltf-buffer":{"source":"iana"},"application/gml+xml":{"source":"iana","compressible":true,"extensions":["gml"]},"application/gnap-binding-jws":{"source":"iana"},"application/gnap-binding-jwsd":{"source":"iana"},"application/gnap-binding-rotation-jws":{"source":"iana"},"application/gnap-binding-rotation-jwsd":{"source":"iana"},"application/gpx+xml":{"source":"apache","compressible":true,"extensions":["gpx"]},"application/grib":{"source":"iana"},"application/gxf":{"source":"apache","extensions":["gxf"]},"application/gzip":{"source":"iana","compressible":false,"extensions":["gz"]},"application/h224":{"source":"iana"},"application/held+xml":{"source":"iana","compressible":true},"application/hjson":{"extensions":["hjson"]},"application/hl7v2+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/http":{"source":"iana"},"application/hyperstudio":{"source":"iana","extensions":["stk"]},"application/ibe-key-request+xml":{"source":"iana","compressible":true},"application/ibe-pkg-reply+xml":{"source":"iana","compressible":true},"application/ibe-pp-data":{"source":"iana"},"application/iges":{"source":"iana"},"application/im-iscomposing+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/index":{"source":"iana"},"application/index.cmd":{"source":"iana"},"application/index.obj":{"source":"iana"},"application/index.response":{"source":"iana"},"application/index.vnd":{"source":"iana"},"application/inkml+xml":{"source":"iana","compressible":true,"extensions":["ink","inkml"]},"application/iotp":{"source":"iana"},"application/ipfix":{"source":"iana","extensions":["ipfix"]},"application/ipp":{"source":"iana"},"application/isup":{"source":"iana"},"application/its+xml":{"source":"iana","compressible":true,"extensions":["its"]},"application/java-archive":{"source":"iana","compressible":false,"extensions":["jar","war","ear"]},"application/java-serialized-object":{"source":"apache","compressible":false,"extensions":["ser"]},"application/java-vm":{"source":"apache","compressible":false,"extensions":["class"]},"application/javascript":{"source":"apache","charset":"UTF-8","compressible":true,"extensions":["js"]},"application/jf2feed+json":{"source":"iana","compressible":true},"application/jose":{"source":"iana"},"application/jose+json":{"source":"iana","compressible":true},"application/jrd+json":{"source":"iana","compressible":true},"application/jscalendar+json":{"source":"iana","compressible":true},"application/jscontact+json":{"source":"iana","compressible":true},"application/json":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["json","map"]},"application/json-patch+json":{"source":"iana","compressible":true},"application/json-seq":{"source":"iana"},"application/json5":{"extensions":["json5"]},"application/jsonml+json":{"source":"apache","compressible":true,"extensions":["jsonml"]},"application/jsonpath":{"source":"iana"},"application/jwk+json":{"source":"iana","compressible":true},"application/jwk-set+json":{"source":"iana","compressible":true},"application/jwk-set+jwt":{"source":"iana"},"application/jwt":{"source":"iana"},"application/kpml-request+xml":{"source":"iana","compressible":true},"application/kpml-response+xml":{"source":"iana","compressible":true},"application/ld+json":{"source":"iana","compressible":true,"extensions":["jsonld"]},"application/lgr+xml":{"source":"iana","compressible":true,"extensions":["lgr"]},"application/link-format":{"source":"iana"},"application/linkset":{"source":"iana"},"application/linkset+json":{"source":"iana","compressible":true},"application/load-control+xml":{"source":"iana","compressible":true},"application/logout+jwt":{"source":"iana"},"application/lost+xml":{"source":"iana","compressible":true,"extensions":["lostxml"]},"application/lostsync+xml":{"source":"iana","compressible":true},"application/lpf+zip":{"source":"iana","compressible":false},"application/lxf":{"source":"iana"},"application/mac-binhex40":{"source":"iana","extensions":["hqx"]},"application/mac-compactpro":{"source":"apache","extensions":["cpt"]},"application/macwriteii":{"source":"iana"},"application/mads+xml":{"source":"iana","compressible":true,"extensions":["mads"]},"application/manifest+json":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["webmanifest"]},"application/marc":{"source":"iana","extensions":["mrc"]},"application/marcxml+xml":{"source":"iana","compressible":true,"extensions":["mrcx"]},"application/mathematica":{"source":"iana","extensions":["ma","nb","mb"]},"application/mathml+xml":{"source":"iana","compressible":true,"extensions":["mathml"]},"application/mathml-content+xml":{"source":"iana","compressible":true},"application/mathml-presentation+xml":{"source":"iana","compressible":true},"application/mbms-associated-procedure-description+xml":{"source":"iana","compressible":true},"application/mbms-deregister+xml":{"source":"iana","compressible":true},"application/mbms-envelope+xml":{"source":"iana","compressible":true},"application/mbms-msk+xml":{"source":"iana","compressible":true},"application/mbms-msk-response+xml":{"source":"iana","compressible":true},"application/mbms-protection-description+xml":{"source":"iana","compressible":true},"application/mbms-reception-report+xml":{"source":"iana","compressible":true},"application/mbms-register+xml":{"source":"iana","compressible":true},"application/mbms-register-response+xml":{"source":"iana","compressible":true},"application/mbms-schedule+xml":{"source":"iana","compressible":true},"application/mbms-user-service-description+xml":{"source":"iana","compressible":true},"application/mbox":{"source":"iana","extensions":["mbox"]},"application/media-policy-dataset+xml":{"source":"iana","compressible":true,"extensions":["mpf"]},"application/media_control+xml":{"source":"iana","compressible":true},"application/mediaservercontrol+xml":{"source":"iana","compressible":true,"extensions":["mscml"]},"application/merge-patch+json":{"source":"iana","compressible":true},"application/metalink+xml":{"source":"apache","compressible":true,"extensions":["metalink"]},"application/metalink4+xml":{"source":"iana","compressible":true,"extensions":["meta4"]},"application/mets+xml":{"source":"iana","compressible":true,"extensions":["mets"]},"application/mf4":{"source":"iana"},"application/mikey":{"source":"iana"},"application/mipc":{"source":"iana"},"application/missing-blocks+cbor-seq":{"source":"iana"},"application/mmt-aei+xml":{"source":"iana","compressible":true,"extensions":["maei"]},"application/mmt-usd+xml":{"source":"iana","compressible":true,"extensions":["musd"]},"application/mods+xml":{"source":"iana","compressible":true,"extensions":["mods"]},"application/moss-keys":{"source":"iana"},"application/moss-signature":{"source":"iana"},"application/mosskey-data":{"source":"iana"},"application/mosskey-request":{"source":"iana"},"application/mp21":{"source":"iana","extensions":["m21","mp21"]},"application/mp4":{"source":"iana","extensions":["mp4","mpg4","mp4s","m4p"]},"application/mpeg4-generic":{"source":"iana"},"application/mpeg4-iod":{"source":"iana"},"application/mpeg4-iod-xmt":{"source":"iana"},"application/mrb-consumer+xml":{"source":"iana","compressible":true},"application/mrb-publish+xml":{"source":"iana","compressible":true},"application/msc-ivr+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/msc-mixer+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/msix":{"compressible":false,"extensions":["msix"]},"application/msixbundle":{"compressible":false,"extensions":["msixbundle"]},"application/msword":{"source":"iana","compressible":false,"extensions":["doc","dot"]},"application/mud+json":{"source":"iana","compressible":true},"application/multipart-core":{"source":"iana"},"application/mxf":{"source":"iana","extensions":["mxf"]},"application/n-quads":{"source":"iana","extensions":["nq"]},"application/n-triples":{"source":"iana","extensions":["nt"]},"application/nasdata":{"source":"iana"},"application/news-checkgroups":{"source":"iana","charset":"US-ASCII"},"application/news-groupinfo":{"source":"iana","charset":"US-ASCII"},"application/news-transmission":{"source":"iana"},"application/nlsml+xml":{"source":"iana","compressible":true},"application/node":{"source":"iana","extensions":["cjs"]},"application/nss":{"source":"iana"},"application/oauth-authz-req+jwt":{"source":"iana"},"application/oblivious-dns-message":{"source":"iana"},"application/ocsp-request":{"source":"iana"},"application/ocsp-response":{"source":"iana"},"application/octet-stream":{"source":"iana","compressible":true,"extensions":["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"]},"application/oda":{"source":"iana","extensions":["oda"]},"application/odm+xml":{"source":"iana","compressible":true},"application/odx":{"source":"iana"},"application/oebps-package+xml":{"source":"iana","compressible":true,"extensions":["opf"]},"application/ogg":{"source":"iana","compressible":false,"extensions":["ogx"]},"application/ohttp-keys":{"source":"iana"},"application/omdoc+xml":{"source":"apache","compressible":true,"extensions":["omdoc"]},"application/onenote":{"source":"apache","extensions":["onetoc","onetoc2","onetmp","onepkg","one","onea"]},"application/opc-nodeset+xml":{"source":"iana","compressible":true},"application/oscore":{"source":"iana"},"application/oxps":{"source":"iana","extensions":["oxps"]},"application/p21":{"source":"iana"},"application/p21+zip":{"source":"iana","compressible":false},"application/p2p-overlay+xml":{"source":"iana","compressible":true,"extensions":["relo"]},"application/parityfec":{"source":"iana"},"application/passport":{"source":"iana"},"application/patch-ops-error+xml":{"source":"iana","compressible":true,"extensions":["xer"]},"application/pdf":{"source":"iana","compressible":false,"extensions":["pdf"]},"application/pdx":{"source":"iana"},"application/pem-certificate-chain":{"source":"iana"},"application/pgp-encrypted":{"source":"iana","compressible":false,"extensions":["pgp"]},"application/pgp-keys":{"source":"iana","extensions":["asc"]},"application/pgp-signature":{"source":"iana","extensions":["sig","asc"]},"application/pics-rules":{"source":"apache","extensions":["prf"]},"application/pidf+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/pidf-diff+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/pkcs10":{"source":"iana","extensions":["p10"]},"application/pkcs12":{"source":"iana"},"application/pkcs7-mime":{"source":"iana","extensions":["p7m","p7c"]},"application/pkcs7-signature":{"source":"iana","extensions":["p7s"]},"application/pkcs8":{"source":"iana","extensions":["p8"]},"application/pkcs8-encrypted":{"source":"iana"},"application/pkix-attr-cert":{"source":"iana","extensions":["ac"]},"application/pkix-cert":{"source":"iana","extensions":["cer"]},"application/pkix-crl":{"source":"iana","extensions":["crl"]},"application/pkix-pkipath":{"source":"iana","extensions":["pkipath"]},"application/pkixcmp":{"source":"iana","extensions":["pki"]},"application/pls+xml":{"source":"iana","compressible":true,"extensions":["pls"]},"application/poc-settings+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/postscript":{"source":"iana","compressible":true,"extensions":["ai","eps","ps"]},"application/ppsp-tracker+json":{"source":"iana","compressible":true},"application/private-token-issuer-directory":{"source":"iana"},"application/private-token-request":{"source":"iana"},"application/private-token-response":{"source":"iana"},"application/problem+json":{"source":"iana","compressible":true},"application/problem+xml":{"source":"iana","compressible":true},"application/provenance+xml":{"source":"iana","compressible":true,"extensions":["provx"]},"application/provided-claims+jwt":{"source":"iana"},"application/prs.alvestrand.titrax-sheet":{"source":"iana"},"application/prs.cww":{"source":"iana","extensions":["cww"]},"application/prs.cyn":{"source":"iana","charset":"7-BIT"},"application/prs.hpub+zip":{"source":"iana","compressible":false},"application/prs.implied-document+xml":{"source":"iana","compressible":true},"application/prs.implied-executable":{"source":"iana"},"application/prs.implied-object+json":{"source":"iana","compressible":true},"application/prs.implied-object+json-seq":{"source":"iana"},"application/prs.implied-object+yaml":{"source":"iana"},"application/prs.implied-structure":{"source":"iana"},"application/prs.mayfile":{"source":"iana"},"application/prs.nprend":{"source":"iana"},"application/prs.plucker":{"source":"iana"},"application/prs.rdf-xml-crypt":{"source":"iana"},"application/prs.vcfbzip2":{"source":"iana"},"application/prs.xsf+xml":{"source":"iana","compressible":true,"extensions":["xsf"]},"application/pskc+xml":{"source":"iana","compressible":true,"extensions":["pskcxml"]},"application/pvd+json":{"source":"iana","compressible":true},"application/qsig":{"source":"iana"},"application/raml+yaml":{"compressible":true,"extensions":["raml"]},"application/raptorfec":{"source":"iana"},"application/rdap+json":{"source":"iana","compressible":true},"application/rdf+xml":{"source":"iana","compressible":true,"extensions":["rdf","owl"]},"application/reginfo+xml":{"source":"iana","compressible":true,"extensions":["rif"]},"application/relax-ng-compact-syntax":{"source":"iana","extensions":["rnc"]},"application/remote-printing":{"source":"apache"},"application/reputon+json":{"source":"iana","compressible":true},"application/resolve-response+jwt":{"source":"iana"},"application/resource-lists+xml":{"source":"iana","compressible":true,"extensions":["rl"]},"application/resource-lists-diff+xml":{"source":"iana","compressible":true,"extensions":["rld"]},"application/rfc+xml":{"source":"iana","compressible":true},"application/riscos":{"source":"iana"},"application/rlmi+xml":{"source":"iana","compressible":true},"application/rls-services+xml":{"source":"iana","compressible":true,"extensions":["rs"]},"application/route-apd+xml":{"source":"iana","compressible":true,"extensions":["rapd"]},"application/route-s-tsid+xml":{"source":"iana","compressible":true,"extensions":["sls"]},"application/route-usd+xml":{"source":"iana","compressible":true,"extensions":["rusd"]},"application/rpki-checklist":{"source":"iana"},"application/rpki-ghostbusters":{"source":"iana","extensions":["gbr"]},"application/rpki-manifest":{"source":"iana","extensions":["mft"]},"application/rpki-publication":{"source":"iana"},"application/rpki-roa":{"source":"iana","extensions":["roa"]},"application/rpki-signed-tal":{"source":"iana"},"application/rpki-updown":{"source":"iana"},"application/rsd+xml":{"source":"apache","compressible":true,"extensions":["rsd"]},"application/rss+xml":{"source":"apache","compressible":true,"extensions":["rss"]},"application/rtf":{"source":"iana","compressible":true,"extensions":["rtf"]},"application/rtploopback":{"source":"iana"},"application/rtx":{"source":"iana"},"application/samlassertion+xml":{"source":"iana","compressible":true},"application/samlmetadata+xml":{"source":"iana","compressible":true},"application/sarif+json":{"source":"iana","compressible":true},"application/sarif-external-properties+json":{"source":"iana","compressible":true},"application/sbe":{"source":"iana"},"application/sbml+xml":{"source":"iana","compressible":true,"extensions":["sbml"]},"application/scaip+xml":{"source":"iana","compressible":true},"application/scim+json":{"source":"iana","compressible":true},"application/scvp-cv-request":{"source":"iana","extensions":["scq"]},"application/scvp-cv-response":{"source":"iana","extensions":["scs"]},"application/scvp-vp-request":{"source":"iana","extensions":["spq"]},"application/scvp-vp-response":{"source":"iana","extensions":["spp"]},"application/sdp":{"source":"iana","extensions":["sdp"]},"application/secevent+jwt":{"source":"iana"},"application/senml+cbor":{"source":"iana"},"application/senml+json":{"source":"iana","compressible":true},"application/senml+xml":{"source":"iana","compressible":true,"extensions":["senmlx"]},"application/senml-etch+cbor":{"source":"iana"},"application/senml-etch+json":{"source":"iana","compressible":true},"application/senml-exi":{"source":"iana"},"application/sensml+cbor":{"source":"iana"},"application/sensml+json":{"source":"iana","compressible":true},"application/sensml+xml":{"source":"iana","compressible":true,"extensions":["sensmlx"]},"application/sensml-exi":{"source":"iana"},"application/sep+xml":{"source":"iana","compressible":true},"application/sep-exi":{"source":"iana"},"application/session-info":{"source":"iana"},"application/set-payment":{"source":"iana"},"application/set-payment-initiation":{"source":"iana","extensions":["setpay"]},"application/set-registration":{"source":"iana"},"application/set-registration-initiation":{"source":"iana","extensions":["setreg"]},"application/sgml":{"source":"iana"},"application/sgml-open-catalog":{"source":"iana"},"application/shf+xml":{"source":"iana","compressible":true,"extensions":["shf"]},"application/sieve":{"source":"iana","extensions":["siv","sieve"]},"application/simple-filter+xml":{"source":"iana","compressible":true},"application/simple-message-summary":{"source":"iana"},"application/simplesymbolcontainer":{"source":"iana"},"application/sipc":{"source":"iana"},"application/slate":{"source":"iana"},"application/smil":{"source":"apache"},"application/smil+xml":{"source":"iana","compressible":true,"extensions":["smi","smil"]},"application/smpte336m":{"source":"iana"},"application/soap+fastinfoset":{"source":"iana"},"application/soap+xml":{"source":"iana","compressible":true},"application/sparql-query":{"source":"iana","extensions":["rq"]},"application/sparql-results+xml":{"source":"iana","compressible":true,"extensions":["srx"]},"application/spdx+json":{"source":"iana","compressible":true},"application/spirits-event+xml":{"source":"iana","compressible":true},"application/sql":{"source":"iana","extensions":["sql"]},"application/srgs":{"source":"iana","extensions":["gram"]},"application/srgs+xml":{"source":"iana","compressible":true,"extensions":["grxml"]},"application/sru+xml":{"source":"iana","compressible":true,"extensions":["sru"]},"application/ssdl+xml":{"source":"apache","compressible":true,"extensions":["ssdl"]},"application/sslkeylogfile":{"source":"iana"},"application/ssml+xml":{"source":"iana","compressible":true,"extensions":["ssml"]},"application/st2110-41":{"source":"iana"},"application/stix+json":{"source":"iana","compressible":true},"application/stratum":{"source":"iana"},"application/swid+cbor":{"source":"iana"},"application/swid+xml":{"source":"iana","compressible":true,"extensions":["swidtag"]},"application/tamp-apex-update":{"source":"iana"},"application/tamp-apex-update-confirm":{"source":"iana"},"application/tamp-community-update":{"source":"iana"},"application/tamp-community-update-confirm":{"source":"iana"},"application/tamp-error":{"source":"iana"},"application/tamp-sequence-adjust":{"source":"iana"},"application/tamp-sequence-adjust-confirm":{"source":"iana"},"application/tamp-status-query":{"source":"iana"},"application/tamp-status-response":{"source":"iana"},"application/tamp-update":{"source":"iana"},"application/tamp-update-confirm":{"source":"iana"},"application/tar":{"compressible":true},"application/taxii+json":{"source":"iana","compressible":true},"application/td+json":{"source":"iana","compressible":true},"application/tei+xml":{"source":"iana","compressible":true,"extensions":["tei","teicorpus"]},"application/tetra_isi":{"source":"iana"},"application/thraud+xml":{"source":"iana","compressible":true,"extensions":["tfi"]},"application/timestamp-query":{"source":"iana"},"application/timestamp-reply":{"source":"iana"},"application/timestamped-data":{"source":"iana","extensions":["tsd"]},"application/tlsrpt+gzip":{"source":"iana"},"application/tlsrpt+json":{"source":"iana","compressible":true},"application/tm+json":{"source":"iana","compressible":true},"application/tnauthlist":{"source":"iana"},"application/toc+cbor":{"source":"iana"},"application/token-introspection+jwt":{"source":"iana"},"application/toml":{"source":"iana","compressible":true,"extensions":["toml"]},"application/trickle-ice-sdpfrag":{"source":"iana"},"application/trig":{"source":"iana","extensions":["trig"]},"application/trust-chain+json":{"source":"iana","compressible":true},"application/trust-mark+jwt":{"source":"iana"},"application/trust-mark-delegation+jwt":{"source":"iana"},"application/ttml+xml":{"source":"iana","compressible":true,"extensions":["ttml"]},"application/tve-trigger":{"source":"iana"},"application/tzif":{"source":"iana"},"application/tzif-leap":{"source":"iana"},"application/ubjson":{"compressible":false,"extensions":["ubj"]},"application/uccs+cbor":{"source":"iana"},"application/ujcs+json":{"source":"iana","compressible":true},"application/ulpfec":{"source":"iana"},"application/urc-grpsheet+xml":{"source":"iana","compressible":true},"application/urc-ressheet+xml":{"source":"iana","compressible":true,"extensions":["rsheet"]},"application/urc-targetdesc+xml":{"source":"iana","compressible":true,"extensions":["td"]},"application/urc-uisocketdesc+xml":{"source":"iana","compressible":true},"application/vc":{"source":"iana"},"application/vc+cose":{"source":"iana"},"application/vc+jwt":{"source":"iana"},"application/vcard+json":{"source":"iana","compressible":true},"application/vcard+xml":{"source":"iana","compressible":true},"application/vemmi":{"source":"iana"},"application/vividence.scriptfile":{"source":"apache"},"application/vnd.1000minds.decision-model+xml":{"source":"iana","compressible":true,"extensions":["1km"]},"application/vnd.1ob":{"source":"iana"},"application/vnd.3gpp-prose+xml":{"source":"iana","compressible":true},"application/vnd.3gpp-prose-pc3a+xml":{"source":"iana","compressible":true},"application/vnd.3gpp-prose-pc3ach+xml":{"source":"iana","compressible":true},"application/vnd.3gpp-prose-pc3ch+xml":{"source":"iana","compressible":true},"application/vnd.3gpp-prose-pc8+xml":{"source":"iana","compressible":true},"application/vnd.3gpp-v2x-local-service-information":{"source":"iana"},"application/vnd.3gpp.5gnas":{"source":"iana"},"application/vnd.3gpp.5gsa2x":{"source":"iana"},"application/vnd.3gpp.5gsa2x-local-service-information":{"source":"iana"},"application/vnd.3gpp.5gsv2x":{"source":"iana"},"application/vnd.3gpp.5gsv2x-local-service-information":{"source":"iana"},"application/vnd.3gpp.access-transfer-events+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.bsf+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.crs+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.current-location-discovery+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.gmop+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.gtpc":{"source":"iana"},"application/vnd.3gpp.interworking-data":{"source":"iana"},"application/vnd.3gpp.lpp":{"source":"iana"},"application/vnd.3gpp.mc-signalling-ear":{"source":"iana"},"application/vnd.3gpp.mcdata-affiliation-command+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-msgstore-ctrl-request+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-payload":{"source":"iana"},"application/vnd.3gpp.mcdata-regroup+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-service-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-signalling":{"source":"iana"},"application/vnd.3gpp.mcdata-ue-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcdata-user-profile+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-affiliation-command+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-floor-request+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-location-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-mbms-usage-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-regroup+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-service-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-signed+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-ue-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-ue-init-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcptt-user-profile+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-affiliation-command+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-location-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-mbms-usage-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-regroup+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-service-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-transmission-request+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-ue-config+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mcvideo-user-profile+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.mid-call+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.ngap":{"source":"iana"},"application/vnd.3gpp.pfcp":{"source":"iana"},"application/vnd.3gpp.pic-bw-large":{"source":"iana","extensions":["plb"]},"application/vnd.3gpp.pic-bw-small":{"source":"iana","extensions":["psb"]},"application/vnd.3gpp.pic-bw-var":{"source":"iana","extensions":["pvb"]},"application/vnd.3gpp.pinapp-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.s1ap":{"source":"iana"},"application/vnd.3gpp.seal-group-doc+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.seal-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.seal-location-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.seal-mbms-usage-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.seal-network-qos-management-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.seal-ue-config-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.seal-unicast-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.seal-user-profile-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.sms":{"source":"iana"},"application/vnd.3gpp.sms+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.srvcc-ext+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.srvcc-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.state-and-event-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.ussd+xml":{"source":"iana","compressible":true},"application/vnd.3gpp.v2x":{"source":"iana"},"application/vnd.3gpp.vae-info+xml":{"source":"iana","compressible":true},"application/vnd.3gpp2.bcmcsinfo+xml":{"source":"iana","compressible":true},"application/vnd.3gpp2.sms":{"source":"iana"},"application/vnd.3gpp2.tcap":{"source":"iana","extensions":["tcap"]},"application/vnd.3lightssoftware.imagescal":{"source":"iana"},"application/vnd.3m.post-it-notes":{"source":"iana","extensions":["pwn"]},"application/vnd.accpac.simply.aso":{"source":"iana","extensions":["aso"]},"application/vnd.accpac.simply.imp":{"source":"iana","extensions":["imp"]},"application/vnd.acm.addressxfer+json":{"source":"iana","compressible":true},"application/vnd.acm.chatbot+json":{"source":"iana","compressible":true},"application/vnd.acucobol":{"source":"iana","extensions":["acu"]},"application/vnd.acucorp":{"source":"iana","extensions":["atc","acutc"]},"application/vnd.adobe.air-application-installer-package+zip":{"source":"apache","compressible":false,"extensions":["air"]},"application/vnd.adobe.flash.movie":{"source":"iana"},"application/vnd.adobe.formscentral.fcdt":{"source":"iana","extensions":["fcdt"]},"application/vnd.adobe.fxp":{"source":"iana","extensions":["fxp","fxpl"]},"application/vnd.adobe.partial-upload":{"source":"iana"},"application/vnd.adobe.xdp+xml":{"source":"iana","compressible":true,"extensions":["xdp"]},"application/vnd.adobe.xfdf":{"source":"apache","extensions":["xfdf"]},"application/vnd.aether.imp":{"source":"iana"},"application/vnd.afpc.afplinedata":{"source":"iana"},"application/vnd.afpc.afplinedata-pagedef":{"source":"iana"},"application/vnd.afpc.cmoca-cmresource":{"source":"iana"},"application/vnd.afpc.foca-charset":{"source":"iana"},"application/vnd.afpc.foca-codedfont":{"source":"iana"},"application/vnd.afpc.foca-codepage":{"source":"iana"},"application/vnd.afpc.modca":{"source":"iana"},"application/vnd.afpc.modca-cmtable":{"source":"iana"},"application/vnd.afpc.modca-formdef":{"source":"iana"},"application/vnd.afpc.modca-mediummap":{"source":"iana"},"application/vnd.afpc.modca-objectcontainer":{"source":"iana"},"application/vnd.afpc.modca-overlay":{"source":"iana"},"application/vnd.afpc.modca-pagesegment":{"source":"iana"},"application/vnd.age":{"source":"iana","extensions":["age"]},"application/vnd.ah-barcode":{"source":"apache"},"application/vnd.ahead.space":{"source":"iana","extensions":["ahead"]},"application/vnd.airzip.filesecure.azf":{"source":"iana","extensions":["azf"]},"application/vnd.airzip.filesecure.azs":{"source":"iana","extensions":["azs"]},"application/vnd.amadeus+json":{"source":"iana","compressible":true},"application/vnd.amazon.ebook":{"source":"apache","extensions":["azw"]},"application/vnd.amazon.mobi8-ebook":{"source":"iana"},"application/vnd.americandynamics.acc":{"source":"iana","extensions":["acc"]},"application/vnd.amiga.ami":{"source":"iana","extensions":["ami"]},"application/vnd.amundsen.maze+xml":{"source":"iana","compressible":true},"application/vnd.android.ota":{"source":"iana"},"application/vnd.android.package-archive":{"source":"apache","compressible":false,"extensions":["apk"]},"application/vnd.anki":{"source":"iana"},"application/vnd.anser-web-certificate-issue-initiation":{"source":"iana","extensions":["cii"]},"application/vnd.anser-web-funds-transfer-initiation":{"source":"apache","extensions":["fti"]},"application/vnd.antix.game-component":{"source":"iana","extensions":["atx"]},"application/vnd.apache.arrow.file":{"source":"iana"},"application/vnd.apache.arrow.stream":{"source":"iana"},"application/vnd.apache.parquet":{"source":"iana"},"application/vnd.apache.thrift.binary":{"source":"iana"},"application/vnd.apache.thrift.compact":{"source":"iana"},"application/vnd.apache.thrift.json":{"source":"iana"},"application/vnd.apexlang":{"source":"iana"},"application/vnd.api+json":{"source":"iana","compressible":true},"application/vnd.aplextor.warrp+json":{"source":"iana","compressible":true},"application/vnd.apothekende.reservation+json":{"source":"iana","compressible":true},"application/vnd.apple.installer+xml":{"source":"iana","compressible":true,"extensions":["mpkg"]},"application/vnd.apple.keynote":{"source":"iana","extensions":["key"]},"application/vnd.apple.mpegurl":{"source":"iana","extensions":["m3u8"]},"application/vnd.apple.numbers":{"source":"iana","extensions":["numbers"]},"application/vnd.apple.pages":{"source":"iana","extensions":["pages"]},"application/vnd.apple.pkpass":{"compressible":false,"extensions":["pkpass"]},"application/vnd.arastra.swi":{"source":"apache"},"application/vnd.aristanetworks.swi":{"source":"iana","extensions":["swi"]},"application/vnd.artisan+json":{"source":"iana","compressible":true},"application/vnd.artsquare":{"source":"iana"},"application/vnd.astraea-software.iota":{"source":"iana","extensions":["iota"]},"application/vnd.audiograph":{"source":"iana","extensions":["aep"]},"application/vnd.autodesk.fbx":{"extensions":["fbx"]},"application/vnd.autopackage":{"source":"iana"},"application/vnd.avalon+json":{"source":"iana","compressible":true},"application/vnd.avistar+xml":{"source":"iana","compressible":true},"application/vnd.balsamiq.bmml+xml":{"source":"iana","compressible":true,"extensions":["bmml"]},"application/vnd.balsamiq.bmpr":{"source":"iana"},"application/vnd.banana-accounting":{"source":"iana"},"application/vnd.bbf.usp.error":{"source":"iana"},"application/vnd.bbf.usp.msg":{"source":"iana"},"application/vnd.bbf.usp.msg+json":{"source":"iana","compressible":true},"application/vnd.bekitzur-stech+json":{"source":"iana","compressible":true},"application/vnd.belightsoft.lhzd+zip":{"source":"iana","compressible":false},"application/vnd.belightsoft.lhzl+zip":{"source":"iana","compressible":false},"application/vnd.bint.med-content":{"source":"iana"},"application/vnd.biopax.rdf+xml":{"source":"iana","compressible":true},"application/vnd.blink-idb-value-wrapper":{"source":"iana"},"application/vnd.blueice.multipass":{"source":"iana","extensions":["mpm"]},"application/vnd.bluetooth.ep.oob":{"source":"iana"},"application/vnd.bluetooth.le.oob":{"source":"iana"},"application/vnd.bmi":{"source":"iana","extensions":["bmi"]},"application/vnd.bpf":{"source":"iana"},"application/vnd.bpf3":{"source":"iana"},"application/vnd.businessobjects":{"source":"iana","extensions":["rep"]},"application/vnd.byu.uapi+json":{"source":"iana","compressible":true},"application/vnd.bzip3":{"source":"iana"},"application/vnd.c3voc.schedule+xml":{"source":"iana","compressible":true},"application/vnd.cab-jscript":{"source":"iana"},"application/vnd.canon-cpdl":{"source":"iana"},"application/vnd.canon-lips":{"source":"iana"},"application/vnd.capasystems-pg+json":{"source":"iana","compressible":true},"application/vnd.cendio.thinlinc.clientconf":{"source":"iana"},"application/vnd.century-systems.tcp_stream":{"source":"iana"},"application/vnd.chemdraw+xml":{"source":"iana","compressible":true,"extensions":["cdxml"]},"application/vnd.chess-pgn":{"source":"iana"},"application/vnd.chipnuts.karaoke-mmd":{"source":"iana","extensions":["mmd"]},"application/vnd.ciedi":{"source":"iana"},"application/vnd.cinderella":{"source":"iana","extensions":["cdy"]},"application/vnd.cirpack.isdn-ext":{"source":"iana"},"application/vnd.citationstyles.style+xml":{"source":"iana","compressible":true,"extensions":["csl"]},"application/vnd.claymore":{"source":"iana","extensions":["cla"]},"application/vnd.cloanto.rp9":{"source":"iana","extensions":["rp9"]},"application/vnd.clonk.c4group":{"source":"iana","extensions":["c4g","c4d","c4f","c4p","c4u"]},"application/vnd.cluetrust.cartomobile-config":{"source":"iana","extensions":["c11amc"]},"application/vnd.cluetrust.cartomobile-config-pkg":{"source":"iana","extensions":["c11amz"]},"application/vnd.cncf.helm.chart.content.v1.tar+gzip":{"source":"iana"},"application/vnd.cncf.helm.chart.provenance.v1.prov":{"source":"iana"},"application/vnd.cncf.helm.config.v1+json":{"source":"iana","compressible":true},"application/vnd.coffeescript":{"source":"iana"},"application/vnd.collabio.xodocuments.document":{"source":"iana"},"application/vnd.collabio.xodocuments.document-template":{"source":"iana"},"application/vnd.collabio.xodocuments.presentation":{"source":"iana"},"application/vnd.collabio.xodocuments.presentation-template":{"source":"iana"},"application/vnd.collabio.xodocuments.spreadsheet":{"source":"iana"},"application/vnd.collabio.xodocuments.spreadsheet-template":{"source":"iana"},"application/vnd.collection+json":{"source":"iana","compressible":true},"application/vnd.collection.doc+json":{"source":"iana","compressible":true},"application/vnd.collection.next+json":{"source":"iana","compressible":true},"application/vnd.comicbook+zip":{"source":"iana","compressible":false},"application/vnd.comicbook-rar":{"source":"iana"},"application/vnd.commerce-battelle":{"source":"iana"},"application/vnd.commonspace":{"source":"iana","extensions":["csp"]},"application/vnd.contact.cmsg":{"source":"iana","extensions":["cdbcmsg"]},"application/vnd.coreos.ignition+json":{"source":"iana","compressible":true},"application/vnd.cosmocaller":{"source":"iana","extensions":["cmc"]},"application/vnd.crick.clicker":{"source":"iana","extensions":["clkx"]},"application/vnd.crick.clicker.keyboard":{"source":"iana","extensions":["clkk"]},"application/vnd.crick.clicker.palette":{"source":"iana","extensions":["clkp"]},"application/vnd.crick.clicker.template":{"source":"iana","extensions":["clkt"]},"application/vnd.crick.clicker.wordbank":{"source":"iana","extensions":["clkw"]},"application/vnd.criticaltools.wbs+xml":{"source":"iana","compressible":true,"extensions":["wbs"]},"application/vnd.cryptii.pipe+json":{"source":"iana","compressible":true},"application/vnd.crypto-shade-file":{"source":"iana"},"application/vnd.cryptomator.encrypted":{"source":"iana"},"application/vnd.cryptomator.vault":{"source":"iana"},"application/vnd.ctc-posml":{"source":"iana","extensions":["pml"]},"application/vnd.ctct.ws+xml":{"source":"iana","compressible":true},"application/vnd.cups-pdf":{"source":"iana"},"application/vnd.cups-postscript":{"source":"iana"},"application/vnd.cups-ppd":{"source":"iana","extensions":["ppd"]},"application/vnd.cups-raster":{"source":"iana"},"application/vnd.cups-raw":{"source":"iana"},"application/vnd.curl":{"source":"iana"},"application/vnd.curl.car":{"source":"apache","extensions":["car"]},"application/vnd.curl.pcurl":{"source":"apache","extensions":["pcurl"]},"application/vnd.cyan.dean.root+xml":{"source":"iana","compressible":true},"application/vnd.cybank":{"source":"iana"},"application/vnd.cyclonedx+json":{"source":"iana","compressible":true},"application/vnd.cyclonedx+xml":{"source":"iana","compressible":true},"application/vnd.d2l.coursepackage1p0+zip":{"source":"iana","compressible":false},"application/vnd.d3m-dataset":{"source":"iana"},"application/vnd.d3m-problem":{"source":"iana"},"application/vnd.dart":{"source":"iana","compressible":true,"extensions":["dart"]},"application/vnd.data-vision.rdz":{"source":"iana","extensions":["rdz"]},"application/vnd.datalog":{"source":"iana"},"application/vnd.datapackage+json":{"source":"iana","compressible":true},"application/vnd.dataresource+json":{"source":"iana","compressible":true},"application/vnd.dbf":{"source":"iana","extensions":["dbf"]},"application/vnd.dcmp+xml":{"source":"iana","compressible":true,"extensions":["dcmp"]},"application/vnd.debian.binary-package":{"source":"iana"},"application/vnd.dece.data":{"source":"iana","extensions":["uvf","uvvf","uvd","uvvd"]},"application/vnd.dece.ttml+xml":{"source":"iana","compressible":true,"extensions":["uvt","uvvt"]},"application/vnd.dece.unspecified":{"source":"iana","extensions":["uvx","uvvx"]},"application/vnd.dece.zip":{"source":"iana","extensions":["uvz","uvvz"]},"application/vnd.denovo.fcselayout-link":{"source":"iana","extensions":["fe_launch"]},"application/vnd.desmume.movie":{"source":"iana"},"application/vnd.dir-bi.plate-dl-nosuffix":{"source":"iana"},"application/vnd.dm.delegation+xml":{"source":"iana","compressible":true},"application/vnd.dna":{"source":"iana","extensions":["dna"]},"application/vnd.document+json":{"source":"iana","compressible":true},"application/vnd.dolby.mlp":{"source":"apache","extensions":["mlp"]},"application/vnd.dolby.mobile.1":{"source":"iana"},"application/vnd.dolby.mobile.2":{"source":"iana"},"application/vnd.doremir.scorecloud-binary-document":{"source":"iana"},"application/vnd.dpgraph":{"source":"iana","extensions":["dpg"]},"application/vnd.dreamfactory":{"source":"iana","extensions":["dfac"]},"application/vnd.drive+json":{"source":"iana","compressible":true},"application/vnd.ds-keypoint":{"source":"apache","extensions":["kpxx"]},"application/vnd.dtg.local":{"source":"iana"},"application/vnd.dtg.local.flash":{"source":"iana"},"application/vnd.dtg.local.html":{"source":"iana"},"application/vnd.dvb.ait":{"source":"iana","extensions":["ait"]},"application/vnd.dvb.dvbisl+xml":{"source":"iana","compressible":true},"application/vnd.dvb.dvbj":{"source":"iana"},"application/vnd.dvb.esgcontainer":{"source":"iana"},"application/vnd.dvb.ipdcdftnotifaccess":{"source":"iana"},"application/vnd.dvb.ipdcesgaccess":{"source":"iana"},"application/vnd.dvb.ipdcesgaccess2":{"source":"iana"},"application/vnd.dvb.ipdcesgpdd":{"source":"iana"},"application/vnd.dvb.ipdcroaming":{"source":"iana"},"application/vnd.dvb.iptv.alfec-base":{"source":"iana"},"application/vnd.dvb.iptv.alfec-enhancement":{"source":"iana"},"application/vnd.dvb.notif-aggregate-root+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-container+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-generic+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-ia-msglist+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-ia-registration-request+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-ia-registration-response+xml":{"source":"iana","compressible":true},"application/vnd.dvb.notif-init+xml":{"source":"iana","compressible":true},"application/vnd.dvb.pfr":{"source":"iana"},"application/vnd.dvb.service":{"source":"iana","extensions":["svc"]},"application/vnd.dxr":{"source":"iana"},"application/vnd.dynageo":{"source":"iana","extensions":["geo"]},"application/vnd.dzr":{"source":"iana"},"application/vnd.easykaraoke.cdgdownload":{"source":"iana"},"application/vnd.ecdis-update":{"source":"iana"},"application/vnd.ecip.rlp":{"source":"iana"},"application/vnd.eclipse.ditto+json":{"source":"iana","compressible":true},"application/vnd.ecowin.chart":{"source":"iana","extensions":["mag"]},"application/vnd.ecowin.filerequest":{"source":"iana"},"application/vnd.ecowin.fileupdate":{"source":"iana"},"application/vnd.ecowin.series":{"source":"iana"},"application/vnd.ecowin.seriesrequest":{"source":"iana"},"application/vnd.ecowin.seriesupdate":{"source":"iana"},"application/vnd.efi.img":{"source":"iana"},"application/vnd.efi.iso":{"source":"iana"},"application/vnd.eln+zip":{"source":"iana","compressible":false},"application/vnd.emclient.accessrequest+xml":{"source":"iana","compressible":true},"application/vnd.enliven":{"source":"iana","extensions":["nml"]},"application/vnd.enphase.envoy":{"source":"iana"},"application/vnd.eprints.data+xml":{"source":"iana","compressible":true},"application/vnd.epson.esf":{"source":"iana","extensions":["esf"]},"application/vnd.epson.msf":{"source":"iana","extensions":["msf"]},"application/vnd.epson.quickanime":{"source":"iana","extensions":["qam"]},"application/vnd.epson.salt":{"source":"iana","extensions":["slt"]},"application/vnd.epson.ssf":{"source":"iana","extensions":["ssf"]},"application/vnd.ericsson.quickcall":{"source":"iana"},"application/vnd.erofs":{"source":"iana"},"application/vnd.espass-espass+zip":{"source":"iana","compressible":false},"application/vnd.eszigno3+xml":{"source":"iana","compressible":true,"extensions":["es3","et3"]},"application/vnd.etsi.aoc+xml":{"source":"iana","compressible":true},"application/vnd.etsi.asic-e+zip":{"source":"iana","compressible":false},"application/vnd.etsi.asic-s+zip":{"source":"iana","compressible":false},"application/vnd.etsi.cug+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvcommand+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvdiscovery+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvprofile+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsad-bc+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsad-cod+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsad-npvr+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvservice+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvsync+xml":{"source":"iana","compressible":true},"application/vnd.etsi.iptvueprofile+xml":{"source":"iana","compressible":true},"application/vnd.etsi.mcid+xml":{"source":"iana","compressible":true},"application/vnd.etsi.mheg5":{"source":"iana"},"application/vnd.etsi.overload-control-policy-dataset+xml":{"source":"iana","compressible":true},"application/vnd.etsi.pstn+xml":{"source":"iana","compressible":true},"application/vnd.etsi.sci+xml":{"source":"iana","compressible":true},"application/vnd.etsi.simservs+xml":{"source":"iana","compressible":true},"application/vnd.etsi.timestamp-token":{"source":"iana"},"application/vnd.etsi.tsl+xml":{"source":"iana","compressible":true},"application/vnd.etsi.tsl.der":{"source":"iana"},"application/vnd.eu.kasparian.car+json":{"source":"iana","compressible":true},"application/vnd.eudora.data":{"source":"iana"},"application/vnd.evolv.ecig.profile":{"source":"iana"},"application/vnd.evolv.ecig.settings":{"source":"iana"},"application/vnd.evolv.ecig.theme":{"source":"iana"},"application/vnd.exstream-empower+zip":{"source":"iana","compressible":false},"application/vnd.exstream-package":{"source":"iana"},"application/vnd.ezpix-album":{"source":"iana","extensions":["ez2"]},"application/vnd.ezpix-package":{"source":"iana","extensions":["ez3"]},"application/vnd.f-secure.mobile":{"source":"iana"},"application/vnd.familysearch.gedcom+zip":{"source":"iana","compressible":false},"application/vnd.fastcopy-disk-image":{"source":"iana"},"application/vnd.fdf":{"source":"apache","extensions":["fdf"]},"application/vnd.fdsn.mseed":{"source":"iana","extensions":["mseed"]},"application/vnd.fdsn.seed":{"source":"iana","extensions":["seed","dataless"]},"application/vnd.fdsn.stationxml+xml":{"source":"iana","charset":"XML-BASED","compressible":true},"application/vnd.ffsns":{"source":"iana"},"application/vnd.ficlab.flb+zip":{"source":"iana","compressible":false},"application/vnd.filmit.zfc":{"source":"iana"},"application/vnd.fints":{"source":"iana"},"application/vnd.firemonkeys.cloudcell":{"source":"iana"},"application/vnd.flographit":{"source":"iana","extensions":["gph"]},"application/vnd.fluxtime.clip":{"source":"iana","extensions":["ftc"]},"application/vnd.font-fontforge-sfd":{"source":"iana"},"application/vnd.framemaker":{"source":"iana","extensions":["fm","frame","maker","book"]},"application/vnd.freelog.comic":{"source":"iana"},"application/vnd.frogans.fnc":{"source":"apache","extensions":["fnc"]},"application/vnd.frogans.ltf":{"source":"apache","extensions":["ltf"]},"application/vnd.fsc.weblaunch":{"source":"iana","extensions":["fsc"]},"application/vnd.fujifilm.fb.docuworks":{"source":"iana"},"application/vnd.fujifilm.fb.docuworks.binder":{"source":"iana"},"application/vnd.fujifilm.fb.docuworks.container":{"source":"iana"},"application/vnd.fujifilm.fb.jfi+xml":{"source":"iana","compressible":true},"application/vnd.fujitsu.oasys":{"source":"iana","extensions":["oas"]},"application/vnd.fujitsu.oasys2":{"source":"iana","extensions":["oa2"]},"application/vnd.fujitsu.oasys3":{"source":"iana","extensions":["oa3"]},"application/vnd.fujitsu.oasysgp":{"source":"iana","extensions":["fg5"]},"application/vnd.fujitsu.oasysprs":{"source":"iana","extensions":["bh2"]},"application/vnd.fujixerox.art-ex":{"source":"iana"},"application/vnd.fujixerox.art4":{"source":"iana"},"application/vnd.fujixerox.ddd":{"source":"iana","extensions":["ddd"]},"application/vnd.fujixerox.docuworks":{"source":"iana","extensions":["xdw"]},"application/vnd.fujixerox.docuworks.binder":{"source":"iana","extensions":["xbd"]},"application/vnd.fujixerox.docuworks.container":{"source":"iana"},"application/vnd.fujixerox.hbpl":{"source":"iana"},"application/vnd.fut-misnet":{"source":"iana"},"application/vnd.futoin+cbor":{"source":"iana"},"application/vnd.futoin+json":{"source":"iana","compressible":true},"application/vnd.fuzzysheet":{"source":"iana","extensions":["fzs"]},"application/vnd.ga4gh.passport+jwt":{"source":"iana"},"application/vnd.genomatix.tuxedo":{"source":"iana","extensions":["txd"]},"application/vnd.genozip":{"source":"iana"},"application/vnd.gentics.grd+json":{"source":"iana","compressible":true},"application/vnd.gentoo.catmetadata+xml":{"source":"iana","compressible":true},"application/vnd.gentoo.ebuild":{"source":"iana"},"application/vnd.gentoo.eclass":{"source":"iana"},"application/vnd.gentoo.gpkg":{"source":"iana"},"application/vnd.gentoo.manifest":{"source":"iana"},"application/vnd.gentoo.pkgmetadata+xml":{"source":"iana","compressible":true},"application/vnd.gentoo.xpak":{"source":"iana"},"application/vnd.geo+json":{"source":"apache","compressible":true},"application/vnd.geocube+xml":{"source":"apache","compressible":true},"application/vnd.geogebra.file":{"source":"iana","extensions":["ggb"]},"application/vnd.geogebra.pinboard":{"source":"iana"},"application/vnd.geogebra.slides":{"source":"iana","extensions":["ggs"]},"application/vnd.geogebra.tool":{"source":"iana","extensions":["ggt"]},"application/vnd.geometry-explorer":{"source":"iana","extensions":["gex","gre"]},"application/vnd.geonext":{"source":"iana","extensions":["gxt"]},"application/vnd.geoplan":{"source":"iana","extensions":["g2w"]},"application/vnd.geospace":{"source":"iana","extensions":["g3w"]},"application/vnd.gerber":{"source":"iana"},"application/vnd.globalplatform.card-content-mgt":{"source":"iana"},"application/vnd.globalplatform.card-content-mgt-response":{"source":"iana"},"application/vnd.gmx":{"source":"iana","extensions":["gmx"]},"application/vnd.gnu.taler.exchange+json":{"source":"iana","compressible":true},"application/vnd.gnu.taler.merchant+json":{"source":"iana","compressible":true},"application/vnd.google-apps.audio":{},"application/vnd.google-apps.document":{"compressible":false,"extensions":["gdoc"]},"application/vnd.google-apps.drawing":{"compressible":false,"extensions":["gdraw"]},"application/vnd.google-apps.drive-sdk":{"compressible":false},"application/vnd.google-apps.file":{},"application/vnd.google-apps.folder":{"compressible":false},"application/vnd.google-apps.form":{"compressible":false,"extensions":["gform"]},"application/vnd.google-apps.fusiontable":{},"application/vnd.google-apps.jam":{"compressible":false,"extensions":["gjam"]},"application/vnd.google-apps.mail-layout":{},"application/vnd.google-apps.map":{"compressible":false,"extensions":["gmap"]},"application/vnd.google-apps.photo":{},"application/vnd.google-apps.presentation":{"compressible":false,"extensions":["gslides"]},"application/vnd.google-apps.script":{"compressible":false,"extensions":["gscript"]},"application/vnd.google-apps.shortcut":{},"application/vnd.google-apps.site":{"compressible":false,"extensions":["gsite"]},"application/vnd.google-apps.spreadsheet":{"compressible":false,"extensions":["gsheet"]},"application/vnd.google-apps.unknown":{},"application/vnd.google-apps.video":{},"application/vnd.google-earth.kml+xml":{"source":"iana","compressible":true,"extensions":["kml"]},"application/vnd.google-earth.kmz":{"source":"iana","compressible":false,"extensions":["kmz"]},"application/vnd.gov.sk.e-form+xml":{"source":"apache","compressible":true},"application/vnd.gov.sk.e-form+zip":{"source":"iana","compressible":false},"application/vnd.gov.sk.xmldatacontainer+xml":{"source":"iana","compressible":true,"extensions":["xdcf"]},"application/vnd.gpxsee.map+xml":{"source":"iana","compressible":true},"application/vnd.grafeq":{"source":"iana","extensions":["gqf","gqs"]},"application/vnd.gridmp":{"source":"iana"},"application/vnd.groove-account":{"source":"iana","extensions":["gac"]},"application/vnd.groove-help":{"source":"iana","extensions":["ghf"]},"application/vnd.groove-identity-message":{"source":"iana","extensions":["gim"]},"application/vnd.groove-injector":{"source":"iana","extensions":["grv"]},"application/vnd.groove-tool-message":{"source":"iana","extensions":["gtm"]},"application/vnd.groove-tool-template":{"source":"iana","extensions":["tpl"]},"application/vnd.groove-vcard":{"source":"iana","extensions":["vcg"]},"application/vnd.hal+json":{"source":"iana","compressible":true},"application/vnd.hal+xml":{"source":"iana","compressible":true,"extensions":["hal"]},"application/vnd.handheld-entertainment+xml":{"source":"iana","compressible":true,"extensions":["zmm"]},"application/vnd.hbci":{"source":"iana","extensions":["hbci"]},"application/vnd.hc+json":{"source":"iana","compressible":true},"application/vnd.hcl-bireports":{"source":"iana"},"application/vnd.hdt":{"source":"iana"},"application/vnd.heroku+json":{"source":"iana","compressible":true},"application/vnd.hhe.lesson-player":{"source":"iana","extensions":["les"]},"application/vnd.hp-hpgl":{"source":"iana","extensions":["hpgl"]},"application/vnd.hp-hpid":{"source":"iana","extensions":["hpid"]},"application/vnd.hp-hps":{"source":"iana","extensions":["hps"]},"application/vnd.hp-jlyt":{"source":"iana","extensions":["jlt"]},"application/vnd.hp-pcl":{"source":"iana","extensions":["pcl"]},"application/vnd.hp-pclxl":{"source":"iana","extensions":["pclxl"]},"application/vnd.hsl":{"source":"iana"},"application/vnd.httphone":{"source":"iana"},"application/vnd.hydrostatix.sof-data":{"source":"iana","extensions":["sfd-hdstx"]},"application/vnd.hyper+json":{"source":"iana","compressible":true},"application/vnd.hyper-item+json":{"source":"iana","compressible":true},"application/vnd.hyperdrive+json":{"source":"iana","compressible":true},"application/vnd.hzn-3d-crossword":{"source":"iana"},"application/vnd.ibm.afplinedata":{"source":"apache"},"application/vnd.ibm.electronic-media":{"source":"iana"},"application/vnd.ibm.minipay":{"source":"iana","extensions":["mpy"]},"application/vnd.ibm.modcap":{"source":"apache","extensions":["afp","listafp","list3820"]},"application/vnd.ibm.rights-management":{"source":"iana","extensions":["irm"]},"application/vnd.ibm.secure-container":{"source":"iana","extensions":["sc"]},"application/vnd.iccprofile":{"source":"iana","extensions":["icc","icm"]},"application/vnd.ieee.1905":{"source":"iana"},"application/vnd.igloader":{"source":"iana","extensions":["igl"]},"application/vnd.imagemeter.folder+zip":{"source":"iana","compressible":false},"application/vnd.imagemeter.image+zip":{"source":"iana","compressible":false},"application/vnd.immervision-ivp":{"source":"iana","extensions":["ivp"]},"application/vnd.immervision-ivu":{"source":"iana","extensions":["ivu"]},"application/vnd.ims.imsccv1p1":{"source":"iana"},"application/vnd.ims.imsccv1p2":{"source":"iana"},"application/vnd.ims.imsccv1p3":{"source":"iana"},"application/vnd.ims.lis.v2.result+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolconsumerprofile+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolproxy+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolproxy.id+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolsettings+json":{"source":"iana","compressible":true},"application/vnd.ims.lti.v2.toolsettings.simple+json":{"source":"iana","compressible":true},"application/vnd.informedcontrol.rms+xml":{"source":"iana","compressible":true},"application/vnd.informix-visionary":{"source":"apache"},"application/vnd.infotech.project":{"source":"iana"},"application/vnd.infotech.project+xml":{"source":"iana","compressible":true},"application/vnd.innopath.wamp.notification":{"source":"iana"},"application/vnd.insors.igm":{"source":"iana","extensions":["igm"]},"application/vnd.intercon.formnet":{"source":"iana","extensions":["xpw","xpx"]},"application/vnd.intergeo":{"source":"iana","extensions":["i2g"]},"application/vnd.intertrust.digibox":{"source":"iana"},"application/vnd.intertrust.nncp":{"source":"iana"},"application/vnd.intu.qbo":{"source":"iana","extensions":["qbo"]},"application/vnd.intu.qfx":{"source":"iana","extensions":["qfx"]},"application/vnd.ipfs.ipns-record":{"source":"iana"},"application/vnd.ipld.car":{"source":"iana"},"application/vnd.ipld.dag-cbor":{"source":"iana"},"application/vnd.ipld.dag-json":{"source":"iana"},"application/vnd.ipld.raw":{"source":"iana"},"application/vnd.iptc.g2.catalogitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.conceptitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.knowledgeitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.newsitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.newsmessage+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.packageitem+xml":{"source":"iana","compressible":true},"application/vnd.iptc.g2.planningitem+xml":{"source":"iana","compressible":true},"application/vnd.ipunplugged.rcprofile":{"source":"iana","extensions":["rcprofile"]},"application/vnd.irepository.package+xml":{"source":"iana","compressible":true,"extensions":["irp"]},"application/vnd.is-xpr":{"source":"iana","extensions":["xpr"]},"application/vnd.isac.fcs":{"source":"iana","extensions":["fcs"]},"application/vnd.iso11783-10+zip":{"source":"iana","compressible":false},"application/vnd.jam":{"source":"iana","extensions":["jam"]},"application/vnd.japannet-directory-service":{"source":"iana"},"application/vnd.japannet-jpnstore-wakeup":{"source":"iana"},"application/vnd.japannet-payment-wakeup":{"source":"iana"},"application/vnd.japannet-registration":{"source":"iana"},"application/vnd.japannet-registration-wakeup":{"source":"iana"},"application/vnd.japannet-setstore-wakeup":{"source":"iana"},"application/vnd.japannet-verification":{"source":"iana"},"application/vnd.japannet-verification-wakeup":{"source":"iana"},"application/vnd.jcp.javame.midlet-rms":{"source":"iana","extensions":["rms"]},"application/vnd.jisp":{"source":"iana","extensions":["jisp"]},"application/vnd.joost.joda-archive":{"source":"iana","extensions":["joda"]},"application/vnd.jsk.isdn-ngn":{"source":"iana"},"application/vnd.kahootz":{"source":"iana","extensions":["ktz","ktr"]},"application/vnd.kde.karbon":{"source":"iana","extensions":["karbon"]},"application/vnd.kde.kchart":{"source":"iana","extensions":["chrt"]},"application/vnd.kde.kformula":{"source":"iana","extensions":["kfo"]},"application/vnd.kde.kivio":{"source":"iana","extensions":["flw"]},"application/vnd.kde.kontour":{"source":"iana","extensions":["kon"]},"application/vnd.kde.kpresenter":{"source":"iana","extensions":["kpr","kpt"]},"application/vnd.kde.kspread":{"source":"iana","extensions":["ksp"]},"application/vnd.kde.kword":{"source":"iana","extensions":["kwd","kwt"]},"application/vnd.kdl":{"source":"iana"},"application/vnd.kenameaapp":{"source":"iana","extensions":["htke"]},"application/vnd.keyman.kmp+zip":{"source":"iana","compressible":false},"application/vnd.keyman.kmx":{"source":"iana"},"application/vnd.kidspiration":{"source":"iana","extensions":["kia"]},"application/vnd.kinar":{"source":"iana","extensions":["kne","knp"]},"application/vnd.koan":{"source":"iana","extensions":["skp","skd","skt","skm"]},"application/vnd.kodak-descriptor":{"source":"iana","extensions":["sse"]},"application/vnd.las":{"source":"iana"},"application/vnd.las.las+json":{"source":"iana","compressible":true},"application/vnd.las.las+xml":{"source":"iana","compressible":true,"extensions":["lasxml"]},"application/vnd.laszip":{"source":"iana"},"application/vnd.ldev.productlicensing":{"source":"iana"},"application/vnd.leap+json":{"source":"iana","compressible":true},"application/vnd.liberty-request+xml":{"source":"iana","compressible":true},"application/vnd.llamagraphics.life-balance.desktop":{"source":"iana","extensions":["lbd"]},"application/vnd.llamagraphics.life-balance.exchange+xml":{"source":"iana","compressible":true,"extensions":["lbe"]},"application/vnd.logipipe.circuit+zip":{"source":"iana","compressible":false},"application/vnd.loom":{"source":"iana"},"application/vnd.lotus-1-2-3":{"source":"iana","extensions":["123"]},"application/vnd.lotus-approach":{"source":"iana","extensions":["apr"]},"application/vnd.lotus-freelance":{"source":"iana","extensions":["pre"]},"application/vnd.lotus-notes":{"source":"iana","extensions":["nsf"]},"application/vnd.lotus-organizer":{"source":"iana","extensions":["org"]},"application/vnd.lotus-screencam":{"source":"iana","extensions":["scm"]},"application/vnd.lotus-wordpro":{"source":"iana","extensions":["lwp"]},"application/vnd.macports.portpkg":{"source":"iana","extensions":["portpkg"]},"application/vnd.mapbox-vector-tile":{"source":"iana","extensions":["mvt"]},"application/vnd.marlin.drm.actiontoken+xml":{"source":"iana","compressible":true},"application/vnd.marlin.drm.conftoken+xml":{"source":"iana","compressible":true},"application/vnd.marlin.drm.license+xml":{"source":"iana","compressible":true},"application/vnd.marlin.drm.mdcf":{"source":"iana"},"application/vnd.mason+json":{"source":"iana","compressible":true},"application/vnd.maxar.archive.3tz+zip":{"source":"iana","compressible":false},"application/vnd.maxmind.maxmind-db":{"source":"iana"},"application/vnd.mcd":{"source":"iana","extensions":["mcd"]},"application/vnd.mdl":{"source":"iana"},"application/vnd.mdl-mbsdf":{"source":"iana"},"application/vnd.medcalcdata":{"source":"iana","extensions":["mc1"]},"application/vnd.mediastation.cdkey":{"source":"iana","extensions":["cdkey"]},"application/vnd.medicalholodeck.recordxr":{"source":"iana"},"application/vnd.meridian-slingshot":{"source":"iana"},"application/vnd.mermaid":{"source":"iana"},"application/vnd.mfer":{"source":"iana","extensions":["mwf"]},"application/vnd.mfmp":{"source":"iana","extensions":["mfm"]},"application/vnd.micro+json":{"source":"iana","compressible":true},"application/vnd.micrografx.flo":{"source":"iana","extensions":["flo"]},"application/vnd.micrografx.igx":{"source":"iana","extensions":["igx"]},"application/vnd.microsoft.portable-executable":{"source":"iana"},"application/vnd.microsoft.windows.thumbnail-cache":{"source":"iana"},"application/vnd.miele+json":{"source":"iana","compressible":true},"application/vnd.mif":{"source":"iana","extensions":["mif"]},"application/vnd.minisoft-hp3000-save":{"source":"iana"},"application/vnd.mitsubishi.misty-guard.trustweb":{"source":"iana"},"application/vnd.mobius.daf":{"source":"iana","extensions":["daf"]},"application/vnd.mobius.dis":{"source":"iana","extensions":["dis"]},"application/vnd.mobius.mbk":{"source":"iana","extensions":["mbk"]},"application/vnd.mobius.mqy":{"source":"iana","extensions":["mqy"]},"application/vnd.mobius.msl":{"source":"iana","extensions":["msl"]},"application/vnd.mobius.plc":{"source":"iana","extensions":["plc"]},"application/vnd.mobius.txf":{"source":"iana","extensions":["txf"]},"application/vnd.modl":{"source":"iana"},"application/vnd.mophun.application":{"source":"iana","extensions":["mpn"]},"application/vnd.mophun.certificate":{"source":"iana","extensions":["mpc"]},"application/vnd.motorola.flexsuite":{"source":"iana"},"application/vnd.motorola.flexsuite.adsi":{"source":"iana"},"application/vnd.motorola.flexsuite.fis":{"source":"iana"},"application/vnd.motorola.flexsuite.gotap":{"source":"iana"},"application/vnd.motorola.flexsuite.kmr":{"source":"iana"},"application/vnd.motorola.flexsuite.ttc":{"source":"iana"},"application/vnd.motorola.flexsuite.wem":{"source":"iana"},"application/vnd.motorola.iprm":{"source":"iana"},"application/vnd.mozilla.xul+xml":{"source":"iana","compressible":true,"extensions":["xul"]},"application/vnd.ms-3mfdocument":{"source":"iana"},"application/vnd.ms-artgalry":{"source":"iana","extensions":["cil"]},"application/vnd.ms-asf":{"source":"iana"},"application/vnd.ms-cab-compressed":{"source":"iana","extensions":["cab"]},"application/vnd.ms-color.iccprofile":{"source":"apache"},"application/vnd.ms-excel":{"source":"iana","compressible":false,"extensions":["xls","xlm","xla","xlc","xlt","xlw"]},"application/vnd.ms-excel.addin.macroenabled.12":{"source":"iana","extensions":["xlam"]},"application/vnd.ms-excel.sheet.binary.macroenabled.12":{"source":"iana","extensions":["xlsb"]},"application/vnd.ms-excel.sheet.macroenabled.12":{"source":"iana","extensions":["xlsm"]},"application/vnd.ms-excel.template.macroenabled.12":{"source":"iana","extensions":["xltm"]},"application/vnd.ms-fontobject":{"source":"iana","compressible":true,"extensions":["eot"]},"application/vnd.ms-htmlhelp":{"source":"iana","extensions":["chm"]},"application/vnd.ms-ims":{"source":"iana","extensions":["ims"]},"application/vnd.ms-lrm":{"source":"iana","extensions":["lrm"]},"application/vnd.ms-office.activex+xml":{"source":"iana","compressible":true},"application/vnd.ms-officetheme":{"source":"iana","extensions":["thmx"]},"application/vnd.ms-opentype":{"source":"apache","compressible":true},"application/vnd.ms-outlook":{"compressible":false,"extensions":["msg"]},"application/vnd.ms-package.obfuscated-opentype":{"source":"apache"},"application/vnd.ms-pki.seccat":{"source":"apache","extensions":["cat"]},"application/vnd.ms-pki.stl":{"source":"apache","extensions":["stl"]},"application/vnd.ms-playready.initiator+xml":{"source":"iana","compressible":true},"application/vnd.ms-powerpoint":{"source":"iana","compressible":false,"extensions":["ppt","pps","pot"]},"application/vnd.ms-powerpoint.addin.macroenabled.12":{"source":"iana","extensions":["ppam"]},"application/vnd.ms-powerpoint.presentation.macroenabled.12":{"source":"iana","extensions":["pptm"]},"application/vnd.ms-powerpoint.slide.macroenabled.12":{"source":"iana","extensions":["sldm"]},"application/vnd.ms-powerpoint.slideshow.macroenabled.12":{"source":"iana","extensions":["ppsm"]},"application/vnd.ms-powerpoint.template.macroenabled.12":{"source":"iana","extensions":["potm"]},"application/vnd.ms-printdevicecapabilities+xml":{"source":"iana","compressible":true},"application/vnd.ms-printing.printticket+xml":{"source":"apache","compressible":true},"application/vnd.ms-printschematicket+xml":{"source":"iana","compressible":true},"application/vnd.ms-project":{"source":"iana","extensions":["mpp","mpt"]},"application/vnd.ms-tnef":{"source":"iana"},"application/vnd.ms-visio.viewer":{"extensions":["vdx"]},"application/vnd.ms-windows.devicepairing":{"source":"iana"},"application/vnd.ms-windows.nwprinting.oob":{"source":"iana"},"application/vnd.ms-windows.printerpairing":{"source":"iana"},"application/vnd.ms-windows.wsd.oob":{"source":"iana"},"application/vnd.ms-wmdrm.lic-chlg-req":{"source":"iana"},"application/vnd.ms-wmdrm.lic-resp":{"source":"iana"},"application/vnd.ms-wmdrm.meter-chlg-req":{"source":"iana"},"application/vnd.ms-wmdrm.meter-resp":{"source":"iana"},"application/vnd.ms-word.document.macroenabled.12":{"source":"iana","extensions":["docm"]},"application/vnd.ms-word.template.macroenabled.12":{"source":"iana","extensions":["dotm"]},"application/vnd.ms-works":{"source":"iana","extensions":["wps","wks","wcm","wdb"]},"application/vnd.ms-wpl":{"source":"iana","extensions":["wpl"]},"application/vnd.ms-xpsdocument":{"source":"iana","compressible":false,"extensions":["xps"]},"application/vnd.msa-disk-image":{"source":"iana"},"application/vnd.mseq":{"source":"iana","extensions":["mseq"]},"application/vnd.msgpack":{"source":"iana"},"application/vnd.msign":{"source":"iana"},"application/vnd.multiad.creator":{"source":"iana"},"application/vnd.multiad.creator.cif":{"source":"iana"},"application/vnd.music-niff":{"source":"iana"},"application/vnd.musician":{"source":"iana","extensions":["mus"]},"application/vnd.muvee.style":{"source":"iana","extensions":["msty"]},"application/vnd.mynfc":{"source":"iana","extensions":["taglet"]},"application/vnd.nacamar.ybrid+json":{"source":"iana","compressible":true},"application/vnd.nato.bindingdataobject+cbor":{"source":"iana"},"application/vnd.nato.bindingdataobject+json":{"source":"iana","compressible":true},"application/vnd.nato.bindingdataobject+xml":{"source":"iana","compressible":true,"extensions":["bdo"]},"application/vnd.nato.openxmlformats-package.iepd+zip":{"source":"iana","compressible":false},"application/vnd.ncd.control":{"source":"iana"},"application/vnd.ncd.reference":{"source":"iana"},"application/vnd.nearst.inv+json":{"source":"iana","compressible":true},"application/vnd.nebumind.line":{"source":"iana"},"application/vnd.nervana":{"source":"iana"},"application/vnd.netfpx":{"source":"iana"},"application/vnd.neurolanguage.nlu":{"source":"iana","extensions":["nlu"]},"application/vnd.nimn":{"source":"iana"},"application/vnd.nintendo.nitro.rom":{"source":"iana"},"application/vnd.nintendo.snes.rom":{"source":"iana"},"application/vnd.nitf":{"source":"iana","extensions":["ntf","nitf"]},"application/vnd.noblenet-directory":{"source":"iana","extensions":["nnd"]},"application/vnd.noblenet-sealer":{"source":"iana","extensions":["nns"]},"application/vnd.noblenet-web":{"source":"iana","extensions":["nnw"]},"application/vnd.nokia.catalogs":{"source":"iana"},"application/vnd.nokia.conml+wbxml":{"source":"iana"},"application/vnd.nokia.conml+xml":{"source":"iana","compressible":true},"application/vnd.nokia.iptv.config+xml":{"source":"iana","compressible":true},"application/vnd.nokia.isds-radio-presets":{"source":"iana"},"application/vnd.nokia.landmark+wbxml":{"source":"iana"},"application/vnd.nokia.landmark+xml":{"source":"iana","compressible":true},"application/vnd.nokia.landmarkcollection+xml":{"source":"iana","compressible":true},"application/vnd.nokia.n-gage.ac+xml":{"source":"iana","compressible":true,"extensions":["ac"]},"application/vnd.nokia.n-gage.data":{"source":"iana","extensions":["ngdat"]},"application/vnd.nokia.n-gage.symbian.install":{"source":"apache","extensions":["n-gage"]},"application/vnd.nokia.ncd":{"source":"iana"},"application/vnd.nokia.pcd+wbxml":{"source":"iana"},"application/vnd.nokia.pcd+xml":{"source":"iana","compressible":true},"application/vnd.nokia.radio-preset":{"source":"iana","extensions":["rpst"]},"application/vnd.nokia.radio-presets":{"source":"iana","extensions":["rpss"]},"application/vnd.novadigm.edm":{"source":"iana","extensions":["edm"]},"application/vnd.novadigm.edx":{"source":"iana","extensions":["edx"]},"application/vnd.novadigm.ext":{"source":"iana","extensions":["ext"]},"application/vnd.ntt-local.content-share":{"source":"iana"},"application/vnd.ntt-local.file-transfer":{"source":"iana"},"application/vnd.ntt-local.ogw_remote-access":{"source":"iana"},"application/vnd.ntt-local.sip-ta_remote":{"source":"iana"},"application/vnd.ntt-local.sip-ta_tcp_stream":{"source":"iana"},"application/vnd.oai.workflows":{"source":"iana"},"application/vnd.oai.workflows+json":{"source":"iana","compressible":true},"application/vnd.oai.workflows+yaml":{"source":"iana"},"application/vnd.oasis.opendocument.base":{"source":"iana"},"application/vnd.oasis.opendocument.chart":{"source":"iana","extensions":["odc"]},"application/vnd.oasis.opendocument.chart-template":{"source":"iana","extensions":["otc"]},"application/vnd.oasis.opendocument.database":{"source":"apache","extensions":["odb"]},"application/vnd.oasis.opendocument.formula":{"source":"iana","extensions":["odf"]},"application/vnd.oasis.opendocument.formula-template":{"source":"iana","extensions":["odft"]},"application/vnd.oasis.opendocument.graphics":{"source":"iana","compressible":false,"extensions":["odg"]},"application/vnd.oasis.opendocument.graphics-template":{"source":"iana","extensions":["otg"]},"application/vnd.oasis.opendocument.image":{"source":"iana","extensions":["odi"]},"application/vnd.oasis.opendocument.image-template":{"source":"iana","extensions":["oti"]},"application/vnd.oasis.opendocument.presentation":{"source":"iana","compressible":false,"extensions":["odp"]},"application/vnd.oasis.opendocument.presentation-template":{"source":"iana","extensions":["otp"]},"application/vnd.oasis.opendocument.spreadsheet":{"source":"iana","compressible":false,"extensions":["ods"]},"application/vnd.oasis.opendocument.spreadsheet-template":{"source":"iana","extensions":["ots"]},"application/vnd.oasis.opendocument.text":{"source":"iana","compressible":false,"extensions":["odt"]},"application/vnd.oasis.opendocument.text-master":{"source":"iana","extensions":["odm"]},"application/vnd.oasis.opendocument.text-master-template":{"source":"iana"},"application/vnd.oasis.opendocument.text-template":{"source":"iana","extensions":["ott"]},"application/vnd.oasis.opendocument.text-web":{"source":"iana","extensions":["oth"]},"application/vnd.obn":{"source":"iana"},"application/vnd.ocf+cbor":{"source":"iana"},"application/vnd.oci.image.manifest.v1+json":{"source":"iana","compressible":true},"application/vnd.oftn.l10n+json":{"source":"iana","compressible":true},"application/vnd.oipf.contentaccessdownload+xml":{"source":"iana","compressible":true},"application/vnd.oipf.contentaccessstreaming+xml":{"source":"iana","compressible":true},"application/vnd.oipf.cspg-hexbinary":{"source":"iana"},"application/vnd.oipf.dae.svg+xml":{"source":"iana","compressible":true},"application/vnd.oipf.dae.xhtml+xml":{"source":"iana","compressible":true},"application/vnd.oipf.mippvcontrolmessage+xml":{"source":"iana","compressible":true},"application/vnd.oipf.pae.gem":{"source":"iana"},"application/vnd.oipf.spdiscovery+xml":{"source":"iana","compressible":true},"application/vnd.oipf.spdlist+xml":{"source":"iana","compressible":true},"application/vnd.oipf.ueprofile+xml":{"source":"iana","compressible":true},"application/vnd.oipf.userprofile+xml":{"source":"iana","compressible":true},"application/vnd.olpc-sugar":{"source":"iana","extensions":["xo"]},"application/vnd.oma-scws-config":{"source":"iana"},"application/vnd.oma-scws-http-request":{"source":"iana"},"application/vnd.oma-scws-http-response":{"source":"iana"},"application/vnd.oma.bcast.associated-procedure-parameter+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.drm-trigger+xml":{"source":"apache","compressible":true},"application/vnd.oma.bcast.imd+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.ltkm":{"source":"iana"},"application/vnd.oma.bcast.notification+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.provisioningtrigger":{"source":"iana"},"application/vnd.oma.bcast.sgboot":{"source":"iana"},"application/vnd.oma.bcast.sgdd+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.sgdu":{"source":"iana"},"application/vnd.oma.bcast.simple-symbol-container":{"source":"iana"},"application/vnd.oma.bcast.smartcard-trigger+xml":{"source":"apache","compressible":true},"application/vnd.oma.bcast.sprov+xml":{"source":"iana","compressible":true},"application/vnd.oma.bcast.stkm":{"source":"iana"},"application/vnd.oma.cab-address-book+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-feature-handler+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-pcc+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-subs-invite+xml":{"source":"iana","compressible":true},"application/vnd.oma.cab-user-prefs+xml":{"source":"iana","compressible":true},"application/vnd.oma.dcd":{"source":"iana"},"application/vnd.oma.dcdc":{"source":"iana"},"application/vnd.oma.dd2+xml":{"source":"iana","compressible":true,"extensions":["dd2"]},"application/vnd.oma.drm.risd+xml":{"source":"iana","compressible":true},"application/vnd.oma.group-usage-list+xml":{"source":"iana","compressible":true},"application/vnd.oma.lwm2m+cbor":{"source":"iana"},"application/vnd.oma.lwm2m+json":{"source":"iana","compressible":true},"application/vnd.oma.lwm2m+tlv":{"source":"iana"},"application/vnd.oma.pal+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.detailed-progress-report+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.final-report+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.groups+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.invocation-descriptor+xml":{"source":"iana","compressible":true},"application/vnd.oma.poc.optimized-progress-report+xml":{"source":"iana","compressible":true},"application/vnd.oma.push":{"source":"iana"},"application/vnd.oma.scidm.messages+xml":{"source":"iana","compressible":true},"application/vnd.oma.xcap-directory+xml":{"source":"iana","compressible":true},"application/vnd.omads-email+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.omads-file+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.omads-folder+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.omaloc-supl-init":{"source":"iana"},"application/vnd.onepager":{"source":"iana"},"application/vnd.onepagertamp":{"source":"iana"},"application/vnd.onepagertamx":{"source":"iana"},"application/vnd.onepagertat":{"source":"iana"},"application/vnd.onepagertatp":{"source":"iana"},"application/vnd.onepagertatx":{"source":"iana"},"application/vnd.onvif.metadata":{"source":"iana"},"application/vnd.openblox.game+xml":{"source":"iana","compressible":true,"extensions":["obgx"]},"application/vnd.openblox.game-binary":{"source":"iana"},"application/vnd.openeye.oeb":{"source":"iana"},"application/vnd.openofficeorg.extension":{"source":"apache","extensions":["oxt"]},"application/vnd.openstreetmap.data+xml":{"source":"iana","compressible":true,"extensions":["osm"]},"application/vnd.opentimestamps.ots":{"source":"iana"},"application/vnd.openvpi.dspx+json":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.custom-properties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.customxmlproperties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawing+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.chart+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.extended-properties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.comments+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.presentation":{"source":"iana","compressible":false,"extensions":["pptx"]},"application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.presprops+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slide":{"source":"iana","extensions":["sldx"]},"application/vnd.openxmlformats-officedocument.presentationml.slide+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slideshow":{"source":"iana","extensions":["ppsx"]},"application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.tags+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.template":{"source":"iana","extensions":["potx"]},"application/vnd.openxmlformats-officedocument.presentationml.template.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{"source":"iana","compressible":false,"extensions":["xlsx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.template":{"source":"iana","extensions":["xltx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.theme+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.themeoverride+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.vmldrawing":{"source":"iana"},"application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.document":{"source":"iana","compressible":false,"extensions":["docx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.template":{"source":"iana","extensions":["dotx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-package.core-properties+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml":{"source":"iana","compressible":true},"application/vnd.openxmlformats-package.relationships+xml":{"source":"iana","compressible":true},"application/vnd.oracle.resource+json":{"source":"iana","compressible":true},"application/vnd.orange.indata":{"source":"iana"},"application/vnd.osa.netdeploy":{"source":"iana"},"application/vnd.osgeo.mapguide.package":{"source":"iana","extensions":["mgp"]},"application/vnd.osgi.bundle":{"source":"iana"},"application/vnd.osgi.dp":{"source":"iana","extensions":["dp"]},"application/vnd.osgi.subsystem":{"source":"iana","extensions":["esa"]},"application/vnd.otps.ct-kip+xml":{"source":"iana","compressible":true},"application/vnd.oxli.countgraph":{"source":"iana"},"application/vnd.pagerduty+json":{"source":"iana","compressible":true},"application/vnd.palm":{"source":"iana","extensions":["pdb","pqa","oprc"]},"application/vnd.panoply":{"source":"iana"},"application/vnd.paos.xml":{"source":"iana"},"application/vnd.patentdive":{"source":"iana"},"application/vnd.patientecommsdoc":{"source":"iana"},"application/vnd.pawaafile":{"source":"iana","extensions":["paw"]},"application/vnd.pcos":{"source":"iana"},"application/vnd.pg.format":{"source":"iana","extensions":["str"]},"application/vnd.pg.osasli":{"source":"iana","extensions":["ei6"]},"application/vnd.piaccess.application-licence":{"source":"iana"},"application/vnd.picsel":{"source":"iana","extensions":["efif"]},"application/vnd.pmi.widget":{"source":"iana","extensions":["wg"]},"application/vnd.poc.group-advertisement+xml":{"source":"iana","compressible":true},"application/vnd.pocketlearn":{"source":"iana","extensions":["plf"]},"application/vnd.powerbuilder6":{"source":"iana","extensions":["pbd"]},"application/vnd.powerbuilder6-s":{"source":"iana"},"application/vnd.powerbuilder7":{"source":"iana"},"application/vnd.powerbuilder7-s":{"source":"iana"},"application/vnd.powerbuilder75":{"source":"iana"},"application/vnd.powerbuilder75-s":{"source":"iana"},"application/vnd.preminet":{"source":"iana"},"application/vnd.previewsystems.box":{"source":"iana","extensions":["box"]},"application/vnd.procrate.brushset":{"extensions":["brushset"]},"application/vnd.procreate.brush":{"extensions":["brush"]},"application/vnd.procreate.dream":{"extensions":["drm"]},"application/vnd.proteus.magazine":{"source":"iana","extensions":["mgz"]},"application/vnd.psfs":{"source":"iana"},"application/vnd.pt.mundusmundi":{"source":"iana"},"application/vnd.publishare-delta-tree":{"source":"iana","extensions":["qps"]},"application/vnd.pvi.ptid1":{"source":"iana","extensions":["ptid"]},"application/vnd.pwg-multiplexed":{"source":"iana"},"application/vnd.pwg-xhtml-print+xml":{"source":"iana","compressible":true,"extensions":["xhtm"]},"application/vnd.qualcomm.brew-app-res":{"source":"iana"},"application/vnd.quarantainenet":{"source":"iana"},"application/vnd.quark.quarkxpress":{"source":"iana","extensions":["qxd","qxt","qwd","qwt","qxl","qxb"]},"application/vnd.quobject-quoxdocument":{"source":"iana"},"application/vnd.radisys.moml+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-conf+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-conn+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-dialog+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-audit-stream+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-conf+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-base+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-fax-detect+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-fax-sendrecv+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-group+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-speech+xml":{"source":"iana","compressible":true},"application/vnd.radisys.msml-dialog-transform+xml":{"source":"iana","compressible":true},"application/vnd.rainstor.data":{"source":"iana"},"application/vnd.rapid":{"source":"iana"},"application/vnd.rar":{"source":"iana","extensions":["rar"]},"application/vnd.realvnc.bed":{"source":"iana","extensions":["bed"]},"application/vnd.recordare.musicxml":{"source":"iana","extensions":["mxl"]},"application/vnd.recordare.musicxml+xml":{"source":"iana","compressible":true,"extensions":["musicxml"]},"application/vnd.relpipe":{"source":"iana"},"application/vnd.renlearn.rlprint":{"source":"iana"},"application/vnd.resilient.logic":{"source":"iana"},"application/vnd.restful+json":{"source":"iana","compressible":true},"application/vnd.rig.cryptonote":{"source":"iana","extensions":["cryptonote"]},"application/vnd.rim.cod":{"source":"apache","extensions":["cod"]},"application/vnd.rn-realmedia":{"source":"apache","extensions":["rm"]},"application/vnd.rn-realmedia-vbr":{"source":"apache","extensions":["rmvb"]},"application/vnd.route66.link66+xml":{"source":"iana","compressible":true,"extensions":["link66"]},"application/vnd.rs-274x":{"source":"iana"},"application/vnd.ruckus.download":{"source":"iana"},"application/vnd.s3sms":{"source":"iana"},"application/vnd.sailingtracker.track":{"source":"iana","extensions":["st"]},"application/vnd.sar":{"source":"iana"},"application/vnd.sbm.cid":{"source":"iana"},"application/vnd.sbm.mid2":{"source":"iana"},"application/vnd.scribus":{"source":"iana"},"application/vnd.sealed.3df":{"source":"iana"},"application/vnd.sealed.csf":{"source":"iana"},"application/vnd.sealed.doc":{"source":"iana"},"application/vnd.sealed.eml":{"source":"iana"},"application/vnd.sealed.mht":{"source":"iana"},"application/vnd.sealed.net":{"source":"iana"},"application/vnd.sealed.ppt":{"source":"iana"},"application/vnd.sealed.tiff":{"source":"iana"},"application/vnd.sealed.xls":{"source":"iana"},"application/vnd.sealedmedia.softseal.html":{"source":"iana"},"application/vnd.sealedmedia.softseal.pdf":{"source":"iana"},"application/vnd.seemail":{"source":"iana","extensions":["see"]},"application/vnd.seis+json":{"source":"iana","compressible":true},"application/vnd.sema":{"source":"iana","extensions":["sema"]},"application/vnd.semd":{"source":"iana","extensions":["semd"]},"application/vnd.semf":{"source":"iana","extensions":["semf"]},"application/vnd.shade-save-file":{"source":"iana"},"application/vnd.shana.informed.formdata":{"source":"iana","extensions":["ifm"]},"application/vnd.shana.informed.formtemplate":{"source":"iana","extensions":["itp"]},"application/vnd.shana.informed.interchange":{"source":"iana","extensions":["iif"]},"application/vnd.shana.informed.package":{"source":"iana","extensions":["ipk"]},"application/vnd.shootproof+json":{"source":"iana","compressible":true},"application/vnd.shopkick+json":{"source":"iana","compressible":true},"application/vnd.shp":{"source":"iana"},"application/vnd.shx":{"source":"iana"},"application/vnd.sigrok.session":{"source":"iana"},"application/vnd.simtech-mindmapper":{"source":"iana","extensions":["twd","twds"]},"application/vnd.siren+json":{"source":"iana","compressible":true},"application/vnd.sketchometry":{"source":"iana"},"application/vnd.smaf":{"source":"iana","extensions":["mmf"]},"application/vnd.smart.notebook":{"source":"iana"},"application/vnd.smart.teacher":{"source":"iana","extensions":["teacher"]},"application/vnd.smintio.portals.archive":{"source":"iana"},"application/vnd.snesdev-page-table":{"source":"iana"},"application/vnd.software602.filler.form+xml":{"source":"iana","compressible":true,"extensions":["fo"]},"application/vnd.software602.filler.form-xml-zip":{"source":"iana"},"application/vnd.solent.sdkm+xml":{"source":"iana","compressible":true,"extensions":["sdkm","sdkd"]},"application/vnd.spotfire.dxp":{"source":"iana","extensions":["dxp"]},"application/vnd.spotfire.sfs":{"source":"iana","extensions":["sfs"]},"application/vnd.sqlite3":{"source":"iana"},"application/vnd.sss-cod":{"source":"iana"},"application/vnd.sss-dtf":{"source":"iana"},"application/vnd.sss-ntf":{"source":"iana"},"application/vnd.stardivision.calc":{"source":"apache","extensions":["sdc"]},"application/vnd.stardivision.draw":{"source":"apache","extensions":["sda"]},"application/vnd.stardivision.impress":{"source":"apache","extensions":["sdd"]},"application/vnd.stardivision.math":{"source":"apache","extensions":["smf"]},"application/vnd.stardivision.writer":{"source":"apache","extensions":["sdw","vor"]},"application/vnd.stardivision.writer-global":{"source":"apache","extensions":["sgl"]},"application/vnd.stepmania.package":{"source":"iana","extensions":["smzip"]},"application/vnd.stepmania.stepchart":{"source":"iana","extensions":["sm"]},"application/vnd.street-stream":{"source":"iana"},"application/vnd.sun.wadl+xml":{"source":"iana","compressible":true,"extensions":["wadl"]},"application/vnd.sun.xml.calc":{"source":"apache","extensions":["sxc"]},"application/vnd.sun.xml.calc.template":{"source":"apache","extensions":["stc"]},"application/vnd.sun.xml.draw":{"source":"apache","extensions":["sxd"]},"application/vnd.sun.xml.draw.template":{"source":"apache","extensions":["std"]},"application/vnd.sun.xml.impress":{"source":"apache","extensions":["sxi"]},"application/vnd.sun.xml.impress.template":{"source":"apache","extensions":["sti"]},"application/vnd.sun.xml.math":{"source":"apache","extensions":["sxm"]},"application/vnd.sun.xml.writer":{"source":"apache","extensions":["sxw"]},"application/vnd.sun.xml.writer.global":{"source":"apache","extensions":["sxg"]},"application/vnd.sun.xml.writer.template":{"source":"apache","extensions":["stw"]},"application/vnd.sus-calendar":{"source":"iana","extensions":["sus","susp"]},"application/vnd.svd":{"source":"iana","extensions":["svd"]},"application/vnd.swiftview-ics":{"source":"iana"},"application/vnd.sybyl.mol2":{"source":"iana"},"application/vnd.sycle+xml":{"source":"iana","compressible":true},"application/vnd.syft+json":{"source":"iana","compressible":true},"application/vnd.symbian.install":{"source":"apache","extensions":["sis","sisx"]},"application/vnd.syncml+xml":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["xsm"]},"application/vnd.syncml.dm+wbxml":{"source":"iana","charset":"UTF-8","extensions":["bdm"]},"application/vnd.syncml.dm+xml":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["xdm"]},"application/vnd.syncml.dm.notification":{"source":"iana"},"application/vnd.syncml.dmddf+wbxml":{"source":"iana"},"application/vnd.syncml.dmddf+xml":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["ddf"]},"application/vnd.syncml.dmtnds+wbxml":{"source":"iana"},"application/vnd.syncml.dmtnds+xml":{"source":"iana","charset":"UTF-8","compressible":true},"application/vnd.syncml.ds.notification":{"source":"iana"},"application/vnd.tableschema+json":{"source":"iana","compressible":true},"application/vnd.tao.intent-module-archive":{"source":"iana","extensions":["tao"]},"application/vnd.tcpdump.pcap":{"source":"iana","extensions":["pcap","cap","dmp"]},"application/vnd.think-cell.ppttc+json":{"source":"iana","compressible":true},"application/vnd.tmd.mediaflex.api+xml":{"source":"iana","compressible":true},"application/vnd.tml":{"source":"iana"},"application/vnd.tmobile-livetv":{"source":"iana","extensions":["tmo"]},"application/vnd.tri.onesource":{"source":"iana"},"application/vnd.trid.tpt":{"source":"iana","extensions":["tpt"]},"application/vnd.triscape.mxs":{"source":"iana","extensions":["mxs"]},"application/vnd.trueapp":{"source":"iana","extensions":["tra"]},"application/vnd.truedoc":{"source":"iana"},"application/vnd.ubisoft.webplayer":{"source":"iana"},"application/vnd.ufdl":{"source":"iana","extensions":["ufd","ufdl"]},"application/vnd.uic.osdm+json":{"source":"iana","compressible":true},"application/vnd.uiq.theme":{"source":"iana","extensions":["utz"]},"application/vnd.umajin":{"source":"iana","extensions":["umj"]},"application/vnd.unity":{"source":"iana","extensions":["unityweb"]},"application/vnd.uoml+xml":{"source":"iana","compressible":true,"extensions":["uoml","uo"]},"application/vnd.uplanet.alert":{"source":"iana"},"application/vnd.uplanet.alert-wbxml":{"source":"iana"},"application/vnd.uplanet.bearer-choice":{"source":"iana"},"application/vnd.uplanet.bearer-choice-wbxml":{"source":"iana"},"application/vnd.uplanet.cacheop":{"source":"iana"},"application/vnd.uplanet.cacheop-wbxml":{"source":"iana"},"application/vnd.uplanet.channel":{"source":"iana"},"application/vnd.uplanet.channel-wbxml":{"source":"iana"},"application/vnd.uplanet.list":{"source":"iana"},"application/vnd.uplanet.list-wbxml":{"source":"iana"},"application/vnd.uplanet.listcmd":{"source":"iana"},"application/vnd.uplanet.listcmd-wbxml":{"source":"iana"},"application/vnd.uplanet.signal":{"source":"iana"},"application/vnd.uri-map":{"source":"iana"},"application/vnd.valve.source.material":{"source":"iana"},"application/vnd.vcx":{"source":"iana","extensions":["vcx"]},"application/vnd.vd-study":{"source":"iana"},"application/vnd.vectorworks":{"source":"iana"},"application/vnd.vel+json":{"source":"iana","compressible":true},"application/vnd.veraison.tsm-report+cbor":{"source":"iana"},"application/vnd.veraison.tsm-report+json":{"source":"iana","compressible":true},"application/vnd.verimatrix.vcas":{"source":"iana"},"application/vnd.veritone.aion+json":{"source":"iana","compressible":true},"application/vnd.veryant.thin":{"source":"iana"},"application/vnd.ves.encrypted":{"source":"iana"},"application/vnd.vidsoft.vidconference":{"source":"iana"},"application/vnd.visio":{"source":"iana","extensions":["vsd","vst","vss","vsw","vsdx","vtx"]},"application/vnd.visionary":{"source":"iana","extensions":["vis"]},"application/vnd.vividence.scriptfile":{"source":"iana"},"application/vnd.vocalshaper.vsp4":{"source":"iana"},"application/vnd.vsf":{"source":"iana","extensions":["vsf"]},"application/vnd.wap.sic":{"source":"iana"},"application/vnd.wap.slc":{"source":"iana"},"application/vnd.wap.wbxml":{"source":"iana","charset":"UTF-8","extensions":["wbxml"]},"application/vnd.wap.wmlc":{"source":"iana","extensions":["wmlc"]},"application/vnd.wap.wmlscriptc":{"source":"iana","extensions":["wmlsc"]},"application/vnd.wasmflow.wafl":{"source":"iana"},"application/vnd.webturbo":{"source":"iana","extensions":["wtb"]},"application/vnd.wfa.dpp":{"source":"iana"},"application/vnd.wfa.p2p":{"source":"iana"},"application/vnd.wfa.wsc":{"source":"iana"},"application/vnd.windows.devicepairing":{"source":"iana"},"application/vnd.wmc":{"source":"iana"},"application/vnd.wmf.bootstrap":{"source":"iana"},"application/vnd.wolfram.mathematica":{"source":"iana"},"application/vnd.wolfram.mathematica.package":{"source":"iana"},"application/vnd.wolfram.player":{"source":"iana","extensions":["nbp"]},"application/vnd.wordlift":{"source":"iana"},"application/vnd.wordperfect":{"source":"iana","extensions":["wpd"]},"application/vnd.wqd":{"source":"iana","extensions":["wqd"]},"application/vnd.wrq-hp3000-labelled":{"source":"iana"},"application/vnd.wt.stf":{"source":"iana","extensions":["stf"]},"application/vnd.wv.csp+wbxml":{"source":"iana"},"application/vnd.wv.csp+xml":{"source":"iana","compressible":true},"application/vnd.wv.ssp+xml":{"source":"iana","compressible":true},"application/vnd.xacml+json":{"source":"iana","compressible":true},"application/vnd.xara":{"source":"iana","extensions":["xar"]},"application/vnd.xarin.cpj":{"source":"iana"},"application/vnd.xecrets-encrypted":{"source":"iana"},"application/vnd.xfdl":{"source":"iana","extensions":["xfdl"]},"application/vnd.xfdl.webform":{"source":"iana"},"application/vnd.xmi+xml":{"source":"iana","compressible":true},"application/vnd.xmpie.cpkg":{"source":"iana"},"application/vnd.xmpie.dpkg":{"source":"iana"},"application/vnd.xmpie.plan":{"source":"iana"},"application/vnd.xmpie.ppkg":{"source":"iana"},"application/vnd.xmpie.xlim":{"source":"iana"},"application/vnd.yamaha.hv-dic":{"source":"iana","extensions":["hvd"]},"application/vnd.yamaha.hv-script":{"source":"iana","extensions":["hvs"]},"application/vnd.yamaha.hv-voice":{"source":"iana","extensions":["hvp"]},"application/vnd.yamaha.openscoreformat":{"source":"iana","extensions":["osf"]},"application/vnd.yamaha.openscoreformat.osfpvg+xml":{"source":"iana","compressible":true,"extensions":["osfpvg"]},"application/vnd.yamaha.remote-setup":{"source":"iana"},"application/vnd.yamaha.smaf-audio":{"source":"iana","extensions":["saf"]},"application/vnd.yamaha.smaf-phrase":{"source":"iana","extensions":["spf"]},"application/vnd.yamaha.through-ngn":{"source":"iana"},"application/vnd.yamaha.tunnel-udpencap":{"source":"iana"},"application/vnd.yaoweme":{"source":"iana"},"application/vnd.yellowriver-custom-menu":{"source":"iana","extensions":["cmp"]},"application/vnd.zul":{"source":"iana","extensions":["zir","zirz"]},"application/vnd.zzazz.deck+xml":{"source":"iana","compressible":true,"extensions":["zaz"]},"application/voicexml+xml":{"source":"iana","compressible":true,"extensions":["vxml"]},"application/voucher-cms+json":{"source":"iana","compressible":true},"application/voucher-jws+json":{"source":"iana","compressible":true},"application/vp":{"source":"iana"},"application/vp+cose":{"source":"iana"},"application/vp+jwt":{"source":"iana"},"application/vq-rtcpxr":{"source":"iana"},"application/wasm":{"source":"iana","compressible":true,"extensions":["wasm"]},"application/watcherinfo+xml":{"source":"iana","compressible":true,"extensions":["wif"]},"application/webpush-options+json":{"source":"iana","compressible":true},"application/whoispp-query":{"source":"iana"},"application/whoispp-response":{"source":"iana"},"application/widget":{"source":"iana","extensions":["wgt"]},"application/winhlp":{"source":"apache","extensions":["hlp"]},"application/wita":{"source":"iana"},"application/wordperfect5.1":{"source":"iana"},"application/wsdl+xml":{"source":"iana","compressible":true,"extensions":["wsdl"]},"application/wspolicy+xml":{"source":"iana","compressible":true,"extensions":["wspolicy"]},"application/x-7z-compressed":{"source":"apache","compressible":false,"extensions":["7z"]},"application/x-abiword":{"source":"apache","extensions":["abw"]},"application/x-ace-compressed":{"source":"apache","extensions":["ace"]},"application/x-amf":{"source":"apache"},"application/x-apple-diskimage":{"source":"apache","extensions":["dmg"]},"application/x-arj":{"compressible":false,"extensions":["arj"]},"application/x-authorware-bin":{"source":"apache","extensions":["aab","x32","u32","vox"]},"application/x-authorware-map":{"source":"apache","extensions":["aam"]},"application/x-authorware-seg":{"source":"apache","extensions":["aas"]},"application/x-bcpio":{"source":"apache","extensions":["bcpio"]},"application/x-bdoc":{"compressible":false,"extensions":["bdoc"]},"application/x-bittorrent":{"source":"apache","extensions":["torrent"]},"application/x-blender":{"extensions":["blend"]},"application/x-blorb":{"source":"apache","extensions":["blb","blorb"]},"application/x-bzip":{"source":"apache","compressible":false,"extensions":["bz"]},"application/x-bzip2":{"source":"apache","compressible":false,"extensions":["bz2","boz"]},"application/x-cbr":{"source":"apache","extensions":["cbr","cba","cbt","cbz","cb7"]},"application/x-cdlink":{"source":"apache","extensions":["vcd"]},"application/x-cfs-compressed":{"source":"apache","extensions":["cfs"]},"application/x-chat":{"source":"apache","extensions":["chat"]},"application/x-chess-pgn":{"source":"apache","extensions":["pgn"]},"application/x-chrome-extension":{"extensions":["crx"]},"application/x-cocoa":{"source":"nginx","extensions":["cco"]},"application/x-compress":{"source":"apache"},"application/x-compressed":{"extensions":["rar"]},"application/x-conference":{"source":"apache","extensions":["nsc"]},"application/x-cpio":{"source":"apache","extensions":["cpio"]},"application/x-csh":{"source":"apache","extensions":["csh"]},"application/x-deb":{"compressible":false},"application/x-debian-package":{"source":"apache","extensions":["deb","udeb"]},"application/x-dgc-compressed":{"source":"apache","extensions":["dgc"]},"application/x-director":{"source":"apache","extensions":["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"]},"application/x-doom":{"source":"apache","extensions":["wad"]},"application/x-dtbncx+xml":{"source":"apache","compressible":true,"extensions":["ncx"]},"application/x-dtbook+xml":{"source":"apache","compressible":true,"extensions":["dtb"]},"application/x-dtbresource+xml":{"source":"apache","compressible":true,"extensions":["res"]},"application/x-dvi":{"source":"apache","compressible":false,"extensions":["dvi"]},"application/x-envoy":{"source":"apache","extensions":["evy"]},"application/x-eva":{"source":"apache","extensions":["eva"]},"application/x-font-bdf":{"source":"apache","extensions":["bdf"]},"application/x-font-dos":{"source":"apache"},"application/x-font-framemaker":{"source":"apache"},"application/x-font-ghostscript":{"source":"apache","extensions":["gsf"]},"application/x-font-libgrx":{"source":"apache"},"application/x-font-linux-psf":{"source":"apache","extensions":["psf"]},"application/x-font-pcf":{"source":"apache","extensions":["pcf"]},"application/x-font-snf":{"source":"apache","extensions":["snf"]},"application/x-font-speedo":{"source":"apache"},"application/x-font-sunos-news":{"source":"apache"},"application/x-font-type1":{"source":"apache","extensions":["pfa","pfb","pfm","afm"]},"application/x-font-vfont":{"source":"apache"},"application/x-freearc":{"source":"apache","extensions":["arc"]},"application/x-futuresplash":{"source":"apache","extensions":["spl"]},"application/x-gca-compressed":{"source":"apache","extensions":["gca"]},"application/x-glulx":{"source":"apache","extensions":["ulx"]},"application/x-gnumeric":{"source":"apache","extensions":["gnumeric"]},"application/x-gramps-xml":{"source":"apache","extensions":["gramps"]},"application/x-gtar":{"source":"apache","extensions":["gtar"]},"application/x-gzip":{"source":"apache"},"application/x-hdf":{"source":"apache","extensions":["hdf"]},"application/x-httpd-php":{"compressible":true,"extensions":["php"]},"application/x-install-instructions":{"source":"apache","extensions":["install"]},"application/x-ipynb+json":{"compressible":true,"extensions":["ipynb"]},"application/x-iso9660-image":{"source":"apache","extensions":["iso"]},"application/x-iwork-keynote-sffkey":{"extensions":["key"]},"application/x-iwork-numbers-sffnumbers":{"extensions":["numbers"]},"application/x-iwork-pages-sffpages":{"extensions":["pages"]},"application/x-java-archive-diff":{"source":"nginx","extensions":["jardiff"]},"application/x-java-jnlp-file":{"source":"apache","compressible":false,"extensions":["jnlp"]},"application/x-javascript":{"compressible":true},"application/x-keepass2":{"extensions":["kdbx"]},"application/x-latex":{"source":"apache","compressible":false,"extensions":["latex"]},"application/x-lua-bytecode":{"extensions":["luac"]},"application/x-lzh-compressed":{"source":"apache","extensions":["lzh","lha"]},"application/x-makeself":{"source":"nginx","extensions":["run"]},"application/x-mie":{"source":"apache","extensions":["mie"]},"application/x-mobipocket-ebook":{"source":"apache","extensions":["prc","mobi"]},"application/x-mpegurl":{"compressible":false},"application/x-ms-application":{"source":"apache","extensions":["application"]},"application/x-ms-shortcut":{"source":"apache","extensions":["lnk"]},"application/x-ms-wmd":{"source":"apache","extensions":["wmd"]},"application/x-ms-wmz":{"source":"apache","extensions":["wmz"]},"application/x-ms-xbap":{"source":"apache","extensions":["xbap"]},"application/x-msaccess":{"source":"apache","extensions":["mdb"]},"application/x-msbinder":{"source":"apache","extensions":["obd"]},"application/x-mscardfile":{"source":"apache","extensions":["crd"]},"application/x-msclip":{"source":"apache","extensions":["clp"]},"application/x-msdos-program":{"extensions":["exe"]},"application/x-msdownload":{"source":"apache","extensions":["exe","dll","com","bat","msi"]},"application/x-msmediaview":{"source":"apache","extensions":["mvb","m13","m14"]},"application/x-msmetafile":{"source":"apache","extensions":["wmf","wmz","emf","emz"]},"application/x-msmoney":{"source":"apache","extensions":["mny"]},"application/x-mspublisher":{"source":"apache","extensions":["pub"]},"application/x-msschedule":{"source":"apache","extensions":["scd"]},"application/x-msterminal":{"source":"apache","extensions":["trm"]},"application/x-mswrite":{"source":"apache","extensions":["wri"]},"application/x-netcdf":{"source":"apache","extensions":["nc","cdf"]},"application/x-ns-proxy-autoconfig":{"compressible":true,"extensions":["pac"]},"application/x-nzb":{"source":"apache","extensions":["nzb"]},"application/x-perl":{"source":"nginx","extensions":["pl","pm"]},"application/x-pilot":{"source":"nginx","extensions":["prc","pdb"]},"application/x-pkcs12":{"source":"apache","compressible":false,"extensions":["p12","pfx"]},"application/x-pkcs7-certificates":{"source":"apache","extensions":["p7b","spc"]},"application/x-pkcs7-certreqresp":{"source":"apache","extensions":["p7r"]},"application/x-pki-message":{"source":"iana"},"application/x-rar-compressed":{"source":"apache","compressible":false,"extensions":["rar"]},"application/x-redhat-package-manager":{"source":"nginx","extensions":["rpm"]},"application/x-research-info-systems":{"source":"apache","extensions":["ris"]},"application/x-sea":{"source":"nginx","extensions":["sea"]},"application/x-sh":{"source":"apache","compressible":true,"extensions":["sh"]},"application/x-shar":{"source":"apache","extensions":["shar"]},"application/x-shockwave-flash":{"source":"apache","compressible":false,"extensions":["swf"]},"application/x-silverlight-app":{"source":"apache","extensions":["xap"]},"application/x-sql":{"source":"apache","extensions":["sql"]},"application/x-stuffit":{"source":"apache","compressible":false,"extensions":["sit"]},"application/x-stuffitx":{"source":"apache","extensions":["sitx"]},"application/x-subrip":{"source":"apache","extensions":["srt"]},"application/x-sv4cpio":{"source":"apache","extensions":["sv4cpio"]},"application/x-sv4crc":{"source":"apache","extensions":["sv4crc"]},"application/x-t3vm-image":{"source":"apache","extensions":["t3"]},"application/x-tads":{"source":"apache","extensions":["gam"]},"application/x-tar":{"source":"apache","compressible":true,"extensions":["tar"]},"application/x-tcl":{"source":"apache","extensions":["tcl","tk"]},"application/x-tex":{"source":"apache","extensions":["tex"]},"application/x-tex-tfm":{"source":"apache","extensions":["tfm"]},"application/x-texinfo":{"source":"apache","extensions":["texinfo","texi"]},"application/x-tgif":{"source":"apache","extensions":["obj"]},"application/x-ustar":{"source":"apache","extensions":["ustar"]},"application/x-virtualbox-hdd":{"compressible":true,"extensions":["hdd"]},"application/x-virtualbox-ova":{"compressible":true,"extensions":["ova"]},"application/x-virtualbox-ovf":{"compressible":true,"extensions":["ovf"]},"application/x-virtualbox-vbox":{"compressible":true,"extensions":["vbox"]},"application/x-virtualbox-vbox-extpack":{"compressible":false,"extensions":["vbox-extpack"]},"application/x-virtualbox-vdi":{"compressible":true,"extensions":["vdi"]},"application/x-virtualbox-vhd":{"compressible":true,"extensions":["vhd"]},"application/x-virtualbox-vmdk":{"compressible":true,"extensions":["vmdk"]},"application/x-wais-source":{"source":"apache","extensions":["src"]},"application/x-web-app-manifest+json":{"compressible":true,"extensions":["webapp"]},"application/x-www-form-urlencoded":{"source":"iana","compressible":true},"application/x-x509-ca-cert":{"source":"iana","extensions":["der","crt","pem"]},"application/x-x509-ca-ra-cert":{"source":"iana"},"application/x-x509-next-ca-cert":{"source":"iana"},"application/x-xfig":{"source":"apache","extensions":["fig"]},"application/x-xliff+xml":{"source":"apache","compressible":true,"extensions":["xlf"]},"application/x-xpinstall":{"source":"apache","compressible":false,"extensions":["xpi"]},"application/x-xz":{"source":"apache","extensions":["xz"]},"application/x-zip-compressed":{"extensions":["zip"]},"application/x-zmachine":{"source":"apache","extensions":["z1","z2","z3","z4","z5","z6","z7","z8"]},"application/x400-bp":{"source":"iana"},"application/xacml+xml":{"source":"iana","compressible":true},"application/xaml+xml":{"source":"apache","compressible":true,"extensions":["xaml"]},"application/xcap-att+xml":{"source":"iana","compressible":true,"extensions":["xav"]},"application/xcap-caps+xml":{"source":"iana","compressible":true,"extensions":["xca"]},"application/xcap-diff+xml":{"source":"iana","compressible":true,"extensions":["xdf"]},"application/xcap-el+xml":{"source":"iana","compressible":true,"extensions":["xel"]},"application/xcap-error+xml":{"source":"iana","compressible":true},"application/xcap-ns+xml":{"source":"iana","compressible":true,"extensions":["xns"]},"application/xcon-conference-info+xml":{"source":"iana","compressible":true},"application/xcon-conference-info-diff+xml":{"source":"iana","compressible":true},"application/xenc+xml":{"source":"iana","compressible":true,"extensions":["xenc"]},"application/xfdf":{"source":"iana","extensions":["xfdf"]},"application/xhtml+xml":{"source":"iana","compressible":true,"extensions":["xhtml","xht"]},"application/xhtml-voice+xml":{"source":"apache","compressible":true},"application/xliff+xml":{"source":"iana","compressible":true,"extensions":["xlf"]},"application/xml":{"source":"iana","compressible":true,"extensions":["xml","xsl","xsd","rng"]},"application/xml-dtd":{"source":"iana","compressible":true,"extensions":["dtd"]},"application/xml-external-parsed-entity":{"source":"iana"},"application/xml-patch+xml":{"source":"iana","compressible":true},"application/xmpp+xml":{"source":"iana","compressible":true},"application/xop+xml":{"source":"iana","compressible":true,"extensions":["xop"]},"application/xproc+xml":{"source":"apache","compressible":true,"extensions":["xpl"]},"application/xslt+xml":{"source":"iana","compressible":true,"extensions":["xsl","xslt"]},"application/xspf+xml":{"source":"apache","compressible":true,"extensions":["xspf"]},"application/xv+xml":{"source":"iana","compressible":true,"extensions":["mxml","xhvml","xvml","xvm"]},"application/yaml":{"source":"iana"},"application/yang":{"source":"iana","extensions":["yang"]},"application/yang-data+cbor":{"source":"iana"},"application/yang-data+json":{"source":"iana","compressible":true},"application/yang-data+xml":{"source":"iana","compressible":true},"application/yang-patch+json":{"source":"iana","compressible":true},"application/yang-patch+xml":{"source":"iana","compressible":true},"application/yang-sid+json":{"source":"iana","compressible":true},"application/yin+xml":{"source":"iana","compressible":true,"extensions":["yin"]},"application/zip":{"source":"iana","compressible":false,"extensions":["zip"]},"application/zip+dotlottie":{"extensions":["lottie"]},"application/zlib":{"source":"iana"},"application/zstd":{"source":"iana"},"audio/1d-interleaved-parityfec":{"source":"iana"},"audio/32kadpcm":{"source":"iana"},"audio/3gpp":{"source":"iana","compressible":false,"extensions":["3gpp"]},"audio/3gpp2":{"source":"iana"},"audio/aac":{"source":"iana","extensions":["adts","aac"]},"audio/ac3":{"source":"iana"},"audio/adpcm":{"source":"apache","extensions":["adp"]},"audio/amr":{"source":"iana","extensions":["amr"]},"audio/amr-wb":{"source":"iana"},"audio/amr-wb+":{"source":"iana"},"audio/aptx":{"source":"iana"},"audio/asc":{"source":"iana"},"audio/atrac-advanced-lossless":{"source":"iana"},"audio/atrac-x":{"source":"iana"},"audio/atrac3":{"source":"iana"},"audio/basic":{"source":"iana","compressible":false,"extensions":["au","snd"]},"audio/bv16":{"source":"iana"},"audio/bv32":{"source":"iana"},"audio/clearmode":{"source":"iana"},"audio/cn":{"source":"iana"},"audio/dat12":{"source":"iana"},"audio/dls":{"source":"iana"},"audio/dsr-es201108":{"source":"iana"},"audio/dsr-es202050":{"source":"iana"},"audio/dsr-es202211":{"source":"iana"},"audio/dsr-es202212":{"source":"iana"},"audio/dv":{"source":"iana"},"audio/dvi4":{"source":"iana"},"audio/eac3":{"source":"iana"},"audio/encaprtp":{"source":"iana"},"audio/evrc":{"source":"iana"},"audio/evrc-qcp":{"source":"iana"},"audio/evrc0":{"source":"iana"},"audio/evrc1":{"source":"iana"},"audio/evrcb":{"source":"iana"},"audio/evrcb0":{"source":"iana"},"audio/evrcb1":{"source":"iana"},"audio/evrcnw":{"source":"iana"},"audio/evrcnw0":{"source":"iana"},"audio/evrcnw1":{"source":"iana"},"audio/evrcwb":{"source":"iana"},"audio/evrcwb0":{"source":"iana"},"audio/evrcwb1":{"source":"iana"},"audio/evs":{"source":"iana"},"audio/flac":{"source":"iana"},"audio/flexfec":{"source":"iana"},"audio/fwdred":{"source":"iana"},"audio/g711-0":{"source":"iana"},"audio/g719":{"source":"iana"},"audio/g722":{"source":"iana"},"audio/g7221":{"source":"iana"},"audio/g723":{"source":"iana"},"audio/g726-16":{"source":"iana"},"audio/g726-24":{"source":"iana"},"audio/g726-32":{"source":"iana"},"audio/g726-40":{"source":"iana"},"audio/g728":{"source":"iana"},"audio/g729":{"source":"iana"},"audio/g7291":{"source":"iana"},"audio/g729d":{"source":"iana"},"audio/g729e":{"source":"iana"},"audio/gsm":{"source":"iana"},"audio/gsm-efr":{"source":"iana"},"audio/gsm-hr-08":{"source":"iana"},"audio/ilbc":{"source":"iana"},"audio/ip-mr_v2.5":{"source":"iana"},"audio/isac":{"source":"apache"},"audio/l16":{"source":"iana"},"audio/l20":{"source":"iana"},"audio/l24":{"source":"iana","compressible":false},"audio/l8":{"source":"iana"},"audio/lpc":{"source":"iana"},"audio/matroska":{"source":"iana"},"audio/melp":{"source":"iana"},"audio/melp1200":{"source":"iana"},"audio/melp2400":{"source":"iana"},"audio/melp600":{"source":"iana"},"audio/mhas":{"source":"iana"},"audio/midi":{"source":"apache","extensions":["mid","midi","kar","rmi"]},"audio/midi-clip":{"source":"iana"},"audio/mobile-xmf":{"source":"iana","extensions":["mxmf"]},"audio/mp3":{"compressible":false,"extensions":["mp3"]},"audio/mp4":{"source":"iana","compressible":false,"extensions":["m4a","mp4a","m4b"]},"audio/mp4a-latm":{"source":"iana"},"audio/mpa":{"source":"iana"},"audio/mpa-robust":{"source":"iana"},"audio/mpeg":{"source":"iana","compressible":false,"extensions":["mpga","mp2","mp2a","mp3","m2a","m3a"]},"audio/mpeg4-generic":{"source":"iana"},"audio/musepack":{"source":"apache"},"audio/ogg":{"source":"iana","compressible":false,"extensions":["oga","ogg","spx","opus"]},"audio/opus":{"source":"iana"},"audio/parityfec":{"source":"iana"},"audio/pcma":{"source":"iana"},"audio/pcma-wb":{"source":"iana"},"audio/pcmu":{"source":"iana"},"audio/pcmu-wb":{"source":"iana"},"audio/prs.sid":{"source":"iana"},"audio/qcelp":{"source":"iana"},"audio/raptorfec":{"source":"iana"},"audio/red":{"source":"iana"},"audio/rtp-enc-aescm128":{"source":"iana"},"audio/rtp-midi":{"source":"iana"},"audio/rtploopback":{"source":"iana"},"audio/rtx":{"source":"iana"},"audio/s3m":{"source":"apache","extensions":["s3m"]},"audio/scip":{"source":"iana"},"audio/silk":{"source":"apache","extensions":["sil"]},"audio/smv":{"source":"iana"},"audio/smv-qcp":{"source":"iana"},"audio/smv0":{"source":"iana"},"audio/sofa":{"source":"iana"},"audio/sp-midi":{"source":"iana"},"audio/speex":{"source":"iana"},"audio/t140c":{"source":"iana"},"audio/t38":{"source":"iana"},"audio/telephone-event":{"source":"iana"},"audio/tetra_acelp":{"source":"iana"},"audio/tetra_acelp_bb":{"source":"iana"},"audio/tone":{"source":"iana"},"audio/tsvcis":{"source":"iana"},"audio/uemclip":{"source":"iana"},"audio/ulpfec":{"source":"iana"},"audio/usac":{"source":"iana"},"audio/vdvi":{"source":"iana"},"audio/vmr-wb":{"source":"iana"},"audio/vnd.3gpp.iufp":{"source":"iana"},"audio/vnd.4sb":{"source":"iana"},"audio/vnd.audiokoz":{"source":"iana"},"audio/vnd.celp":{"source":"iana"},"audio/vnd.cisco.nse":{"source":"iana"},"audio/vnd.cmles.radio-events":{"source":"iana"},"audio/vnd.cns.anp1":{"source":"iana"},"audio/vnd.cns.inf1":{"source":"iana"},"audio/vnd.dece.audio":{"source":"iana","extensions":["uva","uvva"]},"audio/vnd.digital-winds":{"source":"iana","extensions":["eol"]},"audio/vnd.dlna.adts":{"source":"iana"},"audio/vnd.dolby.heaac.1":{"source":"iana"},"audio/vnd.dolby.heaac.2":{"source":"iana"},"audio/vnd.dolby.mlp":{"source":"iana"},"audio/vnd.dolby.mps":{"source":"iana"},"audio/vnd.dolby.pl2":{"source":"iana"},"audio/vnd.dolby.pl2x":{"source":"iana"},"audio/vnd.dolby.pl2z":{"source":"iana"},"audio/vnd.dolby.pulse.1":{"source":"iana"},"audio/vnd.dra":{"source":"iana","extensions":["dra"]},"audio/vnd.dts":{"source":"iana","extensions":["dts"]},"audio/vnd.dts.hd":{"source":"iana","extensions":["dtshd"]},"audio/vnd.dts.uhd":{"source":"iana"},"audio/vnd.dvb.file":{"source":"iana"},"audio/vnd.everad.plj":{"source":"iana"},"audio/vnd.hns.audio":{"source":"iana"},"audio/vnd.lucent.voice":{"source":"iana","extensions":["lvp"]},"audio/vnd.ms-playready.media.pya":{"source":"iana","extensions":["pya"]},"audio/vnd.nokia.mobile-xmf":{"source":"iana"},"audio/vnd.nortel.vbk":{"source":"iana"},"audio/vnd.nuera.ecelp4800":{"source":"iana","extensions":["ecelp4800"]},"audio/vnd.nuera.ecelp7470":{"source":"iana","extensions":["ecelp7470"]},"audio/vnd.nuera.ecelp9600":{"source":"iana","extensions":["ecelp9600"]},"audio/vnd.octel.sbc":{"source":"iana"},"audio/vnd.presonus.multitrack":{"source":"iana"},"audio/vnd.qcelp":{"source":"apache"},"audio/vnd.rhetorex.32kadpcm":{"source":"iana"},"audio/vnd.rip":{"source":"iana","extensions":["rip"]},"audio/vnd.rn-realaudio":{"compressible":false},"audio/vnd.sealedmedia.softseal.mpeg":{"source":"iana"},"audio/vnd.vmx.cvsd":{"source":"iana"},"audio/vnd.wave":{"compressible":false},"audio/vorbis":{"source":"iana","compressible":false},"audio/vorbis-config":{"source":"iana"},"audio/wav":{"compressible":false,"extensions":["wav"]},"audio/wave":{"compressible":false,"extensions":["wav"]},"audio/webm":{"source":"apache","compressible":false,"extensions":["weba"]},"audio/x-aac":{"source":"apache","compressible":false,"extensions":["aac"]},"audio/x-aiff":{"source":"apache","extensions":["aif","aiff","aifc"]},"audio/x-caf":{"source":"apache","compressible":false,"extensions":["caf"]},"audio/x-flac":{"source":"apache","extensions":["flac"]},"audio/x-m4a":{"source":"nginx","extensions":["m4a"]},"audio/x-matroska":{"source":"apache","extensions":["mka"]},"audio/x-mpegurl":{"source":"apache","extensions":["m3u"]},"audio/x-ms-wax":{"source":"apache","extensions":["wax"]},"audio/x-ms-wma":{"source":"apache","extensions":["wma"]},"audio/x-pn-realaudio":{"source":"apache","extensions":["ram","ra"]},"audio/x-pn-realaudio-plugin":{"source":"apache","extensions":["rmp"]},"audio/x-realaudio":{"source":"nginx","extensions":["ra"]},"audio/x-tta":{"source":"apache"},"audio/x-wav":{"source":"apache","extensions":["wav"]},"audio/xm":{"source":"apache","extensions":["xm"]},"chemical/x-cdx":{"source":"apache","extensions":["cdx"]},"chemical/x-cif":{"source":"apache","extensions":["cif"]},"chemical/x-cmdf":{"source":"apache","extensions":["cmdf"]},"chemical/x-cml":{"source":"apache","extensions":["cml"]},"chemical/x-csml":{"source":"apache","extensions":["csml"]},"chemical/x-pdb":{"source":"apache"},"chemical/x-xyz":{"source":"apache","extensions":["xyz"]},"font/collection":{"source":"iana","extensions":["ttc"]},"font/otf":{"source":"iana","compressible":true,"extensions":["otf"]},"font/sfnt":{"source":"iana"},"font/ttf":{"source":"iana","compressible":true,"extensions":["ttf"]},"font/woff":{"source":"iana","extensions":["woff"]},"font/woff2":{"source":"iana","extensions":["woff2"]},"image/aces":{"source":"iana","extensions":["exr"]},"image/apng":{"source":"iana","compressible":false,"extensions":["apng"]},"image/avci":{"source":"iana","extensions":["avci"]},"image/avcs":{"source":"iana","extensions":["avcs"]},"image/avif":{"source":"iana","compressible":false,"extensions":["avif"]},"image/bmp":{"source":"iana","compressible":true,"extensions":["bmp","dib"]},"image/cgm":{"source":"iana","extensions":["cgm"]},"image/dicom-rle":{"source":"iana","extensions":["drle"]},"image/dpx":{"source":"iana","extensions":["dpx"]},"image/emf":{"source":"iana","extensions":["emf"]},"image/fits":{"source":"iana","extensions":["fits"]},"image/g3fax":{"source":"iana","extensions":["g3"]},"image/gif":{"source":"iana","compressible":false,"extensions":["gif"]},"image/heic":{"source":"iana","extensions":["heic"]},"image/heic-sequence":{"source":"iana","extensions":["heics"]},"image/heif":{"source":"iana","extensions":["heif"]},"image/heif-sequence":{"source":"iana","extensions":["heifs"]},"image/hej2k":{"source":"iana","extensions":["hej2"]},"image/ief":{"source":"iana","extensions":["ief"]},"image/j2c":{"source":"iana"},"image/jaii":{"source":"iana","extensions":["jaii"]},"image/jais":{"source":"iana","extensions":["jais"]},"image/jls":{"source":"iana","extensions":["jls"]},"image/jp2":{"source":"iana","compressible":false,"extensions":["jp2","jpg2"]},"image/jpeg":{"source":"iana","compressible":false,"extensions":["jpg","jpeg","jpe"]},"image/jph":{"source":"iana","extensions":["jph"]},"image/jphc":{"source":"iana","extensions":["jhc"]},"image/jpm":{"source":"iana","compressible":false,"extensions":["jpm","jpgm"]},"image/jpx":{"source":"iana","compressible":false,"extensions":["jpx","jpf"]},"image/jxl":{"source":"iana","extensions":["jxl"]},"image/jxr":{"source":"iana","extensions":["jxr"]},"image/jxra":{"source":"iana","extensions":["jxra"]},"image/jxrs":{"source":"iana","extensions":["jxrs"]},"image/jxs":{"source":"iana","extensions":["jxs"]},"image/jxsc":{"source":"iana","extensions":["jxsc"]},"image/jxsi":{"source":"iana","extensions":["jxsi"]},"image/jxss":{"source":"iana","extensions":["jxss"]},"image/ktx":{"source":"iana","extensions":["ktx"]},"image/ktx2":{"source":"iana","extensions":["ktx2"]},"image/naplps":{"source":"iana"},"image/pjpeg":{"compressible":false,"extensions":["jfif"]},"image/png":{"source":"iana","compressible":false,"extensions":["png"]},"image/prs.btif":{"source":"iana","extensions":["btif","btf"]},"image/prs.pti":{"source":"iana","extensions":["pti"]},"image/pwg-raster":{"source":"iana"},"image/sgi":{"source":"apache","extensions":["sgi"]},"image/svg+xml":{"source":"iana","compressible":true,"extensions":["svg","svgz"]},"image/t38":{"source":"iana","extensions":["t38"]},"image/tiff":{"source":"iana","compressible":false,"extensions":["tif","tiff"]},"image/tiff-fx":{"source":"iana","extensions":["tfx"]},"image/vnd.adobe.photoshop":{"source":"iana","compressible":true,"extensions":["psd"]},"image/vnd.airzip.accelerator.azv":{"source":"iana","extensions":["azv"]},"image/vnd.clip":{"source":"iana"},"image/vnd.cns.inf2":{"source":"iana"},"image/vnd.dece.graphic":{"source":"iana","extensions":["uvi","uvvi","uvg","uvvg"]},"image/vnd.djvu":{"source":"iana","extensions":["djvu","djv"]},"image/vnd.dvb.subtitle":{"source":"iana","extensions":["sub"]},"image/vnd.dwg":{"source":"iana","extensions":["dwg"]},"image/vnd.dxf":{"source":"iana","extensions":["dxf"]},"image/vnd.fastbidsheet":{"source":"iana","extensions":["fbs"]},"image/vnd.fpx":{"source":"iana","extensions":["fpx"]},"image/vnd.fst":{"source":"iana","extensions":["fst"]},"image/vnd.fujixerox.edmics-mmr":{"source":"iana","extensions":["mmr"]},"image/vnd.fujixerox.edmics-rlc":{"source":"iana","extensions":["rlc"]},"image/vnd.globalgraphics.pgb":{"source":"iana"},"image/vnd.microsoft.icon":{"source":"iana","compressible":true,"extensions":["ico"]},"image/vnd.mix":{"source":"iana"},"image/vnd.mozilla.apng":{"source":"iana"},"image/vnd.ms-dds":{"compressible":true,"extensions":["dds"]},"image/vnd.ms-modi":{"source":"iana","extensions":["mdi"]},"image/vnd.ms-photo":{"source":"apache","extensions":["wdp"]},"image/vnd.net-fpx":{"source":"iana","extensions":["npx"]},"image/vnd.pco.b16":{"source":"iana","extensions":["b16"]},"image/vnd.radiance":{"source":"iana"},"image/vnd.sealed.png":{"source":"iana"},"image/vnd.sealedmedia.softseal.gif":{"source":"iana"},"image/vnd.sealedmedia.softseal.jpg":{"source":"iana"},"image/vnd.svf":{"source":"iana"},"image/vnd.tencent.tap":{"source":"iana","extensions":["tap"]},"image/vnd.valve.source.texture":{"source":"iana","extensions":["vtf"]},"image/vnd.wap.wbmp":{"source":"iana","extensions":["wbmp"]},"image/vnd.xiff":{"source":"iana","extensions":["xif"]},"image/vnd.zbrush.pcx":{"source":"iana","extensions":["pcx"]},"image/webp":{"source":"iana","extensions":["webp"]},"image/wmf":{"source":"iana","extensions":["wmf"]},"image/x-3ds":{"source":"apache","extensions":["3ds"]},"image/x-adobe-dng":{"extensions":["dng"]},"image/x-cmu-raster":{"source":"apache","extensions":["ras"]},"image/x-cmx":{"source":"apache","extensions":["cmx"]},"image/x-emf":{"source":"iana"},"image/x-freehand":{"source":"apache","extensions":["fh","fhc","fh4","fh5","fh7"]},"image/x-icon":{"source":"apache","compressible":true,"extensions":["ico"]},"image/x-jng":{"source":"nginx","extensions":["jng"]},"image/x-mrsid-image":{"source":"apache","extensions":["sid"]},"image/x-ms-bmp":{"source":"nginx","compressible":true,"extensions":["bmp"]},"image/x-pcx":{"source":"apache","extensions":["pcx"]},"image/x-pict":{"source":"apache","extensions":["pic","pct"]},"image/x-portable-anymap":{"source":"apache","extensions":["pnm"]},"image/x-portable-bitmap":{"source":"apache","extensions":["pbm"]},"image/x-portable-graymap":{"source":"apache","extensions":["pgm"]},"image/x-portable-pixmap":{"source":"apache","extensions":["ppm"]},"image/x-rgb":{"source":"apache","extensions":["rgb"]},"image/x-tga":{"source":"apache","extensions":["tga"]},"image/x-wmf":{"source":"iana"},"image/x-xbitmap":{"source":"apache","extensions":["xbm"]},"image/x-xcf":{"compressible":false},"image/x-xpixmap":{"source":"apache","extensions":["xpm"]},"image/x-xwindowdump":{"source":"apache","extensions":["xwd"]},"message/bhttp":{"source":"iana"},"message/cpim":{"source":"iana"},"message/delivery-status":{"source":"iana"},"message/disposition-notification":{"source":"iana","extensions":["disposition-notification"]},"message/external-body":{"source":"iana"},"message/feedback-report":{"source":"iana"},"message/global":{"source":"iana","extensions":["u8msg"]},"message/global-delivery-status":{"source":"iana","extensions":["u8dsn"]},"message/global-disposition-notification":{"source":"iana","extensions":["u8mdn"]},"message/global-headers":{"source":"iana","extensions":["u8hdr"]},"message/http":{"source":"iana","compressible":false},"message/imdn+xml":{"source":"iana","compressible":true},"message/mls":{"source":"iana"},"message/news":{"source":"apache"},"message/ohttp-req":{"source":"iana"},"message/ohttp-res":{"source":"iana"},"message/partial":{"source":"iana","compressible":false},"message/rfc822":{"source":"iana","compressible":true,"extensions":["eml","mime","mht","mhtml"]},"message/s-http":{"source":"apache"},"message/sip":{"source":"iana"},"message/sipfrag":{"source":"iana"},"message/tracking-status":{"source":"iana"},"message/vnd.si.simp":{"source":"apache"},"message/vnd.wfa.wsc":{"source":"iana","extensions":["wsc"]},"model/3mf":{"source":"iana","extensions":["3mf"]},"model/e57":{"source":"iana"},"model/gltf+json":{"source":"iana","compressible":true,"extensions":["gltf"]},"model/gltf-binary":{"source":"iana","compressible":true,"extensions":["glb"]},"model/iges":{"source":"iana","compressible":false,"extensions":["igs","iges"]},"model/jt":{"source":"iana","extensions":["jt"]},"model/mesh":{"source":"iana","compressible":false,"extensions":["msh","mesh","silo"]},"model/mtl":{"source":"iana","extensions":["mtl"]},"model/obj":{"source":"iana","extensions":["obj"]},"model/prc":{"source":"iana","extensions":["prc"]},"model/step":{"source":"iana","extensions":["step","stp","stpnc","p21","210"]},"model/step+xml":{"source":"iana","compressible":true,"extensions":["stpx"]},"model/step+zip":{"source":"iana","compressible":false,"extensions":["stpz"]},"model/step-xml+zip":{"source":"iana","compressible":false,"extensions":["stpxz"]},"model/stl":{"source":"iana","extensions":["stl"]},"model/u3d":{"source":"iana","extensions":["u3d"]},"model/vnd.bary":{"source":"iana","extensions":["bary"]},"model/vnd.cld":{"source":"iana","extensions":["cld"]},"model/vnd.collada+xml":{"source":"iana","compressible":true,"extensions":["dae"]},"model/vnd.dwf":{"source":"iana","extensions":["dwf"]},"model/vnd.flatland.3dml":{"source":"iana"},"model/vnd.gdl":{"source":"iana","extensions":["gdl"]},"model/vnd.gs-gdl":{"source":"apache"},"model/vnd.gs.gdl":{"source":"iana"},"model/vnd.gtw":{"source":"iana","extensions":["gtw"]},"model/vnd.moml+xml":{"source":"iana","compressible":true},"model/vnd.mts":{"source":"iana","extensions":["mts"]},"model/vnd.opengex":{"source":"iana","extensions":["ogex"]},"model/vnd.parasolid.transmit.binary":{"source":"iana","extensions":["x_b"]},"model/vnd.parasolid.transmit.text":{"source":"iana","extensions":["x_t"]},"model/vnd.pytha.pyox":{"source":"iana","extensions":["pyo","pyox"]},"model/vnd.rosette.annotated-data-model":{"source":"iana"},"model/vnd.sap.vds":{"source":"iana","extensions":["vds"]},"model/vnd.usda":{"source":"iana","extensions":["usda"]},"model/vnd.usdz+zip":{"source":"iana","compressible":false,"extensions":["usdz"]},"model/vnd.valve.source.compiled-map":{"source":"iana","extensions":["bsp"]},"model/vnd.vtu":{"source":"iana","extensions":["vtu"]},"model/vrml":{"source":"iana","compressible":false,"extensions":["wrl","vrml"]},"model/x3d+binary":{"source":"apache","compressible":false,"extensions":["x3db","x3dbz"]},"model/x3d+fastinfoset":{"source":"iana","extensions":["x3db"]},"model/x3d+vrml":{"source":"apache","compressible":false,"extensions":["x3dv","x3dvz"]},"model/x3d+xml":{"source":"iana","compressible":true,"extensions":["x3d","x3dz"]},"model/x3d-vrml":{"source":"iana","extensions":["x3dv"]},"multipart/alternative":{"source":"iana","compressible":false},"multipart/appledouble":{"source":"iana"},"multipart/byteranges":{"source":"iana"},"multipart/digest":{"source":"iana"},"multipart/encrypted":{"source":"iana","compressible":false},"multipart/form-data":{"source":"iana","compressible":false},"multipart/header-set":{"source":"iana"},"multipart/mixed":{"source":"iana"},"multipart/multilingual":{"source":"iana"},"multipart/parallel":{"source":"iana"},"multipart/related":{"source":"iana","compressible":false},"multipart/report":{"source":"iana"},"multipart/signed":{"source":"iana","compressible":false},"multipart/vnd.bint.med-plus":{"source":"iana"},"multipart/voice-message":{"source":"iana"},"multipart/x-mixed-replace":{"source":"iana"},"text/1d-interleaved-parityfec":{"source":"iana"},"text/cache-manifest":{"source":"iana","compressible":true,"extensions":["appcache","manifest"]},"text/calendar":{"source":"iana","extensions":["ics","ifb"]},"text/calender":{"compressible":true},"text/cmd":{"compressible":true},"text/coffeescript":{"extensions":["coffee","litcoffee"]},"text/cql":{"source":"iana"},"text/cql-expression":{"source":"iana"},"text/cql-identifier":{"source":"iana"},"text/css":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["css"]},"text/csv":{"source":"iana","compressible":true,"extensions":["csv"]},"text/csv-schema":{"source":"iana"},"text/directory":{"source":"iana"},"text/dns":{"source":"iana"},"text/ecmascript":{"source":"apache"},"text/encaprtp":{"source":"iana"},"text/enriched":{"source":"iana"},"text/fhirpath":{"source":"iana"},"text/flexfec":{"source":"iana"},"text/fwdred":{"source":"iana"},"text/gff3":{"source":"iana"},"text/grammar-ref-list":{"source":"iana"},"text/hl7v2":{"source":"iana"},"text/html":{"source":"iana","compressible":true,"extensions":["html","htm","shtml"]},"text/jade":{"extensions":["jade"]},"text/javascript":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["js","mjs"]},"text/jcr-cnd":{"source":"iana"},"text/jsx":{"compressible":true,"extensions":["jsx"]},"text/less":{"compressible":true,"extensions":["less"]},"text/markdown":{"source":"iana","compressible":true,"extensions":["md","markdown"]},"text/mathml":{"source":"nginx","extensions":["mml"]},"text/mdx":{"compressible":true,"extensions":["mdx"]},"text/mizar":{"source":"iana"},"text/n3":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["n3"]},"text/parameters":{"source":"iana","charset":"UTF-8"},"text/parityfec":{"source":"iana"},"text/plain":{"source":"iana","compressible":true,"extensions":["txt","text","conf","def","list","log","in","ini"]},"text/provenance-notation":{"source":"iana","charset":"UTF-8"},"text/prs.fallenstein.rst":{"source":"iana"},"text/prs.lines.tag":{"source":"iana","extensions":["dsc"]},"text/prs.prop.logic":{"source":"iana"},"text/prs.texi":{"source":"iana"},"text/raptorfec":{"source":"iana"},"text/red":{"source":"iana"},"text/rfc822-headers":{"source":"iana"},"text/richtext":{"source":"iana","compressible":true,"extensions":["rtx"]},"text/rtf":{"source":"iana","compressible":true,"extensions":["rtf"]},"text/rtp-enc-aescm128":{"source":"iana"},"text/rtploopback":{"source":"iana"},"text/rtx":{"source":"iana"},"text/sgml":{"source":"iana","extensions":["sgml","sgm"]},"text/shaclc":{"source":"iana"},"text/shex":{"source":"iana","extensions":["shex"]},"text/slim":{"extensions":["slim","slm"]},"text/spdx":{"source":"iana","extensions":["spdx"]},"text/strings":{"source":"iana"},"text/stylus":{"extensions":["stylus","styl"]},"text/t140":{"source":"iana"},"text/tab-separated-values":{"source":"iana","compressible":true,"extensions":["tsv"]},"text/troff":{"source":"iana","extensions":["t","tr","roff","man","me","ms"]},"text/turtle":{"source":"iana","charset":"UTF-8","extensions":["ttl"]},"text/ulpfec":{"source":"iana"},"text/uri-list":{"source":"iana","compressible":true,"extensions":["uri","uris","urls"]},"text/vcard":{"source":"iana","compressible":true,"extensions":["vcard"]},"text/vnd.a":{"source":"iana"},"text/vnd.abc":{"source":"iana"},"text/vnd.ascii-art":{"source":"iana"},"text/vnd.curl":{"source":"iana","extensions":["curl"]},"text/vnd.curl.dcurl":{"source":"apache","extensions":["dcurl"]},"text/vnd.curl.mcurl":{"source":"apache","extensions":["mcurl"]},"text/vnd.curl.scurl":{"source":"apache","extensions":["scurl"]},"text/vnd.debian.copyright":{"source":"iana","charset":"UTF-8"},"text/vnd.dmclientscript":{"source":"iana"},"text/vnd.dvb.subtitle":{"source":"iana","extensions":["sub"]},"text/vnd.esmertec.theme-descriptor":{"source":"iana","charset":"UTF-8"},"text/vnd.exchangeable":{"source":"iana"},"text/vnd.familysearch.gedcom":{"source":"iana","extensions":["ged"]},"text/vnd.ficlab.flt":{"source":"iana"},"text/vnd.fly":{"source":"iana","extensions":["fly"]},"text/vnd.fmi.flexstor":{"source":"iana","extensions":["flx"]},"text/vnd.gml":{"source":"iana"},"text/vnd.graphviz":{"source":"iana","extensions":["gv"]},"text/vnd.hans":{"source":"iana"},"text/vnd.hgl":{"source":"iana"},"text/vnd.in3d.3dml":{"source":"iana","extensions":["3dml"]},"text/vnd.in3d.spot":{"source":"iana","extensions":["spot"]},"text/vnd.iptc.newsml":{"source":"iana"},"text/vnd.iptc.nitf":{"source":"iana"},"text/vnd.latex-z":{"source":"iana"},"text/vnd.motorola.reflex":{"source":"iana"},"text/vnd.ms-mediapackage":{"source":"iana"},"text/vnd.net2phone.commcenter.command":{"source":"iana"},"text/vnd.radisys.msml-basic-layout":{"source":"iana"},"text/vnd.senx.warpscript":{"source":"iana"},"text/vnd.si.uricatalogue":{"source":"apache"},"text/vnd.sosi":{"source":"iana"},"text/vnd.sun.j2me.app-descriptor":{"source":"iana","charset":"UTF-8","extensions":["jad"]},"text/vnd.trolltech.linguist":{"source":"iana","charset":"UTF-8"},"text/vnd.vcf":{"source":"iana"},"text/vnd.wap.si":{"source":"iana"},"text/vnd.wap.sl":{"source":"iana"},"text/vnd.wap.wml":{"source":"iana","extensions":["wml"]},"text/vnd.wap.wmlscript":{"source":"iana","extensions":["wmls"]},"text/vnd.zoo.kcl":{"source":"iana"},"text/vtt":{"source":"iana","charset":"UTF-8","compressible":true,"extensions":["vtt"]},"text/wgsl":{"source":"iana","extensions":["wgsl"]},"text/x-asm":{"source":"apache","extensions":["s","asm"]},"text/x-c":{"source":"apache","extensions":["c","cc","cxx","cpp","h","hh","dic"]},"text/x-component":{"source":"nginx","extensions":["htc"]},"text/x-fortran":{"source":"apache","extensions":["f","for","f77","f90"]},"text/x-gwt-rpc":{"compressible":true},"text/x-handlebars-template":{"extensions":["hbs"]},"text/x-java-source":{"source":"apache","extensions":["java"]},"text/x-jquery-tmpl":{"compressible":true},"text/x-lua":{"extensions":["lua"]},"text/x-markdown":{"compressible":true,"extensions":["mkd"]},"text/x-nfo":{"source":"apache","extensions":["nfo"]},"text/x-opml":{"source":"apache","extensions":["opml"]},"text/x-org":{"compressible":true,"extensions":["org"]},"text/x-pascal":{"source":"apache","extensions":["p","pas"]},"text/x-processing":{"compressible":true,"extensions":["pde"]},"text/x-sass":{"extensions":["sass"]},"text/x-scss":{"extensions":["scss"]},"text/x-setext":{"source":"apache","extensions":["etx"]},"text/x-sfv":{"source":"apache","extensions":["sfv"]},"text/x-suse-ymp":{"compressible":true,"extensions":["ymp"]},"text/x-uuencode":{"source":"apache","extensions":["uu"]},"text/x-vcalendar":{"source":"apache","extensions":["vcs"]},"text/x-vcard":{"source":"apache","extensions":["vcf"]},"text/xml":{"source":"iana","compressible":true,"extensions":["xml"]},"text/xml-external-parsed-entity":{"source":"iana"},"text/yaml":{"compressible":true,"extensions":["yaml","yml"]},"video/1d-interleaved-parityfec":{"source":"iana"},"video/3gpp":{"source":"iana","extensions":["3gp","3gpp"]},"video/3gpp-tt":{"source":"iana"},"video/3gpp2":{"source":"iana","extensions":["3g2"]},"video/av1":{"source":"iana"},"video/bmpeg":{"source":"iana"},"video/bt656":{"source":"iana"},"video/celb":{"source":"iana"},"video/dv":{"source":"iana"},"video/encaprtp":{"source":"iana"},"video/evc":{"source":"iana"},"video/ffv1":{"source":"iana"},"video/flexfec":{"source":"iana"},"video/h261":{"source":"iana","extensions":["h261"]},"video/h263":{"source":"iana","extensions":["h263"]},"video/h263-1998":{"source":"iana"},"video/h263-2000":{"source":"iana"},"video/h264":{"source":"iana","extensions":["h264"]},"video/h264-rcdo":{"source":"iana"},"video/h264-svc":{"source":"iana"},"video/h265":{"source":"iana"},"video/h266":{"source":"iana"},"video/iso.segment":{"source":"iana","extensions":["m4s"]},"video/jpeg":{"source":"iana","extensions":["jpgv"]},"video/jpeg2000":{"source":"iana"},"video/jpm":{"source":"apache","extensions":["jpm","jpgm"]},"video/jxsv":{"source":"iana"},"video/lottie+json":{"source":"iana","compressible":true},"video/matroska":{"source":"iana"},"video/matroska-3d":{"source":"iana"},"video/mj2":{"source":"iana","extensions":["mj2","mjp2"]},"video/mp1s":{"source":"iana"},"video/mp2p":{"source":"iana"},"video/mp2t":{"source":"iana","extensions":["ts","m2t","m2ts","mts"]},"video/mp4":{"source":"iana","compressible":false,"extensions":["mp4","mp4v","mpg4"]},"video/mp4v-es":{"source":"iana"},"video/mpeg":{"source":"iana","compressible":false,"extensions":["mpeg","mpg","mpe","m1v","m2v"]},"video/mpeg4-generic":{"source":"iana"},"video/mpv":{"source":"iana"},"video/nv":{"source":"iana"},"video/ogg":{"source":"iana","compressible":false,"extensions":["ogv"]},"video/parityfec":{"source":"iana"},"video/pointer":{"source":"iana"},"video/quicktime":{"source":"iana","compressible":false,"extensions":["qt","mov"]},"video/raptorfec":{"source":"iana"},"video/raw":{"source":"iana"},"video/rtp-enc-aescm128":{"source":"iana"},"video/rtploopback":{"source":"iana"},"video/rtx":{"source":"iana"},"video/scip":{"source":"iana"},"video/smpte291":{"source":"iana"},"video/smpte292m":{"source":"iana"},"video/ulpfec":{"source":"iana"},"video/vc1":{"source":"iana"},"video/vc2":{"source":"iana"},"video/vnd.cctv":{"source":"iana"},"video/vnd.dece.hd":{"source":"iana","extensions":["uvh","uvvh"]},"video/vnd.dece.mobile":{"source":"iana","extensions":["uvm","uvvm"]},"video/vnd.dece.mp4":{"source":"iana"},"video/vnd.dece.pd":{"source":"iana","extensions":["uvp","uvvp"]},"video/vnd.dece.sd":{"source":"iana","extensions":["uvs","uvvs"]},"video/vnd.dece.video":{"source":"iana","extensions":["uvv","uvvv"]},"video/vnd.directv.mpeg":{"source":"iana"},"video/vnd.directv.mpeg-tts":{"source":"iana"},"video/vnd.dlna.mpeg-tts":{"source":"iana"},"video/vnd.dvb.file":{"source":"iana","extensions":["dvb"]},"video/vnd.fvt":{"source":"iana","extensions":["fvt"]},"video/vnd.hns.video":{"source":"iana"},"video/vnd.iptvforum.1dparityfec-1010":{"source":"iana"},"video/vnd.iptvforum.1dparityfec-2005":{"source":"iana"},"video/vnd.iptvforum.2dparityfec-1010":{"source":"iana"},"video/vnd.iptvforum.2dparityfec-2005":{"source":"iana"},"video/vnd.iptvforum.ttsavc":{"source":"iana"},"video/vnd.iptvforum.ttsmpeg2":{"source":"iana"},"video/vnd.motorola.video":{"source":"iana"},"video/vnd.motorola.videop":{"source":"iana"},"video/vnd.mpegurl":{"source":"iana","extensions":["mxu","m4u"]},"video/vnd.ms-playready.media.pyv":{"source":"iana","extensions":["pyv"]},"video/vnd.nokia.interleaved-multimedia":{"source":"iana"},"video/vnd.nokia.mp4vr":{"source":"iana"},"video/vnd.nokia.videovoip":{"source":"iana"},"video/vnd.objectvideo":{"source":"iana"},"video/vnd.planar":{"source":"iana"},"video/vnd.radgamettools.bink":{"source":"iana"},"video/vnd.radgamettools.smacker":{"source":"apache"},"video/vnd.sealed.mpeg1":{"source":"iana"},"video/vnd.sealed.mpeg4":{"source":"iana"},"video/vnd.sealed.swf":{"source":"iana"},"video/vnd.sealedmedia.softseal.mov":{"source":"iana"},"video/vnd.uvvu.mp4":{"source":"iana","extensions":["uvu","uvvu"]},"video/vnd.vivo":{"source":"iana","extensions":["viv"]},"video/vnd.youtube.yt":{"source":"iana"},"video/vp8":{"source":"iana"},"video/vp9":{"source":"iana"},"video/webm":{"source":"apache","compressible":false,"extensions":["webm"]},"video/x-f4v":{"source":"apache","extensions":["f4v"]},"video/x-fli":{"source":"apache","extensions":["fli"]},"video/x-flv":{"source":"apache","compressible":false,"extensions":["flv"]},"video/x-m4v":{"source":"apache","extensions":["m4v"]},"video/x-matroska":{"source":"apache","compressible":false,"extensions":["mkv","mk3d","mks"]},"video/x-mng":{"source":"apache","extensions":["mng"]},"video/x-ms-asf":{"source":"apache","extensions":["asf","asx"]},"video/x-ms-vob":{"source":"apache","extensions":["vob"]},"video/x-ms-wm":{"source":"apache","extensions":["wm"]},"video/x-ms-wmv":{"source":"apache","compressible":false,"extensions":["wmv"]},"video/x-ms-wmx":{"source":"apache","extensions":["wmx"]},"video/x-ms-wvx":{"source":"apache","extensions":["wvx"]},"video/x-msvideo":{"source":"apache","extensions":["avi"]},"video/x-sgi-movie":{"source":"apache","extensions":["movie"]},"video/x-smv":{"source":"apache","extensions":["smv"]},"x-conference/x-cooltalk":{"source":"apache","extensions":["ice"]},"x-shader/x-fragment":{"compressible":true},"x-shader/x-vertex":{"compressible":true}}')}},t={};function n(i){var a=t[i];if(void 0!==a)return a.exports;var o=t[i]={id:i,loaded:!1,exports:{}};return e[i](o,o.exports,n),o.loaded=!0,o.exports}n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{for(var i in t)n.o(t,i)&&!n.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})},n.hmd=e=>((e=Object.create(e)).children||(e.children=[]),Object.defineProperty(e,"exports",{enumerable:!0,set:()=>{throw new Error("ES Modules may not assign module.exports or exports.*, Use ESM export syntax, instead: "+e.id)}}),e),n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{"use strict";
42
+ /**
43
+ * @license
44
+ * Copyright 2019 Google LLC
45
+ * SPDX-License-Identifier: BSD-3-Clause
46
+ */
47
+ const e=globalThis,t=e.ShadowRoot&&(void 0===e.ShadyCSS||e.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,i=Symbol(),a=new WeakMap;class o{constructor(e,t,n){if(this._$cssResult$=!0,n!==i)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=e,this.t=t}get styleSheet(){let e=this.o;const n=this.t;if(t&&void 0===e){const t=void 0!==n&&1===n.length;t&&(e=a.get(n)),void 0===e&&((this.o=e=new CSSStyleSheet).replaceSync(this.cssText),t&&a.set(n,e))}return e}toString(){return this.cssText}}const s=(e,...t)=>{const n=1===e.length?e[0]:t.reduce((t,n,i)=>t+(e=>{if(!0===e._$cssResult$)return e.cssText;if("number"==typeof e)return e;throw Error("Value passed to 'css' function must be a 'css' function result: "+e+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(n)+e[i+1],e[0]);return new o(n,e,i)},r=(n,i)=>{if(t)n.adoptedStyleSheets=i.map(e=>e instanceof CSSStyleSheet?e:e.styleSheet);else for(const t of i){const i=document.createElement("style"),a=e.litNonce;void 0!==a&&i.setAttribute("nonce",a),i.textContent=t.cssText,n.appendChild(i)}},c=t?e=>e:e=>e instanceof CSSStyleSheet?(e=>{let t="";for(const n of e.cssRules)t+=n.cssText;return(e=>new o("string"==typeof e?e:e+"",void 0,i))(t)})(e):e,{is:l,defineProperty:p,getOwnPropertyDescriptor:u,getOwnPropertyNames:d,getOwnPropertySymbols:m,getPrototypeOf:f}=Object,h=globalThis,g=h.trustedTypes,b=g?g.emptyScript:"",v=h.reactiveElementPolyfillSupport,x=(e,t)=>e,y={toAttribute(e,t){switch(t){case Boolean:e=e?b:null;break;case Object:case Array:e=null==e?e:JSON.stringify(e)}return e},fromAttribute(e,t){let n=e;switch(t){case Boolean:n=null!==e;break;case Number:n=null===e?null:Number(e);break;case Object:case Array:try{n=JSON.parse(e)}catch(e){n=null}}return n}},w=(e,t)=>!l(e,t),C={attribute:!0,type:String,converter:y,reflect:!1,useDefault:!1,hasChanged:w};Symbol.metadata??=Symbol("metadata"),h.litPropertyMetadata??=new WeakMap;class E extends HTMLElement{static addInitializer(e){this._$Ei(),(this.l??=[]).push(e)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(e,t=C){if(t.state&&(t.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(e)&&((t=Object.create(t)).wrapped=!0),this.elementProperties.set(e,t),!t.noAccessor){const n=Symbol(),i=this.getPropertyDescriptor(e,n,t);void 0!==i&&p(this.prototype,e,i)}}static getPropertyDescriptor(e,t,n){const{get:i,set:a}=u(this.prototype,e)??{get(){return this[t]},set(e){this[t]=e}};return{get:i,set(t){const o=i?.call(this);a?.call(this,t),this.requestUpdate(e,o,n)},configurable:!0,enumerable:!0}}static getPropertyOptions(e){return this.elementProperties.get(e)??C}static _$Ei(){if(this.hasOwnProperty(x("elementProperties")))return;const e=f(this);e.finalize(),void 0!==e.l&&(this.l=[...e.l]),this.elementProperties=new Map(e.elementProperties)}static finalize(){if(this.hasOwnProperty(x("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(x("properties"))){const e=this.properties,t=[...d(e),...m(e)];for(const n of t)this.createProperty(n,e[n])}const e=this[Symbol.metadata];if(null!==e){const t=litPropertyMetadata.get(e);if(void 0!==t)for(const[e,n]of t)this.elementProperties.set(e,n)}this._$Eh=new Map;for(const[e,t]of this.elementProperties){const n=this._$Eu(e,t);void 0!==n&&this._$Eh.set(n,e)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(e){const t=[];if(Array.isArray(e)){const n=new Set(e.flat(1/0).reverse());for(const e of n)t.unshift(c(e))}else void 0!==e&&t.push(c(e));return t}static _$Eu(e,t){const n=t.attribute;return!1===n?void 0:"string"==typeof n?n:"string"==typeof e?e.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise(e=>this.enableUpdating=e),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(e=>e(this))}addController(e){(this._$EO??=new Set).add(e),void 0!==this.renderRoot&&this.isConnected&&e.hostConnected?.()}removeController(e){this._$EO?.delete(e)}_$E_(){const e=new Map,t=this.constructor.elementProperties;for(const n of t.keys())this.hasOwnProperty(n)&&(e.set(n,this[n]),delete this[n]);e.size>0&&(this._$Ep=e)}createRenderRoot(){const e=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return r(e,this.constructor.elementStyles),e}connectedCallback(){this.renderRoot??=this.createRenderRoot(),this.enableUpdating(!0),this._$EO?.forEach(e=>e.hostConnected?.())}enableUpdating(e){}disconnectedCallback(){this._$EO?.forEach(e=>e.hostDisconnected?.())}attributeChangedCallback(e,t,n){this._$AK(e,n)}_$ET(e,t){const n=this.constructor.elementProperties.get(e),i=this.constructor._$Eu(e,n);if(void 0!==i&&!0===n.reflect){const a=(void 0!==n.converter?.toAttribute?n.converter:y).toAttribute(t,n.type);this._$Em=e,null==a?this.removeAttribute(i):this.setAttribute(i,a),this._$Em=null}}_$AK(e,t){const n=this.constructor,i=n._$Eh.get(e);if(void 0!==i&&this._$Em!==i){const e=n.getPropertyOptions(i),a="function"==typeof e.converter?{fromAttribute:e.converter}:void 0!==e.converter?.fromAttribute?e.converter:y;this._$Em=i;const o=a.fromAttribute(t,e.type);this[i]=o??this._$Ej?.get(i)??o,this._$Em=null}}requestUpdate(e,t,n,i=!1,a){if(void 0!==e){const o=this.constructor;if(!1===i&&(a=this[e]),n??=o.getPropertyOptions(e),!((n.hasChanged??w)(a,t)||n.useDefault&&n.reflect&&a===this._$Ej?.get(e)&&!this.hasAttribute(o._$Eu(e,n))))return;this.C(e,t,n)}!1===this.isUpdatePending&&(this._$ES=this._$EP())}C(e,t,{useDefault:n,reflect:i,wrapped:a},o){n&&!(this._$Ej??=new Map).has(e)&&(this._$Ej.set(e,o??t??this[e]),!0!==a||void 0!==o)||(this._$AL.has(e)||(this.hasUpdated||n||(t=void 0),this._$AL.set(e,t)),!0===i&&this._$Em!==e&&(this._$Eq??=new Set).add(e))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(e){Promise.reject(e)}const e=this.scheduleUpdate();return null!=e&&await e,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??=this.createRenderRoot(),this._$Ep){for(const[e,t]of this._$Ep)this[e]=t;this._$Ep=void 0}const e=this.constructor.elementProperties;if(e.size>0)for(const[t,n]of e){const{wrapped:e}=n,i=this[t];!0!==e||this._$AL.has(t)||void 0===i||this.C(t,void 0,n,i)}}let e=!1;const t=this._$AL;try{e=this.shouldUpdate(t),e?(this.willUpdate(t),this._$EO?.forEach(e=>e.hostUpdate?.()),this.update(t)):this._$EM()}catch(t){throw e=!1,this._$EM(),t}e&&this._$AE(t)}willUpdate(e){}_$AE(e){this._$EO?.forEach(e=>e.hostUpdated?.()),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(e)),this.updated(e)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(e){return!0}update(e){this._$Eq&&=this._$Eq.forEach(e=>this._$ET(e,this[e])),this._$EM()}updated(e){}firstUpdated(e){}}E.elementStyles=[],E.shadowRootOptions={mode:"open"},E[x("elementProperties")]=new Map,E[x("finalized")]=new Map,v?.({ReactiveElement:E}),(h.reactiveElementVersions??=[]).push("2.1.2");
48
+ /**
49
+ * @license
50
+ * Copyright 2017 Google LLC
51
+ * SPDX-License-Identifier: BSD-3-Clause
52
+ */
53
+ const k=globalThis,A=e=>e,_=k.trustedTypes,T=_?_.createPolicy("lit-html",{createHTML:e=>e}):void 0,S="$lit$",j=`lit$${Math.random().toFixed(9).slice(2)}$`,L="?"+j,R=`<${L}>`,N=document,I=()=>N.createComment(""),$=e=>null===e||"object"!=typeof e&&"function"!=typeof e,B=Array.isArray,D=e=>B(e)||"function"==typeof e?.[Symbol.iterator],O="[ \t\n\f\r]",M=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,U=/-->/g,F=/>/g,P=RegExp(`>|${O}(?:([^\\s"'>=/]+)(${O}*=${O}*(?:[^ \t\n\f\r"'\`<>=]|("|')|))|$)`,"g"),z=/'/g,q=/"/g,H=/^(?:script|style|textarea|title)$/i,V=e=>(t,...n)=>({_$litType$:e,strings:t,values:n}),G=V(1),W=(V(2),V(3),Symbol.for("lit-noChange")),J=Symbol.for("lit-nothing"),Q=new WeakMap,Z=N.createTreeWalker(N,129);function Y(e,t){if(!B(e)||!e.hasOwnProperty("raw"))throw Error("invalid template strings array");return void 0!==T?T.createHTML(t):t}const K=(e,t)=>{const n=e.length-1,i=[];let a,o=2===t?"<svg>":3===t?"<math>":"",s=M;for(let t=0;t<n;t++){const n=e[t];let r,c,l=-1,p=0;for(;p<n.length&&(s.lastIndex=p,c=s.exec(n),null!==c);)p=s.lastIndex,s===M?"!--"===c[1]?s=U:void 0!==c[1]?s=F:void 0!==c[2]?(H.test(c[2])&&(a=RegExp("</"+c[2],"g")),s=P):void 0!==c[3]&&(s=P):s===P?">"===c[0]?(s=a??M,l=-1):void 0===c[1]?l=-2:(l=s.lastIndex-c[2].length,r=c[1],s=void 0===c[3]?P:'"'===c[3]?q:z):s===q||s===z?s=P:s===U||s===F?s=M:(s=P,a=void 0);const u=s===P&&e[t+1].startsWith("/>")?" ":"";o+=s===M?n+R:l>=0?(i.push(r),n.slice(0,l)+S+n.slice(l)+j+u):n+j+(-2===l?t:u)}return[Y(e,o+(e[n]||"<?>")+(2===t?"</svg>":3===t?"</math>":"")),i]};class X{constructor({strings:e,_$litType$:t},n){let i;this.parts=[];let a=0,o=0;const s=e.length-1,r=this.parts,[c,l]=K(e,t);if(this.el=X.createElement(c,n),Z.currentNode=this.el.content,2===t||3===t){const e=this.el.content.firstChild;e.replaceWith(...e.childNodes)}for(;null!==(i=Z.nextNode())&&r.length<s;){if(1===i.nodeType){if(i.hasAttributes())for(const e of i.getAttributeNames())if(e.endsWith(S)){const t=l[o++],n=i.getAttribute(e).split(j),s=/([.?@])?(.*)/.exec(t);r.push({type:1,index:a,name:s[2],strings:n,ctor:"."===s[1]?ae:"?"===s[1]?oe:"@"===s[1]?se:ie}),i.removeAttribute(e)}else e.startsWith(j)&&(r.push({type:6,index:a}),i.removeAttribute(e));if(H.test(i.tagName)){const e=i.textContent.split(j),t=e.length-1;if(t>0){i.textContent=_?_.emptyScript:"";for(let n=0;n<t;n++)i.append(e[n],I()),Z.nextNode(),r.push({type:2,index:++a});i.append(e[t],I())}}}else if(8===i.nodeType)if(i.data===L)r.push({type:2,index:a});else{let e=-1;for(;-1!==(e=i.data.indexOf(j,e+1));)r.push({type:7,index:a}),e+=j.length-1}a++}}static createElement(e,t){const n=N.createElement("template");return n.innerHTML=e,n}}function ee(e,t,n=e,i){if(t===W)return t;let a=void 0!==i?n._$Co?.[i]:n._$Cl;const o=$(t)?void 0:t._$litDirective$;return a?.constructor!==o&&(a?._$AO?.(!1),void 0===o?a=void 0:(a=new o(e),a._$AT(e,n,i)),void 0!==i?(n._$Co??=[])[i]=a:n._$Cl=a),void 0!==a&&(t=ee(e,a._$AS(e,t.values),a,i)),t}class te{constructor(e,t){this._$AV=[],this._$AN=void 0,this._$AD=e,this._$AM=t}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(e){const{el:{content:t},parts:n}=this._$AD,i=(e?.creationScope??N).importNode(t,!0);Z.currentNode=i;let a=Z.nextNode(),o=0,s=0,r=n[0];for(;void 0!==r;){if(o===r.index){let t;2===r.type?t=new ne(a,a.nextSibling,this,e):1===r.type?t=new r.ctor(a,r.name,r.strings,this,e):6===r.type&&(t=new re(a,this,e)),this._$AV.push(t),r=n[++s]}o!==r?.index&&(a=Z.nextNode(),o++)}return Z.currentNode=N,i}p(e){let t=0;for(const n of this._$AV)void 0!==n&&(void 0!==n.strings?(n._$AI(e,n,t),t+=n.strings.length-2):n._$AI(e[t])),t++}}class ne{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(e,t,n,i){this.type=2,this._$AH=J,this._$AN=void 0,this._$AA=e,this._$AB=t,this._$AM=n,this.options=i,this._$Cv=i?.isConnected??!0}get parentNode(){let e=this._$AA.parentNode;const t=this._$AM;return void 0!==t&&11===e?.nodeType&&(e=t.parentNode),e}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(e,t=this){e=ee(this,e,t),$(e)?e===J||null==e||""===e?(this._$AH!==J&&this._$AR(),this._$AH=J):e!==this._$AH&&e!==W&&this._(e):void 0!==e._$litType$?this.$(e):void 0!==e.nodeType?this.T(e):D(e)?this.k(e):this._(e)}O(e){return this._$AA.parentNode.insertBefore(e,this._$AB)}T(e){this._$AH!==e&&(this._$AR(),this._$AH=this.O(e))}_(e){this._$AH!==J&&$(this._$AH)?this._$AA.nextSibling.data=e:this.T(N.createTextNode(e)),this._$AH=e}$(e){const{values:t,_$litType$:n}=e,i="number"==typeof n?this._$AC(e):(void 0===n.el&&(n.el=X.createElement(Y(n.h,n.h[0]),this.options)),n);if(this._$AH?._$AD===i)this._$AH.p(t);else{const e=new te(i,this),n=e.u(this.options);e.p(t),this.T(n),this._$AH=e}}_$AC(e){let t=Q.get(e.strings);return void 0===t&&Q.set(e.strings,t=new X(e)),t}k(e){B(this._$AH)||(this._$AH=[],this._$AR());const t=this._$AH;let n,i=0;for(const a of e)i===t.length?t.push(n=new ne(this.O(I()),this.O(I()),this,this.options)):n=t[i],n._$AI(a),i++;i<t.length&&(this._$AR(n&&n._$AB.nextSibling,i),t.length=i)}_$AR(e=this._$AA.nextSibling,t){for(this._$AP?.(!1,!0,t);e!==this._$AB;){const t=A(e).nextSibling;A(e).remove(),e=t}}setConnected(e){void 0===this._$AM&&(this._$Cv=e,this._$AP?.(e))}}class ie{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(e,t,n,i,a){this.type=1,this._$AH=J,this._$AN=void 0,this.element=e,this.name=t,this._$AM=i,this.options=a,n.length>2||""!==n[0]||""!==n[1]?(this._$AH=Array(n.length-1).fill(new String),this.strings=n):this._$AH=J}_$AI(e,t=this,n,i){const a=this.strings;let o=!1;if(void 0===a)e=ee(this,e,t,0),o=!$(e)||e!==this._$AH&&e!==W,o&&(this._$AH=e);else{const i=e;let s,r;for(e=a[0],s=0;s<a.length-1;s++)r=ee(this,i[n+s],t,s),r===W&&(r=this._$AH[s]),o||=!$(r)||r!==this._$AH[s],r===J?e=J:e!==J&&(e+=(r??"")+a[s+1]),this._$AH[s]=r}o&&!i&&this.j(e)}j(e){e===J?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,e??"")}}class ae extends ie{constructor(){super(...arguments),this.type=3}j(e){this.element[this.name]=e===J?void 0:e}}class oe extends ie{constructor(){super(...arguments),this.type=4}j(e){this.element.toggleAttribute(this.name,!!e&&e!==J)}}class se extends ie{constructor(e,t,n,i,a){super(e,t,n,i,a),this.type=5}_$AI(e,t=this){if((e=ee(this,e,t,0)??J)===W)return;const n=this._$AH,i=e===J&&n!==J||e.capture!==n.capture||e.once!==n.once||e.passive!==n.passive,a=e!==J&&(n===J||i);i&&this.element.removeEventListener(this.name,this,n),a&&this.element.addEventListener(this.name,this,e),this._$AH=e}handleEvent(e){"function"==typeof this._$AH?this._$AH.call(this.options?.host??this.element,e):this._$AH.handleEvent(e)}}class re{constructor(e,t,n){this.element=e,this.type=6,this._$AN=void 0,this._$AM=t,this.options=n}get _$AU(){return this._$AM._$AU}_$AI(e){ee(this,e)}}const ce=k.litHtmlPolyfillSupport;ce?.(X,ne),(k.litHtmlVersions??=[]).push("3.3.2");const le=globalThis;class pe extends E{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){const e=super.createRenderRoot();return this.renderOptions.renderBefore??=e.firstChild,e}update(e){const t=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(e),this._$Do=((e,t,n)=>{const i=n?.renderBefore??t;let a=i._$litPart$;if(void 0===a){const e=n?.renderBefore??null;i._$litPart$=a=new ne(t.insertBefore(I(),e),e,void 0,n??{})}return a._$AI(e),a})(t,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return W}}pe._$litElement$=!0,pe.finalized=!0,le.litElementHydrateSupport?.({LitElement:pe});const ue=le.litElementPolyfillSupport;ue?.({LitElement:pe});(le.litElementVersions??=[]).push("4.2.2");var de=n(892),me=n(565);class fe extends pe{static properties={theme:{type:String,reflect:!0},layout:{type:String,reflect:!0},position:{type:String,reflect:!0},top:{type:String,reflect:!0},right:{type:String,reflect:!0},bottom:{type:String,reflect:!0},left:{type:String,reflect:!0},store:{type:Object,attribute:!1},_user:{state:!0}};static styles=s`
54
+ :host {
55
+ display: block;
56
+ position: var(--footer-position, static);
57
+ top: var(--footer-top, auto);
58
+ right: var(--footer-right, auto);
59
+ bottom: var(--footer-bottom, auto);
60
+ left: var(--footer-left, auto);
61
+ width: auto;
62
+ max-width: var(--footer-max-width, none);
63
+ margin: var(--footer-margin, 0);
64
+ box-sizing: border-box;
65
+ color: var(--footer-text, #4f4f4f);
66
+ background: transparent;
67
+ border: 1px solid var(--footer-border, rgba(0, 0, 0, 0.12));
68
+ border-radius: var(--footer-border-radius, 1rem);
69
+ box-shadow: var(--footer-box-shadow, 0 1px 6px rgba(0, 0, 0, 0.08));
70
+ font-family: var(--font-family-base, 'Segoe UI', 'Helvetica Neue', Arial, sans-serif);
71
+ }
72
+
73
+ .footer {
74
+ display: flex;
75
+ justify-content: flex-start;
76
+ align-items: flex-start;
77
+ gap: 0.25rem;
78
+ font-size: 0.75rem;
79
+ line-height: 1.5;
80
+ text-align: left;
81
+ }
82
+
83
+ .footer a {
84
+ color: var(--footer-link, #4b32a8);
85
+ text-decoration: none;
86
+ font-weight: 600;
87
+ }
88
+
89
+ .footer a:hover {
90
+ text-decoration: underline;
91
+ }
92
+
93
+ .footer span {
94
+ color: inherit;
95
+ }
96
+
97
+ .footer div > strong {
98
+ display: block;
99
+ margin-bottom: 0.5rem;
100
+ }
101
+
102
+ :host([layout='mobile']) {
103
+ border: none;
104
+ box-shadow: none;
105
+ border-radius: 0;
106
+ }
107
+ `;constructor(){super(),this.theme="light",this.layout="desktop",this.position="static",this.top="auto",this.right="auto",this.bottom="auto",this.left="auto",this.store=null,this._user=null,this._updateFooter=this._updateFooter.bind(this)}connectedCallback(){super.connectedCallback(),de.authSession.events.on("login",this._updateFooter),de.authSession.events.on("logout",this._updateFooter),this._updateFooter()}disconnectedCallback(){"function"==typeof de.authSession.events.off?(de.authSession.events.off("login",this._updateFooter),de.authSession.events.off("logout",this._updateFooter)):"function"==typeof de.authSession.events.removeListener&&(de.authSession.events.removeListener("login",this._updateFooter),de.authSession.events.removeListener("logout",this._updateFooter)),super.disconnectedCallback()}updated(e){(e.has("position")||e.has("top")||e.has("right")||e.has("bottom")||e.has("left"))&&this._updatePositionStyles()}_updatePositionStyles(){this.style.setProperty("--footer-position",this.position),this.style.setProperty("--footer-top",this.top),this.style.setProperty("--footer-right",this.right),this.style.setProperty("--footer-bottom",this.bottom),this.style.setProperty("--footer-left",this.left)}_updateFooter(){this._user=de.authn.currentUser()}render(){return G`
108
+ <footer class="footer">
109
+ ${this._renderFooterContent()}
110
+ </footer>
111
+ `}_renderFooterContent(){if(!this._user)return G`
112
+ <div>
113
+ <strong>Public View</strong>
114
+ <div>You are viewing this profile as a guest.</div>
115
+ </div>
116
+ `;const e=this.store?(0,me.mG)(this.store,this._user):this._user.uri;return G`
117
+ <div>
118
+ <strong>Logged in View</strong>
119
+ <div>
120
+ You are logged in as
121
+ <a href=${this._user.uri} target="_blank" rel="noopener noreferrer">${e}</a>.
122
+ </div>
123
+ </div>
124
+ `}}const he="solid-ui-footer";customElements.get(he)||customElements.define(he,fe)})()})();
125
+ //# sourceMappingURL=index.min.js.map