@pie-element/math-templated 5.3.4-next.3 → 6.0.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/design.jsx"],"names":["Panel","settings","toggle","createElementFromHTML","htmlString","div","document","createElement","innerHTML","trim","Design","key","value","props","onModelChanged","model","updatedModel","response","index","newModel","responses","slateMarkup","markup","newVal","answer","id","allowSpaces","validationDefault","allowTrailingZerosDefault","ignoreOrderDefault","newResponses","domMarkup","responseAreas","querySelectorAll","forEach","element","dataset","dataIndex","validation","allowTrailingZeros","ignoreOrder","alternates","toString","console","log","processedMarkup","callback","setState","cachedResponses","undefined","nodes","state","newChoices","newCachedResponses","node","keyForNode","data","get","Object","assign","hasOwnProperty","trailing","leading","e","relatedTarget","currentTarget","getParentWithRoleTooltip","depth","parent","offsetParent","getAttribute","getDeepChildDataKeypad","child","children","attributes","parentWithTooltipRole","childWithDataKeypad","activeAnswerBlock","classes","configuration","imageSupport","onConfigurationChanged","uploadSoundSupport","baseInputConfiguration","contentDimensions","prompt","rationale","settingsPanelDisabled","teacherInstructions","language","languageChoices","spellCheck","playerSpellCheck","maxImageWidth","maxImageHeight","mathMlOptions","template","editSource","cIgnoreOrder","cAllowTrailingZeros","partialScoring","maxResponseAreas","errors","extraCSSRules","promptEnabled","rationaleEnabled","spellCheckEnabled","teacherInstructionsEnabled","toolbarEditorPosition","equationEditor","promptError","rationaleError","responseAreasError","teacherInstructionsError","responsesErrors","validationMessage","panelSettings","label","enabled","options","panelProperties","playerSpellCheckEnabled","defaultImageMaxWidth","defaultImageMaxHeight","toolbarOpts","position","getPluginProps","Settings","Properties","promptHolder","handleChange","inputConfiguration","errorText","tooltipContainer","title","tooltip","ALL_PLUGINS","type","respAreaToolbar","error","onHandleAreaChange","onChange","onBlur","responseAreaError","selectContainer","select","event","target","keys","map","responseKey","idx","onResponseChange","onResponseDone","math","controlledKeypadMode","React","Component","PropTypes","object","isRequired","func","shape","add","theme","width","paddingTop","spacing","unit","marginBottom","color","palette","main","fontSize","marginTop","typography","fontWeight","display","alignItems","gap","whiteSpace","maxWidth"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAGA;;AACA;;AACA;;;;;;;;;;;;;;AAEA,IAAQA,KAAR,GAA0BC,kBAA1B,CAAQD,KAAR;AAAA,IAAeE,MAAf,GAA0BD,kBAA1B,CAAeC,MAAf;;AAEA,IAAMC,qBAAqB,GAAG,SAAxBA,qBAAwB,CAACC,UAAD,EAAgB;AAC5C,MAAMC,GAAG,GAAGC,QAAQ,CAACC,aAAT,CAAuB,KAAvB,CAAZ;AACAF,EAAAA,GAAG,CAACG,SAAJ,GAAgBJ,UAAU,CAACK,IAAX,EAAhB;AAEA,SAAOJ,GAAP;AACD,CALD;;IAOaK,M;;;;;;;;;;;;;;;8FAcH,E;qGAUO,UAACC,GAAD,EAAMC,KAAN,EAAgB;AAC7B,wBAAkC,MAAKC,KAAvC;AAAA,UAAQC,cAAR,eAAQA,cAAR;AAAA,UAAwBC,KAAxB,eAAwBA,KAAxB;AACA,UAAMC,YAAY,GAAG,2BAAUD,KAAV,CAArB;AACAC,MAAAA,YAAY,CAACL,GAAD,CAAZ,GAAoBC,KAApB;AACAE,MAAAA,cAAc,CAACE,YAAD,CAAd;AACD,K;yGAEkB,UAACC,QAAD,EAAWC,KAAX,EAAqB;AACtC,yBAAkC,MAAKL,KAAvC;AAAA,UAAQE,KAAR,gBAAQA,KAAR;AAAA,UAAeD,cAAf,gBAAeA,cAAf;;AACA,UAAMK,QAAQ,qBAAQJ,KAAR,CAAd;;AAEAI,MAAAA,QAAQ,CAACC,SAAT,CAAmBF,KAAnB,IAA4BD,QAA5B;AACAH,MAAAA,cAAc,CAACK,QAAD,CAAd;AACD,K;uGAEgB,YAAM;AACrB,yBAAkC,MAAKN,KAAvC;AAAA,UAAQE,KAAR,gBAAQA,KAAR;AAAA,UAAeD,cAAf,gBAAeA,cAAf;AAEAA,MAAAA,cAAc,iCACTC,KADS;AAEZM,QAAAA,WAAW,EAAE,oCAAkBN,KAAK,CAACO,MAAxB,EAAgCP,KAAK,CAACK,SAAtC;AAFD,SAAd;AAID,K;yGAEkB,UAACF,KAAD,EAAQK,MAAR,EAAmB;AACpC,yBAAkC,MAAKV,KAAvC;AAAA,UAAQE,KAAR,gBAAQA,KAAR;AAAA,UAAeD,cAAf,gBAAeA,cAAf;AACA,UAAQM,SAAR,GAAsBL,KAAtB,CAAQK,SAAR;;AAEA,UAAI,CAACA,SAAS,CAACF,KAAD,CAAd,EAAuB;AACrBE,QAAAA,SAAS,CAACF,KAAD,CAAT,GAAmB,CAAC;AAAEM,UAAAA,MAAM,EAAED,MAAM,IAAI,EAApB;AAAwBE,UAAAA,EAAE,EAAE,aAAaP,KAAzC;AAAgDQ,UAAAA,WAAW,EAAE;AAA7D,SAAD,CAAnB;AACD,OAFD,MAEO;AACLN,QAAAA,SAAS,CAACF,KAAD,CAAT,CAAiB,CAAjB,EAAoBM,MAApB,GAA6BD,MAAM,IAAI,EAAvC;AACD;;AAEDT,MAAAA,cAAc,iCAAMC,KAAN;AAAaK,QAAAA,SAAS,EAATA;AAAb,SAAd;AACD,K;2GAEoB,UAACA,SAAD,EAAe;AAClC,YAAKP,KAAL,CAAWC,cAAX,iCAA+B,MAAKD,KAAL,CAAWE,KAA1C;AAAiDK,QAAAA,SAAS,EAATA;AAAjD;AACD,K;iGAEU,UAACE,MAAD,EAAY;AACrB,yBAGI,MAAKT,KAHT;AAAA,4CACEE,KADF;AAAA,UACWK,SADX,sBACWA,SADX;AAAA,UACsBO,iBADtB,sBACsBA,iBADtB;AAAA,UACyCC,yBADzC,sBACyCA,yBADzC;AAAA,UACoEC,kBADpE,sBACoEA,kBADpE;AAAA,UAEEf,cAFF,gBAEEA,cAFF;AAIA,UAAMgB,YAAY,GAAG,EAArB;AACA,UAAMC,SAAS,GAAG5B,qBAAqB,CAACmB,MAAD,CAAvC;AACA,UAAMU,aAAa,GAAGD,SAAS,CAACE,gBAAV,CAA2B,8BAA3B,CAAtB;AAEAD,MAAAA,aAAa,CAACE,OAAd,CAAsB,UAACC,OAAD,EAAUjB,KAAV,EAAoB;AACxC,+BAAoCiB,OAAO,CAACC,OAA5C;AAAA,YAAQxB,KAAR,oBAAQA,KAAR;AAAA,YAAsByB,SAAtB,oBAAenB,KAAf;;AAEA,YAAI,CAACN,KAAL,EAAY;AACVuB,UAAAA,OAAO,CAACC,OAAR,CAAgBxB,KAAhB,GAAwB,EAAxB;AACD;;AAEDkB,QAAAA,YAAY,CAACZ,KAAD,CAAZ,GAAsBE,SAAS,CAACiB,SAAD,CAAT,IAAwB;AAC5CX,UAAAA,WAAW,EAAE,IAD+B;AAE5CY,UAAAA,UAAU,EAAEX,iBAAiB,IAAI,UAFW;AAG5CY,UAAAA,kBAAkB,EAAEX,yBAAyB,IAAI,KAHL;AAI5CY,UAAAA,WAAW,EAAEX,kBAAkB,IAAI,KAJS;AAK5CL,UAAAA,MAAM,EAAE,EALoC;AAM5CiB,UAAAA,UAAU,EAAE;AANgC,SAA9C;AASAN,QAAAA,OAAO,CAACC,OAAR,CAAgBlB,KAAhB,GAAwBA,KAAK,CAACwB,QAAN,EAAxB;AACD,OAjBD;AAmBAC,MAAAA,OAAO,CAACC,GAAR,CAAY,cAAZ,EAA4Bd,YAA5B;AAEA,UAAMe,eAAe,GAAG,gCAAcvB,MAAd,CAAxB;;AAEA,UAAMwB,QAAQ,GAAG,SAAXA,QAAW;AAAA,eACfhC,cAAc,iCACT,MAAKD,KAAL,CAAWE,KADF;AAEZM,UAAAA,WAAW,EAAEU,SAAS,CAACvB,SAFX;AAGZY,UAAAA,SAAS,EAAEU,YAHC;AAIZR,UAAAA,MAAM,EAAEuB;AAJI,WADC;AAAA,OAAjB;;AAQA,YAAKE,QAAL,CAAc;AAAEC,QAAAA,eAAe,EAAEC;AAAnB,OAAd,EAA8CH,QAA9C;AACD,K;2GAEoB,0BACnB,UAACI,KAAD,EAAW;AACT,yBAGI,MAAKrC,KAHT;AAAA,UACWO,SADX,gBACEL,KADF,CACWK,SADX;AAAA,UAEEN,cAFF,gBAEEA,cAFF;AAIA,UAAQkC,eAAR,GAA4B,MAAKG,KAAjC,CAAQH,eAAR;;AAEA,UAAI,CAACE,KAAL,EAAY;AACV;AACD;;AAED,UAAME,UAAU,GAAGhC,SAAS,GAAG,2BAAUA,SAAV,CAAH,GAA0B,EAAtD;AACA,UAAMiC,kBAAkB,GAAGL,eAAe,GAAG,2BAAUA,eAAV,CAAH,GAAgC,EAA1E;AAEAE,MAAAA,KAAK,CAAChB,OAAN,CAAc,UAACoB,IAAD,EAAU;AACtB,YAAMC,UAAU,GAAGD,IAAI,CAACE,IAAL,CAAUC,GAAV,CAAc,OAAd,CAAnB;;AAEA,YAAI,CAACL,UAAU,CAACG,UAAD,CAAX,IAA2BF,kBAAkB,CAACE,UAAD,CAAjD,EAA+D;AAC7DG,UAAAA,MAAM,CAACC,MAAP,CAAcP,UAAd,EAA0B,sBAAKC,kBAAL,EAAyBE,UAAzB,CAA1B;;AAEA,cAAIF,kBAAkB,CAACO,cAAnB,CAAkCL,UAAlC,CAAJ,EAAmD;AACjD,mBAAOF,kBAAkB,CAACE,UAAD,CAAzB;AACD;AACF,SAND,MAMO;AACLG,UAAAA,MAAM,CAACC,MAAP,CAAcN,kBAAd,EAAkC,sBAAKD,UAAL,EAAiBG,UAAjB,CAAlC;;AAEA,cAAIH,UAAU,CAACQ,cAAX,CAA0BL,UAA1B,CAAJ,EAA2C;AACzC,mBAAOH,UAAU,CAACG,UAAD,CAAjB;AACD;AACF;AACF,OAhBD;;AAkBA,UAAMT,QAAQ,GAAG,SAAXA,QAAW;AAAA,eAAMhC,cAAc,iCAAM,MAAKD,KAAL,CAAWE,KAAjB;AAAwBK,UAAAA,SAAS,EAAEgC;AAAnC,WAApB;AAAA,OAAjB;;AAEA,YAAKL,QAAL,CAAc;AAAEC,QAAAA,eAAe,EAAEK;AAAnB,OAAd,EAAuDP,QAAvD;AACD,KApCkB,EAqCnB,GArCmB,EAsCnB;AAAEe,MAAAA,QAAQ,EAAE,KAAZ;AAAmBC,MAAAA,OAAO,EAAE;AAA5B,KAtCmB,C;+FAyCZ,UAACC,CAAD,EAAO;AACd,iBAAyCA,CAAC,IAAI,EAA9C;AAAA,UAAQC,aAAR,QAAQA,aAAR;AAAA,UAAuBC,aAAvB,QAAuBA,aAAvB;;AAEA,eAASC,wBAAT,CAAkC/B,OAAlC,EAAsD;AAAA,YAAXgC,KAAW,uEAAH,CAAG;AACpD;AACA,YAAI,CAAChC,OAAD,IAAYgC,KAAK,IAAI,EAAzB,EAA6B,OAAO,IAAP;AAE7B,YAAMC,MAAM,GAAGjC,OAAO,CAACkC,YAAvB;AAEA,YAAI,CAACD,MAAL,EAAa,OAAO,IAAP;;AAEb,YAAIA,MAAM,CAACE,YAAP,CAAoB,MAApB,MAAgC,SAApC,EAA+C;AAC7C,iBAAOF,MAAP;AACD;;AAED,eAAOF,wBAAwB,CAACE,MAAD,EAASD,KAAK,GAAG,CAAjB,CAA/B;AACD;;AAED,eAASI,sBAAT,CAAgCpC,OAAhC,EAAoD;AAAA;;AAAA,YAAXgC,KAAW,uEAAH,CAAG;AAClD;AACA,YAAI,CAAChC,OAAD,IAAYgC,KAAK,IAAI,CAAzB,EAA4B,OAAO,IAAP;AAE5B,YAAMK,KAAK,GAAGrC,OAAH,aAAGA,OAAH,4CAAGA,OAAO,CAAEsC,QAAZ,sDAAG,kBAAoB,CAApB,CAAd;AAEA,YAAI,CAACD,KAAL,EAAY,OAAO,IAAP;;AAEZ,YAAIA,KAAK,CAACE,UAAN,IAAoBF,KAAK,CAACE,UAAN,CAAiB,aAAjB,CAAxB,EAAyD;AACvD,iBAAOF,KAAP;AACD;;AAED,eAAOD,sBAAsB,CAACC,KAAD,EAAQL,KAAK,GAAG,CAAhB,CAA7B;AACD;;AAED,UAAMQ,qBAAqB,GAAGT,wBAAwB,CAACF,aAAD,CAAtD;AACA,UAAMY,mBAAmB,GAAGD,qBAAqB,GAAGJ,sBAAsB,CAACI,qBAAD,CAAzB,GAAmD,IAApG;;AAEA,UAAI,CAACX,aAAD,IAAkB,CAACC,aAAnB,IAAoC,EAACW,mBAAD,aAACA,mBAAD,eAACA,mBAAmB,CAAEF,UAArB,CAAgC,aAAhC,CAAD,CAAxC,EAAyF;AACvF,cAAK3B,QAAL,CAAc;AAAE8B,UAAAA,iBAAiB,EAAE;AAArB,SAAd;AACD;AACF,K;;;;;;WA5KD,6BAAoB;AAClB,UACWxD,WADX,GAEI,KAAKR,KAFT,CACEE,KADF,CACWM,WADX;AAIA,WAAK0B,QAAL,CAAc;AAAEzB,QAAAA,MAAM,EAAED;AAAV,OAAd;AACD;;;WAwKD,kBAAS;AAAA;;AACP,yBACE,KAAKR,KADP;AAAA,UAAQiE,OAAR,gBAAQA,OAAR;AAAA,UAAiBC,aAAjB,gBAAiBA,aAAjB;AAAA,UAAgCC,YAAhC,gBAAgCA,YAAhC;AAAA,UAA8CjE,KAA9C,gBAA8CA,KAA9C;AAAA,UAAqDkE,sBAArD,gBAAqDA,sBAArD;AAAA,UAA6EnE,cAA7E,gBAA6EA,cAA7E;AAAA,UAA6FoE,kBAA7F,gBAA6FA,kBAA7F;;AAGA,kBAoBIH,aAAa,IAAI,EApBrB;AAAA,wCACEI,sBADF;AAAA,UACEA,sBADF,sCAC2B,EAD3B;AAAA,wCAEEC,iBAFF;AAAA,UAEEA,iBAFF,sCAEsB,EAFtB;AAAA,+BAGEC,MAHF;AAAA,UAGEA,MAHF,6BAGW,EAHX;AAAA,kCAIEC,SAJF;AAAA,UAIEA,SAJF,gCAIc,EAJd;AAAA,UAKEC,qBALF,SAKEA,qBALF;AAAA,wCAMEC,mBANF;AAAA,UAMEA,mBANF,sCAMwB,EANxB;AAAA,iCAOEC,QAPF;AAAA,UAOEA,QAPF,+BAOa,EAPb;AAAA,wCAQEC,eARF;AAAA,UAQEA,eARF,sCAQoB,EARpB;AAAA,mCASEC,UATF;AAAA,UASEA,UATF,iCASe,EATf;AAAA,wCAUEC,gBAVF;AAAA,UAUEA,gBAVF,sCAUqB,EAVrB;AAAA,sCAWEC,aAXF;AAAA,UAWEA,aAXF,oCAWkB,EAXlB;AAAA,uCAYEC,cAZF;AAAA,UAYEA,cAZF,qCAYmB,EAZnB;AAAA,sCAaEC,aAbF;AAAA,UAaEA,aAbF,oCAakB,EAblB;AAAA,iCAcEC,QAdF;AAAA,UAcEA,QAdF,+BAca,EAdb;AAAA,mCAeEC,UAfF;AAAA,UAeEA,UAfF,iCAee,EAff;AAAA,oCAgBEzD,WAhBF;AAAA,UAgBe0D,YAhBf,kCAgB8B,EAhB9B;AAAA,wCAiBE3D,kBAjBF;AAAA,UAiBsB4D,mBAjBtB,sCAiB4C,EAjB5C;AAAA,uCAkBEC,cAlBF;AAAA,UAkBEA,cAlBF,qCAkBmB,EAlBnB;AAAA,UAmBEC,gBAnBF,SAmBEA,gBAnBF;;AAsBA,kBAUItF,KAAK,IAAI,EAVb;AAAA,UACEuF,MADF,SACEA,MADF;AAAA,UAEEC,aAFF,SAEEA,aAFF;AAAA,UAGEC,aAHF,SAGEA,aAHF;AAAA,UAIEC,gBAJF,SAIEA,gBAJF;AAAA,UAKEC,iBALF,SAKEA,iBALF;AAAA,UAMEC,0BANF,SAMEA,0BANF;AAAA,UAOEC,qBAPF,SAOEA,qBAPF;AAAA,UAQExF,SARF,SAQEA,SARF;AAAA,UASEyF,cATF,SASEA,cATF;;AAYA,kBAMIP,MAAM,IAAI,EANd;AAAA,UACUQ,WADV,SACEzB,MADF;AAAA,UAEa0B,cAFb,SAEEzB,SAFF;AAAA,UAGiB0B,kBAHjB,SAGEhF,aAHF;AAAA,UAIuBiF,wBAJvB,SAIEzB,mBAJF;AAAA,kCAKEpE,SALF;AAAA,UAKa8F,eALb,gCAK+B,EAL/B;;AAOA,UAAMC,iBAAiB,GAAG,sCAA0BpC,aAA1B,CAA1B;AAEA,UAAMqC,aAAa,GAAG;AACpB,4BAAoB3B,QAAQ,CAACxF,QAAT,IAAqBC,MAAM,CAACuF,QAAQ,CAAC4B,KAAV,EAAiB,IAAjB,CAD3B;AAEpB5B,QAAAA,QAAQ,EAAEA,QAAQ,CAACxF,QAAT,IAAqBwF,QAAQ,CAAC6B,OAA9B,IAAyC,wBAAS5B,eAAe,CAAC2B,KAAzB,EAAgC3B,eAAe,CAAC6B,OAAhD;AAF/B,OAAtB;AAKA,UAAMC,eAAe,GAAG;AACtBb,QAAAA,0BAA0B,EAAEnB,mBAAmB,CAACvF,QAApB,IAAgCC,MAAM,CAACsF,mBAAmB,CAAC6B,KAArB,CAD5C;AAEtBZ,QAAAA,gBAAgB,EAAEnB,SAAS,CAACrF,QAAV,IAAsBC,MAAM,CAACoF,SAAS,CAAC+B,KAAX,CAFxB;AAGtBb,QAAAA,aAAa,EAAEnB,MAAM,CAACpF,QAAP,IAAmBC,MAAM,CAACmF,MAAM,CAACgC,KAAR,CAHlB;AAItBX,QAAAA,iBAAiB,EAAEf,UAAU,CAAC1F,QAAX,IAAuBC,MAAM,CAACyF,UAAU,CAAC0B,KAAZ,CAJ1B;AAKtBI,QAAAA,uBAAuB,EAAE7B,gBAAgB,CAAC3F,QAAjB,IAA6BC,MAAM,CAAC0F,gBAAgB,CAACyB,KAAlB,CALtC;AAMtB,8BAAsB,CAAApB,UAAU,SAAV,IAAAA,UAAU,WAAV,YAAAA,UAAU,CAAEhG,QAAZ,KAAwBC,MAAM,CAAC+F,UAAU,CAACoB,KAAZ,EAAmB,IAAnB,CAN9B;AAOtBjB,QAAAA,cAAc,EAAEA,cAAc,CAACnG,QAAf,IAA2BC,MAAM,CAACkG,cAAc,CAACiB,KAAhB;AAP3B,OAAxB;AAUA,UAAMK,oBAAoB,GAAG7B,aAAa,IAAIA,aAAa,CAACR,MAA5D;AACA,UAAMsC,qBAAqB,GAAG7B,cAAc,IAAIA,cAAc,CAACT,MAA/D;AAEA,UAAMuC,WAAW,GAAG;AAClBC,QAAAA,QAAQ,EAAEjB,qBAAqB,KAAK,KAA1B,GAAkC,KAAlC,GAA0C;AADlC,OAApB;;AAIA,UAAMkB,cAAc,GAAG,SAAjBA,cAAiB;AAAA,YAACjH,KAAD,uEAAS,EAAT;AAAA,YAAasE,sBAAb,uEAAsC,EAAtC;AAAA,+CAClBA,sBADkB,GAElBtE,KAFkB;AAAA,OAAvB;;AAKA,0BACE,gCAAC,gBAAD,CAAQ,YAAR;AACE,QAAA,aAAa,EAAE0F,aADjB;AAEE,QAAA,UAAU,EAAEnB,iBAFd;AAGE,QAAA,YAAY,EAAEG,qBAHhB;AAIE,QAAA,QAAQ,eACN,gCAAC,KAAD;AACE,UAAA,KAAK,EAAExE,KADT;AAEE,UAAA,aAAa,EAAEgE,aAFjB;AAGE,UAAA,aAAa,EAAE,uBAAC/D,YAAD;AAAA,mBAAkBF,cAAc,CAACE,YAAD,CAAhC;AAAA,WAHjB;AAIE,UAAA,qBAAqB,EAAEiE,sBAJzB;AAKE,UAAA,MAAM,EAAE;AACN8C,YAAAA,QAAQ,EAAEX,aADJ;AAENY,YAAAA,UAAU,EAAER;AAFN;AALV;AALJ,SAiBGb,0BAA0B,iBACzB,gCAAC,wBAAD;AAAgB,QAAA,KAAK,EAAEnB,mBAAmB,CAAC6B,KAA3C;AAAkD,QAAA,SAAS,EAAEvC,OAAO,CAACmD;AAArE,sBACE,gCAAC,wBAAD;AACE,QAAA,SAAS,EAAEnD,OAAO,CAACO,MADrB;AAEE,QAAA,MAAM,EAAEtE,KAAK,CAACyE,mBAAN,IAA6B,EAFvC;AAGE,QAAA,QAAQ,EAAE,kBAAC5E,KAAD;AAAA,iBAAW,MAAI,CAACsH,YAAL,CAAkB,qBAAlB,EAAyCtH,KAAzC,CAAX;AAAA,SAHZ;AAIE,QAAA,YAAY,EAAEoE,YAJhB;AAKE,QAAA,QAAQ,EAAE,KALZ;AAME,QAAA,KAAK,EAAEiC,wBANT;AAOE,QAAA,WAAW,EAAEW,WAPf;AAQE,QAAA,WAAW,EAAEE,cAAc,CAACtC,mBAAD,aAACA,mBAAD,uBAACA,mBAAmB,CAAE2C,kBAAtB,EAA0ChD,sBAA1C,CAR7B;AASE,QAAA,UAAU,EAAEuB,iBATd;AAUE,QAAA,aAAa,EAAGb,aAAa,IAAIA,aAAa,CAACL,mBAAhC,IAAwDkC,oBAVzE;AAWE,QAAA,cAAc,EAAG5B,cAAc,IAAIA,cAAc,CAACN,mBAAlC,IAA0DmC,qBAX5E;AAYE,QAAA,kBAAkB,EAAEzC,kBAZtB;AAaE,QAAA,uBAAuB,EAAE,CAAC;AAAEO,UAAAA,QAAQ,EAAE;AAAZ,SAAD,EAA0B;AAAEA,UAAAA,QAAQ,EAAE;AAAZ,SAA1B,CAb3B;AAcE,QAAA,aAAa,EAAEM;AAdjB,QADF,EAiBGkB,wBAAwB,iBAAI;AAAK,QAAA,SAAS,EAAEnC,OAAO,CAACsD;AAAxB,SAAoCnB,wBAApC,CAjB/B,CAlBJ,EAuCGT,aAAa,iBACZ,gCAAC,wBAAD;AAAgB,QAAA,KAAK,EAAEnB,MAAM,CAACgC,KAA9B;AAAqC,QAAA,SAAS,EAAEvC,OAAO,CAACmD;AAAxD,sBACE,gCAAC,wBAAD;AACE,QAAA,SAAS,EAAEnD,OAAO,CAACO,MADrB;AAEE,QAAA,MAAM,EAAEtE,KAAK,CAACsE,MAFhB;AAGE,QAAA,QAAQ,EAAE,kBAACzE,KAAD;AAAA,iBAAW,MAAI,CAACsH,YAAL,CAAkB,QAAlB,EAA4BtH,KAA5B,CAAX;AAAA,SAHZ;AAIE,QAAA,YAAY,EAAEoE,YAJhB;AAKE,QAAA,QAAQ,EAAE,KALZ;AAME,QAAA,gBAAgB,MANlB;AAOE,QAAA,KAAK,EAAE8B,WAPT;AAQE,QAAA,WAAW,EAAEc,WARf;AASE,QAAA,WAAW,EAAEE,cAAc,CAACtC,mBAAD,aAACA,mBAAD,uBAACA,mBAAmB,CAAE2C,kBAAtB,EAA0ChD,sBAA1C,CAT7B;AAUE,QAAA,UAAU,EAAEuB,iBAVd;AAWE,QAAA,aAAa,EAAEgB,oBAXjB;AAYE,QAAA,cAAc,EAAEC,qBAZlB;AAaE,QAAA,kBAAkB,EAAEzC,kBAbtB;AAcE,QAAA,uBAAuB,EAAE,CAAC;AAAEO,UAAAA,QAAQ,EAAE;AAAZ,SAAD,EAA0B;AAAEA,UAAAA,QAAQ,EAAE;AAAZ,SAA1B,CAd3B;AAeE,QAAA,aAAa,EAAEM;AAfjB,QADF,EAkBGe,WAAW,iBAAI;AAAK,QAAA,SAAS,EAAEhC,OAAO,CAACsD;AAAxB,SAAoCtB,WAApC,CAlBlB,CAxCJ,eA6DE;AAAK,QAAA,SAAS,EAAEhC,OAAO,CAACuD;AAAxB,sBACE,gCAAC,sBAAD;AAAY,QAAA,SAAS,EAAEvD,OAAO,CAACwD,KAA/B;AAAsC,QAAA,SAAS,EAAE;AAAjD,6BADF,eAIE,gCAAC,mBAAD;AACE,QAAA,OAAO,EAAE;AAAEC,UAAAA,OAAO,EAAEzD,OAAO,CAACyD;AAAnB,SADX;AAEE,QAAA,oBAAoB,MAFtB;AAGE,QAAA,oBAAoB,MAHtB;AAIE,QAAA,SAAS,EAAE,OAJb;AAKE,QAAA,KAAK,EAAEpB;AALT,sBAOE,gCAAC,gBAAD;AAAM,QAAA,QAAQ,EAAE,OAAhB;AAAyB,QAAA,KAAK,EAAE;AAAhC,QAPF,CAJF,CA7DF,eA2EE,gCAAC,wBAAD;AACE,QAAA,aAAa,EAAEqB,yBADjB;AAEE,QAAA,WAAW,EAAE;AAAEX,UAAAA,QAAQ,EAAE;AAAZ,SAFf;AAGE,QAAA,UAAU,EAAEnB,iBAHd;AAIE,QAAA,WAAW,EAAEoB,cAAc,CAAC9B,QAAD,aAACA,QAAD,uBAACA,QAAQ,CAAEmC,kBAAX,EAA+BhD,sBAA/B,CAJ7B;AAKE,QAAA,iBAAiB,EAAE;AACjBsD,UAAAA,IAAI,EAAE,gBADW;AAEjBC,UAAAA,eAAe,EAAE,IAFA;AAGjBC,UAAAA,KAAK,EAAE;AAAA,mBAAMzB,eAAN;AAAA,WAHU;AAIjB0B,UAAAA,kBAAkB,EAAE,KAAKA,kBAJR;AAKjBvC,UAAAA,gBAAgB,EAAEA;AALD,SALrB;AAYE,QAAA,SAAS,EAAEvB,OAAO,CAACxD,MAZrB;AAaE,QAAA,MAAM,EAAEP,KAAK,CAACM,WAbhB;AAcE,QAAA,QAAQ,EAAE,KAAKwH,QAdjB;AAeE,QAAA,YAAY,EAAE7D,YAfhB;AAgBE,QAAA,4BAA4B,EAAE,IAhBhC;AAiBE,QAAA,MAAM,EAAE,KAAK8D,MAjBf;AAkBE,QAAA,QAAQ,EAAE,KAlBZ;AAmBE,QAAA,cAAc,EAAE,KAnBlB;AAoBE,QAAA,KAAK,EAAE9B,kBApBT;AAqBE,QAAA,kBAAkB,EAAE9B,kBArBtB;AAsBE,QAAA,uBAAuB,EAAE,CAAC;AAAEO,UAAAA,QAAQ,EAAE;AAAZ,SAAD,EAA0B;AAAEA,UAAAA,QAAQ,EAAE;AAAZ,SAA1B,CAtB3B;AAuBE,QAAA,aAAa,EAAEM;AAvBjB,QA3EF,EAoGGiB,kBAAkB,iBAAI;AAAK,QAAA,SAAS,EAAElC,OAAO,CAACiE;AAAxB,SAA4C/B,kBAA5C,CApGzB,eAsGE,gCAAC,sBAAD;AAAY,QAAA,SAAS,EAAElC,OAAO,CAACwD;AAA/B,2BAtGF,eAwGE,gCAAC,wBAAD;AAAgB,QAAA,KAAK,EAAC,mCAAtB;AAA0D,QAAA,SAAS,EAAExD,OAAO,CAACkE;AAA7E,sBACE,gCAAC,kBAAD;AACE,QAAA,SAAS,EAAElE,OAAO,CAACmE,MADrB;AAEE,QAAA,QAAQ,EAAE,kBAACC,KAAD;AAAA,iBAAW,MAAI,CAAChB,YAAL,CAAkB,gBAAlB,EAAoCgB,KAAK,CAACC,MAAN,CAAavI,KAAjD,CAAX;AAAA,SAFZ;AAGE,QAAA,KAAK,EAAEiG;AAHT,sBAKE,gCAAC,oBAAD;AAAU,QAAA,KAAK,EAAC;AAAhB,2CALF,eAME,gCAAC,oBAAD;AAAU,QAAA,KAAK,EAAC;AAAhB,8BANF,eAOE,gCAAC,oBAAD;AAAU,QAAA,KAAK,EAAC;AAAhB,8BAPF,eAQE,gCAAC,oBAAD;AAAU,QAAA,KAAK,EAAC;AAAhB,+BARF,eASE,gCAAC,oBAAD;AAAU,QAAA,KAAK,EAAE;AAAjB,uBATF,eAUE,gCAAC,oBAAD;AAAU,QAAA,KAAK,EAAE;AAAjB,uBAVF,eAWE,gCAAC,oBAAD;AAAU,QAAA,KAAK,EAAE;AAAjB,uBAXF,eAYE,gCAAC,oBAAD;AAAU,QAAA,KAAK,EAAE;AAAjB,wBAZF,eAaE,gCAAC,oBAAD;AAAU,QAAA,KAAK,EAAE;AAAjB,oBAbF,eAcE,gCAAC,oBAAD;AAAU,QAAA,KAAK,EAAE;AAAjB,4BAdF,eAeE,gCAAC,oBAAD;AAAU,QAAA,KAAK,EAAE;AAAjB,sBAfF,eAgBE,gCAAC,oBAAD;AAAU,QAAA,KAAK,EAAE;AAAjB,0BAhBF,CADF,CAxGF,EA6HGnD,MAAM,CAAC0F,IAAP,CAAYhI,SAAS,IAAI,EAAzB,EAA6BiI,GAA7B,CAAiC,UAACC,WAAD,EAAcC,GAAd,EAAsB;AACtD,YAAMtI,QAAQ,GAAGG,SAAS,CAACmI,GAAD,CAA1B;;AAEA,YAAItI,QAAJ,EAAc;AACZ,8BACE,gCAAC,oBAAD;AACE,YAAA,GAAG,EAAEsI,GADP;AAEE,YAAA,WAAW,EAAEA,GAFf;AAGE,YAAA,IAAI,EAAE1C,cAHR;AAIE,YAAA,QAAQ,EAAE5F,QAJZ;AAKE,YAAA,gBAAgB,EAAE,MAAI,CAACuI,gBALzB;AAME,YAAA,cAAc,EAAE,MAAI,CAACC,cANvB;AAOE,YAAA,KAAK,EAAEF,GAPT;AAQE,YAAA,YAAY,EAAErD,YARhB;AASE,YAAA,mBAAmB,EAAEC,mBATvB;AAUE,YAAA,KAAK,EAAEe,eAAe,IAAIA,eAAe,CAACqC,GAAD;AAV3C,YADF;AAcD;;AAED,eAAO,IAAP;AACD,OArBA,CA7HH,EAoJG9C,gBAAgB,iBACf,gCAAC,wBAAD;AAAgB,QAAA,KAAK,EAAEnB,SAAS,CAAC+B,KAAjC;AAAwC,QAAA,SAAS,EAAEvC,OAAO,CAACmD;AAA3D,sBACE,gCAAC,wBAAD;AACE,QAAA,SAAS,EAAEnD,OAAO,CAACO,MADrB;AAEE,QAAA,MAAM,EAAEtE,KAAK,CAACuE,SAAN,IAAmB,EAF7B;AAGE,QAAA,QAAQ,EAAE,kBAAC1E,KAAD;AAAA,iBAAW,MAAI,CAACsH,YAAL,CAAkB,WAAlB,EAA+BtH,KAA/B,CAAX;AAAA,SAHZ;AAIE,QAAA,YAAY,EAAEoE,YAJhB;AAKE,QAAA,QAAQ,EAAE,KALZ;AAME,QAAA,KAAK,EAAE+B,cANT;AAOE,QAAA,WAAW,EAAEa,WAPf;AAQE,QAAA,WAAW,EAAEE,cAAc,CAACxC,SAAD,aAACA,SAAD,uBAACA,SAAS,CAAE6C,kBAAZ,kCACtBhD,sBADsB;AAEzBuE,UAAAA,IAAI,EAAE;AACJC,YAAAA,oBAAoB,EAAE;AADlB;AAFmB,WAR7B;AAcE,QAAA,UAAU,EAAEjD,iBAdd;AAeE,QAAA,aAAa,EAAGb,aAAa,IAAIA,aAAa,CAACP,SAAhC,IAA8CoC,oBAf/D;AAgBE,QAAA,cAAc,EAAG5B,cAAc,IAAIA,cAAc,CAACR,SAAlC,IAAgDqC,qBAhBlE;AAiBE,QAAA,kBAAkB,EAAEzC,kBAjBtB;AAkBE,QAAA,uBAAuB,EAAE,CAAC;AAAEO,UAAAA,QAAQ,EAAE;AAAZ,SAAD,EAA0B;AAAEA,UAAAA,QAAQ,EAAE;AAAZ,SAA1B,CAlB3B;AAmBE,QAAA,aAAa,EAAEM;AAnBjB,QADF,EAsBGgB,cAAc,iBAAI;AAAK,QAAA,SAAS,EAAEjC,OAAO,CAACsD;AAAxB,SAAoCrB,cAApC,CAtBrB,CArJJ,CADF;AAiLD;;;EAzbyB6C,kBAAMC,S;;;iCAArBnJ,M,eACQ;AACjBK,EAAAA,KAAK,EAAE+I,sBAAUC,MAAV,CAAiBC,UADP;AAEjBjF,EAAAA,aAAa,EAAE+E,sBAAUC,MAAV,CAAiBC,UAFf;AAGjBlF,EAAAA,OAAO,EAAEgF,sBAAUC,MAAV,CAAiBC,UAHT;AAIjBlJ,EAAAA,cAAc,EAAEgJ,sBAAUG,IAAV,CAAeD,UAJd;AAKjB/E,EAAAA,sBAAsB,EAAE6E,sBAAUG,IAAV,CAAeD,UALtB;AAMjBhF,EAAAA,YAAY,EAAE8E,sBAAUI,KAAV,CAAgB;AAC5BC,IAAAA,GAAG,EAAEL,sBAAUG,IAAV,CAAeD,UADQ;AAE5B,cAAQF,sBAAUG,IAAV,CAAeD;AAFK,GAAhB,CANG;AAUjB9E,EAAAA,kBAAkB,EAAE4E,sBAAUC;AAVb,C;;eA2bN,wBAAW,UAACK,KAAD;AAAA,SAAY;AACpCnC,IAAAA,YAAY,EAAE;AACZoC,MAAAA,KAAK,EAAE,MADK;AAEZC,MAAAA,UAAU,EAAEF,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB,CAFrB;AAGZC,MAAAA,YAAY,EAAEL,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB;AAHvB,KADsB;AAMpCnF,IAAAA,MAAM,EAAE;AACNgF,MAAAA,KAAK,EAAE;AADD,KAN4B;AASpCjC,IAAAA,SAAS,EAAE;AACTsC,MAAAA,KAAK,EAAEN,KAAK,CAACO,OAAN,CAAchC,KAAd,CAAoBiC,IADlB;AAETC,MAAAA,QAAQ,EAAE,SAFD;AAGTC,MAAAA,SAAS,EAAEV,KAAK,CAACG,OAAN,CAAcC;AAHhB,KATyB;AAcpCzB,IAAAA,iBAAiB,EAAE;AACjB2B,MAAAA,KAAK,EAAEN,KAAK,CAACO,OAAN,CAAchC,KAAd,CAAoBiC,IADV;AAEjBC,MAAAA,QAAQ,EAAE,SAFO;AAGjBJ,MAAAA,YAAY,EAAEL,KAAK,CAACG,OAAN,CAAcC;AAHX,KAdiB;AAmBpClJ,IAAAA,MAAM,EAAE;AACN+I,MAAAA,KAAK,EAAE,MADD;AAENS,MAAAA,SAAS,EAAEV,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB,CAF1B;AAGNC,MAAAA,YAAY,EAAEL,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB;AAH7B,KAnB4B;AAwBpCxB,IAAAA,eAAe,EAAE;AACfqB,MAAAA,KAAK,EAAE,MADQ;AAEfS,MAAAA,SAAS,EAAEV,KAAK,CAACG,OAAN,CAAcC,IAAd,GAAqB;AAFjB,KAxBmB;AA4BpCvB,IAAAA,MAAM,EAAE;AACNoB,MAAAA,KAAK,EAAE;AADD,KA5B4B;AA+BpC/B,IAAAA,KAAK,EAAE;AACLuC,MAAAA,QAAQ,EAAET,KAAK,CAACW,UAAN,CAAiBF,QAAjB,GAA4B,IADjC;AAELG,MAAAA,UAAU,EAAE;AAFP,KA/B6B;AAmCpC3C,IAAAA,gBAAgB,EAAE;AAChB4C,MAAAA,OAAO,EAAE,MADO;AAEhBC,MAAAA,UAAU,EAAE,QAFI;AAGhBC,MAAAA,GAAG,EAAE;AAHW,KAnCkB;AAwCpC5C,IAAAA,OAAO,EAAE;AACPsC,MAAAA,QAAQ,EAAET,KAAK,CAACW,UAAN,CAAiBF,QAAjB,GAA4B,CAD/B;AAEPO,MAAAA,UAAU,EAAE,KAFL;AAGPC,MAAAA,QAAQ,EAAE;AAHH;AAxC2B,GAAZ;AAAA,CAAX,EA6CX3K,MA7CW,C","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { withStyles } from '@material-ui/core/styles';\nimport Typography from '@material-ui/core/Typography';\nimport Select from '@material-ui/core/Select';\nimport MenuItem from '@material-ui/core/MenuItem';\nimport Info from '@material-ui/icons/Info';\nimport Tooltip from '@material-ui/core/Tooltip';\nimport cloneDeep from 'lodash/cloneDeep';\nimport pick from 'lodash/pick';\nimport throttle from 'lodash/throttle';\nimport { InputContainer, settings, layout } from '@pie-lib/config-ui';\nimport EditableHtml, { ALL_PLUGINS } from '@pie-lib/editable-html';\nimport { dropdown } from '@pie-lib/config-ui';\n\nimport Response from './response';\nimport { processMarkup, createSlateMarkup } from './markupUtils';\nimport { generateValidationMessage } from './utils';\n\nconst { Panel, toggle } = settings;\n\nconst createElementFromHTML = (htmlString) => {\n const div = document.createElement('div');\n div.innerHTML = htmlString.trim();\n\n return div;\n};\n\nexport class Design extends React.Component {\n static propTypes = {\n model: PropTypes.object.isRequired,\n configuration: PropTypes.object.isRequired,\n classes: PropTypes.object.isRequired,\n onModelChanged: PropTypes.func.isRequired,\n onConfigurationChanged: PropTypes.func.isRequired,\n imageSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired,\n }),\n uploadSoundSupport: PropTypes.object,\n };\n\n state = {};\n\n componentDidMount() {\n const {\n model: { slateMarkup },\n } = this.props;\n\n this.setState({ markup: slateMarkup });\n }\n\n handleChange = (key, value) => {\n const { onModelChanged, model } = this.props;\n const updatedModel = cloneDeep(model);\n updatedModel[key] = value;\n onModelChanged(updatedModel);\n };\n\n onResponseChange = (response, index) => {\n const { model, onModelChanged } = this.props;\n const newModel = { ...model };\n\n newModel.responses[index] = response;\n onModelChanged(newModel);\n };\n\n onResponseDone = () => {\n const { model, onModelChanged } = this.props;\n\n onModelChanged({\n ...model,\n slateMarkup: createSlateMarkup(model.markup, model.responses),\n });\n };\n\n onChangeResponse = (index, newVal) => {\n const { model, onModelChanged } = this.props;\n const { responses } = model;\n\n if (!responses[index]) {\n responses[index] = [{ answer: newVal || '', id: 'response' + index, allowSpaces: true }];\n } else {\n responses[index][0].answer = newVal || '';\n }\n\n onModelChanged({ ...model, responses });\n };\n\n onResponsesChanged = (responses) => {\n this.props.onModelChanged({ ...this.props.model, responses });\n };\n\n onChange = (markup) => {\n const {\n model: { responses, validationDefault, allowTrailingZerosDefault, ignoreOrderDefault },\n onModelChanged,\n } = this.props;\n const newResponses = {};\n const domMarkup = createElementFromHTML(markup);\n const responseAreas = domMarkup.querySelectorAll('[data-type=\"math_templated\"]');\n\n responseAreas.forEach((element, index) => {\n const { value, index: dataIndex } = element.dataset;\n\n if (!value) {\n element.dataset.value = '';\n }\n\n newResponses[index] = responses[dataIndex] || {\n allowSpaces: true,\n validation: validationDefault || 'symbolic',\n allowTrailingZeros: allowTrailingZerosDefault || false,\n ignoreOrder: ignoreOrderDefault || false,\n answer: '',\n alternates: {},\n };\n\n element.dataset.index = index.toString();\n });\n\n console.log('newResponses', newResponses);\n\n const processedMarkup = processMarkup(markup);\n\n const callback = () =>\n onModelChanged({\n ...this.props.model,\n slateMarkup: domMarkup.innerHTML,\n responses: newResponses,\n markup: processedMarkup,\n });\n\n this.setState({ cachedResponses: undefined }, callback);\n };\n\n onHandleAreaChange = throttle(\n (nodes) => {\n const {\n model: { responses },\n onModelChanged,\n } = this.props;\n const { cachedResponses } = this.state;\n\n if (!nodes) {\n return;\n }\n\n const newChoices = responses ? cloneDeep(responses) : {};\n const newCachedResponses = cachedResponses ? cloneDeep(cachedResponses) : {};\n\n nodes.forEach((node) => {\n const keyForNode = node.data.get('index');\n\n if (!newChoices[keyForNode] && newCachedResponses[keyForNode]) {\n Object.assign(newChoices, pick(newCachedResponses, keyForNode));\n\n if (newCachedResponses.hasOwnProperty(keyForNode)) {\n delete newCachedResponses[keyForNode];\n }\n } else {\n Object.assign(newCachedResponses, pick(newChoices, keyForNode));\n\n if (newChoices.hasOwnProperty(keyForNode)) {\n delete newChoices[keyForNode];\n }\n }\n });\n\n const callback = () => onModelChanged({ ...this.props.model, responses: newChoices });\n\n this.setState({ cachedResponses: newCachedResponses }, callback);\n },\n 500,\n { trailing: false, leading: true },\n );\n\n onBlur = (e) => {\n const { relatedTarget, currentTarget } = e || {};\n\n function getParentWithRoleTooltip(element, depth = 0) {\n // only run this max 16 times\n if (!element || depth >= 16) return null;\n\n const parent = element.offsetParent;\n\n if (!parent) return null;\n\n if (parent.getAttribute('role') === 'tooltip') {\n return parent;\n }\n\n return getParentWithRoleTooltip(parent, depth + 1);\n }\n\n function getDeepChildDataKeypad(element, depth = 0) {\n // only run this max 4 times\n if (!element || depth >= 4) return null;\n\n const child = element?.children?.[0];\n\n if (!child) return null;\n\n if (child.attributes && child.attributes['data-keypad']) {\n return child;\n }\n\n return getDeepChildDataKeypad(child, depth + 1);\n }\n\n const parentWithTooltipRole = getParentWithRoleTooltip(relatedTarget);\n const childWithDataKeypad = parentWithTooltipRole ? getDeepChildDataKeypad(parentWithTooltipRole) : null;\n\n if (!relatedTarget || !currentTarget || !childWithDataKeypad?.attributes['data-keypad']) {\n this.setState({ activeAnswerBlock: '' });\n }\n };\n\n render() {\n const { classes, configuration, imageSupport, model, onConfigurationChanged, onModelChanged, uploadSoundSupport } =\n this.props;\n\n const {\n baseInputConfiguration = {},\n contentDimensions = {},\n prompt = {},\n rationale = {},\n settingsPanelDisabled,\n teacherInstructions = {},\n language = {},\n languageChoices = {},\n spellCheck = {},\n playerSpellCheck = {},\n maxImageWidth = {},\n maxImageHeight = {},\n mathMlOptions = {},\n template = {},\n editSource = {},\n ignoreOrder: cIgnoreOrder = {},\n allowTrailingZeros: cAllowTrailingZeros = {},\n partialScoring = {},\n maxResponseAreas,\n } = configuration || {};\n\n const {\n errors,\n extraCSSRules,\n promptEnabled,\n rationaleEnabled,\n spellCheckEnabled,\n teacherInstructionsEnabled,\n toolbarEditorPosition,\n responses,\n equationEditor,\n } = model || {};\n\n const {\n prompt: promptError,\n rationale: rationaleError,\n responseAreas: responseAreasError,\n teacherInstructions: teacherInstructionsError,\n responses: responsesErrors = {},\n } = errors || {};\n const validationMessage = generateValidationMessage(configuration);\n\n const panelSettings = {\n 'language.enabled': language.settings && toggle(language.label, true),\n language: language.settings && language.enabled && dropdown(languageChoices.label, languageChoices.options),\n };\n\n const panelProperties = {\n teacherInstructionsEnabled: teacherInstructions.settings && toggle(teacherInstructions.label),\n rationaleEnabled: rationale.settings && toggle(rationale.label),\n promptEnabled: prompt.settings && toggle(prompt.label),\n spellCheckEnabled: spellCheck.settings && toggle(spellCheck.label),\n playerSpellCheckEnabled: playerSpellCheck.settings && toggle(playerSpellCheck.label),\n 'editSource.enabled': editSource?.settings && toggle(editSource.label, true),\n partialScoring: partialScoring.settings && toggle(partialScoring.label),\n };\n\n const defaultImageMaxWidth = maxImageWidth && maxImageWidth.prompt;\n const defaultImageMaxHeight = maxImageHeight && maxImageHeight.prompt;\n\n const toolbarOpts = {\n position: toolbarEditorPosition === 'top' ? 'top' : 'bottom',\n };\n\n const getPluginProps = (props = {}, baseInputConfiguration = {}) => ({\n ...baseInputConfiguration,\n ...props,\n });\n\n return (\n <layout.ConfigLayout\n extraCSSRules={extraCSSRules}\n dimensions={contentDimensions}\n hideSettings={settingsPanelDisabled}\n settings={\n <Panel\n model={model}\n configuration={configuration}\n onChangeModel={(updatedModel) => onModelChanged(updatedModel)}\n onChangeConfiguration={onConfigurationChanged}\n groups={{\n Settings: panelSettings,\n Properties: panelProperties,\n }}\n />\n }\n >\n {teacherInstructionsEnabled && (\n <InputContainer label={teacherInstructions.label} className={classes.promptHolder}>\n <EditableHtml\n className={classes.prompt}\n markup={model.teacherInstructions || ''}\n onChange={(value) => this.handleChange('teacherInstructions', value)}\n imageSupport={imageSupport}\n nonEmpty={false}\n error={teacherInstructionsError}\n toolbarOpts={toolbarOpts}\n pluginProps={getPluginProps(teacherInstructions?.inputConfiguration, baseInputConfiguration)}\n spellCheck={spellCheckEnabled}\n maxImageWidth={(maxImageWidth && maxImageWidth.teacherInstructions) || defaultImageMaxWidth}\n maxImageHeight={(maxImageHeight && maxImageHeight.teacherInstructions) || defaultImageMaxHeight}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n mathMlOptions={mathMlOptions}\n />\n {teacherInstructionsError && <div className={classes.errorText}>{teacherInstructionsError}</div>}\n </InputContainer>\n )}\n\n {promptEnabled && (\n <InputContainer label={prompt.label} className={classes.promptHolder}>\n <EditableHtml\n className={classes.prompt}\n markup={model.prompt}\n onChange={(value) => this.handleChange('prompt', value)}\n imageSupport={imageSupport}\n nonEmpty={false}\n disableUnderline\n error={promptError}\n toolbarOpts={toolbarOpts}\n pluginProps={getPluginProps(teacherInstructions?.inputConfiguration, baseInputConfiguration)}\n spellCheck={spellCheckEnabled}\n maxImageWidth={defaultImageMaxWidth}\n maxImageHeight={defaultImageMaxHeight}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n mathMlOptions={mathMlOptions}\n />\n {promptError && <div className={classes.errorText}>{promptError}</div>}\n </InputContainer>\n )}\n <div className={classes.tooltipContainer}>\n <Typography className={classes.title} component={'div'}>\n Response Template\n </Typography>\n <Tooltip\n classes={{ tooltip: classes.tooltip }}\n disableFocusListener\n disableTouchListener\n placement={'right'}\n title={validationMessage}\n >\n <Info fontSize={'small'} color={'primary'} />\n </Tooltip>\n </div>\n <EditableHtml\n activePlugins={ALL_PLUGINS}\n toolbarOpts={{ position: 'top' }}\n spellCheck={spellCheckEnabled}\n pluginProps={getPluginProps(template?.inputConfiguration, baseInputConfiguration)}\n responseAreaProps={{\n type: 'math-templated',\n respAreaToolbar: null,\n error: () => responsesErrors,\n onHandleAreaChange: this.onHandleAreaChange,\n maxResponseAreas: maxResponseAreas,\n }}\n className={classes.markup}\n markup={model.slateMarkup}\n onChange={this.onChange}\n imageSupport={imageSupport}\n disableImageAlignmentButtons={true}\n onBlur={this.onBlur}\n disabled={false}\n highlightShape={false}\n error={responseAreasError}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n mathMlOptions={mathMlOptions}\n />\n {responseAreasError && <div className={classes.responseAreaError}>{responseAreasError}</div>}\n\n <Typography className={classes.title}>Define Response</Typography>\n\n <InputContainer label=\"Response Template Equation Editor\" className={classes.selectContainer}>\n <Select\n className={classes.select}\n onChange={(event) => this.handleChange('equationEditor', event.target.value)}\n value={equationEditor}\n >\n <MenuItem value=\"non-negative-integers\">Numeric - Non-Negative Integers</MenuItem>\n <MenuItem value=\"integers\">Numeric - Integers</MenuItem>\n <MenuItem value=\"decimals\">Numeric - Decimals</MenuItem>\n <MenuItem value=\"fractions\">Numeric - Fractions</MenuItem>\n <MenuItem value={1}>Grade 1 - 2</MenuItem>\n <MenuItem value={3}>Grade 3 - 5</MenuItem>\n <MenuItem value={6}>Grade 6 - 7</MenuItem>\n <MenuItem value={8}>Grade 8 - HS</MenuItem>\n <MenuItem value={'geometry'}>Geometry</MenuItem>\n <MenuItem value={'advanced-algebra'}>Advanced Algebra</MenuItem>\n <MenuItem value={'statistics'}>Statistics</MenuItem>\n <MenuItem value={'item-authoring'}>Item Authoring</MenuItem>\n </Select>\n </InputContainer>\n\n {Object.keys(responses || {}).map((responseKey, idx) => {\n const response = responses[idx];\n\n if (response) {\n return (\n <Response\n key={idx}\n responseKey={idx}\n mode={equationEditor}\n response={response}\n onResponseChange={this.onResponseChange}\n onResponseDone={this.onResponseDone}\n index={idx}\n cIgnoreOrder={cIgnoreOrder}\n cAllowTrailingZeros={cAllowTrailingZeros}\n error={responsesErrors && responsesErrors[idx]}\n />\n );\n }\n\n return null;\n })}\n\n {rationaleEnabled && (\n <InputContainer label={rationale.label} className={classes.promptHolder}>\n <EditableHtml\n className={classes.prompt}\n markup={model.rationale || ''}\n onChange={(value) => this.handleChange('rationale', value)}\n imageSupport={imageSupport}\n nonEmpty={false}\n error={rationaleError}\n toolbarOpts={toolbarOpts}\n pluginProps={getPluginProps(rationale?.inputConfiguration, {\n ...baseInputConfiguration,\n math: {\n controlledKeypadMode: false,\n },\n })}\n spellCheck={spellCheckEnabled}\n maxImageWidth={(maxImageWidth && maxImageWidth.rationale) || defaultImageMaxWidth}\n maxImageHeight={(maxImageHeight && maxImageHeight.rationale) || defaultImageMaxHeight}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n mathMlOptions={mathMlOptions}\n />\n {rationaleError && <div className={classes.errorText}>{rationaleError}</div>}\n </InputContainer>\n )}\n </layout.ConfigLayout>\n );\n }\n}\n\nexport default withStyles((theme) => ({\n promptHolder: {\n width: '100%',\n paddingTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 2,\n },\n prompt: {\n width: '100%',\n },\n errorText: {\n color: theme.palette.error.main,\n fontSize: '0.75rem',\n marginTop: theme.spacing.unit,\n },\n responseAreaError: {\n color: theme.palette.error.main,\n fontSize: '0.75rem',\n marginBottom: theme.spacing.unit,\n },\n markup: {\n width: '100%',\n marginTop: theme.spacing.unit * 2,\n marginBottom: theme.spacing.unit * 3,\n },\n selectContainer: {\n width: '100%',\n marginTop: theme.spacing.unit * 2,\n },\n select: {\n width: '100%',\n },\n title: {\n fontSize: theme.typography.fontSize * 1.25,\n fontWeight: 'bold',\n },\n tooltipContainer: {\n display: 'flex',\n alignItems: 'center',\n gap: '8px',\n },\n tooltip: {\n fontSize: theme.typography.fontSize - 2,\n whiteSpace: 'pre',\n maxWidth: '500px',\n },\n}))(Design);\n"],"file":"design.js"}
1
+ {"version":3,"file":"design.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_Typography","_Select","_MenuItem","_Info","_Tooltip","_cloneDeep","_pick","_throttle","_configUi","_editableHtmlTipTap","_interopRequireWildcard","_response","_markupUtils","_utils","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","dropdown","settings","Panel","toggle","StyledInputContainer","styled","InputContainer","theme","width","paddingTop","spacing","marginBottom","StyledEditableHtml","EditableHtml","ErrorText","color","palette","error","main","fontSize","marginTop","ResponseAreaError","StyledMarkup","StyledSelectContainer","StyledSelect","Select","StyledTitle","Typography","typography","fontWeight","TooltipContainer","display","alignItems","gap","StyledTooltip","Tooltip","whiteSpace","maxWidth","createElementFromHTML","htmlString","div","document","createElement","innerHTML","trim","Design","React","Component","constructor","args","_defineProperty2","key","value","onModelChanged","model","props","updatedModel","cloneDeep","response","index","newModel","responses","slateMarkup","createSlateMarkup","markup","newVal","answer","id","allowSpaces","validationDefault","allowTrailingZerosDefault","ignoreOrderDefault","newResponses","domMarkup","responseAreas","querySelectorAll","forEach","element","dataIndex","dataset","validation","allowTrailingZeros","ignoreOrder","alternates","toString","processedMarkup","processMarkup","callback","setState","cachedResponses","undefined","throttle","nodes","state","newChoices","newCachedResponses","node","keyForNode","data","assign","pick","prototype","trailing","leading","relatedTarget","currentTarget","getParentWithRoleTooltip","depth","parent","offsetParent","getAttribute","getDeepChildDataKeypad","child","children","attributes","parentWithTooltipRole","childWithDataKeypad","activeAnswerBlock","componentDidMount","render","configuration","imageSupport","onConfigurationChanged","uploadSoundSupport","baseInputConfiguration","contentDimensions","prompt","rationale","settingsPanelDisabled","teacherInstructions","language","languageChoices","spellCheck","playerSpellCheck","maxImageWidth","maxImageHeight","mathMlOptions","template","editSource","cIgnoreOrder","cAllowTrailingZeros","partialScoring","maxResponseAreas","errors","extraCSSRules","promptEnabled","rationaleEnabled","spellCheckEnabled","teacherInstructionsEnabled","toolbarEditorPosition","equationEditor","promptError","rationaleError","responseAreasError","teacherInstructionsError","responsesErrors","validationMessage","generateValidationMessage","panelSettings","label","enabled","options","panelProperties","playerSpellCheckEnabled","defaultImageMaxWidth","defaultImageMaxHeight","toolbarOpts","position","getPluginProps","layout","ConfigLayout","dimensions","hideSettings","onChangeModel","onChangeConfiguration","groups","Settings","Properties","onChange","handleChange","nonEmpty","pluginProps","inputConfiguration","languageCharactersProps","disableUnderline","component","disableFocusListener","disableTouchListener","placement","title","activePlugins","ALL_PLUGINS","responseAreaProps","type","respAreaToolbar","onHandleAreaChange","disableImageAlignmentButtons","onBlur","disabled","highlightShape","MenuProps","transitionDuration","enter","exit","event","target","keys","map","responseKey","idx","mode","onResponseChange","onResponseDone","math","controlledKeypadMode","exports","PropTypes","object","isRequired","func","shape","add","delete","_default"],"sources":["../src/design.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { styled } from '@mui/material/styles';\nimport Typography from '@mui/material/Typography';\nimport Select from '@mui/material/Select';\nimport MenuItem from '@mui/material/MenuItem';\nimport Info from '@mui/icons-material/Info';\nimport Tooltip from '@mui/material/Tooltip';\nimport cloneDeep from 'lodash/cloneDeep';\nimport pick from 'lodash/pick';\nimport throttle from 'lodash/throttle';\nimport { InputContainer, settings, layout } from '@pie-lib/config-ui';\nimport EditableHtml, { ALL_PLUGINS } from '@pie-lib/editable-html-tip-tap';\nconst { dropdown } = settings;\n\nimport Response from './response';\nimport { processMarkup, createSlateMarkup } from './markupUtils';\nimport { generateValidationMessage } from './utils';\n\nconst { Panel, toggle } = settings;\n\nconst StyledInputContainer = styled(InputContainer)(({ theme }) => ({\n width: '100%',\n paddingTop: theme.spacing(2),\n marginBottom: theme.spacing(2),\n}));\n\nconst StyledEditableHtml = styled(EditableHtml)({\n width: '100%',\n});\n\nconst ErrorText = styled('div')(({ theme }) => ({\n color: theme.palette.error.main,\n fontSize: '0.75rem',\n marginTop: theme.spacing(1),\n}));\n\nconst ResponseAreaError = styled('div')(({ theme }) => ({\n color: theme.palette.error.main,\n fontSize: '0.75rem',\n marginBottom: theme.spacing(1),\n}));\n\nconst StyledMarkup = styled(EditableHtml)(({ theme }) => ({\n width: '100%',\n marginTop: theme.spacing(2),\n marginBottom: theme.spacing(3),\n}));\n\nconst StyledSelectContainer = styled(InputContainer)(({ theme }) => ({\n width: '100%',\n marginTop: theme.spacing(2),\n '& > *:not(label)': {\n marginTop: theme.spacing(1),\n },\n marginBottom: theme.spacing(2),\n}));\n\nconst StyledSelect = styled(Select)({\n width: '100%',\n});\n\nconst StyledTitle = styled(Typography)(({ theme }) => ({\n fontSize: theme.typography.fontSize * 1.25,\n fontWeight: 'bold',\n}));\n\nconst TooltipContainer = styled('div')({\n display: 'flex',\n alignItems: 'center',\n gap: '8px',\n});\n\nconst StyledTooltip = styled(Tooltip)(({ theme }) => ({\n '& .MuiTooltip-tooltip': {\n fontSize: theme.typography.fontSize - 2,\n whiteSpace: 'pre',\n maxWidth: '500px',\n },\n}));\n\nconst createElementFromHTML = (htmlString) => {\n const div = document.createElement('div');\n div.innerHTML = htmlString.trim();\n\n return div;\n};\n\nexport class Design extends React.Component {\n static propTypes = {\n model: PropTypes.object.isRequired,\n configuration: PropTypes.object.isRequired,\n onModelChanged: PropTypes.func.isRequired,\n onConfigurationChanged: PropTypes.func.isRequired,\n imageSupport: PropTypes.shape({\n add: PropTypes.func.isRequired,\n delete: PropTypes.func.isRequired,\n }),\n uploadSoundSupport: PropTypes.object,\n };\n\n state = {};\n\n componentDidMount() {\n const {\n model: { slateMarkup },\n } = this.props;\n\n this.setState({ markup: slateMarkup });\n }\n\n handleChange = (key, value) => {\n const { onModelChanged, model } = this.props;\n const updatedModel = cloneDeep(model);\n updatedModel[key] = value;\n onModelChanged(updatedModel);\n };\n\n onResponseChange = (response, index) => {\n const { model, onModelChanged } = this.props;\n const newModel = { ...model };\n\n newModel.responses[index] = response;\n onModelChanged(newModel);\n };\n\n onResponseDone = () => {\n const { model, onModelChanged } = this.props;\n\n onModelChanged({\n ...model,\n slateMarkup: createSlateMarkup(model.markup, model.responses),\n });\n };\n\n onChangeResponse = (index, newVal) => {\n const { model, onModelChanged } = this.props;\n const { responses } = model;\n\n if (!responses[index]) {\n responses[index] = [{ answer: newVal || '', id: 'response' + index, allowSpaces: true }];\n } else {\n responses[index][0].answer = newVal || '';\n }\n\n onModelChanged({ ...model, responses });\n };\n\n onResponsesChanged = (responses) => {\n this.props.onModelChanged({ ...this.props.model, responses });\n };\n\n onChange = (markup) => {\n const {\n model: { responses, validationDefault, allowTrailingZerosDefault, ignoreOrderDefault },\n onModelChanged,\n } = this.props;\n const newResponses = {};\n const domMarkup = createElementFromHTML(markup);\n const responseAreas = domMarkup.querySelectorAll('[data-type=\"math_templated\"]');\n\n responseAreas.forEach((element, index) => {\n const { value, index: dataIndex } = element.dataset;\n\n if (!value) {\n element.dataset.value = '';\n }\n\n newResponses[index] = responses[dataIndex] || {\n allowSpaces: true,\n validation: validationDefault || 'symbolic',\n allowTrailingZeros: allowTrailingZerosDefault || false,\n ignoreOrder: ignoreOrderDefault || false,\n answer: '',\n alternates: {},\n };\n\n element.dataset.index = index.toString();\n });\n\n const processedMarkup = processMarkup(markup);\n\n const callback = () =>\n onModelChanged({\n ...this.props.model,\n slateMarkup: domMarkup.innerHTML,\n responses: newResponses,\n markup: processedMarkup,\n });\n\n this.setState({ cachedResponses: undefined }, callback);\n };\n\n onHandleAreaChange = throttle(\n (nodes) => {\n const {\n model: { responses },\n onModelChanged,\n } = this.props;\n const { cachedResponses } = this.state;\n\n if (!nodes) {\n return;\n }\n\n const newChoices = responses ? cloneDeep(responses) : {};\n const newCachedResponses = cachedResponses ? cloneDeep(cachedResponses) : {};\n\n nodes.forEach((node) => {\n const keyForNode = node.data.get('index');\n\n if (!newChoices[keyForNode] && newCachedResponses[keyForNode]) {\n Object.assign(newChoices, pick(newCachedResponses, keyForNode));\n\n if (Object.prototype.hasOwnProperty.call(newCachedResponses, keyForNode)) {\n delete newCachedResponses[keyForNode];\n }\n } else {\n Object.assign(newCachedResponses, pick(newChoices, keyForNode));\n\n if (Object.prototype.hasOwnProperty.call(newChoices, keyForNode)) {\n delete newChoices[keyForNode];\n }\n }\n });\n\n const callback = () => onModelChanged({ ...this.props.model, responses: newChoices });\n\n this.setState({ cachedResponses: newCachedResponses }, callback);\n },\n 500,\n { trailing: false, leading: true },\n );\n\n onBlur = (e) => {\n const { relatedTarget, currentTarget } = e || {};\n\n function getParentWithRoleTooltip(element, depth = 0) {\n // only run this max 16 times\n if (!element || depth >= 16) return null;\n\n const parent = element.offsetParent;\n\n if (!parent) return null;\n\n if (parent.getAttribute('role') === 'tooltip') {\n return parent;\n }\n\n return getParentWithRoleTooltip(parent, depth + 1);\n }\n\n function getDeepChildDataKeypad(element, depth = 0) {\n // only run this max 4 times\n if (!element || depth >= 4) return null;\n\n const child = element?.children?.[0];\n\n if (!child) return null;\n\n if (child.attributes && child.attributes['data-keypad']) {\n return child;\n }\n\n return getDeepChildDataKeypad(child, depth + 1);\n }\n\n const parentWithTooltipRole = getParentWithRoleTooltip(relatedTarget);\n const childWithDataKeypad = parentWithTooltipRole ? getDeepChildDataKeypad(parentWithTooltipRole) : null;\n\n if (!relatedTarget || !currentTarget || !childWithDataKeypad?.attributes['data-keypad']) {\n this.setState({ activeAnswerBlock: '' });\n }\n };\n\n render() {\n const { configuration, imageSupport, model, onConfigurationChanged, onModelChanged, uploadSoundSupport } =\n this.props;\n\n const {\n baseInputConfiguration = {},\n contentDimensions = {},\n prompt = {},\n rationale = {},\n settingsPanelDisabled,\n teacherInstructions = {},\n language = {},\n languageChoices = {},\n spellCheck = {},\n playerSpellCheck = {},\n maxImageWidth = {},\n maxImageHeight = {},\n mathMlOptions = {},\n template = {},\n editSource = {},\n ignoreOrder: cIgnoreOrder = {},\n allowTrailingZeros: cAllowTrailingZeros = {},\n partialScoring = {},\n maxResponseAreas,\n } = configuration || {};\n\n const {\n errors,\n extraCSSRules,\n promptEnabled,\n rationaleEnabled,\n spellCheckEnabled,\n teacherInstructionsEnabled,\n toolbarEditorPosition,\n responses,\n equationEditor,\n } = model || {};\n\n const {\n prompt: promptError,\n rationale: rationaleError,\n responseAreas: responseAreasError,\n teacherInstructions: teacherInstructionsError,\n responses: responsesErrors = {},\n } = errors || {};\n const validationMessage = generateValidationMessage(configuration);\n\n const panelSettings = {\n 'language.enabled': language.settings && toggle(language.label, true),\n language: language.settings && language.enabled && dropdown(languageChoices.label, languageChoices.options),\n };\n\n const panelProperties = {\n teacherInstructionsEnabled: teacherInstructions.settings && toggle(teacherInstructions.label),\n rationaleEnabled: rationale.settings && toggle(rationale.label),\n promptEnabled: prompt.settings && toggle(prompt.label),\n spellCheckEnabled: spellCheck.settings && toggle(spellCheck.label),\n playerSpellCheckEnabled: playerSpellCheck.settings && toggle(playerSpellCheck.label),\n 'editSource.enabled': editSource?.settings && toggle(editSource.label, true),\n partialScoring: partialScoring.settings && toggle(partialScoring.label),\n };\n\n const defaultImageMaxWidth = maxImageWidth && maxImageWidth.prompt;\n const defaultImageMaxHeight = maxImageHeight && maxImageHeight.prompt;\n\n const toolbarOpts = {\n position: toolbarEditorPosition === 'top' ? 'top' : 'bottom',\n };\n\n const getPluginProps = (props = {}, baseInputConfiguration = {}) => ({\n ...baseInputConfiguration,\n ...props,\n });\n\n return (\n <layout.ConfigLayout\n extraCSSRules={extraCSSRules}\n dimensions={contentDimensions}\n hideSettings={settingsPanelDisabled}\n settings={\n <Panel\n model={model}\n configuration={configuration}\n onChangeModel={(updatedModel) => onModelChanged(updatedModel)}\n onChangeConfiguration={onConfigurationChanged}\n groups={{\n Settings: panelSettings,\n Properties: panelProperties,\n }}\n />\n }\n >\n {teacherInstructionsEnabled && (\n <StyledInputContainer label={teacherInstructions.label}>\n <StyledEditableHtml\n markup={model.teacherInstructions || ''}\n onChange={(value) => this.handleChange('teacherInstructions', value)}\n imageSupport={imageSupport}\n nonEmpty={false}\n error={teacherInstructionsError}\n toolbarOpts={toolbarOpts}\n pluginProps={getPluginProps(teacherInstructions?.inputConfiguration, baseInputConfiguration)}\n spellCheck={spellCheckEnabled}\n maxImageWidth={(maxImageWidth && maxImageWidth.teacherInstructions) || defaultImageMaxWidth}\n maxImageHeight={(maxImageHeight && maxImageHeight.teacherInstructions) || defaultImageMaxHeight}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n mathMlOptions={mathMlOptions}\n />\n {teacherInstructionsError && <ErrorText>{teacherInstructionsError}</ErrorText>}\n </StyledInputContainer>\n )}\n\n {promptEnabled && (\n <StyledInputContainer label={prompt.label}>\n <StyledEditableHtml\n markup={model.prompt}\n onChange={(value) => this.handleChange('prompt', value)}\n imageSupport={imageSupport}\n nonEmpty={false}\n disableUnderline\n error={promptError}\n toolbarOpts={toolbarOpts}\n pluginProps={getPluginProps(teacherInstructions?.inputConfiguration, baseInputConfiguration)}\n spellCheck={spellCheckEnabled}\n maxImageWidth={defaultImageMaxWidth}\n maxImageHeight={defaultImageMaxHeight}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n mathMlOptions={mathMlOptions}\n />\n {promptError && <ErrorText>{promptError}</ErrorText>}\n </StyledInputContainer>\n )}\n <TooltipContainer>\n <StyledTitle component={'div'}>\n Response Template\n </StyledTitle>\n <StyledTooltip\n disableFocusListener\n disableTouchListener\n placement={'right'}\n title={validationMessage}\n >\n <Info fontSize={'small'} color={'primary'} />\n </StyledTooltip>\n </TooltipContainer>\n <StyledMarkup\n activePlugins={ALL_PLUGINS}\n toolbarOpts={{ position: 'top' }}\n spellCheck={spellCheckEnabled}\n pluginProps={getPluginProps(template?.inputConfiguration, baseInputConfiguration)}\n responseAreaProps={{\n type: 'math-templated',\n respAreaToolbar: null,\n error: () => responsesErrors,\n onHandleAreaChange: this.onHandleAreaChange,\n maxResponseAreas: maxResponseAreas,\n }}\n markup={model.slateMarkup}\n onChange={this.onChange}\n imageSupport={imageSupport}\n disableImageAlignmentButtons={true}\n onBlur={this.onBlur}\n disabled={false}\n highlightShape={false}\n error={responseAreasError}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n mathMlOptions={mathMlOptions}\n />\n {responseAreasError && <ResponseAreaError>{responseAreasError}</ResponseAreaError>}\n\n <StyledTitle>Define Response</StyledTitle>\n\n <StyledSelectContainer label=\"Response Template Equation Editor\">\n <StyledSelect\n MenuProps={{transitionDuration: { enter: 225, exit: 195 } }}\n onChange={(event) => this.handleChange('equationEditor', event.target.value)}\n value={equationEditor}\n >\n <MenuItem value=\"non-negative-integers\">Numeric - Non-Negative Integers</MenuItem>\n <MenuItem value=\"integers\">Numeric - Integers</MenuItem>\n <MenuItem value=\"decimals\">Numeric - Decimals</MenuItem>\n <MenuItem value=\"fractions\">Numeric - Fractions</MenuItem>\n <MenuItem value={1}>Grade 1 - 2</MenuItem>\n <MenuItem value={3}>Grade 3 - 5</MenuItem>\n <MenuItem value={6}>Grade 6 - 7</MenuItem>\n <MenuItem value={8}>Grade 8 - HS</MenuItem>\n <MenuItem value={'geometry'}>Geometry</MenuItem>\n <MenuItem value={'advanced-algebra'}>Advanced Algebra</MenuItem>\n <MenuItem value={'statistics'}>Statistics</MenuItem>\n <MenuItem value={'item-authoring'}>Item Authoring</MenuItem>\n </StyledSelect>\n </StyledSelectContainer>\n\n {Object.keys(responses || {}).map((responseKey, idx) => {\n const response = responses[idx];\n\n if (response) {\n return (\n <Response\n key={idx}\n responseKey={idx}\n mode={equationEditor}\n response={response}\n onResponseChange={this.onResponseChange}\n onResponseDone={this.onResponseDone}\n index={idx}\n cIgnoreOrder={cIgnoreOrder}\n cAllowTrailingZeros={cAllowTrailingZeros}\n error={responsesErrors && responsesErrors[idx]}\n />\n );\n }\n\n return null;\n })}\n\n {rationaleEnabled && (\n <StyledInputContainer label={rationale.label}>\n <StyledEditableHtml\n markup={model.rationale || ''}\n onChange={(value) => this.handleChange('rationale', value)}\n imageSupport={imageSupport}\n nonEmpty={false}\n error={rationaleError}\n toolbarOpts={toolbarOpts}\n pluginProps={getPluginProps(rationale?.inputConfiguration, {\n ...baseInputConfiguration,\n math: {\n controlledKeypadMode: false,\n },\n })}\n spellCheck={spellCheckEnabled}\n maxImageWidth={(maxImageWidth && maxImageWidth.rationale) || defaultImageMaxWidth}\n maxImageHeight={(maxImageHeight && maxImageHeight.rationale) || defaultImageMaxHeight}\n uploadSoundSupport={uploadSoundSupport}\n languageCharactersProps={[{ language: 'spanish' }, { language: 'special' }]}\n mathMlOptions={mathMlOptions}\n />\n {rationaleError && <ErrorText>{rationaleError}</ErrorText>}\n </StyledInputContainer>\n )}\n </layout.ConfigLayout>\n );\n }\n}\n\nexport default Design;\n"],"mappings":"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","ignoreList":[]}
@@ -1,243 +1,170 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
- exports["default"] = void 0;
9
-
10
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
-
12
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
-
14
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
15
-
16
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
-
18
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
19
-
20
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
21
-
22
- var _wrapNativeSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/wrapNativeSuper"));
23
-
7
+ exports.default = void 0;
24
8
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
25
-
26
9
  var _react = _interopRequireDefault(require("react"));
27
-
28
- var _reactDom = _interopRequireDefault(require("react-dom"));
29
-
10
+ var _client = require("react-dom/client");
30
11
  var _debug = _interopRequireDefault(require("debug"));
31
-
32
12
  var _defaults = _interopRequireDefault(require("lodash/defaults"));
33
-
34
13
  var _isArray = _interopRequireDefault(require("lodash/isArray"));
35
-
36
14
  var _pieConfigureEvents = require("@pie-framework/pie-configure-events");
37
-
38
15
  var _design = _interopRequireDefault(require("./design"));
39
-
40
16
  var _defaults2 = _interopRequireDefault(require("./defaults"));
41
-
42
17
  var _markupUtils = require("./markupUtils");
43
-
44
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
45
-
46
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
47
-
48
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
49
-
50
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
51
-
52
- var log = (0, _debug["default"])('math-templated:configure');
53
-
54
- var MathTemplateConfigure = /*#__PURE__*/function (_HTMLElement) {
55
- (0, _inherits2["default"])(MathTemplateConfigure, _HTMLElement);
56
-
57
- var _super = _createSuper(MathTemplateConfigure);
58
-
59
- function MathTemplateConfigure() {
60
- var _this;
61
-
62
- (0, _classCallCheck2["default"])(this, MathTemplateConfigure);
63
- _this = _super.call(this);
64
- _this._model = MathTemplateConfigure.prepareModel();
65
- _this._configuration = _defaults2["default"].configuration;
66
- _this.onModelChanged = _this.onModelChanged.bind((0, _assertThisInitialized2["default"])(_this));
67
- _this.onConfigurationChanged = _this.onConfigurationChanged.bind((0, _assertThisInitialized2["default"])(_this));
68
- return _this;
18
+ const log = (0, _debug.default)('math-templated:configure');
19
+ class MathTemplateConfigure extends HTMLElement {
20
+ constructor() {
21
+ super();
22
+ this._root = null;
23
+ this._model = MathTemplateConfigure.prepareModel();
24
+ this._configuration = _defaults2.default.configuration;
25
+ this.onModelChanged = this.onModelChanged.bind(this);
26
+ this.onConfigurationChanged = this.onConfigurationChanged.bind(this);
69
27
  }
70
-
71
- (0, _createClass2["default"])(MathTemplateConfigure, [{
72
- key: "model",
73
- set: function set(s) {
74
- this._model = MathTemplateConfigure.prepareModel(s);
75
-
76
- this._render();
77
- }
78
- }, {
79
- key: "configuration",
80
- set: function set(c) {
81
- var _c$language,
82
- _this2 = this;
83
-
84
- this._configuration = (0, _defaults["default"])(c, _defaults2["default"].configuration); // if language:enabled is true, then the corresponding default item model should include a language value;
85
- // if it is false, then the language field should be omitted from the item model.
86
- // if a default item model includes a language value (e.g., en_US) and the corresponding authoring view settings have language:settings = true,
87
- // then (a) language:enabled should also be true, and (b) that default language value should be represented in languageChoices[] (as a key).
88
-
89
- if ((_c$language = c.language) !== null && _c$language !== void 0 && _c$language.enabled) {
90
- var _c$languageChoices, _c$languageChoices$op;
91
-
92
- if ((_c$languageChoices = c.languageChoices) !== null && _c$languageChoices !== void 0 && (_c$languageChoices$op = _c$languageChoices.options) !== null && _c$languageChoices$op !== void 0 && _c$languageChoices$op.length) {
93
- this._model.language = c.languageChoices.options[0].value;
94
- }
95
- } else if (c.language.settings && this._model.language) {
96
- this._configuration.language.enabled = true;
97
-
98
- if (!this._configuration.languageChoices.options || !this._configuration.languageChoices.options.length) {
99
- this._configuration.languageChoices.options = [];
100
- } // check if the language is already included in the languageChoices.options array
101
- // and if not, then add it.
102
-
103
-
104
- if (!this._configuration.languageChoices.options.find(function (option) {
105
- return option.value === _this2._model.language;
106
- })) {
107
- this._configuration.languageChoices.options.push({
108
- value: this._model.language,
109
- label: this._model.language
110
- });
111
- }
112
- } else {
113
- delete this._model.language;
28
+ set model(s) {
29
+ this._model = MathTemplateConfigure.prepareModel(s);
30
+ this._render();
31
+ }
32
+ set configuration(c) {
33
+ this._configuration = (0, _defaults.default)(c, _defaults2.default.configuration);
34
+
35
+ // if language:enabled is true, then the corresponding default item model should include a language value;
36
+ // if it is false, then the language field should be omitted from the item model.
37
+ // if a default item model includes a language value (e.g., en_US) and the corresponding authoring view settings have language:settings = true,
38
+ // then (a) language:enabled should also be true, and (b) that default language value should be represented in languageChoices[] (as a key).
39
+ if (c.language?.enabled) {
40
+ if (c.languageChoices?.options?.length) {
41
+ this._model.language = c.languageChoices.options[0].value;
42
+ }
43
+ } else if (c.language.settings && this._model.language) {
44
+ this._configuration.language.enabled = true;
45
+ if (!this._configuration.languageChoices.options || !this._configuration.languageChoices.options.length) {
46
+ this._configuration.languageChoices.options = [];
114
47
  }
115
48
 
116
- this._render();
117
- }
118
- }, {
119
- key: "disableSidePanel",
120
- set: function set(s) {
121
- this._disableSidePanel = s;
122
-
123
- this._render();
124
- }
125
- }, {
126
- key: "dispatchModelUpdated",
127
- value: function dispatchModelUpdated(reset) {
128
- var resetValue = !!reset;
129
- this.dispatchEvent(new _pieConfigureEvents.ModelUpdatedEvent(this._model, resetValue));
130
- }
131
- }, {
132
- key: "onModelChanged",
133
- value: function onModelChanged(m, reset) {
134
- this._model = MathTemplateConfigure.prepareModel(m);
135
-
136
- this._render();
137
-
138
- this.dispatchModelUpdated(reset);
139
- }
140
- }, {
141
- key: "onConfigurationChanged",
142
- value: function onConfigurationChanged(c) {
143
- this._configuration = c;
144
-
145
- this._render();
49
+ // check if the language is already included in the languageChoices.options array
50
+ // and if not, then add it.
51
+ if (!this._configuration.languageChoices.options.find(option => option.value === this._model.language)) {
52
+ this._configuration.languageChoices.options.push({
53
+ value: this._model.language,
54
+ label: this._model.language
55
+ });
56
+ }
57
+ } else {
58
+ delete this._model.language;
146
59
  }
147
- /** @param {done, progress, file} handler */
60
+ this._render();
61
+ }
62
+ set disableSidePanel(s) {
63
+ this._disableSidePanel = s;
64
+ this._render();
65
+ }
66
+ dispatchModelUpdated(reset) {
67
+ const resetValue = !!reset;
68
+ this.dispatchEvent(new _pieConfigureEvents.ModelUpdatedEvent(this._model, resetValue));
69
+ }
70
+ onModelChanged(m, reset) {
71
+ this._model = MathTemplateConfigure.prepareModel(m);
72
+ this._render();
73
+ this.dispatchModelUpdated(reset);
74
+ }
75
+ onConfigurationChanged(c) {
76
+ this._configuration = c;
77
+ this._render();
78
+ }
148
79
 
149
- }, {
150
- key: "insertImage",
151
- value: function insertImage(handler) {
152
- this.dispatchEvent(new _pieConfigureEvents.InsertImageEvent(handler));
153
- }
154
- }, {
155
- key: "onDeleteImage",
156
- value: function onDeleteImage(src, done) {
157
- this.dispatchEvent(new _pieConfigureEvents.DeleteImageEvent(src, done));
158
- }
159
- }, {
160
- key: "insertSound",
161
- value: function insertSound(handler) {
162
- this.dispatchEvent(new _pieConfigureEvents.InsertSoundEvent(handler));
163
- }
164
- }, {
165
- key: "onDeleteSound",
166
- value: function onDeleteSound(src, done) {
167
- this.dispatchEvent(new _pieConfigureEvents.DeleteSoundEvent(src, done));
80
+ /** @param {done, progress, file} handler */
81
+ insertImage(handler) {
82
+ this.dispatchEvent(new _pieConfigureEvents.InsertImageEvent(handler));
83
+ }
84
+ onDeleteImage(src, done) {
85
+ this.dispatchEvent(new _pieConfigureEvents.DeleteImageEvent(src, done));
86
+ }
87
+ insertSound(handler) {
88
+ this.dispatchEvent(new _pieConfigureEvents.InsertSoundEvent(handler));
89
+ }
90
+ onDeleteSound(src, done) {
91
+ this.dispatchEvent(new _pieConfigureEvents.DeleteSoundEvent(src, done));
92
+ }
93
+ _render() {
94
+ log('_render');
95
+ let element = /*#__PURE__*/_react.default.createElement(_design.default, {
96
+ model: this._model,
97
+ configuration: this._configuration,
98
+ onModelChanged: this.onModelChanged,
99
+ onConfigurationChanged: this.onConfigurationChanged,
100
+ disableSidePanel: this._disableSidePanel,
101
+ imageSupport: {
102
+ add: this.insertImage.bind(this),
103
+ delete: this.onDeleteImage.bind(this)
104
+ },
105
+ uploadSoundSupport: {
106
+ add: this.insertSound.bind(this),
107
+ delete: this.onDeleteSound.bind(this)
108
+ }
109
+ });
110
+ if (!this._root) {
111
+ this._root = (0, _client.createRoot)(this);
168
112
  }
169
- }, {
170
- key: "_render",
171
- value: function _render() {
172
- log('_render');
173
-
174
- var element = /*#__PURE__*/_react["default"].createElement(_design["default"], {
175
- model: this._model,
176
- configuration: this._configuration,
177
- onModelChanged: this.onModelChanged,
178
- onConfigurationChanged: this.onConfigurationChanged,
179
- disableSidePanel: this._disableSidePanel,
180
- imageSupport: {
181
- add: this.insertImage.bind(this),
182
- "delete": this.onDeleteImage.bind(this)
183
- },
184
- uploadSoundSupport: {
185
- add: this.insertSound.bind(this),
186
- "delete": this.onDeleteSound.bind(this)
187
- }
188
- });
189
-
190
- _reactDom["default"].render(element, this);
113
+ this._root.render(element);
114
+ }
115
+ disconnectedCallback() {
116
+ if (this._root) {
117
+ this._root.unmount();
191
118
  }
192
- }]);
193
- return MathTemplateConfigure;
194
- }( /*#__PURE__*/(0, _wrapNativeSuper2["default"])(HTMLElement));
195
-
196
- exports["default"] = MathTemplateConfigure;
197
- (0, _defineProperty2["default"])(MathTemplateConfigure, "prepareModel", function () {
198
- var model = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
199
- var validationDefault = model.validationDefault,
200
- allowTrailingZerosDefault = model.allowTrailingZerosDefault,
201
- ignoreOrderDefault = model.ignoreOrderDefault,
202
- _model$responses = model.responses,
203
- responses = _model$responses === void 0 ? {} : _model$responses;
204
- var updatedResponses = Object.keys(responses).reduce(function (acc, responseId) {
205
- var correctResponse = responses[responseId];
206
- acc[responseId] = _objectSpread(_objectSpread({}, correctResponse), {}, {
119
+ }
120
+ }
121
+ exports.default = MathTemplateConfigure;
122
+ (0, _defineProperty2.default)(MathTemplateConfigure, "prepareModel", (model = {}) => {
123
+ const {
124
+ validationDefault,
125
+ allowTrailingZerosDefault,
126
+ ignoreOrderDefault,
127
+ responses = {}
128
+ } = model;
129
+ const updatedResponses = Object.keys(responses).reduce((acc, responseId) => {
130
+ const correctResponse = responses[responseId];
131
+ acc[responseId] = {
132
+ ...correctResponse,
207
133
  validation: correctResponse.validation || validationDefault,
208
134
  allowTrailingZeros: correctResponse.allowTrailingZeros || allowTrailingZerosDefault,
209
135
  ignoreOrder: correctResponse.ignoreOrder || ignoreOrderDefault
210
- });
136
+ };
211
137
  return acc;
212
138
  }, {});
213
-
214
- var joinedObj = _objectSpread(_objectSpread(_objectSpread({}, _defaults2["default"].model), model), {}, {
139
+ const joinedObj = {
140
+ ..._defaults2.default.model,
141
+ ...model,
215
142
  responses: updatedResponses
216
- });
217
-
218
- var slateMarkup = joinedObj.slateMarkup || (0, _markupUtils.createSlateMarkup)(joinedObj.markup, joinedObj.responses);
219
- var processedMarkup = (0, _markupUtils.processMarkup)(slateMarkup); // this was added to treat an exception, when the model has responses without the "answer" property
143
+ };
144
+ const slateMarkup = joinedObj.slateMarkup || (0, _markupUtils.createSlateMarkup)(joinedObj.markup, joinedObj.responses);
145
+ const processedMarkup = (0, _markupUtils.processMarkup)(slateMarkup);
220
146
 
147
+ // this was added to treat an exception, when the model has responses without the "answer" property
221
148
  if (joinedObj.responses) {
222
- Object.keys(joinedObj.responses).forEach(function (key) {
223
- if ((0, _isArray["default"])(joinedObj.responses[key])) {
224
- joinedObj.responses[key] = (joinedObj.responses[key] || []).map(function (item, index) {
149
+ Object.keys(joinedObj.responses).forEach(key => {
150
+ if ((0, _isArray.default)(joinedObj.responses[key])) {
151
+ joinedObj.responses[key] = (joinedObj.responses[key] || []).map((item, index) => {
225
152
  if (!item.answer) {
226
153
  log('Choice does not contain "answer" property, which is required.', item);
227
- return _objectSpread({
228
- answer: "".concat(index)
229
- }, item);
154
+ return {
155
+ answer: `${index}`,
156
+ ...item
157
+ };
230
158
  }
231
-
232
159
  return item;
233
160
  });
234
161
  }
235
162
  });
236
163
  }
237
-
238
- return _objectSpread(_objectSpread({}, joinedObj), {}, {
239
- slateMarkup: slateMarkup,
164
+ return {
165
+ ...joinedObj,
166
+ slateMarkup,
240
167
  markup: processedMarkup
241
- });
168
+ };
242
169
  });
243
170
  //# sourceMappingURL=index.js.map