diff --git a/dist/index.html b/dist/index.html index d524f05..23b9f80 100644 --- a/dist/index.html +++ b/dist/index.html @@ -1 +1 @@ -
\ No newline at end of file +
\ No newline at end of file diff --git a/dist/js/app.0720a71f.js b/dist/js/app.0720a71f.js deleted file mode 100644 index 520b0e5..0000000 --- a/dist/js/app.0720a71f.js +++ /dev/null @@ -1,2 +0,0 @@ -(function(){"use strict";var e={940:function(e,t,s){var i=s(242),n=s(396),o=s(139);const a={class:"tab",id:"header"},l=(0,n._)("h1",{style:{float:"left","padding-left":"20px","font-size":"16px","padding-top":"2px"}},"Ithkapp",-1),r=(0,n._)("i",{class:"fa-solid fa-gear fa-xs"},null,-1),h=[r],c=(0,n._)("i",{class:"fa-solid fa-align-right fa-xs"},null,-1),d=[c],p={key:0,class:"dropdown"},u=(0,n.Uk)("Adjunct ▼"),f=[u],g={class:"dropdown-content hidden",id:"adjDD"},m={key:1,class:"dropdown"},b=(0,n.Uk)("Formative ▼"),w=[b],y={class:"dropdown-content hidden",id:"formDD"},v={key:2,class:"dropdown"},S=(0,n.Uk)("Adjunct ▼"),M=[S],T={class:"dropdown-content hidden",id:"adj3"},O={key:3,class:"dropdown"},C=(0,n.Uk)("Formative ▼"),I=[C],x={class:"dropdown-content hidden",id:"form3"},A={id:"content"},k={id:"footer"},E={class:"word"},D=(0,n._)("br",null,null,-1),j={class:"smalltext"},P=(0,n._)("br",null,null,-1),N=["title"],R={id:"modal-content"},V={class:"tab"},W=["onClick"],_=(0,n._)("h2",{style:{"text-align":"center"}},"Settings",-1),L=["onUpdate:modelValue"],U=["onUpdate:modelValue"],F=(0,n._)("br",null,null,-1),z=(0,n._)("br",null,null,-1),G=(0,n._)("a",{href:"https://github.com/TheXXOs/ithkapp",target:"_blank"},"This project on GitHub",-1),B={key:0},X={style:{"text-align":"center"}},q=["innerHTML"],H={key:0},J={key:0,class:"tab"},$={key:1},Y=["onClick"],K=["innerHTML"],Q=["onClick"],Z=["src","alt"],ee=["innerHTML"],te={key:1},se=(0,n._)("br",null,null,-1),ie=(0,n._)("br",null,null,-1),ne=(0,n._)("p",{style:{"text-align":"center"}},"Your sentence:",-1),oe={style:{"text-align":"center"}},ae=(0,n._)("br",null,null,-1),le=(0,n._)("br",null,null,-1),re={id:"sidebar"},he={id:"sHeader"},ce=(0,n._)("h3",{style:{"padding-left":"20px"}},"Sentence Menu",-1),de={id:"sContent"},pe=["onClick","onMouseover","onMousemove","onTouchstart"],ue=["onUpdate:modelValue"],fe=(0,n._)("br",null,null,-1),ge={id:"sFooter"},me=(0,n._)("i",{class:"fa-solid fa-plus fa-xl"},null,-1),be=[me],we=(0,n._)("i",{class:"fa-solid fa-floppy-disk fa-xl"},null,-1),ye=[we],ve=(0,n._)("label",{id:"filab",for:"fimport"},[(0,n._)("i",{class:"fa-solid fa-arrow-up-from-bracket fa-xl"})],-1),Se=[ve],Me=(0,n._)("i",{class:"fa-solid fa-share-from-square fa-xl"},null,-1),Te=[Me];function Oe(e,t,s,r,c,u){const b=(0,n.up)("Ithkuil_v4"),S=(0,n.up)("Ithkuil_v3"),C=(0,n.Q2)("click-outside");return(0,n.wg)(),(0,n.iD)(n.HY,null,[(0,n._)("title",null,"Ithkapp | "+(0,o.zw)(c.ithkword),1),(0,n._)("div",a,[l,(0,n._)("span",{class:"close",style:{"padding-left":"10px"},onClick:t[0]||(t[0]=e=>u.openModal("settings")),title:"Settings"},h),(0,n._)("span",{class:"close",style:(0,o.j5)([{"padding-left":"10px",height:"38px"},c.sentenceOpen?"background-color:rgb(179, 255, 230); color:#333;":""]),onClick:t[1]||(t[1]=e=>u.openNav(!1)),title:"Sentence Menu"},d,4),4==c.langVer?((0,n.wg)(),(0,n.iD)("div",p,[(0,n.wy)(((0,n.wg)(),(0,n.iD)("button",{class:(0,o.C_)({active:!["normal","affRoot","refRoot","ref","refCS","free"].includes(c.wordType)}),onClick:t[2]||(t[2]=e=>u.openDropdown("adjDD"))},f,2)),[[C,e=>u.closeDropdown("adjDD",e)]]),(0,n._)("div",g,[(0,n._)("span",{onClick:t[3]||(t[3]=e=>u.switchWordType("affixjunct")),class:(0,o.C_)({active:"affixjunct"==c.wordType})},"Affixual",2),(0,n._)("span",{onClick:t[4]||(t[4]=e=>u.switchWordType("modular")),class:(0,o.C_)({active:"modular"==c.wordType})},"Modular",2),(0,n._)("span",{onClick:t[5]||(t[5]=e=>u.switchWordType("register")),class:(0,o.C_)({active:"register"==c.wordType})},"Register",2),(0,n._)("span",{onClick:t[6]||(t[6]=e=>u.switchWordType("suppletive")),class:(0,o.C_)({active:"suppletive"==c.wordType})},"Suppletive",2),(0,n._)("span",{onClick:t[7]||(t[7]=e=>u.switchWordType("bias")),class:(0,o.C_)({active:"bias"==c.wordType})},"Bias",2)])])):(0,n.kq)("",!0),4==c.langVer?((0,n.wg)(),(0,n.iD)("div",m,[(0,n.wy)(((0,n.wg)(),(0,n.iD)("button",{class:(0,o.C_)({active:["normal","affRoot","refRoot","ref","refCS","free"].includes(c.wordType)}),onClick:t[8]||(t[8]=e=>u.openDropdown("formDD"))},w,2)),[[C,e=>u.closeDropdown("formDD",e)]]),(0,n._)("div",y,[(0,n._)("span",{onClick:t[9]||(t[9]=e=>u.switchWordType("normal")),class:(0,o.C_)({active:"normal"==c.wordType})},"Normal",2),(0,n._)("span",{onClick:t[10]||(t[10]=e=>u.switchWordType("affRoot")),class:(0,o.C_)({active:"affRoot"==c.wordType})},"Affix as Root",2),(0,n._)("span",{onClick:t[11]||(t[11]=e=>u.switchWordType("refRoot")),class:(0,o.C_)({active:"refRoot"==c.wordType})},"Personal-Referential Root",2),(0,n._)("span",{onClick:t[12]||(t[12]=e=>u.switchWordType("ref")),class:(0,o.C_)({active:"ref"==c.wordType})},"Single/Dual-Referential",2),(0,n._)("span",{onClick:t[13]||(t[13]=e=>u.switchWordType("refCS")),class:(0,o.C_)({active:"refCS"==c.wordType})},"Single Referential w/ Case-Stacking",2),(0,n._)("span",{onClick:t[14]||(t[14]=e=>u.switchWordType("free")),class:(0,o.C_)({active:"free"==c.wordType})},"Non-Ithkuil (Borrowed) Word",2)])])):(0,n.kq)("",!0),3==c.langVer?((0,n.wg)(),(0,n.iD)("div",v,[(0,n.wy)(((0,n.wg)(),(0,n.iD)("button",{class:(0,o.C_)({active:["aspect","affix","bias"].includes(c.wordType)}),onClick:t[15]||(t[15]=e=>u.openDropdown("adj3"))},M,2)),[[C,e=>u.closeDropdown("adj3",e)]]),(0,n._)("div",T,[(0,n._)("span",{onClick:t[16]||(t[16]=e=>u.switchWordType("aspect")),class:(0,o.C_)({active:"aspect"==c.wordType})},"Aspectual",2),(0,n._)("span",{onClick:t[17]||(t[17]=e=>u.switchWordType("affix")),class:(0,o.C_)({active:"affix"==c.wordType})},"Affixual",2),(0,n._)("span",{onClick:t[18]||(t[18]=e=>u.switchWordType("bias")),class:(0,o.C_)({active:"bias"==c.wordType})},"Bias",2)])])):(0,n.kq)("",!0),3==c.langVer?((0,n.wg)(),(0,n.iD)("div",O,[(0,n.wy)(((0,n.wg)(),(0,n.iD)("button",{class:(0,o.C_)({active:["normal","ref"].includes(c.wordType)}),onClick:t[19]||(t[19]=e=>u.openDropdown("form3"))},I,2)),[[C,e=>u.closeDropdown("form3",e)]]),(0,n._)("div",x,[(0,n._)("span",{onClick:t[20]||(t[20]=e=>u.switchWordType("normal")),class:(0,o.C_)({active:"normal"==c.wordType})},"Normal",2),(0,n._)("span",{onClick:t[21]||(t[21]=e=>u.switchWordType("ref")),class:(0,o.C_)({active:"ref"==c.wordType})},"Personal Reference",2)])])):(0,n.kq)("",!0)]),(0,n._)("div",A,["4"==c.langVer?((0,n.wg)(),(0,n.j4)(b,{key:0,ref:"4",onModal:u.openModal,onGEmit:t[22]||(t[22]=e=>c.gOptions=JSON.parse(JSON.stringify(e))),onIthkword:t[23]||(t[23]=e=>{c.ithkword=e[0],c.ipa=e[1],c.gloss=e[2],c.fullGloss=e[3],c.sentence[c.selectedWord]=JSON.parse(JSON.stringify([c.ithkword,c.gOptions,c.wordType,c.sentence[c.selectedWord][3]]))}),listenModal:c.modalListen,listenWordtype:c.wordType,listenWord:c.gSOptions,selectedWord:c.selectedWord,sLength:c.sentence.length,nextWord:this.sentence[c.selectedWord+1]},null,8,["onModal","listenModal","listenWordtype","listenWord","selectedWord","sLength","nextWord"])):(0,n.kq)("",!0),"3"==c.langVer?((0,n.wg)(),(0,n.j4)(S,{key:1,ref:"3",onModal:u.openModal,onGEmit:t[24]||(t[24]=e=>c.gOptions=JSON.parse(JSON.stringify(e))),onIthkword:t[25]||(t[25]=e=>{c.ithkword=e[0],c.ipa=e[1],c.gloss=e[2],c.fullGloss=e[3],c.sentence[c.selectedWord]=JSON.parse(JSON.stringify([c.ithkword,c.gOptions,c.wordType,c.sentence[c.selectedWord][3]]))}),listenModal:c.modalListen,listenWord:c.gSOptions,listenWordtype:c.wordType},null,8,["onModal","listenModal","listenWord","listenWordtype"])):(0,n.kq)("",!0)]),(0,n._)("div",k,[(0,n._)("p",null,[(0,n._)("span",E,[(0,n._)("b",null,(0,o.zw)(c.ithkword),1)]),D,(0,n._)("span",j,[(0,n.Uk)("["+(0,o.zw)(c.ipa)+"]",1),P,(0,n._)("span",{title:c.fullGloss},(0,o.zw)(c.gloss),9,N)])])]),(0,n._)("div",{id:"modal",class:"modal",onClick:t[40]||(t[40]=(0,i.iM)((e=>u.closeModal()),["self"]))},[(0,n._)("div",R,[(0,n._)("div",V,[((0,n.wg)(!0),(0,n.iD)(n.HY,null,(0,n.Ko)(c.modalTabs,(e=>((0,n.wg)(),(0,n.iD)("button",{key:e,class:(0,o.C_)({active:e===c.modalID}),onClick:t=>{u.closeModal(),u.openModal(e)}},(0,o.zw)(this.$refs[c.langVer].gData[isNaN(e.slice(-1))?e:e.slice(0,-1)].title),11,W)))),128)),"share"==c.modalID?((0,n.wg)(),(0,n.iD)("button",{key:0,onClick:t[26]||(t[26]=e=>u.notAvailableAlert("Sharing sentences via hyperlink"))},"Create Hyperlink")):(0,n.kq)("",!0),"share"==c.modalID?((0,n.wg)(),(0,n.iD)("button",{key:1,onClick:t[27]||(t[27]=e=>u.copytoCB(u.concatenateSentence(c.sentence)))},"Copy to Clipboard")):(0,n.kq)("",!0),(0,n._)("span",{class:"close",onClick:t[28]||(t[28]=e=>u.closeModal())},"×")]),(0,n._)("div",{class:(0,o.C_)({hidden:"settings"!=c.modalID}),style:{"padding-left":"20px","padding-right":"20px","padding-bottom":"20px"}},[_,((0,n.wg)(!0),(0,n.iD)(n.HY,null,(0,n.Ko)(Object.keys(c.settingsClone),(e=>((0,n.wg)(),(0,n.iD)("div",{key:e},[(0,n._)("h3",null,(0,o.zw)(e),1),((0,n.wg)(!0),(0,n.iD)(n.HY,null,(0,n.Ko)(Object.keys(c.settingsClone[e]),(s=>((0,n.wg)(),(0,n.iD)("span",{key:s},[(0,n._)("label",null,(0,o.zw)(c.settingsClone[e][s][0]),1),c.settingsClone[e][s].length>2?(0,n.wy)(((0,n.wg)(),(0,n.iD)("select",{key:0,"onUpdate:modelValue":t=>this.$refs[c.langVer].settings[e][s][1]=t,onChange:t[29]||(t[29]=e=>this.$refs[c.langVer].handleSendMessage())},[((0,n.wg)(!0),(0,n.iD)(n.HY,null,(0,n.Ko)(c.settingsClone[e][s][2],(e=>((0,n.wg)(),(0,n.iD)("option",{key:e},(0,o.zw)(e),1)))),128))],40,L)),[[i.bM,this.$refs[c.langVer].settings[e][s][1]]]):(0,n.wy)(((0,n.wg)(),(0,n.iD)("input",{key:1,type:"checkbox","onUpdate:modelValue":t=>this.$refs[c.langVer].settings[e][s][1]=t,onChange:t[30]||(t[30]=e=>this.$refs[c.langVer].handleSendMessage())},null,40,U)),[[i.e8,this.$refs[c.langVer].settings[e][s][1]]]),F,z])))),128))])))),128)),G],2),"settings"!=c.modalID&&"share"!=c.modalID?((0,n.wg)(),(0,n.iD)("div",B,[(0,n._)("h2",X,(0,o.zw)(c.modalContent.title),1),(0,n._)("p",{style:{"text-align":"center"},innerHTML:c.modalContent.popupdesc},null,8,q),""==c.modalContent.type?((0,n.wg)(),(0,n.iD)("div",H,[["c","c1","c2"].includes(c.modalID)?((0,n.wg)(),(0,n.iD)("div",J,[(0,n._)("button",{class:"tablinks active",onClick:t[31]||(t[31]=e=>u.changeClassTab("THM","PLM","Allcases")),id:"Allcases"},"All"),(0,n._)("button",{class:"tablinks",onClick:t[32]||(t[32]=e=>u.changeClassTab("THM","IND","Transrelative")),id:"Transrelative"},"Transrelative"),(0,n._)("button",{class:"tablinks",onClick:t[33]||(t[33]=e=>u.changeClassTab("POS","PAR","Appositive")),id:"Appositive"},"Appositive"),(0,n._)("button",{class:"tablinks",onClick:t[34]||(t[34]=e=>u.changeClassTab("APL","CSD","Associative")),id:"Associative"},"Associative"),(0,n._)("button",{class:"tablinks",onClick:t[35]||(t[35]=e=>u.changeClassTab("FUN","SIT","Adverbial")),id:"Adverbial"},"Adverbial"),(0,n._)("button",{class:"tablinks",onClick:t[36]||(t[36]=e=>u.changeClassTab("PRN","RLT","Relational")),id:"Relational"},"Relational"),(0,n._)("button",{class:"tablinks",onClick:t[37]||(t[37]=e=>u.changeClassTab("ACT","VOC","Affinitive")),id:"Affinitive"},"Affinitive"),(0,n._)("button",{class:"tablinks",onClick:t[38]||(t[38]=e=>u.changeClassTab("LOC","PLM","Spatio-Temporal")),id:"Spatio-Temporal"},"Spatio-Temporal")])):(0,n.kq)("",!0),["c","c1","c2"].includes(c.modalID)?((0,n.wg)(),(0,n.iD)("div",$,[((0,n.wg)(!0),(0,n.iD)(n.HY,null,(0,n.Ko)(Object.keys(c.modalContent.options).slice(Object.keys(c.modalContent.options).indexOf(this.casePopupStart),Object.keys(c.modalContent.options).indexOf(this.casePopupEnd)+1),(e=>((0,n.wg)(),(0,n.iD)("div",{key:c.modalContent.options[e]},[(0,n._)("div",{onClick:t=>u.updateFromModal(c.modalID,e),class:(0,o.C_)(["modalOption",{modalSelected:this.$refs[c.langVer].gOptions[c.modalID]==e}])},[(0,n._)("h3",null,(0,o.zw)(c.modalContent.options[e].name)+(0,o.zw)(e!==e.toString().toUpperCase()||["0","1","2","3","4","5","6","7","8","9"].includes(e.toString())?"":" ("+e+")"),1),(0,n._)("p",{innerHTML:c.modalContent.options[e].desc},null,8,K)],10,Y)])))),128))])):((0,n.wg)(!0),(0,n.iD)(n.HY,{key:2},(0,n.Ko)(Object.keys(c.modalContent.options),(e=>((0,n.wg)(),(0,n.iD)("div",{key:c.modalContent.options[e]},[(0,n._)("div",{onClick:t=>u.updateFromModal(c.modalID,e),class:(0,o.C_)(["modalOption",{modalSelected:this.$refs[c.langVer].gOptions[c.modalID]==e}]),style:(0,o.j5)(c.modalContent.options[e].image?"min-height:170px;":"")},[c.modalContent.options[e].image?((0,n.wg)(),(0,n.iD)("img",{key:0,src:c.modalContent.options[e].image,alt:c.modalContent.options[e].name,style:{float:"right",height:"150px","padding-top":"10px","padding-left":"10px","padding-bottom":"10px"}},null,8,Z)):(0,n.kq)("",!0),(0,n._)("h3",null,(0,o.zw)(c.modalContent.options[e].name)+(0,o.zw)(e!==e.toString().toUpperCase()||["0","1","2","3","4","5","6","7","8","9"].includes(e.toString())?"":" ("+e+")"),1),(0,n._)("p",{innerHTML:c.modalContent.options[e].desc},null,8,ee)],14,Q)])))),128))])):(0,n.kq)("",!0)])):"share"==c.modalID?((0,n.wg)(),(0,n.iD)("div",te,[se,ie,ne,(0,n._)("h1",oe,(0,o.zw)(u.concatenateSentence(c.sentence)),1),ae,le])):(0,n.kq)("",!0)]),(0,n._)("button",{id:"modalToTop",onClick:t[39]||(t[39]=(...e)=>u.scrollToTop&&u.scrollToTop(...e)),class:(0,o.C_)({hidden:"share"==c.modalID})},"↑",2)]),(0,n._)("div",re,[(0,n._)("div",he,[(0,n._)("span",{class:"close",onClick:t[41]||(t[41]=e=>u.closeNav()),style:{transform:"translateY(-20px)"}},"×"),ce]),(0,n._)("div",de,[((0,n.wg)(!0),(0,n.iD)(n.HY,null,(0,n.Ko)(c.sentence,((e,s)=>((0,n.wg)(),(0,n.iD)("div",{key:s,class:(0,o.C_)(["sentWord noSelecting",{active:c.selectedWord==s,deletable:c.deleteWordMode,dragging:c.draggedWord===s}]),onClick:e=>u.switchWord(s),onMouseover:e=>u.hoverChange(s),onMouseleave:t[43]||(t[43]=e=>c.hovering=null),onMousemove:e=>u.beginDrag(s),onTouchstart:e=>u.beginDrag(s)},[(0,n._)("p",null,[(0,n._)("b",null,(0,o.zw)(e[0]),1)]),(0,n.wy)((0,n._)("textarea",{placeholder:"Description...","onUpdate:modelValue":e=>c.sentence[s][3]=e,onInput:t[42]||(t[42]=(...e)=>u.resizeTA&&u.resizeTA(...e)),rows:"1",class:"ta"},null,40,ue),[[i.nr,c.sentence[s][3]]]),fe],42,pe)))),128))]),(0,n._)("div",ge,[(0,n._)("input",{type:"file",onChange:t[44]||(t[44]=(...e)=>u.uploadJSON&&u.uploadJSON(...e)),accept:".json",id:"fimport",class:"hidden"},null,32),(0,n._)("button",{title:"Add New Word",onClick:t[45]||(t[45]=e=>this.sentence.push(JSON.parse(JSON.stringify([this.$refs[c.langVer].defaultWord,this.$refs[c.langVer].gDefault,"normal",""]))))},be),(0,n._)("button",{title:"Save",onClick:t[46]||(t[46]=e=>u.exportToJsonFile(c.sentence))},ye),(0,n._)("button",{title:"Import",onClick:t[47]||(t[47]=(0,i.iM)((e=>u.openFileDialog()),["self"]))},Se),(0,n._)("button",{title:"Export/Share",onClick:t[48]||(t[48]=e=>{u.openModal("share"),u.closeNav()})},Te),(0,n._)("button",{title:"Delete Words",onClick:t[49]||(t[49]=e=>c.deleteWordMode=!c.deleteWordMode),class:(0,o.C_)({active:c.deleteWordMode})},[(0,n._)("i",{class:(0,o.C_)(c.deleteWordMode?"fa-solid fa-check fa-xl":"fa-solid fa-trash-can fa-xl")},null,2)],2)])])],64)}var Ce=s(51),Ie=s.n(Ce);const xe=(0,n.uE)('

Ithkapp (hwirbuvie-ekţgyil)

Compatible with the version of New Ithkuil on ithkuil.net.
Definitions are a combination of taken from the old Ithkuil III site, taken from the New Ithkuil website, and (occasionally) written by the creator of this site.
All past and current forms of Ithkuil and all official documentation are by John Quijada.
Click on a box's title to learn more about what it means.

',2),Ae=(0,n._)("h2",{style:{width:"100%"}},"Configuration",-1),ke=(0,n._)("h2",{style:{width:"100%"}},"Slot II",-1),Ee=(0,n._)("h2",{style:{width:"100%"}},"Slot III",-1),De=(0,n._)("h2",{style:{width:"100%"}},"Slot IV",-1);function je(e,t,s,i,a,l){const r=(0,n.up)("OptionBox");return(0,n.wg)(),(0,n.iD)("div",null,[xe,(0,n._)("div",{class:(0,o.C_)(["section",{hidden:["suppletive","affixjunct","register","modular","bias","free"].includes(a.wordType)}])},[(0,n.Wm)(r,{json:a.gData.affRoot,class:(0,o.C_)({hidden:"affRoot"!=a.wordType}),code:"affRoot",onSendMessage:l.handleSendMessage,ref:"affRoot",onModal:l.openModal,length:"6",whitelist:Object.keys(this.cData).concat(["ṭ","ŧ","ḍ","đ","ņ","ṇ","ŗ","ṛ","ł","ḷ","ż"])},null,8,["json","class","onSendMessage","onModal","whitelist"]),(0,n.Wm)(r,{json:a.gData.arDegree,class:(0,o.C_)({hidden:"affRoot"!=a.wordType}),code:"arDegree",onSendMessage:l.handleSendMessage,ref:"arDegree",onModal:l.openModal},null,8,["json","class","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.ref,class:(0,o.C_)({hidden:!["refRoot","ref","refCS"].includes(a.wordType)}),code:"ref",onSendMessage:l.handleSendMessage,ref:"ref",onModal:l.openModal},null,8,["json","class","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.refEff,class:(0,o.C_)({hidden:!["refRoot","ref","refCS"].includes(a.wordType)}),code:"refEff",onSendMessage:l.handleSendMessage,ref:"refEff",onModal:l.openModal},null,8,["json","class","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.refPersp,class:(0,o.C_)({hidden:!["refRoot","ref","refCS"].includes(a.wordType)}),code:"refPersp",onSendMessage:l.handleSendMessage,ref:"refPersp",onModal:l.openModal},null,8,["json","class","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.c,class:(0,o.C_)({hidden:"ref"!=a.wordType&&"refCS"!=a.wordType}),code:"c1",onSendMessage:l.handleSendMessage,ref:"c1",onModal:l.openModal},null,8,["json","class","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.root,class:(0,o.C_)({hidden:["affRoot","refRoot","ref","refCS"].includes(a.wordType)}),code:"root",onSendMessage:l.handleSendMessage,ref:"root",onModal:l.openModal,length:"6",whitelist:Object.keys(this.cData).concat(["ṭ","ŧ","ḍ","đ","ņ","ṇ","ŗ","ṛ","ł","ḷ","ż"])},null,8,["json","class","onSendMessage","onModal","whitelist"]),(0,n.Wm)(r,{json:a.gData.stem,class:(0,o.C_)({hidden:["affRoot","refRoot","ref","refCS"].includes(a.wordType)}),code:"stem",onSendMessage:l.handleSendMessage,ref:"stem",onModal:l.openModal},null,8,["json","class","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.spec,class:(0,o.C_)({hidden:"ref"==a.wordType||"affRoot"==a.wordType}),code:"spec",onSendMessage:l.handleSendMessage,ref:"spec",onModal:l.openModal},null,8,["json","class","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.func,class:(0,o.C_)({hidden:"ref"==a.wordType||"refCS"==a.wordType}),code:"func",onSendMessage:l.handleSendMessage,ref:"func",onModal:l.openModal},null,8,["json","class","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.ver,class:(0,o.C_)({hidden:"ref"==a.wordType||"refCS"==a.wordType}),code:"ver",onSendMessage:l.handleSendMessage,ref:"ver",onModal:l.openModal},null,8,["json","class","onSendMessage","onModal"])],2),(0,n._)("div",{class:(0,o.C_)(["section",{hidden:["suppletive","affixjunct","register","modular","ref","refCS","bias","free"].includes(a.wordType)}])},[(0,n.Wm)(r,{json:a.gData.shcut,code:"shcut",onSendMessage:l.handleSendMessage,ref:"shcut",onModal:l.openModal},null,8,["json","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.concat,code:"concat",onSendMessage:l.handleSendMessage,ref:"concat",onModal:l.openModal},null,8,["json","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.rel,code:"rel",onSendMessage:l.handleSendMessage,ref:"rel",onModal:l.openModal,disabled:"0"!=this.gOptions.concat},null,8,["json","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.Vafx,code:"Vafx",onSendMessage:l.handleSendMessage,type:"affix",ref:"Vafx",onModal:l.openModal,whitelist:Object.keys(this.cData).concat(["ṭ","ŧ","ḍ","đ","ņ","ṇ","ŗ","ṛ","ł","ḷ","ż"]),aff6:l.calculateSlot6},null,8,["json","onSendMessage","onModal","whitelist","aff6"]),(0,n.Wm)(r,{json:a.gData.VIIafx,code:"VIIafx",onSendMessage:l.handleSendMessage,type:"affix",ref:"VIIafx",onModal:l.openModal,whitelist:Object.keys(this.cData).concat(["ṭ","ŧ","ḍ","đ","ņ","ṇ","ŗ","ṛ","ł","ḷ","ż"]),aff6:l.calculateSlot6},null,8,["json","onSendMessage","onModal","whitelist","aff6"])],2),(0,n._)("div",{class:(0,o.C_)(["section",{hidden:["suppletive","affixjunct","register","modular","ref","refCS","bias","free"].includes(a.wordType)}])},[Ae,(0,n.Wm)(r,{json:a.gData.plex,code:"plex",onSendMessage:l.handleSendMessage,ref:"plex",onModal:l.openModal},null,8,["json","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.simil,code:"simil",onSendMessage:l.handleSendMessage,disabled:["UPX","DPX"].includes(this.gOptions.plex),ref:"simil",onModal:l.openModal},null,8,["json","onSendMessage","disabled","onModal"]),(0,n.Wm)(r,{json:a.gData.cctd,code:"cctd",onSendMessage:l.handleSendMessage,disabled:["UPX","DPX"].includes(this.gOptions.plex),ref:"cctd",onModal:l.openModal},null,8,["json","onSendMessage","disabled","onModal"])],2),(0,n._)("div",{class:(0,o.C_)(["section",{hidden:["suppletive","affixjunct","register","modular","ref","refCS","bias","free"].includes(a.wordType)}])},[(0,n.Wm)(r,{json:a.gData.affil,code:"affil",onSendMessage:l.handleSendMessage,ref:"affil",onModal:l.openModal},null,8,["json","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.ext,code:"ext",onSendMessage:l.handleSendMessage,ref:"ext",onModal:l.openModal},null,8,["json","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.persp,code:"persp",onSendMessage:l.handleSendMessage,ref:"persp",onModal:l.openModal},null,8,["json","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.ess,code:"ess",onSendMessage:l.handleSendMessage,ref:"ess",onModal:l.openModal},null,8,["json","onSendMessage","onModal"])],2),(0,n._)("div",{class:(0,o.C_)(["section",{hidden:"modular"!=a.wordType}])},[(0,n.Wm)(r,{json:a.gData.modAppliesTo,code:"modAppliesTo",onSendMessage:l.handleSendMessage,ref:"modAppliesTo",onModal:l.openModal},null,8,["json","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.modNumber,code:"modNumber",onSendMessage:l.handleSendMessage,ref:"modNumber",onModal:l.openModal},null,8,["json","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.cn,code:"cn",onSendMessage:l.handleSendMessage,ref:"cn",onModal:l.openModal},null,8,["json","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.mood,code:"mood2",onSendMessage:l.handleSendMessage,ref:"mood2",onModal:l.openModal,class:(0,o.C_)({hidden:"mood"!=this.gOptions.cn})},null,8,["json","onSendMessage","onModal","class"]),(0,n.Wm)(r,{json:a.gData.casc,code:"casc2",onSendMessage:l.handleSendMessage,ref:"casc2",onModal:l.openModal,class:(0,o.C_)({hidden:"casc"!=this.gOptions.cn})},null,8,["json","onSendMessage","onModal","class"])],2),(0,n._)("div",{class:(0,o.C_)(["section",{hidden:"modular"!=a.wordType||"modular"==a.wordType&&!["2","3"].includes(a.gOptions.modNumber)}])},[ke,(0,n.Wm)(r,{json:a.gData.vn,code:"vn2",onSendMessage:l.handleSendMessage,ref:"vn2",onModal:l.openModal},null,8,["json","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.val,code:"val2",onSendMessage:l.handleSendMessage,ref:"val2",onModal:l.openModal,disabled:"val"!=this.gOptions.vn2},null,8,["json","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.pha,code:"pha2",onSendMessage:l.handleSendMessage,ref:"pha2",onModal:l.openModal,disabled:"pha"!=this.gOptions.vn2},null,8,["json","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.eff,code:"eff2",onSendMessage:l.handleSendMessage,ref:"eff2",onModal:l.openModal,disabled:"eff"!=this.gOptions.vn2},null,8,["json","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.lvl,code:"lvl2",onSendMessage:l.handleSendMessage,ref:"lvl2",onModal:l.openModal,disabled:"lvl"!=this.gOptions.vn2},null,8,["json","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.asp,code:"asp2",onSendMessage:l.handleSendMessage,ref:"asp2",onModal:l.openModal,disabled:"asp"!=this.gOptions.vn2},null,8,["json","onSendMessage","onModal","disabled"])],2),(0,n._)("div",{class:(0,o.C_)(["section",{hidden:"modular"!=a.wordType||"modular"==a.wordType&&"3"!=a.gOptions.modNumber}])},[Ee,(0,n.Wm)(r,{json:a.gData.vn,code:"vn3",onSendMessage:l.handleSendMessage,ref:"vn3",onModal:l.openModal},null,8,["json","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.val,code:"val3",onSendMessage:l.handleSendMessage,ref:"val3",onModal:l.openModal,disabled:"val"!=this.gOptions.vn3},null,8,["json","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.pha,code:"pha3",onSendMessage:l.handleSendMessage,ref:"pha3",onModal:l.openModal,disabled:"pha"!=this.gOptions.vn3},null,8,["json","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.eff,code:"eff3",onSendMessage:l.handleSendMessage,ref:"eff3",onModal:l.openModal,disabled:"eff"!=this.gOptions.vn3},null,8,["json","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.lvl,code:"lvl3",onSendMessage:l.handleSendMessage,ref:"lvl3",onModal:l.openModal,disabled:"lvl"!=this.gOptions.vn3},null,8,["json","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.asp,code:"asp3",onSendMessage:l.handleSendMessage,ref:"asp3",onModal:l.openModal,disabled:"asp"!=this.gOptions.vn3},null,8,["json","onSendMessage","onModal","disabled"])],2),(0,n._)("div",{class:(0,o.C_)(["section",{hidden:"modular"!=a.wordType}])},[De,(0,n.Wm)(r,{json:a.gData.vh,code:"vh",onSendMessage:l.handleSendMessage,ref:"vh",onModal:l.openModal,class:(0,o.C_)({hidden:"modular"!=this.wordType}),disabled:"1"==this.gOptions.modNumber},null,8,["json","onSendMessage","onModal","class","disabled"]),(0,n.Wm)(r,{json:a.gData.modScope,code:"modScope",onSendMessage:l.handleSendMessage,ref:"modScope",onModal:l.openModal,class:(0,o.C_)({hidden:"modular"!=this.wordType||"1"==this.gOptions.modNumber||"vn"==this.gOptions.vh})},null,8,["json","onSendMessage","onModal","class"]),(0,n.Wm)(r,{json:a.gData.v4n,code:"v4n",onSendMessage:l.handleSendMessage,ref:"v4n",onModal:l.openModal,class:(0,o.C_)({hidden:"vn"!=this.gOptions.vh||"1"==this.gOptions.modNumber})},null,8,["json","onSendMessage","onModal","class"]),(0,n.Wm)(r,{json:a.gData.val,code:"val4",onSendMessage:l.handleSendMessage,ref:"val4",onModal:l.openModal,disabled:"val"!=this.gOptions.v4n,class:(0,o.C_)({hidden:"vn"!=this.gOptions.vh||"1"==this.gOptions.modNumber})},null,8,["json","onSendMessage","onModal","disabled","class"]),(0,n.Wm)(r,{json:a.gData.pha,code:"pha4",onSendMessage:l.handleSendMessage,ref:"pha4",onModal:l.openModal,disabled:"pha"!=this.gOptions.v4n,class:(0,o.C_)({hidden:"vn"!=this.gOptions.vh||"1"==this.gOptions.modNumber})},null,8,["json","onSendMessage","onModal","disabled","class"]),(0,n.Wm)(r,{json:a.gData.eff,code:"eff4",onSendMessage:l.handleSendMessage,ref:"eff4",onModal:l.openModal,disabled:"eff"!=this.gOptions.v4n,class:(0,o.C_)({hidden:"vn"!=this.gOptions.vh||"1"==this.gOptions.modNumber})},null,8,["json","onSendMessage","onModal","disabled","class"]),(0,n.Wm)(r,{json:a.gData.lvl,code:"lvl4",onSendMessage:l.handleSendMessage,ref:"lvl4",onModal:l.openModal,disabled:"lvl"!=this.gOptions.v4n,class:(0,o.C_)({hidden:"vn"!=this.gOptions.vh||"1"==this.gOptions.modNumber})},null,8,["json","onSendMessage","onModal","disabled","class"]),(0,n.Wm)(r,{json:a.gData.asp,code:"asp4",onSendMessage:l.handleSendMessage,ref:"asp4",onModal:l.openModal,class:(0,o.C_)({hidden:"1"!=this.gOptions.modNumber})},null,8,["json","onSendMessage","onModal","class"])],2),(0,n._)("div",{class:(0,o.C_)(["section",{hidden:["suppletive","affixjunct","register","modular","ref","refCS","bias","free"].includes(a.wordType)}])},[(0,n.Wm)(r,{json:a.gData.vn,code:"vn",onSendMessage:l.handleSendMessage,ref:"vn",onModal:l.openModal},null,8,["json","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.val,code:"val",onSendMessage:l.handleSendMessage,ref:"val",onModal:l.openModal,disabled:"val"!=this.gOptions.vn},null,8,["json","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.pha,code:"pha",onSendMessage:l.handleSendMessage,ref:"pha",onModal:l.openModal,disabled:"pha"!=this.gOptions.vn},null,8,["json","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.eff,code:"eff",onSendMessage:l.handleSendMessage,ref:"eff",onModal:l.openModal,disabled:"eff"!=this.gOptions.vn},null,8,["json","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.lvl,code:"lvl",onSendMessage:l.handleSendMessage,ref:"lvl",onModal:l.openModal,disabled:"lvl"!=this.gOptions.vn},null,8,["json","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.asp,code:"asp",onSendMessage:l.handleSendMessage,ref:"asp",onModal:l.openModal,disabled:"asp"!=this.gOptions.vn},null,8,["json","onSendMessage","onModal","disabled"])],2),(0,n._)("div",{class:(0,o.C_)(["section",{hidden:["affixjunct","register","modular","ref","refCS","bias","free"].includes(a.wordType)}])},[(0,n.Wm)(r,{class:(0,o.C_)({hidden:"suppletive"!=a.wordType}),json:a.gData.suppType,code:"suppType",onSendMessage:l.handleSendMessage,ref:"suppType",onModal:l.openModal},null,8,["class","json","onSendMessage","onModal"]),(0,n.Wm)(r,{class:(0,o.C_)({hidden:"suppletive"==a.wordType}),json:a.gData.ctxt,code:"ctxt",onSendMessage:l.handleSendMessage,ref:"ctxt",onModal:l.openModal},null,8,["class","json","onSendMessage","onModal"]),(0,n.Wm)(r,{class:(0,o.C_)({hidden:"suppletive"==a.wordType}),show:!a.cascOrMood,json:a.gData.mood,code:"mood",onSendMessage:l.handleSendMessage,ref:"mood",onModal:l.openModal},null,8,["class","show","json","onSendMessage","onModal"]),(0,n.Wm)(r,{class:(0,o.C_)({hidden:"suppletive"==a.wordType}),show:a.cascOrMood,json:a.gData.casc,code:"casc",onSendMessage:l.handleSendMessage,ref:"casc",onModal:l.openModal},null,8,["class","show","json","onSendMessage","onModal"]),(0,n.Wm)(r,{show:a.cascOrMood,json:a.gData.c,code:"c",onSendMessage:l.handleSendMessage,ref:"c",onModal:l.openModal},null,8,["show","json","onSendMessage","onModal"]),(0,n.Wm)(r,{class:(0,o.C_)({hidden:"suppletive"==a.wordType}),show:!a.cascOrMood,json:a.gData.ill,code:"ill",onSendMessage:l.handleSendMessage,ref:"ill",onModal:l.openModal},null,8,["class","show","json","onSendMessage","onModal"]),(0,n.Wm)(r,{class:(0,o.C_)({hidden:"suppletive"==a.wordType}),show:!a.cascOrMood,json:a.gData.vld,code:"vld",onSendMessage:l.handleSendMessage,disabled:"ASR"!=this.gOptions.ill,ref:"vld",onModal:l.openModal},null,8,["class","show","json","onSendMessage","disabled","onModal"])],2),(0,n._)("div",{class:(0,o.C_)(["section",{hidden:"affixjunct"!=a.wordType}])},[(0,n.Wm)(r,{json:a.gData.affixjunct,code:"affixjunct",onSendMessage:l.handleSendMessage,ref:"affixjunct",onModal:l.openModal,reqAff:!0,whitelist:Object.keys(this.cData).concat(["ṭ","ŧ","ḍ","đ","ņ","ṇ","ŗ","ṛ","ł","ḷ","ż"]),aff6:l.calculateSlot6},null,8,["json","onSendMessage","onModal","whitelist","aff6"]),(0,n.Wm)(r,{json:a.gData.initialAffScope,code:"initialAffScope",onSendMessage:l.handleSendMessage,ref:"initialAffScope",onModal:l.openModal},null,8,["json","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.otherAffScope,code:"otherAffScope",onSendMessage:l.handleSendMessage,ref:"otherAffScope",onModal:l.openModal,disabled:this.gOptions.affixjunct.length<2},null,8,["json","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.affScopeOf,code:"affScopeOf",onSendMessage:l.handleSendMessage,ref:"affScopeOf",onModal:l.openModal},null,8,["json","onSendMessage","onModal"])],2),(0,n._)("div",{class:(0,o.C_)(["section",{hidden:"register"!=a.wordType}])},[(0,n.Wm)(r,{json:a.gData.register,code:"register",onSendMessage:l.handleSendMessage,ref:"register",onModal:l.openModal},null,8,["json","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.regStartOrEnd,code:"regStartOrEnd",onSendMessage:l.handleSendMessage,ref:"regStartOrEnd",onModal:l.openModal,disabled:"END"==this.gOptions.register},null,8,["json","onSendMessage","onModal","disabled"])],2),(0,n._)("div",{class:(0,o.C_)(["section",{hidden:"ref"!=a.wordType&&"refCS"!=a.wordType}])},[(0,n.Wm)(r,{json:a.gData.refAffix,class:(0,o.C_)({hidden:"refCS"!=a.wordType}),code:"refAffix",onSendMessage:l.handleSendMessage,ref:"refAffix",onModal:l.openModal,whitelist:Object.keys(this.cData).concat(["ṭ","ŧ","ḍ","đ","ņ","ṇ","ŗ","ṛ","ł","ḷ","ż"]),aff6:l.calculateSlot6},null,8,["json","class","onSendMessage","onModal","whitelist","aff6"]),(0,n.Wm)(r,{json:a.gData.twoCs,code:"twoCs",onSendMessage:l.handleSendMessage,ref:"twoCs",onModal:l.openModal},null,8,["json","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.twoRefs,class:(0,o.C_)({hidden:"refCS"==a.wordType}),code:"twoRefs",onSendMessage:l.handleSendMessage,ref:"twoRefs",onModal:l.openModal,disabled:!this.gOptions.twoCs},null,8,["json","class","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.ref,code:"ref2",class:(0,o.C_)({hidden:"refCS"==a.wordType}),onSendMessage:l.handleSendMessage,ref:"ref2",onModal:l.openModal,disabled:!this.gOptions.twoRefs||!this.gOptions.twoCs},null,8,["json","class","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.refEff,code:"refEff2",class:(0,o.C_)({hidden:"refCS"==a.wordType}),onSendMessage:l.handleSendMessage,ref:"refEff2",onModal:l.openModal,disabled:!this.gOptions.twoRefs||!this.gOptions.twoCs},null,8,["json","class","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.refPersp,code:"refPersp2",class:(0,o.C_)({hidden:"refCS"==a.wordType}),onSendMessage:l.handleSendMessage,ref:"refPersp2",onModal:l.openModal,disabled:!this.gOptions.twoRefs||!this.gOptions.twoCs},null,8,["json","class","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.c,code:"c2",onSendMessage:l.handleSendMessage,ref:"c2",onModal:l.openModal,disabled:!this.gOptions.twoCs},null,8,["json","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.ess,code:"ess2",onSendMessage:l.handleSendMessage,ref:"ess2",onModal:l.openModal},null,8,["json","onSendMessage","onModal"])],2),(0,n._)("div",{class:(0,o.C_)(["section",{hidden:"bias"!=a.wordType}])},[(0,n.Wm)(r,{json:a.gData.bias,code:"bias",onSendMessage:l.handleSendMessage,ref:"bias",onModal:l.openModal},null,8,["json","onSendMessage","onModal"])],2),(0,n._)("div",{class:(0,o.C_)(["section",{hidden:"free"!=a.wordType}])},[(0,n.Wm)(r,{json:a.gData.freeType,code:"freeType",ref:"freeType",onSendMessage:l.handleSendMessage,onModal:l.openModal},null,8,["json","onSendMessage","onModal"])],2)])}const Pe=e=>((0,n.dD)("data-v-4abae525"),e=e(),(0,n.Cn)(),e),Ne=["title"],Re=["maxlength"],Ve={key:1},We=["disabled"],_e={key:2},Le=["onUpdate:modelValue","id"],Ue=["onInput","id"],Fe=Pe((()=>(0,n._)("option",null,"UPX",-1))),ze=Pe((()=>(0,n._)("option",null,"DPX",-1))),Ge=Pe((()=>(0,n._)("option",null,"D",-1))),Be=Pe((()=>(0,n._)("option",null,"M",-1))),Xe=[Fe,ze,Ge,Be],qe=["onInput","id","disabled"],He=Pe((()=>(0,n._)("option",null,"S",-1))),Je=Pe((()=>(0,n._)("option",null,"D",-1))),$e=Pe((()=>(0,n._)("option",null,"F",-1))),Ye=[He,Je,$e],Ke=["onInput","id","disabled"],Qe=Pe((()=>(0,n._)("option",null,"S",-1))),Ze=Pe((()=>(0,n._)("option",null,"C",-1))),et=Pe((()=>(0,n._)("option",null,"F",-1))),tt=[Qe,Ze,et],st=["onInput","id"],it=Pe((()=>(0,n._)("option",null,"CSL",-1))),nt=Pe((()=>(0,n._)("option",null,"ASO",-1))),ot=Pe((()=>(0,n._)("option",null,"COA",-1))),at=Pe((()=>(0,n._)("option",null,"VAR",-1))),lt=[it,nt,ot,at],rt=["onInput","id"],ht=Pe((()=>(0,n._)("option",null,"DEL",-1))),ct=Pe((()=>(0,n._)("option",null,"PRX",-1))),dt=Pe((()=>(0,n._)("option",null,"ICP",-1))),pt=Pe((()=>(0,n._)("option",null,"ATV",-1))),ut=Pe((()=>(0,n._)("option",null,"GRA",-1))),ft=Pe((()=>(0,n._)("option",null,"DPL",-1))),gt=[ht,ct,dt,pt,ut,ft],mt=["onInput","id"],bt=Pe((()=>(0,n._)("option",null,"M",-1))),wt=Pe((()=>(0,n._)("option",null,"G",-1))),yt=Pe((()=>(0,n._)("option",null,"N",-1))),vt=Pe((()=>(0,n._)("option",null,"A",-1))),St=[bt,wt,yt,vt],Mt=["onInput","id"],Tt=Pe((()=>(0,n._)("option",null,"NRM",-1))),Ot=Pe((()=>(0,n._)("option",null,"RPV",-1))),Ct=[Tt,Ot],It=["onUpdate:modelValue","id"],xt={key:1,value:1},At={key:2,value:2},kt={key:3,value:3},Et={key:4,value:4},Dt={key:5,value:5},jt={key:6,value:6},Pt={key:7,value:7},Nt={key:8,value:8},Rt={key:9,value:9},Vt={key:0,value:0},Wt=["onClick"],_t=["onUpdate:modelValue","id"],Lt={value:1},Ut={value:2},Ft={value:3},zt={value:4},Gt=["disabled","id"],Bt=["value"],Xt={key:4},qt=Pe((()=>(0,n._)("b",null,"ERROR:",-1))),Ht=(0,n.Uk)(" Empty affixes"),Jt=[qt,Ht],$t={key:5},Yt=Pe((()=>(0,n._)("b",null,"ERROR:",-1))),Kt=(0,n.Uk)(" Affixes are required"),Qt=[Yt,Kt],Zt={key:6},es=Pe((()=>(0,n._)("b",null,"ERROR:",-1))),ts=(0,n.Uk)(" Empty text"),ss=[es,ts],is={key:7},ns=Pe((()=>(0,n._)("b",null,"ERROR:",-1))),os=(0,n.Uk)(" Non-allowed characters"),as=[ns,os],ls={key:8};function rs(e,t,s,a,l,r){return(0,n.wg)(),(0,n.iD)("div",{class:(0,o.C_)(["optionbox",r.OBclass])},[(0,n._)("h3",{onClick:t[0]||(t[0]=(0,i.iM)((e=>this.$emit("modal",s.code)),["self"])),title:"Learn more about "+s.json.title},(0,o.zw)(s.json.title),9,Ne),"text"==s.json.type?(0,n.wy)(((0,n.wg)(),(0,n.iD)("input",{key:0,"onUpdate:modelValue":t[1]||(t[1]=e=>l.text=e),onInput:t[2]||(t[2]=e=>this.$emit("send-message",l.text,s.code)),placeholder:"Enter...",maxlength:s.length},null,40,Re)),[[i.nr,l.text]]):"checkbox"==s.json.type?((0,n.wg)(),(0,n.iD)("div",Ve,[(0,n.wy)((0,n._)("input",{type:"checkbox","onUpdate:modelValue":t[3]||(t[3]=e=>l.option=e),onChange:t[4]||(t[4]=e=>this.$emit("send-message",l.option,s.code)),disabled:s.disabled},null,40,We),[[i.e8,l.option]])])):"affix"==s.json.type?((0,n.wg)(),(0,n.iD)("div",_e,[((0,n.wg)(!0),(0,n.iD)(n.HY,null,(0,n.Ko)(l.affixes,((e,a)=>((0,n.wg)(),(0,n.iD)("div",{key:e},[(0,n.wy)((0,n._)("input",{"onUpdate:modelValue":e=>l.affixes[a][0]=e,onInput:t[5]||(t[5]=e=>this.$emit("send-message",l.affixes,s.code)),placeholder:"Enter...",maxlength:"5",id:s.code+"affW"+a,class:(0,o.C_)({hidden:"CA"==l.affixes[a][1]})},null,42,Le),[[i.nr,l.affixes[a][0]]]),(0,n.wy)((0,n._)("select",{"onUpdate:modelValue":t[6]||(t[6]=e=>l.plex=e),onInput:e=>this.calc6(a),style:(0,o.j5)("CA"!=l.affixes[a][1]?"display:none":"display:inline-block"),id:s.code+"plex"+a.toString()},Xe,44,Ue),[[i.bM,l.plex]]),(0,n.wy)((0,n._)("select",{"onUpdate:modelValue":t[7]||(t[7]=e=>l.simil=e),onInput:e=>this.calc6(a),style:(0,o.j5)("CA"!=l.affixes[a][1]?"display:none":"display:inline-block"),id:s.code+"simil"+a.toString(),disabled:"UPX"==l.plex||"DPX"==l.plex},Ye,44,qe),[[i.bM,l.simil]]),(0,n.wy)((0,n._)("select",{"onUpdate:modelValue":t[8]||(t[8]=e=>l.cctd=e),onInput:e=>this.calc6(a),style:(0,o.j5)("CA"!=l.affixes[a][1]?"display:none":"display:inline-block"),id:s.code+"cctd"+a.toString(),disabled:"UPX"==l.plex||"DPX"==l.plex},tt,44,Ke),[[i.bM,l.cctd]]),(0,n.wy)((0,n._)("select",{"onUpdate:modelValue":t[9]||(t[9]=e=>l.affil=e),onInput:e=>this.calc6(a),style:(0,o.j5)("CA"!=l.affixes[a][1]?"display:none":"display:inline-block"),id:s.code+"affil"+a.toString()},lt,44,st),[[i.bM,l.affil]]),(0,n.wy)((0,n._)("select",{"onUpdate:modelValue":t[10]||(t[10]=e=>l.ext=e),onInput:e=>this.calc6(a),style:(0,o.j5)("CA"!=l.affixes[a][1]?"display:none":"display:inline-block"),id:s.code+"ext"+a.toString()},gt,44,rt),[[i.bM,l.ext]]),(0,n.wy)((0,n._)("select",{"onUpdate:modelValue":t[11]||(t[11]=e=>l.persp=e),onInput:e=>this.calc6(a),style:(0,o.j5)("CA"!=l.affixes[a][1]?"display:none":"display:inline-block"),id:s.code+"persp"+a.toString()},St,44,mt),[[i.bM,l.persp]]),(0,n.wy)((0,n._)("select",{"onUpdate:modelValue":t[12]||(t[12]=e=>l.ess=e),onInput:e=>this.calc6(a),style:(0,o.j5)("CA"!=l.affixes[a][1]?"display:none":"display:inline-block"),id:s.code+"ess"+a.toString()},Ct,44,Mt),[[i.bM,l.ess]]),(0,n.wy)((0,n._)("select",{"onUpdate:modelValue":e=>l.affixes[a][1]=e,onInput:t[13]||(t[13]=e=>this.$emit("send-message",l.affixes,s.code)),style:"display:inline-block",id:s.code+"affD"+a.toString()},[((0,n.wg)(),(0,n.iD)("option",xt,(0,o.zw)(["sw","sy","zw","zy","čw","čy","šw","šy","žw","žy","jw","jy","lw","ly"].includes(l.affixes[a][0])?"Deg. 1":4==l.affixes[a][2]?"THM":3==l.affixes[a][2]&&1==l.affixes.length?"POS":"Deg. 1"),1)),((0,n.wg)(),(0,n.iD)("option",At,(0,o.zw)(["sw","sy","zw","zy","čw","čy","šw","šy","žw","žy","jw","jy","lw","ly"].includes(l.affixes[a][0])?"Deg. 2":4==l.affixes[a][2]?"INS":3==l.affixes[a][2]&&1==l.affixes.length?"PRP":"Deg. 2"),1)),((0,n.wg)(),(0,n.iD)("option",kt,(0,o.zw)(["sw","sy","zw","zy","čw","čy","šw","šy","žw","žy","jw","jy","lw","ly"].includes(l.affixes[a][0])?"Deg. 3":4==l.affixes[a][2]?"ABS":3==l.affixes[a][2]&&1==l.affixes.length?"GEN":"Deg. 3"),1)),((0,n.wg)(),(0,n.iD)("option",Et,(0,o.zw)(["sw","sy","zw","zy","čw","čy","šw","šy","žw","žy","jw","jy","lw","ly"].includes(l.affixes[a][0])?"Deg. 4":4==l.affixes[a][2]?"AFF":3==l.affixes[a][2]&&1==l.affixes.length?"ATT":"Deg. 4"),1)),((0,n.wg)(),(0,n.iD)("option",Dt,(0,o.zw)(["sw","sy","zw","zy","čw","čy","šw","šy","žw","žy","jw","jy","lw","ly"].includes(l.affixes[a][0])?"Deg. 5":4==l.affixes[a][2]?"STM":3==l.affixes[a][2]&&1==l.affixes.length?"PDC":"Deg. 5"),1)),((0,n.wg)(),(0,n.iD)("option",jt,(0,o.zw)(["sw","sy","zw","zy","čw","čy","šw","šy","žw","žy","jw","jy","lw","ly"].includes(l.affixes[a][0])?"Deg. 6":4==l.affixes[a][2]?"EFF":3==l.affixes[a][2]&&1==l.affixes.length?"ITP":"Deg. 6"),1)),((0,n.wg)(),(0,n.iD)("option",Pt,(0,o.zw)(["sw","sy","zw","zy","čw","čy","šw","šy","žw","žy","jw","jy","lw","ly"].includes(l.affixes[a][0])?"Deg. 7":4==l.affixes[a][2]?"ERG":3==l.affixes[a][2]&&1==l.affixes.length?"OGN":"Deg. 7"),1)),["sy","zy","čy","šy","žy","jy","ly"].includes(l.affixes[a][0])?(0,n.kq)("",!0):((0,n.wg)(),(0,n.iD)("option",Nt,(0,o.zw)(["sw","sy","zw","zy","čw","čy","šw","šy","žw","žy","jw","jy","lw","ly"].includes(l.affixes[a][0])?"Deg. 8":4==l.affixes[a][2]?"DAT":3==l.affixes[a][2]&&1==l.affixes.length?"IDP":"Deg. 8"),1)),((0,n.wg)(),(0,n.iD)("option",Rt,(0,o.zw)(["sw","sy","zw","zy","čw","čy","šw","šy","žw","žy","jw","jy","lw","ly"].includes(l.affixes[a][0])?"Deg. 9":4==l.affixes[a][2]?"IND":3==l.affixes[a][2]&&1==l.affixes.length?"PAR":"Deg. 9"),1)),["sy","zy","čy","šy","žy","jy","ly"].includes(l.affixes[a][0])||!["sw","sy","zw","zy","čw","čy","šw","šy","žw","žy","jw","jy","lw","ly"].includes(l.affixes[a][0])&&(4==l.affixes[a][2]||3==l.affixes[a][2]&&1==l.affixes.length)?(0,n.kq)("",!0):((0,n.wg)(),(0,n.iD)("option",Vt,"Deg. 0")),(0,n._)("option",{key:"CA",value:"CA",onClick:e=>r.calc6(a)},"Cₐ-stacking",8,Wt)],40,It),[[i.bM,l.affixes[a][1]]]),(0,n.wy)((0,n._)("select",{"onUpdate:modelValue":e=>l.affixes[a][2]=e,onInput:t[14]||(t[14]=e=>this.$emit("send-message",l.affixes,s.code)),style:(0,o.j5)("CA"==l.affixes[a][1]?"display:none":"display:inline-block"),id:s.code+"affT"+a},[(0,n._)("option",Lt,(0,o.zw)(["sw","sy","zw","zy","čw","čy","šw","šy","žw","žy","jw","jy","lw","ly"].includes(l.affixes[a][0])?"Series ":"Type-")+"1",1),(0,n._)("option",Ut,(0,o.zw)(["sw","sy","zw","zy","čw","čy","šw","šy","žw","žy","jw","jy","lw","ly"].includes(l.affixes[a][0])?"Series ":"Type-")+"2",1),(0,n._)("option",Ft,(0,o.zw)(["sw","sy","zw","zy","čw","čy","šw","šy","žw","žy","jw","jy","lw","ly"].includes(l.affixes[a][0])?"Series 3":1==l.affixes.length?"Ref (3)":"Type-3"),1),(0,n._)("option",zt,(0,o.zw)(["sw","sy","zw","zy","čw","čy","šw","šy","žw","žy","jw","jy","lw","ly"].includes(l.affixes[a][0])?"Series 4":"Ref (4)"),1)],44,_t),[[i.bM,l.affixes[a][2]]])])))),128)),(0,n._)("input",{type:"button",value:"Add",onClick:t[15]||(t[15]=e=>{l.affixes.push(["",1,1]),this.$emit("send-message",l.affixes,s.code)})}),(0,n._)("input",{type:"button",value:"Remove",onClick:t[16]||(t[16]=e=>{l.affixes.pop(),this.$emit("send-message",l.affixes,s.code)})})])):(0,n.wy)(((0,n.wg)(),(0,n.iD)("select",{key:3,"onUpdate:modelValue":t[17]||(t[17]=e=>l.option=e),onChange:t[18]||(t[18]=e=>this.$emit("send-message",l.option.toString(),s.code)),disabled:s.disabled,id:s.code},[((0,n.wg)(!0),(0,n.iD)(n.HY,null,(0,n.Ko)(s.json.options,((e,t)=>((0,n.wg)(),(0,n.iD)("option",{key:e.name,value:t},(0,o.zw)(e.name)+" "+(0,o.zw)(t!==t.toString().toUpperCase()||["1","2","3","4","5","6","7","8","9","0"].includes(t)?"":"("+t+")"),9,Bt)))),128))],40,Gt)),[[i.bM,l.option]]),"affix"!=s.json.type||0==this.affixes.length||this.affixes.every((function(e){return""!=e[0]}))?"affix"==s.json.type&&0==this.affixes.length&&s.reqAff?((0,n.wg)(),(0,n.iD)("p",$t,Qt)):"text"==s.json.type&&""==this.text?((0,n.wg)(),(0,n.iD)("p",Zt,ss)):this.$props.whitelist&&("text"==s.json.type&&!this.text.split("").every((e=>this.$props.whitelist.includes(e.toLowerCase())))||"affix"==s.json.type&&0!=this.affixes.length&&!this.affixes.every((e=>e[0].split("").every((e=>this.$props.whitelist.includes(e))))))?((0,n.wg)(),(0,n.iD)("p",is,as)):((0,n.wg)(),(0,n.iD)("p",ls)):((0,n.wg)(),(0,n.iD)("p",Xt,Jt))],2)}var hs={name:"OptionBox",props:{code:String,json:Object,disabled:Boolean,show:Boolean,length:String,whitelist:Array,reqAff:Boolean,aff6:Function},data(){return{text:"",option:null,affixes:[],plex:"UPX",simil:"S",cctd:"S",affil:"CSL",ext:"DEL",persp:"M",ess:"NRM"}},computed:{OBclass(){return{error:"affix"==this.json.type&&0!=this.affixes.length&&(this.$props.whitelist&&!this.affixes.every((function(e){return""!=e[0]}))||!this.affixes.every((e=>e[0].split("").every((e=>this.$props.whitelist.includes(e))))))||"text"==this.json.type&&(""==this.text||this.$props.whitelist&&!this.text.split("").every((e=>this.$props.whitelist.includes(e.toLowerCase()))))||"affix"==this.json.type&&0==this.affixes.length&&this.reqAff,disabledbox:this.disabled,notShown:this.show}}},mounted(){""==this.$props.json.type&&(this.option=Object.keys(this.$props.json.options)[0])},methods:{updateValue(e){if("affix"==this.$props.json.type){this.affixes=e;for(let t in this.affixes)this.waitForElm("#"+this.$props.code+"affW"+t.toString()).then((s=>{s.value=e[t][0]})),this.waitForElm("#"+this.$props.code+"affD"+t.toString()).then((s=>{s.value=e[t][1]})),this.waitForElm("#"+this.$props.code+"affT"+t.toString()).then((s=>{s.value=e[t][2]}));this.$emit("send-message",this.affixes,this.$props.code)}else"text"==this.$props.json.type?(this.text=e,this.$emit("send-message",this.text,this.$props.code)):"checkbox"==this.$props.json.type?(this.option=e,this.$emit("send-message",this.option,this.$props.code)):(console.log("Recieved",e,"in",this.$props.code),Object.keys(this.$props.json.options).includes(e)&&(this.option=e,document.getElementById(this.$props.code).selectedIndex=Object.keys(this.$props.json.options).indexOf(e),this.$emit("send-message",this.option.toString(),this.$props.code)))},calc6(e){let t=document.getElementById(this.code+"affil"+e).value,s=document.getElementById(this.code+"plex"+e).value,i=document.getElementById(this.code+"simil"+e).value,n=document.getElementById(this.code+"cctd"+e).value,o=document.getElementById(this.code+"ext"+e).value,a=document.getElementById(this.code+"ess"+e).value,l=document.getElementById(this.code+"persp"+e).value;this.affixes[e][0]=this.aff6(!0,t,s,i,n,o,a,l),this.$emit("send-message",this.affixes,this.$props.code),this.$emit("send-message",this.affixes,this.$props.code)},waitForElm(e){return new Promise((t=>{if(document.querySelector(e))return t(document.querySelector(e));const s=new MutationObserver((()=>{document.querySelector(e)&&(t(document.querySelector(e)),s.disconnect())}));s.observe(document.body,{childList:!0,subtree:!0})}))}}},cs=s(89);const ds=(0,cs.Z)(hs,[["render",rs],["__scopeId","data-v-4abae525"]]);var ps=ds,us=JSON.parse('{"root":{"type":"text","title":"Root (Slot III)","popupdesc":"The root is the general definition of the word, and can be directly modified by the Stem and Specification. Check the Lexicon for what your word\'s Root, Stem, and Specification should be."},"stem":{"type":"","title":"Stem","options":{"s1":{"name":"Stem 1","desc":""},"s2":{"name":"Stem 2","desc":""},"s3":{"name":"Stem 3","desc":""},"s0":{"name":"Stem 0","desc":"Stem 0 is special in that it describes the overall \\"stemless\\" definition of a root; i.e. the title of its box in the Lexicon document (if it has one) or a general agglomeration of the three roots\' definitions."}},"popupdesc":"The stem of a word describes which of three possible definitons that a root could take is used in the word. Specific stem definitions are in the Lexicon."},"func":{"type":"","title":"Function","options":{"STA":{"name":"Static","desc":"The Static function is typically used in the following ways:
"},"DYN":{"name":"Dynamic","desc":"The Dynamic function is typically used in the following ways:
"}},"popupdesc":"Function is used to show how relevant any change or motion related to a word is to the speaker, and can be both subjective (a meal as an event [STA] or as a process [DYN]?) or objective (the sunset is orange [STA] vs the sky became orange [DYN]) depending on the situation."},"spec":{"type":"","title":"Specification","options":{"BSC":{"name":"Basic","desc":"A holistic instantiation of a root, prior to the application of one of the other three Specifications, essentially encompassing the meanings of the CTE, and CSV specifications below."},"CTE":{"name":"Contential","desc":"The physical or non-physical “content” or essence or purposeful function or idealized/abstract/platonic form thereof, as opposed to its mere physical form/shape"},"CSV":{"name":"Constitutive","desc":"The form (physical or non-physical) in which an entity/state/act actually expresses itself, is shaped, or is realized, as opposed to its functional/purposeful content, i.e., \\"what constitutes X\\""},"OBJ":{"name":"Objective","desc":"Whichever of the following is most salient to the semantics of the particular stem:
(1) tangible tool/instrument/means by which a state act/state/event occurs, or if inapplicable, then
(2) the third-party object/entity associated with the interaction between two parties (e.g., the object being given in a dative interaction), or if inapplicable then
(3) the resulting tangible object/product/situation, or if inapplicable, then
(4) the semantic patient or experiencer of the state/act/event."}},"popupdesc":"Specification makes the definition of the root more specific.
Listed below are the generic definitions of the terms, but the Lexicon should have all necessary information (i.e. what your root means when paired with a certain specification)."},"ver":{"type":"","title":"Version","options":{"PRC":{"name":"Processual","desc":"The Processual is the default version and describes all acts, conditions, or events which are ends in themselves and not goal-oriented, i.e., are not focused on an anticipated outcome or final purpose toward which a progressive effort is being made."},"CPT":{"name":"Completive","desc":"The Completive describes acts, conditions, or events which achieve, or are intended to achieve, an anticipated outcome, i.e., which are oriented toward the achievement of some purpose, outcome, or final state. Such a distinction is usually handled by word choice in Western languages.
hunt → to hunt down
to be losing → to lose
to study → to learn
to be winning → to win
to strive for → to accomplish, achieve
"}},"popupdesc":"Version describes if a given word is goal-oriented or not in its outcome. Ithkuil III had six, but New Ithkuil has only two."},"ctxt":{"type":"","title":"Context","options":{"EXS":{"name":"Existential","desc":"Neutral description
The EXISTENTIAL context focuses on those features of a noun or verb which are ontologically objective, i.e., those that exist irrespective of any observers, opinions, interpretations, beliefs or attitudes. Similarly excluded from consideration in the EXISTENTIAL is any notion of a noun\'s use, function, role or benefit. The EXISTENTIAL serves only to point out the mere existence of a noun as a tangible, objective entity under discussion. It is thus used to offer mere identification of a noun or verb."},"FNC":{"name":"Functional","desc":"Focus on the personal meaning/importance
The FUNCTIONAL context focuses on those features of a formative that are defined socially by ideas, attitudes, beliefs, opinions, convention, cultural status, use, function, benefit, etc. It serves to identify not what a noun existentially is, but to show that the noun has specific (and subjective) contextual meaning, relevance or purpose."},"RPS":{"name":"Representational","desc":"Connotes that the word is a metaphor
The REPRESENTATIONAL context focuses on a formative as a symbol, metaphor, or metonym, in that it indicates that the formative is serving as a representation or substitute for some other concept or entity which is abstractly associated with it. For example, the metaphorical connotations of the English sentence That pinstripe-suited dog is checking out a kitty, can be equally conveyed in Ithkuil by inflecting the words for \'dog\' and \'kitty\' into the REPRESENTATIONAL context. The REPRESENTATIONAL is one of several ways that Ithkuil overtly renders all metaphorical, symbolic, or metonymic usages (from a grammatical standpoint)."},"AMG":{"name":"Amalgamate","desc":"Connotes a focus on the emotional impact plus cultural significance
The AMALGAMATIVE context is the most abstract and difficult to understand from a Western linguistic perspective. It focuses on the systemic, holistic, gestalt-like, componential nature of a formative, implying that its objective and subjective totality is derived synergistically from (or as an emergent property of) the interrelationships between all of its parts, not just in terms of a static momentary appraisal, but in consideration of the entire developmental history of the noun and any interactions and relationships it has (whether past, present or potential) within the larger context of the world. Its use indicates the speaker is inviting the hearer to subjectively consider all the subjective wonder, emotional nuances, psychological ramifications and/or philosophical implications associated with the noun\'s existence, purpose, or function, as being a world unto itself, intrinsically interconnected with the wider world beyond it on many levels."}},"popupdesc":"Context is a morphological category with no equivalent in other languages. It indicates what tangible or intangible features or aspects of a formative are being psychologically implied in any given utterance. There is no way to show this in translation other than by paraphrase.
Simply, context implies what emotional meaning you should apply to the given word; reading the individual definitions is recommended."},"rel":{"type":"","title":"Relation","options":{"UNF/C":{"name":"Nominal","desc":"The word is not a verb (which usually means a noun).
All Concatenated words are Nominal automatically."},"UNF/K":{"name":"Unframed Verbal","desc":"The word is a verb"},"FRM":{"name":"Framed Verbal","desc":"The word is the main verb in a verb phrase (or \\"frame\\") - the verb phrase continues until the end of the sentance, and this word MUST go at the start of it."}},"popupdesc":"Put simply, which part of speech a word belongs to. A nominal is usually a noun, but could be anything other than a verb.

Nominals (and Framed Verbals) are modified by Case and Case-Scope to give a more specific purpose, and (Unframed) Verbals are modified by Mood, Illocution, Expectation and Validation to give a reasoning and intended reaction."},"concat":{"type":"","title":"Concatenation","options":[{"name":"None","desc":"This word is not concatenated to another."},{"name":"Type 1","desc":"Type-1 concatenation implies a circumstantial relationship between the concatenated formative and the parent (equivalent to placing the concatenated formative into a case-frame)"},{"name":"Type 2","desc":"Type-2 concatenation is derivational (i.e., lexicalizing), creating a new lexico-semantic gestalt and usually requiring a different English translation.
This is analogous to English forms like polar bear naming a new animal rather than stating a location."}],"popupdesc":"Concatenation is similar to the Incorporated Root of Ithkuil III. Basically, it\'s how you show two roots on one word in order to make a short phrase or for extra description (\'desk chair\' rather than \'chair\').
A concatenated word MUST be followed by another word (formative), and the two must be joined with a dash.
A concatenated word is automatically a Nominal (see Relation for more on that)."},"shcut":{"type":"","title":"Shortcutting","options":[{"name":"Default (VII only)","desc":"Do not apply Slot IV/VI shortcuts"},{"name":"Slot IV/VI","desc":"Apply Slot IV/VI shortcuts if possible (takes priority over all other shortcuts)"},{"name":"No VII affix","desc":"Do not apply Slot IV/VI or Slot VII affix shortcuts"},{"name":"Absolutely None","desc":"Do not apply ANY shortcuts whatsoever, do not drop any letters, and show the full gloss instead of the regular"}],"popupdesc":"Please note that these options (aside from \\"Absolutely None\\") do not apply to Slot VIII being moved to Slot VI. For that, check settings.
Shortcutting doesn\'t change the definition of a word, it instead shuffles around how the meaning is represented on that word, potentially making it shorter.
If you\'re not sure which option to use, finish creating your word and then see which option makes it the shortest.
(The Slot IV/VI shortcut uses Slots I and II to indicate Slots IV and VI, and the Slot VII shortcut uses Slot II to indicate one Slot VII affix)"},"Vafx":{"type":"affix","title":"Slot V Affixes","popupdesc":"Slot V Affixes are simple definitional modifications to your word applied before any concatenated words, Configuration, Affiliation, Extension, Perspective, and Essence.
Degree 0 refers to the affix\'s general semantic concept as a whole, similar to Stem 0.

Types:
Type 1: circumstantial relation to the word
Type 2: derivational relation to the word (i.e. it\'s a new word/phrase, as in \'polar bear\')
Type 3: Apply to the previous affix

Cₐ-stacking is the ability to add a Cₐ (Configuration+Affiliation+Extension+Perspective+Essence) consonant-form as an affix.

The Ref options allow you to show a Referential (pronoun) on this word as a shortcut - selecting this will turn the Degree options into Case options.
Ref (3) is only available if there is one affix in the slot, to not clash with Type 3"},"VIIafx":{"type":"affix","title":"Slot VII Affixes","popupdesc":"Slot VII Affixes are simple definitional modifications to your word applied after any concatenated words, Configuration, Affiliation, Extension, Perspective, and Essence.
Degree 0 refers to the affix\'s general semantic concept as a whole, similar to Stem 0.

Types:
Type 1: circumstantial relation to the word
Type 2: derivational relation to the word (i.e. it\'s a new word/phrase, as in \'polar bear\')
Type 3: Apply to the previous affix

Cₐ-stacking is the ability to add a Cₐ (Configuration+Affiliation+Extension+Perspective+Essence) consonant-form as an affix.

The Ref options allow you to show a Referential (pronoun) on this word as a shortcut - selecting this will turn the Degree options into Case options.
Ref (3) is only available if there is one affix in the slot, to not clash with Type 3"},"plex":{"type":"","title":"Plexity","options":{"UPX":{"name":"Uniplex","desc":"The UNIPLEX configuration indicates a single, contextual embodiment of the word, i.e., one whole contextual unit of the basic nominal stem,
e.g. a tree, a person, a screwdriver, a grape, a hammer blow, a hole.
With verbs the UNIPLEX signifies a single, holistic act, state, or event,
e.g. to be a tree, to become a person, to use a screwdriver, to eat a grape, to strike (once) with a hammer, to dig a hole."},"DPX":{"name":"Vague Duplex","desc":"The Vague DUPLEX (unofficial name) is the same as the below DUPLEX, except no information regarding Similarity or Connectedness is relayed."},"D":{"name":"Duplex","desc":"The DUPLEX indicated any two contextual embodiments of the word (like the UNIPLEX) or two individual, holistic acts, states, or events.
Like the DUAL in some natural languages."},"M":{"name":"Multiplex","desc":"Same as the above two in terms of when it is applied, but only for more than two instances.
Like the PLURAL in most natural languages."}},"popupdesc":"Describes how many instances of the word there are, similar but not the same as plurality markings of other languages. However, similarities to plurality are used in the below definitions.
This is how you turn the word \\"tree\\" into \\"forest\\", for example, but not \\"tree\\" into \\"trees\\"."},"simil":{"type":"","title":"Similarity","options":{"S":{"name":"Similar","desc":"The 2+ instances are similar or the same"},"D":{"name":"Dissimilar","desc":"The 2+ instances are not similar at all"},"F":{"name":"Fuzzy","desc":"It is unclear as to how similar the 2+ instances are"}},"popupdesc":"Only applies when the Plexity is DUPLEX or MULTIPLEX.
This indicates how similar the 2+ instances (from the Plexity) are."},"cctd":{"type":"","title":"Connectedness","options":{"S":{"name":"Separate","desc":"The 2+ instances are separate"},"C":{"name":"Connected","desc":"The 2+ instances are somewhat connected (but discrete)"},"F":{"name":"Fused","desc":"The 2+ instances are very connected and are somewhat difficult to make discrete"}},"popupdesc":"Only applies when the Plexity is DUPLEX or MULTIPLEX.
This indicated how connected the 2+ instanced (from the Plexity) are."},"affil":{"type":"","title":"Affiliation","options":{"CSL":{"name":"Consolidative","desc":"The CONSOLIDATIVE affiliation indicates that the individual members of a configurational set are a naturally occurring set where the function, state, purpose or benefit of individual members is inapplicable, irrelevant, or if applicable, is shared. It differs from the ASSOCIATIVE affiliation below in that the role of individual set members is not subjectively defined by human design. Examples are tree branches, a grove, a mound of rocks, some people, the clouds.

The CONSOLIDATIVE is also the affiliation normally applied to nouns in the UNIPLEX (plexity) when spoken of in a neutral way, since a noun in the UNIPLEX specifies one single entity without reference to a set, therefore the concept of “shared” function would be inapplicable. Examples: a man, a door, a sensation of heat, a leaf. With verbs, the CONSOLIDATIVE would imply that the act, state, or event is occurring naturally, or is neutral as to purpose or design."},"ASO":{"name":"Associative","desc":"The ASSOCIATIVE affiliation indicates that the individual members of a configurational set share the same subjective function, state, purpose or benefit. Its use can be illustrated by taking the Ithkuil word for soldier in the DISCRETE configuration and comparing its English translations when inflected for the CONSOLIDATIVE affiliation (= a group of soldiers) versus the ASSOCIATIVE (= a troop, a platoon). It is this CONSOLIDATIVE versus ASSOCIATIVE distinction, then, that would distinguish otherwise equivalent plural inflections of the Ithkuil word for tree by translating them respectively as a grove versus an orchard.

The ASSOCIATIVE affiliation can also be used with nouns in the UNIPLEX (plexity) to signify a sense of unity amongst one\'s characteristics, purposes, thoughts, etc. For example, the word person inflected for the UNIPLEX and ASSOCIATIVE would translate as a single-minded person. Even nouns such as rock, tree or work of art could be inflected this way, subjectively translatable as a well-formed rock, a tree with integrity, a “balanced” work of art.

With verbs, the ASSOCIATIVE signifies that the act, state or event is by design or with specific purpose. The CONSOLIDATIVE versus ASSOCIATIVE distinction could be used, for example, with the verb turn in \\"I turned toward the window\\" to indicate whether it was for no particular reason or due to a desire to look outside."},"COA":{"name":"Coalescent","desc":"The COALESCENT affiliation indicates that the members of a configurational set share in a complementary relationship with respect to their individual functions, states, purposes, benefits, etc. This means that, while each member\'s function is distinct from those of other members, each serves in furtherance of some greater unified role. For example, the Ithkuil word translating English toolset would be the word for tool in some plural configuration (depending on each tool\'s distinct physical appearance) and the COALESCENT affiliation to indicate that each tool has a distinct but complementary function in furtherance of enabling construction or repair activities. Another example would be using the COALESCENT with the word for (piece of) food to signify a well-balanced meal.

The COALESCENT naturally appears most often in conjunction with the DUPLEX since binary sets tend to be complementary. It is used, for example, to signify symmetrical binary sets such as body parts, generally indicating a lefthand/righthand mirror-image distinction, e.g., one\'s ears, one\'s hands, a pair of wings. Pairs that do not normally distinguish such a complementary distinction (e.g. one\'s eyes) can nevertheless be optionally placed in the COALESCENT affiliation to emphasize bilateral symmetry (e.g., one\'s left and right eye functioning together).

With verbs, the COALESCENT signifies that related, synergistic nature of the component acts, states, and events which make up a greater holistic act, state, or event. It imposes a situational structure onto an act, state, or event, where individual circumstances work together in complementary fashion to comprise the total situation. It would be used, for example, to distinguish the sentences He traveled in the Yukon from He ventured in the Yukon, or I came up with a plan versus I fashioned a plan."},"VAR":{"name":"Variative","desc":"The VARIATIVE affiliation indicates that the individual members of a configurational set differ as to subjective function, state, purpose or benefit. The differences among members can be to varying degrees (i.e., constituting a fuzzy set in regard to function, purpose, etc.) or at complete odds with one another, although it should be noted that the VARIATIVE would not be used to signify opposed but complementary differences among set members (see the COALESCENT affiliation above). It would thus be used to signify a jumble of tools, odds-and-ends, a random gathering, a rag-tag group, a dysfunctional couple, a cacophony of notes, of a mess of books, a collection in disarray.
It operates with nouns in the UNIPLEX to render meanings such as a man at odds with himself, an ill-formed rock, a chaotic piece of art, a “lefthand-righthand” situation.

With verbs, the VARIATIVE indicates an act, state, or event that occurs for more than one reason or purpose, and that those reasons or purposes are more or less unrelated. This sense can probably be captured in English only through paraphrase, as in She bought the house for various reasons or My being at the party served several purposes. With non-UNIPLEX configurations, the use of the VARIATIVE affiliation can describe rather complex phenomena; for example, a sentence such as The light is blinking in conjunction with the VARIATIVE could mean that each blink of the light signals something different than the preceding or following blinks."}},"popupdesc":"Affiliation distinguishes the relationships between individual members of a set in terms of purpose, function, and/or benefit.

Affiliation operates synergistically in conjunction with Configuration to describe the total contextual relationship between the members of a set. Like Configuration, the meanings of nouns or verbs in the various affiliations often involve lexical changes when translated into English."},"ext":{"type":"","title":"Extension","options":{"DEL":{"name":"Delimitive","desc":"The DELIMITIVE extension indicates that a noun is being spoken of in its contextual entirety as a discrete entity with clear spatio-temporal boundaries, with no emphasis on any particular portion, edge, boundary, limit, or manifestation beyond the context at hand. It can be considered the neutral or default view, e.g., a tree, a grove, a set of books, an army. With verbs, this extension indicates that the act, state, or event is being considered in its entirety, from beginning to end, e.g., She diets every winter (i.e., she starts and finishes each diet).","image":"http://ithkuil.net/images/3-4-1c.jpg"},"PRX":{"name":"Proximal","desc":"The PROXIMAL extension indicates that a noun is being spoken of not in its entirety, but rather only in terms of the portion, duration, subset, or aspect which is relevant to the context at hand. It would be used to translate the words tree, journey, and ladder in the sentences That tree is hard there (e.g., in the spot where I hit against it), She lost weight during her journey, or He climbed on the ladder (i.e., it is not relevant to the context to know if he made it all the way to the top).
Note that in these sentences, the PROXIMAL does not refer to a specific or delineated piece, part, or component of the tree or ladder, but rather to the fact that delineated boundaries such as the ends of the ladder or the entirety of the tree are not relevant or applicable to the context at hand.","image":"http://ithkuil.net/images/3-4-2c.jpg"},"ICP":{"name":"Inceptive","desc":"The INCEPTIVE extension focuses on the closest boundary, the beginning, initiation, or the immediately accessible portion of a noun or verb, without focusing on the boundaries of the remainder. It would be used in translating the nouns tunnel, song, desert, daybreak and plan in the following sentences: We looked into (the mouth of) the tunnel, He recognizes that song (i.e., from the first few notes), They came upon (an expanse of) desert, Let\'s wait for daybreak, I\'m working out a plan (i.e., that I just thought of).
In verbal contexts it would correspond to the English ‘to begin (to)…’ or ‘to start (to)…’ as in He began reading, It’s starting to molt, or She goes on a diet every winter.","image":"http://ithkuil.net/images/3-4-3c.jpg"},"ATV":{"name":"Attenuative","desc":"The ATTENUATIVE extension focuses on the end, termination, last portion, or trailing boundary of a noun, without focusing on the preceding or previously existing state of the noun. It would be used in translating the words water, story, and arrival in the sentences There’s no water (i.e., we ran out), I like the end of that story, and We await your arrival. With verbs, it is illustrated by the sentences It finished molting or She’s come off her diet.","image":"http://ithkuil.net/images/3-4-4c.jpg"},"GRA":{"name":"Graduative","desc":"The GRADUATIVE extension is the inverse of the DEPLETIVE (below), focusing on a diffuse, extended “fade-in” or gradual onset of a noun. It would be used in translating the words darkness, wonder, and music in the following sentences: Darkness came upon us, I felt a growing sense of wonder, The music was very soft at first. With verbs it is illustrated by verbs and phrases such as to fade in, to start gradually, to build up, and similar notions, e.g., She\'s been eating more and more lately.","image":"http://ithkuil.net/images/3-4-6c.jpg"},"DPL":{"name":"Depletive","desc":"The DEPLETIVE extension focuses on the terminal boundary or “trailing” edge of a noun, where this terminus is ill-defined, “diffuse” or extended to some degree, (i.e. the at-hand context of the noun “peters out” or terminates gradually). Essentially, it applies to any context involving actual or figurative fading. It would be used in translating the words water, strength, and twilight in the sentences He drank the last of the water, I have little strength left, She disappeared into the twilight. With verbs, it is exemplified by the phrases to wind down, to fade out, to disappear gradually and similar notions, e.g., She\'s eating less and less these days.","image":"http://ithkuil.net/images/3-4-5c.jpg"}},"popupdesc":"Extension refers to the spatial and temporal extent to which you are considering the root word; are you referring to all of it? The start of it? Some part in the middle of it?"},"persp":{"type":"","title":"Perspective","options":{"M":{"name":"Monadic","desc":"The MONADIC means that there is a certain number of (relevant) instances of the word. When combined with things like the MULTIPLEX, it means that the entire group is being considered as a whole (\\"forest(s)\\", not \\"trees\\")."},"G":{"name":"Agglomerative","desc":"The AGGLOMERATIVE is similar to the MONADIC, except it doesn\'t imply any sense of number; as in, \\"one or more X\\". It is also used for turning nouns (such as \\"a strand of hair\\" in the MONADIC) into mass nouns (such as \\"hair\\" in the AGGLOMERATIVE)"},"N":{"name":"Nomic","desc":"The NOMIC refers to the general archetype of the word as opposed to any specific instance of it. Examples are: The dog is a noble beast, Clowns are what children love most, There is nothing like a tree."},"A":{"name":"Abstract","desc":"Similar to the formation of English abstract nouns using suffixes such as -hood or -ness, the ABSTRACT transforms a configurative category into an abstract concept considered in a non-spatial, timeless, numberless context.
Examples: grove → the idea of being a grove or “grovehood”; book → everything about books, having to do with books, involvement with books.

With verbs, the ABSTRACT is used in verbal constructions to create a temporal abstraction, where the temporal relationship of the action, event, or state to the present is irrelevant or inapplicable, similar to the way in which the English infinitive or gerund form (used as substitutes for a verb phrase) do not convey a specific tense in the following sentences: Singing is not his strong suit; It makes no sense to worry about it; I can\'t stand her pouting."}},"popupdesc":"Perspective is the closest Ithkuil morphological category to the Number and Tense categories of other languages (e.g., singular/plural and past/present/future). However, the correspondence is only approximate because Perspective does not specifically address the quantity to which a formative is instantiated within a given context, nor when it occurs relative to the present, but rather the manner in which it is spatio-temporally instantiated."},"ess":{"type":"","title":"Essence","options":{"NRM":{"name":"Normal","desc":"Things that are real or real things that have happened"},"RPV":{"name":"Representative","desc":"Things that are potentially real (\\"It seems\\"/\\"I think it\'s\\") or imagined"}},"popupdesc":"The Ithkuil category of Essence explicitly distinguishes real-world actualities from their alternative, imagined or potential counterparts. The two essences are termed NORMAL and REPRESENTATIVE, the former being the default essence denoting real-world nouns and verbs, the latter denoting alternative counterparts."},"vn":{"type":"","title":"Vₙ","options":{"val":{"name":"Valence","desc":""},"pha":{"name":"Phase","desc":""},"eff":{"name":"Effect","desc":""},"lvl":{"name":"Level","desc":""},"asp":{"name":"Aspect","desc":""}},"popupdesc":"Determines which of the linked categories (listed below) will actually be shown on the word. All others are showable via affix if absolutely necessary, but will not be shown otherwise."},"v4n":{"type":"","title":"Vₙ","options":{"val":{"name":"Valence","desc":""},"pha":{"name":"Phase","desc":""},"eff":{"name":"Effect","desc":""},"lvl":{"name":"Level","desc":""}},"popupdesc":"Determines which of the linked categories (listed below) will actually be shown on the word.
To show Aspect in this slot, the word must only have one module - otherwise, use a different slot."},"val":{"type":"","title":"Valence","options":{"MNO":{"name":"Monoactive","desc":"The MONOACTIVE valence is the default valence and indicates a lack of co-activity, i.e., no participation by a second party is implied.
Use this for the default of all other Vₙ options."},"PRL":{"name":"Parallel","desc":"The PARALLEL valence indicates that a second party is engaging in the same activity as the first party at same time.
It would be used in translating sentences such as The children all sang together, We both went jogging on the parkway."},"CRO":{"name":"Corollary","desc":"The COROLLARY valence is similar to the PARALLEL, except that the second party engages in related activity at the same time as the first party, rather than the same activity.
It would be used in translating sentences such as The children played in the yard (i.e., each child engaged in a different play activity) or The band played my favorite song (implying that not everyone in the band was playing the same instrument, or perhaps that someone in the band sang as opposed to playing an instrument)."},"RCP":{"name":"Reciprocal","desc":"The RECIPROCAL valence indicates identical activity by each party directed at the other, thus translating the English adverbial phrases \'each other\' and \'one another,\' as in:
They looked at each other, The clown and the grocer despise one another."},"CPL":{"name":"Complementary","desc":"The COMPLEMENTARY valence indicates that the second party performs a complementary activity to that of the first party. By “complementary” is meant an activity different from that of the first party, but necessary to complete the whole of the joint activity, i.e., the “other half” of the joint activity.
This is exemplified in sentences such as The man and his son played catch, Hortense took me into the woods, The clown read the children a story, My back itches so I scratch it,
where \'played catch\' implies the complementary activities of throwing and catching, \'took (into the woods)\' implies someone leading while the other follows, \'read\' implies a reader and an audience, and \'itches\' implies scratching."},"DUP":{"name":"Duplicative","desc":"The DUPLICATIVE valence indicates that the second party copies or repeats the activity of the first party, as in the sentences:
Let\'s draw a picture (i.e., I\'ll draw it first, then you draw the same picture), They both read that book (i.e., first one, then the other), I bought a new car (i.e., and now someone else is buying a new car, too)."},"DEM":{"name":"Demonstrative","desc":"The DEMONSTRATIVE valence indicates that the first party demonstrates for the second party how to do something or what to do.
Thus an Ithkuil sentence constructed as We played chess with the verb in the DEMONSTRATIVE valence would mean \'I showed her how to play chess,\' while the sentence constructed as They fought us in this valence would mean \'They taught us how to fight.\'"},"CNG":{"name":"Contingent","desc":"The CONTINGENT valence indicates that the second party engages in the next or dependent phase of a multi-part activity, the specific activity being dependent on context.
Thus the Ithkuil sentence I started the campfire for my friend in the CONTINGENT implies that the friend then performed the next logical step, i.e., he cooked the food."},"PTI":{"name":"Partictipative","desc":"The PARTICIPATIVE valence indicates that the parties take part in an activity involving a greater whole, translatable by the English phrase \'take part in…\'
Thus, the Ithkuil sentence They raced in the PARTICIPATIVE means \'They each took part in the race.\'"}},"popupdesc":"In Ithkuil, the term Valence is used to refer to the manner of participation of two separate entities or parties to any given verb, i.e., participation by one party automatically implies participation by another party to the same act, event, or state in either a parallel, corollary, or complementary fashion. Such dual participation occurs naturally in the verbs of world languages and is the province of what is known as “co-active” verbs."},"pha":{"type":"","title":"Phase","options":{"PCT":{"name":"Punctual","desc":"The PUNCTUAL describes an act, condition, or event which is point-like, momentary or instantaneous in nature, such as an explosion, a flash of lightning, a blow, a single handclap, a collision between two objects, a stab of pain, a single cough, the clicking of a lock, etc.
It can be visually represented along a timeline by a single point, e.g., "},"ITR":{"name":"Iterative","desc":"The ITERATIVE refers to a momentary or instantaneous event, like the PUNCTUAL above, which repeats itself in a rapid, on/off, staccato manner, like a machine gun burst, strobe light burst, an alarm bell ringing, or the quick unconscious tapping of a finger, the whole comprising a single event.
Visual representation: • • • •"},"REP":{"name":"Repetitive","desc":"The REPETITIVE refers to a relatively brief event of indeterminate or vague duration (i.e., as with the default above), but repeated in an on/off staccato manner, like a car horn being honked repeatedly in a fast steady rhythm, or an automatic machine press.
Visual representation: — — ——"},"ITM":{"name":"Intermittent","desc":"The INTERMITTENT is similar to the ITERATIVE above, identifying a repetitive occurrence of a PUNCTUAL event, however, unlike the ITERATIVE, the duration of time between repetitions is relatively long and contextually relevant. It would be used in describing the downbeat pattern of a pop song, the ongoing snapping of fingers to music, the steady one-drop-at-a-time dripping of a faucet, etc.
Visual representation: •⠀⠀⠀•⠀⠀⠀•⠀⠀⠀•"},"RCT":{"name":"Recurrent","desc":"The RECURRENT is to the REPETITIVE as the INTERMITTENT is to the ITERATIVE. It indicates a slow repetition of a non-PUNCTUAL (default) event, where the duration between occurrences is relatively long and contextually relevant. Exemplified by the sounding of a foghorn, or the ongoing hooting of an owl.
Visual representation: —⠀⠀⠀—⠀⠀⠀—⠀⠀⠀—"},"FRE":{"name":"Frequentative","desc":"The FREQUENTATIVE indicates an iterative occurrence (a single set of punctual repetitions) which in turn repeats at intervals, the whole considered as a single event. Examples would be the repetitive sets of hammerings of a woodpecker or the repeated short bursts of a jackhammer.
Visual representation: • • •⠀⠀⠀• • •⠀⠀⠀• • •⠀⠀⠀• • •"},"FRG":{"name":"Fragmentative","desc":"The FRAGMENTATIVE indicates a random pattern of punctual occurrences, the whole considered as a single event.
Visual representation: • •⠀⠀⠀• • •⠀⠀⠀⠀⠀• •⠀⠀⠀• • • • •⠀⠀⠀⠀⠀•⠀⠀⠀• •"},"VAC":{"name":"Vacillative","desc":"The VACILLATIVE functions as a non-punctual counterpart to the FRAGMENTATIVE.
Visual representation: —— — —⠀⠀⠀— —⠀⠀⠀— —⠀⠀⠀—⠀⠀⠀⠀⠀— — —"},"FLC":{"name":"Fluctuative","desc":"The FLUCTUATIVE indicates a random pattern of both punctual and longer occurrences. An example would be the “sputtering” of a lighted fuse, the random patterns of tongues of flames, the chirping of birds in the wild, etc.
Visual representation: — • • —⠀⠀• — • •⠀⠀⠀—⠀⠀⠀⠀⠀• • — • • •⠀⠀⠀• •⠀⠀⠀—— • — • •"}},"popupdesc":"Phase refers to variances in the temporal pattern of how an act, condition or event occurs.
The default (i.e. if the Phase is not specified) is only one occurrence.
Said default can be visually represented along a progressive timeline by a short dash, e.g., "},"eff":{"type":"","title":"Effect","options":{"1:BEN":{"name":"Beneficial to Speaker","desc":"Whatever the word is describing is beneficial to the speaker."},"2:BEN":{"name":"Beneficial to Addressee","desc":"Whatever the word is describing is beneficial to the addressee."},"3:BEN":{"name":"Beneficial to 3rd Party","desc":"Whatever the word is describing is beneficial to some third party (who is probably referred to by another word)."},"SLF:BEN":{"name":"Beneficial to Formative","desc":"Whatever the word is describing is beneficial to itself."},"UNK":{"name":"Unknown","desc":"The benefit/detriment from this word is unknown.
Note that this is not the same as no benefit/detriment."},"SLF:DET":{"name":"Detrimental to Formative","desc":"Whatever the word is describing is detrimental to itself."},"3:DET":{"name":"Detrimental to 3rd Party","desc":"Whatever the word is describing is detrimental to some third party (who is probably referred to by another word)."},"2:DET":{"name":"Detrimental to Addressee","desc":"Whatever the word is describing is detrimental to the addressee."},"1:DET":{"name":"Detrimental to Speaker","desc":"Whatever the word is describing is detrimental to the speaker."}},"popupdesc":"Effect is used to describe who a certain concept (the word) is beneficial or detrimental to."},"lvl":{"type":"","title":"Level","options":{"MIN":{"name":"Minimal","desc":"X\'s M is at its least possible
X is at its least M possible"},"SBE":{"name":"Subequative","desc":"X\'s M is less than or equal to to Y (or less than or equal to before)
X is less M than or equal to Y/before"},"IFR":{"name":"Inferior","desc":"X\'s M is the least within/among Y (or ever)
X is the least M within/among Y"},"DFT":{"name":"Deficient","desc":"X\'s M is less than Y (or less than before)
X is less M than Y (or than before) "},"EQU":{"name":"Equative","desc":"X\'s M is the same as Y (or as before)
X is as M as Y (or as before)"},"SUR":{"name":"Surpassive","desc":"X\'s M is more than Y (or than before)
X is more M than Y (or than before)"},"SPL":{"name":"Superlative","desc":"X\'s M is the most within/among Y (or ever)
X is the most M within/among Y (or ever)"},"SPQ":{"name":"Superequative","desc":"X\'s M is more than or equal to Y (or more than or equal to before)
X is more M than or equal to Y/before"},"MAX":{"name":"Maximal","desc":"X\'s M is at its most possible
X is at its most M possible"}},"popupdesc":"Level is used in comparative statements, such as \\"my hat is cooler than your hat\\".
X = this word,
M = a verb (what quality of X is being compared),
Y = a word marked with the CMP case (the thing being compared to)"},"asp":{"type":"","title":"Aspect","options":{"RTR":{"name":"Retrospective","desc":"This aspect operates in conjunction with Perspective to create various equivalents to Western tense categories.
With the MONADIC, the RETROSPECTIVE equates with the English simple past tense.
With the NOMIC and ABSTRACT, it adds a sense of ‘and it’s always been that way’."},"PRS":{"name":"Prospective","desc":"Like the RETROSPECTIVE above, this aspect operates in conjunction with Perspective to create various equivalents to Western tense categories.
With the MONADIC, the PROSPECTIVE equates with the English future tense.
With the NOMIC and ABSTRACT, it adds a sense of ‘and it’ll always be that way’ or ‘from now on’."},"HAB":{"name":"Habitual","desc":"When used with the MONADIC perspective, this aspect conveys the idea of ‘always’ or ‘continues to’."},"PRG":{"name":"Progressive","desc":"This aspect conveys the idea of an act in progress, similar to the English construction ‘in the midst of [verb] + ing’ or the use of the present participle in Spanish."},"IMM":{"name":"Imminent","desc":"Conveys that an action, state or event is imminent. Translates phrases such as ‘(just) about to’ or ‘on the verge of’ as in I think Carl is about to cry."},"PCS":{"name":"Precessive","desc":"Conveys that an action, state or event has immediately preceded. Translates such phrases as ‘just’ or ‘just now,’ as in We just saw a clown in the toy store."},"REG":{"name":"Regulative","desc":"Conveys the idea of participation or involvement in an action, state, or event over an amount of time extending from the past into the future relative to the contextual present. Translates English phrases such as ‘engaged in’ or ‘involved in’ as in Her husband is engaged in construction of the new bridge."},"SMM":{"name":"Summative","desc":"meaning ‘...(have) already X’d’"},"ATP":{"name":"Anticipatory","desc":"meaning ‘have yet to (begin) X-ing’"},"RSM":{"name":"Resumptive","desc":"Conveys the idea of an act, state, or event resuming after having previously ceased, as in The girl resumed singing, or He is starting to laugh again."},"CSS":{"name":"Cessative","desc":"Conveys the idea of cessation of an event, state or action. Translates English phrases such as ‘stop,’ ‘discontinue,’ or ‘cease,’ as in They stopped dancing at midnight."},"PAU":{"name":"Pausal","desc":"Indicates a pause in an action, state or event, with an implied intention to resume. Translates phrases such as ‘take a break from’ or ‘pause in’ as in Mother took a break from cleaning to gossip with her friends."},"RGR":{"name":"Regressive","desc":"Conveys the idea of a return to an original or previous action, state or event after a long hiatus involving an intervening change of state or situation, as translated by the phrase ‘return to.’ The REGRESSIVE should be distinguished from the RESUMPTIVE above, which merely implies the restarting after a stop or pause without an intervening change of state or situation. An example would be Mr. Yates returned to golf after recovering from his stroke."},"PCL":{"name":"Preclusive","desc":"Conveys the fact that an action, state, or event takes place from inception to conclusion all in one contextual segment, translating such phrases as ‘all at once,’ ‘all in one go,’ ‘without stopping,’ etc. as in Walter drank the entire bottle in one gulp."},"CNT":{"name":"Continuative","desc":"Conveys the idea that an action, event, or state continues on. Translates phrases such as ‘keep on,’ ‘still,’ ‘stay,’ ‘yet,’ etc. When used in a negative sentence, conveys the idea of English ‘no longer’ or ‘not anymore’ as in She kept on singing, You\'re still staring at me, I\'ve yet to meet him, Sam no longer loves you / Sam doesn\'t love you anymore."},"ICS":{"name":"Incessative","desc":"Conveys that an action, state or event continues on without stopping. Translates such English adverbials as ‘…on and on’ or ‘…away’ as in They danced the night away or They\'ve been battling on and on since last year."},"EXP":{"name":"Experiential","desc":"Translates English ‘ever’ in the sense of ‘within the realm of one’s experience’ or ‘at some point in one’s experience,’ as in Does he ever shut up?
Note the EXPERIENTIAL does not equate to ‘ever’ when it means ‘always,’ as in Ever does he seek his destiny nor as an adverb of mere emphasis as in Was she ever tired."},"IRP":{"name":"Interruptive","desc":"meaning ‘to get interrupted while X-ing’ or ‘to X only so far or so much before having to stop’"},"PMP":{"name":"Preemptive","desc":"Emphasizes the singularity and initial occurrence of an action, state or event, as translated by such English phrases as ‘for once’ or ‘just once,’ as well as the anticipation preceding a long-expected situation, as translated by phrases such as ‘at last,’ ‘after all this time,’ ‘finally,’ and ‘for the first time.’"},"CLM":{"name":"Climactic","desc":"Emphasizes the finality of an action, state or event, as translated by such English phrases as ‘once and for all’ or ‘for the last time.’"},"DLT":{"name":"Dilatory","desc":"meaning ‘(be) long-delay(ed) in being/doing X’ "},"TMP":{"name":"Temporary","desc":"Conveys that an action, state or event is being considered or is applicable only to the present subjective context or range of the contextual present, as translated by phrases such as ‘for the time being’ or ‘but only for the moment’ or ‘for now’ as in This will be sufficient for now or For the time being you\'ll have to drink water."},"XPD":{"name":"Expenditive","desc":"Conveys an all-consuming action, state, or event which interferes with or prevents other events from occurring. It translates English phrases such as ‘spend one’s time’ or ‘away’ as in Mother spends her life worrying or He\'s pining away."},"LIM":{"name":"Limitative","desc":"meaning ‘to be/do X (just) in time’; indicates an act/event that culminates an anticipatory context"},"EPD":{"name":"Expeditive","desc":"Conveys a sense of haste associated with an action or event. Translates English ‘hurry (up)’ as in Hurry up and finish or They ate in a hurry."},"PTC":{"name":"Protractive","desc":"‘take one’s time X-ing’"},"PPR":{"name":"Preparatory","desc":"meaning ‘to be/do X in advance’, ‘to be/do X in preparation for a future situation’"},"DCL":{"name":"Disclusive","desc":"Focuses on the revelatory nature of an action, state or event, translating phrases such as ‘turn out to be,’ ‘turn out that…’ and ‘be revealed that….’"},"CCL":{"name":"Conclusive","desc":"Conveys the direct outcome of an action, state or event within the short-term context of the situation at hand. Translates phrases such as ‘end up…, come to, reach the point where,’ as in I ended up crashing the car or He drank to the point where he passed out."},"CUL":{"name":"Culminative","desc":"Similar to the CONCLUSIVE above, but with a focus on the eventual, long-term outcome over an extended period of time or through a series of developmental steps. Compare the following examples with the CONCLUSIVE aspect above: In the end, I\'ll have to leave town; Things got to the point where the mayor got involved; Eventually, they fell in love."},"IMD":{"name":"Intermediative","desc":"Conveys the idea that the action, state, or event takes place at some point along the timeline of, or within the duration of, another action, state, event, or background context, as translated by the phrases ‘at some point’ or ‘somewhere along the way….’"},"TRD":{"name":"Tardative","desc":"Conveys the idea that an action, state, or event lessens, dwindles, or slackens in energy, intensity, or effect, impliedly by exhaustion of the active source of energy or agency, or by dissipation of the foundational context involved. Translates such phrases as ‘to get tired of,’ ‘peter out,’ ‘trail off,’ etc."},"TNS":{"name":"Transitional","desc":"Focuses on the initial stage of preparation, adjustment, or accustomization to an action, state or event, translated by phrases such as ‘take up,’ ‘start to,’ etc. implying a long-term process of initialization, as in I\'m planning to take up golf."},"ITC":{"name":"Intercommutative","desc":"Conveys the idea of “sequential reciprocity,” meaning that the action or event is a consequent reciprocation triggered by, or in reaction to, an initiating action or event. It translates the English verbal particle ‘back’ as in The boy threw it back or She stared back at the men ogling her."},"MTV":{"name":"Motive","desc":"Conveys that an action, state or event involves physical removal or absence of the participant from the present context of discourse. Translates such phrases as ‘be off …-ing’ or ‘go off to …’ as in Dad\'s off hunting or They went off to cavort with the clowns."},"SQN":{"name":"Sequential","desc":"This aspect conveys the idea a “sequential progressive” in which a series of contextually identical instances is seen as comprising a single event, usually with an implied culmination point. It translates the English use of ‘off’ as in He\'s checking off each item as it is inventoried, or The sheep died off from the disease."}},"popupdesc":"Aspect provides detailed and specific temporal information about the word, not in relation to the speaker\'s present moment of utterance (as with Perspective), but rather in relation to the contextual “present” of the act, condition, or event being spoken about.
It makes the most sense when applied to verbs (both unframed and framed)."},"mood":{"type":"","title":"Mood","options":{"FAC":{"name":"Factual","desc":"The FACTUAL mood signifies that the factuality of the speaker’s statement is certain and that there either is no underlying presupposition to the statement, or if there is, its factuality is also certain or has no bearing on the factuality of the statement.
TRUE / TRUE or NONE"},"SUB":{"name":"Subjective","desc":"The SUBJUNCTIVE mood indicates that the factuality of an explicit or implicit presupposition underlying the statement is certain, but the factuality of the speaker’s statement itself is questionable or uncertain, the specific nuance of factuality intended being subject to the particular Bias and Validation associated with the verb. Corresponds roughly with English ‘may,’ ‘maybe’ or ‘might,’ with the added distinction that an explicit or implicit (i.e., underlying) presupposition is true.
UNCERTAIN / TRUE"},"ASM":{"name":"Assumptive","desc":"The ASSUMPTIVE mood functions identically to the FACTUAL except that the factuality of an underlying presupposition is unknown. It therefore conveys an act, state, or event whose factuality is dependent on whether something else is factual, thus corresponding to certain usages of English ‘maybe’ and ‘will’ (where ‘will’ primarily conveys possibility, not future tense).
TRUE / UNCERTAIN"},"SPC":{"name":"Speculative","desc":"The SPECULATIVE mood indicates that the factuality of both the presupposition and the statement itself are unknown. Its translation into English is dependent on the specific context, sometimes corresponding to ‘may,’ ‘maybe’ or ‘might,’ and at other times corresponding to the auxiliary ‘would.’
UNCERTAIN / UNCERTAIN"},"COU":{"name":"Counterfactive","desc":"The COUNTERFACTIVE mood indicates that the factuality of the underlying presupposition is false or unreal but that the factuality of the statement would otherwise be true. It thus corresponds to the English construction of auxiliary ‘would’ or ‘would have’ in its use to show counterfactuality (i.e., what would have been if a false presupposition had been true).
TRUE / FALSE"},"HYP":{"name":"Hypothetical","desc":"The HYPOTHETICAL mood indicates that the factuality of the underlying presupposition is false or unreal and that the factuality of the statement itself is uncertain. It thus corresponds to the English construction of auxiliary ‘might have’ in its use to show possible counterfactuality (i.e., what might have been if a false presupposition had been true).
UNKNOWABLE / FALSE"}},"popupdesc":"Mood refers to the knowability and truthfulness of a statement, and describes both the truth of the actual statement and any underlying presuppositions.
Alongside Illocution and Validation, it refers to the whole statement.
FULL STATEMENT / PRESUPPOSITIONS"},"casc":{"type":"","title":"Case-Scope","options":{"CCN":{"name":"Natural","desc":"X\'s case is governed by the noun-case of the formative marked Antecedent (CCA); in the absence of such, X\'s case is associated with the main verb (or framed verb if within a case-frame), except for if it has the Appositive or Relational Cases."},"CCA":{"name":"Antecedent","desc":"X is the “head” whose case governs all Natural (CCN) nouns in the clause"},"CCS":{"name":"Subaltern","desc":"X is the formative to which formatives in the clause marked with Qualifier (CCQ) are associated"},"CCQ":{"name":"Qualifier","desc":"X is associated by noun-case to the formative marked by Subaltern (CCS)"},"CCP":{"name":"Precedent","desc":"X\'s noun-case associates only with the immediately following formative"},"CCV":{"name":"Successive","desc":"X\'s noun-case associates only with the immediately preceding formative"}},"popupdesc":"Formatives showing Case use the Case-Scope to indicate the scope of a case-marked formative over adjacent formatives. This is useful when there is a string of cases modifying another “head” formative; specifies which has scope over which other formative.
Similar to a Type 1 Concatenation."},"c":{"type":"","title":"Case","options":{"THM":{"name":"Thematic","desc":"The (usually inanimate) party which is a participant to the verbal predicate which does not undergo any tangible change of state.
Semantic role: CONTENT"},"INS":{"name":"Instrumental","desc":"The entity acting as means utilized by an explicit or implicit agent to implement/carry out the effect/impact of an act/event.
Semantic role: INSTRUMENT"},"ABS":{"name":"Absolutive","desc":"The party that is the target of, and/or undergoes, the effect/impact or change of state as a result of a tangible act/event.
Semantic role: PATIENT"},"AFF":{"name":"Affective","desc":"The party who undergoes an unwilled, affective experience,
e.g. coughing, sneezing, feeling hot/cold, trembling, experiencing sensory input (tactile, olfactory, visual, aural, gustatory), proprioceptive states, psychological/emotional states, reflex reactions such as cringing, yawning, ducking, screaming in fright, etc.
Semantic role: EXPERIENCER"},"STM":{"name":"Stimulative","desc":"The party/entity/idea/thought/situation or mental state which triggers an unwilled, affective response or is the trigger for an existential state such as possession.
Semantic role: STIMULUS"},"EFF":{"name":"Effectuative","desc":"The party/force that initiates a chain of causal events or who induces another party to act as an agent (specifiable via the ENB affix).
Semantic role: ENABLER"},"ERG":{"name":"Ergative","desc":"The animate party or inanimate force which initiates/causes an act/event which creates a tangible effect or change of state in a patient.
Semantic role: AGENT or FORCE"},"DAT":{"name":"Dative","desc":"The party which is the (intended) recipient of a verb of transference, transmission, or communication; the party at/to which a physically transferred entity, transmitted information, or a communicable entity is directed.
Semantic role: RECIPIENT"},"IND":{"name":"Inducive","desc":"The patient who undergoes the tangible effect, impact, or change of state of an act/event initiated/caused by that self-same party.
Semantic role: AGENT+PATIENT"},"POS":{"name":"Possesive","desc":"The party which has alienable (i.e., removable or severable) possession of another noun in the sense of having physical control or oversight of that noun, whether by chance circumstance or deliberate manipulation."},"PRP":{"name":"Proprietive","desc":"The party having alienable possession of another noun in the sense of quasi-permanent contextual control, ownership or oversight, whether by societal recognition, socialconvention, law, purchase or decree, which mere physical separation does not sever."},"GEN":{"name":"Genitive","desc":"The party which has inalienable (i.e., irremovable, non-severable) possession of or association with another noun in the sense of having that noun as an inherent or intrinsic attribute, characteristic, physical part, or genetic (i.e., familial) bond."},"ATT":{"name":"Attributive","desc":"The party which inalienably experiences the effects of, or otherwise has an affective (see the affective case above) relationship with another noun, either as a temporary or permanent attribute, characteristic, or experience, whether physical or psychological, objective or subjective in nature."},"PDC":{"name":"Productive","desc":"The party which is the creator, author or originator of another noun."},"ITP":{"name":"Interpretative","desc":"The party acting as the subjective interpretational context of another noun, that is the noun by or through which another noun is subjectively considered, interpreted or described,
e.g. Monet\'s Paris, my baseball team (as spoken by a fan)."},"OGN":{"name":"Originative","desc":"The party which is the literal or figurative source of another, or which is the native location, origin, or usual locative context for another."},"IDP":{"name":"Interdependent","desc":"The party which has a coordinated, tandem, complementary or mutually dependent relationship with another. The relationship between the two nouns can be thought of as reciprocal in nature, i.e., each noun implies the other or needs the other to exist within its natural context."},"PAR":{"name":"Partitive","desc":"Indicates a quantitative or content-to-container relationship between the two nouns,
e.g. a cup of coffee, a box(ful) of books, a train(load) of refugees, twelve chairs."},"APL":{"name":"Applicative","desc":"The entity/act/event which constitutes the circumstantial, potentially one-time, temporary purpose of another entity/act/event.
\'for the (circumstantial/temporary/one-time) purpose of X\', \'being used (temporarily/circumstantially) as X\'."},"PUR":{"name":"Purposive","desc":"The entity/act/event which constitutes the inherent/innate/intrinsic purpose of another entity/act/event.
\'for the (dedicated) purpose/function of X\'"},"TRA":{"name":"Transmissive","desc":"Renamed from the Benefactive in Ithkuil III, this case indicates the party for which/whom an entity/act/event occurs or is transmitted, with the intention that the entity/act/event be beneficial/detrimental to the named party.
\'for (the benefit/detriment of) X\'"},"DFR":{"name":"Deferential","desc":"The entity for whose sake, or out of deference/respect to whom, an act/event occurs.
\'for X\'s sake\', \'out of deference for X\', \'out of respect for X\'"},"CRS":{"name":"Contrastive","desc":"The party for which something is substituted, or of which another party/entity takes its place;
\'instead of X\', \'as a substitute for X\', \'in place of X\'"},"TSP":{"name":"Transposive","desc":"The party on whose behalf something is/occurs."},"CMM":{"name":"Commutative","desc":"The party in exchange for which, a reciprocal or complementary act/event occurs;
e.g. He paid 100 dollars in exchange for the tickets."},"CMP":{"name":"Comparative","desc":"The party being compared to another, translatable as \'as compared to\', \'as opposed to,\' \'versus\'; with verbs it translates as \'whereas\' or \'while\' (in its synonymous usage to \'whereas\').
Examples: She chose the red one as opposed to the others, Sam drives a van versus Joe, who prefers a truck, At the party, she danced while/whereas I ate."},"CSD":{"name":"Considerative","desc":"The entity according to which, another entity is, or an act/event occurs."},"FUN":{"name":"Functive","desc":"Identifies a noun used to describe/characterize the manner in which an act/event/state occurs or exists,
e.g. She dances gracefully; The boys ate with gusto; That clown is speaking nonsense; Father speaks with such fortitude."},"TFM":{"name":"Transformative","desc":"Identifies the outcome or final state of a process, often translatable by \'to,\' \'until,\' or \'into\' in the sense of reaching a final state after undergoing some transformation.
Examples: The house burned to ashes, Mother reached a state of tranquility, The clowns will turn our children into slaves, Her father drank himself to death"},"CLA":{"name":"Classificative","desc":"Identifies a noun as a basis for arranging, sorting, classifying, or counting,
e.g. Place them in groups of three, The workers arranged the tables in rows, He lay down lengthwise, Can you count by fives?, I will sort them by color.
Also identifies the basis for recurring increments,
e.g. month by month; day in, day out; box upon box, clown after clown."},"RSL":{"name":"Resultative","desc":"Identifies a result/consequence, translatable as \'resulting in X\', \'with X as a consequence\', etc."},"CSM":{"name":"Consumptive","desc":"Identifies the entity consumed or used as a resource as a result of, or as a concurrent part of a process,
e.g. She cooks with tomatoes, The clown fed her an apple, He reads by candle(light)."},"CON":{"name":"Concessive","desc":"Identifies a noun or phrase which gives rise to an implicitly expected result which does not occur. This translates in many ways such as \'despite,\' \'in spite of,\' \'notwithstanding,\' \'although,\' \'regardless of,\' \'no matter what,\' etc.
Examples: In spite of his stupidity, he passed the test; The law notwithstanding, I will stand my ground; No matter how ignorant (they may be), they are welcome; Although a foreigner, we will let him in."},"AVR":{"name":"Aversive","desc":"Identifies a source or object of fear and/or avoidance. With nouns, it translates expressions such as \'for fear of,\' \'in order to avoid,\' or \'in avoidance of.\' With verbs, it would translate English ‘lest.’
Examples: She finished her plate for fear of my wrath, I traveled by night to avoid the sun. Hide the children, lest the clowns find them."},"CVS":{"name":"Conversive","desc":"Identifies an exception. When the exception is to a hypothetical situation, it translates as \'unless\' in verbal phrases, and \'without\' for nouns,
e.g. Without peace, this society is doomed; We\'ll be safe unless the clowns find us.
If applied to a real or actual situation, it translates as \'except (for)\', \'but for,\' \'but (not), \'excluding\', \'if not for,\' \'if it wasn\'t for,\' \'if it wasn\'t on account of.\'
If not for the rain, we would have had a good time; She loves everybody except clowns; All pets are vermin, excluding dogs; He eats almost anything but (not) spinach."},"SIT":{"name":"Situative","desc":"Identifies a noun as the background context for a clause without implying any direct causative relationship between the background context and the associated or consequent act/state/event. It translates in many ways,
e.g. Because of war, our planet will never be able to join the Federation; Given the presence of clowns, we must accept the corruption of our children; With my plan, we will defeat the enemy.
Other translations include: \'inasmuch as / insofar as / to the extent that / taking X into account / in view of the fact that / given that / considering\'."},"PRN":{"name":"Pertinential","desc":"Identifies the general referent of another formative, translating such English terms as \'about,\' \'regarding,\' \'concerning,\' \'in regard to,\' \'in reference to,\' \'pertaining to,\' or \'as for.\'"},"DSP":{"name":"Descriptive","desc":"Identifies a formative as describing another formative in an adjectival manner, translatable as \'characterized/describable as being like X; characterized/describable as having the quality/qualities of X\'"},"COR":{"name":"Correlative","desc":"Indicates an abstract general relationship, association, or conjunction between one formative and another, including subjective, contextual, metaphorical, or symbolic associations. It translates general phrases such as \'relative to,\' \'in relation to,\' \'in correlation with,\' \'in association with,\'
e.g. career goals, the soup of the day, the direction of that road, The elapsed time relative to the distance determines the winner, Our next topic is sex and/in art (i.e., the relationship between art and sex)."},"CPS":{"name":"Compositive","desc":"Identifies a noun as being the literal or figurative substance or component(s) of which another is made, composed, formed, built or comprised.
Example of usage would be That statue was carved out of marble, She owns three gold(en) coins, We were caught in a web of lies, I use a wooden ladder, It was a house of cards, Three suits comprise his wardrobe, Joe detests styrofoam cups."},"COM":{"name":"Comitative","desc":"Identifies a formative that accompanies another, translatable as \'(along) with\'. When used with Parallel or Complementary valence, signifies that the formative is being used in the same (or a complementary) way or is undergoing the same (or a complementary) activity as the other formative it is associated with
(i.e., the meaning of the Conjunctive case in Ithkuil III)."},"UTL":{"name":"Utilitative","desc":"Identifies a formative in the process of being used while some other activity or state is in progress. It does not imply the INSTRUMENT of an act as does the instrumental case.
Examples: the gun-wielding man, the umbrella-toting pedestrian, a girl with backpack (on)."},"PRD":{"name":"Predicative","desc":"Identifies the non-causal basis, foundation, sustenance (literally or figuratively), or required existential condition for another noun or clause, translatable by the phrases \'based (up)on,\' \'dependent (up)on\' or \'relying on.\'
Examples of use are a book dependent on a publisher, a man relying on charity, laws based in reason, success supported by corruption."},"RLT":{"name":"Relative","desc":"Identifies a formative (or case-frame) as constituting a relative clause associated with the preceding formative (or whatever formative is indicated by the DCD affix as being the head of the relative clause).
NOTE: a lone formative in Relative case not functioning as an external head of a relative clause need not be in Framed Relation."},"ACT":{"name":"Activative","desc":"Identifies the Experiencer of a modal state, such as obligation, necessity, desire, hope, expectation, wishing, being able to, etc. functioning as the \\"subject\\" of a modal(ized) verb governing a hypothetical state (i.e., what is wanted, needed, expected, able to be done, etc.)"},"ASI":{"name":"Assimilative","desc":"Identifies a formative used as a context for analogy or metaphorical comparison to another formative; translatable as \'as/like\' meaning \'as if (it were) X\' in the sense of comparison or analogy between one thing and another that it is not,
e.g. She sings like a bird; Treat her as/like a princess (= as if she were a princess); He talks like a child (even though he\'s an adult)."},"ESS":{"name":"Essive","desc":"Identifies the role or name by which an entity is known or contextually identified. It translates English \'as/like\' in the sense of naming or reference to the an entity\'s functional identity,
e.g. They called him a clown, The woman entered the club as an equal of any man, We consider you our only hope, Treat her as/like a princess (because she is one), He talks like a child (because he is a child)."},"TRM":{"name":"Terminative","desc":"Identifies a noun as being the goal of an act/event,
e.g. We seek a new planet; a desire to see his homeland; an academy for (making) champions."},"SEL":{"name":"Selective","desc":"Identifies a contextually recurring time-period, as well as a string of recurring entities,
e.g. I visit him every three days; Each year, I travel to the Clown Planet; He works nights; By day, she is an artisan; The clowns visit us on Sundays; ...every third book; ...every green one."},"CFM":{"name":"Conformative","desc":"The entity pursuant to which, as per which, or in conformance with which, another entity is, or an act/event occurs."},"DEP":{"name":"Dependent","desc":"Identifies as formative as being the basis of a dependency phrase on which another formative or phrase acts as the contingency, translatable as \'...if the circumstances regarding X are such to allow/warrant it\' where the final “it” refers to the original contingency noun/phrase whose existence/occurrence is (at least in part) determined by or contingent upon the dependency phrase. The exact nature of the dependency can be specified using the DPC affix."},"VOC":{"name":"Vocative","desc":"Signifies a noun being used in direct address."},"LOC":{"name":"Locative","desc":"entity identified as the location where something is situated or occurs; \'at / in / on / by X\' "},"ATD":{"name":"Attendant","desc":"entity in whose presence something is/occurs and which/who is thereby involved in some peripheral manner (e.g., as a witness, as a party affected or stimulated to action, etc.)"},"ALL":{"name":"Allative","desc":"entity toward which another entity is moving/approaching"},"ABL":{"name":"Ablative","desc":"entity away from which another entity is moving/receding"},"ORI":{"name":"Orientative","desc":"entity (often a body part or sub-component) which serves as the “face” or surface or “front” or “head” of an entity in terms of external communication or interaction, or which serves as the forward “end” of a spatially orientated axis aligned to a vector of motion in terms of directional movement."},"IRL":{"name":"Interrelative","desc":"signifies the directional/temporal orientation or position of an entity relative to another, i.e., a noun relative to whose position in space or time another noun is being described for purposes of spatial/temporal orientation,
e.g. He turned his back on me, It lies just west of the house, Tell me when the parade starts relative to my arrival."},"INV":{"name":"Intrative","desc":"Identifies a noun as being the spatio-temporal boundary point of a span or volume of space or a period of time, i.e, either the starting point or the ending point of a span of time or space.
English translations include: \'as of X\' / \'since X\' / \'until X\'; for spatial contexts, translates as “between there and here” / “between here and there”)"},"NAV":{"name":"Navigative","desc":"entity whose literal or metaphorically inferred long axis serves as the direction of another entity\'s path, course, arc, or trajectory of translative motion"},"CNR":{"name":"Concursive","desc":"Indicates a “temporal locative” meaning \'at or during the time of X\', i.e., the point or stretch in time at or during which an entity or an act/event exists or occurs."},"ASS":{"name":"Assessive","desc":"Specifies the increment of space or time or unit by which a contextual ratio of measurement is created,
e.g. He charges by the minute. It travels at 90 kilometers per hour. He earns $25 per book."},"PER":{"name":"Periodic","desc":"Identifies the span of time / time frame at some point(s) during which, separate events, repetitions, or durationally segmented acts or states take place.
Examples would be He wrote the novel in/over six months, These clowns can corrupt your child within a few days, The woman has been ill a lot this year, For the last several concerts, my voice has been deteriorating."},"PRO":{"name":"Prolapsive","desc":"Signifies the duration of an act, condition, or event, i.e., how long it takes or lasts,
e.g. He prayed through lunch, It rained all night, It took three days for the fever to break, She sang for an hour."},"PCV":{"name":"Precursive","desc":"Identifies an entity acting as a point in time prior to which an act, condition, or event occurs,
e.g. \'this city before the war\', \'a presentation preceding the banquet\'."},"PCR":{"name":"Postcursive","desc":"Identifies an entity acting as a point in time after which, following which, subsequent to which, an act, state, or event occurs,
e.g. \'this city after the war\', \'a presentation following the banquet\', \'It\'s been a long time since I danced\'."},"ELP":{"name":"Elapsive","desc":"Identifies the amount of time that has passed or is expected to pass between the contextual present and the time of the act, condition, or event being spoken of. It corresponds to English \'...ago\' or \'...from now\'.
Examples would be Four years ago I was a student; Going back three generations, women could not even vote; Four years from now, I will be a student; Looking ahead three generations, clowns will rule the world; I will be home in three days; Little did he know that two months later he\'d be a rich man.
The past vs. future distinction is determined from context, any aspectual morphology, or may be specified with the new TPL affix. "},"PLM":{"name":"Prolimitive","desc":"Signifies the spatio-temporal boundary point of a span of time or space during which or within which something is expected to or must occur or be situated.
Equivalent to English phrases: by the end of X / within the period ending in X / within the period ending with X / before X is over / before X is up / inside of (the period signified by) X"}},"popupdesc":"Cases are the role of the word in a sentence, and New Ithkuil has 68.
They are split into seven categories;
Transrelative, which are similar to cases in natural languages,
Appositive, which is to do with possession-esque relations,
Associative, which is similar but more related to reasons and motives,
Adverbial, which (fairly obviously) is for adverb-like words,
Relational,
Affinitive, and
Spatio-Temporal, which are for words describing the space or time of the sentence."},"ill":{"type":"","title":"Illocution","options":{"ASR":{"name":"Assertive","desc":"The statement is an assertion/proposition about the world which constitutes a truth claim"},"DIR":{"name":"Directive","desc":"The statement is either an imperative command to another party to do/be something, or a \\"commissive\\" statement committing the speaker to a specific state or course of action (i.e., a vow, promise, guarantee, etc.)"},"DEC":{"name":"Declarative","desc":"A \\"performative\\" statement which, by its utterance/publication, creates a change of state (at least psychologically) for the addressees (i.e. a declaration, announcement, edict, etc.)"},"IRG":{"name":"Interrogative","desc":"A statement whose purpose is to inquire or seek information from the addressee (i.e., equivalent to an English WH-question)"},"VRF":{"name":"Verificative","desc":"A statement whose purpose is to seek/obtain corroboration, confirmation, or verification (i.e., equivalent to a Yes/No question)"},"ADM":{"name":"Admonitive","desc":"A statement whose purpose is to provide advisory/admonitive information to the addressee (i.e., a warning)"},"POT":{"name":"Potentiative","desc":"A statement of wishing, hoping, or other unreal(ized) provenance"},"HOR":{"name":"Hortative","desc":"A counterfactual statement indicating a desired but impossible state of affairs that cannot be realized (equivalent to English hortative constructions such as If only..., Were that..., If only it were so that..."},"CNJ":{"name":"Conjectural","desc":"Equivalent to an English-language \\"if\\"-clause, indicating that the statement is offered as a conjectured hypothetical, ostensibly to be followed by a \\"then...\\" implicational clause. Translatable as \\"If (it were the case that)...\\""}},"popupdesc":"Illocution refers to the type of \\"speech act\\" made by the speaker, i.e. the purpose and intended interpretation of the statement.
Alongside Mood and Validation, it refers to the whole statement."},"vld":{"type":"","title":"Validation","options":{"OBS":{"name":"Observational","desc":"The statement is true because of present sensory knowledge or present sensory experience: “I perceive... / I know...” "},"REC":{"name":"Recollective","desc":"The statement is true because of past sensory knowledge or past sensory experience: “I remember... / I know (from memory)...”"},"PUP":{"name":"Purportive","desc":"The statement is true because of knowledge from a definitive/(quasi-)verifiable 3rd party source: “I\'ve read... / (an expert) has said...”"},"RPR":{"name":"Reportive","desc":"The statement is true because of knowledge from a 3rd party: “I heard (from someone)... / someone has said...”"},"USP":{"name":"Unspecified","desc":"[Validation deliberately left unspecified]"},"IMA":{"name":"Imaginary","desc":"The statement is NOT true because it is: an unreal statement, not intended as true, based on whim, imagination, dream, altered mental state, etc."},"CVN":{"name":"Conventional","desc":"The statement is true because of cultural/conventional (i.e., collectively agreed-upon) knowledge: “They say... / It is said...”"},"ITU":{"name":"Intuitive","desc":"The statement is true because of intuition, a hunch, subjective feeling, past experiences, etc. - “I feel... / I have a hunch... / something tells me...”"},"INF":{"name":"Inferential","desc":"The statement is true because of inference from evidence (or absence of alternatives), induction, extrapolation, etc. “I infer... / I reason...”"}},"popupdesc":"Validation only applies when the Illocution is Assertive.
It refers to the evidential basis for a statement (i.e. why it\'s true).
Alongside Mood and Illocution, it refers to the whole statement."},"ref":{"type":"","title":"Referential","popupdesc":"Similar to pronouns in most languages (I, you, they, etc.)","options":{"1M":{"name":"Monadic Speaker","desc":"\'I\'"},"2M":{"name":"Monadic Addressee","desc":"\'you (singular)\'"},"2P":{"name":"Polyadic Addressee","desc":"\'you (plural)\'"},"MA":{"name":"Monadic Animate 3rd Party","desc":"\'he\'/\'she\'/\'they (singular)\'"},"PA":{"name":"Polyadic Animate 3rd Party","desc":"\'they (plural)\'"},"MI":{"name":"Monadic Inanimate 3rd Party","desc":"\'it\'"},"PI":{"name":"Polyadic Inanimate 3rd Party","desc":"\'these things/those things\'"},"MX":{"name":"Mixed Animacy 3rd Party","desc":"mixed animate+inanimate, e.g. \'s/he+it\', \'they+those\', \'it+they\', \'those+s/he\', etc"},"RDP":{"name":"Reduplicative","desc":"Referring back to the previously-named party (often used with SWR affix)"},"OBV":{"name":"Obviative","desc":"3rd party other than the one previously referenced"},"PVS":{"name":"Provisional","desc":"\'whatever\'; vague or unknown entity (corresponds with English WH-words)"}}},"refEff":{"type":"","title":"Referential Effect","popupdesc":"Similar to the normal Effect, this describes if this person is being referred to beneficially or detrimentally.
May potentially be linked to the Effect of another word (e.g. \'the detrimental 3rd party\')","options":{"NEU":{"name":"Neutral"},"BEN":{"name":"Beneficial"},"DET":{"name":"Detrimental"}}},"refPersp":{"type":"","title":"Referential Perspective","popupdesc":"The same as the normal Perspective, but applied to the referential.
Does nothing, currently.","options":{"M":{"name":"Monadic","desc":"The MONADIC means that there is a certain number of (relevant) instances of the word. When combined with things like the MULTIPLEX, it means that the entire group is being considered as a whole (\\"forest(s)\\", not \\"trees\\")."},"G":{"name":"Agglomerative","desc":"The AGGLOMERATIVE is similar to the MONADIC, except it doesn\'t imply any sense of number; as in, \\"one or more X\\". It is also used for turning nouns (such as \\"a strand of hair\\" in the MONADIC) into mass nouns (such as \\"hair\\" in the AGGLOMERATIVE)"},"N":{"name":"Nomic","desc":"The NOMIC refers to the general archetype of the word as opposed to any specific instance of it. Examples are: The dog is a noble beast, Clowns are what children love most, There is nothing like a tree."},"A":{"name":"Abstract","desc":"Similar to the formation of English abstract nouns using suffixes such as -hood or -ness, the ABSTRACT transforms a configurative category into an abstract concept considered in a non-spatial, timeless, numberless context.
Examples: grove → the idea of being a grove or “grovehood”; book → everything about books, having to do with books, involvement with books.

With verbs, the ABSTRACT is used in verbal constructions to create a temporal abstraction, where the temporal relationship of the action, event, or state to the present is irrelevant or inapplicable, similar to the way in which the English infinitive or gerund form (used as substitutes for a verb phrase) do not convey a specific tense in the following sentences: Singing is not his strong suit; It makes no sense to worry about it; I can\'t stand her pouting."}}},"twoRefs":{"type":"checkbox","title":"Use two Referentials?","popupdesc":"Please note that the referential will use the second case.
If this is turned off, the second case is stacked on the first referential."},"twoCs":{"type":"checkbox","title":"Apply two Cases?","popupdesc":"Fairly self-explanatory. Applies another case to the word."},"refAffix":{"type":"affix","title":"Referential Affixes","popupdesc":"Affixes to be applied to this referential. Again, fairly self-explanatory."},"suppType":{"type":"","title":"Adjunct Type","options":{"CAR":{"name":"Carrier","desc":"This is a “shortcut” for a full carrier stem, providing Case information only. It is used when the identity/nature of the foreign word(s) or proper name following the adjunct is already known to the addressee."},"QUO":{"name":"Quotative","desc":"This adjunct combines the Carrier Adjunct with the DISCURSIVE Register Adjunct to allow direct quotes to be placed within a caseframe, useful for translating imbedded quotes within sentences such as He told me “get out of the house!”"},"NAM":{"name":"Naming","desc":"This adjunct indicates that the following word is a name being referred to as such, rather than referring to the entity that bears the name, i.e., it would be used before the name Emily in the sentence ‘He said “Emily”’ as opposed to the sentence ‘He said “tell Emily”’ which would use the Quotative adjunct, or ‘He said to tell Emily’ which would use the Carrier adjunct."},"PHR":{"name":"Phrasal","desc":"This adjunct is essentially a specialized form of the carrier adjunct above to apply meta-level grammatical information to an entire subsequent phrase as a whole. This is similar to a case-frame, except that where case-frames function solely as an equivalent to subordinate clauses in Western languages, this adjunct causes the subsequent phrase to become a conventionalized, (quasi-)lexicalized gestalt."}},"popupdesc":"This describes which kind of Suppletive Adjunct is being used, as there are four kinds. They all refer to the words immediately after them, like all adjuncts."},"affRoot":{"type":"text","title":"Root Affix","popupdesc":"This is a special kind of Affix that functions not as a modifier to a root but as the actual root itself of this word. It can have other affixes applied to it in Slots V and VII."},"arDegree":{"type":"","title":"Degree","popupdesc":"The degree of the Root Affix. Functions like the degree of any other affix.","options":[{"name":"Degree 1"},{"name":"Degree 2"},{"name":"Degree 3"},{"name":"Degree 4"},{"name":"Degree 5"},{"name":"Degree 6"},{"name":"Degree 7"},{"name":"Degree 8"},{"name":"Degree 9"},{"name":"Degree 0","desc":"This is a special degree which relates to the generic concept of the affix as a whole, similar to Stem 0 of a normal root."}]},"affixjunct":{"type":"affix","title":"Adjunct Affixes","popupdesc":"The affixes shown on this specific adjunct. This is how you apply affixes in other scope locations on a word."},"initialAffScope":{"type":"","title":"Initial affix scope","popupdesc":"Where the first affix out of the Adjunct Affixes is applied on the next word","options":{"VDom":{"name":"Last of Slot V","desc":""},"VSub":{"desc":""},"VIIDom":{"name":"Last of Slot VII","desc":""},"VIISub":{"name":"First of Slot VII","desc":""},"formative":{"name":"Entire Formative","desc":""},"adjacent":{"name":"Formative + Affixes","desc":""}}},"otherAffScope":{"type":"","title":"Other affix scopes","popupdesc":"Where the other affixes of the Adjunct Affixes are applied on the next word","options":{"VDom":{"name":"Last of Slot V","desc":""},"VSub":{"name":"First of Slot V","desc":""},"VIIDom":{"name":"Last of Slot VII","desc":""},"VIISub":{"name":"First of Slot VII","desc":""},"formative":{"name":"Entire Formative","desc":""},"adjacent":{"name":"Formative + Affixes","desc":""},"same":{"name":"Same as Initial","desc":""}}},"affScopeOf":{"type":"","title":"Apply to...","popupdesc":"Which of the following concatenated formatives this actually applies to","options":{"default":{"name":"Default (all)","desc":"Apply this affix to the main formative"},"conc":{"name":"Concatenated only","desc":"Apply this affix only to the concatenated formative"}}},"register":{"type":"","title":"Register","popupdesc":"Which register the next (or previous) bit of text is in; what type of speaking is it?
No specified register is the NARRATIVE, which is normal speech.","options":{"DSV":{"name":"Discursive","desc":"Direct speech"},"PNT":{"name":"Parenthetical","desc":"Parenthetical aside"},"SPF":{"name":"Specificative","desc":"Proper name of preceding referent
(If the identification of the preceding referent is not a proper name, use PNT register instead)"},"EXM":{"name":"Exemplificative","desc":"\'for example, ...\'"},"CGT":{"name":"Cogitant","desc":"Silent/subjective thoughts"},"END":{"name":"Carrier-End","desc":"End of term/phrase governed by carrier stem/adjunct
(Use the END end-adjunct marker for any register where the referent within the register clause is a proper name or a foreign word/phrase)
ONLY works if this is a Final marker."}}},"regStartOrEnd":{"type":"","title":"Initial/Final","popupdesc":"Whether this adjunct marks the start or end of a register.","options":[{"name":"Initial","desc":"This adjunct marks the start of the appropriate register"},{"name":"Final","desc":"This adjunct marks the end of the appropriate register
Alternatively, use a low tone on the last word of the clause."}]},"modAppliesTo":{"type":"","title":"Apply to...","popupdesc":"Where the various other things apply to","options":{"all":{"name":"All","desc":"Apply to both the concatenated and the parent formative after this adjunct (use this if no concatenation)"},"parent":{"name":"Parent Only","desc":"Apply to only the parent formative after this adjunct"},"concat.":{"name":"Concatenated only","desc":"Apply to only the concatenated formative after this adjunct"}}},"modNumber":{"type":"","title":"Number of modules","popupdesc":"How many VₙCₙs you want on this adjunct","options":{"1":{"name":"1 (no Vₕ, no Cₙ)","desc":"Only one VnCn, but without the Mood/Case-Scope"},"2":{"name":"2 (no Vₕ) or 1"},"3":{"name":"3 (no Vₕ) or 2"}}},"cn":{"type":"","title":"Cₙ","popupdesc":"Whether this adjunct will show Mood or Case-Scope","options":{"mood":{"name":"Mood","desc":"Mood refers to the knowability and truthfulness of a statement, and describes both the truth of the actual statement and any underlying presuppositions."},"casc":{"name":"Case-Scope","desc":"Formatives showing Case use the Case-Scope to indicate the scope of a case-marked formative over adjacent formatives. This is useful when there is a string of cases modifying another “head” formative; specifies which has scope over which other formative."}}},"vh":{"type":"","title":"Vₕ/Vₙ","popupdesc":"Whether this adjunct will show Valence/Phase/Level/Effect(/Aspect) or the Specialized Scope.
If the Number of Modules is 1, then this will show Aspect.","options":{"vn":{"name":"Vₙ","desc":"Show an additional Vₙ on this affix"},"vh":{"name":"Vₕ","desc":"Show the Specialized Scope of the Adjunct on this adjunct.
Allows for modifying where the VPLEA and Mood/Case-Scopes are applied on the next formative."}}},"modScope":{"type":"","title":"Specialised Scope","popupdesc":"Describes where on the following formative the meaning of this affix will be applied, scope-wise.
All affixes have right-to-left scope on each other (Slot 2 < Slot 3 < Slot 4).
If this is unspecified (i.e. not shown), then the options have the same scope as if they were in the main word.","options":{"a":{"name":"Scope over Case/Mood and IEV","desc":"This adjunct has scope over everything except Bias"},"e":{"name":"Scope over Case/Mood","desc":"This adjunct has scope over everything except Bias, Illocution, Expectation, and Validation"},"i":{"name":"Scope over entire Formative","desc":"This adjunct has scope over everything except any Adjuncts
NOTE: Do not use if an adjacent affixual adjunct shows scope over this adjunct"},"o":{"name":"Scope over Formative + Adjuncts","desc":"This adjunct has scope over everything
NOTE: Do not use if an adjacent affixual adjunct shows scope over this adjunct"}}},"bias":{"type":"","title":"Bias","popupdesc":"Bias adjuncts function much like English \\"supra-segmental\\" interjections such as \\"Phew!\\", \\"Damn!\\", \\"tsk-tsk\\", \\"Pssshhh\\", \\"huh?\\", \\"meh\\", \\"hmmm\\", etc
Sentence-initial Bias adjuncts scope over the entire sentence. Otherwise, they scope over the preceding formative. They should be pronounced with a preceding and following pause.","options":{"ACC":{"name":"Accidental","desc":"‘As luck would have it...’ ‘Fate has decided that...’ ‘What luck!’","word":"lf"},"ACH":{"name":"Archetypal","desc":"what (a) ...!; how . . .! ; Boy! Did (does) X ever …","word":"mçt"},"ADM":{"name":"Admissive","desc":"‘Mm-hm’ ‘Uh-huh’ (said as mere acknowledgement of a statement without any implied agreement with or assent to the statement)","word":"lļ"},"ANN":{"name":"Annunciative","desc":"‘Guess what!’ or ‘Wait till you hear this!’","word":"drr"},"ANP":{"name":"Anticipative","desc":"‘I’m looking foward to this!’ ","word":"lst"},"APB":{"name":"Approbative","desc":"‘(That’s) OK’ ‘(That’s) alright’ ‘(That’s) good’ ‘(That’s) fine’ ‘Very well’ ‘Sure’","word":"řs"},"APH":{"name":"Apprehensive","desc":"‘I’m worried...’ ‘I’ve got a bad feeling about this...’ ","word":"vvz"},"ARB":{"name":"Arbitrary","desc":"‘..Yeah, whatever...’, ‘...Ah, what the hell, I’m going ahead and....’ ","word":"xtļ"},"ATE":{"name":"Attentive","desc":"‘Well, whaddya know...’ ‘Well, will you look at that...!’ ‘Well, go figure...’ ‘Who would’ve thought...?’ ‘Well I’ll be!’","word":"ňj"},"CMD":{"name":"Comedic","desc":"‘Funny!’ ‘LOL’","word":"pļļ"},"CNV":{"name":"Contensive","desc":"‘I’m telling you...’, ‘I told you so!’, ‘You see?!’","word":"rrj"},"COI":{"name":"Coincidental","desc":"‘What a coincidence!’","word":"ššč"},"CRP":{"name":"Corruptive","desc":"‘How corrupt!’ ‘What corruption!’","word":"gžž"},"CRR":{"name":"Corrective","desc":"‘that is to say…,’ ‘What I mean(t) to say is…’ ‘I mean….’","word":"ňţ"},"CTP":{"name":"Contemptive","desc":"‘What nonsense!’ or ‘What bullshit!’","word":"kšš"},"CTV":{"name":"Contemplative","desc":"‘I wonder how…,’ ‘that’s odd…,’ ‘I don’t get it…,’ or a quizzical ‘hmmmm.’","word":"gvv"},"DCC":{"name":"Disconcertive","desc":"‘I’m not sure about this.’ ‘I don’t feel comfortable about this.’ ‘I’m feeling out of my element here.’","word":"gzj"},"DEJ":{"name":"Dejective","desc":"‘(sigh)’ [of dejection/disillusionment]","word":"žžg"},"DES":{"name":"Desperative","desc":"‘I don’t know how to say this, but…’ ‘I’m afraid that….’ ‘I’m sorry to have to tell you, but...’","word":"mřř"},"DFD":{"name":"Diffident","desc":"‘sorry, but…’ ‘It’s nothing. It’s just…’","word":"cč"},"DIS":{"name":"Dismissive","desc":"‘Is that it?’ ‘Big deal!’ ‘So what!?’ ","word":"kff"},"DLC":{"name":"Delectative","desc":"‘Whee!’","word":"ẓmm"},"DOL":{"name":"Dolorous","desc":"‘Ow!’ ‘Ouch!’","word":"řřx"},"DPB":{"name":"Disapprobative","desc":"‘I don’t like the fact that…’ ‘It bothers me that….’ ‘Unacceptable!’ ‘I hate it!’","word":"ffx"},"DRS":{"name":"Derisive","desc":"‘How foolish!’ ‘How silly!’ ‘Look at how foolish/silly/ridiculous this is!’","word":"pfc"},"DUB":{"name":"Dubitative","desc":"‘Hmm, not likely.’ ‘I doubt it.’ ‘Sounds fishy to me’ ‘I don’t trust this/it/him/her/them...’","word":"mmf"},"EUH":{"name":"Euphoric","desc":"‘(Sigh) What bliss!’","word":"gzz"},"EUP":{"name":"Euphemistic","desc":"‘Let’s just say that….’ or ‘Well, let me put it this way….’","word":"vvt"},"EXA":{"name":"Exasperative","desc":"‘Dammit!’ ‘Look, don’t you get it?…’ ‘Look, I’m trying to tell you….’","word":"kçç"},"EXG":{"name":"Exigent","desc":"‘It’s now or never!’","word":"rrs"},"EXP":{"name":"Experiential","desc":"‘Ah!’, ‘Well, now!’ ‘So!’ [Italian ‘Allora!’]","word":"pss"},"FOR":{"name":"Fortuitous","desc":"‘It’s just as well that...’ or ‘All’s well that ends well...’","word":"lzp"},"FSC":{"name":"Fascinative","desc":"‘Cool!’ ‘Wow!’ ‘Awesome!’","word":"žžj"},"GRT":{"name":"Gratificative","desc":"‘Ah! What bliss...!’ ‘Oh, there’s nothing like….’ [physical pleasure only]","word":"mmh"},"IDG":{"name":"Indignative","desc":"‘The nerve!’ or ‘How dare…!?’","word":"pšš"},"IFT":{"name":"Infatuative","desc":"‘Praise be to...!’ ‘Oh, thank God for...!’ ‘There’s nothing more sacred/holy/important than...!’","word":"vvr"},"IPL":{"name":"Implicative","desc":"‘of course,’ ‘after all,’ ‘needless to say.’","word":"vll"},"IPT":{"name":"Impatient","desc":"‘C’mon!,’ ‘What’re you waiting for?’ ‘so…already!’ as in the sentence ‘So dance already!’","word":"žžv"},"IRO":{"name":"Ironic","desc":"‘Oh, nice!’ ‘Just great!’ ‘Well, now, isn’t this lovely!’","word":"mmž"},"ISP":{"name":"Insipid","desc":"‘Meh... (said due to lack of interest)’ ‘How boring/tedious/dull!’","word":"lçp"},"IVD":{"name":"Invidious","desc":"‘Why does he/she/they get to... and I don’t?!’ ‘How unfair (that I don’t get to...)!’","word":"řřn"},"MAN":{"name":"Mandatory","desc":"‘take it or leave it,’ ‘this is your last chance,’","word":"msk"},"OPT":{"name":"Optimal","desc":"prolonged ‘so’ or ‘totally’ as in ‘I so don’t care!’ or ‘That is totally not what I meant.’","word":"ççk"},"PES":{"name":"Pessimistic","desc":"‘Yeah, like it really matters that...’ ‘Pfft! What’s it to me?’","word":"ksp"},"PPT":{"name":"Propitious","desc":"‘it’s a wonder that’ as in It’s a wonder he didn’t break a bone in that fall. ","word":"mll"},"PPX":{"name":"Perplexive","desc":"‘Huh? What do you mean…? What the hell? ‘WTF!?’ ‘You gotta be kidding me!’","word":"llh"},"PPV":{"name":"Propositive","desc":"‘what if…’ ‘It could be that….’ ‘Consider this: …’ ‘Posit the following: …’ ‘Assume for the sake of argument that….’","word":"sl"},"PSC":{"name":"Prosaic","desc":"‘Meh... (said in disappointment)’ ‘How ordinary!’","word":"žžt"},"PSM":{"name":"Presumptive","desc":"‘It can only mean one thing…,’ ‘and that’s that!’ ‘and that’s all there is to it!’ or ‘There’s no two ways about it,….’","word":"nnţ"},"RAC":{"name":"Reactive","desc":"‘My goodness! ‘Wow!’ ‘Amazing!’","word":"kll"},"RFL":{"name":"Reflective","desc":"‘Look at it this way…’ ‘As I see it,…’ ‘In my opinion…’ ‘From my point of view…’","word":"llm"},"RNC":{"name":"Renunciative","desc":"‘So much for...!’ ‘There goes...!’","word":"msf"},"RPU":{"name":"Repulsive","desc":"‘Yuck! Ew! How gross!’","word":"šštļ"},"RVL":{"name":"Revelative","desc":"‘No wonder…!’ or ‘So that’s why…!’ ‘A-ha!….’ ‘Well, well, well!….’","word":"mmļ"},"SAT":{"name":"Satiative","desc":"‘How satisfying...!’ ‘At last, the pleasue of knowing/being/seeing/doing….’ [psychological/emotional pleasure/satiety only]","word":"ļţ"},"SGS":{"name":"Suggestive","desc":"‘How about...’ ‘We could...’ ‘Might I suggest...’","word":"ltç"},"SKP":{"name":"Skeptical","desc":"‘Yeah, right!’ ‘Oh, sure! Like anyone’s supposed to believe that!’","word":"rnž"},"SOL":{"name":"Solicitative","desc":"‘please’","word":"ňňs"},"STU":{"name":"Stupefactive","desc":"‘Woah!’ ‘Holy, bejeezus!’ ‘What the...!’ ‘Jeez, Louise...!’","word":"ļļč"},"TRP":{"name":"Trepidative","desc":"‘Oh, God…’ ‘Oh, no!….’ ‘Oh, dear!’ [fear-based]","word":"llč"},"VEX":{"name":"Vexative","desc":"‘How annoying!’ ‘What a bother!’ ‘What a pain!’","word":"ksk"}}},"freeType":{"type":"text","title":"Text Entry","popupdesc":"A borrowed word, probably spelt phonetically. Don\'t forget to prefix it with the appropriate suppletive adjunct!"}}'),fs=JSON.parse('{"p":["stop","unvoiced","labial"],"b":["stop","voiced","labial"],"t":["stop","unvoiced","apico"],"d":["stop","voiced","apico"],"k":["stop","unvoiced","velar"],"g":["stop","voiced","velar"],"f":["fric","unvoiced","labial","nonsibil"],"v":["fric","voiced","labial","nonsibil"],"ţ":["fric","unvoiced","apico","nonsibil"],"ḑ":["fric","voiced","apico","nonsibil"],"s":["fric","unvoiced","apico","sibil"],"z":["fric","voiced","apico","sibil"],"š":["fric","unvoiced","apalat","sibil"],"ž":["fric","voiced","apalat","sibil"],"ç":["fric","unvoiced","palat","nonsibil"],"x":["fric","unvoiced","velar","nonsibil"],"h":["fric","unvoiced","glott"],"ļ":["fric","unvoiced","lateral"],"c":["affric","unvoiced","apico","sibil"],"ẓ":["affric","voiced","apico","sibil"],"č":["affric","unvoiced","apalat","sibil"],"j":["affric","voiced","apalat","sibil"],"m":["nasal","voiced","labial"],"n":["nasal","voiced","apico"],"ň":["nasal","voiced","velar"],"r":["liquid","voiced","apico"],"l":["liquid","voiced","lateral"],"w":["approx","voiced","labial"],"y":["approx","voiced","palat"],"ř":["approx","voiced","uvul"]}'),gs={name:"Ithkuil_v4",components:{OptionBox:ps},props:{listenModal:Array,listenWordtype:String,listenWord:Object,selectedWord:Number,sLength:Number,nextWord:Array},watch:{listenModal(e){this.updateFromModal(e[0],e[1])},listenWordtype(e){this.switchWordType(e)},listenWord(e){for(var t in this.gOptions=JSON.parse(JSON.stringify(e)),e)this.updateFromModal(t,JSON.parse(JSON.stringify(e[t])));this.handleSendMessage(e.root,"root")},ithkword(e){this.$emit("ithkword",[e,this.ipa,this.gloss,this.fullGloss]),this.$emit("gEmit",this.gOptions)},ipa(e){this.$emit("ithkword",[this.ithkword,e,this.gloss,this.fullGloss])},gloss(e){this.$emit("ithkword",[this.ithkword,this.ipa,e,this.fullGloss])},fullGloss(e){this.$emit("ithkword",[this.ithkword,this.ipa,this.gloss,e])}},data(){return{defaultWord:"aal",settings:{IPA:{a:["Pronunciation of ⟨a⟩: ","[a]",["[a]","[ɑ]"]],e:["Pronunciation of ⟨e⟩: ","[ɛ]",["[ɛ]","[e]"]],"ë":["Pronunciation of ⟨ë⟩: ","[ɤ]",["[ɤ]","[ʌ]","[ə]"]],i:["Pronunciation of ⟨i⟩: ","[i]",["[i]","[ɪ]"]],o:["Pronunciation of ⟨o⟩: ","[ɔ]",["[ɔ]","[o]"]],"ö":["Pronunciation of ⟨ö⟩: ","[œ]",["[œ]","[ø]"]],u:["Pronunciation of ⟨u⟩: ","[ʊ]",["[ʊ]","[u]"]],"ü":["Pronunciation of ⟨ü⟩: ","[ʉ]",["[ʉ]","[y]"]],x:["Pronunciation of ⟨x⟩: ","[x]",["[x]","[χ]"]],rr:["Pronunciation of ⟨řř⟩: ","[ʁː]",["[ʁː]","[ʀ]"]],hx:["Pronunciation of ⟨hl⟩, ⟨hr⟩, ⟨hm⟩, ⟨hn⟩, ⟨hň⟩: ","Devoiced",["Devoiced","As written"]]},Miscellaneous:{ej:["Calculate External Juncture? ",!0],s8:["Move Slot 8 consonant to Slot 6 if possible? ",!1]}},wordType:"normal",gData:us,cData:fs,gDefault:{root:"",stem:"s1",func:"STA",spec:"BSC",ctxt:"EXS",ver:"PRC",concat:"0",shcut:"0",Vafx:[],VIIafx:[],plex:"UPX",simil:"S",cctd:"S",affil:"CSL",ext:"DEL",persp:"M",ess:"NRM",vn:"val",val:"MNO",pha:"PCT",eff:"1:BEN",lvl:"MIN",asp:"RTR",mood:"FAC",casc:"CCN",rel:"UNF/C",c:"THM",ill:"ASR",vld:"OBS",suppType:"CAR",affRoot:"",arDegree:0,affixjunct:[],initialAffScope:"VDom",otherAffScope:"VDom",affScopeOf:"default",register:"DSV",regStartOrEnd:"0",vn2:"val",val2:"MNO",pha2:"PCT",eff2:"1:BEN",lvl2:"MIN",asp2:"RTR",mood2:"FAC",casc2:"CCN",vn3:"val",val3:"MNO",pha3:"PCT",eff3:"1:BEN",lvl3:"MIN",asp3:"RTR",v4n:"val",val4:"MNO",pha4:"PCT",eff4:"1:BEN",lvl4:"MIN",asp4:"RTR",cn:"mood",modAppliesTo:"all",modNumber:"1",vh:"vn",modScope:"a",ref:"1M",refEff:"NEU",refPersp:"M",ref2:"1M",refEff2:"NEU",refPersp2:"M",ess2:"NRM",c1:"THM",c2:"THM",twoRefs:!1,twoCs:!1,refAffix:[],bias:"ACC",freeType:""},gOptions:{},sVowels:[["a","ai","ia","ao"],["ä","au","ie","aö"],["e","ei","io","eo"],["i","eu","iö","eö"],["ëi","ëu","eë","oë"],["ö","ou","uö","öe"],["o","oi","uo","oe"],["ü","iu","ue","öa"],["u","ui","ua","oa"],["ae","ea","üo","üö"]],ipaLookup:{p:"p",b:"b",m:"m",f:"f",v:"v",w:"w",t:"t",d:"d","ţ":"θ","ḑ":"ð",s:"s",z:"z",c:"ts","ẓ":"dz","š":"ʃ","ž":"ʒ","č":"tʃ",j:"dʒ","ç":"ç",y:"j",k:"k",g:"g","ň":"ŋ","ř":"ʁ","'":"ʔ",h:"h","ļ":"ɬ",l:"l"},shortcutting:!1,shcuttypeA:0,shcuttypeB:0,slotVIIshortcut:!1,sDip:["ai","ei","ëi","oi","ui","au","eu","ëu","ou","iu"],sAccent:{a:"á",e:"é",i:"í","ì":"í",o:"ó",u:"ú","ä":"â","ë":"ê","ö":"ô","ü":"û"},slots:["","","","","","","","","","",""],cut:[!1,!1,!1],ithkword:"",gloss:"",fullGloss:"",ipa:"",cascOrMood:!1,eightSix:!1,allographs:{cczz:"čč",yc:"čč",xxy:"çç",ccs:"çç",ddt:"ḑḑ",hxll:"ļļ",wwnn:"ňň",yn:"ňň",wrr:"řř",yr:"řř",ssz:"šš",tts:"ţţ",ttd:"ţţ",wtt:"ţţ",zzs:"žž",ddz:"ẓẓ",dzz:"ẓẓ",cz:"č",xy:"ç",cs:"ç",dt:"ḑ",hxl:"ļ",wn:"ň",wr:"ř",sz:"š",ts:"ţ",td:"ţ",wt:"ţ",zs:"ž",dz:"ẓ",aaqqq:"â'",eeqqq:"ê'",ooqqq:"ô'",uuqqq:"û'",aqqq:"ä'",eqqq:"ë'",oqqq:"ö'",uqqq:"ü'",qq:"'",aaq:"â",ooq:"ô",eeq:"ê",uuq:"û",aq:"ä",eq:"ë",uq:"ü",oq:"ö",aa:"á",ee:"é",ii:"í",oo:"ó",uu:"ú","ṭ":"ţ","ŧ":"ţ","ḍ":"ḑ","đ":"ḑ","ņ":"ň","ṇ":"ň","ŗ":"ř","ṛ":"ř","ł":"ļ","ḷ":"ļ","ż":"ẓ","ı":"i"},tabGroups:{normal:[["root","stem","spec"],["func","ver","ctxt"],["shcut","concat","rel"],["Vafx","VIIafx"],["plex","simil","cctd"],["affil","ext","persp","ess"],["vn","val","pha","eff","lvl","asp"],["casc","c"],["mood","ill","vld"]],suppletive:[["suppType","c"]],affRoot:[["affRoot","arDegree"],["spec","func","ver","ctxt"],["shcut","concat","rel"],["Vafx","VIIafx"],["plex","simil","cctd"],["affil","ext","persp","ess"],["vn","val","pha","eff","lvl","asp"],["casc","c"],["mood","ill","vld"]],refRoot:[["ref","refEff","refPersp"],["spec","func","ver","ctxt"],["shcut","concat","rel"],["Vafx","VIIafx"],["plex","simil","cctd"],["affil","ext","persp","ess"],["vn","val","pha","eff","lvl","asp"],["casc","c"],["mood","ill","vld"]],affixjunct:[["affixjunct","initialAffScope","otherAffScope","affScopeOf"]],register:[["register","regStartOrEnd"]],modular:[["modAppliesTo","modNumber","cn","vh"],["vn","val","pha","eff","lvl"],["vn2","val2","pha2","eff2","lvl2","asp2"],["vn3","val3","pha3","eff3","lvl3","asp3"]],ref:[["ref","refEff","refPersp","c1"],["twoCs","twoRefs","ref2","refEff2","refPersp2","c2","ess2"]],refCS:[["ref","refEff","refPersp","c1","spec"],["refAffix","twoCs","c2","ess2"]]}}},methods:{async handleSendMessage(e="",t=""){if(this.cut=[!1,!1,!1],t){await void 0;var s=JSON.parse(JSON.stringify(e));let i;if(i=isNaN(t.slice(-1))?t:t.slice(0,-1),"text"==this.gData[i].type)for(let e in this.allographs)s=s.replaceAll(e,this.allographs[e]);else if("affix"==this.gData[i].type)for(let e in s)for(let t in this.allographs)s[e][0]=s[e][0].replaceAll(t,this.allographs[t]);else s=e;this.gOptions[t]=s}"normal"==this.wordType||"affRoot"==this.wordType||"refRoot"==this.wordType?(this.calculateWord(),this.IPAcalcs(),this.glossCalcs(),this.cascOrMood="UNF/K"==this.gOptions.rel&&"0"==this.gOptions.concat):(this.gloss="",this.fullGloss="",this.cascOrMood=!1,this.calculateAdjunct(this.wordType),this.IPAcalcs())},notAvailableAlert(e){alert(e+" is not available yet!")},openModal(e){this.$emit("modal",e)},updateFromModal(e,t){this.$refs[e].updateValue(t)},switchWordType(e){this.wordType=e,this.calculateAdjunct(e),this.handleSendMessage()},calculateAdjunct(e){var t="";if("suppletive"==e)this.calculateSlot9(),this.slot9gStop(),this.ithkword={CAR:"hl",QUO:"hm",NAM:"hn",PHR:"hň"}[this.gOptions.suppType]+this.slots[9],this.gloss=this.gOptions.suppType+("THM"==this.gOptions.c?"":"-"+this.gOptions.c),this.fullGloss=this.gOptions.suppType+"-"+this.gOptions.c+"\\NRM";else if("affixjunct"==e){var s={VDom:"a",VSub:"u",VIIDom:"e",VIISub:"i",formative:"o",adjacent:"ö",same:"ai"},i={VDom:"h",VSub:"'h",VIIDom:"'hl",VIISub:"'hr",formative:"hw",adjacent:"'hw"};try{this.gloss="'"+this.gOptions.affixjunct[0][0]+"'/"+this.gOptions.affixjunct[0][1]+("CA"!=this.gOptions.affixjunct[0][1]?{1:"₁",2:"₂",3:"₃",4:"₄"}[this.gOptions.affixjunct[0][2]]:""),this.fullGloss=this.gloss,this.gloss+="VDom"==this.gOptions.initialAffScope?"":"-{"+this.gOptions.initialAffScope+"}",this.fullGloss+="-{"+this.gOptions.initialAffScope+"}"}catch{this.gloss="",this.fullGloss=""}if(this.gOptions.affixjunct.length<1)this.ithkword="",this.gloss="",this.fullGloss="";else if(1==this.gOptions.affixjunct.length){var n=s[this.gOptions.initialAffScope],o=this.gOptions.affixjunct[0];"CA"!=o[1]?"a"==n&&this.allowedAtEnd(o[0])&&("conc"==this.gOptions.affScopeOf||this.sVowels[(o[1]+9)%10][o[2]-1].length>1&&!this.sDip.includes(this.sVowels[(o[1]+9)%10][o[2]-1]))&&(n=""):"a"==n&&this.allowedAtEnd(o[0])&&("conc"==this.gOptions.affScopeOf||"üö".length>1&&!this.sDip.includes("üö"))&&(n=""),"CA"!=o[1]?this.ithkword=this.sVowels[(o[1]+9)%10][o[2]-1]+o[0]+n:this.ithkword="üö"+o[0]+n}else{var a="",l=this.gOptions.affixjunct[0];for(var r of(this.allowedAtStart(l[0])||(a+="ë"),"CA"!=l[1]?a+=l[0]+this.sVowels[(l[1]+9)%10][l[2]-1]:a+=l[0]+"üö",a+=i[this.gOptions.initialAffScope],this.gOptions.affixjunct.slice(1)))"CA"!=r[1]?a+=this.sVowels[(r[1]+9)%10][r[2]-1]:a+="üö",a+=r[0];a+=s[this.gOptions.otherAffScope],a=this.recalcVowels(a),this.ithkword=a;for(let e of this.gOptions.affixjunct.slice(1))this.gloss+="-'"+e[0]+"'/"+e[1]+("CA"!=e[1]?{1:"₁",2:"₂",3:"₃",4:"₄"}[e[2]]:""),this.fullGloss+="-'"+e[0]+"'/"+e[1]+("CA"!=e[1]?{1:"₁",2:"₂",3:"₃",4:"₄"}[e[2]]:"");this.gloss+="same"==this.gOptions.otherAffScope?"":"-{"+this.gOptions.otherAffScope+"}",this.fullGloss+="-{"+this.gOptions.otherAffScope+"}"}this.gOptions.affixjunct.length>0&&(this.gloss+="conc"==this.gOptions.affScopeOf?"{concat.}":"",this.fullGloss+="conc"==this.gOptions.affScopeOf?"{concat.}":"",this.ithkword=this.markStress(["conc","default"].indexOf(this.gOptions.affScopeOf),this.ithkword))}else if("register"==e){var h={DSV:["a","ai"],PNT:["e","ei"],SPF:["i","iu"],EXM:["o","oi"],CGT:["u","ui"],END:["ü","ü"]};this.ithkword="h"+h[this.gOptions.register][this.gOptions.regStartOrEnd],this.gloss=this.gOptions.register+("1"==this.gOptions.regStartOrEnd&&"END"!=this.gOptions.register?"_END":""),this.fullGloss=this.gloss}else if("modular"==e)t+={all:"",parent:"w","concat.":"y"}[this.gOptions.modAppliesTo],this.gloss="all"!=this.gOptions.modAppliesTo?"{"+this.gOptions.modAppliesTo+"}-":"",["2","3"].includes(this.gOptions.modNumber)&&(t+=this.calculateSlot8a("2"),t+=this.calculateSlot8b("2",this.gOptions.cn),this.gloss+="MNO"!=this.gOptions[this.gOptions.vn2+"2"]?this.gOptions[this.gOptions.vn2+"2"]:"",this.gloss+="MNO"!=this.gOptions[this.gOptions.vn2+"2"]&&"FAC"!=this.gOptions[this.gOptions.cn+"2"]&&"CCN"!=this.gOptions[this.gOptions.cn+"2"]?".":"",this.gloss+="FAC"!=this.gOptions[this.gOptions.cn+"2"]&&"CCN"!=this.gOptions[this.gOptions.cn+"2"]?this.gOptions[this.gOptions.cn+"2"]:"",this.fullGloss+=this.gOptions[this.gOptions.vn2+"2"]+"."+this.gOptions[this.gOptions.cn+"2"]),"3"==this.gOptions.modNumber&&(t+=this.calculateSlot8a("3"),t+="asp"==this.gOptions.vn3?"n":"ň",this.gloss+="MNO"!=this.gOptions[this.gOptions.vn3+"3"]?"-"+this.gOptions[this.gOptions.vn3+"3"]:"",this.fullGloss+="-"+this.gOptions[this.gOptions.vn3+"3"]),t=this.recalcVowels(t),"1"==this.gOptions.modNumber?(t+=this.calculateSlot8a("4","asp"),this.gloss+=this.gOptions.asp4,this.fullGloss+=this.gOptions.asp4):"vn"==this.gOptions.vh?(t+=this.calculateSlot8a("4"),this.gloss+="MNO"!=this.gOptions[this.gOptions.v4n+"4"]?"-"+this.gOptions[this.gOptions.v4n+"4"]:"",this.fullGloss+="-"+this.gOptions[this.gOptions.v4n+"4"]):(t+=this.gOptions.modScope,t=this.markStress(0,t),this.gloss+="-{"+{a:"form.",e:"mood",i:"under adj.",o:"over adj.",u:"under adj."}[this.gOptions.modScope]+"}",this.fullGloss+="-{"+{a:"form.",e:"mood",i:"under adj.",o:"over adj.",u:"under adj."}[this.gOptions.modScope]+"}"),this.ithkword=t;else if("ref"==e){var c=this.calculateReference(this.gOptions.ref,this.gOptions.refEff,this.gOptions.refPersp);t+=this.allowedAtStart(c)&&(this.gOptions.twoCs||"RPV"!=this.gOptions.ess2)?"":"ë",t+=c,this.calculateSlot9("1"),this.slot9gStop(),t+=this.slots[9];let e=this.refGloss(this.gOptions.ref,this.gOptions.refEff,this.gOptions.refPersp);if(this.gloss=e[0],this.fullGloss=e[1],this.gloss+="THM"!=this.gOptions.c1||this.gOptions.twoCs?"-"+this.gOptions.c1:"",this.fullGloss+="-"+this.gOptions.c1,this.gOptions.twoCs&&(t+="w",this.calculateSlot9("2"),this.slot9gStop(),t+=this.slots[9],this.gloss+="-"+this.gOptions.c2,this.fullGloss+="-"+this.gOptions.c2,this.gOptions.twoRefs)){var d=this.calculateReference(this.gOptions.ref2,this.gOptions.refEff2,this.gOptions.refPersp2);t+=d,t+=this.allowedAtEnd(d)?"":"ë";let e=this.refGloss(this.gOptions.ref2,this.gOptions.refEff2,this.gOptions.refPersp2);this.gloss+="-"+e[0],this.fullGloss+="-"+e[1]}!["a","á","ä","â","e","ë","é","ê","i","í","o","ö","ó","ô","u","ü","ú","û"].includes(t.charAt(t.length-1))&&this.calculateEJ&&(t+="ë"),t=this.recalcVowels(t),"RPV"==this.gOptions.ess2?(t=this.markStress(0,t),this.gloss+="\\RPV",this.fullGloss+="\\RPV"):this.fullGloss+="\\NRM",this.ithkword=t}else if("refCS"==e){var p=this.calculateReference(this.gOptions.ref,this.gOptions.refEff,this.gOptions.refPersp);t+=this.allowedAtStart(p)?"":"ë",t+=p,this.calculateSlot9("1"),this.slot9gStop(),t+=this.slots[9],t+={BSC:"x",CTE:"xt",CSV:"xp",OBJ:"xx"}[this.gOptions.spec];let e=this.refGloss(this.gOptions.ref,this.gOptions.refEff,this.gOptions.refPersp);for(var u in this.gloss=e[0],this.gloss+="THM"!=this.gOptions.c1||this.gOptions.twoCs?"-"+this.gOptions.c1:"",this.gloss+="BSC"==this.gOptions.spec?"":"-"+this.gOptions.spec,this.fullGloss=e[1]+"-"+this.gOptions.c1+"-"+this.gOptions.spec,this.gOptions.refAffix){var f=Object.assign({},this.gOptions.refAffix[u]);"CA"!=f[1]?t+=this.sVowels[(f[1]+9)%10][f[2]-1]:t+="üö",t+=f[0],this.gloss+="-'"+f[0]+"'/"+f[1]+("CA"!=f[1]?{1:"₁",2:"₂",3:"₃",4:"₄"}[f[2]]:""),this.fullGloss+="-'"+f[0]+"'/"+f[1]+("CA"!=f[1]?{1:"₁",2:"₂",3:"₃",4:"₄"}[f[2]]:"")}this.gOptions.twoCs?(this.calculateSlot9("2"),this.slot9gStop(),t+="a"==this.slots[9]?"üa":this.slots[9],this.gloss+="-"+this.gOptions.c2,this.fullGloss+="-"+this.gOptions.c2):0!=this.gOptions.refAffix.length||this.gOptions.twoCs||"RPV"!=this.gOptions.ess2?this.gOptions.refAffix.length>0&&(this.allowedAtEnd(this.gOptions.refAffix[this.gOptions.refAffix.length-1][0])||(t+="a")):t+="a",!["a","á","ä","â","e","ë","é","ê","i","í","o","ö","ó","ô","u","ü","ú","û"].includes(t.charAt(t.length-1))&&this.calculateEJ&&(t+="a"),t=this.recalcVowels(t),"RPV"==this.gOptions.ess2?(t=this.markStress(0,t),this.gloss+="\\RPV",this.fullGloss+="\\RPV"):this.fullGloss+="\\NRM",this.ithkword=t}else"bias"==e?(this.ithkword=this.gData.bias.options[this.gOptions.bias].word,this.gloss=this.gOptions.bias,this.fullGloss=this.gOptions.bias):"free"==e?this.ithkword=this.gOptions.freeType:(this.calculateWord(),this.glossCalcs());this.IPAcalcs()},calculateReference(e,t,s,i=!1){var n,o={"1M":{NEU:"l",BEN:"r",DET:"ř"},"2M":{NEU:"s",BEN:"š",DET:"ž"},"2P":{NEU:"n",BEN:"t",DET:"d"},MA:{NEU:"m",BEN:"p",DET:"b"},PA:{NEU:"ň",BEN:"k",DET:"g"},MI:{NEU:"z",BEN:"ţ",DET:"ḑ"},PI:{NEU:"ẓ",BEN:"f",DET:"v"},MX:{NEU:"c",BEN:"č",DET:"j"},RDP:{NEU:"th",BEN:"ph",DET:"kh"},OBV:{NEU:"ll",BEN:"rr",DET:"řř"},PVS:{NEU:"mm",BEN:"nn",DET:"ňň"}};n=i&&["OBV","PVS"].includes(e)?{OBV:{NEU:"lç",BEN:"rç",DET:"řç"},PVS:{NEU:"mç",BEN:"nç",DET:"ňç"}}[e][t]:o[e][t];var a=[];return"A"==s?this.consAllowed(n+"w")?n+="w":n+="y":"G"!=s&&"N"!=s||(a="G"==s?["ļ","tļ"]:["ç","x"],this.allowedAtEnd(a[0]+n)?n=a[0]+n:this.allowedAtEnd(a[1]+n)?n=a[1]+n:this.allowedAtEnd(n+a[0])?n+=a[0]:this.allowedAtEnd(n+a[1])?n+=a[1]:this.consAllowed(n+a[0])?n+=a[0]:this.consAllowed(n+a[1])?n+=a[1]:this.consAllowed(a[0]+n)?n+=a[0]:n+=a[1]),n},calculateWord(){this.calculateSlot3(),this.calculateSlot4(),this.calculateSlot6(),this.shortcutCalcs(),this.calculateSlot1(),this.calculateSlot2(),this.calculateSlot5(),this.calculateSlot7(),this.slots[7]=this.calculateSlot8a(),this.slots[8]=this.calculateSlot8b(),this.calculateSlot9(),this.finalCalcs()},calculateSlot1(){this.shortcutting?this.slots[0]=[["","w","y"],["h","hl","hm"],["hw","hr","hn"]][this.gOptions.concat][this.shcuttypeA]:this.slots[0]=["","h","hw"][this.gOptions.concat]},calculateSlot2(){var e={s1:{PRC:0,CPT:1},s2:{PRC:2,CPT:3},s0:{CPT:5,PRC:6},s3:{CPT:7,PRC:8}},t={PRC:{STA:"ëi",DYN:"eë"},CPT:{STA:"ëu",DYN:"oë"}},s={PRC:"ae",CPT:"ea"};if("normal"==this.wordType)if(this.shortcutting)this.slotVIIshortcut=!1,this.slots[1]=this.sVowels[e[this.gOptions.stem][this.gOptions.ver]][this.shcuttypeB];else{var i,n=0;"3"!=this.gOptions.shcut&&"2"!=this.gOptions.shcut?(i=this.gOptions.VIIafx.length>0?[...this.gOptions.VIIafx[this.gOptions.VIIafx.length-1]]:["no",0,0],"r"===i[0]&&4===i[1]&&1===i[2]?(n=1,this.slotVIIshortcut=!0):"t"===i[0]&&4===i[1]&&1===i[2]?(n=2,this.slotVIIshortcut=!0):"t"===i[0]&&5===i[1]&&1===i[2]?(n=3,this.slotVIIshortcut=!0):this.slotVIIshortcut=!1):this.slotVIIshortcut=!1,this.slots[1]=this.sVowels[e[this.gOptions.stem][this.gOptions.ver]][n]}else"affRoot"==this.wordType?this.slots[1]=t[this.gOptions.ver][this.gOptions.func]:"refRoot"==this.wordType&&(this.slots[1]=s[this.gOptions.ver]);this.gOptions.Vafx.length>=2&&(this.slots[1]=this.insertGStop(this.slots[1]))},calculateSlot3(){"normal"==this.wordType?this.slots[2]=this.gOptions.root.toLowerCase():"affRoot"==this.wordType?this.slots[2]=this.gOptions.affRoot.toLowerCase():"refRoot"==this.wordType&&(this.slots[2]=this.calculateReference(this.gOptions.ref,this.gOptions.refEff,this.gOptions.refPersp))},calculateSlot4(){var e={STA:{BSC:0,CTE:1,CSV:2,OBJ:3},DYN:{OBJ:5,CSV:6,CTE:7,BSC:8}},t=["EXS","FNC","RPS","AMG"];"normal"==this.wordType||"refRoot"==this.wordType?this.slots[3]=this.sVowels[e[this.gOptions.func][this.gOptions.spec]][t.indexOf(this.gOptions.ctxt)]:"affRoot"==this.wordType&&(this.slots[3]=this.sVowels[this.gOptions.arDegree][t.indexOf(this.gOptions.ctxt)])},calculateSlot5(){var e="";for(var t in this.gOptions.Vafx){var s=Object.assign({},this.gOptions.Vafx[t]);this.shortcutting?(t==this.gOptions.Vafx.length-1?"CA"!=s[1]?e+=this.insertGStop(this.sVowels[(s[1]+9)%10][s[2]-1]):e+=this.insertGStop("üö"):"CA"!=s[1]?e+=this.sVowels[(s[1]+9)%10][s[2]-1]:e+="üö",e+=s[0]):(e+=s[0],"CA"!=s[1]?e+=this.sVowels[(s[1]+9)%10][s[2]-1]:e+="üö")}this.slots[4]=e},calculateSlot6(e=!1,t=null,s=null,i=null,n=null,o=null,a=null,l=null){e||(t=this.gOptions.affil,s=this.gOptions.plex,i=this.gOptions.simil,n=this.gOptions.cctd,o=this.gOptions.ext,a=this.gOptions.ess,l=this.gOptions.persp);var r={CSL:"",ASO:"l",COA:"r",VAR:"ř"}[t],h="UPX"===s?"":"DPX"===s?"s":{M:{S:{S:"t",C:"k",F:"p"},D:{S:"ţ",C:"f",F:"ç"},F:{S:"z",C:"ž",F:"ẓ"}},D:{S:{S:"c",C:"ks",F:"ps"},D:{S:"ţs",C:"fs",F:"š"},F:{S:"č",C:"kš",F:"pš"}}}[s][i][n],c=(""===h?{DEL:"",PRX:"d",ICP:"g",ATV:"b",GRA:"gz",DPL:"bz"}:{DEL:"",PRX:"t",ICP:"k",ATV:"p",GRA:"g",DPL:"b"})[o],d={NRM:{M:"",G:"r",N:"w",A:"y"},RPV:{M:"l",G:"ř",N:"m",A:"n"}}[a][l];["t","k","p"].includes(c)&&""!=h&&""!=r&&["m","n"].includes(d)&&(d={m:"h",n:"ç"}[d]),""===h&&""===c&&""===d&&""!=r?"l"==r?r="nļ":"ř"==r?r="ň":r+="ļ":""===r&&""===h&&""===c&&(""===d?d="l":"l"===d?d="tļ":"w"===d?d="v":"y"===d&&(d="j"));var p=r+h+c+d,u={pp:"mp",tt:"nt",kk:"nk",ll:"pļ",pb:"mb",kg:"ng","çy":"nd",rr:"ns","rř":"nš","řř":"ňš","řr":"ňs"};for(var f in u)p=p.replace(f,u[f]);var g={gm:"x",gn:"ň",bm:"v",bn:"ḑ"};for(var m in g)p=p.charAt(0)+p.slice(1).replace(m,g[m]);if(p=p.replace("ngn","ňn"),p=p.charAt(0)+p.slice(1).replace("çx","xw"),p=p.replace("fv","vw").replace("ţḑ","ḑy"),e)return p;if(this.slots[10]=p,0!=Object.keys(this.gOptions.Vafx).length){var b=p;p=this.geminate(p),p==b&&["l","r","ř"].includes(p.charAt(0))&&(p=p.charAt(0)+this.geminate(p.slice(1)))}this.slots[5]=p},geminate(e){var t={pt:"bbḑ",pk:"bbv",kt:"ggḑ",kp:"ggv",tk:"ḑvv",tp:"ddv"},s={pm:"vvm",pn:"vvn",bm:"mmw",bn:"mml",km:"xxm",kn:"xxn",gm:"ňňw",gn:"ňňl",tm:"ḑḑm",tn:"ḑḑn",dm:"nnw",dn:"nnl"};return 1===e.length?e+=e:"tļ"===e?e="ttļ":["t","k","p","d","g","b"].includes(e.charAt(0))&&["l","r","ř","w","y"].includes(e.charAt(1))?e=e.charAt(0)+e:e.includes("s")||e.includes("š")||e.includes("z")||e.includes("ž")||e.includes("ç")||e.includes("c")||e.includes("č")?e=e.replace("s","ss").replace("š","šš").replace("z","zz").replace("ž","žž").replace("ç","çç").replace("c","cc").replace("č","čč"):["f","ţ","v","ḑ","n","m","ň"].includes(e.charAt(0))?e=e.charAt(0)+e:["t","k","p"].includes(e.charAt(0))&&["s","š","f","ţ","ç"].includes(e.charAt(1))?e=e.charAt(0)+e.charAt(1)+e.slice(1):Object.prototype.hasOwnProperty.call(t,e.slice(-2))?e=e.slice(0,-2)+t[e.slice(-2)]:Object.prototype.hasOwnProperty.call(s,e.slice(-2))&&(e=e.slice(0,-2)+s[e.slice(-2)]),e},calculateSlot7(){var e="";if(this.slotVIIshortcut&&!this.shortcutting&&"3"!=this.gOptions.shcut&&"2"!=this.gOptions.shcut)for(var t in this.gOptions.VIIafx.slice(0,-1)){var s=Object.assign({},this.gOptions.VIIafx[t]);"CA"!=s[1]?e+=this.sVowels[(s[1]+9)%10][s[2]-1]:e+="üö",e+=s[0]}else for(var i in this.gOptions.VIIafx){var n=Object.assign({},this.gOptions.VIIafx[i]);"CA"!=n[1]?e+=this.sVowels[(n[1]+9)%10][n[2]-1]:e+="üö",e+=n[0]}this.slots[6]=e},calculateSlot8a(e="",t=""){var s;if(s=""!=t?t:"4"==e?this.gOptions["v4n"]:this.gOptions["vn"+e],"asp"!==s){var i,n=["val","pha","eff","lvl"],o={val:["MNO","PRL","CRO","RCP","CPL","DUP","DEM","CNG","PTI"],pha:["PCT","ITR","REP","ITM","RCT","FRE","FRG","VAC","FLC"],eff:["1:BEN","2:BEN","3:BEN","SLF:BEN","UNK","SLF:DET","3:DET","2:DET","1:DET"],lvl:["MIN","SBE","IFR","DFT","EQU","SUR","SPL","SPQ","MAX"]};return i="4"==e?this.sVowels[o[this.gOptions["v4n"]].indexOf(this.gOptions[this.gOptions["v4n"]+e])][n.indexOf(this.gOptions["v4n"])]:this.sVowels[o[this.gOptions["vn"+e]].indexOf(this.gOptions[this.gOptions["vn"+e]+e])][n.indexOf(this.gOptions["vn"+e])],i}var a=[["RTR","PRS","HAB","PRG","IMM","PCS","REG","SMM","ATP"],["RSM","CSS","PAU","RGR","PCL","CNT","ICS","EXP","IRP"],["PMP","CLM","DLT","TMP","XPD","LIM","EPD","PTC","PPR"],["DCL","CCL","CUL","IMD","TRD","TNS","ITC","MTV","SQN"]];for(var l in a)if(a[l].includes(this.gOptions["asp"+e]))return this.sVowels[a[l].indexOf(this.gOptions["asp"+e])][l]},calculateSlot8b(e="",t=""){var s=[],i=[];return s="asp"===this.gOptions["vn"+e]?["w","hw","hrw","hmw","hnw","hňw"]:["h","hl","hr","hm","hn","hň"],("modular"==this.wordType?"casc"==t:"UNF/K"!=this.gOptions.rel||"0"!=this.gOptions.concat)?(i=["CCN","CCA","CCS","CCQ","CCP","CCV"],s[i.indexOf(this.gOptions["casc"+e])]):(i=["FAC","SUB","ASM","SPC","COU","HYP"],s[i.indexOf(this.gOptions["mood"+e])])},calculateSlot9(e=""){var t=[["THM","INS","ABS","AFF","STM","EFF","ERG","DAT","IND"],["POS","PRP","GEN","ATT","PDC","ITP","OGN","IDP","PAR"],["APL","PUR","TRA","DFR","CRS","TSP","CMM","CMP","CSD"],["FUN","TFM","CLA","RSL","CSM","CON","AVR","CVS","SIT"]],s=[["PRN","DSP","COR","CPS","COM","UTL","PRD","n/a","RLT"],["ACT","ASI","ESS","TRM","SEL","CFM","DEP","n/a","VOC"],["LOC","ATD","ALL","ABL","ORI","IRL","INV","n/a","NAV"],["CNR","ASS","PER","PRO","PCV","PCR","ELP","n/a","PLM"]],i=["OBS","REC","PUP","RPR","USP","IMA","CVN","ITU","INF"],n=["DIR","DEC","IRG","VRF","n/a","ADM","POT","HOR","CNJ"],o=!1;if("UNF/K"!==this.gOptions.rel||"0"!=this.gOptions.concat||["suppletive","ref"].includes(this.wordType)){for(var a in t)t[a].includes(this.gOptions["c"+e])&&(this.slots[9]=this.sVowels[t[a].indexOf(this.gOptions["c"+e])][a],o=!0);if(!o)for(var l in s)s[l].includes(this.gOptions["c"+e])&&(this.slots[9]=this.sVowels[s[l].indexOf(this.gOptions["c"+e])][l]+"'")}else"ASR"==this.gOptions.ill?this.slots[9]=this.sVowels[i.indexOf(this.gOptions.vld)][0]:this.slots[9]=this.sVowels[n.indexOf(this.gOptions.ill)][1]},shortcutCalcs(){if("1"==this.gOptions.shcut&&"a"==this.slots[3]&&["l","d","r","tļ","v","j","ř","dl"].includes(this.slots[10])&&"normal"==this.wordType||"refRoot"==this.wordType&&"1"==this.gOptions.shcut&&"a"==this.slots[3]&&["l","d"].includes(this.slots[10])){var e={l:[1,0],d:[2,0],r:[1,1],"tļ":[2,1],v:[1,2],j:[2,2],"ř":[1,3],dl:[2,3]};try{this.shortcutting=!0,this.shcuttypeA=e[this.slots[10]][0],this.shcuttypeB=e[this.slots[10]][1],this.slots[3]="",this.slots[5]=""}catch{this.shortcutting=!1,this.calculateSlot4(),this.calculateSlot6()}}else this.shortcutting=!1},insertGStop(e,t=!1){return 1===e.length||this.sDip.includes(e)?t?1===e.length?e+"'"+e:e.charAt(0)+"'"+e.charAt(1):e+"'":e.charAt(0)+"'"+e.charAt(1)},getCons(...e){var t=[];for(var s in this.cData)for(var i in e)e[i].every((e=>this.cData[s].includes(e)))&&!t.includes(s)&&t.push(s);return t},removeDuplicate(e){var t="",s="";for(var i of e)i!=s&&(t+=i,s=i);return t},slot9gStop(){"'"===this.slots[9].charAt(this.slots[9].length-1)&&("0"==this.gOptions.concat||["suppletive","ref","refCS"].includes(this.wordType)?(this.slots[9]=this.slots[9].slice(0,-1),this.slots[9]=this.insertGStop(this.slots[9],!0)):this.slots[9]=this.slots[9].slice(0,-1))},allowedAtStart(e){if(this.consAllowed(e)){var t=this.removeDuplicate(e);if(1===t.length){if("ļ"!==t)return!0}else if(2===t.length){var s=t.charAt(0),i=t.charAt(1);if(this.getCons(["stop"]).includes(s)&&["r","l","ř","w","y"].includes(i)||["p","k"].includes(s)&&["s","š"].includes(i)||["b","g"].includes(s)&&["z","ž"].includes(i)||"p"===s&&["f","ţ","ç","x","h","ļ"].includes(i)||"b"===s&&["v","ḑ"].includes(i)||"t"===s&&["f","v","ţ","ḑ","ç","x","h","ļ"].includes(i)||"d"===s&&"v"==i||"k"===s&&["f","ţ","ç","x","h"].includes(i)||"g"===s&&["v","ḑ"].includes(i)||["s","š"].includes(s)&&this.getCons(["stop","unvoiced"],["fric","nonsibil","unvoiced"],["affric","unvoiced"]).includes(i)||["z","ž"].includes(s)&&this.getCons(["stop","voiced"],["fric","nonsibil","voiced"],["affric","voiced"]).includes(i)||["s","z","š","ž"].includes(s)&&["m","n","ň","r","l","w","y","ř","v"].includes(i)||["c","č"].includes(s)&&this.getCons(["fric","nonsibil","unvoiced"],["stop","unvoiced"]).includes(i)||["c","č"].includes(s)&&"h"===i||["ẓ","j"].includes(s)&&this.getCons(["fric","nonsibil","voiced"],["stop","voiced"]).includes(i)||["c","ẓ","č","j"].includes(s)||"x"===s&&["p","t","c","č","m","n","l","r","w"].includes(i)||"ç"===s&&["p","t","c","č","k","m","n","ň","l","r","ř"].includes(i)||["f","ţ"].includes(s)&&this.getCons(["stop","unvoiced"],["affric","unvoiced"]).includes(i)||["v","ḑ"].includes(s)&&this.getCons(["stop","voiced"],["affric","voiced"]).includes(i)||["f","v","ţ","ḑ"].includes(s)&&["r","l","w","y","ř","m","n","ň"].includes(i)||"ļ"===s&&this.getCons(["stop","unvoiced"],["affric","unvoiced"],["nasal"]).includes(i)||"ļ"===s&&["w","y"].includes(i)||"h"===s&&["l","r","m","n","w"].includes(i)||["m","n"].includes(s)&&["l","r","w","y","ř"].includes(i)||"ň"===s&&["l","r","w"].includes(i)||["l","r"].includes(s)&&["w","y"].includes(i))return!0}else if(3===t.length){var n=t.charAt(0),o=t.charAt(1),a=t.charAt(2),l=n+o;if(["ps","pš","ks","kš"].includes(l)&&this.getCons(["stop","unvoiced"],["fric","nonsibil","unvoiced"],["affric","unvoiced"]).includes(a)||["bz","bž","gz","gž"].includes(l)&&this.getCons(["stop","voiced"],["fric","nonsibil","voiced"],["affric","voiced"]).includes(a)||["ps","pš","ks","kš","bz","bž","gz","gž"].includes(l)&&["m","n","ň","r","l","w","y","ř","v"].includes(a)||["p","b","t","d","k","g"].includes(n)&&["l","r"].includes(o)&&["w","y"].includes(a)||["p","t","k"].includes(n)&&"ç"===o&&["m","n","ň"].includes(a)||["p","k"].includes(n)&&["f","t"].includes(o)&&["y","w"].includes(a)||["p","t"].includes(o)&&"ļ"===o&&["w","y"].includes(a)||["s","š","ç"].includes(n)&&["p","t","k"].includes(o)&&["r","l","w","y","ř"].includes(a)||["z","ž"].includes(n)&&["b","d","g"].includes(o)&&["r","l","w","y","ř"].includes(a)||["s","z","š","ž","ç"].includes(n)&&["m","n"].includes(o)&&["w","y"].includes(a)||["s","z","š","ž","ç"].includes(n)&&"ň"===o&&"w"===a||["hlw","hrw","hmw","hnw","hmy","hny"].includes(t)||["c","č"].includes(n)&&["p","t","k"].includes(o)&&["r","l","w","y","ř"].includes(a)||["ẓ","j"].includes(n)&&["b","d","g"].includes(o)&&["r","l","w","y","ř"].includes(a)||["c","ẓ","č","j"].includes(n)&&["m","n"].includes(o)&&["w","y"].includes(a)||["c","ẓ","č","j"].includes(n)&&"ň"===o&&"w"===a||["flw","ţly","fly","ţly"].includes(t)||["xp","xt"].includes(l)&&["l","r","w","y"].includes(a)||["xm","xn"].includes(l)&&["w","y"].includes(a)||["xc","xč"].includes(l)&&"w"===a)return!0}else if(4===t.length){var r=t.charAt(0),h=t.charAt(1),c=t.charAt(2),d=t.charAt(3);if(["p","k"].includes(r)&&["s","š"].includes(h)&&["p","t","k"].includes(c)&&["r","l","w","y","ř"].includes(d)||["b","g"].includes(r)&&["z","ž"].includes(h)&&["b","d","g"].includes(c)&&["r","l","w","y","ř"].includes(d)||["s","š","ç","c","č"].includes(r)&&["p","t","k"].includes(h)&&"l"===c&&"y"===d||["z","ž","ẓ","j"].includes(r)&&["b","d","g"].includes(h)&&"l"===c&&"y"===d)return!0}return!1}return!1},allowedAtEnd(e){if(this.consAllowed(e)){var t=this.removeDuplicate(e);if(1==t.length){if("w"!==t&&"y"!==t&&"'"!==t)return!0}else if(2==t.length){var s=t.charAt(0),i=t.charAt(1);if(["p","t","k"].includes(s)&&["f","ţ","s","š","ç","x","h","ļ"].includes(i)||["b","d","g"].includes(s)&&["v","ḑ","z","ž"].includes(i)||["k","p"].includes(s)&&"t"===i||["g","b"].includes(s)&&"d"===i||["s","š"].includes(s)&&["p","t","k"].includes(i)||["z","ž"].includes(s)&&["b","d","g"].includes(i)||["c","č"].includes(s)&&["t","k"].includes(i)||["ẓ","j"].includes(s)&&["d","g"].includes(i)||"f"===s&&["t","k","s","š","ç"].includes(i)||"v"===s&&["d","g","z","ž"].includes(i)||"ţ"===s&&["t","k"].includes(i)||"ḑ"===s&&["d","g"].includes(i)||["ļ","x"].includes(s)&&["p","t","k"].includes(i)||["m","n"].includes(s)&&["p","b","t","d","k","g","f","v","ţ","ḑ","s","z","š","ž","ç","x","h","ļ"].includes(i)||"ň"===s||"r"===s&&"w"!==i&&"y"!==i&&"'"!==i||"l"===s&&!["'","w","y","r","ň"].includes(i)||s===i&&!["p","t","k","b","d","g","'"].includes(s))return!0}else if(3==t.length){var n=t.charAt(0),o=t.charAt(1),a=t.charAt(2);if("p"===o&&(["r","ř","l"].includes(n)&&["t","k","f","ţ","x","s","š","h","ļ","ç"].includes(a)||["m","ň"].includes(n)&&["h","ļ","ç"].includes(a)||["s","š","ç"].includes(n)&&["f","ţ","s","š","ļ","ç"].includes(a))||"t"===o&&(["l","r","ř"].includes(n)&&["k","f","x","h","ļ","ç"].includes(a)||"n"===n&&["k","f","x","h"].includes(a)||["m","ň","s","š","ç"].includes(n)&&["h","ļ","ç"].includes(a))||"k"===o&&(["l","r","ř"].includes(n)&&["t","f","ţ","s","š","h","ç"].includes(a)||["n","f","ţ","l"].includes(n)&&["h","ç"].includes(a)||"m"===n&&["f","ţ","h","ç"].includes(a)||["s","š","ç"].includes(n)&&["f","ţ","s","š","h","ç"].includes(a))||"b"===o&&(["r","ř"].includes(n)&&["d","g","v","ḑ","z","ž"].includes(a)||"l"===n&&["v","ḑ","z","ž"].includes(a))||"d"===o&&["r","ř"].includes(n)&&["b","g","v"].includes(a)||"g"===o&&(["r","ř"].includes(n)&&["b","d","v","ḑ","z","ž"].includes(a)||"l"===n&&["v","ḑ","z","ž"].includes(a))||"f"===o&&(["l","r","ř","m","ň"].includes(n)&&["t","k","f","s","š"].includes(a)||["p","t","k"].includes(n)&&["k","f"].includes(a)||"f"===n&&["t","k","s","š"].includes(a))||"ţ"===o&&(["p","k","r","l","ř","m","n","ň"].includes(n)&&["t","k","ţ"].includes(a)||"ţ"===n&&["t","k"].includes(a))||"x"===o&&(["r","l","ř"].includes(n)&&["t","x"].includes(a)||["p","t","f","s","š","n","m"].includes(n)&&"x"===a||"x"===n&&"t"===a)||"ļ"===o&&(["p","t","r","ř","m","n","ň"].includes(n)&&["t","k","ļ"].includes(a)||["ļ","l"].includes(n)&&["t","k"].includes(a))||"s"===o&&(["r","l","ř","m","n","ň","p","k","f"].includes(n)&&["p","t","k","f","ţ","x","s"].includes(a)||"ţ"===n&&["p","t","k","s"].includes(a)||"s"===n&&["p","t","k","f","ţ","x"].includes(a))||"š"===o&&(["r","l","ř","m","n","ň","p","k","f"].includes(n)&&["p","t","k","f","ţ","x","š"].includes(a)||"ţ"===n&&["p","t","k","š"].includes(a)||"š"===n&&["p","t","k","f","ţ","x"].includes(a))||"v"===o&&(["r","ř","l"].includes(n)&&["v","z","ž"].includes(a)||["b","g","m","ň"].includes(n)&&"v"===a||"v"===n&&["z","ž"].includes(a))||"ḑ"===o&&["b","g","r","ř","l","n","m","ň"].includes(n)&&"ḑ"===a||"z"===o&&(["r","ř","l","n","m","ň"].includes(n)&&["b","d","g","z"].includes(a)||["b","g","v"].includes(n)&&"z"===a||"z"===n&&["b","d","g"].includes(a))||"ž"===o&&(["r","ř","l","n","m","ň"].includes(n)&&["b","d","g","ž"].includes(a)||["b","g","v"].includes(n)&&"ž"===a||"ž"===n&&["b","d","g"].includes(a))||"c"===o&&["r","ř","l"].includes(n)&&["t","k","c","h"].includes(a)||"č"===o&&["r","ř","l"].includes(n)&&["t","k","č","h"].includes(a)||"ẓ"===o&&["r","ř","l"].includes(n)&&["d","g","ẓ"].includes(a)||"j"===o&&["r","ř","l"].includes(n)&&["d","g","j"].includes(a)||"m"===o&&(["r","l","ř"].includes(n)&&["p","t","k","b","d","f","ţ","x","s","š","v","ḑ","z","ž","m","ļ","ç"].includes(a)||"m"===n&&["p","t","k","b","d","f","ţ","x","s","š","v","ḑ","z","ž","ļ","ç"].includes(a))||"n"===o&&(["r","ř"].includes(n)&&["t","k","d","g","f","ţ","x","s","š","v","ḑ","z","ž","n","ļ","ç"].includes(a)||"l"===n&&["t","k","d","g","ţ","s","š","z","ž","ļ","ç"].includes(a)||"n"===n&&["t","k","d","g","f","ţ","x","s","š","v","ḑ","z","ž","ļ","ç"].includes(a))||"l"===o&&"l"===n&&["p","t","k","b","d","g","f","ţ","x","s","š","v","ḑ","z","ž","c","č","ẓ","j","m","n","ň","ç"].includes(a)||["r","ř"].includes(o)&&["r","ř"].includes(n)&&["p","t","k","b","d","g","f","ţ","x","s","š","v","ḑ","z","ž","c","č","ẓ","j","m","n","ň","l","ļ","ç"].includes(a)||"ç"===o&&(["p","t","k","m","n","ň","r","l","ř"].includes(n)&&["t","k","ç"].includes(a)||"ç"===n&&["t","k"].includes(a)))return!0}else if(4==t.length){var l=t.charAt(0),r=t.charAt(1),h=t.charAt(2),c=r+h,d=t.charAt(3);if((["l","r","ř"].includes(l)&&(["tç","pf","fs","fš"].includes(c)||["k","p"].includes(r)&&["s","š","ţ","ç"].includes(h))||"r"===l&&(["n","ň","m"].includes(r)&&["s","š","ţ","ç"].includes(h)||["ň","m"].includes(r)&&"f"===h))&&["t","k"].includes(d))return!0}return!1}return!1},consAllowed(e){for(var t in e.slice(0,-1)){let s=e.charAt(t),i=e.charAt(t+1),n=e.charAt(t+2);if("'"!=s&&e.split("'").length>=2||e.split("'").length>=3)return!1;if(["t","d"].includes(s)&&["s","z","š","ž","c","ẓ","č","j","ţ","ḑ"].includes(i))return!1;if(["k","g"].includes(s)&&["x","ň"].includes(i))return!1;if(["kg","gk","td","dt","pb","bp"].includes(s+i))return!1;if(["fv","vf","ţḑ","ḑţ","cẓ","ẓc","čj","jč","čc","jc","čẓ","jẓ"].includes(s+i))return!1;if(["šc","šẓ","žc","žẓ","sẓ"].includes(s+i))return!1;if(s!=i&&["s","š","z","ž"].includes(s)&&["s","š","z","ž"].includes(i))return!1;if(["c","ẓ","č","j"].includes(s)&&["s","š","z","ž"].includes(i))return!1;if("ç"==s&&["s","z","š","ž","ẓ","j","ļ","h"].includes(i))return!1;if("ç"==i&&["c","ẓ","č","j","ļ","h","x"].includes(s))return!1;if("n"==s&&["c","č","ẓ","j"].includes(i))return!1;if("m"==s&&["b","p"].includes(i)&&["f","v","ţ","ḑ","t","d","s","z","š","ž"].includes(n))return!1;if("n"==s&&["k","g"].includes(i)&&["s","z","š","ž"].includes(n))return!1;if("n"==s&&["p","b"].includes(i))return!1;if("n"==s&&["f","v"].includes(i)&&""!=n)return!1;if("ň"==s&&["g","k","x","y"].includes(i))return!1;if("x"==s&&["s","z","š","ž","ç","g","ļ","ň","y","h","ř"].includes(i))return!1;if("ļ"==s&&["s","z","š","ž","h","ç"].includes(i))return!1;if("ļ"==i&&["b","d","g","h","ç"].includes(s))return!1;if(""==n&&"h"==i&&["ļ","x","ç"].includes(s))return!1;if("ř"==i&&["r","h"].includes(s))return!1;if(s+i=="řr")return!1;if(["w","y"].includes(s)&&""!=i)return!1}return!0},markStress(e,t){if(t.includes("'"))for(let n=t.length;n--;)if("'"==t.charAt(n)&&n!=t.length-1&&(console.log(t.charAt(n-1)),["a","e","i","o","u","ä","ë","ö","ü"].includes(t.charAt(n-1))&&0!=n&&(console.log(t,t.charAt(n-1)),!["a","e","i","o","u","ä","ë","ö","ü"].includes(t.charAt(n+1))))){let e=1;while(!["a","e","i","o","u","ä","ë","ö","ü"].includes(t.charAt(n+e)))e+=1;let s=t.slice(n+1,n+e);console.log(s),this.allowedAtStart(s)||(t=t.slice(0,n)+t.slice(n+1),t=["a","e","i","o","u","ä","ë","ö","ü"].includes(t.charAt(n-2))&&n>=2?t.slice(0,n-1)+"'"+t.slice(n-1):t.slice(0,n-1)+t.charAt(n-1)+"'"+t.slice(n-1))}var s=t.match(/(?:ai|ei|ëi|oi|ui|au|eu|ëu|ou|iu|[aeiouäëöü])/gi);if(0===e&&s.length>1){for(let n=t.length-1;n>=0;n--)if(["a","e","i","o","u","ä","ë","ö","ü"].includes(t.charAt(n))){t=this.sDip.includes(t.charAt(n-1)+t.charAt(n))?t.substring(0,n-1)+this.sAccent[t.charAt(n-1)]+t.substring(n):t.substring(0,n)+this.sAccent[t.charAt(n)]+t.substring(n+1);break}}else if(2===e){var i=0;for(let e=t.length-1;e>=0;e--)if(["a","e","i","o","u","ä","ë","ö","ü"].includes(t.charAt(e))){if(2==i){t=this.sDip.includes(t.charAt(e-1)+t.charAt(e))?t.substring(0,e-1)+this.sAccent[t.charAt(e-1)]+t.substring(e):t.substring(0,e)+this.sAccent[t.charAt(e)]+t.substring(e+1);break}this.sDip.includes(t.charAt(e-1)+t.charAt(e))||i++}}return t},recalcVowels(e){return e.replaceAll("yia","yuä").replaceAll("yie","yuë").replaceAll("yio","yüä").replaceAll("yiö","yüë").replaceAll("wuö","wöë").replaceAll("wuo","wöä").replaceAll("wue","wië").replaceAll("wua","wiä")},finalCalcs(){var e="";if(e=this.slots[9],this.slot9gStop(),"3"!=this.gOptions.shcut&&(""!==this.slots[0]||"a"!==this.slots[1]||this.slotVIIshortcut||this.allowedAtStart(this.slots[2])&&(this.slots[1]="",this.cut[0]=!0),"a"===this.slots[7]&&"asp"!=this.gOptions.vn&&"l"===this.slots[5]&&"h"!=this.slots[8]&&this.settings["Miscellaneous"].s8[1]?(this.slots[10]=this.slots[8],this.slots[5]=this.slots[8],this.slots[8]="",this.eightSix=!0,this.cut[2]=!0):this.eightSix=!1,"a"===this.slots[7]&&("h"===this.slots[8]||""===this.slots[8])&&(this.slots[7]="",this.slots[8]="",this.cut[2]=!0,"a"===this.slots[9]))){var t,s=!0;0==this.gOptions.VIIafx.length&&this.gOptions.Vafx.length==0+(this.slotVIIshortcut&&1)&&this.shortcutting?"PRN"==this.gOptions.c&&(this.sDip.includes(this.slots[1])||Object.keys(this.sAccent).includes(this.slots[1]))?s=!1:t=this.slots[2]:this.gOptions.VIIafx.length==0+(this.slotVIIshortcut&&1)&&this.shortcutting?s=!1:t=this.gOptions.VIIafx.length==0+(this.slotVIIshortcut&&1)?this.slots[5]:this.gOptions.VIIafx[this.gOptions.VIIafx.length-1][0],s&&this.allowedAtEnd(t)&&(this.slots[9]="",this.cut[1]=!0)}(()=>{this.ithkword=this.slots.slice(0,-1).join("")})(),this.ithkword=this.recalcVowels(this.ithkword);var i=this.ithkword.match(/(?:ai|ei|ëi|oi|ui|au|eu|ëu|ou|iu|[aeiouäëöü])/gi),n=0;n="0"!=this.gOptions.concat?"'"===e.charAt(e.length-1)||this.cut[2]&&this.cut[1]&&"THM"==this.gOptions.c&&"0"!=this.gOptions.concat&&0==this.gOptions.VIIafx.length&&this.shortcutting&&(this.sDip.includes(this.slots[1])||Object.keys(this.sAccent).includes(this.slots[1]))?0:1:["UNF/K","UNF/C","FRM"].indexOf(this.gOptions.rel);while(i.length<=n){var o=1==this.cut[1]?1:1==this.cut[0]?0:1==this.cut[2]?2:null,a=[1,9,7];7===a[o]&&(this.slots[8]="h"),this.slots[a[o]]="a",this.cut[o]=!1,(()=>{this.ithkword=this.slots.slice(0,-1).join("")})(),i=this.ithkword.match(/(?:ai|ei|ëi|oi|ui|au|eu|ëu|ou|iu|[aeiouäëöü])/gi)}this.cut[1]&&this.calculateEJ&&(this.ithkword+="a"),this.ithkword=this.markStress(n,this.ithkword)},glossCalcs(){if(this.gloss="",this.fullGloss="","0"!=this.gOptions.concat&&(this.gloss+="T"+this.gOptions.concat+"-",this.fullGloss+="T"+this.gOptions.concat+"-"),"normal"==this.wordType?(this.gloss+="S"+this.gOptions.stem.charAt(1),"CPT"===this.gOptions.ver&&(this.gloss+=".CPT"),this.fullGloss+="S"+this.gOptions.stem.charAt(1)+"."+this.gOptions.ver):"refRoot"==this.wordType?(this.gloss+="CPT"==this.gOptions.ver?"CPT-":"",this.fullGloss+=this.gOptions.ver+"-"):"affRoot"==this.wordType&&(this.gloss+="CPT"==this.gOptions.ver?"CPT":"",this.gloss+="CPT"==this.gOptions.ver&&"DYN"==this.gOptions.func?".":"",this.gloss+="DYN"==this.gOptions.func?"DYN":"",this.gloss+="CPT"==this.gOptions.ver||"DYN"==this.gOptions.func?"-":"",this.fullGloss+=this.gOptions.ver+"."+this.gOptions.func+"-"),this.shortcutting){var e=(this.gOptions.plex+this.gOptions.simil+this.gOptions.cctd).slice(0,3);"normal"==this.wordType&&(this.fullGloss+="."),this.fullGloss+=this.gOptions.affil+"."+e+"."+this.gOptions.ext+"."+this.gOptions.persp+"."+this.gOptions.ess;var t=[];"CSL"!=this.gOptions.affil&&t.push(this.gOptions.affil),"UPX"!=e&&t.push(e),"DEL"!=this.gOptions.ext&&t.push(this.gOptions.ext),"M"!=this.gOptions.persp&&t.push(this.gOptions.persp),"NRM"!=this.gOptions.ess&&t.push(this.gOptions.ess),t.length>0&&"normal"==this.wordType?this.gloss+="."+t.join("."):t.length>0&&(this.gloss+=t.join(".")+"-"),"refRoot"==this.wordType&&(this.fullGloss+="-")}else if(this.slotVIIshortcut){let e=this.gOptions.VIIafx[this.gOptions.VIIafx.length-1];"r"==e[0]&&"4"==e[1]?(this.gloss+=".'relative negation'",this.fullGloss+=".'relative negation'"):"t"==e[0]&&"4"==e[1]?(this.gloss+=".'previously mentioned'",this.fullGloss+=".'previously mentioned'"):"t"==e[0]&&"5"==e[1]&&(this.gloss+=".'[+head]'",this.fullGloss+=".'[+head]'")}if("normal"==this.wordType)this.gloss+='-"'+this.gOptions.root.toLowerCase()+'"',this.fullGloss+='-"'+this.gOptions.root.toLowerCase()+'"';else if("affRoot"==this.wordType)this.gloss+='"'+this.gOptions.affRoot.toLowerCase()+'"',this.fullGloss+='"'+this.gOptions.affRoot.toLowerCase()+'"';else if("refRoot"==this.wordType){let e=this.refGloss(this.gOptions.ref,this.gOptions.refEff,this.gOptions.refPersp);this.gloss+=e[0],this.fullGloss+=e[1]}if("affRoot"!=this.wordType){var s=[];"STA"!=this.gOptions.func&&s.push(this.gOptions.func),"BSC"!=this.gOptions.spec&&s.push(this.gOptions.spec),"EXS"!=this.gOptions.ctxt&&s.push(this.gOptions.ctxt),s.length>0&&(this.gloss+="-"+s.join(".")),this.fullGloss+="-"+this.gOptions.func+"."+this.gOptions.spec+"."+this.gOptions.ctxt}else this.gloss+="-D"+(this.gOptions.arDegree+1).toString().slice((this.gOptions.arDegree+1).toString().length-1),"EXS"!=this.gOptions.ctxt&&(this.gloss+="."+this.gOptions.ctxt),this.fullGloss+="-D"+(this.gOptions.arDegree+1).toString().slice((this.gOptions.arDegree+1).toString().length-1)+"."+this.gOptions.ctxt;for(var i in this.gOptions.Vafx){let e=this.gOptions.Vafx[i];this.gloss+="-'"+e[0]+"'/"+e[1]+("CA"!=e[1]?{1:"₁",2:"₂",3:"₃",4:"₄"}[e[2]]:""),this.fullGloss+="-'"+e[0]+"'/"+e[1]+("CA"!=e[1]?{1:"₁",2:"₂",3:"₃",4:"₄"}[e[2]]:"")}if(this.shortcutting)this.gOptions.Vafx.length>0&&(this.gloss+="-{Ca}",this.fullGloss+="-{Ca}");else{var n=(this.gOptions.plex+this.gOptions.simil+this.gOptions.cctd).slice(0,3);if(this.eightSix)this.gloss+="-"+this.gOptions.casc,this.fullGloss+="-"+this.gOptions.affil+"."+n+"."+this.gOptions.ext+"."+this.gOptions.persp+"."+this.gOptions.ess,this.fullGloss+="."+this.gOptions[this.gOptions.vn]+"."+("UNF/K"===this.gOptions.rel&&"0"==this.gOptions.concat?this.gOptions.mood:this.gOptions.casc);else{this.fullGloss+="-"+this.gOptions.affil+"."+n+"."+this.gOptions.ext+"."+this.gOptions.persp+"."+this.gOptions.ess;var o=[];"CSL"!=this.gOptions.affil&&o.push(this.gOptions.affil),"UPX"!=n&&o.push(n),"DEL"!=this.gOptions.ext&&o.push(this.gOptions.ext),"M"!=this.gOptions.persp&&o.push(this.gOptions.persp),"NRM"!=this.gOptions.ess&&o.push(this.gOptions.ess),o.length>0?this.gloss+="-"+o.join("."):this.gOptions.Vafx.length>0&&(this.gloss+="-{Ca}")}}if(this.slotVIIshortcut)for(var a in this.gOptions.VIIafx.slice(0,-1)){let e=this.gOptions.VIIafx[a];this.gloss+="-'"+e[0]+"'/"+e[1]+("CA"!=e[1]?{1:"₁",2:"₂",3:"₃",4:"₄"}[e[2]]:""),this.fullGloss+="-'"+e[0]+"'/"+e[1]+("CA"!=e[1]?{1:"₁",2:"₂",3:"₃",4:"₄"}[e[2]]:"")}else for(var l in this.gOptions.VIIafx){let e=this.gOptions.VIIafx[l];this.gloss+="-'"+e[0]+"'/"+e[1]+("CA"!=e[1]?{1:"₁",2:"₂",3:"₃",4:"₄"}[e[2]]:""),this.fullGloss+="-'"+e[0]+"'/"+e[1]+("CA"!=e[1]?{1:"₁",2:"₂",3:"₃",4:"₄"}[e[2]]:"")}if(!this.eightSix){var r=[];"MNO"!==this.gOptions[this.gOptions.vn]&&r.push(this.gOptions[this.gOptions.vn]),"FAC"!==this.gOptions.mood&&"UNF/K"===this.gOptions.rel&&"0"==this.gOptions.concat&&r.push(this.gOptions.mood),"CCN"===this.gOptions.casc||"UNF/K"===this.gOptions.rel&&"0"==this.gOptions.concat||r.push(this.gOptions.casc),r.length>0&&(this.gloss+="-"+r.join(".")),this.fullGloss+="-"+this.gOptions[this.gOptions.vn]+"."+("UNF/K"===this.gOptions.rel&&"0"==this.gOptions.concat?this.gOptions.mood:this.gOptions.casc)}if("UNF/K"===this.gOptions.rel&&"0"==this.gOptions.concat){var h=[];this.fullGloss+="-"+this.gOptions.ill,"ASR"===this.gOptions.ill&&(this.fullGloss+="."+this.gOptions.vld),"ASR"!==this.gOptions.ill&&h.push(this.gOptions.ill),"ASR"===this.gOptions.ill&&h.push(this.gOptions.vld),h.length>0&&(this.gloss+="-"+h.join("."))}else"THM"!==this.gOptions.c&&(this.gloss+="-"+this.gOptions.c),this.fullGloss+="-"+this.gOptions.c;if("0"==this.gOptions.concat&&(this.fullGloss+="\\"+this.gOptions.rel.split("/")[0],"UNF"!==this.gOptions.rel.split("/")[0]&&(this.gloss+="\\"+this.gOptions.rel.split("/")[0])),"3"==this.gOptions.shcut){let e=this.gloss;this.gloss=this.fullGloss,this.fullGloss=e}},refGloss(e,t,s){var i="",n="";return i+="M"==s?"":"[",n+="M"==s?"":"[",i+=e,i+="NEU"==t?"":"."+t,n+=e+"."+t,i+="M"==s?"":"+"+s+"]",n+="M"==s?"":"+"+s+"]",[i,n]},IPAcalcs(){this.ipa="";var e=!1;for(var t in(Object.keys(this.sAccent).includes(this.ithkword.charAt(0))||Object.values(this.sAccent).includes(this.ithkword.charAt(0)))&&(this.ipa+="ʔ"),this.ithkword.split(""))if(e)e=!1;else{let i=this.ithkword.charAt(parseInt(t)-1),n=this.ithkword.charAt(parseInt(t)),o=this.ithkword.charAt(parseInt(t)+1);if(Object.values(this.sAccent).includes(n)&&(this.ipa+="ˈ")," "==n)this.ipa+=" ";else if("n"===n)["k","g","x"].includes(o)?this.ipa+="ŋ":this.ipa+="n";else if("r"===n&&"r"!==o)Object.keys(this.sAccent).includes(o)||Object.values(this.sAccent).includes(o)?this.ipa+="ɾ":this.ipa+="ɹ";else if("x"===n)this.ipa+=this.settings["IPA"][n][1].slice(1,-1),n==o&&(this.ipa+="ː",e=!0);else if("rr"===n+o)this.ipa+="r",e=!0;else if("řř"===n+o)this.ipa+=this.settings["IPA"]["rr"][1].slice(1,-1),e=!0;else if(["hl","hr","hm","hn","hň"].includes(n+o))"Devoiced"==this.settings["IPA"]["hx"][1]?this.ipa+={hl:"ɬ",hr:"ɾ̥",hm:"m̥",hn:"n̥","hň":"ŋ̊"}[n+o]:this.ipa+={hl:"hl",hr:"hɾ",hm:"hm",hn:"hn","hň":"hŋ"}[n+o],e=!0;else if(["ph","th","kh","ch","čh"].includes(n+o)&&(""===this.ithkword.charAt(parseInt(t)+2)||Object.keys(this.sAccent).includes(this.ithkword.charAt(parseInt(t)+2))||Object.values(this.sAccent).includes(this.ithkword.charAt(parseInt(t)+2))))this.ipa+=this.ipaLookup[n],this.ipa+="ʰ",e=!0;else if(n===o&&Object.keys(this.ipaLookup).includes(n))this.ipa+=this.ipaLookup[n],this.ipa+="ː",e=!0;else if(Object.keys(this.sAccent).includes(n)||Object.values(this.sAccent).includes(n)){var s;s=Object.values(this.sAccent).includes(n)?Object.keys(this.sAccent).find((e=>this.sAccent[e]==n)):n,s===o||s===Object.keys(this.sAccent).find((e=>this.sAccent[e]==o))?(this.ipa+="ä"==s?"æ":this.settings["IPA"][s][1].slice(1,-1),this.ipa+="ː",e=!0):["ä","ë"].includes(s)?this.ipa+="ä"==s?"æ":this.settings["IPA"][s][1].slice(1,-1):"a"===s?Object.keys(this.sAccent).includes(i)||Object.values(this.sAccent).includes(i)?this.ipa+="ɑ":this.ipa+=this.settings["IPA"][s][1].slice(1,-1):"e"===s?Object.keys(this.sAccent).includes(o)||Object.values(this.sAccent).includes(o)?this.ipa+="e":this.ipa+=this.settings["IPA"][s][1].slice(1,-1):"i"===s?Object.keys(this.sAccent).includes(o)||Object.values(this.sAccent).includes(o)?this.ipa+="i":this.ipa+="y"==o||"y"==i?"ɪ":this.settings["IPA"][s][1].slice(1,-1):"o"===s?Object.keys(this.sAccent).includes(o)||Object.values(this.sAccent).includes(o)?this.ipa+="o":this.ipa+=this.settings["IPA"][s][1].slice(1,-1):"ö"===s?Object.keys(this.sAccent).includes(o)||Object.values(this.sAccent).includes(o)?this.ipa+="ø":this.ipa+=this.settings["IPA"][s][1].slice(1,-1):"u"===s?Object.keys(this.sAccent).includes(o)||Object.values(this.sAccent).includes(o)?this.ipa+="u":this.ipa+="w"==o||"w"==i?"ʊ":this.settings["IPA"][s][1].slice(1,-1):"ü"===s&&(this.ipa+="w"==o||"w"==i||"y"==o||"y"==i?"ʉ":this.settings["IPA"][s][1].slice(1,-1))}else Object.keys(this.ipaLookup).includes(n)?this.ipa+=this.ipaLookup[n]:this.ipa+="-"}},resetWord(e=null){for(var t in null==e&&(e=this.gDefault),this.gOptions=JSON.parse(JSON.stringify(e)),e)this.updateFromModal(t,JSON.parse(JSON.stringify(e[t])))}},beforeMount(){this.gOptions=JSON.parse(JSON.stringify(this.gDefault)),this.handleSendMessage()},computed:{calculateEJ(){return this.$props.selectedWord!=this.$props.sLength-1&&this.settings["Miscellaneous"].ej[1]&&Object.keys(this.cData).includes(this.$props.nextWord[0].charAt(0))}}};const ms=(0,cs.Z)(gs,[["render",je]]);var bs=ms;const ws={class:"section"};function ys(e,t,s,i,a,l){const r=(0,n.up)("OptionBox");return(0,n.wg)(),(0,n.iD)("div",null,[(0,n._)("div",ws,[(0,n.Wm)(r,{json:a.gData.word,code:"word",onSendMessage:l.handleSendMessage,ref:"word",onModal:l.openModal,class:(0,o.C_)({hidden:"normal"!=a.wordType})},null,8,["json","onSendMessage","onModal","class"])])])}var vs={name:"Ithkuil_v3",components:{OptionBox:ps},props:{listenModal:Array,listenWordtype:String,listenWord:Object},watch:{listenModal(e){this.updateFromModal(e[0],e[1])},listenWordtype(e){this.switchWordType(e)},listenWord(e){for(var t in this.gOptions=JSON.parse(JSON.stringify(e)),e)this.updateFromModal(t,JSON.parse(JSON.stringify(e[t])));this.handleSendMessage(e.root,"root")},ithkword(e){this.$emit("ithkword",[e,this.ipa,this.gloss,this.fullGloss]),this.$emit("gEmit",this.gOptions)},ipa(e){this.$emit("ithkword",[this.ithkword,e,this.gloss,this.fullGloss])},gloss(e){this.$emit("ithkword",[this.ithkword,this.ipa,e,this.fullGloss])},fullGloss(e){this.$emit("ithkword",[this.ithkword,this.ipa,this.gloss,e])}},data(){return{defaultWord:"",settings:{"Category A":{s1:["Setting 1: ","defaultval",["defaultval","Fancy New Value"]]},"Category B":{s2:["Setting 2: ",!1]}},gDefault:{word:""},wordType:"normal",tabGroups:{normal:[["word"]]},gOptions:{},ithkword:"",ipa:"",gloss:"",fullGloss:"",gData:{word:{type:"text",title:"placeholder",popupdesc:"Hopefully this works :)"}}}},methods:{async handleSendMessage(e="",t=""){t&&(this.gOptions[t]=e),this.ithkword=this.gOptions.word,this.settings["Category B"].s2[1]&&(this.ithkword+="AAAA"),this.ipa=this.gOptions.word,this.gloss=this.gOptions.word,this.fullGloss=this.gOptions.word},openModal(e){this.$emit("modal",e)},updateFromModal(e,t){this.$refs[e].updateValue(t)},resetWord(e=null){for(var t in null==e&&(e=this.gDefault),this.gOptions=JSON.parse(JSON.stringify(e)),e)this.updateFromModal(t,JSON.parse(JSON.stringify(e[t])))},switchWordType(e){this.wordType=e,this.handleSendMessage()}},beforeMount(){this.gOptions=JSON.parse(JSON.stringify(this.gDefault)),this.handleSendMessage()}};const Ss=(0,cs.Z)(vs,[["render",ys]]);var Ms=Ss,Ts={name:"App",components:{Ithkuil_v4:bs,Ithkuil_v3:Ms},data(){return{langVer:"4",modalListen:[],wordType:"normal",modalContent:"",modalID:"",modalTabs:[],gOptions:{},gSOptions:{},ithkword:"",gloss:"",fullGloss:"",ipa:"",casePopupStart:"THM",casePopupEnd:"PLM",casePopupTitle:"Allcases",tabGroups:[["root","stem","spec"],["func","ver","ctxt"],["shcut","concat","rel"],["Vafx","VIIafx"],["plex","simil","cctd"],["affil","ext","persp","ess"],["vn","val","pha","eff","lvl","abslvl","asp"],["casc","c"],["mood","ill","vld"]],SRtabGroups:[["affRoot","arDegree"],["spec","func","ver","ctxt"],["shcut","concat","rel"],["Vafx","VIIafx"],["plex","simil","cctd"],["affil","ext","persp","ess"],["vn","val","pha","eff","lvl","abslvl","asp"],["casc","c"],["mood","ill","vld"]],REFtabGroups:[["ref","refEff","refPersp"],["spec","func","ver","ctxt"],["shcut","concat","rel"],["Vafx","VIIafx"],["plex","simil","cctd"],["affil","ext","persp","ess"],["vn","val","pha","eff","lvl","abslvl","asp"],["casc","c"],["mood","ill","vld"]],sentenceOpen:!1,sentence:[],selectedWord:0,deleteWordMode:!1,oldScreenSize:0,hovering:null,isMouseDown:!1,draggedWord:null,settingsClone:{}}},methods:{notAvailableAlert(e){alert(e+" is not available yet!")},openModal(e){let t=!1,s=JSON.parse(JSON.stringify(this.$refs[this.langVer].tabGroups[this.wordType]));this.modalID=e,isNaN(e.charAt(e.length-1))?this.modalContent=this.$refs[this.langVer].gData[e]:this.modalContent=this.$refs[this.langVer].gData[e.slice(0,-1)];for(let i of s)i.includes(e)&&(this.modalTabs=[...i],t=!0);t||(this.modalTabs=[]),document.getElementById("modal").style.display="block","c"===e&&this.changeClassTab("THM","PLM","Allcases")},closeModal(){document.getElementById("modal").style.display="none"},openDropdown(e){document.getElementById(e).classList.toggle("hidden")},closeDropdown(e,t={},s=!1){if(s)document.getElementById(e).classList.add("hidden");else try{t.path[1].id!=e&&document.getElementById(e).classList.add("hidden")}catch{}},updateFromModal(e,t){this.modalListen=[e,t]},scrollToTop(){document.getElementById("modal").scrollTo(0,0)},changeClassTab(e,t,s){this.casePopupStart=e,this.casePopupEnd=t,this.casePopupTitle=s;var i=document.getElementsByClassName("tablinks");for(let n=0;n=650?this.sentenceOpen&&!e?this.closeNav():(this.sentenceOpen=!0,document.getElementById("sidebar").style.width="250px",document.getElementById("sFooter").style.width="250px",document.getElementById("content").style.marginRight="250px",document.getElementById("header").style.marginRight="250px",document.getElementById("footer").style.marginRight="250px",document.getElementById("modal").style.marginRight="250px",document.getElementById("modalToTop").style.right="270px"):(e&&this.closeNav(),this.sentenceOpen=!0,document.getElementById("sidebar").style.width="100%",document.getElementById("sFooter").style.width="100%")},closeNav(){this.sentenceOpen=!1,document.getElementById("sidebar").style.width="0",document.getElementById("sFooter").style.width="0",document.getElementById("content").style.marginRight="0",document.getElementById("header").style.marginRight="0",document.getElementById("footer").style.marginRight="0",document.getElementById("modal").style.marginRight="0",document.getElementById("modalToTop").style.right="20px"},switchWord(e,t=!1){this.deleteWordMode&&!t?confirm("Really delete "+this.sentence[e][0]+(this.sentence[e][3]?" ("+this.sentence[e][3]+")":"")+"?")&&(this.sentence.splice(e,1),0==this.sentence.length&&this.sentence.push([this.$refs[this.langVer].defaultWord,JSON.parse(JSON.stringify(this.$refs[this.langVer].gDefault)),"normal",""]),(this.sentence.length<=this.selectedWord||e=650&&window.innerWidth<650||this.oldScreenSize<650&&window.innerWidth>=650)&&this.sentenceOpen&&this.openNav(!0),this.oldScreenSize=window.innerWidth},hoverChange(e){if(this.hovering=e,this.isMouseDown&&null!==this.draggedWord&&this.draggedWord!==this.hovering){var t=JSON.parse(JSON.stringify(this.sentence[this.draggedWord]));this.sentence.splice(this.draggedWord,1),this.sentence.splice(this.hovering,0,JSON.parse(JSON.stringify(t))),this.selectedWord===this.draggedWord?this.switchWord(this.hovering,!0):this.selectedWord===this.hovering&&this.switchWord(this.draggedWord,!0);let s=document.getElementsByClassName("ta")[this.draggedWord].style.height;document.getElementsByClassName("ta")[this.draggedWord].style.height=document.getElementsByClassName("ta")[e].style.height,document.getElementsByClassName("ta")[e].style.height=s,this.draggedWord=e}},onMouseDownF(){this.deleteWordMode||(this.isMouseDown=!0)},onMouseUpF(){this.deleteWordMode||(this.isMouseDown=!1,this.draggedWord=null)},beginDrag(e){this.deleteWordMode?this.draggedWord=null:this.isMouseDown&&(this.draggedWord=e)},resizeTA(e){e.target.style.height="18px",e.target.style.height=e.target.scrollHeight+"px"},copytoCB(e){try{navigator.clipboard.writeText(e).then((function(){alert("Copied to clipboard successfully")}),(function(){alert("Could not copy to clipboard")}))}catch{alert("Could not copy to clipboard")}},setCookie(e,t,s){const i=new Date;i.setTime(i.getTime()+24*s*60*60*1e3);let n="expires="+i.toUTCString();document.cookie=e+"="+t+";"+n+";path=/"},getCookie(e){let t=e+"=",s=decodeURIComponent(document.cookie),i=s.split(";");for(let n=0;n0){console.log(e.target.files);let t=new FileReader;t.readAsText(e.target.files[0]),t.onload=()=>{try{this.handleImportedWord(JSON.parse(t.result)),this.switchWord(0,!0),document.getElementById("fimport").value=""}catch{alert("Could not import correctly.")}}}},exportToJsonFile(e){let t=JSON.stringify(e),s="data:application/json;charset=utf-8,"+encodeURIComponent(t),i="sentence.json",n=document.createElement("a");n.setAttribute("href",s),n.setAttribute("download",i),n.click()},openFileDialog(){document.getElementById("filab").click()}},beforeMount(){this.sentence.unshift([this.ithkword,JSON.parse(JSON.stringify(this.gOptions)),"normal",""])},directives:{clickOutside:Ie().directive},created(){let e=new URLSearchParams(window.location.search);e.has("v")&&("3"!=e.get("v")?this.langVer="4":this.langVer=e.get("v")),this.oldScreenSize=window.innerWidth,window.addEventListener("resize",this.onScreenResize),window.addEventListener("mousedown",this.onMouseDownF),window.addEventListener("mouseup",this.onMouseUpF),window.addEventListener("touchstart",this.onMouseDownF),window.addEventListener("touchend",this.onMouseUpF)},unmounted(){window.removeEventListener("resize",this.onScreenResize),window.removeEventListener("mousedown",this.onMouseUpF),window.removeEventListener("mouseup",this.onMouseDownF),window.removeEventListener("touchstart",this.onMouseUpF),window.removeEventListener("touchend",this.onMouseDownF)},mounted(){this.settingsClone=JSON.parse(JSON.stringify(this.$refs[this.langVer].settings))}};const Os=(0,cs.Z)(Ts,[["render",Oe]]);var Cs=Os,Is=s(431);(0,Is.z)("/ithkapp/service-worker.js",{ready(){console.log("App is being served from cache by a service worker.\nFor more details, visit https://goo.gl/AFskqB")},registered(){console.log("Service worker has been registered.")},cached(){console.log("Content has been cached for offline use.")},updatefound(){console.log("New content is downloading.")},updated(){console.log("New content is available; please refresh.")},offline(){console.log("No internet connection found. App is running in offline mode.")},error(e){console.error("Error during service worker registration:",e)}}),(0,i.ri)(Cs).mount("#app")}},t={};function s(i){var n=t[i];if(void 0!==n)return n.exports;var o=t[i]={exports:{}};return e[i].call(o.exports,o,o.exports,s),o.exports}s.m=e,function(){var e=[];s.O=function(t,i,n,o){if(!i){var a=1/0;for(c=0;c=o)&&Object.keys(s.O).every((function(e){return s.O[e](i[r])}))?i.splice(r--,1):(l=!1,o0&&e[c-1][2]>o;c--)e[c]=e[c-1];e[c]=[i,n,o]}}(),function(){s.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return s.d(t,{a:t}),t}}(),function(){s.d=function(e,t){for(var i in t)s.o(t,i)&&!s.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})}}(),function(){s.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"===typeof window)return window}}()}(),function(){s.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}}(),function(){var e={143:0};s.O.j=function(t){return 0===e[t]};var t=function(t,i){var n,o,a=i[0],l=i[1],r=i[2],h=0;if(a.some((function(t){return 0!==e[t]}))){for(n in l)s.o(l,n)&&(s.m[n]=l[n]);if(r)var c=r(s)}for(t&&t(i);h\r\n Ithkapp | {{ithkword}}\r\n \r\n \r\n
\r\n

Ithkapp

\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n Affixual\r\n Modular\r\n Register\r\n Suppletive\r\n Bias\r\n
\r\n
\r\n
\r\n \r\n
\r\n Normal\r\n Affix as Root\r\n Personal-Referential Root\r\n Single/Dual-Referential\r\n Single Referential w/ Case-Stacking\r\n Non-Ithkuil (Borrowed) Word\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n Aspectual\r\n Affixual\r\n Bias\r\n
\r\n
\r\n
\r\n \r\n
\r\n Normal\r\n Personal Reference\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n\r\n gOptions = JSON.parse(JSON.stringify(g))\"\r\n @ithkword=\"(w) => {ithkword = w[0]; ipa = w[1]; gloss = w[2]; fullGloss = w[3]; sentence[selectedWord] = JSON.parse(JSON.stringify([ithkword,gOptions,wordType,sentence[selectedWord][3]]));}\"\r\n :listenModal=\"modalListen\" :listenWordtype=\"wordType\" :listenWord=\"gSOptions\" :selectedWord=\"selectedWord\" :sLength=\"sentence.length\" :nextWord=\"this.sentence[selectedWord+1]\"/>\r\n\r\n gOptions = JSON.parse(JSON.stringify(g))\"\r\n @ithkword=\"(w) => {ithkword = w[0]; ipa = w[1]; gloss = w[2]; fullGloss = w[3]; sentence[selectedWord] = JSON.parse(JSON.stringify([ithkword,gOptions,wordType,sentence[selectedWord][3]]));}\"\r\n :listenModal=\"modalListen\" :listenWord=\"gSOptions\" :listenWordtype=\"wordType\"/>\r\n \r\n
\r\n \r\n\r\n \r\n
\r\n

{{ithkword}}
\r\n [{{ipa}}]
\r\n {{gloss}}

\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n ×\r\n
\r\n
\r\n

Settings

\r\n
\r\n

{{section}}

\r\n \r\n \r\n \r\n \r\n

\r\n
\r\n
\r\n This project on GitHub\r\n
\r\n
\r\n

{{modalContent.title}}

\r\n

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n

{{modalContent.options[option].name}}{{option === option.toString().toUpperCase() && ![\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\"].includes(option.toString()) ? \" (\"+option+\")\" : \"\"}}

\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n

{{modalContent.options[option].name}}{{option === option.toString().toUpperCase() && ![\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\"].includes(option.toString()) ? \" (\"+option+\")\" : \"\"}}

\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Your sentence:

\r\n

{{concatenateSentence(sentence)}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n ×\r\n

Sentence Menu

\r\n
\r\n
\r\n
\r\n

{{word[0]}}

\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n\r\n\r\n","\r\n\r\n","\n\n\n\n\n\n","import { render } from \"./optionbox.vue?vue&type=template&id=4abae525&scoped=true\"\nimport script from \"./optionbox.vue?vue&type=script&lang=js\"\nexport * from \"./optionbox.vue?vue&type=script&lang=js\"\n\nimport \"./optionbox.vue?vue&type=style&index=0&id=4abae525&scoped=true&lang=css\"\n\nimport exportComponent from \"C:\\\\Users\\\\nickl\\\\OneDrive\\\\Desktop\\\\School stuff\\\\2022\\\\Digi\\\\ithkapp\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-4abae525\"]])\n\nexport default __exports__","import { render } from \"./4.vue?vue&type=template&id=57b50f00\"\nimport script from \"./4.vue?vue&type=script&lang=js\"\nexport * from \"./4.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"C:\\\\Users\\\\nickl\\\\OneDrive\\\\Desktop\\\\School stuff\\\\2022\\\\Digi\\\\ithkapp\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\r\n\r\n","import { render } from \"./3.vue?vue&type=template&id=d43e21f2\"\nimport script from \"./3.vue?vue&type=script&lang=js\"\nexport * from \"./3.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"C:\\\\Users\\\\nickl\\\\OneDrive\\\\Desktop\\\\School stuff\\\\2022\\\\Digi\\\\ithkapp\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./App.vue?vue&type=template&id=1f1b9bf6\"\nimport script from \"./App.vue?vue&type=script&lang=js\"\nexport * from \"./App.vue?vue&type=script&lang=js\"\n\nimport \"./App.vue?vue&type=style&index=0&id=1f1b9bf6&lang=css\"\n\nimport exportComponent from \"C:\\\\Users\\\\nickl\\\\OneDrive\\\\Desktop\\\\School stuff\\\\2022\\\\Digi\\\\ithkapp\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","/* eslint-disable no-console */\n\nimport { register } from 'register-service-worker'\n\nif (process.env.NODE_ENV === 'production') {\n register(`${process.env.BASE_URL}service-worker.js`, {\n ready () {\n console.log(\n 'App is being served from cache by a service worker.\\n' +\n 'For more details, visit https://goo.gl/AFskqB'\n )\n },\n registered () {\n console.log('Service worker has been registered.')\n },\n cached () {\n console.log('Content has been cached for offline use.')\n },\n updatefound () {\n console.log('New content is downloading.')\n },\n updated () {\n console.log('New content is available; please refresh.')\n },\n offline () {\n console.log('No internet connection found. App is running in offline mode.')\n },\n error (error) {\n console.error('Error during service worker registration:', error)\n }\n })\n}\n","import { createApp } from 'vue'\r\nimport App from './App.vue'\r\nimport './registerServiceWorker'\r\n\r\ncreateApp(App).mount('#app')\r\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t143: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkithkapp\"] = self[\"webpackChunkithkapp\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [998], function() { return __webpack_require__(940); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["class","id","_createElementVNode","style","_hoisted_3","_hoisted_5","href","target","_hoisted_65","_hoisted_67","for","_hoisted_69","_hoisted_71","_toDisplayString","$data","_hoisted_2","onClick","$options","title","_createElementBlock","active","includes","event","_createBlock","_component_Ithkuil_v4","ref","onModal","onGEmit","g","JSON","parse","stringify","onIthkword","w","listenModal","listenWordtype","listenWord","selectedWord","sLength","length","nextWord","sentence","_component_Ithkuil_v3","_hoisted_26","_hoisted_28","_hoisted_29","_Fragment","_renderList","tabcode","key","$refs","gData","isNaN","slice","_hoisted_32","hidden","_hoisted_33","Object","keys","section","setOpt","settings","onChange","handleSendMessage","spOpt","type","_hoisted_36","_hoisted_37","_hoisted_38","_hoisted_39","innerHTML","popupdesc","_hoisted_42","_hoisted_44","options","indexOf","casePopupStart","casePopupEnd","option","modalSelected","gOptions","name","toString","toUpperCase","desc","image","src","alt","_hoisted_50","_hoisted_51","_hoisted_52","_hoisted_53","_hoisted_55","_hoisted_56","_hoisted_59","word","index","deletable","dragging","onMouseover","onMouseleave","onMousemove","onTouchstart","placeholder","$event","onInput","rows","_hoisted_63","accept","push","defaultWord","gDefault","_hoisted_1","_createVNode","_component_OptionBox","json","affRoot","code","onSendMessage","whitelist","cData","concat","arDegree","refEff","refPersp","c","root","stem","spec","func","ver","shcut","rel","disabled","Vafx","aff6","VIIafx","plex","simil","cctd","affil","ext","persp","ess","modAppliesTo","modNumber","cn","mood","casc","_hoisted_4","vn","val","vn2","pha","eff","lvl","asp","vn3","_hoisted_6","vh","wordType","modScope","v4n","suppType","ctxt","show","ill","vld","affixjunct","reqAff","initialAffScope","otherAffScope","affScopeOf","register","regStartOrEnd","refAffix","twoCs","twoRefs","bias","freeType","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_19","_hoisted_20","_hoisted_21","_hoisted_24","_hoisted_25","_hoisted_27","_hoisted_30","_hoisted_31","_hoisted_34","_hoisted_35","_hoisted_40","_hoisted_41","_hoisted_45","value","_hoisted_75","_hoisted_79","$emit","$props","maxlength","affix","calc6","_hoisted_58","pop","opt","short","affixes","every","e","_hoisted_70","_hoisted_73","text","_hoisted_74","_hoisted_77","split","x","toLowerCase","y","_hoisted_78","_hoisted_81","_hoisted_82","_hoisted_66","props","String","Boolean","Array","Function","data","computed","OBclass","error","this","disabledbox","notShown","mounted","methods","updateValue","toUpdate","i","waitForElm","then","elm","console","log","document","getElementById","selectedIndex","idx","dAffil","dPlex","dSimil","dCctd","dExt","dEss","dPersp","selector","Promise","resolve","querySelector","observer","MutationObserver","disconnect","observe","body","childList","subtree","__exports__","components","OptionBox","Number","watch","arr","updateFromModal","str","switchWordType","obj","property","ithkword","ipa","gloss","fullGloss","grammardata","consdata","sVowels","ipaLookup","shortcutting","shcuttypeA","shcuttypeB","slotVIIshortcut","sDip","sAccent","slots","cut","cascOrMood","eightSix","allographs","tabGroups","async","outval","gCode","replaceAll","afx","calculateWord","IPAcalcs","glossCalcs","calculateAdjunct","notAvailableAlert","al","alert","openModal","reference","output","calculateSlot9","slot9gStop","afxjunctV","afxjunctC","finalvowel","ll","allowedAtEnd","out","lll","k","allowedAtStart","recalcVowels","markStress","ph","calculateSlot8a","calculateSlot8b","asp4","refA","calculateReference","ess2","gla","refGloss","c1","c2","refB","ref2","refEff2","refPersp2","glb","charAt","calculateEJ","Aref","q","p","assign","refAff","pph","consAllowed","calculateSlot3","calculateSlot4","calculateSlot6","shortcutCalcs","calculateSlot1","calculateSlot2","calculateSlot5","calculateSlot7","finalCalcs","phh","lastVII","vowelColumn","insertGStop","j","aff","iAffil","iPlex","iSimil","iCctd","iExt","iEss","iPersp","AFFIL","CONF","EXT","PSPESS","ph1","key1","replace","ph2","key2","oldOut","geminate","prototype","hasOwnProperty","call","l","num","override","ca","pphh","cfound","vowels","endOfWord","getCons","tags","outp","element","removeDuplicate","strin","prevChar","char","consonants","nogem","ra","rb","da","db","dc","dab","qa","qb","qc","qd","lastCons","nogem2","eba","ebb","eca","ecb","ecc","eda","edb","edc","edbc","edd","conson","a","b","stressType","thisword","counter","conscl","wordVowels","match","substring","slot9saved","s8","shortenSlot8","join","cutVal","configgCode","s2c","viaf","s4c","affx","configCode","s6c","s8c","s9c","fullPut","skipnext","values","prevchar","parseInt","nextchar","vwl","find","resetWord","gO","beforeMount","ej","s2","Ithkuil_v4","Ithkuil_v3","langVer","modalListen","modalContent","modalID","modalTabs","gSOptions","casePopupTitle","SRtabGroups","REFtabGroups","sentenceOpen","deleteWordMode","oldScreenSize","hovering","isMouseDown","draggedWord","settingsClone","tGroupFound","tG","display","changeClassTab","closeModal","openDropdown","classList","toggle","closeDropdown","add","path","scrollToTop","scrollTo","cStart","cEnd","cTitle","tablinks","getElementsByClassName","className","concatenateSentence","sent","openNav","window","innerWidth","closeNav","width","marginRight","right","switchWord","confirm","splice","onScreenResize","hoverChange","sW","height","onMouseDownF","onMouseUpF","beginDrag","resizeTA","scrollHeight","copytoCB","navigator","clipboard","writeText","setCookie","cname","cvalue","exdays","d","Date","setTime","getTime","expires","toUTCString","cookie","getCookie","decodedCookie","decodeURIComponent","deleteCookie","handleImportedWord","snt","wID","gopt","uploadJSON","files","reader","FileReader","readAsText","onload","result","exportToJsonFile","jsonData","dataStr","dataUri","encodeURIComponent","exportFileDefaultName","linkElement","createElement","setAttribute","click","openFileDialog","unshift","directives","clickOutside","vClickOutside","created","urlParams","URLSearchParams","location","search","has","get","addEventListener","unmounted","removeEventListener","render","ready","registered","cached","updatefound","updated","offline","createApp","App","mount","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","module","__webpack_modules__","m","deferred","O","chunkIds","fn","priority","notFulfilled","Infinity","fulfilled","r","n","getter","__esModule","definition","o","defineProperty","enumerable","globalThis","prop","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","self","forEach","bind","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/js/app.af9f0d81.js b/dist/js/app.af9f0d81.js new file mode 100644 index 0000000..b920a84 --- /dev/null +++ b/dist/js/app.af9f0d81.js @@ -0,0 +1,2 @@ +(function(){"use strict";var e={955:function(e,t,s){var i=s(242),n=s(396),o=s(139);const a={class:"tab",id:"header"},l=(0,n._)("h1",{style:{float:"left","padding-left":"20px","font-size":"16px","padding-top":"2px"}},"Ithkapp",-1),r=(0,n._)("i",{class:"fa-solid fa-gear fa-xs"},null,-1),h=[r],c=(0,n._)("i",{class:"fa-solid fa-align-right fa-xs"},null,-1),d=[c],p={key:0,class:"dropdown"},u=(0,n.Uk)("Adjunct ▼"),f=[u],g={class:"dropdown-content hidden",id:"adjDD"},m={key:1,class:"dropdown"},b=(0,n.Uk)("Formative ▼"),w=[b],y={class:"dropdown-content hidden",id:"formDD"},v={key:2,class:"dropdown"},S=(0,n.Uk)("Adjunct ▼"),M=[S],T={class:"dropdown-content hidden",id:"adj3"},O={key:3,class:"dropdown"},C=(0,n.Uk)("Formative ▼"),I=[C],x={class:"dropdown-content hidden",id:"form3"},A={id:"content"},k={id:"footer"},E={class:"word"},D=(0,n._)("br",null,null,-1),j={class:"smalltext"},P=(0,n._)("br",null,null,-1),N=["title"],R={id:"modal-content"},V={class:"tab"},W=["onClick"],_=(0,n._)("h2",{style:{"text-align":"center"}},"Settings",-1),L=["onUpdate:modelValue"],U=["onUpdate:modelValue"],F=(0,n._)("br",null,null,-1),z=(0,n._)("br",null,null,-1),G=(0,n._)("a",{href:"https://github.com/TheXXOs/ithkapp",target:"_blank"},"This project on GitHub",-1),B={key:0},X={style:{"text-align":"center"}},q=["innerHTML"],H={key:0},J={key:0,class:"tab"},$={key:1},Y=["onClick"],K=["innerHTML"],Q=["onClick"],Z=["src","alt"],ee=["innerHTML"],te={key:1},se=(0,n._)("br",null,null,-1),ie=(0,n._)("br",null,null,-1),ne=(0,n._)("p",{style:{"text-align":"center"}},"Your sentence:",-1),oe={style:{"text-align":"center"}},ae=(0,n._)("br",null,null,-1),le=(0,n._)("br",null,null,-1),re={id:"sidebar"},he={id:"sHeader"},ce=(0,n._)("h3",{style:{"padding-left":"20px"}},"Sentence Menu",-1),de={id:"sContent"},pe=["onClick","onMouseover","onMousemove","onTouchstart"],ue=["onUpdate:modelValue"],fe=(0,n._)("br",null,null,-1),ge={id:"sFooter"},me=(0,n._)("i",{class:"fa-solid fa-plus fa-xl"},null,-1),be=[me],we=(0,n._)("i",{class:"fa-solid fa-floppy-disk fa-xl"},null,-1),ye=[we],ve=(0,n._)("label",{id:"filab",for:"fimport"},[(0,n._)("i",{class:"fa-solid fa-arrow-up-from-bracket fa-xl"})],-1),Se=[ve],Me=(0,n._)("i",{class:"fa-solid fa-share-from-square fa-xl"},null,-1),Te=[Me];function Oe(e,t,s,r,c,u){const b=(0,n.up)("Ithkuil_v4"),S=(0,n.up)("Ithkuil_v3"),C=(0,n.Q2)("click-outside");return(0,n.wg)(),(0,n.iD)(n.HY,null,[(0,n._)("title",null,"Ithkapp | "+(0,o.zw)(c.ithkword),1),(0,n._)("div",a,[l,(0,n._)("span",{class:"close",style:{"padding-left":"10px"},onClick:t[0]||(t[0]=e=>u.openModal("settings")),title:"Settings"},h),(0,n._)("span",{class:"close",style:(0,o.j5)([{"padding-left":"10px",height:"38px"},c.sentenceOpen?"background-color:rgb(179, 255, 230); color:#333;":""]),onClick:t[1]||(t[1]=e=>u.openNav(!1)),title:"Sentence Menu"},d,4),4==c.langVer?((0,n.wg)(),(0,n.iD)("div",p,[(0,n.wy)(((0,n.wg)(),(0,n.iD)("button",{class:(0,o.C_)({active:!["normal","affRoot","refRoot","ref","refCS","free"].includes(c.wordType)}),onClick:t[2]||(t[2]=e=>u.openDropdown("adjDD"))},f,2)),[[C,e=>u.closeDropdown("adjDD",e)]]),(0,n._)("div",g,[(0,n._)("span",{onClick:t[3]||(t[3]=e=>u.switchWordType("affixjunct")),class:(0,o.C_)({active:"affixjunct"==c.wordType})},"Affixual",2),(0,n._)("span",{onClick:t[4]||(t[4]=e=>u.switchWordType("modular")),class:(0,o.C_)({active:"modular"==c.wordType})},"Modular",2),(0,n._)("span",{onClick:t[5]||(t[5]=e=>u.switchWordType("register")),class:(0,o.C_)({active:"register"==c.wordType})},"Register",2),(0,n._)("span",{onClick:t[6]||(t[6]=e=>u.switchWordType("suppletive")),class:(0,o.C_)({active:"suppletive"==c.wordType})},"Suppletive",2),(0,n._)("span",{onClick:t[7]||(t[7]=e=>u.switchWordType("bias")),class:(0,o.C_)({active:"bias"==c.wordType})},"Bias",2)])])):(0,n.kq)("",!0),4==c.langVer?((0,n.wg)(),(0,n.iD)("div",m,[(0,n.wy)(((0,n.wg)(),(0,n.iD)("button",{class:(0,o.C_)({active:["normal","affRoot","refRoot","ref","refCS","free"].includes(c.wordType)}),onClick:t[8]||(t[8]=e=>u.openDropdown("formDD"))},w,2)),[[C,e=>u.closeDropdown("formDD",e)]]),(0,n._)("div",y,[(0,n._)("span",{onClick:t[9]||(t[9]=e=>u.switchWordType("normal")),class:(0,o.C_)({active:"normal"==c.wordType})},"Normal",2),(0,n._)("span",{onClick:t[10]||(t[10]=e=>u.switchWordType("affRoot")),class:(0,o.C_)({active:"affRoot"==c.wordType})},"Affix as Root",2),(0,n._)("span",{onClick:t[11]||(t[11]=e=>u.switchWordType("refRoot")),class:(0,o.C_)({active:"refRoot"==c.wordType})},"Personal-Referential Root",2),(0,n._)("span",{onClick:t[12]||(t[12]=e=>u.switchWordType("ref")),class:(0,o.C_)({active:"ref"==c.wordType})},"Single/Dual-Referential",2),(0,n._)("span",{onClick:t[13]||(t[13]=e=>u.switchWordType("refCS")),class:(0,o.C_)({active:"refCS"==c.wordType})},"Single Referential w/ Case-Stacking",2),(0,n._)("span",{onClick:t[14]||(t[14]=e=>u.switchWordType("free")),class:(0,o.C_)({active:"free"==c.wordType})},"Non-Ithkuil (Borrowed) Word",2)])])):(0,n.kq)("",!0),3==c.langVer?((0,n.wg)(),(0,n.iD)("div",v,[(0,n.wy)(((0,n.wg)(),(0,n.iD)("button",{class:(0,o.C_)({active:["aspect","affix","bias"].includes(c.wordType)}),onClick:t[15]||(t[15]=e=>u.openDropdown("adj3"))},M,2)),[[C,e=>u.closeDropdown("adj3",e)]]),(0,n._)("div",T,[(0,n._)("span",{onClick:t[16]||(t[16]=e=>u.switchWordType("aspect")),class:(0,o.C_)({active:"aspect"==c.wordType})},"Aspectual",2),(0,n._)("span",{onClick:t[17]||(t[17]=e=>u.switchWordType("affix")),class:(0,o.C_)({active:"affix"==c.wordType})},"Affixual",2),(0,n._)("span",{onClick:t[18]||(t[18]=e=>u.switchWordType("bias")),class:(0,o.C_)({active:"bias"==c.wordType})},"Bias",2)])])):(0,n.kq)("",!0),3==c.langVer?((0,n.wg)(),(0,n.iD)("div",O,[(0,n.wy)(((0,n.wg)(),(0,n.iD)("button",{class:(0,o.C_)({active:["normal","ref"].includes(c.wordType)}),onClick:t[19]||(t[19]=e=>u.openDropdown("form3"))},I,2)),[[C,e=>u.closeDropdown("form3",e)]]),(0,n._)("div",x,[(0,n._)("span",{onClick:t[20]||(t[20]=e=>u.switchWordType("normal")),class:(0,o.C_)({active:"normal"==c.wordType})},"Normal",2),(0,n._)("span",{onClick:t[21]||(t[21]=e=>u.switchWordType("ref")),class:(0,o.C_)({active:"ref"==c.wordType})},"Personal Reference",2)])])):(0,n.kq)("",!0)]),(0,n._)("div",A,["4"==c.langVer?((0,n.wg)(),(0,n.j4)(b,{key:0,ref:"4",onModal:u.openModal,onGEmit:t[22]||(t[22]=e=>c.gOptions=JSON.parse(JSON.stringify(e))),onIthkword:t[23]||(t[23]=e=>{c.ithkword=e[0],c.ipa=e[1],c.gloss=e[2],c.fullGloss=e[3],c.sentence[c.selectedWord]=JSON.parse(JSON.stringify([c.ithkword,c.gOptions,c.wordType,c.sentence[c.selectedWord][3]]))}),listenModal:c.modalListen,listenWordtype:c.wordType,listenWord:c.gSOptions,selectedWord:c.selectedWord,sLength:c.sentence.length,nextWord:this.sentence[c.selectedWord+1]},null,8,["onModal","listenModal","listenWordtype","listenWord","selectedWord","sLength","nextWord"])):(0,n.kq)("",!0),"3"==c.langVer?((0,n.wg)(),(0,n.j4)(S,{key:1,ref:"3",onModal:u.openModal,onGEmit:t[24]||(t[24]=e=>c.gOptions=JSON.parse(JSON.stringify(e))),onIthkword:t[25]||(t[25]=e=>{c.ithkword=e[0],c.ipa=e[1],c.gloss=e[2],c.fullGloss=e[3],c.sentence[c.selectedWord]=JSON.parse(JSON.stringify([c.ithkword,c.gOptions,c.wordType,c.sentence[c.selectedWord][3]]))}),listenModal:c.modalListen,listenWord:c.gSOptions,listenWordtype:c.wordType},null,8,["onModal","listenModal","listenWord","listenWordtype"])):(0,n.kq)("",!0)]),(0,n._)("div",k,[(0,n._)("p",null,[(0,n._)("span",E,[(0,n._)("b",null,(0,o.zw)(c.ithkword),1)]),D,(0,n._)("span",j,[(0,n.Uk)("["+(0,o.zw)(c.ipa)+"]",1),P,(0,n._)("span",{title:c.fullGloss},(0,o.zw)(c.gloss),9,N)])])]),(0,n._)("div",{id:"modal",class:"modal",onClick:t[40]||(t[40]=(0,i.iM)((e=>u.closeModal()),["self"]))},[(0,n._)("div",R,[(0,n._)("div",V,[((0,n.wg)(!0),(0,n.iD)(n.HY,null,(0,n.Ko)(c.modalTabs,(e=>((0,n.wg)(),(0,n.iD)("button",{key:e,class:(0,o.C_)({active:e===c.modalID}),onClick:t=>{u.closeModal(),u.openModal(e)}},(0,o.zw)(this.$refs[c.langVer].gData[isNaN(e.slice(-1))?e:e.slice(0,-1)].title),11,W)))),128)),"share"==c.modalID?((0,n.wg)(),(0,n.iD)("button",{key:0,onClick:t[26]||(t[26]=e=>u.notAvailableAlert("Sharing sentences via hyperlink"))},"Create Hyperlink")):(0,n.kq)("",!0),"share"==c.modalID?((0,n.wg)(),(0,n.iD)("button",{key:1,onClick:t[27]||(t[27]=e=>u.copytoCB(u.concatenateSentence(c.sentence)))},"Copy to Clipboard")):(0,n.kq)("",!0),(0,n._)("span",{class:"close",onClick:t[28]||(t[28]=e=>u.closeModal())},"×")]),(0,n._)("div",{class:(0,o.C_)({hidden:"settings"!=c.modalID}),style:{"padding-left":"20px","padding-right":"20px","padding-bottom":"20px"}},[_,((0,n.wg)(!0),(0,n.iD)(n.HY,null,(0,n.Ko)(Object.keys(c.settingsClone),(e=>((0,n.wg)(),(0,n.iD)("div",{key:e},[(0,n._)("h3",null,(0,o.zw)(e),1),((0,n.wg)(!0),(0,n.iD)(n.HY,null,(0,n.Ko)(Object.keys(c.settingsClone[e]),(s=>((0,n.wg)(),(0,n.iD)("span",{key:s},[(0,n._)("label",null,(0,o.zw)(c.settingsClone[e][s][0]),1),c.settingsClone[e][s].length>2?(0,n.wy)(((0,n.wg)(),(0,n.iD)("select",{key:0,"onUpdate:modelValue":t=>this.$refs[c.langVer].settings[e][s][1]=t,onChange:t[29]||(t[29]=e=>this.$refs[c.langVer].handleSendMessage())},[((0,n.wg)(!0),(0,n.iD)(n.HY,null,(0,n.Ko)(c.settingsClone[e][s][2],(e=>((0,n.wg)(),(0,n.iD)("option",{key:e},(0,o.zw)(e),1)))),128))],40,L)),[[i.bM,this.$refs[c.langVer].settings[e][s][1]]]):(0,n.wy)(((0,n.wg)(),(0,n.iD)("input",{key:1,type:"checkbox","onUpdate:modelValue":t=>this.$refs[c.langVer].settings[e][s][1]=t,onChange:t[30]||(t[30]=e=>this.$refs[c.langVer].handleSendMessage())},null,40,U)),[[i.e8,this.$refs[c.langVer].settings[e][s][1]]]),F,z])))),128))])))),128)),G],2),"settings"!=c.modalID&&"share"!=c.modalID?((0,n.wg)(),(0,n.iD)("div",B,[(0,n._)("h2",X,(0,o.zw)(c.modalContent.title),1),(0,n._)("p",{style:{"text-align":"center"},innerHTML:c.modalContent.popupdesc},null,8,q),""==c.modalContent.type?((0,n.wg)(),(0,n.iD)("div",H,[["c","c1","c2"].includes(c.modalID)?((0,n.wg)(),(0,n.iD)("div",J,[(0,n._)("button",{class:"tablinks active",onClick:t[31]||(t[31]=e=>u.changeClassTab("THM","PLM","Allcases")),id:"Allcases"},"All"),(0,n._)("button",{class:"tablinks",onClick:t[32]||(t[32]=e=>u.changeClassTab("THM","IND","Transrelative")),id:"Transrelative"},"Transrelative"),(0,n._)("button",{class:"tablinks",onClick:t[33]||(t[33]=e=>u.changeClassTab("POS","PAR","Appositive")),id:"Appositive"},"Appositive"),(0,n._)("button",{class:"tablinks",onClick:t[34]||(t[34]=e=>u.changeClassTab("APL","CSD","Associative")),id:"Associative"},"Associative"),(0,n._)("button",{class:"tablinks",onClick:t[35]||(t[35]=e=>u.changeClassTab("FUN","SIT","Adverbial")),id:"Adverbial"},"Adverbial"),(0,n._)("button",{class:"tablinks",onClick:t[36]||(t[36]=e=>u.changeClassTab("PRN","RLT","Relational")),id:"Relational"},"Relational"),(0,n._)("button",{class:"tablinks",onClick:t[37]||(t[37]=e=>u.changeClassTab("ACT","VOC","Affinitive")),id:"Affinitive"},"Affinitive"),(0,n._)("button",{class:"tablinks",onClick:t[38]||(t[38]=e=>u.changeClassTab("LOC","PLM","Spatio-Temporal")),id:"Spatio-Temporal"},"Spatio-Temporal")])):(0,n.kq)("",!0),["c","c1","c2"].includes(c.modalID)?((0,n.wg)(),(0,n.iD)("div",$,[((0,n.wg)(!0),(0,n.iD)(n.HY,null,(0,n.Ko)(Object.keys(c.modalContent.options).slice(Object.keys(c.modalContent.options).indexOf(this.casePopupStart),Object.keys(c.modalContent.options).indexOf(this.casePopupEnd)+1),(e=>((0,n.wg)(),(0,n.iD)("div",{key:c.modalContent.options[e]},[(0,n._)("div",{onClick:t=>u.updateFromModal(c.modalID,e),class:(0,o.C_)(["modalOption",{modalSelected:this.$refs[c.langVer].gOptions[c.modalID]==e}])},[(0,n._)("h3",null,(0,o.zw)(c.modalContent.options[e].name)+(0,o.zw)(e!==e.toString().toUpperCase()||["0","1","2","3","4","5","6","7","8","9"].includes(e.toString())?"":" ("+e+")"),1),(0,n._)("p",{innerHTML:c.modalContent.options[e].desc},null,8,K)],10,Y)])))),128))])):((0,n.wg)(!0),(0,n.iD)(n.HY,{key:2},(0,n.Ko)(Object.keys(c.modalContent.options),(e=>((0,n.wg)(),(0,n.iD)("div",{key:c.modalContent.options[e]},[(0,n._)("div",{onClick:t=>u.updateFromModal(c.modalID,e),class:(0,o.C_)(["modalOption",{modalSelected:this.$refs[c.langVer].gOptions[c.modalID]==e}]),style:(0,o.j5)(c.modalContent.options[e].image?"min-height:170px;":"")},[c.modalContent.options[e].image?((0,n.wg)(),(0,n.iD)("img",{key:0,src:c.modalContent.options[e].image,alt:c.modalContent.options[e].name,style:{float:"right",height:"150px","padding-top":"10px","padding-left":"10px","padding-bottom":"10px"}},null,8,Z)):(0,n.kq)("",!0),(0,n._)("h3",null,(0,o.zw)(c.modalContent.options[e].name)+(0,o.zw)(e!==e.toString().toUpperCase()||["0","1","2","3","4","5","6","7","8","9"].includes(e.toString())?"":" ("+e+")"),1),(0,n._)("p",{innerHTML:c.modalContent.options[e].desc},null,8,ee)],14,Q)])))),128))])):(0,n.kq)("",!0)])):"share"==c.modalID?((0,n.wg)(),(0,n.iD)("div",te,[se,ie,ne,(0,n._)("h1",oe,(0,o.zw)(u.concatenateSentence(c.sentence)),1),ae,le])):(0,n.kq)("",!0)]),(0,n._)("button",{id:"modalToTop",onClick:t[39]||(t[39]=(...e)=>u.scrollToTop&&u.scrollToTop(...e)),class:(0,o.C_)({hidden:"share"==c.modalID})},"↑",2)]),(0,n._)("div",re,[(0,n._)("div",he,[(0,n._)("span",{class:"close",onClick:t[41]||(t[41]=e=>u.closeNav()),style:{transform:"translateY(-20px)"}},"×"),ce]),(0,n._)("div",de,[((0,n.wg)(!0),(0,n.iD)(n.HY,null,(0,n.Ko)(c.sentence,((e,s)=>((0,n.wg)(),(0,n.iD)("div",{key:s,class:(0,o.C_)(["sentWord noSelecting",{active:c.selectedWord==s,deletable:c.deleteWordMode,dragging:c.draggedWord===s}]),onClick:e=>u.switchWord(s),onMouseover:e=>u.hoverChange(s),onMouseleave:t[43]||(t[43]=e=>c.hovering=null),onMousemove:e=>u.beginDrag(s),onTouchstart:e=>u.beginDrag(s)},[(0,n._)("p",null,[(0,n._)("b",null,(0,o.zw)(e[0]),1)]),(0,n.wy)((0,n._)("textarea",{placeholder:"Description...","onUpdate:modelValue":e=>c.sentence[s][3]=e,onInput:t[42]||(t[42]=(...e)=>u.resizeTA&&u.resizeTA(...e)),rows:"1",class:"ta"},null,40,ue),[[i.nr,c.sentence[s][3]]]),fe],42,pe)))),128))]),(0,n._)("div",ge,[(0,n._)("input",{type:"file",onChange:t[44]||(t[44]=(...e)=>u.uploadJSON&&u.uploadJSON(...e)),accept:".json",id:"fimport",class:"hidden"},null,32),(0,n._)("button",{title:"Add New Word",onClick:t[45]||(t[45]=e=>this.sentence.push(JSON.parse(JSON.stringify([this.$refs[c.langVer].defaultWord,this.$refs[c.langVer].gDefault,"normal",""]))))},be),(0,n._)("button",{title:"Save",onClick:t[46]||(t[46]=e=>u.exportToJsonFile(c.sentence))},ye),(0,n._)("button",{title:"Import",onClick:t[47]||(t[47]=(0,i.iM)((e=>u.openFileDialog()),["self"]))},Se),(0,n._)("button",{title:"Export/Share",onClick:t[48]||(t[48]=e=>{u.openModal("share"),u.closeNav()})},Te),(0,n._)("button",{title:"Delete Words",onClick:t[49]||(t[49]=e=>c.deleteWordMode=!c.deleteWordMode),class:(0,o.C_)({active:c.deleteWordMode})},[(0,n._)("i",{class:(0,o.C_)(c.deleteWordMode?"fa-solid fa-check fa-xl":"fa-solid fa-trash-can fa-xl")},null,2)],2)])])],64)}var Ce=s(51),Ie=s.n(Ce);const xe=(0,n.uE)('

Ithkapp (hwirbuvie-ekţgyil)

Compatible with the version of New Ithkuil on ithkuil.net.
Definitions are a combination of taken from the old Ithkuil III site, taken from the New Ithkuil website, and (occasionally) written by the creator of this site.
All past and current forms of Ithkuil and all official documentation are by John Quijada.
Click on a box's title to learn more about what it means.

',2),Ae=(0,n._)("h2",{style:{width:"100%"}},"Configuration",-1),ke=(0,n._)("h2",{style:{width:"100%"}},"Slot II",-1),Ee=(0,n._)("h2",{style:{width:"100%"}},"Slot III",-1),De=(0,n._)("h2",{style:{width:"100%"}},"Slot IV",-1);function je(e,t,s,i,a,l){const r=(0,n.up)("OptionBox");return(0,n.wg)(),(0,n.iD)("div",null,[xe,(0,n._)("div",{class:(0,o.C_)(["section",{hidden:["suppletive","affixjunct","register","modular","bias","free"].includes(a.wordType)}])},[(0,n.Wm)(r,{json:a.gData.affRoot,class:(0,o.C_)({hidden:"affRoot"!=a.wordType}),code:"affRoot",onSendMessage:l.handleSendMessage,ref:"affRoot",onModal:l.openModal,length:"6",whitelist:Object.keys(this.cData).concat(["ṭ","ŧ","ḍ","đ","ņ","ṇ","ŗ","ṛ","ł","ḷ","ż"])},null,8,["json","class","onSendMessage","onModal","whitelist"]),(0,n.Wm)(r,{json:a.gData.arDegree,class:(0,o.C_)({hidden:"affRoot"!=a.wordType}),code:"arDegree",onSendMessage:l.handleSendMessage,ref:"arDegree",onModal:l.openModal},null,8,["json","class","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.ref,class:(0,o.C_)({hidden:!["refRoot","ref","refCS"].includes(a.wordType)}),code:"ref",onSendMessage:l.handleSendMessage,ref:"ref",onModal:l.openModal},null,8,["json","class","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.refEff,class:(0,o.C_)({hidden:!["refRoot","ref","refCS"].includes(a.wordType)}),code:"refEff",onSendMessage:l.handleSendMessage,ref:"refEff",onModal:l.openModal},null,8,["json","class","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.refPersp,class:(0,o.C_)({hidden:!["refRoot","ref","refCS"].includes(a.wordType)}),code:"refPersp",onSendMessage:l.handleSendMessage,ref:"refPersp",onModal:l.openModal},null,8,["json","class","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.c,class:(0,o.C_)({hidden:"ref"!=a.wordType&&"refCS"!=a.wordType}),code:"c1",onSendMessage:l.handleSendMessage,ref:"c1",onModal:l.openModal},null,8,["json","class","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.root,class:(0,o.C_)({hidden:["affRoot","refRoot","ref","refCS"].includes(a.wordType)}),code:"root",onSendMessage:l.handleSendMessage,ref:"root",onModal:l.openModal,length:"6",whitelist:Object.keys(this.cData).concat(["ṭ","ŧ","ḍ","đ","ņ","ṇ","ŗ","ṛ","ł","ḷ","ż"])},null,8,["json","class","onSendMessage","onModal","whitelist"]),(0,n.Wm)(r,{json:a.gData.stem,class:(0,o.C_)({hidden:["affRoot","refRoot","ref","refCS"].includes(a.wordType)}),code:"stem",onSendMessage:l.handleSendMessage,ref:"stem",onModal:l.openModal},null,8,["json","class","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.spec,class:(0,o.C_)({hidden:"ref"==a.wordType||"affRoot"==a.wordType}),code:"spec",onSendMessage:l.handleSendMessage,ref:"spec",onModal:l.openModal},null,8,["json","class","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.func,class:(0,o.C_)({hidden:"ref"==a.wordType||"refCS"==a.wordType}),code:"func",onSendMessage:l.handleSendMessage,ref:"func",onModal:l.openModal},null,8,["json","class","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.ver,class:(0,o.C_)({hidden:"ref"==a.wordType||"refCS"==a.wordType}),code:"ver",onSendMessage:l.handleSendMessage,ref:"ver",onModal:l.openModal},null,8,["json","class","onSendMessage","onModal"])],2),(0,n._)("div",{class:(0,o.C_)(["section",{hidden:["suppletive","affixjunct","register","modular","ref","refCS","bias","free"].includes(a.wordType)}])},[(0,n.Wm)(r,{json:a.gData.shcut,code:"shcut",onSendMessage:l.handleSendMessage,ref:"shcut",onModal:l.openModal},null,8,["json","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.concat,code:"concat",onSendMessage:l.handleSendMessage,ref:"concat",onModal:l.openModal},null,8,["json","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.rel,code:"rel",onSendMessage:l.handleSendMessage,ref:"rel",onModal:l.openModal,disabled:"0"!=this.gOptions.concat},null,8,["json","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.Vafx,code:"Vafx",onSendMessage:l.handleSendMessage,type:"affix",ref:"Vafx",onModal:l.openModal,whitelist:Object.keys(this.cData).concat(["ṭ","ŧ","ḍ","đ","ņ","ṇ","ŗ","ṛ","ł","ḷ","ż"]),aff6:l.calculateSlot6},null,8,["json","onSendMessage","onModal","whitelist","aff6"]),(0,n.Wm)(r,{json:a.gData.VIIafx,code:"VIIafx",onSendMessage:l.handleSendMessage,type:"affix",ref:"VIIafx",onModal:l.openModal,whitelist:Object.keys(this.cData).concat(["ṭ","ŧ","ḍ","đ","ņ","ṇ","ŗ","ṛ","ł","ḷ","ż"]),aff6:l.calculateSlot6},null,8,["json","onSendMessage","onModal","whitelist","aff6"])],2),(0,n._)("div",{class:(0,o.C_)(["section",{hidden:["suppletive","affixjunct","register","modular","ref","refCS","bias","free"].includes(a.wordType)}])},[Ae,(0,n.Wm)(r,{json:a.gData.plex,code:"plex",onSendMessage:l.handleSendMessage,ref:"plex",onModal:l.openModal},null,8,["json","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.simil,code:"simil",onSendMessage:l.handleSendMessage,disabled:["UPX","DPX"].includes(this.gOptions.plex),ref:"simil",onModal:l.openModal},null,8,["json","onSendMessage","disabled","onModal"]),(0,n.Wm)(r,{json:a.gData.cctd,code:"cctd",onSendMessage:l.handleSendMessage,disabled:["UPX","DPX"].includes(this.gOptions.plex),ref:"cctd",onModal:l.openModal},null,8,["json","onSendMessage","disabled","onModal"])],2),(0,n._)("div",{class:(0,o.C_)(["section",{hidden:["suppletive","affixjunct","register","modular","ref","refCS","bias","free"].includes(a.wordType)}])},[(0,n.Wm)(r,{json:a.gData.affil,code:"affil",onSendMessage:l.handleSendMessage,ref:"affil",onModal:l.openModal},null,8,["json","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.ext,code:"ext",onSendMessage:l.handleSendMessage,ref:"ext",onModal:l.openModal},null,8,["json","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.persp,code:"persp",onSendMessage:l.handleSendMessage,ref:"persp",onModal:l.openModal},null,8,["json","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.ess,code:"ess",onSendMessage:l.handleSendMessage,ref:"ess",onModal:l.openModal},null,8,["json","onSendMessage","onModal"])],2),(0,n._)("div",{class:(0,o.C_)(["section",{hidden:"modular"!=a.wordType}])},[(0,n.Wm)(r,{json:a.gData.modAppliesTo,code:"modAppliesTo",onSendMessage:l.handleSendMessage,ref:"modAppliesTo",onModal:l.openModal},null,8,["json","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.modNumber,code:"modNumber",onSendMessage:l.handleSendMessage,ref:"modNumber",onModal:l.openModal},null,8,["json","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.cn,code:"cn",onSendMessage:l.handleSendMessage,ref:"cn",onModal:l.openModal},null,8,["json","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.mood,code:"mood2",onSendMessage:l.handleSendMessage,ref:"mood2",onModal:l.openModal,class:(0,o.C_)({hidden:"mood"!=this.gOptions.cn})},null,8,["json","onSendMessage","onModal","class"]),(0,n.Wm)(r,{json:a.gData.casc,code:"casc2",onSendMessage:l.handleSendMessage,ref:"casc2",onModal:l.openModal,class:(0,o.C_)({hidden:"casc"!=this.gOptions.cn})},null,8,["json","onSendMessage","onModal","class"])],2),(0,n._)("div",{class:(0,o.C_)(["section",{hidden:"modular"!=a.wordType||"modular"==a.wordType&&!["2","3"].includes(a.gOptions.modNumber)}])},[ke,(0,n.Wm)(r,{json:a.gData.vn,code:"vn2",onSendMessage:l.handleSendMessage,ref:"vn2",onModal:l.openModal},null,8,["json","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.val,code:"val2",onSendMessage:l.handleSendMessage,ref:"val2",onModal:l.openModal,disabled:"val"!=this.gOptions.vn2},null,8,["json","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.pha,code:"pha2",onSendMessage:l.handleSendMessage,ref:"pha2",onModal:l.openModal,disabled:"pha"!=this.gOptions.vn2},null,8,["json","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.eff,code:"eff2",onSendMessage:l.handleSendMessage,ref:"eff2",onModal:l.openModal,disabled:"eff"!=this.gOptions.vn2},null,8,["json","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.lvl,code:"lvl2",onSendMessage:l.handleSendMessage,ref:"lvl2",onModal:l.openModal,disabled:"lvl"!=this.gOptions.vn2},null,8,["json","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.asp,code:"asp2",onSendMessage:l.handleSendMessage,ref:"asp2",onModal:l.openModal,disabled:"asp"!=this.gOptions.vn2},null,8,["json","onSendMessage","onModal","disabled"])],2),(0,n._)("div",{class:(0,o.C_)(["section",{hidden:"modular"!=a.wordType||"modular"==a.wordType&&"3"!=a.gOptions.modNumber}])},[Ee,(0,n.Wm)(r,{json:a.gData.vn,code:"vn3",onSendMessage:l.handleSendMessage,ref:"vn3",onModal:l.openModal},null,8,["json","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.val,code:"val3",onSendMessage:l.handleSendMessage,ref:"val3",onModal:l.openModal,disabled:"val"!=this.gOptions.vn3},null,8,["json","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.pha,code:"pha3",onSendMessage:l.handleSendMessage,ref:"pha3",onModal:l.openModal,disabled:"pha"!=this.gOptions.vn3},null,8,["json","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.eff,code:"eff3",onSendMessage:l.handleSendMessage,ref:"eff3",onModal:l.openModal,disabled:"eff"!=this.gOptions.vn3},null,8,["json","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.lvl,code:"lvl3",onSendMessage:l.handleSendMessage,ref:"lvl3",onModal:l.openModal,disabled:"lvl"!=this.gOptions.vn3},null,8,["json","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.asp,code:"asp3",onSendMessage:l.handleSendMessage,ref:"asp3",onModal:l.openModal,disabled:"asp"!=this.gOptions.vn3},null,8,["json","onSendMessage","onModal","disabled"])],2),(0,n._)("div",{class:(0,o.C_)(["section",{hidden:"modular"!=a.wordType}])},[De,(0,n.Wm)(r,{json:a.gData.vh,code:"vh",onSendMessage:l.handleSendMessage,ref:"vh",onModal:l.openModal,class:(0,o.C_)({hidden:"modular"!=this.wordType}),disabled:"1"==this.gOptions.modNumber},null,8,["json","onSendMessage","onModal","class","disabled"]),(0,n.Wm)(r,{json:a.gData.modScope,code:"modScope",onSendMessage:l.handleSendMessage,ref:"modScope",onModal:l.openModal,class:(0,o.C_)({hidden:"modular"!=this.wordType||"1"==this.gOptions.modNumber||"vn"==this.gOptions.vh})},null,8,["json","onSendMessage","onModal","class"]),(0,n.Wm)(r,{json:a.gData.v4n,code:"v4n",onSendMessage:l.handleSendMessage,ref:"v4n",onModal:l.openModal,class:(0,o.C_)({hidden:"vn"!=this.gOptions.vh||"1"==this.gOptions.modNumber})},null,8,["json","onSendMessage","onModal","class"]),(0,n.Wm)(r,{json:a.gData.val,code:"val4",onSendMessage:l.handleSendMessage,ref:"val4",onModal:l.openModal,disabled:"val"!=this.gOptions.v4n,class:(0,o.C_)({hidden:"vn"!=this.gOptions.vh||"1"==this.gOptions.modNumber})},null,8,["json","onSendMessage","onModal","disabled","class"]),(0,n.Wm)(r,{json:a.gData.pha,code:"pha4",onSendMessage:l.handleSendMessage,ref:"pha4",onModal:l.openModal,disabled:"pha"!=this.gOptions.v4n,class:(0,o.C_)({hidden:"vn"!=this.gOptions.vh||"1"==this.gOptions.modNumber})},null,8,["json","onSendMessage","onModal","disabled","class"]),(0,n.Wm)(r,{json:a.gData.eff,code:"eff4",onSendMessage:l.handleSendMessage,ref:"eff4",onModal:l.openModal,disabled:"eff"!=this.gOptions.v4n,class:(0,o.C_)({hidden:"vn"!=this.gOptions.vh||"1"==this.gOptions.modNumber})},null,8,["json","onSendMessage","onModal","disabled","class"]),(0,n.Wm)(r,{json:a.gData.lvl,code:"lvl4",onSendMessage:l.handleSendMessage,ref:"lvl4",onModal:l.openModal,disabled:"lvl"!=this.gOptions.v4n,class:(0,o.C_)({hidden:"vn"!=this.gOptions.vh||"1"==this.gOptions.modNumber})},null,8,["json","onSendMessage","onModal","disabled","class"]),(0,n.Wm)(r,{json:a.gData.asp,code:"asp4",onSendMessage:l.handleSendMessage,ref:"asp4",onModal:l.openModal,class:(0,o.C_)({hidden:"1"!=this.gOptions.modNumber})},null,8,["json","onSendMessage","onModal","class"])],2),(0,n._)("div",{class:(0,o.C_)(["section",{hidden:["suppletive","affixjunct","register","modular","ref","refCS","bias","free"].includes(a.wordType)}])},[(0,n.Wm)(r,{json:a.gData.vn,code:"vn",onSendMessage:l.handleSendMessage,ref:"vn",onModal:l.openModal},null,8,["json","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.val,code:"val",onSendMessage:l.handleSendMessage,ref:"val",onModal:l.openModal,disabled:"val"!=this.gOptions.vn},null,8,["json","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.pha,code:"pha",onSendMessage:l.handleSendMessage,ref:"pha",onModal:l.openModal,disabled:"pha"!=this.gOptions.vn},null,8,["json","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.eff,code:"eff",onSendMessage:l.handleSendMessage,ref:"eff",onModal:l.openModal,disabled:"eff"!=this.gOptions.vn},null,8,["json","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.lvl,code:"lvl",onSendMessage:l.handleSendMessage,ref:"lvl",onModal:l.openModal,disabled:"lvl"!=this.gOptions.vn},null,8,["json","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.asp,code:"asp",onSendMessage:l.handleSendMessage,ref:"asp",onModal:l.openModal,disabled:"asp"!=this.gOptions.vn},null,8,["json","onSendMessage","onModal","disabled"])],2),(0,n._)("div",{class:(0,o.C_)(["section",{hidden:["affixjunct","register","modular","ref","refCS","bias","free"].includes(a.wordType)}])},[(0,n.Wm)(r,{class:(0,o.C_)({hidden:"suppletive"!=a.wordType}),json:a.gData.suppType,code:"suppType",onSendMessage:l.handleSendMessage,ref:"suppType",onModal:l.openModal},null,8,["class","json","onSendMessage","onModal"]),(0,n.Wm)(r,{class:(0,o.C_)({hidden:"suppletive"==a.wordType}),json:a.gData.ctxt,code:"ctxt",onSendMessage:l.handleSendMessage,ref:"ctxt",onModal:l.openModal},null,8,["class","json","onSendMessage","onModal"]),(0,n.Wm)(r,{class:(0,o.C_)({hidden:"suppletive"==a.wordType}),show:!a.cascOrMood,json:a.gData.mood,code:"mood",onSendMessage:l.handleSendMessage,ref:"mood",onModal:l.openModal},null,8,["class","show","json","onSendMessage","onModal"]),(0,n.Wm)(r,{class:(0,o.C_)({hidden:"suppletive"==a.wordType}),show:a.cascOrMood,json:a.gData.casc,code:"casc",onSendMessage:l.handleSendMessage,ref:"casc",onModal:l.openModal},null,8,["class","show","json","onSendMessage","onModal"]),(0,n.Wm)(r,{show:a.cascOrMood,json:a.gData.c,code:"c",onSendMessage:l.handleSendMessage,ref:"c",onModal:l.openModal},null,8,["show","json","onSendMessage","onModal"]),(0,n.Wm)(r,{class:(0,o.C_)({hidden:"suppletive"==a.wordType}),show:!a.cascOrMood,json:a.gData.ill,code:"ill",onSendMessage:l.handleSendMessage,ref:"ill",onModal:l.openModal},null,8,["class","show","json","onSendMessage","onModal"]),(0,n.Wm)(r,{class:(0,o.C_)({hidden:"suppletive"==a.wordType}),show:!a.cascOrMood,json:a.gData.vld,code:"vld",onSendMessage:l.handleSendMessage,disabled:"ASR"!=this.gOptions.ill,ref:"vld",onModal:l.openModal},null,8,["class","show","json","onSendMessage","disabled","onModal"])],2),(0,n._)("div",{class:(0,o.C_)(["section",{hidden:"affixjunct"!=a.wordType}])},[(0,n.Wm)(r,{json:a.gData.affixjunct,code:"affixjunct",onSendMessage:l.handleSendMessage,ref:"affixjunct",onModal:l.openModal,reqAff:!0,whitelist:Object.keys(this.cData).concat(["ṭ","ŧ","ḍ","đ","ņ","ṇ","ŗ","ṛ","ł","ḷ","ż"]),aff6:l.calculateSlot6},null,8,["json","onSendMessage","onModal","whitelist","aff6"]),(0,n.Wm)(r,{json:a.gData.initialAffScope,code:"initialAffScope",onSendMessage:l.handleSendMessage,ref:"initialAffScope",onModal:l.openModal},null,8,["json","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.otherAffScope,code:"otherAffScope",onSendMessage:l.handleSendMessage,ref:"otherAffScope",onModal:l.openModal,disabled:this.gOptions.affixjunct.length<2},null,8,["json","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.affScopeOf,code:"affScopeOf",onSendMessage:l.handleSendMessage,ref:"affScopeOf",onModal:l.openModal},null,8,["json","onSendMessage","onModal"])],2),(0,n._)("div",{class:(0,o.C_)(["section",{hidden:"register"!=a.wordType}])},[(0,n.Wm)(r,{json:a.gData.register,code:"register",onSendMessage:l.handleSendMessage,ref:"register",onModal:l.openModal},null,8,["json","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.regStartOrEnd,code:"regStartOrEnd",onSendMessage:l.handleSendMessage,ref:"regStartOrEnd",onModal:l.openModal,disabled:"END"==this.gOptions.register},null,8,["json","onSendMessage","onModal","disabled"])],2),(0,n._)("div",{class:(0,o.C_)(["section",{hidden:"ref"!=a.wordType&&"refCS"!=a.wordType}])},[(0,n.Wm)(r,{json:a.gData.refAffix,class:(0,o.C_)({hidden:"refCS"!=a.wordType}),code:"refAffix",onSendMessage:l.handleSendMessage,ref:"refAffix",onModal:l.openModal,whitelist:Object.keys(this.cData).concat(["ṭ","ŧ","ḍ","đ","ņ","ṇ","ŗ","ṛ","ł","ḷ","ż"]),aff6:l.calculateSlot6},null,8,["json","class","onSendMessage","onModal","whitelist","aff6"]),(0,n.Wm)(r,{json:a.gData.twoCs,code:"twoCs",onSendMessage:l.handleSendMessage,ref:"twoCs",onModal:l.openModal},null,8,["json","onSendMessage","onModal"]),(0,n.Wm)(r,{json:a.gData.twoRefs,class:(0,o.C_)({hidden:"refCS"==a.wordType}),code:"twoRefs",onSendMessage:l.handleSendMessage,ref:"twoRefs",onModal:l.openModal,disabled:!this.gOptions.twoCs},null,8,["json","class","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.ref,code:"ref2",class:(0,o.C_)({hidden:"refCS"==a.wordType}),onSendMessage:l.handleSendMessage,ref:"ref2",onModal:l.openModal,disabled:!this.gOptions.twoRefs||!this.gOptions.twoCs},null,8,["json","class","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.refEff,code:"refEff2",class:(0,o.C_)({hidden:"refCS"==a.wordType}),onSendMessage:l.handleSendMessage,ref:"refEff2",onModal:l.openModal,disabled:!this.gOptions.twoRefs||!this.gOptions.twoCs},null,8,["json","class","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.refPersp,code:"refPersp2",class:(0,o.C_)({hidden:"refCS"==a.wordType}),onSendMessage:l.handleSendMessage,ref:"refPersp2",onModal:l.openModal,disabled:!this.gOptions.twoRefs||!this.gOptions.twoCs},null,8,["json","class","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.c,code:"c2",onSendMessage:l.handleSendMessage,ref:"c2",onModal:l.openModal,disabled:!this.gOptions.twoCs},null,8,["json","onSendMessage","onModal","disabled"]),(0,n.Wm)(r,{json:a.gData.ess,code:"ess2",onSendMessage:l.handleSendMessage,ref:"ess2",onModal:l.openModal},null,8,["json","onSendMessage","onModal"])],2),(0,n._)("div",{class:(0,o.C_)(["section",{hidden:"bias"!=a.wordType}])},[(0,n.Wm)(r,{json:a.gData.bias,code:"bias",onSendMessage:l.handleSendMessage,ref:"bias",onModal:l.openModal},null,8,["json","onSendMessage","onModal"])],2),(0,n._)("div",{class:(0,o.C_)(["section",{hidden:"free"!=a.wordType}])},[(0,n.Wm)(r,{json:a.gData.freeType,code:"freeType",ref:"freeType",onSendMessage:l.handleSendMessage,onModal:l.openModal},null,8,["json","onSendMessage","onModal"])],2)])}const Pe=e=>((0,n.dD)("data-v-4abae525"),e=e(),(0,n.Cn)(),e),Ne=["title"],Re=["maxlength"],Ve={key:1},We=["disabled"],_e={key:2},Le=["onUpdate:modelValue","id"],Ue=["onInput","id"],Fe=Pe((()=>(0,n._)("option",null,"UPX",-1))),ze=Pe((()=>(0,n._)("option",null,"DPX",-1))),Ge=Pe((()=>(0,n._)("option",null,"D",-1))),Be=Pe((()=>(0,n._)("option",null,"M",-1))),Xe=[Fe,ze,Ge,Be],qe=["onInput","id","disabled"],He=Pe((()=>(0,n._)("option",null,"S",-1))),Je=Pe((()=>(0,n._)("option",null,"D",-1))),$e=Pe((()=>(0,n._)("option",null,"F",-1))),Ye=[He,Je,$e],Ke=["onInput","id","disabled"],Qe=Pe((()=>(0,n._)("option",null,"S",-1))),Ze=Pe((()=>(0,n._)("option",null,"C",-1))),et=Pe((()=>(0,n._)("option",null,"F",-1))),tt=[Qe,Ze,et],st=["onInput","id"],it=Pe((()=>(0,n._)("option",null,"CSL",-1))),nt=Pe((()=>(0,n._)("option",null,"ASO",-1))),ot=Pe((()=>(0,n._)("option",null,"COA",-1))),at=Pe((()=>(0,n._)("option",null,"VAR",-1))),lt=[it,nt,ot,at],rt=["onInput","id"],ht=Pe((()=>(0,n._)("option",null,"DEL",-1))),ct=Pe((()=>(0,n._)("option",null,"PRX",-1))),dt=Pe((()=>(0,n._)("option",null,"ICP",-1))),pt=Pe((()=>(0,n._)("option",null,"ATV",-1))),ut=Pe((()=>(0,n._)("option",null,"GRA",-1))),ft=Pe((()=>(0,n._)("option",null,"DPL",-1))),gt=[ht,ct,dt,pt,ut,ft],mt=["onInput","id"],bt=Pe((()=>(0,n._)("option",null,"M",-1))),wt=Pe((()=>(0,n._)("option",null,"G",-1))),yt=Pe((()=>(0,n._)("option",null,"N",-1))),vt=Pe((()=>(0,n._)("option",null,"A",-1))),St=[bt,wt,yt,vt],Mt=["onInput","id"],Tt=Pe((()=>(0,n._)("option",null,"NRM",-1))),Ot=Pe((()=>(0,n._)("option",null,"RPV",-1))),Ct=[Tt,Ot],It=["onUpdate:modelValue","id"],xt={key:1,value:1},At={key:2,value:2},kt={key:3,value:3},Et={key:4,value:4},Dt={key:5,value:5},jt={key:6,value:6},Pt={key:7,value:7},Nt={key:8,value:8},Rt={key:9,value:9},Vt={key:0,value:0},Wt=["onClick"],_t=["onUpdate:modelValue","id"],Lt={value:1},Ut={value:2},Ft={value:3},zt={value:4},Gt=["disabled","id"],Bt=["value"],Xt={key:4},qt=Pe((()=>(0,n._)("b",null,"ERROR:",-1))),Ht=(0,n.Uk)(" Empty affixes"),Jt=[qt,Ht],$t={key:5},Yt=Pe((()=>(0,n._)("b",null,"ERROR:",-1))),Kt=(0,n.Uk)(" Affixes are required"),Qt=[Yt,Kt],Zt={key:6},es=Pe((()=>(0,n._)("b",null,"ERROR:",-1))),ts=(0,n.Uk)(" Empty text"),ss=[es,ts],is={key:7},ns=Pe((()=>(0,n._)("b",null,"ERROR:",-1))),os=(0,n.Uk)(" Non-allowed characters"),as=[ns,os],ls={key:8};function rs(e,t,s,a,l,r){return(0,n.wg)(),(0,n.iD)("div",{class:(0,o.C_)(["optionbox",r.OBclass])},[(0,n._)("h3",{onClick:t[0]||(t[0]=(0,i.iM)((e=>this.$emit("modal",s.code)),["self"])),title:"Learn more about "+s.json.title},(0,o.zw)(s.json.title),9,Ne),"text"==s.json.type?(0,n.wy)(((0,n.wg)(),(0,n.iD)("input",{key:0,"onUpdate:modelValue":t[1]||(t[1]=e=>l.text=e),onInput:t[2]||(t[2]=e=>this.$emit("send-message",l.text,s.code)),placeholder:"Enter...",maxlength:s.length},null,40,Re)),[[i.nr,l.text]]):"checkbox"==s.json.type?((0,n.wg)(),(0,n.iD)("div",Ve,[(0,n.wy)((0,n._)("input",{type:"checkbox","onUpdate:modelValue":t[3]||(t[3]=e=>l.option=e),onChange:t[4]||(t[4]=e=>this.$emit("send-message",l.option,s.code)),disabled:s.disabled},null,40,We),[[i.e8,l.option]])])):"affix"==s.json.type?((0,n.wg)(),(0,n.iD)("div",_e,[((0,n.wg)(!0),(0,n.iD)(n.HY,null,(0,n.Ko)(l.affixes,((e,a)=>((0,n.wg)(),(0,n.iD)("div",{key:e},[(0,n.wy)((0,n._)("input",{"onUpdate:modelValue":e=>l.affixes[a][0]=e,onInput:t[5]||(t[5]=e=>this.$emit("send-message",l.affixes,s.code)),placeholder:"Enter...",maxlength:"5",id:s.code+"affW"+a,class:(0,o.C_)({hidden:"CA"==l.affixes[a][1]})},null,42,Le),[[i.nr,l.affixes[a][0]]]),(0,n.wy)((0,n._)("select",{"onUpdate:modelValue":t[6]||(t[6]=e=>l.plex=e),onInput:e=>this.calc6(a),style:(0,o.j5)("CA"!=l.affixes[a][1]?"display:none":"display:inline-block"),id:s.code+"plex"+a.toString()},Xe,44,Ue),[[i.bM,l.plex]]),(0,n.wy)((0,n._)("select",{"onUpdate:modelValue":t[7]||(t[7]=e=>l.simil=e),onInput:e=>this.calc6(a),style:(0,o.j5)("CA"!=l.affixes[a][1]?"display:none":"display:inline-block"),id:s.code+"simil"+a.toString(),disabled:"UPX"==l.plex||"DPX"==l.plex},Ye,44,qe),[[i.bM,l.simil]]),(0,n.wy)((0,n._)("select",{"onUpdate:modelValue":t[8]||(t[8]=e=>l.cctd=e),onInput:e=>this.calc6(a),style:(0,o.j5)("CA"!=l.affixes[a][1]?"display:none":"display:inline-block"),id:s.code+"cctd"+a.toString(),disabled:"UPX"==l.plex||"DPX"==l.plex},tt,44,Ke),[[i.bM,l.cctd]]),(0,n.wy)((0,n._)("select",{"onUpdate:modelValue":t[9]||(t[9]=e=>l.affil=e),onInput:e=>this.calc6(a),style:(0,o.j5)("CA"!=l.affixes[a][1]?"display:none":"display:inline-block"),id:s.code+"affil"+a.toString()},lt,44,st),[[i.bM,l.affil]]),(0,n.wy)((0,n._)("select",{"onUpdate:modelValue":t[10]||(t[10]=e=>l.ext=e),onInput:e=>this.calc6(a),style:(0,o.j5)("CA"!=l.affixes[a][1]?"display:none":"display:inline-block"),id:s.code+"ext"+a.toString()},gt,44,rt),[[i.bM,l.ext]]),(0,n.wy)((0,n._)("select",{"onUpdate:modelValue":t[11]||(t[11]=e=>l.persp=e),onInput:e=>this.calc6(a),style:(0,o.j5)("CA"!=l.affixes[a][1]?"display:none":"display:inline-block"),id:s.code+"persp"+a.toString()},St,44,mt),[[i.bM,l.persp]]),(0,n.wy)((0,n._)("select",{"onUpdate:modelValue":t[12]||(t[12]=e=>l.ess=e),onInput:e=>this.calc6(a),style:(0,o.j5)("CA"!=l.affixes[a][1]?"display:none":"display:inline-block"),id:s.code+"ess"+a.toString()},Ct,44,Mt),[[i.bM,l.ess]]),(0,n.wy)((0,n._)("select",{"onUpdate:modelValue":e=>l.affixes[a][1]=e,onInput:t[13]||(t[13]=e=>this.$emit("send-message",l.affixes,s.code)),style:"display:inline-block",id:s.code+"affD"+a.toString()},[((0,n.wg)(),(0,n.iD)("option",xt,(0,o.zw)(["sw","sy","zw","zy","čw","čy","šw","šy","žw","žy","jw","jy","lw","ly"].includes(l.affixes[a][0])?"Deg. 1":4==l.affixes[a][2]?"THM":3==l.affixes[a][2]&&1==l.affixes.length?"POS":"Deg. 1"),1)),((0,n.wg)(),(0,n.iD)("option",At,(0,o.zw)(["sw","sy","zw","zy","čw","čy","šw","šy","žw","žy","jw","jy","lw","ly"].includes(l.affixes[a][0])?"Deg. 2":4==l.affixes[a][2]?"INS":3==l.affixes[a][2]&&1==l.affixes.length?"PRP":"Deg. 2"),1)),((0,n.wg)(),(0,n.iD)("option",kt,(0,o.zw)(["sw","sy","zw","zy","čw","čy","šw","šy","žw","žy","jw","jy","lw","ly"].includes(l.affixes[a][0])?"Deg. 3":4==l.affixes[a][2]?"ABS":3==l.affixes[a][2]&&1==l.affixes.length?"GEN":"Deg. 3"),1)),((0,n.wg)(),(0,n.iD)("option",Et,(0,o.zw)(["sw","sy","zw","zy","čw","čy","šw","šy","žw","žy","jw","jy","lw","ly"].includes(l.affixes[a][0])?"Deg. 4":4==l.affixes[a][2]?"AFF":3==l.affixes[a][2]&&1==l.affixes.length?"ATT":"Deg. 4"),1)),((0,n.wg)(),(0,n.iD)("option",Dt,(0,o.zw)(["sw","sy","zw","zy","čw","čy","šw","šy","žw","žy","jw","jy","lw","ly"].includes(l.affixes[a][0])?"Deg. 5":4==l.affixes[a][2]?"STM":3==l.affixes[a][2]&&1==l.affixes.length?"PDC":"Deg. 5"),1)),((0,n.wg)(),(0,n.iD)("option",jt,(0,o.zw)(["sw","sy","zw","zy","čw","čy","šw","šy","žw","žy","jw","jy","lw","ly"].includes(l.affixes[a][0])?"Deg. 6":4==l.affixes[a][2]?"EFF":3==l.affixes[a][2]&&1==l.affixes.length?"ITP":"Deg. 6"),1)),((0,n.wg)(),(0,n.iD)("option",Pt,(0,o.zw)(["sw","sy","zw","zy","čw","čy","šw","šy","žw","žy","jw","jy","lw","ly"].includes(l.affixes[a][0])?"Deg. 7":4==l.affixes[a][2]?"ERG":3==l.affixes[a][2]&&1==l.affixes.length?"OGN":"Deg. 7"),1)),["sy","zy","čy","šy","žy","jy","ly"].includes(l.affixes[a][0])?(0,n.kq)("",!0):((0,n.wg)(),(0,n.iD)("option",Nt,(0,o.zw)(["sw","sy","zw","zy","čw","čy","šw","šy","žw","žy","jw","jy","lw","ly"].includes(l.affixes[a][0])?"Deg. 8":4==l.affixes[a][2]?"DAT":3==l.affixes[a][2]&&1==l.affixes.length?"IDP":"Deg. 8"),1)),((0,n.wg)(),(0,n.iD)("option",Rt,(0,o.zw)(["sw","sy","zw","zy","čw","čy","šw","šy","žw","žy","jw","jy","lw","ly"].includes(l.affixes[a][0])?"Deg. 9":4==l.affixes[a][2]?"IND":3==l.affixes[a][2]&&1==l.affixes.length?"PAR":"Deg. 9"),1)),["sy","zy","čy","šy","žy","jy","ly"].includes(l.affixes[a][0])||!["sw","sy","zw","zy","čw","čy","šw","šy","žw","žy","jw","jy","lw","ly"].includes(l.affixes[a][0])&&(4==l.affixes[a][2]||3==l.affixes[a][2]&&1==l.affixes.length)?(0,n.kq)("",!0):((0,n.wg)(),(0,n.iD)("option",Vt,"Deg. 0")),(0,n._)("option",{key:"CA",value:"CA",onClick:e=>r.calc6(a)},"Cₐ-stacking",8,Wt)],40,It),[[i.bM,l.affixes[a][1]]]),(0,n.wy)((0,n._)("select",{"onUpdate:modelValue":e=>l.affixes[a][2]=e,onInput:t[14]||(t[14]=e=>this.$emit("send-message",l.affixes,s.code)),style:(0,o.j5)("CA"==l.affixes[a][1]?"display:none":"display:inline-block"),id:s.code+"affT"+a},[(0,n._)("option",Lt,(0,o.zw)(["sw","sy","zw","zy","čw","čy","šw","šy","žw","žy","jw","jy","lw","ly"].includes(l.affixes[a][0])?"Series ":"Type-")+"1",1),(0,n._)("option",Ut,(0,o.zw)(["sw","sy","zw","zy","čw","čy","šw","šy","žw","žy","jw","jy","lw","ly"].includes(l.affixes[a][0])?"Series ":"Type-")+"2",1),(0,n._)("option",Ft,(0,o.zw)(["sw","sy","zw","zy","čw","čy","šw","šy","žw","žy","jw","jy","lw","ly"].includes(l.affixes[a][0])?"Series 3":1==l.affixes.length?"Ref (3)":"Type-3"),1),(0,n._)("option",zt,(0,o.zw)(["sw","sy","zw","zy","čw","čy","šw","šy","žw","žy","jw","jy","lw","ly"].includes(l.affixes[a][0])?"Series 4":"Ref (4)"),1)],44,_t),[[i.bM,l.affixes[a][2]]])])))),128)),(0,n._)("input",{type:"button",value:"Add",onClick:t[15]||(t[15]=e=>{l.affixes.push(["",1,1]),this.$emit("send-message",l.affixes,s.code)})}),(0,n._)("input",{type:"button",value:"Remove",onClick:t[16]||(t[16]=e=>{l.affixes.pop(),this.$emit("send-message",l.affixes,s.code)})})])):(0,n.wy)(((0,n.wg)(),(0,n.iD)("select",{key:3,"onUpdate:modelValue":t[17]||(t[17]=e=>l.option=e),onChange:t[18]||(t[18]=e=>this.$emit("send-message",l.option.toString(),s.code)),disabled:s.disabled,id:s.code},[((0,n.wg)(!0),(0,n.iD)(n.HY,null,(0,n.Ko)(s.json.options,((e,t)=>((0,n.wg)(),(0,n.iD)("option",{key:e.name,value:t},(0,o.zw)(e.name)+" "+(0,o.zw)(t!==t.toString().toUpperCase()||["1","2","3","4","5","6","7","8","9","0"].includes(t)?"":"("+t+")"),9,Bt)))),128))],40,Gt)),[[i.bM,l.option]]),"affix"!=s.json.type||0==this.affixes.length||this.affixes.every((function(e){return""!=e[0]}))?"affix"==s.json.type&&0==this.affixes.length&&s.reqAff?((0,n.wg)(),(0,n.iD)("p",$t,Qt)):"text"==s.json.type&&""==this.text?((0,n.wg)(),(0,n.iD)("p",Zt,ss)):this.$props.whitelist&&("text"==s.json.type&&!this.text.split("").every((e=>this.$props.whitelist.includes(e.toLowerCase())))||"affix"==s.json.type&&0!=this.affixes.length&&!this.affixes.every((e=>e[0].split("").every((e=>this.$props.whitelist.includes(e))))))?((0,n.wg)(),(0,n.iD)("p",is,as)):((0,n.wg)(),(0,n.iD)("p",ls)):((0,n.wg)(),(0,n.iD)("p",Xt,Jt))],2)}var hs={name:"OptionBox",props:{code:String,json:Object,disabled:Boolean,show:Boolean,length:String,whitelist:Array,reqAff:Boolean,aff6:Function},data(){return{text:"",option:null,affixes:[],plex:"UPX",simil:"S",cctd:"S",affil:"CSL",ext:"DEL",persp:"M",ess:"NRM"}},computed:{OBclass(){return{error:"affix"==this.json.type&&0!=this.affixes.length&&(this.$props.whitelist&&!this.affixes.every((function(e){return""!=e[0]}))||!this.affixes.every((e=>e[0].split("").every((e=>this.$props.whitelist.includes(e))))))||"text"==this.json.type&&(""==this.text||this.$props.whitelist&&!this.text.split("").every((e=>this.$props.whitelist.includes(e.toLowerCase()))))||"affix"==this.json.type&&0==this.affixes.length&&this.reqAff,disabledbox:this.disabled,notShown:this.show}}},mounted(){""==this.$props.json.type&&(this.option=Object.keys(this.$props.json.options)[0])},methods:{updateValue(e){if("affix"==this.$props.json.type){this.affixes=e;for(let t in this.affixes)this.waitForElm("#"+this.$props.code+"affW"+t.toString()).then((s=>{s.value=e[t][0]})),this.waitForElm("#"+this.$props.code+"affD"+t.toString()).then((s=>{s.value=e[t][1]})),this.waitForElm("#"+this.$props.code+"affT"+t.toString()).then((s=>{s.value=e[t][2]}));this.$emit("send-message",this.affixes,this.$props.code)}else"text"==this.$props.json.type?(this.text=e,this.$emit("send-message",this.text,this.$props.code)):"checkbox"==this.$props.json.type?(this.option=e,this.$emit("send-message",this.option,this.$props.code)):(console.log("Recieved",e,"in",this.$props.code),Object.keys(this.$props.json.options).includes(e)&&(this.option=e,document.getElementById(this.$props.code).selectedIndex=Object.keys(this.$props.json.options).indexOf(e),this.$emit("send-message",this.option.toString(),this.$props.code)))},calc6(e){let t=document.getElementById(this.code+"affil"+e).value,s=document.getElementById(this.code+"plex"+e).value,i=document.getElementById(this.code+"simil"+e).value,n=document.getElementById(this.code+"cctd"+e).value,o=document.getElementById(this.code+"ext"+e).value,a=document.getElementById(this.code+"ess"+e).value,l=document.getElementById(this.code+"persp"+e).value;this.affixes[e][0]=this.aff6(!0,t,s,i,n,o,a,l),this.$emit("send-message",this.affixes,this.$props.code),this.$emit("send-message",this.affixes,this.$props.code)},waitForElm(e){return new Promise((t=>{if(document.querySelector(e))return t(document.querySelector(e));const s=new MutationObserver((()=>{document.querySelector(e)&&(t(document.querySelector(e)),s.disconnect())}));s.observe(document.body,{childList:!0,subtree:!0})}))}}},cs=s(89);const ds=(0,cs.Z)(hs,[["render",rs],["__scopeId","data-v-4abae525"]]);var ps=ds,us=JSON.parse('{"root":{"type":"text","title":"Root (Slot III)","popupdesc":"The root is the general definition of the word, and can be directly modified by the Stem and Specification. Check the Lexicon for what your word\'s Root, Stem, and Specification should be."},"stem":{"type":"","title":"Stem","options":{"s1":{"name":"Stem 1","desc":""},"s2":{"name":"Stem 2","desc":""},"s3":{"name":"Stem 3","desc":""},"s0":{"name":"Stem 0","desc":"Stem 0 is special in that it describes the overall \\"stemless\\" definition of a root; i.e. the title of its box in the Lexicon document (if it has one) or a general agglomeration of the three roots\' definitions."}},"popupdesc":"The stem of a word describes which of three possible definitons that a root could take is used in the word. Specific stem definitions are in the Lexicon."},"func":{"type":"","title":"Function","options":{"STA":{"name":"Static","desc":"The Static function is typically used in the following ways:
  • Nouns (Nominal relation) identifying an object, group, entity, or action in which any change or motion is irrelevant to the speaker, or
  • Verbs (Verbal relation) referring to a non-changing, undynamic state.
"},"DYN":{"name":"Dynamic","desc":"The Dynamic function is typically used in the following ways:
  • Nouns (Nominal relation) referring to states involving change or motion where said change or motion is relevant to the speaker, or
  • Verbs (Verbal relation) involving change/motion/movement/action in which the change/motion/movement/action is relevant to the speaker\'s intended meaning, especially those involving an agent/enabler and a patient.
"}},"popupdesc":"Function is used to show how relevant any change or motion related to a word is to the speaker, and can be both subjective (a meal as an event [STA] or as a process [DYN]?) or objective (the sunset is orange [STA] vs the sky became orange [DYN]) depending on the situation."},"spec":{"type":"","title":"Specification","options":{"BSC":{"name":"Basic","desc":"A holistic instantiation of a root, prior to the application of one of the other three Specifications, essentially encompassing the meanings of the CTE, and CSV specifications below."},"CTE":{"name":"Contential","desc":"The physical or non-physical “content” or essence or purposeful function or idealized/abstract/platonic form thereof, as opposed to its mere physical form/shape"},"CSV":{"name":"Constitutive","desc":"The form (physical or non-physical) in which an entity/state/act actually expresses itself, is shaped, or is realized, as opposed to its functional/purposeful content, i.e., \\"what constitutes X\\""},"OBJ":{"name":"Objective","desc":"Whichever of the following is most salient to the semantics of the particular stem:
(1) tangible tool/instrument/means by which a state act/state/event occurs, or if inapplicable, then
(2) the third-party object/entity associated with the interaction between two parties (e.g., the object being given in a dative interaction), or if inapplicable then
(3) the resulting tangible object/product/situation, or if inapplicable, then
(4) the semantic patient or experiencer of the state/act/event."}},"popupdesc":"Specification makes the definition of the root more specific.
Listed below are the generic definitions of the terms, but the Lexicon should have all necessary information (i.e. what your root means when paired with a certain specification)."},"ver":{"type":"","title":"Version","options":{"PRC":{"name":"Processual","desc":"The Processual is the default version and describes all acts, conditions, or events which are ends in themselves and not goal-oriented, i.e., are not focused on an anticipated outcome or final purpose toward which a progressive effort is being made."},"CPT":{"name":"Completive","desc":"The Completive describes acts, conditions, or events which achieve, or are intended to achieve, an anticipated outcome, i.e., which are oriented toward the achievement of some purpose, outcome, or final state. Such a distinction is usually handled by word choice in Western languages.
hunt → to hunt down
to be losing → to lose
to study → to learn
to be winning → to win
to strive for → to accomplish, achieve
"}},"popupdesc":"Version describes if a given word is goal-oriented or not in its outcome. Ithkuil III had six, but New Ithkuil has only two."},"ctxt":{"type":"","title":"Context","options":{"EXS":{"name":"Existential","desc":"Neutral description
The EXISTENTIAL context focuses on those features of a noun or verb which are ontologically objective, i.e., those that exist irrespective of any observers, opinions, interpretations, beliefs or attitudes. Similarly excluded from consideration in the EXISTENTIAL is any notion of a noun\'s use, function, role or benefit. The EXISTENTIAL serves only to point out the mere existence of a noun as a tangible, objective entity under discussion. It is thus used to offer mere identification of a noun or verb."},"FNC":{"name":"Functional","desc":"Focus on the personal meaning/importance
The FUNCTIONAL context focuses on those features of a formative that are defined socially by ideas, attitudes, beliefs, opinions, convention, cultural status, use, function, benefit, etc. It serves to identify not what a noun existentially is, but to show that the noun has specific (and subjective) contextual meaning, relevance or purpose."},"RPS":{"name":"Representational","desc":"Connotes that the word is a metaphor
The REPRESENTATIONAL context focuses on a formative as a symbol, metaphor, or metonym, in that it indicates that the formative is serving as a representation or substitute for some other concept or entity which is abstractly associated with it. For example, the metaphorical connotations of the English sentence That pinstripe-suited dog is checking out a kitty, can be equally conveyed in Ithkuil by inflecting the words for \'dog\' and \'kitty\' into the REPRESENTATIONAL context. The REPRESENTATIONAL is one of several ways that Ithkuil overtly renders all metaphorical, symbolic, or metonymic usages (from a grammatical standpoint)."},"AMG":{"name":"Amalgamate","desc":"Connotes a focus on the emotional impact plus cultural significance
The AMALGAMATIVE context is the most abstract and difficult to understand from a Western linguistic perspective. It focuses on the systemic, holistic, gestalt-like, componential nature of a formative, implying that its objective and subjective totality is derived synergistically from (or as an emergent property of) the interrelationships between all of its parts, not just in terms of a static momentary appraisal, but in consideration of the entire developmental history of the noun and any interactions and relationships it has (whether past, present or potential) within the larger context of the world. Its use indicates the speaker is inviting the hearer to subjectively consider all the subjective wonder, emotional nuances, psychological ramifications and/or philosophical implications associated with the noun\'s existence, purpose, or function, as being a world unto itself, intrinsically interconnected with the wider world beyond it on many levels."}},"popupdesc":"Context is a morphological category with no equivalent in other languages. It indicates what tangible or intangible features or aspects of a formative are being psychologically implied in any given utterance. There is no way to show this in translation other than by paraphrase.
Simply, context implies what emotional meaning you should apply to the given word; reading the individual definitions is recommended."},"rel":{"type":"","title":"Relation","options":{"UNF/C":{"name":"Nominal","desc":"The word is not a verb (which usually means a noun).
All Concatenated words are Nominal automatically."},"UNF/K":{"name":"Unframed Verbal","desc":"The word is a verb"},"FRM":{"name":"Framed Verbal","desc":"The word is the main verb in a verb phrase (or \\"frame\\") - the verb phrase continues until the end of the sentance, and this word MUST go at the start of it."}},"popupdesc":"Put simply, which part of speech a word belongs to. A nominal is usually a noun, but could be anything other than a verb.

Nominals (and Framed Verbals) are modified by Case and Case-Scope to give a more specific purpose, and (Unframed) Verbals are modified by Mood, Illocution, Expectation and Validation to give a reasoning and intended reaction."},"concat":{"type":"","title":"Concatenation","options":[{"name":"None","desc":"This word is not concatenated to another."},{"name":"Type 1","desc":"Type-1 concatenation implies a circumstantial relationship between the concatenated formative and the parent (equivalent to placing the concatenated formative into a case-frame)"},{"name":"Type 2","desc":"Type-2 concatenation is derivational (i.e., lexicalizing), creating a new lexico-semantic gestalt and usually requiring a different English translation.
This is analogous to English forms like polar bear naming a new animal rather than stating a location."}],"popupdesc":"Concatenation is similar to the Incorporated Root of Ithkuil III. Basically, it\'s how you show two roots on one word in order to make a short phrase or for extra description (\'desk chair\' rather than \'chair\').
A concatenated word MUST be followed by another word (formative), and the two must be joined with a dash.
A concatenated word is automatically a Nominal (see Relation for more on that)."},"shcut":{"type":"","title":"Shortcutting","options":[{"name":"Default (VII only)","desc":"Do not apply Slot IV/VI shortcuts"},{"name":"Slot IV/VI","desc":"Apply Slot IV/VI shortcuts if possible (takes priority over all other shortcuts)"},{"name":"No VII affix","desc":"Do not apply Slot IV/VI or Slot VII affix shortcuts"},{"name":"Absolutely None","desc":"Do not apply ANY shortcuts whatsoever, do not drop any letters, and show the full gloss instead of the regular"}],"popupdesc":"Please note that these options (aside from \\"Absolutely None\\") do not apply to Slot VIII being moved to Slot VI. For that, check settings.
Shortcutting doesn\'t change the definition of a word, it instead shuffles around how the meaning is represented on that word, potentially making it shorter.
If you\'re not sure which option to use, finish creating your word and then see which option makes it the shortest.
(The Slot IV/VI shortcut uses Slots I and II to indicate Slots IV and VI, and the Slot VII shortcut uses Slot II to indicate one Slot VII affix)"},"Vafx":{"type":"affix","title":"Slot V Affixes","popupdesc":"Slot V Affixes are simple definitional modifications to your word applied before any concatenated words, Configuration, Affiliation, Extension, Perspective, and Essence.
Degree 0 refers to the affix\'s general semantic concept as a whole, similar to Stem 0.

Types:
Type 1: circumstantial relation to the word
Type 2: derivational relation to the word (i.e. it\'s a new word/phrase, as in \'polar bear\')
Type 3: Apply to the previous affix

Cₐ-stacking is the ability to add a Cₐ (Configuration+Affiliation+Extension+Perspective+Essence) consonant-form as an affix.

The Ref options allow you to show a Referential (pronoun) on this word as a shortcut - selecting this will turn the Degree options into Case options.
Ref (3) is only available if there is one affix in the slot, to not clash with Type 3"},"VIIafx":{"type":"affix","title":"Slot VII Affixes","popupdesc":"Slot VII Affixes are simple definitional modifications to your word applied after any concatenated words, Configuration, Affiliation, Extension, Perspective, and Essence.
Degree 0 refers to the affix\'s general semantic concept as a whole, similar to Stem 0.

Types:
Type 1: circumstantial relation to the word
Type 2: derivational relation to the word (i.e. it\'s a new word/phrase, as in \'polar bear\')
Type 3: Apply to the previous affix

Cₐ-stacking is the ability to add a Cₐ (Configuration+Affiliation+Extension+Perspective+Essence) consonant-form as an affix.

The Ref options allow you to show a Referential (pronoun) on this word as a shortcut - selecting this will turn the Degree options into Case options.
Ref (3) is only available if there is one affix in the slot, to not clash with Type 3"},"plex":{"type":"","title":"Plexity","options":{"UPX":{"name":"Uniplex","desc":"The UNIPLEX configuration indicates a single, contextual embodiment of the word, i.e., one whole contextual unit of the basic nominal stem,
e.g. a tree, a person, a screwdriver, a grape, a hammer blow, a hole.
With verbs the UNIPLEX signifies a single, holistic act, state, or event,
e.g. to be a tree, to become a person, to use a screwdriver, to eat a grape, to strike (once) with a hammer, to dig a hole."},"DPX":{"name":"Vague Duplex","desc":"The Vague DUPLEX (unofficial name) is the same as the below DUPLEX, except no information regarding Similarity or Connectedness is relayed."},"D":{"name":"Duplex","desc":"The DUPLEX indicated any two contextual embodiments of the word (like the UNIPLEX) or two individual, holistic acts, states, or events.
Like the DUAL in some natural languages."},"M":{"name":"Multiplex","desc":"Same as the above two in terms of when it is applied, but only for more than two instances.
Like the PLURAL in most natural languages."}},"popupdesc":"Describes how many instances of the word there are, similar but not the same as plurality markings of other languages. However, similarities to plurality are used in the below definitions.
This is how you turn the word \\"tree\\" into \\"forest\\", for example, but not \\"tree\\" into \\"trees\\"."},"simil":{"type":"","title":"Similarity","options":{"S":{"name":"Similar","desc":"The 2+ instances are similar or the same"},"D":{"name":"Dissimilar","desc":"The 2+ instances are not similar at all"},"F":{"name":"Fuzzy","desc":"It is unclear as to how similar the 2+ instances are"}},"popupdesc":"Only applies when the Plexity is DUPLEX or MULTIPLEX.
This indicates how similar the 2+ instances (from the Plexity) are."},"cctd":{"type":"","title":"Connectedness","options":{"S":{"name":"Separate","desc":"The 2+ instances are separate"},"C":{"name":"Connected","desc":"The 2+ instances are somewhat connected (but discrete)"},"F":{"name":"Fused","desc":"The 2+ instances are very connected and are somewhat difficult to make discrete"}},"popupdesc":"Only applies when the Plexity is DUPLEX or MULTIPLEX.
This indicated how connected the 2+ instanced (from the Plexity) are."},"affil":{"type":"","title":"Affiliation","options":{"CSL":{"name":"Consolidative","desc":"The CONSOLIDATIVE affiliation indicates that the individual members of a configurational set are a naturally occurring set where the function, state, purpose or benefit of individual members is inapplicable, irrelevant, or if applicable, is shared. It differs from the ASSOCIATIVE affiliation below in that the role of individual set members is not subjectively defined by human design. Examples are tree branches, a grove, a mound of rocks, some people, the clouds.

The CONSOLIDATIVE is also the affiliation normally applied to nouns in the UNIPLEX (plexity) when spoken of in a neutral way, since a noun in the UNIPLEX specifies one single entity without reference to a set, therefore the concept of “shared” function would be inapplicable. Examples: a man, a door, a sensation of heat, a leaf. With verbs, the CONSOLIDATIVE would imply that the act, state, or event is occurring naturally, or is neutral as to purpose or design."},"ASO":{"name":"Associative","desc":"The ASSOCIATIVE affiliation indicates that the individual members of a configurational set share the same subjective function, state, purpose or benefit. Its use can be illustrated by taking the Ithkuil word for soldier in the DISCRETE configuration and comparing its English translations when inflected for the CONSOLIDATIVE affiliation (= a group of soldiers) versus the ASSOCIATIVE (= a troop, a platoon). It is this CONSOLIDATIVE versus ASSOCIATIVE distinction, then, that would distinguish otherwise equivalent plural inflections of the Ithkuil word for tree by translating them respectively as a grove versus an orchard.

The ASSOCIATIVE affiliation can also be used with nouns in the UNIPLEX (plexity) to signify a sense of unity amongst one\'s characteristics, purposes, thoughts, etc. For example, the word person inflected for the UNIPLEX and ASSOCIATIVE would translate as a single-minded person. Even nouns such as rock, tree or work of art could be inflected this way, subjectively translatable as a well-formed rock, a tree with integrity, a “balanced” work of art.

With verbs, the ASSOCIATIVE signifies that the act, state or event is by design or with specific purpose. The CONSOLIDATIVE versus ASSOCIATIVE distinction could be used, for example, with the verb turn in \\"I turned toward the window\\" to indicate whether it was for no particular reason or due to a desire to look outside."},"COA":{"name":"Coalescent","desc":"The COALESCENT affiliation indicates that the members of a configurational set share in a complementary relationship with respect to their individual functions, states, purposes, benefits, etc. This means that, while each member\'s function is distinct from those of other members, each serves in furtherance of some greater unified role. For example, the Ithkuil word translating English toolset would be the word for tool in some plural configuration (depending on each tool\'s distinct physical appearance) and the COALESCENT affiliation to indicate that each tool has a distinct but complementary function in furtherance of enabling construction or repair activities. Another example would be using the COALESCENT with the word for (piece of) food to signify a well-balanced meal.

The COALESCENT naturally appears most often in conjunction with the DUPLEX since binary sets tend to be complementary. It is used, for example, to signify symmetrical binary sets such as body parts, generally indicating a lefthand/righthand mirror-image distinction, e.g., one\'s ears, one\'s hands, a pair of wings. Pairs that do not normally distinguish such a complementary distinction (e.g. one\'s eyes) can nevertheless be optionally placed in the COALESCENT affiliation to emphasize bilateral symmetry (e.g., one\'s left and right eye functioning together).

With verbs, the COALESCENT signifies that related, synergistic nature of the component acts, states, and events which make up a greater holistic act, state, or event. It imposes a situational structure onto an act, state, or event, where individual circumstances work together in complementary fashion to comprise the total situation. It would be used, for example, to distinguish the sentences He traveled in the Yukon from He ventured in the Yukon, or I came up with a plan versus I fashioned a plan."},"VAR":{"name":"Variative","desc":"The VARIATIVE affiliation indicates that the individual members of a configurational set differ as to subjective function, state, purpose or benefit. The differences among members can be to varying degrees (i.e., constituting a fuzzy set in regard to function, purpose, etc.) or at complete odds with one another, although it should be noted that the VARIATIVE would not be used to signify opposed but complementary differences among set members (see the COALESCENT affiliation above). It would thus be used to signify a jumble of tools, odds-and-ends, a random gathering, a rag-tag group, a dysfunctional couple, a cacophony of notes, of a mess of books, a collection in disarray.
It operates with nouns in the UNIPLEX to render meanings such as a man at odds with himself, an ill-formed rock, a chaotic piece of art, a “lefthand-righthand” situation.

With verbs, the VARIATIVE indicates an act, state, or event that occurs for more than one reason or purpose, and that those reasons or purposes are more or less unrelated. This sense can probably be captured in English only through paraphrase, as in She bought the house for various reasons or My being at the party served several purposes. With non-UNIPLEX configurations, the use of the VARIATIVE affiliation can describe rather complex phenomena; for example, a sentence such as The light is blinking in conjunction with the VARIATIVE could mean that each blink of the light signals something different than the preceding or following blinks."}},"popupdesc":"Affiliation distinguishes the relationships between individual members of a set in terms of purpose, function, and/or benefit.

Affiliation operates synergistically in conjunction with Configuration to describe the total contextual relationship between the members of a set. Like Configuration, the meanings of nouns or verbs in the various affiliations often involve lexical changes when translated into English."},"ext":{"type":"","title":"Extension","options":{"DEL":{"name":"Delimitive","desc":"The DELIMITIVE extension indicates that a noun is being spoken of in its contextual entirety as a discrete entity with clear spatio-temporal boundaries, with no emphasis on any particular portion, edge, boundary, limit, or manifestation beyond the context at hand. It can be considered the neutral or default view, e.g., a tree, a grove, a set of books, an army. With verbs, this extension indicates that the act, state, or event is being considered in its entirety, from beginning to end, e.g., She diets every winter (i.e., she starts and finishes each diet).","image":"http://ithkuil.net/images/3-4-1c.jpg"},"PRX":{"name":"Proximal","desc":"The PROXIMAL extension indicates that a noun is being spoken of not in its entirety, but rather only in terms of the portion, duration, subset, or aspect which is relevant to the context at hand. It would be used to translate the words tree, journey, and ladder in the sentences That tree is hard there (e.g., in the spot where I hit against it), She lost weight during her journey, or He climbed on the ladder (i.e., it is not relevant to the context to know if he made it all the way to the top).
Note that in these sentences, the PROXIMAL does not refer to a specific or delineated piece, part, or component of the tree or ladder, but rather to the fact that delineated boundaries such as the ends of the ladder or the entirety of the tree are not relevant or applicable to the context at hand.","image":"http://ithkuil.net/images/3-4-2c.jpg"},"ICP":{"name":"Inceptive","desc":"The INCEPTIVE extension focuses on the closest boundary, the beginning, initiation, or the immediately accessible portion of a noun or verb, without focusing on the boundaries of the remainder. It would be used in translating the nouns tunnel, song, desert, daybreak and plan in the following sentences: We looked into (the mouth of) the tunnel, He recognizes that song (i.e., from the first few notes), They came upon (an expanse of) desert, Let\'s wait for daybreak, I\'m working out a plan (i.e., that I just thought of).
In verbal contexts it would correspond to the English ‘to begin (to)…’ or ‘to start (to)…’ as in He began reading, It’s starting to molt, or She goes on a diet every winter.","image":"http://ithkuil.net/images/3-4-3c.jpg"},"ATV":{"name":"Attenuative","desc":"The ATTENUATIVE extension focuses on the end, termination, last portion, or trailing boundary of a noun, without focusing on the preceding or previously existing state of the noun. It would be used in translating the words water, story, and arrival in the sentences There’s no water (i.e., we ran out), I like the end of that story, and We await your arrival. With verbs, it is illustrated by the sentences It finished molting or She’s come off her diet.","image":"http://ithkuil.net/images/3-4-4c.jpg"},"GRA":{"name":"Graduative","desc":"The GRADUATIVE extension is the inverse of the DEPLETIVE (below), focusing on a diffuse, extended “fade-in” or gradual onset of a noun. It would be used in translating the words darkness, wonder, and music in the following sentences: Darkness came upon us, I felt a growing sense of wonder, The music was very soft at first. With verbs it is illustrated by verbs and phrases such as to fade in, to start gradually, to build up, and similar notions, e.g., She\'s been eating more and more lately.","image":"http://ithkuil.net/images/3-4-6c.jpg"},"DPL":{"name":"Depletive","desc":"The DEPLETIVE extension focuses on the terminal boundary or “trailing” edge of a noun, where this terminus is ill-defined, “diffuse” or extended to some degree, (i.e. the at-hand context of the noun “peters out” or terminates gradually). Essentially, it applies to any context involving actual or figurative fading. It would be used in translating the words water, strength, and twilight in the sentences He drank the last of the water, I have little strength left, She disappeared into the twilight. With verbs, it is exemplified by the phrases to wind down, to fade out, to disappear gradually and similar notions, e.g., She\'s eating less and less these days.","image":"http://ithkuil.net/images/3-4-5c.jpg"}},"popupdesc":"Extension refers to the spatial and temporal extent to which you are considering the root word; are you referring to all of it? The start of it? Some part in the middle of it?"},"persp":{"type":"","title":"Perspective","options":{"M":{"name":"Monadic","desc":"The MONADIC means that there is a certain number of (relevant) instances of the word. When combined with things like the MULTIPLEX, it means that the entire group is being considered as a whole (\\"forest(s)\\", not \\"trees\\")."},"G":{"name":"Agglomerative","desc":"The AGGLOMERATIVE is similar to the MONADIC, except it doesn\'t imply any sense of number; as in, \\"one or more X\\". It is also used for turning nouns (such as \\"a strand of hair\\" in the MONADIC) into mass nouns (such as \\"hair\\" in the AGGLOMERATIVE)"},"N":{"name":"Nomic","desc":"The NOMIC refers to the general archetype of the word as opposed to any specific instance of it. Examples are: The dog is a noble beast, Clowns are what children love most, There is nothing like a tree."},"A":{"name":"Abstract","desc":"Similar to the formation of English abstract nouns using suffixes such as -hood or -ness, the ABSTRACT transforms a configurative category into an abstract concept considered in a non-spatial, timeless, numberless context.
Examples: grove → the idea of being a grove or “grovehood”; book → everything about books, having to do with books, involvement with books.

With verbs, the ABSTRACT is used in verbal constructions to create a temporal abstraction, where the temporal relationship of the action, event, or state to the present is irrelevant or inapplicable, similar to the way in which the English infinitive or gerund form (used as substitutes for a verb phrase) do not convey a specific tense in the following sentences: Singing is not his strong suit; It makes no sense to worry about it; I can\'t stand her pouting."}},"popupdesc":"Perspective is the closest Ithkuil morphological category to the Number and Tense categories of other languages (e.g., singular/plural and past/present/future). However, the correspondence is only approximate because Perspective does not specifically address the quantity to which a formative is instantiated within a given context, nor when it occurs relative to the present, but rather the manner in which it is spatio-temporally instantiated."},"ess":{"type":"","title":"Essence","options":{"NRM":{"name":"Normal","desc":"Things that are real or real things that have happened"},"RPV":{"name":"Representative","desc":"Things that are potentially real (\\"It seems\\"/\\"I think it\'s\\") or imagined"}},"popupdesc":"The Ithkuil category of Essence explicitly distinguishes real-world actualities from their alternative, imagined or potential counterparts. The two essences are termed NORMAL and REPRESENTATIVE, the former being the default essence denoting real-world nouns and verbs, the latter denoting alternative counterparts."},"vn":{"type":"","title":"Vₙ","options":{"val":{"name":"Valence","desc":""},"pha":{"name":"Phase","desc":""},"eff":{"name":"Effect","desc":""},"lvl":{"name":"Level","desc":""},"asp":{"name":"Aspect","desc":""}},"popupdesc":"Determines which of the linked categories (listed below) will actually be shown on the word. All others are showable via affix if absolutely necessary, but will not be shown otherwise."},"v4n":{"type":"","title":"Vₙ","options":{"val":{"name":"Valence","desc":""},"pha":{"name":"Phase","desc":""},"eff":{"name":"Effect","desc":""},"lvl":{"name":"Level","desc":""}},"popupdesc":"Determines which of the linked categories (listed below) will actually be shown on the word.
To show Aspect in this slot, the word must only have one module - otherwise, use a different slot."},"val":{"type":"","title":"Valence","options":{"MNO":{"name":"Monoactive","desc":"The MONOACTIVE valence is the default valence and indicates a lack of co-activity, i.e., no participation by a second party is implied.
Use this for the default of all other Vₙ options."},"PRL":{"name":"Parallel","desc":"The PARALLEL valence indicates that a second party is engaging in the same activity as the first party at same time.
It would be used in translating sentences such as The children all sang together, We both went jogging on the parkway."},"CRO":{"name":"Corollary","desc":"The COROLLARY valence is similar to the PARALLEL, except that the second party engages in related activity at the same time as the first party, rather than the same activity.
It would be used in translating sentences such as The children played in the yard (i.e., each child engaged in a different play activity) or The band played my favorite song (implying that not everyone in the band was playing the same instrument, or perhaps that someone in the band sang as opposed to playing an instrument)."},"RCP":{"name":"Reciprocal","desc":"The RECIPROCAL valence indicates identical activity by each party directed at the other, thus translating the English adverbial phrases \'each other\' and \'one another,\' as in:
They looked at each other, The clown and the grocer despise one another."},"CPL":{"name":"Complementary","desc":"The COMPLEMENTARY valence indicates that the second party performs a complementary activity to that of the first party. By “complementary” is meant an activity different from that of the first party, but necessary to complete the whole of the joint activity, i.e., the “other half” of the joint activity.
This is exemplified in sentences such as The man and his son played catch, Hortense took me into the woods, The clown read the children a story, My back itches so I scratch it,
where \'played catch\' implies the complementary activities of throwing and catching, \'took (into the woods)\' implies someone leading while the other follows, \'read\' implies a reader and an audience, and \'itches\' implies scratching."},"DUP":{"name":"Duplicative","desc":"The DUPLICATIVE valence indicates that the second party copies or repeats the activity of the first party, as in the sentences:
Let\'s draw a picture (i.e., I\'ll draw it first, then you draw the same picture), They both read that book (i.e., first one, then the other), I bought a new car (i.e., and now someone else is buying a new car, too)."},"DEM":{"name":"Demonstrative","desc":"The DEMONSTRATIVE valence indicates that the first party demonstrates for the second party how to do something or what to do.
Thus an Ithkuil sentence constructed as We played chess with the verb in the DEMONSTRATIVE valence would mean \'I showed her how to play chess,\' while the sentence constructed as They fought us in this valence would mean \'They taught us how to fight.\'"},"CNG":{"name":"Contingent","desc":"The CONTINGENT valence indicates that the second party engages in the next or dependent phase of a multi-part activity, the specific activity being dependent on context.
Thus the Ithkuil sentence I started the campfire for my friend in the CONTINGENT implies that the friend then performed the next logical step, i.e., he cooked the food."},"PTI":{"name":"Partictipative","desc":"The PARTICIPATIVE valence indicates that the parties take part in an activity involving a greater whole, translatable by the English phrase \'take part in…\'
Thus, the Ithkuil sentence They raced in the PARTICIPATIVE means \'They each took part in the race.\'"}},"popupdesc":"In Ithkuil, the term Valence is used to refer to the manner of participation of two separate entities or parties to any given verb, i.e., participation by one party automatically implies participation by another party to the same act, event, or state in either a parallel, corollary, or complementary fashion. Such dual participation occurs naturally in the verbs of world languages and is the province of what is known as “co-active” verbs."},"pha":{"type":"","title":"Phase","options":{"PCT":{"name":"Punctual","desc":"The PUNCTUAL describes an act, condition, or event which is point-like, momentary or instantaneous in nature, such as an explosion, a flash of lightning, a blow, a single handclap, a collision between two objects, a stab of pain, a single cough, the clicking of a lock, etc.
It can be visually represented along a timeline by a single point, e.g., "},"ITR":{"name":"Iterative","desc":"The ITERATIVE refers to a momentary or instantaneous event, like the PUNCTUAL above, which repeats itself in a rapid, on/off, staccato manner, like a machine gun burst, strobe light burst, an alarm bell ringing, or the quick unconscious tapping of a finger, the whole comprising a single event.
Visual representation: • • • •"},"REP":{"name":"Repetitive","desc":"The REPETITIVE refers to a relatively brief event of indeterminate or vague duration (i.e., as with the default above), but repeated in an on/off staccato manner, like a car horn being honked repeatedly in a fast steady rhythm, or an automatic machine press.
Visual representation: — — ——"},"ITM":{"name":"Intermittent","desc":"The INTERMITTENT is similar to the ITERATIVE above, identifying a repetitive occurrence of a PUNCTUAL event, however, unlike the ITERATIVE, the duration of time between repetitions is relatively long and contextually relevant. It would be used in describing the downbeat pattern of a pop song, the ongoing snapping of fingers to music, the steady one-drop-at-a-time dripping of a faucet, etc.
Visual representation: •⠀⠀⠀•⠀⠀⠀•⠀⠀⠀•"},"RCT":{"name":"Recurrent","desc":"The RECURRENT is to the REPETITIVE as the INTERMITTENT is to the ITERATIVE. It indicates a slow repetition of a non-PUNCTUAL (default) event, where the duration between occurrences is relatively long and contextually relevant. Exemplified by the sounding of a foghorn, or the ongoing hooting of an owl.
Visual representation: —⠀⠀⠀—⠀⠀⠀—⠀⠀⠀—"},"FRE":{"name":"Frequentative","desc":"The FREQUENTATIVE indicates an iterative occurrence (a single set of punctual repetitions) which in turn repeats at intervals, the whole considered as a single event. Examples would be the repetitive sets of hammerings of a woodpecker or the repeated short bursts of a jackhammer.
Visual representation: • • •⠀⠀⠀• • •⠀⠀⠀• • •⠀⠀⠀• • •"},"FRG":{"name":"Fragmentative","desc":"The FRAGMENTATIVE indicates a random pattern of punctual occurrences, the whole considered as a single event.
Visual representation: • •⠀⠀⠀• • •⠀⠀⠀⠀⠀• •⠀⠀⠀• • • • •⠀⠀⠀⠀⠀•⠀⠀⠀• •"},"VAC":{"name":"Vacillative","desc":"The VACILLATIVE functions as a non-punctual counterpart to the FRAGMENTATIVE.
Visual representation: —— — —⠀⠀⠀— —⠀⠀⠀— —⠀⠀⠀—⠀⠀⠀⠀⠀— — —"},"FLC":{"name":"Fluctuative","desc":"The FLUCTUATIVE indicates a random pattern of both punctual and longer occurrences. An example would be the “sputtering” of a lighted fuse, the random patterns of tongues of flames, the chirping of birds in the wild, etc.
Visual representation: — • • —⠀⠀• — • •⠀⠀⠀—⠀⠀⠀⠀⠀• • — • • •⠀⠀⠀• •⠀⠀⠀—— • — • •"}},"popupdesc":"Phase refers to variances in the temporal pattern of how an act, condition or event occurs.
The default (i.e. if the Phase is not specified) is only one occurrence.
Said default can be visually represented along a progressive timeline by a short dash, e.g., "},"eff":{"type":"","title":"Effect","options":{"1:BEN":{"name":"Beneficial to Speaker","desc":"Whatever the word is describing is beneficial to the speaker."},"2:BEN":{"name":"Beneficial to Addressee","desc":"Whatever the word is describing is beneficial to the addressee."},"3:BEN":{"name":"Beneficial to 3rd Party","desc":"Whatever the word is describing is beneficial to some third party (who is probably referred to by another word)."},"SLF:BEN":{"name":"Beneficial to Formative","desc":"Whatever the word is describing is beneficial to itself."},"UNK":{"name":"Unknown","desc":"The benefit/detriment from this word is unknown.
Note that this is not the same as no benefit/detriment."},"SLF:DET":{"name":"Detrimental to Formative","desc":"Whatever the word is describing is detrimental to itself."},"3:DET":{"name":"Detrimental to 3rd Party","desc":"Whatever the word is describing is detrimental to some third party (who is probably referred to by another word)."},"2:DET":{"name":"Detrimental to Addressee","desc":"Whatever the word is describing is detrimental to the addressee."},"1:DET":{"name":"Detrimental to Speaker","desc":"Whatever the word is describing is detrimental to the speaker."}},"popupdesc":"Effect is used to describe who a certain concept (the word) is beneficial or detrimental to."},"lvl":{"type":"","title":"Level","options":{"MIN":{"name":"Minimal","desc":"X\'s M is at its least possible
X is at its least M possible"},"SBE":{"name":"Subequative","desc":"X\'s M is less than or equal to to Y (or less than or equal to before)
X is less M than or equal to Y/before"},"IFR":{"name":"Inferior","desc":"X\'s M is the least within/among Y (or ever)
X is the least M within/among Y"},"DFT":{"name":"Deficient","desc":"X\'s M is less than Y (or less than before)
X is less M than Y (or than before) "},"EQU":{"name":"Equative","desc":"X\'s M is the same as Y (or as before)
X is as M as Y (or as before)"},"SUR":{"name":"Surpassive","desc":"X\'s M is more than Y (or than before)
X is more M than Y (or than before)"},"SPL":{"name":"Superlative","desc":"X\'s M is the most within/among Y (or ever)
X is the most M within/among Y (or ever)"},"SPQ":{"name":"Superequative","desc":"X\'s M is more than or equal to Y (or more than or equal to before)
X is more M than or equal to Y/before"},"MAX":{"name":"Maximal","desc":"X\'s M is at its most possible
X is at its most M possible"}},"popupdesc":"Level is used in comparative statements, such as \\"my hat is cooler than your hat\\".
X = this word,
M = a verb (what quality of X is being compared),
Y = a word marked with the CMP case (the thing being compared to)"},"asp":{"type":"","title":"Aspect","options":{"RTR":{"name":"Retrospective","desc":"This aspect operates in conjunction with Perspective to create various equivalents to Western tense categories.
With the MONADIC, the RETROSPECTIVE equates with the English simple past tense.
With the NOMIC and ABSTRACT, it adds a sense of ‘and it’s always been that way’."},"PRS":{"name":"Prospective","desc":"Like the RETROSPECTIVE above, this aspect operates in conjunction with Perspective to create various equivalents to Western tense categories.
With the MONADIC, the PROSPECTIVE equates with the English future tense.
With the NOMIC and ABSTRACT, it adds a sense of ‘and it’ll always be that way’ or ‘from now on’."},"HAB":{"name":"Habitual","desc":"When used with the MONADIC perspective, this aspect conveys the idea of ‘always’ or ‘continues to’."},"PRG":{"name":"Progressive","desc":"This aspect conveys the idea of an act in progress, similar to the English construction ‘in the midst of [verb] + ing’ or the use of the present participle in Spanish."},"IMM":{"name":"Imminent","desc":"Conveys that an action, state or event is imminent. Translates phrases such as ‘(just) about to’ or ‘on the verge of’ as in I think Carl is about to cry."},"PCS":{"name":"Precessive","desc":"Conveys that an action, state or event has immediately preceded. Translates such phrases as ‘just’ or ‘just now,’ as in We just saw a clown in the toy store."},"REG":{"name":"Regulative","desc":"Conveys the idea of participation or involvement in an action, state, or event over an amount of time extending from the past into the future relative to the contextual present. Translates English phrases such as ‘engaged in’ or ‘involved in’ as in Her husband is engaged in construction of the new bridge."},"SMM":{"name":"Summative","desc":"meaning ‘...(have) already X’d’"},"ATP":{"name":"Anticipatory","desc":"meaning ‘have yet to (begin) X-ing’"},"RSM":{"name":"Resumptive","desc":"Conveys the idea of an act, state, or event resuming after having previously ceased, as in The girl resumed singing, or He is starting to laugh again."},"CSS":{"name":"Cessative","desc":"Conveys the idea of cessation of an event, state or action. Translates English phrases such as ‘stop,’ ‘discontinue,’ or ‘cease,’ as in They stopped dancing at midnight."},"PAU":{"name":"Pausal","desc":"Indicates a pause in an action, state or event, with an implied intention to resume. Translates phrases such as ‘take a break from’ or ‘pause in’ as in Mother took a break from cleaning to gossip with her friends."},"RGR":{"name":"Regressive","desc":"Conveys the idea of a return to an original or previous action, state or event after a long hiatus involving an intervening change of state or situation, as translated by the phrase ‘return to.’ The REGRESSIVE should be distinguished from the RESUMPTIVE above, which merely implies the restarting after a stop or pause without an intervening change of state or situation. An example would be Mr. Yates returned to golf after recovering from his stroke."},"PCL":{"name":"Preclusive","desc":"Conveys the fact that an action, state, or event takes place from inception to conclusion all in one contextual segment, translating such phrases as ‘all at once,’ ‘all in one go,’ ‘without stopping,’ etc. as in Walter drank the entire bottle in one gulp."},"CNT":{"name":"Continuative","desc":"Conveys the idea that an action, event, or state continues on. Translates phrases such as ‘keep on,’ ‘still,’ ‘stay,’ ‘yet,’ etc. When used in a negative sentence, conveys the idea of English ‘no longer’ or ‘not anymore’ as in She kept on singing, You\'re still staring at me, I\'ve yet to meet him, Sam no longer loves you / Sam doesn\'t love you anymore."},"ICS":{"name":"Incessative","desc":"Conveys that an action, state or event continues on without stopping. Translates such English adverbials as ‘…on and on’ or ‘…away’ as in They danced the night away or They\'ve been battling on and on since last year."},"EXP":{"name":"Experiential","desc":"Translates English ‘ever’ in the sense of ‘within the realm of one’s experience’ or ‘at some point in one’s experience,’ as in Does he ever shut up?
Note the EXPERIENTIAL does not equate to ‘ever’ when it means ‘always,’ as in Ever does he seek his destiny nor as an adverb of mere emphasis as in Was she ever tired."},"IRP":{"name":"Interruptive","desc":"meaning ‘to get interrupted while X-ing’ or ‘to X only so far or so much before having to stop’"},"PMP":{"name":"Preemptive","desc":"Emphasizes the singularity and initial occurrence of an action, state or event, as translated by such English phrases as ‘for once’ or ‘just once,’ as well as the anticipation preceding a long-expected situation, as translated by phrases such as ‘at last,’ ‘after all this time,’ ‘finally,’ and ‘for the first time.’"},"CLM":{"name":"Climactic","desc":"Emphasizes the finality of an action, state or event, as translated by such English phrases as ‘once and for all’ or ‘for the last time.’"},"DLT":{"name":"Dilatory","desc":"meaning ‘(be) long-delay(ed) in being/doing X’ "},"TMP":{"name":"Temporary","desc":"Conveys that an action, state or event is being considered or is applicable only to the present subjective context or range of the contextual present, as translated by phrases such as ‘for the time being’ or ‘but only for the moment’ or ‘for now’ as in This will be sufficient for now or For the time being you\'ll have to drink water."},"XPD":{"name":"Expenditive","desc":"Conveys an all-consuming action, state, or event which interferes with or prevents other events from occurring. It translates English phrases such as ‘spend one’s time’ or ‘away’ as in Mother spends her life worrying or He\'s pining away."},"LIM":{"name":"Limitative","desc":"meaning ‘to be/do X (just) in time’; indicates an act/event that culminates an anticipatory context"},"EPD":{"name":"Expeditive","desc":"Conveys a sense of haste associated with an action or event. Translates English ‘hurry (up)’ as in Hurry up and finish or They ate in a hurry."},"PTC":{"name":"Protractive","desc":"‘take one’s time X-ing’"},"PPR":{"name":"Preparatory","desc":"meaning ‘to be/do X in advance’, ‘to be/do X in preparation for a future situation’"},"DCL":{"name":"Disclusive","desc":"Focuses on the revelatory nature of an action, state or event, translating phrases such as ‘turn out to be,’ ‘turn out that…’ and ‘be revealed that….’"},"CCL":{"name":"Conclusive","desc":"Conveys the direct outcome of an action, state or event within the short-term context of the situation at hand. Translates phrases such as ‘end up…, come to, reach the point where,’ as in I ended up crashing the car or He drank to the point where he passed out."},"CUL":{"name":"Culminative","desc":"Similar to the CONCLUSIVE above, but with a focus on the eventual, long-term outcome over an extended period of time or through a series of developmental steps. Compare the following examples with the CONCLUSIVE aspect above: In the end, I\'ll have to leave town; Things got to the point where the mayor got involved; Eventually, they fell in love."},"IMD":{"name":"Intermediative","desc":"Conveys the idea that the action, state, or event takes place at some point along the timeline of, or within the duration of, another action, state, event, or background context, as translated by the phrases ‘at some point’ or ‘somewhere along the way….’"},"TRD":{"name":"Tardative","desc":"Conveys the idea that an action, state, or event lessens, dwindles, or slackens in energy, intensity, or effect, impliedly by exhaustion of the active source of energy or agency, or by dissipation of the foundational context involved. Translates such phrases as ‘to get tired of,’ ‘peter out,’ ‘trail off,’ etc."},"TNS":{"name":"Transitional","desc":"Focuses on the initial stage of preparation, adjustment, or accustomization to an action, state or event, translated by phrases such as ‘take up,’ ‘start to,’ etc. implying a long-term process of initialization, as in I\'m planning to take up golf."},"ITC":{"name":"Intercommutative","desc":"Conveys the idea of “sequential reciprocity,” meaning that the action or event is a consequent reciprocation triggered by, or in reaction to, an initiating action or event. It translates the English verbal particle ‘back’ as in The boy threw it back or She stared back at the men ogling her."},"MTV":{"name":"Motive","desc":"Conveys that an action, state or event involves physical removal or absence of the participant from the present context of discourse. Translates such phrases as ‘be off …-ing’ or ‘go off to …’ as in Dad\'s off hunting or They went off to cavort with the clowns."},"SQN":{"name":"Sequential","desc":"This aspect conveys the idea a “sequential progressive” in which a series of contextually identical instances is seen as comprising a single event, usually with an implied culmination point. It translates the English use of ‘off’ as in He\'s checking off each item as it is inventoried, or The sheep died off from the disease."}},"popupdesc":"Aspect provides detailed and specific temporal information about the word, not in relation to the speaker\'s present moment of utterance (as with Perspective), but rather in relation to the contextual “present” of the act, condition, or event being spoken about.
It makes the most sense when applied to verbs (both unframed and framed)."},"mood":{"type":"","title":"Mood","options":{"FAC":{"name":"Factual","desc":"The FACTUAL mood signifies that the factuality of the speaker’s statement is certain and that there either is no underlying presupposition to the statement, or if there is, its factuality is also certain or has no bearing on the factuality of the statement.
TRUE / TRUE or NONE"},"SUB":{"name":"Subjective","desc":"The SUBJUNCTIVE mood indicates that the factuality of an explicit or implicit presupposition underlying the statement is certain, but the factuality of the speaker’s statement itself is questionable or uncertain, the specific nuance of factuality intended being subject to the particular Bias and Validation associated with the verb. Corresponds roughly with English ‘may,’ ‘maybe’ or ‘might,’ with the added distinction that an explicit or implicit (i.e., underlying) presupposition is true.
UNCERTAIN / TRUE"},"ASM":{"name":"Assumptive","desc":"The ASSUMPTIVE mood functions identically to the FACTUAL except that the factuality of an underlying presupposition is unknown. It therefore conveys an act, state, or event whose factuality is dependent on whether something else is factual, thus corresponding to certain usages of English ‘maybe’ and ‘will’ (where ‘will’ primarily conveys possibility, not future tense).
TRUE / UNCERTAIN"},"SPC":{"name":"Speculative","desc":"The SPECULATIVE mood indicates that the factuality of both the presupposition and the statement itself are unknown. Its translation into English is dependent on the specific context, sometimes corresponding to ‘may,’ ‘maybe’ or ‘might,’ and at other times corresponding to the auxiliary ‘would.’
UNCERTAIN / UNCERTAIN"},"COU":{"name":"Counterfactive","desc":"The COUNTERFACTIVE mood indicates that the factuality of the underlying presupposition is false or unreal but that the factuality of the statement would otherwise be true. It thus corresponds to the English construction of auxiliary ‘would’ or ‘would have’ in its use to show counterfactuality (i.e., what would have been if a false presupposition had been true).
TRUE / FALSE"},"HYP":{"name":"Hypothetical","desc":"The HYPOTHETICAL mood indicates that the factuality of the underlying presupposition is false or unreal and that the factuality of the statement itself is uncertain. It thus corresponds to the English construction of auxiliary ‘might have’ in its use to show possible counterfactuality (i.e., what might have been if a false presupposition had been true).
UNKNOWABLE / FALSE"}},"popupdesc":"Mood refers to the knowability and truthfulness of a statement, and describes both the truth of the actual statement and any underlying presuppositions.
Alongside Illocution and Validation, it refers to the whole statement.
FULL STATEMENT / PRESUPPOSITIONS"},"casc":{"type":"","title":"Case-Scope","options":{"CCN":{"name":"Natural","desc":"X\'s case is governed by the noun-case of the formative marked Antecedent (CCA); in the absence of such, X\'s case is associated with the main verb (or framed verb if within a case-frame), except for if it has the Appositive or Relational Cases."},"CCA":{"name":"Antecedent","desc":"X is the “head” whose case governs all Natural (CCN) nouns in the clause"},"CCS":{"name":"Subaltern","desc":"X is the formative to which formatives in the clause marked with Qualifier (CCQ) are associated"},"CCQ":{"name":"Qualifier","desc":"X is associated by noun-case to the formative marked by Subaltern (CCS)"},"CCP":{"name":"Precedent","desc":"X\'s noun-case associates only with the immediately following formative"},"CCV":{"name":"Successive","desc":"X\'s noun-case associates only with the immediately preceding formative"}},"popupdesc":"Formatives showing Case use the Case-Scope to indicate the scope of a case-marked formative over adjacent formatives. This is useful when there is a string of cases modifying another “head” formative; specifies which has scope over which other formative.
Similar to a Type 1 Concatenation."},"c":{"type":"","title":"Case","options":{"THM":{"name":"Thematic","desc":"The (usually inanimate) party which is a participant to the verbal predicate which does not undergo any tangible change of state.
Semantic role: CONTENT"},"INS":{"name":"Instrumental","desc":"The entity acting as means utilized by an explicit or implicit agent to implement/carry out the effect/impact of an act/event.
Semantic role: INSTRUMENT"},"ABS":{"name":"Absolutive","desc":"The party that is the target of, and/or undergoes, the effect/impact or change of state as a result of a tangible act/event.
Semantic role: PATIENT"},"AFF":{"name":"Affective","desc":"The party who undergoes an unwilled, affective experience,
e.g. coughing, sneezing, feeling hot/cold, trembling, experiencing sensory input (tactile, olfactory, visual, aural, gustatory), proprioceptive states, psychological/emotional states, reflex reactions such as cringing, yawning, ducking, screaming in fright, etc.
Semantic role: EXPERIENCER"},"STM":{"name":"Stimulative","desc":"The party/entity/idea/thought/situation or mental state which triggers an unwilled, affective response or is the trigger for an existential state such as possession.
Semantic role: STIMULUS"},"EFF":{"name":"Effectuative","desc":"The party/force that initiates a chain of causal events or who induces another party to act as an agent (specifiable via the ENB affix).
Semantic role: ENABLER"},"ERG":{"name":"Ergative","desc":"The animate party or inanimate force which initiates/causes an act/event which creates a tangible effect or change of state in a patient.
Semantic role: AGENT or FORCE"},"DAT":{"name":"Dative","desc":"The party which is the (intended) recipient of a verb of transference, transmission, or communication; the party at/to which a physically transferred entity, transmitted information, or a communicable entity is directed.
Semantic role: RECIPIENT"},"IND":{"name":"Inducive","desc":"The patient who undergoes the tangible effect, impact, or change of state of an act/event initiated/caused by that self-same party.
Semantic role: AGENT+PATIENT"},"POS":{"name":"Possesive","desc":"The party which has alienable (i.e., removable or severable) possession of another noun in the sense of having physical control or oversight of that noun, whether by chance circumstance or deliberate manipulation."},"PRP":{"name":"Proprietive","desc":"The party having alienable possession of another noun in the sense of quasi-permanent contextual control, ownership or oversight, whether by societal recognition, socialconvention, law, purchase or decree, which mere physical separation does not sever."},"GEN":{"name":"Genitive","desc":"The party which has inalienable (i.e., irremovable, non-severable) possession of or association with another noun in the sense of having that noun as an inherent or intrinsic attribute, characteristic, physical part, or genetic (i.e., familial) bond."},"ATT":{"name":"Attributive","desc":"The party which inalienably experiences the effects of, or otherwise has an affective (see the affective case above) relationship with another noun, either as a temporary or permanent attribute, characteristic, or experience, whether physical or psychological, objective or subjective in nature."},"PDC":{"name":"Productive","desc":"The party which is the creator, author or originator of another noun."},"ITP":{"name":"Interpretative","desc":"The party acting as the subjective interpretational context of another noun, that is the noun by or through which another noun is subjectively considered, interpreted or described,
e.g. Monet\'s Paris, my baseball team (as spoken by a fan)."},"OGN":{"name":"Originative","desc":"The party which is the literal or figurative source of another, or which is the native location, origin, or usual locative context for another."},"IDP":{"name":"Interdependent","desc":"The party which has a coordinated, tandem, complementary or mutually dependent relationship with another. The relationship between the two nouns can be thought of as reciprocal in nature, i.e., each noun implies the other or needs the other to exist within its natural context."},"PAR":{"name":"Partitive","desc":"Indicates a quantitative or content-to-container relationship between the two nouns,
e.g. a cup of coffee, a box(ful) of books, a train(load) of refugees, twelve chairs."},"APL":{"name":"Applicative","desc":"The entity/act/event which constitutes the circumstantial, potentially one-time, temporary purpose of another entity/act/event.
\'for the (circumstantial/temporary/one-time) purpose of X\', \'being used (temporarily/circumstantially) as X\'."},"PUR":{"name":"Purposive","desc":"The entity/act/event which constitutes the inherent/innate/intrinsic purpose of another entity/act/event.
\'for the (dedicated) purpose/function of X\'"},"TRA":{"name":"Transmissive","desc":"Renamed from the Benefactive in Ithkuil III, this case indicates the party for which/whom an entity/act/event occurs or is transmitted, with the intention that the entity/act/event be beneficial/detrimental to the named party.
\'for (the benefit/detriment of) X\'"},"DFR":{"name":"Deferential","desc":"The entity for whose sake, or out of deference/respect to whom, an act/event occurs.
\'for X\'s sake\', \'out of deference for X\', \'out of respect for X\'"},"CRS":{"name":"Contrastive","desc":"The party for which something is substituted, or of which another party/entity takes its place;
\'instead of X\', \'as a substitute for X\', \'in place of X\'"},"TSP":{"name":"Transposive","desc":"The party on whose behalf something is/occurs."},"CMM":{"name":"Commutative","desc":"The party in exchange for which, a reciprocal or complementary act/event occurs;
e.g. He paid 100 dollars in exchange for the tickets."},"CMP":{"name":"Comparative","desc":"The party being compared to another, translatable as \'as compared to\', \'as opposed to,\' \'versus\'; with verbs it translates as \'whereas\' or \'while\' (in its synonymous usage to \'whereas\').
Examples: She chose the red one as opposed to the others, Sam drives a van versus Joe, who prefers a truck, At the party, she danced while/whereas I ate."},"CSD":{"name":"Considerative","desc":"The entity according to which, another entity is, or an act/event occurs."},"FUN":{"name":"Functive","desc":"Identifies a noun used to describe/characterize the manner in which an act/event/state occurs or exists,
e.g. She dances gracefully; The boys ate with gusto; That clown is speaking nonsense; Father speaks with such fortitude."},"TFM":{"name":"Transformative","desc":"Identifies the outcome or final state of a process, often translatable by \'to,\' \'until,\' or \'into\' in the sense of reaching a final state after undergoing some transformation.
Examples: The house burned to ashes, Mother reached a state of tranquility, The clowns will turn our children into slaves, Her father drank himself to death"},"CLA":{"name":"Classificative","desc":"Identifies a noun as a basis for arranging, sorting, classifying, or counting,
e.g. Place them in groups of three, The workers arranged the tables in rows, He lay down lengthwise, Can you count by fives?, I will sort them by color.
Also identifies the basis for recurring increments,
e.g. month by month; day in, day out; box upon box, clown after clown."},"RSL":{"name":"Resultative","desc":"Identifies a result/consequence, translatable as \'resulting in X\', \'with X as a consequence\', etc."},"CSM":{"name":"Consumptive","desc":"Identifies the entity consumed or used as a resource as a result of, or as a concurrent part of a process,
e.g. She cooks with tomatoes, The clown fed her an apple, He reads by candle(light)."},"CON":{"name":"Concessive","desc":"Identifies a noun or phrase which gives rise to an implicitly expected result which does not occur. This translates in many ways such as \'despite,\' \'in spite of,\' \'notwithstanding,\' \'although,\' \'regardless of,\' \'no matter what,\' etc.
Examples: In spite of his stupidity, he passed the test; The law notwithstanding, I will stand my ground; No matter how ignorant (they may be), they are welcome; Although a foreigner, we will let him in."},"AVR":{"name":"Aversive","desc":"Identifies a source or object of fear and/or avoidance. With nouns, it translates expressions such as \'for fear of,\' \'in order to avoid,\' or \'in avoidance of.\' With verbs, it would translate English ‘lest.’
Examples: She finished her plate for fear of my wrath, I traveled by night to avoid the sun. Hide the children, lest the clowns find them."},"CVS":{"name":"Conversive","desc":"Identifies an exception. When the exception is to a hypothetical situation, it translates as \'unless\' in verbal phrases, and \'without\' for nouns,
e.g. Without peace, this society is doomed; We\'ll be safe unless the clowns find us.
If applied to a real or actual situation, it translates as \'except (for)\', \'but for,\' \'but (not), \'excluding\', \'if not for,\' \'if it wasn\'t for,\' \'if it wasn\'t on account of.\'
If not for the rain, we would have had a good time; She loves everybody except clowns; All pets are vermin, excluding dogs; He eats almost anything but (not) spinach."},"SIT":{"name":"Situative","desc":"Identifies a noun as the background context for a clause without implying any direct causative relationship between the background context and the associated or consequent act/state/event. It translates in many ways,
e.g. Because of war, our planet will never be able to join the Federation; Given the presence of clowns, we must accept the corruption of our children; With my plan, we will defeat the enemy.
Other translations include: \'inasmuch as / insofar as / to the extent that / taking X into account / in view of the fact that / given that / considering\'."},"PRN":{"name":"Pertinential","desc":"Identifies the general referent of another formative, translating such English terms as \'about,\' \'regarding,\' \'concerning,\' \'in regard to,\' \'in reference to,\' \'pertaining to,\' or \'as for.\'"},"DSP":{"name":"Descriptive","desc":"Identifies a formative as describing another formative in an adjectival manner, translatable as \'characterized/describable as being like X; characterized/describable as having the quality/qualities of X\'"},"COR":{"name":"Correlative","desc":"Indicates an abstract general relationship, association, or conjunction between one formative and another, including subjective, contextual, metaphorical, or symbolic associations. It translates general phrases such as \'relative to,\' \'in relation to,\' \'in correlation with,\' \'in association with,\'
e.g. career goals, the soup of the day, the direction of that road, The elapsed time relative to the distance determines the winner, Our next topic is sex and/in art (i.e., the relationship between art and sex)."},"CPS":{"name":"Compositive","desc":"Identifies a noun as being the literal or figurative substance or component(s) of which another is made, composed, formed, built or comprised.
Example of usage would be That statue was carved out of marble, She owns three gold(en) coins, We were caught in a web of lies, I use a wooden ladder, It was a house of cards, Three suits comprise his wardrobe, Joe detests styrofoam cups."},"COM":{"name":"Comitative","desc":"Identifies a formative that accompanies another, translatable as \'(along) with\'. When used with Parallel or Complementary valence, signifies that the formative is being used in the same (or a complementary) way or is undergoing the same (or a complementary) activity as the other formative it is associated with
(i.e., the meaning of the Conjunctive case in Ithkuil III)."},"UTL":{"name":"Utilitative","desc":"Identifies a formative in the process of being used while some other activity or state is in progress. It does not imply the INSTRUMENT of an act as does the instrumental case.
Examples: the gun-wielding man, the umbrella-toting pedestrian, a girl with backpack (on)."},"PRD":{"name":"Predicative","desc":"Identifies the non-causal basis, foundation, sustenance (literally or figuratively), or required existential condition for another noun or clause, translatable by the phrases \'based (up)on,\' \'dependent (up)on\' or \'relying on.\'
Examples of use are a book dependent on a publisher, a man relying on charity, laws based in reason, success supported by corruption."},"RLT":{"name":"Relative","desc":"Identifies a formative (or case-frame) as constituting a relative clause associated with the preceding formative (or whatever formative is indicated by the DCD affix as being the head of the relative clause).
NOTE: a lone formative in Relative case not functioning as an external head of a relative clause need not be in Framed Relation."},"ACT":{"name":"Activative","desc":"Identifies the Experiencer of a modal state, such as obligation, necessity, desire, hope, expectation, wishing, being able to, etc. functioning as the \\"subject\\" of a modal(ized) verb governing a hypothetical state (i.e., what is wanted, needed, expected, able to be done, etc.)"},"ASI":{"name":"Assimilative","desc":"Identifies a formative used as a context for analogy or metaphorical comparison to another formative; translatable as \'as/like\' meaning \'as if (it were) X\' in the sense of comparison or analogy between one thing and another that it is not,
e.g. She sings like a bird; Treat her as/like a princess (= as if she were a princess); He talks like a child (even though he\'s an adult)."},"ESS":{"name":"Essive","desc":"Identifies the role or name by which an entity is known or contextually identified. It translates English \'as/like\' in the sense of naming or reference to the an entity\'s functional identity,
e.g. They called him a clown, The woman entered the club as an equal of any man, We consider you our only hope, Treat her as/like a princess (because she is one), He talks like a child (because he is a child)."},"TRM":{"name":"Terminative","desc":"Identifies a noun as being the goal of an act/event,
e.g. We seek a new planet; a desire to see his homeland; an academy for (making) champions."},"SEL":{"name":"Selective","desc":"Identifies a contextually recurring time-period, as well as a string of recurring entities,
e.g. I visit him every three days; Each year, I travel to the Clown Planet; He works nights; By day, she is an artisan; The clowns visit us on Sundays; ...every third book; ...every green one."},"CFM":{"name":"Conformative","desc":"The entity pursuant to which, as per which, or in conformance with which, another entity is, or an act/event occurs."},"DEP":{"name":"Dependent","desc":"Identifies as formative as being the basis of a dependency phrase on which another formative or phrase acts as the contingency, translatable as \'...if the circumstances regarding X are such to allow/warrant it\' where the final “it” refers to the original contingency noun/phrase whose existence/occurrence is (at least in part) determined by or contingent upon the dependency phrase. The exact nature of the dependency can be specified using the DPC affix."},"VOC":{"name":"Vocative","desc":"Signifies a noun being used in direct address."},"LOC":{"name":"Locative","desc":"entity identified as the location where something is situated or occurs; \'at / in / on / by X\' "},"ATD":{"name":"Attendant","desc":"entity in whose presence something is/occurs and which/who is thereby involved in some peripheral manner (e.g., as a witness, as a party affected or stimulated to action, etc.)"},"ALL":{"name":"Allative","desc":"entity toward which another entity is moving/approaching"},"ABL":{"name":"Ablative","desc":"entity away from which another entity is moving/receding"},"ORI":{"name":"Orientative","desc":"entity (often a body part or sub-component) which serves as the “face” or surface or “front” or “head” of an entity in terms of external communication or interaction, or which serves as the forward “end” of a spatially orientated axis aligned to a vector of motion in terms of directional movement."},"IRL":{"name":"Interrelative","desc":"signifies the directional/temporal orientation or position of an entity relative to another, i.e., a noun relative to whose position in space or time another noun is being described for purposes of spatial/temporal orientation,
e.g. He turned his back on me, It lies just west of the house, Tell me when the parade starts relative to my arrival."},"INV":{"name":"Intrative","desc":"Identifies a noun as being the spatio-temporal boundary point of a span or volume of space or a period of time, i.e, either the starting point or the ending point of a span of time or space.
English translations include: \'as of X\' / \'since X\' / \'until X\'; for spatial contexts, translates as “between there and here” / “between here and there”)"},"NAV":{"name":"Navigative","desc":"entity whose literal or metaphorically inferred long axis serves as the direction of another entity\'s path, course, arc, or trajectory of translative motion"},"CNR":{"name":"Concursive","desc":"Indicates a “temporal locative” meaning \'at or during the time of X\', i.e., the point or stretch in time at or during which an entity or an act/event exists or occurs."},"ASS":{"name":"Assessive","desc":"Specifies the increment of space or time or unit by which a contextual ratio of measurement is created,
e.g. He charges by the minute. It travels at 90 kilometers per hour. He earns $25 per book."},"PER":{"name":"Periodic","desc":"Identifies the span of time / time frame at some point(s) during which, separate events, repetitions, or durationally segmented acts or states take place.
Examples would be He wrote the novel in/over six months, These clowns can corrupt your child within a few days, The woman has been ill a lot this year, For the last several concerts, my voice has been deteriorating."},"PRO":{"name":"Prolapsive","desc":"Signifies the duration of an act, condition, or event, i.e., how long it takes or lasts,
e.g. He prayed through lunch, It rained all night, It took three days for the fever to break, She sang for an hour."},"PCV":{"name":"Precursive","desc":"Identifies an entity acting as a point in time prior to which an act, condition, or event occurs,
e.g. \'this city before the war\', \'a presentation preceding the banquet\'."},"PCR":{"name":"Postcursive","desc":"Identifies an entity acting as a point in time after which, following which, subsequent to which, an act, state, or event occurs,
e.g. \'this city after the war\', \'a presentation following the banquet\', \'It\'s been a long time since I danced\'."},"ELP":{"name":"Elapsive","desc":"Identifies the amount of time that has passed or is expected to pass between the contextual present and the time of the act, condition, or event being spoken of. It corresponds to English \'...ago\' or \'...from now\'.
Examples would be Four years ago I was a student; Going back three generations, women could not even vote; Four years from now, I will be a student; Looking ahead three generations, clowns will rule the world; I will be home in three days; Little did he know that two months later he\'d be a rich man.
The past vs. future distinction is determined from context, any aspectual morphology, or may be specified with the new TPL affix. "},"PLM":{"name":"Prolimitive","desc":"Signifies the spatio-temporal boundary point of a span of time or space during which or within which something is expected to or must occur or be situated.
Equivalent to English phrases: by the end of X / within the period ending in X / within the period ending with X / before X is over / before X is up / inside of (the period signified by) X"}},"popupdesc":"Cases are the role of the word in a sentence, and New Ithkuil has 68.
They are split into seven categories;
Transrelative, which are similar to cases in natural languages,
Appositive, which is to do with possession-esque relations,
Associative, which is similar but more related to reasons and motives,
Adverbial, which (fairly obviously) is for adverb-like words,
Relational,
Affinitive, and
Spatio-Temporal, which are for words describing the space or time of the sentence."},"ill":{"type":"","title":"Illocution","options":{"ASR":{"name":"Assertive","desc":"The statement is an assertion/proposition about the world which constitutes a truth claim"},"DIR":{"name":"Directive","desc":"The statement is either an imperative command to another party to do/be something, or a \\"commissive\\" statement committing the speaker to a specific state or course of action (i.e., a vow, promise, guarantee, etc.)"},"DEC":{"name":"Declarative","desc":"A \\"performative\\" statement which, by its utterance/publication, creates a change of state (at least psychologically) for the addressees (i.e. a declaration, announcement, edict, etc.)"},"IRG":{"name":"Interrogative","desc":"A statement whose purpose is to inquire or seek information from the addressee (i.e., equivalent to an English WH-question)"},"VER":{"name":"Verificative","desc":"A statement whose purpose is to seek/obtain corroboration, confirmation, or verification (i.e., equivalent to a Yes/No question)"},"ADM":{"name":"Admonitive","desc":"A statement whose purpose is to provide advisory/admonitive information to the addressee (i.e., a warning)"},"POT":{"name":"Potentiative","desc":"A statement of wishing, hoping, or other unreal(ized) provenance"},"HOR":{"name":"Hortative","desc":"A counterfactual statement indicating a desired but impossible state of affairs that cannot be realized (equivalent to English hortative constructions such as If only..., Were that..., If only it were so that..."},"CNJ":{"name":"Conjectural","desc":"Equivalent to an English-language \\"if\\"-clause, indicating that the statement is offered as a conjectured hypothetical, ostensibly to be followed by a \\"then...\\" implicational clause. Translatable as \\"If (it were the case that)...\\""}},"popupdesc":"Illocution refers to the type of \\"speech act\\" made by the speaker, i.e. the purpose and intended interpretation of the statement.
Alongside Mood and Validation, it refers to the whole statement."},"vld":{"type":"","title":"Validation","options":{"OBS":{"name":"Observational","desc":"The statement is true because of present sensory knowledge or present sensory experience: “I perceive... / I know...” "},"REC":{"name":"Recollective","desc":"The statement is true because of past sensory knowledge or past sensory experience: “I remember... / I know (from memory)...”"},"PUP":{"name":"Purportive","desc":"The statement is true because of knowledge from a definitive/(quasi-)verifiable 3rd party source: “I\'ve read... / (an expert) has said...”"},"RPR":{"name":"Reportive","desc":"The statement is true because of knowledge from a 3rd party: “I heard (from someone)... / someone has said...”"},"USP":{"name":"Unspecified","desc":"[Validation deliberately left unspecified]"},"IMA":{"name":"Imaginary","desc":"The statement is NOT true because it is: an unreal statement, not intended as true, based on whim, imagination, dream, altered mental state, etc."},"CVN":{"name":"Conventional","desc":"The statement is true because of cultural/conventional (i.e., collectively agreed-upon) knowledge: “They say... / It is said...”"},"ITU":{"name":"Intuitive","desc":"The statement is true because of intuition, a hunch, subjective feeling, past experiences, etc. - “I feel... / I have a hunch... / something tells me...”"},"INF":{"name":"Inferential","desc":"The statement is true because of inference from evidence (or absence of alternatives), induction, extrapolation, etc. “I infer... / I reason...”"}},"popupdesc":"Validation only applies when the Illocution is Assertive.
It refers to the evidential basis for a statement (i.e. why it\'s true).
Alongside Mood and Illocution, it refers to the whole statement."},"ref":{"type":"","title":"Referential","popupdesc":"Similar to pronouns in most languages (I, you, they, etc.)","options":{"1M":{"name":"Monadic Speaker","desc":"\'I\'"},"2M":{"name":"Monadic Addressee","desc":"\'you (singular)\'"},"2P":{"name":"Polyadic Addressee","desc":"\'you (plural)\'"},"MA":{"name":"Monadic Animate 3rd Party","desc":"\'he\'/\'she\'/\'they (singular)\'"},"PA":{"name":"Polyadic Animate 3rd Party","desc":"\'they (plural)\'"},"MI":{"name":"Monadic Inanimate 3rd Party","desc":"\'it\'"},"PI":{"name":"Polyadic Inanimate 3rd Party","desc":"\'these things/those things\'"},"MX":{"name":"Mixed Animacy 3rd Party","desc":"mixed animate+inanimate, e.g. \'s/he+it\', \'they+those\', \'it+they\', \'those+s/he\', etc"},"RDP":{"name":"Reduplicative","desc":"Referring back to the previously-named party (often used with SWR affix)"},"OBV":{"name":"Obviative","desc":"3rd party other than the one previously referenced"},"PVS":{"name":"Provisional","desc":"\'whatever\'; vague or unknown entity (corresponds with English WH-words)"}}},"refEff":{"type":"","title":"Referential Effect","popupdesc":"Similar to the normal Effect, this describes if this person is being referred to beneficially or detrimentally.
May potentially be linked to the Effect of another word (e.g. \'the detrimental 3rd party\')","options":{"NEU":{"name":"Neutral"},"BEN":{"name":"Beneficial"},"DET":{"name":"Detrimental"}}},"refPersp":{"type":"","title":"Referential Perspective","popupdesc":"The same as the normal Perspective, but applied to the referential.
Does nothing, currently.","options":{"M":{"name":"Monadic","desc":"The MONADIC means that there is a certain number of (relevant) instances of the word. When combined with things like the MULTIPLEX, it means that the entire group is being considered as a whole (\\"forest(s)\\", not \\"trees\\")."},"G":{"name":"Agglomerative","desc":"The AGGLOMERATIVE is similar to the MONADIC, except it doesn\'t imply any sense of number; as in, \\"one or more X\\". It is also used for turning nouns (such as \\"a strand of hair\\" in the MONADIC) into mass nouns (such as \\"hair\\" in the AGGLOMERATIVE)"},"N":{"name":"Nomic","desc":"The NOMIC refers to the general archetype of the word as opposed to any specific instance of it. Examples are: The dog is a noble beast, Clowns are what children love most, There is nothing like a tree."},"A":{"name":"Abstract","desc":"Similar to the formation of English abstract nouns using suffixes such as -hood or -ness, the ABSTRACT transforms a configurative category into an abstract concept considered in a non-spatial, timeless, numberless context.
Examples: grove → the idea of being a grove or “grovehood”; book → everything about books, having to do with books, involvement with books.

With verbs, the ABSTRACT is used in verbal constructions to create a temporal abstraction, where the temporal relationship of the action, event, or state to the present is irrelevant or inapplicable, similar to the way in which the English infinitive or gerund form (used as substitutes for a verb phrase) do not convey a specific tense in the following sentences: Singing is not his strong suit; It makes no sense to worry about it; I can\'t stand her pouting."}}},"twoRefs":{"type":"checkbox","title":"Use two Referentials?","popupdesc":"Please note that the referential will use the second case.
If this is turned off, the second case is stacked on the first referential."},"twoCs":{"type":"checkbox","title":"Apply two Cases?","popupdesc":"Fairly self-explanatory. Applies another case to the word."},"refAffix":{"type":"affix","title":"Referential Affixes","popupdesc":"Affixes to be applied to this referential. Again, fairly self-explanatory."},"suppType":{"type":"","title":"Adjunct Type","options":{"CAR":{"name":"Carrier","desc":"This is a “shortcut” for a full carrier stem, providing Case information only. It is used when the identity/nature of the foreign word(s) or proper name following the adjunct is already known to the addressee."},"QUO":{"name":"Quotative","desc":"This adjunct combines the Carrier Adjunct with the DISCURSIVE Register Adjunct to allow direct quotes to be placed within a caseframe, useful for translating imbedded quotes within sentences such as He told me “get out of the house!”"},"NAM":{"name":"Naming","desc":"This adjunct indicates that the following word is a name being referred to as such, rather than referring to the entity that bears the name, i.e., it would be used before the name Emily in the sentence ‘He said “Emily”’ as opposed to the sentence ‘He said “tell Emily”’ which would use the Quotative adjunct, or ‘He said to tell Emily’ which would use the Carrier adjunct."},"PHR":{"name":"Phrasal","desc":"This adjunct is essentially a specialized form of the carrier adjunct above to apply meta-level grammatical information to an entire subsequent phrase as a whole. This is similar to a case-frame, except that where case-frames function solely as an equivalent to subordinate clauses in Western languages, this adjunct causes the subsequent phrase to become a conventionalized, (quasi-)lexicalized gestalt."}},"popupdesc":"This describes which kind of Suppletive Adjunct is being used, as there are four kinds. They all refer to the words immediately after them, like all adjuncts."},"affRoot":{"type":"text","title":"Root Affix","popupdesc":"This is a special kind of Affix that functions not as a modifier to a root but as the actual root itself of this word. It can have other affixes applied to it in Slots V and VII."},"arDegree":{"type":"","title":"Degree","popupdesc":"The degree of the Root Affix. Functions like the degree of any other affix.","options":[{"name":"Degree 1"},{"name":"Degree 2"},{"name":"Degree 3"},{"name":"Degree 4"},{"name":"Degree 5"},{"name":"Degree 6"},{"name":"Degree 7"},{"name":"Degree 8"},{"name":"Degree 9"},{"name":"Degree 0","desc":"This is a special degree which relates to the generic concept of the affix as a whole, similar to Stem 0 of a normal root."}]},"affixjunct":{"type":"affix","title":"Adjunct Affixes","popupdesc":"The affixes shown on this specific adjunct. This is how you apply affixes in other scope locations on a word."},"initialAffScope":{"type":"","title":"Initial affix scope","popupdesc":"Where the first affix out of the Adjunct Affixes is applied on the next word","options":{"VDom":{"name":"Last of Slot V","desc":""},"VSub":{"desc":""},"VIIDom":{"name":"Last of Slot VII","desc":""},"VIISub":{"name":"First of Slot VII","desc":""},"formative":{"name":"Entire Formative","desc":""},"adjacent":{"name":"Formative + Affixes","desc":""}}},"otherAffScope":{"type":"","title":"Other affix scopes","popupdesc":"Where the other affixes of the Adjunct Affixes are applied on the next word","options":{"VDom":{"name":"Last of Slot V","desc":""},"VSub":{"name":"First of Slot V","desc":""},"VIIDom":{"name":"Last of Slot VII","desc":""},"VIISub":{"name":"First of Slot VII","desc":""},"formative":{"name":"Entire Formative","desc":""},"adjacent":{"name":"Formative + Affixes","desc":""},"same":{"name":"Same as Initial","desc":""}}},"affScopeOf":{"type":"","title":"Apply to...","popupdesc":"Which of the following concatenated formatives this actually applies to","options":{"default":{"name":"Default (all)","desc":"Apply this affix to the main formative"},"conc":{"name":"Concatenated only","desc":"Apply this affix only to the concatenated formative"}}},"register":{"type":"","title":"Register","popupdesc":"Which register the next (or previous) bit of text is in; what type of speaking is it?
No specified register is the NARRATIVE, which is normal speech.","options":{"DSV":{"name":"Discursive","desc":"Direct speech"},"PNT":{"name":"Parenthetical","desc":"Parenthetical aside"},"SPF":{"name":"Specificative","desc":"Proper name of preceding referent
(If the identification of the preceding referent is not a proper name, use PNT register instead)"},"EXM":{"name":"Exemplificative","desc":"\'for example, ...\'"},"CGT":{"name":"Cogitant","desc":"Silent/subjective thoughts"},"END":{"name":"Carrier-End","desc":"End of term/phrase governed by carrier stem/adjunct
(Use the END end-adjunct marker for any register where the referent within the register clause is a proper name or a foreign word/phrase)
ONLY works if this is a Final marker."}}},"regStartOrEnd":{"type":"","title":"Initial/Final","popupdesc":"Whether this adjunct marks the start or end of a register.","options":[{"name":"Initial","desc":"This adjunct marks the start of the appropriate register"},{"name":"Final","desc":"This adjunct marks the end of the appropriate register
Alternatively, use a low tone on the last word of the clause."}]},"modAppliesTo":{"type":"","title":"Apply to...","popupdesc":"Where the various other things apply to","options":{"all":{"name":"All","desc":"Apply to both the concatenated and the parent formative after this adjunct (use this if no concatenation)"},"parent":{"name":"Parent Only","desc":"Apply to only the parent formative after this adjunct"},"concat.":{"name":"Concatenated only","desc":"Apply to only the concatenated formative after this adjunct"}}},"modNumber":{"type":"","title":"Number of modules","popupdesc":"How many VₙCₙs you want on this adjunct","options":{"1":{"name":"1 (no Vₕ, no Cₙ)","desc":"Only one VnCn, but without the Mood/Case-Scope"},"2":{"name":"2 (no Vₕ) or 1"},"3":{"name":"3 (no Vₕ) or 2"}}},"cn":{"type":"","title":"Cₙ","popupdesc":"Whether this adjunct will show Mood or Case-Scope","options":{"mood":{"name":"Mood","desc":"Mood refers to the knowability and truthfulness of a statement, and describes both the truth of the actual statement and any underlying presuppositions."},"casc":{"name":"Case-Scope","desc":"Formatives showing Case use the Case-Scope to indicate the scope of a case-marked formative over adjacent formatives. This is useful when there is a string of cases modifying another “head” formative; specifies which has scope over which other formative."}}},"vh":{"type":"","title":"Vₕ/Vₙ","popupdesc":"Whether this adjunct will show Valence/Phase/Level/Effect(/Aspect) or the Specialized Scope.
If the Number of Modules is 1, then this will show Aspect.","options":{"vn":{"name":"Vₙ","desc":"Show an additional Vₙ on this affix"},"vh":{"name":"Vₕ","desc":"Show the Specialized Scope of the Adjunct on this adjunct.
Allows for modifying where the VPLEA and Mood/Case-Scopes are applied on the next formative."}}},"modScope":{"type":"","title":"Specialised Scope","popupdesc":"Describes where on the following formative the meaning of this affix will be applied, scope-wise.
All affixes have right-to-left scope on each other (Slot 2 < Slot 3 < Slot 4).
If this is unspecified (i.e. not shown), then the options have the same scope as if they were in the main word.","options":{"a":{"name":"Scope over Case/Mood and IEV","desc":"This adjunct has scope over everything except Bias"},"e":{"name":"Scope over Case/Mood","desc":"This adjunct has scope over everything except Bias, Illocution, Expectation, and Validation"},"i":{"name":"Scope over entire Formative","desc":"This adjunct has scope over everything except any Adjuncts
NOTE: Do not use if an adjacent affixual adjunct shows scope over this adjunct"},"o":{"name":"Scope over Formative + Adjuncts","desc":"This adjunct has scope over everything
NOTE: Do not use if an adjacent affixual adjunct shows scope over this adjunct"}}},"bias":{"type":"","title":"Bias","popupdesc":"Bias adjuncts function much like English \\"supra-segmental\\" interjections such as \\"Phew!\\", \\"Damn!\\", \\"tsk-tsk\\", \\"Pssshhh\\", \\"huh?\\", \\"meh\\", \\"hmmm\\", etc
Sentence-initial Bias adjuncts scope over the entire sentence. Otherwise, they scope over the preceding formative. They should be pronounced with a preceding and following pause.","options":{"ACC":{"name":"Accidental","desc":"‘As luck would have it...’ ‘Fate has decided that...’ ‘What luck!’","word":"lf"},"ACH":{"name":"Archetypal","desc":"what (a) ...!; how . . .! ; Boy! Did (does) X ever …","word":"mçt"},"ADS":{"name":"Admissive","desc":"‘Mm-hm’ ‘Uh-huh’ (said as mere acknowledgement of a statement without any implied agreement with or assent to the statement)","word":"lļ"},"ANN":{"name":"Annunciative","desc":"‘Guess what!’ or ‘Wait till you hear this!’","word":"drr"},"ANP":{"name":"Anticipative","desc":"‘I’m looking foward to this!’ ","word":"lst"},"APB":{"name":"Approbative","desc":"‘(That’s) OK’ ‘(That’s) alright’ ‘(That’s) good’ ‘(That’s) fine’ ‘Very well’ ‘Sure’","word":"řs"},"APH":{"name":"Apprehensive","desc":"‘I’m worried...’ ‘I’ve got a bad feeling about this...’ ","word":"vvz"},"ARB":{"name":"Arbitrary","desc":"‘..Yeah, whatever...’, ‘...Ah, what the hell, I’m going ahead and....’ ","word":"xtļ"},"ATE":{"name":"Attentive","desc":"‘Well, whaddya know...’ ‘Well, will you look at that...!’ ‘Well, go figure...’ ‘Who would’ve thought...?’ ‘Well I’ll be!’","word":"ňj"},"CMD":{"name":"Comedic","desc":"‘Funny!’ ‘LOL’","word":"pļļ"},"CNV":{"name":"Contensive","desc":"‘I’m telling you...’, ‘I told you so!’, ‘You see?!’","word":"rrj"},"COI":{"name":"Coincidental","desc":"‘What a coincidence!’","word":"ššč"},"CRP":{"name":"Corruptive","desc":"‘How corrupt!’ ‘What corruption!’","word":"gžž"},"CRR":{"name":"Corrective","desc":"‘that is to say…,’ ‘What I mean(t) to say is…’ ‘I mean….’","word":"ňţ"},"CTP":{"name":"Contemptive","desc":"‘What nonsense!’ or ‘What bullshit!’","word":"kšš"},"CTV":{"name":"Contemplative","desc":"‘I wonder how…,’ ‘that’s odd…,’ ‘I don’t get it…,’ or a quizzical ‘hmmmm.’","word":"gvv"},"DCC":{"name":"Disconcertive","desc":"‘I’m not sure about this.’ ‘I don’t feel comfortable about this.’ ‘I’m feeling out of my element here.’","word":"gzj"},"DEJ":{"name":"Dejective","desc":"‘(sigh)’ [of dejection/disillusionment]","word":"žžg"},"DES":{"name":"Desperative","desc":"‘I don’t know how to say this, but…’ ‘I’m afraid that….’ ‘I’m sorry to have to tell you, but...’","word":"mřř"},"DFD":{"name":"Diffident","desc":"‘sorry, but…’ ‘It’s nothing. It’s just…’","word":"cč"},"DIS":{"name":"Dismissive","desc":"‘Is that it?’ ‘Big deal!’ ‘So what!?’ ","word":"kff"},"DLC":{"name":"Delectative","desc":"‘Whee!’","word":"ẓmm"},"DOL":{"name":"Dolorous","desc":"‘Ow!’ ‘Ouch!’","word":"řřx"},"DPB":{"name":"Disapprobative","desc":"‘I don’t like the fact that…’ ‘It bothers me that….’ ‘Unacceptable!’ ‘I hate it!’","word":"ffx"},"DRS":{"name":"Derisive","desc":"‘How foolish!’ ‘How silly!’ ‘Look at how foolish/silly/ridiculous this is!’","word":"pfc"},"DUB":{"name":"Dubitative","desc":"‘Hmm, not likely.’ ‘I doubt it.’ ‘Sounds fishy to me’ ‘I don’t trust this/it/him/her/them...’","word":"mmf"},"EUH":{"name":"Euphoric","desc":"‘(Sigh) What bliss!’","word":"gzz"},"EUP":{"name":"Euphemistic","desc":"‘Let’s just say that….’ or ‘Well, let me put it this way….’","word":"vvt"},"EXA":{"name":"Exasperative","desc":"‘Dammit!’ ‘Look, don’t you get it?…’ ‘Look, I’m trying to tell you….’","word":"kçç"},"EXG":{"name":"Exigent","desc":"‘It’s now or never!’","word":"rrs"},"FOR":{"name":"Fortuitous","desc":"‘It’s just as well that...’ or ‘All’s well that ends well...’","word":"lzp"},"FSC":{"name":"Fascinative","desc":"‘Cool!’ ‘Wow!’ ‘Awesome!’","word":"žžj"},"GRT":{"name":"Gratificative","desc":"‘Ah! What bliss...!’ ‘Oh, there’s nothing like….’ [physical pleasure only]","word":"mmh"},"IDG":{"name":"Indignative","desc":"‘The nerve!’ or ‘How dare…!?’","word":"pšš"},"IFT":{"name":"Infatuative","desc":"‘Praise be to...!’ ‘Oh, thank God for...!’ ‘There’s nothing more sacred/holy/important than...!’","word":"vvr"},"IPL":{"name":"Implicative","desc":"‘of course,’ ‘after all,’ ‘needless to say.’","word":"vll"},"IPT":{"name":"Impatient","desc":"‘C’mon!,’ ‘What’re you waiting for?’ ‘so…already!’ as in the sentence ‘So dance already!’","word":"žžv"},"IRO":{"name":"Ironic","desc":"‘Oh, nice!’ ‘Just great!’ ‘Well, now, isn’t this lovely!’","word":"mmž"},"ISP":{"name":"Insipid","desc":"‘Meh... (said due to lack of interest)’ ‘How boring/tedious/dull!’","word":"lçp"},"IVD":{"name":"Invidious","desc":"‘Why does he/she/they get to... and I don’t?!’ ‘How unfair (that I don’t get to...)!’","word":"řřn"},"MAN":{"name":"Mandatory","desc":"‘take it or leave it,’ ‘this is your last chance,’","word":"msk"},"MNF":{"name":"Manifestive","desc":"‘Ah!’, ‘Well, now!’ ‘So!’ [Italian ‘Allora!’]","word":"pss"},"OPT":{"name":"Optimal","desc":"prolonged ‘so’ or ‘totally’ as in ‘I so don’t care!’ or ‘That is totally not what I meant.’","word":"ççk"},"PES":{"name":"Pessimistic","desc":"‘Yeah, like it really matters that...’ ‘Pfft! What’s it to me?’","word":"ksp"},"PPT":{"name":"Propitious","desc":"‘it’s a wonder that’ as in It’s a wonder he didn’t break a bone in that fall. ","word":"mll"},"PPX":{"name":"Perplexive","desc":"‘Huh? What do you mean…? What the hell? ‘WTF!?’ ‘You gotta be kidding me!’","word":"llh"},"PPV":{"name":"Propositive","desc":"‘what if…’ ‘It could be that….’ ‘Consider this: …’ ‘Posit the following: …’ ‘Assume for the sake of argument that….’","word":"sl"},"PSC":{"name":"Prosaic","desc":"‘Meh... (said in disappointment)’ ‘How ordinary!’","word":"žžt"},"PSM":{"name":"Presumptive","desc":"‘It can only mean one thing…,’ ‘and that’s that!’ ‘and that’s all there is to it!’ or ‘There’s no two ways about it,….’","word":"nnţ"},"RAC":{"name":"Reactive","desc":"‘My goodness! ‘Wow!’ ‘Amazing!’","word":"kll"},"RFL":{"name":"Reflective","desc":"‘Look at it this way…’ ‘As I see it,…’ ‘In my opinion…’ ‘From my point of view…’","word":"llm"},"RPU":{"name":"Repulsive","desc":"‘Yuck! Ew! How gross!’","word":"šštļ"},"RSG":{"name":"Resignative","desc":"‘So much for...!’ ‘There goes...!’","word":"msf"},"RVL":{"name":"Revelative","desc":"‘No wonder…!’ or ‘So that’s why…!’ ‘A-ha!….’ ‘Well, well, well!….’","word":"mmļ"},"SAT":{"name":"Satiative","desc":"‘How satisfying...!’ ‘At last, the pleasue of knowing/being/seeing/doing….’ [psychological/emotional pleasure/satiety only]","word":"ļţ"},"SGS":{"name":"Suggestive","desc":"‘How about...’ ‘We could...’ ‘Might I suggest...’","word":"ltç"},"SKP":{"name":"Skeptical","desc":"‘Yeah, right!’ ‘Oh, sure! Like anyone’s supposed to believe that!’","word":"rnž"},"SOL":{"name":"Solicitative","desc":"‘please’","word":"ňňs"},"STU":{"name":"Stupefactive","desc":"‘Woah!’ ‘Holy, bejeezus!’ ‘What the...!’ ‘Jeez, Louise...!’","word":"ļļč"},"TRP":{"name":"Trepidative","desc":"‘Oh, God…’ ‘Oh, no!….’ ‘Oh, dear!’ [fear-based]","word":"llč"},"VEX":{"name":"Vexative","desc":"‘How annoying!’ ‘What a bother!’ ‘What a pain!’","word":"ksk"}}},"freeType":{"type":"text","title":"Text Entry","popupdesc":"A borrowed word, probably spelt phonetically. Don\'t forget to prefix it with the appropriate suppletive adjunct!"}}'),fs=JSON.parse('{"p":["stop","unvoiced","labial"],"b":["stop","voiced","labial"],"t":["stop","unvoiced","apico"],"d":["stop","voiced","apico"],"k":["stop","unvoiced","velar"],"g":["stop","voiced","velar"],"f":["fric","unvoiced","labial","nonsibil"],"v":["fric","voiced","labial","nonsibil"],"ţ":["fric","unvoiced","apico","nonsibil"],"ḑ":["fric","voiced","apico","nonsibil"],"s":["fric","unvoiced","apico","sibil"],"z":["fric","voiced","apico","sibil"],"š":["fric","unvoiced","apalat","sibil"],"ž":["fric","voiced","apalat","sibil"],"ç":["fric","unvoiced","palat","nonsibil"],"x":["fric","unvoiced","velar","nonsibil"],"h":["fric","unvoiced","glott"],"ļ":["fric","unvoiced","lateral"],"c":["affric","unvoiced","apico","sibil"],"ẓ":["affric","voiced","apico","sibil"],"č":["affric","unvoiced","apalat","sibil"],"j":["affric","voiced","apalat","sibil"],"m":["nasal","voiced","labial"],"n":["nasal","voiced","apico"],"ň":["nasal","voiced","velar"],"r":["liquid","voiced","apico"],"l":["liquid","voiced","lateral"],"w":["approx","voiced","labial"],"y":["approx","voiced","palat"],"ř":["approx","voiced","uvul"]}'),gs={name:"Ithkuil_v4",components:{OptionBox:ps},props:{listenModal:Array,listenWordtype:String,listenWord:Object,selectedWord:Number,sLength:Number,nextWord:Array},watch:{listenModal(e){this.updateFromModal(e[0],e[1])},listenWordtype(e){this.switchWordType(e)},listenWord(e){for(var t in this.gOptions=JSON.parse(JSON.stringify(e)),e)this.updateFromModal(t,JSON.parse(JSON.stringify(e[t])));this.handleSendMessage(e.root,"root")},ithkword(e){this.$emit("ithkword",[e,this.ipa,this.gloss,this.fullGloss]),this.$emit("gEmit",this.gOptions)},ipa(e){this.$emit("ithkword",[this.ithkword,e,this.gloss,this.fullGloss])},gloss(e){this.$emit("ithkword",[this.ithkword,this.ipa,e,this.fullGloss])},fullGloss(e){this.$emit("ithkword",[this.ithkword,this.ipa,this.gloss,e])}},data(){return{defaultWord:"aal",settings:{IPA:{a:["Pronunciation of ⟨a⟩: ","[a]",["[a]","[ɑ]"]],e:["Pronunciation of ⟨e⟩: ","[ɛ]",["[ɛ]","[e]"]],"ë":["Pronunciation of ⟨ë⟩: ","[ɤ]",["[ɤ]","[ʌ]","[ə]"]],i:["Pronunciation of ⟨i⟩: ","[i]",["[i]","[ɪ]"]],o:["Pronunciation of ⟨o⟩: ","[ɔ]",["[ɔ]","[o]"]],"ö":["Pronunciation of ⟨ö⟩: ","[œ]",["[œ]","[ø]"]],u:["Pronunciation of ⟨u⟩: ","[ʊ]",["[ʊ]","[u]"]],"ü":["Pronunciation of ⟨ü⟩: ","[ʉ]",["[ʉ]","[y]"]],x:["Pronunciation of ⟨x⟩: ","[x]",["[x]","[χ]"]],rr:["Pronunciation of ⟨řř⟩: ","[ʁː]",["[ʁː]","[ʀ]"]],hx:["Pronunciation of ⟨hl⟩, ⟨hr⟩, ⟨hm⟩, ⟨hn⟩, ⟨hň⟩: ","Devoiced",["Devoiced","As written"]]},Miscellaneous:{ej:["Calculate External Juncture? ",!0],s8:["Move Slot 8 consonant to Slot 6 if possible? ",!1]}},wordType:"normal",gData:us,cData:fs,gDefault:{root:"",stem:"s1",func:"STA",spec:"BSC",ctxt:"EXS",ver:"PRC",concat:"0",shcut:"0",Vafx:[],VIIafx:[],plex:"UPX",simil:"S",cctd:"S",affil:"CSL",ext:"DEL",persp:"M",ess:"NRM",vn:"val",val:"MNO",pha:"PCT",eff:"1:BEN",lvl:"MIN",asp:"RTR",mood:"FAC",casc:"CCN",rel:"UNF/C",c:"THM",ill:"ASR",vld:"OBS",suppType:"CAR",affRoot:"",arDegree:0,affixjunct:[],initialAffScope:"VDom",otherAffScope:"VDom",affScopeOf:"default",register:"DSV",regStartOrEnd:"0",vn2:"val",val2:"MNO",pha2:"PCT",eff2:"1:BEN",lvl2:"MIN",asp2:"RTR",mood2:"FAC",casc2:"CCN",vn3:"val",val3:"MNO",pha3:"PCT",eff3:"1:BEN",lvl3:"MIN",asp3:"RTR",v4n:"val",val4:"MNO",pha4:"PCT",eff4:"1:BEN",lvl4:"MIN",asp4:"RTR",cn:"mood",modAppliesTo:"all",modNumber:"1",vh:"vn",modScope:"a",ref:"1M",refEff:"NEU",refPersp:"M",ref2:"1M",refEff2:"NEU",refPersp2:"M",ess2:"NRM",c1:"THM",c2:"THM",twoRefs:!1,twoCs:!1,refAffix:[],bias:"ACC",freeType:""},gOptions:{},sVowels:[["a","ai","ia","ao"],["ä","au","ie","aö"],["e","ei","io","eo"],["i","eu","iö","eö"],["ëi","ëu","eë","oë"],["ö","ou","uö","öe"],["o","oi","uo","oe"],["ü","iu","ue","öa"],["u","ui","ua","oa"],["ae","ea","üo","üö"]],ipaLookup:{p:"p",b:"b",m:"m",f:"f",v:"v",w:"w",t:"t",d:"d","ţ":"θ","ḑ":"ð",s:"s",z:"z",c:"ts","ẓ":"dz","š":"ʃ","ž":"ʒ","č":"tʃ",j:"dʒ","ç":"ç",y:"j",k:"k",g:"g","ň":"ŋ","ř":"ʁ","'":"ʔ",h:"h","ļ":"ɬ",l:"l"},shortcutting:!1,shcuttypeA:0,shcuttypeB:0,slotVIIshortcut:!1,sDip:["ai","ei","ëi","oi","ui","au","eu","ëu","ou","iu"],sAccent:{a:"á",e:"é",i:"í","ì":"í",o:"ó",u:"ú","ä":"â","ë":"ê","ö":"ô","ü":"û"},slots:["","","","","","","","","","",""],cut:[!1,!1,!1],ithkword:"",gloss:"",fullGloss:"",ipa:"",cascOrMood:!1,eightSix:!1,allographs:{cczz:"čč",yc:"čč",xxy:"çç",ccs:"çç",ddt:"ḑḑ",hxll:"ļļ",wwnn:"ňň",yn:"ňň",wrr:"řř",yr:"řř",ssz:"šš",tts:"ţţ",ttd:"ţţ",wtt:"ţţ",zzs:"žž",ddz:"ẓẓ",dzz:"ẓẓ",cz:"č",xy:"ç",cs:"ç",dt:"ḑ",hxl:"ļ",wn:"ň",wr:"ř",sz:"š",ts:"ţ",td:"ţ",wt:"ţ",zs:"ž",dz:"ẓ",aaqqq:"â'",eeqqq:"ê'",ooqqq:"ô'",uuqqq:"û'",aqqq:"ä'",eqqq:"ë'",oqqq:"ö'",uqqq:"ü'",qq:"'",aaq:"â",ooq:"ô",eeq:"ê",uuq:"û",aq:"ä",eq:"ë",uq:"ü",oq:"ö",aa:"á",ee:"é",ii:"í",oo:"ó",uu:"ú","ṭ":"ţ","ŧ":"ţ","ḍ":"ḑ","đ":"ḑ","ņ":"ň","ṇ":"ň","ŗ":"ř","ṛ":"ř","ł":"ļ","ḷ":"ļ","ż":"ẓ","ı":"i"},tabGroups:{normal:[["root","stem","spec"],["func","ver","ctxt"],["shcut","concat","rel"],["Vafx","VIIafx"],["plex","simil","cctd"],["affil","ext","persp","ess"],["vn","val","pha","eff","lvl","asp"],["casc","c"],["mood","ill","vld"]],suppletive:[["suppType","c"]],affRoot:[["affRoot","arDegree"],["spec","func","ver","ctxt"],["shcut","concat","rel"],["Vafx","VIIafx"],["plex","simil","cctd"],["affil","ext","persp","ess"],["vn","val","pha","eff","lvl","asp"],["casc","c"],["mood","ill","vld"]],refRoot:[["ref","refEff","refPersp"],["spec","func","ver","ctxt"],["shcut","concat","rel"],["Vafx","VIIafx"],["plex","simil","cctd"],["affil","ext","persp","ess"],["vn","val","pha","eff","lvl","asp"],["casc","c"],["mood","ill","vld"]],affixjunct:[["affixjunct","initialAffScope","otherAffScope","affScopeOf"]],register:[["register","regStartOrEnd"]],modular:[["modAppliesTo","modNumber","cn","vh"],["vn","val","pha","eff","lvl"],["vn2","val2","pha2","eff2","lvl2","asp2"],["vn3","val3","pha3","eff3","lvl3","asp3"]],ref:[["ref","refEff","refPersp","c1"],["twoCs","twoRefs","ref2","refEff2","refPersp2","c2","ess2"]],refCS:[["ref","refEff","refPersp","c1","spec"],["refAffix","twoCs","c2","ess2"]],bias:[],free:[]}}},methods:{async handleSendMessage(e="",t=""){if(this.cut=[!1,!1,!1],t){await void 0;var s=JSON.parse(JSON.stringify(e));let i;if(i=isNaN(t.slice(-1))?t:t.slice(0,-1),"text"==this.gData[i].type)for(let e in this.allographs)s=s.replaceAll(e,this.allographs[e]);else if("affix"==this.gData[i].type)for(let e in s)for(let t in this.allographs)s[e][0]=s[e][0].replaceAll(t,this.allographs[t]);else s=e;this.gOptions[t]=s}"normal"==this.wordType||"affRoot"==this.wordType||"refRoot"==this.wordType?(this.calculateWord(),this.IPAcalcs(),this.glossCalcs(),this.cascOrMood="UNF/K"==this.gOptions.rel&&"0"==this.gOptions.concat):(this.gloss="",this.fullGloss="",this.cascOrMood=!1,this.calculateAdjunct(this.wordType),this.IPAcalcs())},notAvailableAlert(e){alert(e+" is not available yet!")},openModal(e){this.$emit("modal",e)},updateFromModal(e,t){this.$refs[e].updateValue(t)},switchWordType(e){this.wordType=e,this.calculateAdjunct(e),this.handleSendMessage()},calculateAdjunct(e){var t="";if("suppletive"==e)this.calculateSlot9(),this.slot9gStop(),this.ithkword={CAR:"hl",QUO:"hm",NAM:"hn",PHR:"hň"}[this.gOptions.suppType]+this.slots[9],this.gloss=this.gOptions.suppType+("THM"==this.gOptions.c?"":"-"+this.gOptions.c),this.fullGloss=this.gOptions.suppType+"-"+this.gOptions.c+"\\NRM";else if("affixjunct"==e){var s={VDom:"a",VSub:"u",VIIDom:"e",VIISub:"i",formative:"o",adjacent:"ö",same:"ai"},i={VDom:"h",VSub:"'h",VIIDom:"'hl",VIISub:"'hr",formative:"hw",adjacent:"'hw"};try{this.gloss="'"+this.gOptions.affixjunct[0][0]+"'/"+this.gOptions.affixjunct[0][1]+("CA"!=this.gOptions.affixjunct[0][1]?{1:"₁",2:"₂",3:"₃",4:"₄"}[this.gOptions.affixjunct[0][2]]:""),this.fullGloss=this.gloss,this.gloss+="VDom"==this.gOptions.initialAffScope?"":"-{"+this.gOptions.initialAffScope+"}",this.fullGloss+="-{"+this.gOptions.initialAffScope+"}"}catch{this.gloss="",this.fullGloss=""}if(this.gOptions.affixjunct.length<1)this.ithkword="",this.gloss="",this.fullGloss="";else if(1==this.gOptions.affixjunct.length){var n=s[this.gOptions.initialAffScope],o=this.gOptions.affixjunct[0];"CA"!=o[1]?"a"==n&&this.allowedAtEnd(o[0])&&("conc"==this.gOptions.affScopeOf||this.sVowels[(o[1]+9)%10][o[2]-1].length>1&&!this.sDip.includes(this.sVowels[(o[1]+9)%10][o[2]-1]))&&(n=""):"a"==n&&this.allowedAtEnd(o[0])&&("conc"==this.gOptions.affScopeOf||"üö".length>1&&!this.sDip.includes("üö"))&&(n=""),"CA"!=o[1]?this.ithkword=this.sVowels[(o[1]+9)%10][o[2]-1]+o[0]+n:this.ithkword="üö"+o[0]+n}else{var a="",l=this.gOptions.affixjunct[0];for(var r of(this.allowedAtStart(l[0])||(a+="ë"),"CA"!=l[1]?a+=l[0]+this.sVowels[(l[1]+9)%10][l[2]-1]:a+=l[0]+"üö",a+=i[this.gOptions.initialAffScope],this.gOptions.affixjunct.slice(1)))"CA"!=r[1]?a+=this.sVowels[(r[1]+9)%10][r[2]-1]:a+="üö",a+=r[0];a+=s[this.gOptions.otherAffScope],a=this.recalcVowels(a),this.ithkword=a;for(let e of this.gOptions.affixjunct.slice(1))this.gloss+="-'"+e[0]+"'/"+e[1]+("CA"!=e[1]?{1:"₁",2:"₂",3:"₃",4:"₄"}[e[2]]:""),this.fullGloss+="-'"+e[0]+"'/"+e[1]+("CA"!=e[1]?{1:"₁",2:"₂",3:"₃",4:"₄"}[e[2]]:"");this.gloss+="same"==this.gOptions.otherAffScope?"":"-{"+this.gOptions.otherAffScope+"}",this.fullGloss+="-{"+this.gOptions.otherAffScope+"}"}this.gOptions.affixjunct.length>0&&(this.gloss+="conc"==this.gOptions.affScopeOf?"{concat.}":"",this.fullGloss+="conc"==this.gOptions.affScopeOf?"{concat.}":"",this.ithkword=this.markStress(["conc","default"].indexOf(this.gOptions.affScopeOf),this.ithkword))}else if("register"==e){var h={DSV:["a","ai"],PNT:["e","ei"],SPF:["i","iu"],EXM:["o","oi"],CGT:["u","ui"],END:["ü","ü"]};this.ithkword="h"+h[this.gOptions.register][this.gOptions.regStartOrEnd],this.gloss=this.gOptions.register+("1"==this.gOptions.regStartOrEnd&&"END"!=this.gOptions.register?"_END":""),this.fullGloss=this.gloss}else if("modular"==e)t+={all:"",parent:"w","concat.":"y"}[this.gOptions.modAppliesTo],this.gloss="all"!=this.gOptions.modAppliesTo?"{"+this.gOptions.modAppliesTo+"}-":"",["2","3"].includes(this.gOptions.modNumber)&&(t+=this.calculateSlot8a("2"),t+=this.calculateSlot8b("2",this.gOptions.cn),this.gloss+="MNO"!=this.gOptions[this.gOptions.vn2+"2"]?this.gOptions[this.gOptions.vn2+"2"]:"",this.gloss+="MNO"!=this.gOptions[this.gOptions.vn2+"2"]&&"FAC"!=this.gOptions[this.gOptions.cn+"2"]&&"CCN"!=this.gOptions[this.gOptions.cn+"2"]?".":"",this.gloss+="FAC"!=this.gOptions[this.gOptions.cn+"2"]&&"CCN"!=this.gOptions[this.gOptions.cn+"2"]?this.gOptions[this.gOptions.cn+"2"]:"",this.fullGloss+=this.gOptions[this.gOptions.vn2+"2"]+"."+this.gOptions[this.gOptions.cn+"2"]),"3"==this.gOptions.modNumber&&(t+=this.calculateSlot8a("3"),t+="asp"==this.gOptions.vn3?"n":"ň",this.gloss+="MNO"!=this.gOptions[this.gOptions.vn3+"3"]?"-"+this.gOptions[this.gOptions.vn3+"3"]:"",this.fullGloss+="-"+this.gOptions[this.gOptions.vn3+"3"]),t=this.recalcVowels(t),"1"==this.gOptions.modNumber?(t+=this.calculateSlot8a("4","asp"),this.gloss+=this.gOptions.asp4,this.fullGloss+=this.gOptions.asp4):"vn"==this.gOptions.vh?(t+=this.calculateSlot8a("4"),this.gloss+="MNO"!=this.gOptions[this.gOptions.v4n+"4"]?"-"+this.gOptions[this.gOptions.v4n+"4"]:"",this.fullGloss+="-"+this.gOptions[this.gOptions.v4n+"4"]):(t+=this.gOptions.modScope,t=this.markStress(0,t),this.gloss+="-{"+{a:"form.",e:"mood",i:"under adj.",o:"over adj.",u:"under adj."}[this.gOptions.modScope]+"}",this.fullGloss+="-{"+{a:"form.",e:"mood",i:"under adj.",o:"over adj.",u:"under adj."}[this.gOptions.modScope]+"}"),this.ithkword=t;else if("ref"==e){var c=this.calculateReference(this.gOptions.ref,this.gOptions.refEff,this.gOptions.refPersp);t+=this.allowedAtStart(c)&&(this.gOptions.twoCs||"RPV"!=this.gOptions.ess2)?"":"ë",t+=c,this.calculateSlot9("1"),this.slot9gStop(),t+=this.slots[9];let e=this.refGloss(this.gOptions.ref,this.gOptions.refEff,this.gOptions.refPersp);if(this.gloss=e[0],this.fullGloss=e[1],this.gloss+="THM"!=this.gOptions.c1||this.gOptions.twoCs?"-"+this.gOptions.c1:"",this.fullGloss+="-"+this.gOptions.c1,this.gOptions.twoCs&&(t+="w",this.calculateSlot9("2"),this.slot9gStop(),t+=this.slots[9],this.gloss+="-"+this.gOptions.c2,this.fullGloss+="-"+this.gOptions.c2,this.gOptions.twoRefs)){var d=this.calculateReference(this.gOptions.ref2,this.gOptions.refEff2,this.gOptions.refPersp2);t+=d,t+=this.allowedAtEnd(d)?"":"ë";let e=this.refGloss(this.gOptions.ref2,this.gOptions.refEff2,this.gOptions.refPersp2);this.gloss+="-"+e[0],this.fullGloss+="-"+e[1]}!["a","á","ä","â","e","ë","é","ê","i","í","o","ö","ó","ô","u","ü","ú","û"].includes(t.charAt(t.length-1))&&this.calculateEJ&&(t+="ë"),t=this.recalcVowels(t),"RPV"==this.gOptions.ess2?(t=this.markStress(0,t),this.gloss+="\\RPV",this.fullGloss+="\\RPV"):this.fullGloss+="\\NRM",this.ithkword=t}else if("refCS"==e){var p=this.calculateReference(this.gOptions.ref,this.gOptions.refEff,this.gOptions.refPersp);t+=this.allowedAtStart(p)?"":"ë",t+=p,this.calculateSlot9("1"),this.slot9gStop(),t+=this.slots[9],t+={BSC:"x",CTE:"xt",CSV:"xp",OBJ:"xx"}[this.gOptions.spec];let e=this.refGloss(this.gOptions.ref,this.gOptions.refEff,this.gOptions.refPersp);for(var u in this.gloss=e[0],this.gloss+="THM"!=this.gOptions.c1||this.gOptions.twoCs?"-"+this.gOptions.c1:"",this.gloss+="BSC"==this.gOptions.spec?"":"-"+this.gOptions.spec,this.fullGloss=e[1]+"-"+this.gOptions.c1+"-"+this.gOptions.spec,this.gOptions.refAffix){var f=Object.assign({},this.gOptions.refAffix[u]);"CA"!=f[1]?t+=this.sVowels[(f[1]+9)%10][f[2]-1]:t+="üö",t+=f[0],this.gloss+="-'"+f[0]+"'/"+f[1]+("CA"!=f[1]?{1:"₁",2:"₂",3:"₃",4:"₄"}[f[2]]:""),this.fullGloss+="-'"+f[0]+"'/"+f[1]+("CA"!=f[1]?{1:"₁",2:"₂",3:"₃",4:"₄"}[f[2]]:"")}this.gOptions.twoCs?(this.calculateSlot9("2"),this.slot9gStop(),t+="a"==this.slots[9]?"üa":this.slots[9],this.gloss+="-"+this.gOptions.c2,this.fullGloss+="-"+this.gOptions.c2):0!=this.gOptions.refAffix.length||this.gOptions.twoCs||"RPV"!=this.gOptions.ess2?this.gOptions.refAffix.length>0&&(this.allowedAtEnd(this.gOptions.refAffix[this.gOptions.refAffix.length-1][0])||(t+="a")):t+="a",!["a","á","ä","â","e","ë","é","ê","i","í","o","ö","ó","ô","u","ü","ú","û"].includes(t.charAt(t.length-1))&&this.calculateEJ&&(t+="a"),t=this.recalcVowels(t),"RPV"==this.gOptions.ess2?(t=this.markStress(0,t),this.gloss+="\\RPV",this.fullGloss+="\\RPV"):this.fullGloss+="\\NRM",this.ithkword=t}else"bias"==e?(this.ithkword=this.gData.bias.options[this.gOptions.bias].word,this.gloss=this.gOptions.bias,this.fullGloss=this.gOptions.bias):"free"==e?this.ithkword=this.gOptions.freeType:(this.calculateWord(),this.glossCalcs());this.IPAcalcs()},calculateReference(e,t,s,i=!1){var n,o={"1M":{NEU:"l",BEN:"r",DET:"ř"},"2M":{NEU:"s",BEN:"š",DET:"ž"},"2P":{NEU:"n",BEN:"t",DET:"d"},MA:{NEU:"m",BEN:"p",DET:"b"},PA:{NEU:"ň",BEN:"k",DET:"g"},MI:{NEU:"z",BEN:"ţ",DET:"ḑ"},PI:{NEU:"ẓ",BEN:"f",DET:"v"},MX:{NEU:"c",BEN:"č",DET:"j"},RDP:{NEU:"th",BEN:"ph",DET:"kh"},OBV:{NEU:"ll",BEN:"rr",DET:"řř"},PVS:{NEU:"mm",BEN:"nn",DET:"ňň"}};n=i&&["OBV","PVS"].includes(e)?{OBV:{NEU:"lç",BEN:"rç",DET:"řç"},PVS:{NEU:"mç",BEN:"nç",DET:"ňç"}}[e][t]:o[e][t];var a=[];return"A"==s?this.consAllowed(n+"w")?n+="w":n+="y":"G"!=s&&"N"!=s||(a="G"==s?["ļ","tļ"]:["ç","x"],this.allowedAtEnd(a[0]+n)?n=a[0]+n:this.allowedAtEnd(a[1]+n)?n=a[1]+n:this.allowedAtEnd(n+a[0])?n+=a[0]:this.allowedAtEnd(n+a[1])?n+=a[1]:this.consAllowed(n+a[0])?n+=a[0]:this.consAllowed(n+a[1])?n+=a[1]:this.consAllowed(a[0]+n)?n+=a[0]:n+=a[1]),n},calculateWord(){this.calculateSlot3(),this.calculateSlot4(),this.calculateSlot6(),this.shortcutCalcs(),this.calculateSlot1(),this.calculateSlot2(),this.calculateSlot5(),this.calculateSlot7(),this.slots[7]=this.calculateSlot8a(),this.slots[8]=this.calculateSlot8b(),this.calculateSlot9(),this.finalCalcs()},calculateSlot1(){this.shortcutting?this.slots[0]=[["","w","y"],["h","hl","hm"],["hw","hr","hn"]][this.gOptions.concat][this.shcuttypeA]:this.slots[0]=["","h","hw"][this.gOptions.concat]},calculateSlot2(){var e={s1:{PRC:0,CPT:1},s2:{PRC:2,CPT:3},s0:{CPT:5,PRC:6},s3:{CPT:7,PRC:8}},t={PRC:{STA:"ëi",DYN:"eë"},CPT:{STA:"ëu",DYN:"oë"}},s={PRC:"ae",CPT:"ea"};if("normal"==this.wordType)if(this.shortcutting)this.slotVIIshortcut=!1,this.slots[1]=this.sVowels[e[this.gOptions.stem][this.gOptions.ver]][this.shcuttypeB];else{var i,n=0;"3"!=this.gOptions.shcut&&"2"!=this.gOptions.shcut?(i=this.gOptions.VIIafx.length>0?[...this.gOptions.VIIafx[this.gOptions.VIIafx.length-1]]:["no",0,0],"r"===i[0]&&4===i[1]&&1===i[2]?(n=1,this.slotVIIshortcut=!0):"t"===i[0]&&4===i[1]&&1===i[2]?(n=2,this.slotVIIshortcut=!0):"t"===i[0]&&5===i[1]&&1===i[2]?(n=3,this.slotVIIshortcut=!0):this.slotVIIshortcut=!1):this.slotVIIshortcut=!1,this.slots[1]=this.sVowels[e[this.gOptions.stem][this.gOptions.ver]][n]}else"affRoot"==this.wordType?this.slots[1]=t[this.gOptions.ver][this.gOptions.func]:"refRoot"==this.wordType&&(this.slots[1]=s[this.gOptions.ver]);this.gOptions.Vafx.length>=2&&(this.slots[1]=this.insertGStop(this.slots[1]))},calculateSlot3(){"normal"==this.wordType?this.slots[2]=this.gOptions.root.toLowerCase():"affRoot"==this.wordType?this.slots[2]=this.gOptions.affRoot.toLowerCase():"refRoot"==this.wordType&&(this.slots[2]=this.calculateReference(this.gOptions.ref,this.gOptions.refEff,this.gOptions.refPersp))},calculateSlot4(){var e={STA:{BSC:0,CTE:1,CSV:2,OBJ:3},DYN:{OBJ:5,CSV:6,CTE:7,BSC:8}},t=["EXS","FNC","RPS","AMG"];"normal"==this.wordType||"refRoot"==this.wordType?this.slots[3]=this.sVowels[e[this.gOptions.func][this.gOptions.spec]][t.indexOf(this.gOptions.ctxt)]:"affRoot"==this.wordType&&(this.slots[3]=this.sVowels[this.gOptions.arDegree][t.indexOf(this.gOptions.ctxt)])},calculateSlot5(){var e="";for(var t in this.gOptions.Vafx){var s=Object.assign({},this.gOptions.Vafx[t]);this.shortcutting?(t==this.gOptions.Vafx.length-1?"CA"!=s[1]?e+=this.insertGStop(this.sVowels[(s[1]+9)%10][s[2]-1]):e+=this.insertGStop("üö"):"CA"!=s[1]?e+=this.sVowels[(s[1]+9)%10][s[2]-1]:e+="üö",e+=s[0]):(e+=s[0],"CA"!=s[1]?e+=this.sVowels[(s[1]+9)%10][s[2]-1]:e+="üö")}this.slots[4]=e},calculateSlot6(e=!1,t=null,s=null,i=null,n=null,o=null,a=null,l=null){e||(t=this.gOptions.affil,s=this.gOptions.plex,i=this.gOptions.simil,n=this.gOptions.cctd,o=this.gOptions.ext,a=this.gOptions.ess,l=this.gOptions.persp);var r={CSL:"",ASO:"l",COA:"r",VAR:"ř"}[t],h="UPX"===s?"":"DPX"===s?"s":{M:{S:{S:"t",C:"k",F:"p"},D:{S:"ţ",C:"f",F:"ç"},F:{S:"z",C:"ž",F:"ẓ"}},D:{S:{S:"c",C:"ks",F:"ps"},D:{S:"ţs",C:"fs",F:"š"},F:{S:"č",C:"kš",F:"pš"}}}[s][i][n],c=(""===h?{DEL:"",PRX:"d",ICP:"g",ATV:"b",GRA:"gz",DPL:"bz"}:{DEL:"",PRX:"t",ICP:"k",ATV:"p",GRA:"g",DPL:"b"})[o],d={NRM:{M:"",G:"r",N:"w",A:"y"},RPV:{M:"l",G:"ř",N:"m",A:"n"}}[a][l];["t","k","p"].includes(c)&&""!=h&&""!=r&&["m","n"].includes(d)&&(d={m:"h",n:"ç"}[d]),""===h&&""===c&&""===d&&""!=r?"l"==r?r="nļ":"ř"==r?r="ň":r+="ļ":""===r&&""===h&&""===c&&(""===d?d="l":"l"===d?d="tļ":"w"===d?d="v":"y"===d&&(d="j"));var p=r+h+c+d,u={pp:"mp",tt:"nt",kk:"nk",ll:"pļ",pb:"mb",kg:"ng","çy":"nd",rr:"ns","rř":"nš","řř":"ňš","řr":"ňs"};for(var f in u)p=p.replace(f,u[f]);var g={gm:"x",gn:"ň",bm:"v",bn:"ḑ"};for(var m in g)p=p.charAt(0)+p.slice(1).replace(m,g[m]);if(p=p.replace("ngn","ňn"),p=p.charAt(0)+p.slice(1).replace("çx","xw"),p=p.replace("fv","vw").replace("ţḑ","ḑy"),e)return p;if(this.slots[10]=p,0!=Object.keys(this.gOptions.Vafx).length){var b=p;p=this.geminate(p),p==b&&["l","r","ř"].includes(p.charAt(0))&&(p=p.charAt(0)+this.geminate(p.slice(1)))}this.slots[5]=p},geminate(e){var t={pt:"bbḑ",pk:"bbv",kt:"ggḑ",kp:"ggv",tk:"ḑvv",tp:"ddv"},s={pm:"vvm",pn:"vvn",bm:"mmw",bn:"mml",km:"xxm",kn:"xxn",gm:"ňňw",gn:"ňňl",tm:"ḑḑm",tn:"ḑḑn",dm:"nnw",dn:"nnl"};return 1===e.length?e+=e:"tļ"===e?e="ttļ":["t","k","p","d","g","b"].includes(e.charAt(0))&&["l","r","ř","w","y"].includes(e.charAt(1))?e=e.charAt(0)+e:e.includes("s")||e.includes("š")||e.includes("z")||e.includes("ž")||e.includes("ç")||e.includes("c")||e.includes("č")?e=e.replace("s","ss").replace("š","šš").replace("z","zz").replace("ž","žž").replace("ç","çç").replace("c","cc").replace("č","čč"):["f","ţ","v","ḑ","n","m","ň"].includes(e.charAt(0))?e=e.charAt(0)+e:["t","k","p"].includes(e.charAt(0))&&["s","š","f","ţ","ç"].includes(e.charAt(1))?e=e.charAt(0)+e.charAt(1)+e.slice(1):Object.prototype.hasOwnProperty.call(t,e.slice(-2))?e=e.slice(0,-2)+t[e.slice(-2)]:Object.prototype.hasOwnProperty.call(s,e.slice(-2))&&(e=e.slice(0,-2)+s[e.slice(-2)]),e},calculateSlot7(){var e="";if(this.slotVIIshortcut&&!this.shortcutting&&"3"!=this.gOptions.shcut&&"2"!=this.gOptions.shcut)for(var t in this.gOptions.VIIafx.slice(0,-1)){var s=Object.assign({},this.gOptions.VIIafx[t]);"CA"!=s[1]?e+=this.sVowels[(s[1]+9)%10][s[2]-1]:e+="üö",e+=s[0]}else for(var i in this.gOptions.VIIafx){var n=Object.assign({},this.gOptions.VIIafx[i]);"CA"!=n[1]?e+=this.sVowels[(n[1]+9)%10][n[2]-1]:e+="üö",e+=n[0]}this.slots[6]=e},calculateSlot8a(e="",t=""){var s;if(s=""!=t?t:"4"==e?this.gOptions["v4n"]:this.gOptions["vn"+e],"asp"!==s){var i,n=["val","pha","eff","lvl"],o={val:["MNO","PRL","CRO","RCP","CPL","DUP","DEM","CNG","PTI"],pha:["PCT","ITR","REP","ITM","RCT","FRE","FRG","VAC","FLC"],eff:["1:BEN","2:BEN","3:BEN","SLF:BEN","UNK","SLF:DET","3:DET","2:DET","1:DET"],lvl:["MIN","SBE","IFR","DFT","EQU","SUR","SPL","SPQ","MAX"]};return i="4"==e?this.sVowels[o[this.gOptions["v4n"]].indexOf(this.gOptions[this.gOptions["v4n"]+e])][n.indexOf(this.gOptions["v4n"])]:this.sVowels[o[this.gOptions["vn"+e]].indexOf(this.gOptions[this.gOptions["vn"+e]+e])][n.indexOf(this.gOptions["vn"+e])],i}var a=[["RTR","PRS","HAB","PRG","IMM","PCS","REG","SMM","ATP"],["RSM","CSS","PAU","RGR","PCL","CNT","ICS","EXP","IRP"],["PMP","CLM","DLT","TMP","XPD","LIM","EPD","PTC","PPR"],["DCL","CCL","CUL","IMD","TRD","TNS","ITC","MTV","SQN"]];for(var l in a)if(a[l].includes(this.gOptions["asp"+e]))return this.sVowels[a[l].indexOf(this.gOptions["asp"+e])][l]},calculateSlot8b(e="",t=""){var s=[],i=[];return s="asp"===this.gOptions["vn"+e]?["w","hw","hrw","hmw","hnw","hňw"]:["h","hl","hr","hm","hn","hň"],("modular"==this.wordType?"casc"==t:"UNF/K"!=this.gOptions.rel||"0"!=this.gOptions.concat)?(i=["CCN","CCA","CCS","CCQ","CCP","CCV"],s[i.indexOf(this.gOptions["casc"+e])]):(i=["FAC","SUB","ASM","SPC","COU","HYP"],s[i.indexOf(this.gOptions["mood"+e])])},calculateSlot9(e=""){var t=[["THM","INS","ABS","AFF","STM","EFF","ERG","DAT","IND"],["POS","PRP","GEN","ATT","PDC","ITP","OGN","IDP","PAR"],["APL","PUR","TRA","DFR","CRS","TSP","CMM","CMP","CSD"],["FUN","TFM","CLA","RSL","CSM","CON","AVR","CVS","SIT"]],s=[["PRN","DSP","COR","CPS","COM","UTL","PRD","n/a","RLT"],["ACT","ASI","ESS","TRM","SEL","CFM","DEP","n/a","VOC"],["LOC","ATD","ALL","ABL","ORI","IRL","INV","n/a","NAV"],["CNR","ASS","PER","PRO","PCV","PCR","ELP","n/a","PLM"]],i=["OBS","REC","PUP","RPR","USP","IMA","CVN","ITU","INF"],n=["DIR","DEC","IRG","VER","n/a","ADM","POT","HOR","CNJ"],o=!1;if("UNF/K"!==this.gOptions.rel||"0"!=this.gOptions.concat||["suppletive","ref"].includes(this.wordType)){for(var a in t)t[a].includes(this.gOptions["c"+e])&&(this.slots[9]=this.sVowels[t[a].indexOf(this.gOptions["c"+e])][a],o=!0);if(!o)for(var l in s)s[l].includes(this.gOptions["c"+e])&&(this.slots[9]=this.sVowels[s[l].indexOf(this.gOptions["c"+e])][l]+"'")}else"ASR"==this.gOptions.ill?this.slots[9]=this.sVowels[i.indexOf(this.gOptions.vld)][0]:this.slots[9]=this.sVowels[n.indexOf(this.gOptions.ill)][1]},shortcutCalcs(){if("1"==this.gOptions.shcut&&"a"==this.slots[3]&&["l","d","r","tļ","v","j","ř","dl"].includes(this.slots[10])&&"normal"==this.wordType||"refRoot"==this.wordType&&"1"==this.gOptions.shcut&&"a"==this.slots[3]&&["l","d"].includes(this.slots[10])){var e={l:[1,0],d:[2,0],r:[1,1],"tļ":[2,1],v:[1,2],j:[2,2],"ř":[1,3],dl:[2,3]};try{this.shortcutting=!0,this.shcuttypeA=e[this.slots[10]][0],this.shcuttypeB=e[this.slots[10]][1],this.slots[3]="",this.slots[5]=""}catch{this.shortcutting=!1,this.calculateSlot4(),this.calculateSlot6()}}else this.shortcutting=!1},insertGStop(e,t=!1){return 1===e.length||this.sDip.includes(e)?t?1===e.length?e+"'"+e:e.charAt(0)+"'"+e.charAt(1):e+"'":e.charAt(0)+"'"+e.charAt(1)},getCons(...e){var t=[];for(var s in this.cData)for(var i in e)e[i].every((e=>this.cData[s].includes(e)))&&!t.includes(s)&&t.push(s);return t},removeDuplicate(e){var t="",s="";for(var i of e)i!=s&&(t+=i,s=i);return t},slot9gStop(){"'"===this.slots[9].charAt(this.slots[9].length-1)&&("0"==this.gOptions.concat||["suppletive","ref","refCS"].includes(this.wordType)?(this.slots[9]=this.slots[9].slice(0,-1),this.slots[9]=this.insertGStop(this.slots[9],!0)):this.slots[9]=this.slots[9].slice(0,-1))},allowedAtStart(e){if(this.consAllowed(e)){var t=this.removeDuplicate(e);if(1===t.length){if("ļ"!==t)return!0}else if(2===t.length){var s=t.charAt(0),i=t.charAt(1);if(this.getCons(["stop"]).includes(s)&&["r","l","ř","w","y"].includes(i)||["p","k"].includes(s)&&["s","š"].includes(i)||["b","g"].includes(s)&&["z","ž"].includes(i)||"p"===s&&["f","ţ","ç","x","h","ļ"].includes(i)||"b"===s&&["v","ḑ"].includes(i)||"t"===s&&["f","v","ţ","ḑ","ç","x","h","ļ"].includes(i)||"d"===s&&"v"==i||"k"===s&&["f","ţ","ç","x","h"].includes(i)||"g"===s&&["v","ḑ"].includes(i)||["s","š"].includes(s)&&this.getCons(["stop","unvoiced"],["fric","nonsibil","unvoiced"],["affric","unvoiced"]).includes(i)||["z","ž"].includes(s)&&this.getCons(["stop","voiced"],["fric","nonsibil","voiced"],["affric","voiced"]).includes(i)||["s","z","š","ž"].includes(s)&&["m","n","ň","r","l","w","y","ř","v"].includes(i)||["c","č"].includes(s)&&this.getCons(["fric","nonsibil","unvoiced"],["stop","unvoiced"]).includes(i)||["c","č"].includes(s)&&"h"===i||["ẓ","j"].includes(s)&&this.getCons(["fric","nonsibil","voiced"],["stop","voiced"]).includes(i)||["c","ẓ","č","j"].includes(s)||"x"===s&&["p","t","c","č","m","n","l","r","w"].includes(i)||"ç"===s&&["p","t","c","č","k","m","n","ň","l","r","ř"].includes(i)||["f","ţ"].includes(s)&&this.getCons(["stop","unvoiced"],["affric","unvoiced"]).includes(i)||["v","ḑ"].includes(s)&&this.getCons(["stop","voiced"],["affric","voiced"]).includes(i)||["f","v","ţ","ḑ"].includes(s)&&["r","l","w","y","ř","m","n","ň"].includes(i)||"ļ"===s&&this.getCons(["stop","unvoiced"],["affric","unvoiced"],["nasal"]).includes(i)||"ļ"===s&&["w","y"].includes(i)||"h"===s&&["l","r","m","n","w"].includes(i)||["m","n"].includes(s)&&["l","r","w","y","ř"].includes(i)||"ň"===s&&["l","r","w"].includes(i)||["l","r"].includes(s)&&["w","y"].includes(i))return!0}else if(3===t.length){var n=t.charAt(0),o=t.charAt(1),a=t.charAt(2),l=n+o;if(["ps","pš","ks","kš"].includes(l)&&this.getCons(["stop","unvoiced"],["fric","nonsibil","unvoiced"],["affric","unvoiced"]).includes(a)||["bz","bž","gz","gž"].includes(l)&&this.getCons(["stop","voiced"],["fric","nonsibil","voiced"],["affric","voiced"]).includes(a)||["ps","pš","ks","kš","bz","bž","gz","gž"].includes(l)&&["m","n","ň","r","l","w","y","ř","v"].includes(a)||["p","b","t","d","k","g"].includes(n)&&["l","r"].includes(o)&&["w","y"].includes(a)||["p","t","k"].includes(n)&&"ç"===o&&["m","n","ň"].includes(a)||["p","k"].includes(n)&&["f","t"].includes(o)&&["y","w"].includes(a)||["p","t"].includes(o)&&"ļ"===o&&["w","y"].includes(a)||["s","š","ç"].includes(n)&&["p","t","k"].includes(o)&&["r","l","w","y","ř"].includes(a)||["z","ž"].includes(n)&&["b","d","g"].includes(o)&&["r","l","w","y","ř"].includes(a)||["s","z","š","ž","ç"].includes(n)&&["m","n"].includes(o)&&["w","y"].includes(a)||["s","z","š","ž","ç"].includes(n)&&"ň"===o&&"w"===a||["hlw","hrw","hmw","hnw","hmy","hny"].includes(t)||["c","č"].includes(n)&&["p","t","k"].includes(o)&&["r","l","w","y","ř"].includes(a)||["ẓ","j"].includes(n)&&["b","d","g"].includes(o)&&["r","l","w","y","ř"].includes(a)||["c","ẓ","č","j"].includes(n)&&["m","n"].includes(o)&&["w","y"].includes(a)||["c","ẓ","č","j"].includes(n)&&"ň"===o&&"w"===a||["flw","ţly","fly","ţly"].includes(t)||["xp","xt"].includes(l)&&["l","r","w","y"].includes(a)||["xm","xn"].includes(l)&&["w","y"].includes(a)||["xc","xč"].includes(l)&&"w"===a)return!0}else if(4===t.length){var r=t.charAt(0),h=t.charAt(1),c=t.charAt(2),d=t.charAt(3);if(["p","k"].includes(r)&&["s","š"].includes(h)&&["p","t","k"].includes(c)&&["r","l","w","y","ř"].includes(d)||["b","g"].includes(r)&&["z","ž"].includes(h)&&["b","d","g"].includes(c)&&["r","l","w","y","ř"].includes(d)||["s","š","ç","c","č"].includes(r)&&["p","t","k"].includes(h)&&"l"===c&&"y"===d||["z","ž","ẓ","j"].includes(r)&&["b","d","g"].includes(h)&&"l"===c&&"y"===d)return!0}return!1}return!1},allowedAtEnd(e){if(this.consAllowed(e)){var t=this.removeDuplicate(e);if(1==t.length){if("w"!==t&&"y"!==t&&"'"!==t)return!0}else if(2==t.length){var s=t.charAt(0),i=t.charAt(1);if(["p","t","k"].includes(s)&&["f","ţ","s","š","ç","x","h","ļ"].includes(i)||["b","d","g"].includes(s)&&["v","ḑ","z","ž"].includes(i)||["k","p"].includes(s)&&"t"===i||["g","b"].includes(s)&&"d"===i||["s","š"].includes(s)&&["p","t","k"].includes(i)||["z","ž"].includes(s)&&["b","d","g"].includes(i)||["c","č"].includes(s)&&["t","k"].includes(i)||["ẓ","j"].includes(s)&&["d","g"].includes(i)||"f"===s&&["t","k","s","š","ç"].includes(i)||"v"===s&&["d","g","z","ž"].includes(i)||"ţ"===s&&["t","k"].includes(i)||"ḑ"===s&&["d","g"].includes(i)||["ļ","x"].includes(s)&&["p","t","k"].includes(i)||["m","n"].includes(s)&&["p","b","t","d","k","g","f","v","ţ","ḑ","s","z","š","ž","ç","x","h","ļ"].includes(i)||"ň"===s||"r"===s&&"w"!==i&&"y"!==i&&"'"!==i||"l"===s&&!["'","w","y","r","ň"].includes(i)||s===i&&!["p","t","k","b","d","g","'"].includes(s))return!0}else if(3==t.length){var n=t.charAt(0),o=t.charAt(1),a=t.charAt(2);if("p"===o&&(["r","ř","l"].includes(n)&&["t","k","f","ţ","x","s","š","h","ļ","ç"].includes(a)||["m","ň"].includes(n)&&["h","ļ","ç"].includes(a)||["s","š","ç"].includes(n)&&["f","ţ","s","š","ļ","ç"].includes(a))||"t"===o&&(["l","r","ř"].includes(n)&&["k","f","x","h","ļ","ç"].includes(a)||"n"===n&&["k","f","x","h"].includes(a)||["m","ň","s","š","ç"].includes(n)&&["h","ļ","ç"].includes(a))||"k"===o&&(["l","r","ř"].includes(n)&&["t","f","ţ","s","š","h","ç"].includes(a)||["n","f","ţ","l"].includes(n)&&["h","ç"].includes(a)||"m"===n&&["f","ţ","h","ç"].includes(a)||["s","š","ç"].includes(n)&&["f","ţ","s","š","h","ç"].includes(a))||"b"===o&&(["r","ř"].includes(n)&&["d","g","v","ḑ","z","ž"].includes(a)||"l"===n&&["v","ḑ","z","ž"].includes(a))||"d"===o&&["r","ř"].includes(n)&&["b","g","v"].includes(a)||"g"===o&&(["r","ř"].includes(n)&&["b","d","v","ḑ","z","ž"].includes(a)||"l"===n&&["v","ḑ","z","ž"].includes(a))||"f"===o&&(["l","r","ř","m","ň"].includes(n)&&["t","k","f","s","š"].includes(a)||["p","t","k"].includes(n)&&["k","f"].includes(a)||"f"===n&&["t","k","s","š"].includes(a))||"ţ"===o&&(["p","k","r","l","ř","m","n","ň"].includes(n)&&["t","k","ţ"].includes(a)||"ţ"===n&&["t","k"].includes(a))||"x"===o&&(["r","l","ř"].includes(n)&&["t","x"].includes(a)||["p","t","f","s","š","n","m"].includes(n)&&"x"===a||"x"===n&&"t"===a)||"ļ"===o&&(["p","t","r","ř","m","n","ň"].includes(n)&&["t","k","ļ"].includes(a)||["ļ","l"].includes(n)&&["t","k"].includes(a))||"s"===o&&(["r","l","ř","m","n","ň","p","k","f"].includes(n)&&["p","t","k","f","ţ","x","s"].includes(a)||"ţ"===n&&["p","t","k","s"].includes(a)||"s"===n&&["p","t","k","f","ţ","x"].includes(a))||"š"===o&&(["r","l","ř","m","n","ň","p","k","f"].includes(n)&&["p","t","k","f","ţ","x","š"].includes(a)||"ţ"===n&&["p","t","k","š"].includes(a)||"š"===n&&["p","t","k","f","ţ","x"].includes(a))||"v"===o&&(["r","ř","l"].includes(n)&&["v","z","ž"].includes(a)||["b","g","m","ň"].includes(n)&&"v"===a||"v"===n&&["z","ž"].includes(a))||"ḑ"===o&&["b","g","r","ř","l","n","m","ň"].includes(n)&&"ḑ"===a||"z"===o&&(["r","ř","l","n","m","ň"].includes(n)&&["b","d","g","z"].includes(a)||["b","g","v"].includes(n)&&"z"===a||"z"===n&&["b","d","g"].includes(a))||"ž"===o&&(["r","ř","l","n","m","ň"].includes(n)&&["b","d","g","ž"].includes(a)||["b","g","v"].includes(n)&&"ž"===a||"ž"===n&&["b","d","g"].includes(a))||"c"===o&&["r","ř","l"].includes(n)&&["t","k","c","h"].includes(a)||"č"===o&&["r","ř","l"].includes(n)&&["t","k","č","h"].includes(a)||"ẓ"===o&&["r","ř","l"].includes(n)&&["d","g","ẓ"].includes(a)||"j"===o&&["r","ř","l"].includes(n)&&["d","g","j"].includes(a)||"m"===o&&(["r","l","ř"].includes(n)&&["p","t","k","b","d","f","ţ","x","s","š","v","ḑ","z","ž","m","ļ","ç"].includes(a)||"m"===n&&["p","t","k","b","d","f","ţ","x","s","š","v","ḑ","z","ž","ļ","ç"].includes(a))||"n"===o&&(["r","ř"].includes(n)&&["t","k","d","g","f","ţ","x","s","š","v","ḑ","z","ž","n","ļ","ç"].includes(a)||"l"===n&&["t","k","d","g","ţ","s","š","z","ž","ļ","ç"].includes(a)||"n"===n&&["t","k","d","g","f","ţ","x","s","š","v","ḑ","z","ž","ļ","ç"].includes(a))||"l"===o&&"l"===n&&["p","t","k","b","d","g","f","ţ","x","s","š","v","ḑ","z","ž","c","č","ẓ","j","m","n","ň","ç"].includes(a)||["r","ř"].includes(o)&&["r","ř"].includes(n)&&["p","t","k","b","d","g","f","ţ","x","s","š","v","ḑ","z","ž","c","č","ẓ","j","m","n","ň","l","ļ","ç"].includes(a)||"ç"===o&&(["p","t","k","m","n","ň","r","l","ř"].includes(n)&&["t","k","ç"].includes(a)||"ç"===n&&["t","k"].includes(a)))return!0}else if(4==t.length){var l=t.charAt(0),r=t.charAt(1),h=t.charAt(2),c=r+h,d=t.charAt(3);if((["l","r","ř"].includes(l)&&(["tç","pf","fs","fš"].includes(c)||["k","p"].includes(r)&&["s","š","ţ","ç"].includes(h))||"r"===l&&(["n","ň","m"].includes(r)&&["s","š","ţ","ç"].includes(h)||["ň","m"].includes(r)&&"f"===h))&&["t","k"].includes(d))return!0}return!1}return!1},consAllowed(e){for(var t in e.slice(0,-1)){let s=e.charAt(t),i=e.charAt(t+1),n=e.charAt(t+2);if("'"!=s&&e.split("'").length>=2||e.split("'").length>=3)return!1;if(["t","d"].includes(s)&&["s","z","š","ž","c","ẓ","č","j","ţ","ḑ"].includes(i))return!1;if(["k","g"].includes(s)&&["x","ň"].includes(i))return!1;if(["kg","gk","td","dt","pb","bp"].includes(s+i))return!1;if(["fv","vf","ţḑ","ḑţ","cẓ","ẓc","čj","jč","čc","jc","čẓ","jẓ"].includes(s+i))return!1;if(["šc","šẓ","žc","žẓ","sẓ"].includes(s+i))return!1;if(s!=i&&["s","š","z","ž"].includes(s)&&["s","š","z","ž"].includes(i))return!1;if(["c","ẓ","č","j"].includes(s)&&["s","š","z","ž"].includes(i))return!1;if("ç"==s&&["s","z","š","ž","ẓ","j","ļ","h"].includes(i))return!1;if("ç"==i&&["c","ẓ","č","j","ļ","h","x"].includes(s))return!1;if("n"==s&&["c","č","ẓ","j"].includes(i))return!1;if("m"==s&&["b","p"].includes(i)&&["f","v","ţ","ḑ","t","d","s","z","š","ž"].includes(n))return!1;if("n"==s&&["k","g"].includes(i)&&["s","z","š","ž"].includes(n))return!1;if("n"==s&&["p","b"].includes(i))return!1;if("n"==s&&["f","v"].includes(i)&&""!=n)return!1;if("ň"==s&&["g","k","x","y"].includes(i))return!1;if("x"==s&&["s","z","š","ž","ç","g","ļ","ň","y","h","ř"].includes(i))return!1;if("ļ"==s&&["s","z","š","ž","h","ç"].includes(i))return!1;if("ļ"==i&&["b","d","g","h","ç"].includes(s))return!1;if(""==n&&"h"==i&&["ļ","x","ç"].includes(s))return!1;if("ř"==i&&["r","h"].includes(s))return!1;if(s+i=="řr")return!1;if(["w","y"].includes(s)&&""!=i)return!1}return!0},markStress(e,t){if(t.includes("'"))for(let n=t.length;n--;)if("'"==t.charAt(n)&&n!=t.length-1&&(console.log(t.charAt(n-1)),["a","e","i","o","u","ä","ë","ö","ü"].includes(t.charAt(n-1))&&0!=n&&(console.log(t,t.charAt(n-1)),!["a","e","i","o","u","ä","ë","ö","ü"].includes(t.charAt(n+1))))){let e=1;while(!["a","e","i","o","u","ä","ë","ö","ü"].includes(t.charAt(n+e)))e+=1;let s=t.slice(n+1,n+e);console.log(s),this.allowedAtStart(s)||(t=t.slice(0,n)+t.slice(n+1),t=["a","e","i","o","u","ä","ë","ö","ü"].includes(t.charAt(n-2))&&n>=2?t.slice(0,n-1)+"'"+t.slice(n-1):t.slice(0,n-1)+t.charAt(n-1)+"'"+t.slice(n-1))}var s=t.match(/(?:ai|ei|ëi|oi|ui|au|eu|ëu|ou|iu|[aeiouäëöü])/gi);if(0===e&&s.length>1){for(let n=t.length-1;n>=0;n--)if(["a","e","i","o","u","ä","ë","ö","ü"].includes(t.charAt(n))){t=this.sDip.includes(t.charAt(n-1)+t.charAt(n))?t.substring(0,n-1)+this.sAccent[t.charAt(n-1)]+t.substring(n):t.substring(0,n)+this.sAccent[t.charAt(n)]+t.substring(n+1);break}}else if(2===e){var i=0;for(let e=t.length-1;e>=0;e--)if(["a","e","i","o","u","ä","ë","ö","ü"].includes(t.charAt(e))){if(2==i){t=this.sDip.includes(t.charAt(e-1)+t.charAt(e))?t.substring(0,e-1)+this.sAccent[t.charAt(e-1)]+t.substring(e):t.substring(0,e)+this.sAccent[t.charAt(e)]+t.substring(e+1);break}this.sDip.includes(t.charAt(e-1)+t.charAt(e))||i++}}return t},recalcVowels(e){return e.replaceAll("yia","yuä").replaceAll("yie","yuë").replaceAll("yio","yüä").replaceAll("yiö","yüë").replaceAll("wuö","wöë").replaceAll("wuo","wöä").replaceAll("wue","wië").replaceAll("wua","wiä")},finalCalcs(){var e="";if(e=this.slots[9],this.slot9gStop(),"3"!=this.gOptions.shcut&&(""!==this.slots[0]||"a"!==this.slots[1]||this.slotVIIshortcut||this.allowedAtStart(this.slots[2])&&(this.slots[1]="",this.cut[0]=!0),"a"===this.slots[7]&&"asp"!=this.gOptions.vn&&"l"===this.slots[5]&&"h"!=this.slots[8]&&this.settings["Miscellaneous"].s8[1]?(this.slots[10]=this.slots[8],this.slots[5]=this.slots[8],this.slots[8]="",this.eightSix=!0,this.cut[2]=!0):this.eightSix=!1,"a"===this.slots[7]&&("h"===this.slots[8]||""===this.slots[8])&&(this.slots[7]="",this.slots[8]="",this.cut[2]=!0,"a"===this.slots[9]))){var t,s=!0;0==this.gOptions.VIIafx.length&&this.gOptions.Vafx.length==0+(this.slotVIIshortcut&&1)&&this.shortcutting?"PRN"==this.gOptions.c&&(this.sDip.includes(this.slots[1])||Object.keys(this.sAccent).includes(this.slots[1]))?s=!1:t=this.slots[2]:this.gOptions.VIIafx.length==0+(this.slotVIIshortcut&&1)&&this.shortcutting?s=!1:t=this.gOptions.VIIafx.length==0+(this.slotVIIshortcut&&1)?this.slots[5]:this.gOptions.VIIafx[this.gOptions.VIIafx.length-1][0],s&&this.allowedAtEnd(t)&&(this.slots[9]="",this.cut[1]=!0)}(()=>{this.ithkword=this.slots.slice(0,-1).join("")})(),this.ithkword=this.recalcVowels(this.ithkword);var i=this.ithkword.match(/(?:ai|ei|ëi|oi|ui|au|eu|ëu|ou|iu|[aeiouäëöü])/gi),n=0;n="0"!=this.gOptions.concat?"'"===e.charAt(e.length-1)||this.cut[2]&&this.cut[1]&&"THM"==this.gOptions.c&&"0"!=this.gOptions.concat&&0==this.gOptions.VIIafx.length&&this.shortcutting&&(this.sDip.includes(this.slots[1])||Object.keys(this.sAccent).includes(this.slots[1]))?0:1:["UNF/K","UNF/C","FRM"].indexOf(this.gOptions.rel);while(i.length<=n){var o=1==this.cut[1]?1:1==this.cut[0]?0:1==this.cut[2]?2:null,a=[1,9,7];7===a[o]&&(this.slots[8]="h"),this.slots[a[o]]="a",this.cut[o]=!1,(()=>{this.ithkword=this.slots.slice(0,-1).join("")})(),i=this.ithkword.match(/(?:ai|ei|ëi|oi|ui|au|eu|ëu|ou|iu|[aeiouäëöü])/gi)}this.cut[1]&&this.calculateEJ&&(this.ithkword+="a"),this.ithkword=this.markStress(n,this.ithkword)},glossCalcs(){if(this.gloss="",this.fullGloss="","0"!=this.gOptions.concat&&(this.gloss+="T"+this.gOptions.concat+"-",this.fullGloss+="T"+this.gOptions.concat+"-"),"normal"==this.wordType?(this.gloss+="S"+this.gOptions.stem.charAt(1),"CPT"===this.gOptions.ver&&(this.gloss+=".CPT"),this.fullGloss+="S"+this.gOptions.stem.charAt(1)+"."+this.gOptions.ver):"refRoot"==this.wordType?(this.gloss+="CPT"==this.gOptions.ver?"CPT-":"",this.fullGloss+=this.gOptions.ver+"-"):"affRoot"==this.wordType&&(this.gloss+="CPT"==this.gOptions.ver?"CPT":"",this.gloss+="CPT"==this.gOptions.ver&&"DYN"==this.gOptions.func?".":"",this.gloss+="DYN"==this.gOptions.func?"DYN":"",this.gloss+="CPT"==this.gOptions.ver||"DYN"==this.gOptions.func?"-":"",this.fullGloss+=this.gOptions.ver+"."+this.gOptions.func+"-"),this.shortcutting){var e=(this.gOptions.plex+this.gOptions.simil+this.gOptions.cctd).slice(0,3);"normal"==this.wordType&&(this.fullGloss+="."),this.fullGloss+=this.gOptions.affil+"."+e+"."+this.gOptions.ext+"."+this.gOptions.persp+"."+this.gOptions.ess;var t=[];"CSL"!=this.gOptions.affil&&t.push(this.gOptions.affil),"UPX"!=e&&t.push(e),"DEL"!=this.gOptions.ext&&t.push(this.gOptions.ext),"M"!=this.gOptions.persp&&t.push(this.gOptions.persp),"NRM"!=this.gOptions.ess&&t.push(this.gOptions.ess),t.length>0&&"normal"==this.wordType?this.gloss+="."+t.join("."):t.length>0&&(this.gloss+=t.join(".")+"-"),"refRoot"==this.wordType&&(this.fullGloss+="-")}else if(this.slotVIIshortcut){let e=this.gOptions.VIIafx[this.gOptions.VIIafx.length-1];"r"==e[0]&&"4"==e[1]?(this.gloss+=".'relative negation'",this.fullGloss+=".'relative negation'"):"t"==e[0]&&"4"==e[1]?(this.gloss+=".'previously mentioned'",this.fullGloss+=".'previously mentioned'"):"t"==e[0]&&"5"==e[1]&&(this.gloss+=".'[+head]'",this.fullGloss+=".'[+head]'")}if("normal"==this.wordType)this.gloss+='-"'+this.gOptions.root.toLowerCase()+'"',this.fullGloss+='-"'+this.gOptions.root.toLowerCase()+'"';else if("affRoot"==this.wordType)this.gloss+='"'+this.gOptions.affRoot.toLowerCase()+'"',this.fullGloss+='"'+this.gOptions.affRoot.toLowerCase()+'"';else if("refRoot"==this.wordType){let e=this.refGloss(this.gOptions.ref,this.gOptions.refEff,this.gOptions.refPersp);this.gloss+=e[0],this.fullGloss+=e[1]}if("affRoot"!=this.wordType){var s=[];"STA"!=this.gOptions.func&&s.push(this.gOptions.func),"BSC"!=this.gOptions.spec&&s.push(this.gOptions.spec),"EXS"!=this.gOptions.ctxt&&s.push(this.gOptions.ctxt),s.length>0&&(this.gloss+="-"+s.join(".")),this.fullGloss+="-"+this.gOptions.func+"."+this.gOptions.spec+"."+this.gOptions.ctxt}else this.gloss+="-D"+(this.gOptions.arDegree+1).toString().slice((this.gOptions.arDegree+1).toString().length-1),"EXS"!=this.gOptions.ctxt&&(this.gloss+="."+this.gOptions.ctxt),this.fullGloss+="-D"+(this.gOptions.arDegree+1).toString().slice((this.gOptions.arDegree+1).toString().length-1)+"."+this.gOptions.ctxt;for(var i in this.gOptions.Vafx){let e=this.gOptions.Vafx[i];this.gloss+="-'"+e[0]+"'/"+e[1]+("CA"!=e[1]?{1:"₁",2:"₂",3:"₃",4:"₄"}[e[2]]:""),this.fullGloss+="-'"+e[0]+"'/"+e[1]+("CA"!=e[1]?{1:"₁",2:"₂",3:"₃",4:"₄"}[e[2]]:"")}if(this.shortcutting)this.gOptions.Vafx.length>0&&(this.gloss+="-{Ca}",this.fullGloss+="-{Ca}");else{var n=(this.gOptions.plex+this.gOptions.simil+this.gOptions.cctd).slice(0,3);if(this.eightSix)this.gloss+="-"+this.gOptions.casc,this.fullGloss+="-"+this.gOptions.affil+"."+n+"."+this.gOptions.ext+"."+this.gOptions.persp+"."+this.gOptions.ess,this.fullGloss+="."+this.gOptions[this.gOptions.vn]+"."+("UNF/K"===this.gOptions.rel&&"0"==this.gOptions.concat?this.gOptions.mood:this.gOptions.casc);else{this.fullGloss+="-"+this.gOptions.affil+"."+n+"."+this.gOptions.ext+"."+this.gOptions.persp+"."+this.gOptions.ess;var o=[];"CSL"!=this.gOptions.affil&&o.push(this.gOptions.affil),"UPX"!=n&&o.push(n),"DEL"!=this.gOptions.ext&&o.push(this.gOptions.ext),"M"!=this.gOptions.persp&&o.push(this.gOptions.persp),"NRM"!=this.gOptions.ess&&o.push(this.gOptions.ess),o.length>0?this.gloss+="-"+o.join("."):this.gOptions.Vafx.length>0&&(this.gloss+="-{Ca}")}}if(this.slotVIIshortcut)for(var a in this.gOptions.VIIafx.slice(0,-1)){let e=this.gOptions.VIIafx[a];this.gloss+="-'"+e[0]+"'/"+e[1]+("CA"!=e[1]?{1:"₁",2:"₂",3:"₃",4:"₄"}[e[2]]:""),this.fullGloss+="-'"+e[0]+"'/"+e[1]+("CA"!=e[1]?{1:"₁",2:"₂",3:"₃",4:"₄"}[e[2]]:"")}else for(var l in this.gOptions.VIIafx){let e=this.gOptions.VIIafx[l];this.gloss+="-'"+e[0]+"'/"+e[1]+("CA"!=e[1]?{1:"₁",2:"₂",3:"₃",4:"₄"}[e[2]]:""),this.fullGloss+="-'"+e[0]+"'/"+e[1]+("CA"!=e[1]?{1:"₁",2:"₂",3:"₃",4:"₄"}[e[2]]:"")}if(!this.eightSix){var r=[];"MNO"!==this.gOptions[this.gOptions.vn]&&r.push(this.gOptions[this.gOptions.vn]),"FAC"!==this.gOptions.mood&&"UNF/K"===this.gOptions.rel&&"0"==this.gOptions.concat&&r.push(this.gOptions.mood),"CCN"===this.gOptions.casc||"UNF/K"===this.gOptions.rel&&"0"==this.gOptions.concat||r.push(this.gOptions.casc),r.length>0&&(this.gloss+="-"+r.join(".")),this.fullGloss+="-"+this.gOptions[this.gOptions.vn]+"."+("UNF/K"===this.gOptions.rel&&"0"==this.gOptions.concat?this.gOptions.mood:this.gOptions.casc)}if("UNF/K"===this.gOptions.rel&&"0"==this.gOptions.concat){var h=[];this.fullGloss+="-"+this.gOptions.ill,"ASR"===this.gOptions.ill&&(this.fullGloss+="."+this.gOptions.vld),"ASR"!==this.gOptions.ill&&h.push(this.gOptions.ill),"ASR"===this.gOptions.ill&&h.push(this.gOptions.vld),h.length>0&&(this.gloss+="-"+h.join("."))}else"THM"!==this.gOptions.c&&(this.gloss+="-"+this.gOptions.c),this.fullGloss+="-"+this.gOptions.c;if("0"==this.gOptions.concat&&(this.fullGloss+="\\"+this.gOptions.rel.split("/")[0],"UNF"!==this.gOptions.rel.split("/")[0]&&(this.gloss+="\\"+this.gOptions.rel.split("/")[0])),"3"==this.gOptions.shcut){let e=this.gloss;this.gloss=this.fullGloss,this.fullGloss=e}},refGloss(e,t,s){var i="",n="";return i+="M"==s?"":"[",n+="M"==s?"":"[",i+=e,i+="NEU"==t?"":"."+t,n+=e+"."+t,i+="M"==s?"":"+"+s+"]",n+="M"==s?"":"+"+s+"]",[i,n]},IPAcalcs(){this.ipa="";var e=!1;for(var t in(Object.keys(this.sAccent).includes(this.ithkword.charAt(0))||Object.values(this.sAccent).includes(this.ithkword.charAt(0)))&&(this.ipa+="ʔ"),this.ithkword.split(""))if(e)e=!1;else{let i=this.ithkword.charAt(parseInt(t)-1),n=this.ithkword.charAt(parseInt(t)),o=this.ithkword.charAt(parseInt(t)+1);if(Object.values(this.sAccent).includes(n)&&(this.ipa+="ˈ")," "==n)this.ipa+=" ";else if("n"===n)["k","g","x"].includes(o)?this.ipa+="ŋ":this.ipa+="n";else if("r"===n&&"r"!==o)Object.keys(this.sAccent).includes(o)||Object.values(this.sAccent).includes(o)?this.ipa+="ɾ":this.ipa+="ɹ";else if("x"===n)this.ipa+=this.settings["IPA"][n][1].slice(1,-1),n==o&&(this.ipa+="ː",e=!0);else if("rr"===n+o)this.ipa+="r",e=!0;else if("řř"===n+o)this.ipa+=this.settings["IPA"]["rr"][1].slice(1,-1),e=!0;else if(["hl","hr","hm","hn","hň"].includes(n+o))"Devoiced"==this.settings["IPA"]["hx"][1]?this.ipa+={hl:"ɬ",hr:"ɾ̥",hm:"m̥",hn:"n̥","hň":"ŋ̊"}[n+o]:this.ipa+={hl:"hl",hr:"hɾ",hm:"hm",hn:"hn","hň":"hŋ"}[n+o],e=!0;else if(["ph","th","kh","ch","čh"].includes(n+o)&&(""===this.ithkword.charAt(parseInt(t)+2)||Object.keys(this.sAccent).includes(this.ithkword.charAt(parseInt(t)+2))||Object.values(this.sAccent).includes(this.ithkword.charAt(parseInt(t)+2))))this.ipa+=this.ipaLookup[n],this.ipa+="ʰ",e=!0;else if(n===o&&Object.keys(this.ipaLookup).includes(n))this.ipa+=this.ipaLookup[n],this.ipa+="ː",e=!0;else if(Object.keys(this.sAccent).includes(n)||Object.values(this.sAccent).includes(n)){var s;s=Object.values(this.sAccent).includes(n)?Object.keys(this.sAccent).find((e=>this.sAccent[e]==n)):n,s===o||s===Object.keys(this.sAccent).find((e=>this.sAccent[e]==o))?(this.ipa+="ä"==s?"æ":this.settings["IPA"][s][1].slice(1,-1),this.ipa+="ː",e=!0):["ä","ë"].includes(s)?this.ipa+="ä"==s?"æ":this.settings["IPA"][s][1].slice(1,-1):"a"===s?Object.keys(this.sAccent).includes(i)||Object.values(this.sAccent).includes(i)?this.ipa+="ɑ":this.ipa+=this.settings["IPA"][s][1].slice(1,-1):"e"===s?Object.keys(this.sAccent).includes(o)||Object.values(this.sAccent).includes(o)?this.ipa+="e":this.ipa+=this.settings["IPA"][s][1].slice(1,-1):"i"===s?Object.keys(this.sAccent).includes(o)||Object.values(this.sAccent).includes(o)?this.ipa+="i":this.ipa+="y"==o||"y"==i?"ɪ":this.settings["IPA"][s][1].slice(1,-1):"o"===s?Object.keys(this.sAccent).includes(o)||Object.values(this.sAccent).includes(o)?this.ipa+="o":this.ipa+=this.settings["IPA"][s][1].slice(1,-1):"ö"===s?Object.keys(this.sAccent).includes(o)||Object.values(this.sAccent).includes(o)?this.ipa+="ø":this.ipa+=this.settings["IPA"][s][1].slice(1,-1):"u"===s?Object.keys(this.sAccent).includes(o)||Object.values(this.sAccent).includes(o)?this.ipa+="u":this.ipa+="w"==o||"w"==i?"ʊ":this.settings["IPA"][s][1].slice(1,-1):"ü"===s&&(this.ipa+="w"==o||"w"==i||"y"==o||"y"==i?"ʉ":this.settings["IPA"][s][1].slice(1,-1))}else Object.keys(this.ipaLookup).includes(n)?this.ipa+=this.ipaLookup[n]:this.ipa+="-"}},resetWord(e=null){for(var t in null==e&&(e=this.gDefault),this.gOptions=JSON.parse(JSON.stringify(e)),e)this.updateFromModal(t,JSON.parse(JSON.stringify(e[t])))}},beforeMount(){this.gOptions=JSON.parse(JSON.stringify(this.gDefault)),this.handleSendMessage()},computed:{calculateEJ(){return this.$props.selectedWord!=this.$props.sLength-1&&this.settings["Miscellaneous"].ej[1]&&Object.keys(this.cData).includes(this.$props.nextWord[0].charAt(0))}}};const ms=(0,cs.Z)(gs,[["render",je]]);var bs=ms;const ws={class:"section"};function ys(e,t,s,i,a,l){const r=(0,n.up)("OptionBox");return(0,n.wg)(),(0,n.iD)("div",null,[(0,n._)("div",ws,[(0,n.Wm)(r,{json:a.gData.word,code:"word",onSendMessage:l.handleSendMessage,ref:"word",onModal:l.openModal,class:(0,o.C_)({hidden:"normal"!=a.wordType})},null,8,["json","onSendMessage","onModal","class"])])])}var vs={name:"Ithkuil_v3",components:{OptionBox:ps},props:{listenModal:Array,listenWordtype:String,listenWord:Object},watch:{listenModal(e){this.updateFromModal(e[0],e[1])},listenWordtype(e){this.switchWordType(e)},listenWord(e){for(var t in this.gOptions=JSON.parse(JSON.stringify(e)),e)this.updateFromModal(t,JSON.parse(JSON.stringify(e[t])));this.handleSendMessage(e.root,"root")},ithkword(e){this.$emit("ithkword",[e,this.ipa,this.gloss,this.fullGloss]),this.$emit("gEmit",this.gOptions)},ipa(e){this.$emit("ithkword",[this.ithkword,e,this.gloss,this.fullGloss])},gloss(e){this.$emit("ithkword",[this.ithkword,this.ipa,e,this.fullGloss])},fullGloss(e){this.$emit("ithkword",[this.ithkword,this.ipa,this.gloss,e])}},data(){return{defaultWord:"",settings:{"Category A":{s1:["Setting 1: ","defaultval",["defaultval","Fancy New Value"]]},"Category B":{s2:["Setting 2: ",!1]}},gDefault:{word:""},wordType:"normal",tabGroups:{normal:[["word"]]},gOptions:{},ithkword:"",ipa:"",gloss:"",fullGloss:"",gData:{word:{type:"text",title:"placeholder",popupdesc:"Hopefully this works :)"}}}},methods:{async handleSendMessage(e="",t=""){t&&(this.gOptions[t]=e),this.ithkword=this.gOptions.word,this.settings["Category B"].s2[1]&&(this.ithkword+="AAAA"),this.ipa=this.gOptions.word,this.gloss=this.gOptions.word,this.fullGloss=this.gOptions.word},openModal(e){this.$emit("modal",e)},updateFromModal(e,t){this.$refs[e].updateValue(t)},resetWord(e=null){for(var t in null==e&&(e=this.gDefault),this.gOptions=JSON.parse(JSON.stringify(e)),e)this.updateFromModal(t,JSON.parse(JSON.stringify(e[t])))},switchWordType(e){this.wordType=e,this.handleSendMessage()}},beforeMount(){this.gOptions=JSON.parse(JSON.stringify(this.gDefault)),this.handleSendMessage()}};const Ss=(0,cs.Z)(vs,[["render",ys]]);var Ms=Ss,Ts={name:"App",components:{Ithkuil_v4:bs,Ithkuil_v3:Ms},data(){return{langVer:"4",modalListen:[],wordType:"normal",modalContent:"",modalID:"",modalTabs:[],gOptions:{},gSOptions:{},ithkword:"",gloss:"",fullGloss:"",ipa:"",casePopupStart:"THM",casePopupEnd:"PLM",casePopupTitle:"Allcases",tabGroups:[["root","stem","spec"],["func","ver","ctxt"],["shcut","concat","rel"],["Vafx","VIIafx"],["plex","simil","cctd"],["affil","ext","persp","ess"],["vn","val","pha","eff","lvl","abslvl","asp"],["casc","c"],["mood","ill","vld"]],SRtabGroups:[["affRoot","arDegree"],["spec","func","ver","ctxt"],["shcut","concat","rel"],["Vafx","VIIafx"],["plex","simil","cctd"],["affil","ext","persp","ess"],["vn","val","pha","eff","lvl","abslvl","asp"],["casc","c"],["mood","ill","vld"]],REFtabGroups:[["ref","refEff","refPersp"],["spec","func","ver","ctxt"],["shcut","concat","rel"],["Vafx","VIIafx"],["plex","simil","cctd"],["affil","ext","persp","ess"],["vn","val","pha","eff","lvl","abslvl","asp"],["casc","c"],["mood","ill","vld"]],sentenceOpen:!1,sentence:[],selectedWord:0,deleteWordMode:!1,oldScreenSize:0,hovering:null,isMouseDown:!1,draggedWord:null,settingsClone:{}}},methods:{notAvailableAlert(e){alert(e+" is not available yet!")},openModal(e){let t=!1,s=JSON.parse(JSON.stringify(this.$refs[this.langVer].tabGroups[this.wordType]));this.modalID=e,isNaN(e.charAt(e.length-1))?this.modalContent=this.$refs[this.langVer].gData[e]:this.modalContent=this.$refs[this.langVer].gData[e.slice(0,-1)];for(let i of s)i.includes(e)&&(this.modalTabs=[...i],t=!0);t||(this.modalTabs=[]),document.getElementById("modal").style.display="block","c"===e&&this.changeClassTab("THM","PLM","Allcases")},closeModal(){document.getElementById("modal").style.display="none"},openDropdown(e){document.getElementById(e).classList.toggle("hidden")},closeDropdown(e,t={},s=!1){if(s)document.getElementById(e).classList.add("hidden");else try{t.path[1].id!=e&&document.getElementById(e).classList.add("hidden")}catch{}},updateFromModal(e,t){this.modalListen=[e,t]},scrollToTop(){document.getElementById("modal").scrollTo(0,0)},changeClassTab(e,t,s){this.casePopupStart=e,this.casePopupEnd=t,this.casePopupTitle=s;var i=document.getElementsByClassName("tablinks");for(let n=0;n=650?this.sentenceOpen&&!e?this.closeNav():(this.sentenceOpen=!0,document.getElementById("sidebar").style.width="250px",document.getElementById("sFooter").style.width="250px",document.getElementById("content").style.marginRight="250px",document.getElementById("header").style.marginRight="250px",document.getElementById("footer").style.marginRight="250px",document.getElementById("modal").style.marginRight="250px",document.getElementById("modalToTop").style.right="270px"):(e&&this.closeNav(),this.sentenceOpen=!0,document.getElementById("sidebar").style.width="100%",document.getElementById("sFooter").style.width="100%")},closeNav(){this.sentenceOpen=!1,document.getElementById("sidebar").style.width="0",document.getElementById("sFooter").style.width="0",document.getElementById("content").style.marginRight="0",document.getElementById("header").style.marginRight="0",document.getElementById("footer").style.marginRight="0",document.getElementById("modal").style.marginRight="0",document.getElementById("modalToTop").style.right="20px"},switchWord(e,t=!1){this.deleteWordMode&&!t?confirm("Really delete "+this.sentence[e][0]+(this.sentence[e][3]?" ("+this.sentence[e][3]+")":"")+"?")&&(this.sentence.splice(e,1),0==this.sentence.length&&this.sentence.push([this.$refs[this.langVer].defaultWord,JSON.parse(JSON.stringify(this.$refs[this.langVer].gDefault)),"normal",""]),(this.sentence.length<=this.selectedWord||e=650&&window.innerWidth<650||this.oldScreenSize<650&&window.innerWidth>=650)&&this.sentenceOpen&&this.openNav(!0),this.oldScreenSize=window.innerWidth},hoverChange(e){if(this.hovering=e,this.isMouseDown&&null!==this.draggedWord&&this.draggedWord!==this.hovering){var t=JSON.parse(JSON.stringify(this.sentence[this.draggedWord]));this.sentence.splice(this.draggedWord,1),this.sentence.splice(this.hovering,0,JSON.parse(JSON.stringify(t))),this.selectedWord===this.draggedWord?this.switchWord(this.hovering,!0):this.selectedWord===this.hovering&&this.switchWord(this.draggedWord,!0);let s=document.getElementsByClassName("ta")[this.draggedWord].style.height;document.getElementsByClassName("ta")[this.draggedWord].style.height=document.getElementsByClassName("ta")[e].style.height,document.getElementsByClassName("ta")[e].style.height=s,this.draggedWord=e}},onMouseDownF(){this.deleteWordMode||(this.isMouseDown=!0)},onMouseUpF(){this.deleteWordMode||(this.isMouseDown=!1,this.draggedWord=null)},beginDrag(e){this.deleteWordMode?this.draggedWord=null:this.isMouseDown&&(this.draggedWord=e)},resizeTA(e){e.target.style.height="18px",e.target.style.height=e.target.scrollHeight+"px"},copytoCB(e){try{navigator.clipboard.writeText(e).then((function(){alert("Copied to clipboard successfully")}),(function(){alert("Could not copy to clipboard")}))}catch{alert("Could not copy to clipboard")}},setCookie(e,t,s){const i=new Date;i.setTime(i.getTime()+24*s*60*60*1e3);let n="expires="+i.toUTCString();document.cookie=e+"="+t+";"+n+";path=/"},getCookie(e){let t=e+"=",s=decodeURIComponent(document.cookie),i=s.split(";");for(let n=0;n0){console.log(e.target.files);let t=new FileReader;t.readAsText(e.target.files[0]),t.onload=()=>{try{this.handleImportedWord(JSON.parse(t.result)),this.switchWord(0,!0),document.getElementById("fimport").value=""}catch{alert("Could not import correctly.")}}}},exportToJsonFile(e){let t=JSON.stringify(e),s="data:application/json;charset=utf-8,"+encodeURIComponent(t),i="sentence.json",n=document.createElement("a");n.setAttribute("href",s),n.setAttribute("download",i),n.click()},openFileDialog(){document.getElementById("filab").click()}},beforeMount(){this.sentence.unshift([this.ithkword,JSON.parse(JSON.stringify(this.gOptions)),"normal",""])},directives:{clickOutside:Ie().directive},created(){let e=new URLSearchParams(window.location.search);e.has("v")&&("3"!=e.get("v")?this.langVer="4":this.langVer=e.get("v")),this.oldScreenSize=window.innerWidth,window.addEventListener("resize",this.onScreenResize),window.addEventListener("mousedown",this.onMouseDownF),window.addEventListener("mouseup",this.onMouseUpF),window.addEventListener("touchstart",this.onMouseDownF),window.addEventListener("touchend",this.onMouseUpF)},unmounted(){window.removeEventListener("resize",this.onScreenResize),window.removeEventListener("mousedown",this.onMouseUpF),window.removeEventListener("mouseup",this.onMouseDownF),window.removeEventListener("touchstart",this.onMouseUpF),window.removeEventListener("touchend",this.onMouseDownF)},mounted(){this.settingsClone=JSON.parse(JSON.stringify(this.$refs[this.langVer].settings))}};const Os=(0,cs.Z)(Ts,[["render",Oe]]);var Cs=Os,Is=s(431);(0,Is.z)("/ithkapp/service-worker.js",{ready(){console.log("App is being served from cache by a service worker.\nFor more details, visit https://goo.gl/AFskqB")},registered(){console.log("Service worker has been registered.")},cached(){console.log("Content has been cached for offline use.")},updatefound(){console.log("New content is downloading.")},updated(){console.log("New content is available; please refresh.")},offline(){console.log("No internet connection found. App is running in offline mode.")},error(e){console.error("Error during service worker registration:",e)}}),(0,i.ri)(Cs).mount("#app")}},t={};function s(i){var n=t[i];if(void 0!==n)return n.exports;var o=t[i]={exports:{}};return e[i].call(o.exports,o,o.exports,s),o.exports}s.m=e,function(){var e=[];s.O=function(t,i,n,o){if(!i){var a=1/0;for(c=0;c=o)&&Object.keys(s.O).every((function(e){return s.O[e](i[r])}))?i.splice(r--,1):(l=!1,o0&&e[c-1][2]>o;c--)e[c]=e[c-1];e[c]=[i,n,o]}}(),function(){s.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return s.d(t,{a:t}),t}}(),function(){s.d=function(e,t){for(var i in t)s.o(t,i)&&!s.o(e,i)&&Object.defineProperty(e,i,{enumerable:!0,get:t[i]})}}(),function(){s.g=function(){if("object"===typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"===typeof window)return window}}()}(),function(){s.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}}(),function(){var e={143:0};s.O.j=function(t){return 0===e[t]};var t=function(t,i){var n,o,a=i[0],l=i[1],r=i[2],h=0;if(a.some((function(t){return 0!==e[t]}))){for(n in l)s.o(l,n)&&(s.m[n]=l[n]);if(r)var c=r(s)}for(t&&t(i);h\r\n Ithkapp | {{ithkword}}\r\n \r\n \r\n
\r\n

Ithkapp

\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n Affixual\r\n Modular\r\n Register\r\n Suppletive\r\n Bias\r\n
\r\n
\r\n
\r\n \r\n
\r\n Normal\r\n Affix as Root\r\n Personal-Referential Root\r\n Single/Dual-Referential\r\n Single Referential w/ Case-Stacking\r\n Non-Ithkuil (Borrowed) Word\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n Aspectual\r\n Affixual\r\n Bias\r\n
\r\n
\r\n
\r\n \r\n
\r\n Normal\r\n Personal Reference\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n\r\n gOptions = JSON.parse(JSON.stringify(g))\"\r\n @ithkword=\"(w) => {ithkword = w[0]; ipa = w[1]; gloss = w[2]; fullGloss = w[3]; sentence[selectedWord] = JSON.parse(JSON.stringify([ithkword,gOptions,wordType,sentence[selectedWord][3]]));}\"\r\n :listenModal=\"modalListen\" :listenWordtype=\"wordType\" :listenWord=\"gSOptions\" :selectedWord=\"selectedWord\" :sLength=\"sentence.length\" :nextWord=\"this.sentence[selectedWord+1]\"/>\r\n\r\n gOptions = JSON.parse(JSON.stringify(g))\"\r\n @ithkword=\"(w) => {ithkword = w[0]; ipa = w[1]; gloss = w[2]; fullGloss = w[3]; sentence[selectedWord] = JSON.parse(JSON.stringify([ithkword,gOptions,wordType,sentence[selectedWord][3]]));}\"\r\n :listenModal=\"modalListen\" :listenWord=\"gSOptions\" :listenWordtype=\"wordType\"/>\r\n \r\n
\r\n \r\n\r\n \r\n
\r\n

{{ithkword}}
\r\n [{{ipa}}]
\r\n {{gloss}}

\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n ×\r\n
\r\n
\r\n

Settings

\r\n
\r\n

{{section}}

\r\n \r\n \r\n \r\n \r\n

\r\n
\r\n
\r\n This project on GitHub\r\n
\r\n
\r\n

{{modalContent.title}}

\r\n

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n

{{modalContent.options[option].name}}{{option === option.toString().toUpperCase() && ![\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\"].includes(option.toString()) ? \" (\"+option+\")\" : \"\"}}

\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n

{{modalContent.options[option].name}}{{option === option.toString().toUpperCase() && ![\"0\",\"1\",\"2\",\"3\",\"4\",\"5\",\"6\",\"7\",\"8\",\"9\"].includes(option.toString()) ? \" (\"+option+\")\" : \"\"}}

\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Your sentence:

\r\n

{{concatenateSentence(sentence)}}

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n
\r\n
\r\n ×\r\n

Sentence Menu

\r\n
\r\n
\r\n
\r\n

{{word[0]}}

\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n\r\n\r\n\r\n","\r\n\r\n","\n\n\n\n\n\n","import { render } from \"./optionbox.vue?vue&type=template&id=4abae525&scoped=true\"\nimport script from \"./optionbox.vue?vue&type=script&lang=js\"\nexport * from \"./optionbox.vue?vue&type=script&lang=js\"\n\nimport \"./optionbox.vue?vue&type=style&index=0&id=4abae525&scoped=true&lang=css\"\n\nimport exportComponent from \"C:\\\\Users\\\\nickl\\\\OneDrive\\\\Desktop\\\\School stuff\\\\2022\\\\Digi\\\\ithkapp\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-4abae525\"]])\n\nexport default __exports__","import { render } from \"./4.vue?vue&type=template&id=9b6e3d4e\"\nimport script from \"./4.vue?vue&type=script&lang=js\"\nexport * from \"./4.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"C:\\\\Users\\\\nickl\\\\OneDrive\\\\Desktop\\\\School stuff\\\\2022\\\\Digi\\\\ithkapp\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","\r\n\r\n","import { render } from \"./3.vue?vue&type=template&id=d43e21f2\"\nimport script from \"./3.vue?vue&type=script&lang=js\"\nexport * from \"./3.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"C:\\\\Users\\\\nickl\\\\OneDrive\\\\Desktop\\\\School stuff\\\\2022\\\\Digi\\\\ithkapp\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./App.vue?vue&type=template&id=1f1b9bf6\"\nimport script from \"./App.vue?vue&type=script&lang=js\"\nexport * from \"./App.vue?vue&type=script&lang=js\"\n\nimport \"./App.vue?vue&type=style&index=0&id=1f1b9bf6&lang=css\"\n\nimport exportComponent from \"C:\\\\Users\\\\nickl\\\\OneDrive\\\\Desktop\\\\School stuff\\\\2022\\\\Digi\\\\ithkapp\\\\node_modules\\\\vue-loader\\\\dist\\\\exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","/* eslint-disable no-console */\n\nimport { register } from 'register-service-worker'\n\nif (process.env.NODE_ENV === 'production') {\n register(`${process.env.BASE_URL}service-worker.js`, {\n ready () {\n console.log(\n 'App is being served from cache by a service worker.\\n' +\n 'For more details, visit https://goo.gl/AFskqB'\n )\n },\n registered () {\n console.log('Service worker has been registered.')\n },\n cached () {\n console.log('Content has been cached for offline use.')\n },\n updatefound () {\n console.log('New content is downloading.')\n },\n updated () {\n console.log('New content is available; please refresh.')\n },\n offline () {\n console.log('No internet connection found. App is running in offline mode.')\n },\n error (error) {\n console.error('Error during service worker registration:', error)\n }\n })\n}\n","import { createApp } from 'vue'\r\nimport App from './App.vue'\r\nimport './registerServiceWorker'\r\n\r\ncreateApp(App).mount('#app')\r\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","var deferred = [];\n__webpack_require__.O = function(result, chunkIds, fn, priority) {\n\tif(chunkIds) {\n\t\tpriority = priority || 0;\n\t\tfor(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];\n\t\tdeferred[i] = [chunkIds, fn, priority];\n\t\treturn;\n\t}\n\tvar notFulfilled = Infinity;\n\tfor (var i = 0; i < deferred.length; i++) {\n\t\tvar chunkIds = deferred[i][0];\n\t\tvar fn = deferred[i][1];\n\t\tvar priority = deferred[i][2];\n\t\tvar fulfilled = true;\n\t\tfor (var j = 0; j < chunkIds.length; j++) {\n\t\t\tif ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every(function(key) { return __webpack_require__.O[key](chunkIds[j]); })) {\n\t\t\t\tchunkIds.splice(j--, 1);\n\t\t\t} else {\n\t\t\t\tfulfilled = false;\n\t\t\t\tif(priority < notFulfilled) notFulfilled = priority;\n\t\t\t}\n\t\t}\n\t\tif(fulfilled) {\n\t\t\tdeferred.splice(i--, 1)\n\t\t\tvar r = fn();\n\t\t\tif (r !== undefined) result = r;\n\t\t}\n\t}\n\treturn result;\n};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t143: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n__webpack_require__.O.j = function(chunkId) { return installedChunks[chunkId] === 0; };\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkId] = 0;\n\t}\n\treturn __webpack_require__.O(result);\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkithkapp\"] = self[\"webpackChunkithkapp\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","// startup\n// Load entry module and return exports\n// This entry module depends on other loaded chunks and execution need to be delayed\nvar __webpack_exports__ = __webpack_require__.O(undefined, [998], function() { return __webpack_require__(955); })\n__webpack_exports__ = __webpack_require__.O(__webpack_exports__);\n"],"names":["class","id","_createElementVNode","style","_hoisted_3","_hoisted_5","href","target","_hoisted_65","_hoisted_67","for","_hoisted_69","_hoisted_71","_toDisplayString","$data","_hoisted_2","onClick","$options","title","_createElementBlock","active","includes","event","_createBlock","_component_Ithkuil_v4","ref","onModal","onGEmit","g","JSON","parse","stringify","onIthkword","w","listenModal","listenWordtype","listenWord","selectedWord","sLength","length","nextWord","sentence","_component_Ithkuil_v3","_hoisted_26","_hoisted_28","_hoisted_29","_Fragment","_renderList","tabcode","key","$refs","gData","isNaN","slice","_hoisted_32","hidden","_hoisted_33","Object","keys","section","setOpt","settings","onChange","handleSendMessage","spOpt","type","_hoisted_36","_hoisted_37","_hoisted_38","_hoisted_39","innerHTML","popupdesc","_hoisted_42","_hoisted_44","options","indexOf","casePopupStart","casePopupEnd","option","modalSelected","gOptions","name","toString","toUpperCase","desc","image","src","alt","_hoisted_50","_hoisted_51","_hoisted_52","_hoisted_53","_hoisted_55","_hoisted_56","_hoisted_59","word","index","deletable","dragging","onMouseover","onMouseleave","onMousemove","onTouchstart","placeholder","$event","onInput","rows","_hoisted_63","accept","push","defaultWord","gDefault","_hoisted_1","_createVNode","_component_OptionBox","json","affRoot","code","onSendMessage","whitelist","cData","concat","arDegree","refEff","refPersp","c","root","stem","spec","func","ver","shcut","rel","disabled","Vafx","aff6","VIIafx","plex","simil","cctd","affil","ext","persp","ess","modAppliesTo","modNumber","cn","mood","casc","_hoisted_4","vn","val","vn2","pha","eff","lvl","asp","vn3","_hoisted_6","vh","wordType","modScope","v4n","suppType","ctxt","show","ill","vld","affixjunct","reqAff","initialAffScope","otherAffScope","affScopeOf","register","regStartOrEnd","refAffix","twoCs","twoRefs","bias","freeType","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_19","_hoisted_20","_hoisted_21","_hoisted_24","_hoisted_25","_hoisted_27","_hoisted_30","_hoisted_31","_hoisted_34","_hoisted_35","_hoisted_40","_hoisted_41","_hoisted_45","value","_hoisted_75","_hoisted_79","$emit","$props","maxlength","affix","calc6","_hoisted_58","pop","opt","short","affixes","every","e","_hoisted_70","_hoisted_73","text","_hoisted_74","_hoisted_77","split","x","toLowerCase","y","_hoisted_78","_hoisted_81","_hoisted_82","_hoisted_66","props","String","Boolean","Array","Function","data","computed","OBclass","error","this","disabledbox","notShown","mounted","methods","updateValue","toUpdate","i","waitForElm","then","elm","console","log","document","getElementById","selectedIndex","idx","dAffil","dPlex","dSimil","dCctd","dExt","dEss","dPersp","selector","Promise","resolve","querySelector","observer","MutationObserver","disconnect","observe","body","childList","subtree","__exports__","components","OptionBox","Number","watch","arr","updateFromModal","str","switchWordType","obj","property","ithkword","ipa","gloss","fullGloss","grammardata","consdata","sVowels","ipaLookup","shortcutting","shcuttypeA","shcuttypeB","slotVIIshortcut","sDip","sAccent","slots","cut","cascOrMood","eightSix","allographs","tabGroups","async","outval","gCode","replaceAll","afx","calculateWord","IPAcalcs","glossCalcs","calculateAdjunct","notAvailableAlert","al","alert","openModal","reference","output","calculateSlot9","slot9gStop","afxjunctV","afxjunctC","finalvowel","ll","allowedAtEnd","out","lll","k","allowedAtStart","recalcVowels","markStress","ph","calculateSlot8a","calculateSlot8b","asp4","refA","calculateReference","ess2","gla","refGloss","c1","c2","refB","ref2","refEff2","refPersp2","glb","charAt","calculateEJ","Aref","q","p","assign","refAff","pph","consAllowed","calculateSlot3","calculateSlot4","calculateSlot6","shortcutCalcs","calculateSlot1","calculateSlot2","calculateSlot5","calculateSlot7","finalCalcs","phh","lastVII","vowelColumn","insertGStop","j","aff","iAffil","iPlex","iSimil","iCctd","iExt","iEss","iPersp","AFFIL","CONF","EXT","PSPESS","ph1","key1","replace","ph2","key2","oldOut","geminate","prototype","hasOwnProperty","call","l","num","override","ca","pphh","cfound","vowels","endOfWord","getCons","tags","outp","element","removeDuplicate","strin","prevChar","char","consonants","nogem","ra","rb","da","db","dc","dab","qa","qb","qc","qd","lastCons","nogem2","eba","ebb","eca","ecb","ecc","eda","edb","edc","edbc","edd","conson","a","b","stressType","thisword","counter","conscl","wordVowels","match","substring","slot9saved","s8","shortenSlot8","join","cutVal","configgCode","s2c","viaf","s4c","affx","configCode","s6c","s8c","s9c","fullPut","skipnext","values","prevchar","parseInt","nextchar","vwl","find","resetWord","gO","beforeMount","ej","s2","Ithkuil_v4","Ithkuil_v3","langVer","modalListen","modalContent","modalID","modalTabs","gSOptions","casePopupTitle","SRtabGroups","REFtabGroups","sentenceOpen","deleteWordMode","oldScreenSize","hovering","isMouseDown","draggedWord","settingsClone","tGroupFound","tG","display","changeClassTab","closeModal","openDropdown","classList","toggle","closeDropdown","add","path","scrollToTop","scrollTo","cStart","cEnd","cTitle","tablinks","getElementsByClassName","className","concatenateSentence","sent","openNav","window","innerWidth","closeNav","width","marginRight","right","switchWord","confirm","splice","onScreenResize","hoverChange","sW","height","onMouseDownF","onMouseUpF","beginDrag","resizeTA","scrollHeight","copytoCB","navigator","clipboard","writeText","setCookie","cname","cvalue","exdays","d","Date","setTime","getTime","expires","toUTCString","cookie","getCookie","decodedCookie","decodeURIComponent","deleteCookie","handleImportedWord","snt","wID","gopt","uploadJSON","files","reader","FileReader","readAsText","onload","result","exportToJsonFile","jsonData","dataStr","dataUri","encodeURIComponent","exportFileDefaultName","linkElement","createElement","setAttribute","click","openFileDialog","unshift","directives","clickOutside","vClickOutside","created","urlParams","URLSearchParams","location","search","has","get","addEventListener","unmounted","removeEventListener","render","ready","registered","cached","updatefound","updated","offline","createApp","App","mount","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","exports","module","__webpack_modules__","m","deferred","O","chunkIds","fn","priority","notFulfilled","Infinity","fulfilled","r","n","getter","__esModule","definition","o","defineProperty","enumerable","globalThis","prop","installedChunks","chunkId","webpackJsonpCallback","parentChunkLoadingFunction","moreModules","runtime","some","chunkLoadingGlobal","self","forEach","bind","__webpack_exports__"],"sourceRoot":""} \ No newline at end of file diff --git a/dist/service-worker.js b/dist/service-worker.js index 871ae83..26b1bf1 100644 --- a/dist/service-worker.js +++ b/dist/service-worker.js @@ -1,2 +1,2 @@ -if(!self.define){let e,i={};const s=(s,t)=>(s=new URL(s+".js",t).href,i[s]||new Promise((i=>{if("document"in self){const e=document.createElement("script");e.src=s,e.onload=i,document.head.appendChild(e)}else e=s,importScripts(s),i()})).then((()=>{let e=i[s];if(!e)throw new Error(`Module ${s} didn’t register its module`);return e})));self.define=(t,n)=>{const r=e||("document"in self?document.currentScript.src:"")||location.href;if(i[r])return;let o={};const d=e=>s(e,r),l={module:{uri:r},exports:o,require:d};i[r]=Promise.all(t.map((e=>l[e]||d(e)))).then((e=>(n(...e),o)))}}define(["./workbox-79ffe3e0"],(function(e){"use strict";e.setCacheNameDetails({prefix:"ithkapp"}),self.addEventListener("message",(e=>{e.data&&"SKIP_WAITING"===e.data.type&&self.skipWaiting()})),e.precacheAndRoute([{url:"/ithkapp/apple-touch-icon.png",revision:"94d5475d6e0fc5ed045d28203dff6179"},{url:"/ithkapp/css/app.4b03ede8.css",revision:null},{url:"/ithkapp/index.html",revision:"ded077921bc5e0d2daa5663da1e2b535"},{url:"/ithkapp/js/app.0720a71f.js",revision:null},{url:"/ithkapp/js/chunk-vendors.4bdafb4a.js",revision:null},{url:"/ithkapp/manifest.json",revision:"d286426445ef09fb73f50fd547d64795"},{url:"/ithkapp/robots.txt",revision:"b6216d61c03e6ce0c9aea6ca7808f7ca"}],{})})); +if(!self.define){let e,i={};const s=(s,t)=>(s=new URL(s+".js",t).href,i[s]||new Promise((i=>{if("document"in self){const e=document.createElement("script");e.src=s,e.onload=i,document.head.appendChild(e)}else e=s,importScripts(s),i()})).then((()=>{let e=i[s];if(!e)throw new Error(`Module ${s} didn’t register its module`);return e})));self.define=(t,n)=>{const r=e||("document"in self?document.currentScript.src:"")||location.href;if(i[r])return;let o={};const f=e=>s(e,r),l={module:{uri:r},exports:o,require:f};i[r]=Promise.all(t.map((e=>l[e]||f(e)))).then((e=>(n(...e),o)))}}define(["./workbox-79ffe3e0"],(function(e){"use strict";e.setCacheNameDetails({prefix:"ithkapp"}),self.addEventListener("message",(e=>{e.data&&"SKIP_WAITING"===e.data.type&&self.skipWaiting()})),e.precacheAndRoute([{url:"/ithkapp/apple-touch-icon.png",revision:"94d5475d6e0fc5ed045d28203dff6179"},{url:"/ithkapp/css/app.4b03ede8.css",revision:null},{url:"/ithkapp/index.html",revision:"40190fa28998e3eb106e53d42f0bb8b9"},{url:"/ithkapp/js/app.af9f0d81.js",revision:null},{url:"/ithkapp/js/chunk-vendors.4bdafb4a.js",revision:null},{url:"/ithkapp/manifest.json",revision:"d286426445ef09fb73f50fd547d64795"},{url:"/ithkapp/robots.txt",revision:"b6216d61c03e6ce0c9aea6ca7808f7ca"}],{})})); //# sourceMappingURL=service-worker.js.map diff --git a/dist/service-worker.js.map b/dist/service-worker.js.map index fc004b5..4e00f72 100644 --- a/dist/service-worker.js.map +++ b/dist/service-worker.js.map @@ -1 +1 @@ -{"version":3,"file":"service-worker.js","sources":["../../../../../../AppData/Local/Temp/3580af1e128c5fa127c23bc475adc679/service-worker.js"],"sourcesContent":["import {setCacheNameDetails as workbox_core_setCacheNameDetails} from 'C:/Users/nickl/OneDrive/Desktop/School stuff/2022/Digi/ithkapp/node_modules/workbox-core/setCacheNameDetails.mjs';\nimport {precacheAndRoute as workbox_precaching_precacheAndRoute} from 'C:/Users/nickl/OneDrive/Desktop/School stuff/2022/Digi/ithkapp/node_modules/workbox-precaching/precacheAndRoute.mjs';/**\n * Welcome to your Workbox-powered service worker!\n *\n * You'll need to register this file in your web app.\n * See https://goo.gl/nhQhGp\n *\n * The rest of the code is auto-generated. Please don't update this file\n * directly; instead, make changes to your Workbox build configuration\n * and re-run your build process.\n * See https://goo.gl/2aRDsh\n */\n\n\n\n\n\nworkbox_core_setCacheNameDetails({prefix: \"ithkapp\"});\n\n\nself.addEventListener('message', (event) => {\n if (event.data && event.data.type === 'SKIP_WAITING') {\n self.skipWaiting();\n }\n});\n\n\n\n\n/**\n * The precacheAndRoute() method efficiently caches and responds to\n * requests for URLs in the manifest.\n * See https://goo.gl/S9QRab\n */\nworkbox_precaching_precacheAndRoute([\n {\n \"url\": \"/ithkapp/apple-touch-icon.png\",\n \"revision\": \"94d5475d6e0fc5ed045d28203dff6179\"\n },\n {\n \"url\": \"/ithkapp/css/app.4b03ede8.css\",\n \"revision\": null\n },\n {\n \"url\": \"/ithkapp/index.html\",\n \"revision\": \"ded077921bc5e0d2daa5663da1e2b535\"\n },\n {\n \"url\": \"/ithkapp/js/app.0720a71f.js\",\n \"revision\": null\n },\n {\n \"url\": \"/ithkapp/js/chunk-vendors.4bdafb4a.js\",\n \"revision\": null\n },\n {\n \"url\": \"/ithkapp/manifest.json\",\n \"revision\": \"d286426445ef09fb73f50fd547d64795\"\n },\n {\n \"url\": \"/ithkapp/robots.txt\",\n \"revision\": \"b6216d61c03e6ce0c9aea6ca7808f7ca\"\n }\n], {});\n\n\n\n\n\n\n\n\n"],"names":["workbox_core_setCacheNameDetails","prefix","self","addEventListener","event","data","type","skipWaiting","workbox_precaching_precacheAndRoute","url","revision"],"mappings":"0nBAiBAA,EAAAA,oBAAiC,CAACC,OAAQ,YAG1CC,KAAKC,iBAAiB,WAAYC,IAC5BA,EAAMC,MAA4B,iBAApBD,EAAMC,KAAKC,MAC3BJ,KAAKK,aACN,IAWHC,EAAAA,iBAAoC,CAClC,CACEC,IAAO,gCACPC,SAAY,oCAEd,CACED,IAAO,gCACPC,SAAY,MAEd,CACED,IAAO,sBACPC,SAAY,oCAEd,CACED,IAAO,8BACPC,SAAY,MAEd,CACED,IAAO,wCACPC,SAAY,MAEd,CACED,IAAO,yBACPC,SAAY,oCAEd,CACED,IAAO,sBACPC,SAAY,qCAEb,CAAA"} \ No newline at end of file +{"version":3,"file":"service-worker.js","sources":["../../../../../../AppData/Local/Temp/dfb994693e1a93781d7e7e5c9d68dac4/service-worker.js"],"sourcesContent":["import {setCacheNameDetails as workbox_core_setCacheNameDetails} from 'C:/Users/nickl/OneDrive/Desktop/School stuff/2022/Digi/ithkapp/node_modules/workbox-core/setCacheNameDetails.mjs';\nimport {precacheAndRoute as workbox_precaching_precacheAndRoute} from 'C:/Users/nickl/OneDrive/Desktop/School stuff/2022/Digi/ithkapp/node_modules/workbox-precaching/precacheAndRoute.mjs';/**\n * Welcome to your Workbox-powered service worker!\n *\n * You'll need to register this file in your web app.\n * See https://goo.gl/nhQhGp\n *\n * The rest of the code is auto-generated. Please don't update this file\n * directly; instead, make changes to your Workbox build configuration\n * and re-run your build process.\n * See https://goo.gl/2aRDsh\n */\n\n\n\n\n\nworkbox_core_setCacheNameDetails({prefix: \"ithkapp\"});\n\n\nself.addEventListener('message', (event) => {\n if (event.data && event.data.type === 'SKIP_WAITING') {\n self.skipWaiting();\n }\n});\n\n\n\n\n/**\n * The precacheAndRoute() method efficiently caches and responds to\n * requests for URLs in the manifest.\n * See https://goo.gl/S9QRab\n */\nworkbox_precaching_precacheAndRoute([\n {\n \"url\": \"/ithkapp/apple-touch-icon.png\",\n \"revision\": \"94d5475d6e0fc5ed045d28203dff6179\"\n },\n {\n \"url\": \"/ithkapp/css/app.4b03ede8.css\",\n \"revision\": null\n },\n {\n \"url\": \"/ithkapp/index.html\",\n \"revision\": \"40190fa28998e3eb106e53d42f0bb8b9\"\n },\n {\n \"url\": \"/ithkapp/js/app.af9f0d81.js\",\n \"revision\": null\n },\n {\n \"url\": \"/ithkapp/js/chunk-vendors.4bdafb4a.js\",\n \"revision\": null\n },\n {\n \"url\": \"/ithkapp/manifest.json\",\n \"revision\": \"d286426445ef09fb73f50fd547d64795\"\n },\n {\n \"url\": \"/ithkapp/robots.txt\",\n \"revision\": \"b6216d61c03e6ce0c9aea6ca7808f7ca\"\n }\n], {});\n\n\n\n\n\n\n\n\n"],"names":["workbox_core_setCacheNameDetails","prefix","self","addEventListener","event","data","type","skipWaiting","workbox_precaching_precacheAndRoute","url","revision"],"mappings":"0nBAiBAA,EAAAA,oBAAiC,CAACC,OAAQ,YAG1CC,KAAKC,iBAAiB,WAAYC,IAC5BA,EAAMC,MAA4B,iBAApBD,EAAMC,KAAKC,MAC3BJ,KAAKK,aACN,IAWHC,EAAAA,iBAAoC,CAClC,CACEC,IAAO,gCACPC,SAAY,oCAEd,CACED,IAAO,gCACPC,SAAY,MAEd,CACED,IAAO,sBACPC,SAAY,oCAEd,CACED,IAAO,8BACPC,SAAY,MAEd,CACED,IAAO,wCACPC,SAAY,MAEd,CACED,IAAO,yBACPC,SAAY,oCAEd,CACED,IAAO,sBACPC,SAAY,qCAEb,CAAA"} \ No newline at end of file diff --git a/src/qit4/4.vue b/src/qit4/4.vue index 30d9392..544ca0f 100644 --- a/src/qit4/4.vue +++ b/src/qit4/4.vue @@ -3,7 +3,7 @@

Ithkapp (hwirbuvie-ekţgyil)

-

Compatible with the version of New Ithkuil on ithkuil.net. +

Compatible with the version of New Ithkuil on ithkuil.net.
Definitions are a combination of taken from the old Ithkuil III site, taken from the New Ithkuil website, and (occasionally) written by the creator of this site.
All past and current forms of Ithkuil and all official documentation are by John Quijada.
Click on a box's title to learn more about what it means.

@@ -430,6 +430,8 @@ export default { "modular": [["modAppliesTo","modNumber","cn","vh"],["vn","val","pha","eff","lvl"],["vn2","val2","pha2","eff2","lvl2","asp2"],["vn3","val3","pha3","eff3","lvl3","asp3"]], "ref": [["ref","refEff","refPersp","c1"],["twoCs","twoRefs","ref2","refEff2","refPersp2","c2","ess2"]], "refCS": [["ref","refEff","refPersp","c1","spec"],["refAffix","twoCs","c2","ess2"]], + "bias": [], + "free": [], } } }, @@ -1066,7 +1068,7 @@ export default { ["LOC","ATD","ALL","ABL","ORI","IRL","INV","n/a","NAV"], ["CNR","ASS","PER","PRO","PCV","PCR","ELP","n/a","PLM"]]; var pph = ["OBS","REC","PUP","RPR","USP","IMA","CVN","ITU","INF"]; - var pphh = ["DIR","DEC","IRG","VRF","n/a","ADM","POT","HOR","CNJ"]; + var pphh = ["DIR","DEC","IRG","VER","n/a","ADM","POT","HOR","CNJ"]; var cfound = false; if (this.gOptions.rel !== "UNF/K" || this.gOptions.concat != '0' || ["suppletive","ref"].includes(this.wordType)) { for (var i in ph) { diff --git a/src/qit4/grammardata.json b/src/qit4/grammardata.json index 54ac62c..cb69d51 100644 --- a/src/qit4/grammardata.json +++ b/src/qit4/grammardata.json @@ -1094,7 +1094,7 @@ "name":"Interrogative", "desc":"A statement whose purpose is to inquire or seek information from the addressee (i.e., equivalent to an English WH-question)" }, - "VRF":{ + "VER":{ "name":"Verificative", "desc":"A statement whose purpose is to seek/obtain corroboration, confirmation, or verification (i.e., equivalent to a Yes/No question)" }, @@ -1575,7 +1575,7 @@ "desc": "what (a) ...!; how . . .! ; Boy! Did (does) X ever …", "word": "mçt" }, - "ADM": { + "ADS": { "name": "Admissive", "desc": "‘Mm-hm’ ‘Uh-huh’ (said as mere acknowledgement of a statement without any implied agreement with or assent to the statement)", "word": "lļ" @@ -1715,11 +1715,6 @@ "desc": "‘It’s now or never!’", "word": "rrs" }, - "EXP": { - "name": "Experiential", - "desc": "‘Ah!’, ‘Well, now!’ ‘So!’ [Italian ‘Allora!’]", - "word": "pss" - }, "FOR": { "name": "Fortuitous", "desc": "‘It’s just as well that...’ or ‘All’s well that ends well...’", @@ -1775,6 +1770,11 @@ "desc": "‘take it or leave it,’ ‘this is your last chance,’", "word": "msk" }, + "MNF": { + "name": "Manifestive", + "desc": "‘Ah!’, ‘Well, now!’ ‘So!’ [Italian ‘Allora!’]", + "word": "pss" + }, "OPT": { "name": "Optimal", "desc": "prolonged ‘so’ or ‘totally’ as in ‘I so don’t care!’ or ‘That is totally not what I meant.’", @@ -1820,16 +1820,16 @@ "desc": "‘Look at it this way…’ ‘As I see it,…’ ‘In my opinion…’ ‘From my point of view…’", "word": "llm" }, - "RNC": { - "name": "Renunciative", - "desc": "‘So much for...!’ ‘There goes...!’", - "word": "msf" - }, "RPU": { "name": "Repulsive", "desc": "‘Yuck! Ew! How gross!’", "word": "šštļ" }, + "RSG": { + "name": "Resignative", + "desc": "‘So much for...!’ ‘There goes...!’", + "word": "msf" + }, "RVL": { "name": "Revelative", "desc": "‘No wonder…!’ or ‘So that’s why…!’ ‘A-ha!….’ ‘Well, well, well!….’",