@vue-skuilder/platform-ui 0.1.31 → 0.1.32-a

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/dist/assets/{About-D3O4ft8c.js → About-DoHuqLz9.js} +2 -2
  2. package/dist/assets/{About-D3O4ft8c.js.map → About-DoHuqLz9.js.map} +1 -1
  3. package/dist/assets/{AdminDashboard-DH-Wi1tp.js → AdminDashboard-CT283YB5.js} +2 -2
  4. package/dist/assets/{AdminDashboard-DH-Wi1tp.js.map → AdminDashboard-CT283YB5.js.map} +1 -1
  5. package/dist/assets/{ClassroomCtrlPanel-BZ2Jso_N.js → ClassroomCtrlPanel-BDEDtHY4.js} +2 -2
  6. package/dist/assets/{ClassroomCtrlPanel-BZ2Jso_N.js.map → ClassroomCtrlPanel-BDEDtHY4.js.map} +1 -1
  7. package/dist/assets/{Classrooms-Dk081Q6U.js → Classrooms-BUQy-tP2.js} +2 -2
  8. package/dist/assets/{Classrooms-Dk081Q6U.js.map → Classrooms-BUQy-tP2.js.map} +1 -1
  9. package/dist/assets/{CourseRouter-BK4PYhtA.js → CourseRouter-BZtoKZRD.js} +2 -2
  10. package/dist/assets/{CourseRouter-BK4PYhtA.js.map → CourseRouter-BZtoKZRD.js.map} +1 -1
  11. package/dist/assets/{Courses-DU7lVPoV.js → Courses-CS040Tw7.js} +2 -2
  12. package/dist/assets/{Courses-DU7lVPoV.js.map → Courses-CS040Tw7.js.map} +1 -1
  13. package/dist/assets/{DataInputFormTester-CL0gV9cw.js → DataInputFormTester-pEuS9Phg.js} +2 -2
  14. package/dist/assets/{DataInputFormTester-CL0gV9cw.js.map → DataInputFormTester-pEuS9Phg.js.map} +1 -1
  15. package/dist/assets/{EloModeration-DfSLA79x.js → EloModeration-CeIw0EQK.js} +2 -2
  16. package/dist/assets/{EloModeration-DfSLA79x.js.map → EloModeration-CeIw0EQK.js.map} +1 -1
  17. package/dist/assets/{JoinCode-njKk1YJx.js → JoinCode-ePDmlCCp.js} +2 -2
  18. package/dist/assets/{JoinCode-njKk1YJx.js.map → JoinCode-ePDmlCCp.js.map} +1 -1
  19. package/dist/assets/{NewCourseDialog-gxkU-IdZ.js → NewCourseDialog-CQ7mNlvV.js} +2 -2
  20. package/dist/assets/{NewCourseDialog-gxkU-IdZ.js.map → NewCourseDialog-CQ7mNlvV.js.map} +1 -1
  21. package/dist/assets/{ReleaseNotes-Dp_ykMR1.js → ReleaseNotes-C3ZQbVRo.js} +2 -2
  22. package/dist/assets/{ReleaseNotes-Dp_ykMR1.js.map → ReleaseNotes-C3ZQbVRo.js.map} +1 -1
  23. package/dist/assets/{RequestPasswordReset-BavuuCBu.js → RequestPasswordReset-Br-oJB_m.js} +2 -2
  24. package/dist/assets/{RequestPasswordReset-BavuuCBu.js.map → RequestPasswordReset-Br-oJB_m.js.map} +1 -1
  25. package/dist/assets/{ResetPassword-CA8HHOIy.js → ResetPassword-DHODhs-I.js} +2 -2
  26. package/dist/assets/{ResetPassword-CA8HHOIy.js.map → ResetPassword-DHODhs-I.js.map} +1 -1
  27. package/dist/assets/{Study-B4tBks0X.js → Study-C5YvoMU9.js} +2 -2
  28. package/dist/assets/{Study-B4tBks0X.js.map → Study-C5YvoMU9.js.map} +1 -1
  29. package/dist/assets/{TagInformation-CHi7V_t8.js → TagInformation-dvTAwqm2.js} +2 -2
  30. package/dist/assets/{TagInformation-CHi7V_t8.js.map → TagInformation-dvTAwqm2.js.map} +1 -1
  31. package/dist/assets/{User-DbWphbh1.js → User-BllmMsWt.js} +2 -2
  32. package/dist/assets/{User-DbWphbh1.js.map → User-BllmMsWt.js.map} +1 -1
  33. package/dist/assets/{UserStats-rzVY5epq.js → UserStats-Sf1eBdAQ.js} +2 -2
  34. package/dist/assets/{UserStats-rzVY5epq.js.map → UserStats-Sf1eBdAQ.js.map} +1 -1
  35. package/dist/assets/{VerifyEmail-pMcSlNzF.js → VerifyEmail-D-JmJym5.js} +2 -2
  36. package/dist/assets/{VerifyEmail-pMcSlNzF.js.map → VerifyEmail-D-JmJym5.js.map} +1 -1
  37. package/dist/assets/{edit-ui.es-DGbs4pNc.js → edit-ui.es-1BaJ_I4B.js} +2 -2
  38. package/dist/assets/{edit-ui.es-DGbs4pNc.js.map → edit-ui.es-1BaJ_I4B.js.map} +1 -1
  39. package/dist/assets/index-2oekPD75.js +3 -0
  40. package/dist/assets/index-2oekPD75.js.map +1 -0
  41. package/dist/assets/{index-aYts26PW.css → index-CeD0adOi.css} +1 -1
  42. package/dist/assets/{index-CSo_psn8.js → index-DHivZCyO.js} +3 -3
  43. package/dist/assets/{index-CSo_psn8.js.map → index-DHivZCyO.js.map} +1 -1
  44. package/dist/assets/{mousetrap-DZcUUEaw.js → mousetrap-ChZ3Kuin.js} +2 -2
  45. package/dist/assets/{mousetrap-DZcUUEaw.js.map → mousetrap-ChZ3Kuin.js.map} +1 -1
  46. package/dist/index.html +2 -2
  47. package/dist/sw.js +1 -1
  48. package/dist/sw.js.map +1 -1
  49. package/package.json +6 -6
  50. package/dist/assets/index-PISHyq1I.js +0 -3
  51. package/dist/assets/index-PISHyq1I.js.map +0 -1
@@ -1,2 +1,2 @@
1
- import{k as e,d as t,Y as n,r,c as a,o as i,w as o,h as u,a as s,e as l,b as c,f as d,t as f,F as p,n as h,a0 as g,a1 as m,u as v,a2 as y,G as _,a3 as w,j as b,s as C,a4 as S,a5 as I,a6 as k,g as x,a7 as D,a8 as V,K as T,D as E,a9 as A,H as F,aa as O,ab as R}from"./index-PISHyq1I.js";import{BlanksCardDataShapes as j,allCourseWare as U,BlanksCard as q,eventsToSyllableSequence as N,SyllableSeqVis as P,transposeSyllableSeq as M,SkMidi as z}from"./index-CSo_psn8.js";const B=e=>parseFloat(e),$=e=>parseInt(e,10),L={string:{databaseConverter:e=>e,previewConverter:e=>e},chess_puzzle:{databaseConverter:e=>e,previewConverter:e=>e},number:{databaseConverter:B,previewConverter:B},int:{databaseConverter:$,previewConverter:$},image:{databaseConverter:e=>e,previewConverter:e=>e?e.data:new Blob},audio:{databaseConverter:e=>e,previewConverter:e=>e?e.data:new Blob},midi:{databaseConverter:e=>e,previewConverter:e=>e},markdown:{databaseConverter:e=>e,previewConverter:e=>e},uploads:{databaseConverter:e=>e,previewConverter:e=>e}},W={tagIdentifier:"tags:",eloIdentifier:"elo:"};function J(e,t=W){const n=e.trim();if(!n)return null;const r=n.split("\n");let a,i=[];const o=[...r];let u=0;const s=t.tagIdentifier||W.tagIdentifier,l=t.eloIdentifier||W.eloIdentifier;for(let d=r.length-1;d>=0&&d>=r.length-2;d--){const e=r[d].trim();if(e.toLowerCase().startsWith(s.toLowerCase()))i=e.substring(s.length).split(",").map((e=>e.trim())).filter((e=>e)),u++;else if(e.toLowerCase().startsWith(l.toLowerCase())){const t=e.substring(l.length).trim(),n=parseInt(t,10);isNaN(n)||(a=n),u++}}u>0&&o.splice(o.length-u);const c=o.join("\n").trim();return c?{markdown:c,tags:i,elo:a}:null}function G(e){return e.split("\n---\n---\n").map((e=>e.trim())).filter((e=>e))}var H,K,Q,Y="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window||"undefined"!=typeof window?window:"undefined"!=typeof self?self:{},Z={exports:{}},X=(H||(H=1,K=Z,Q=Z.exports,function(){var e,t="Expected a function",n="__lodash_hash_undefined__",r="__lodash_placeholder__",a=32,i=128,o=1/0,u=9007199254740991,s=NaN,l=4294967295,c=[["ary",i],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",a],["partialRight",64],["rearg",256]],d="[object Arguments]",f="[object Array]",p="[object Boolean]",h="[object Date]",g="[object Error]",m="[object Function]",v="[object GeneratorFunction]",y="[object Map]",_="[object Number]",w="[object Object]",b="[object Promise]",C="[object RegExp]",S="[object Set]",I="[object String]",k="[object Symbol]",x="[object WeakMap]",D="[object ArrayBuffer]",V="[object DataView]",T="[object Float32Array]",E="[object Float64Array]",A="[object Int8Array]",F="[object Int16Array]",O="[object Int32Array]",R="[object Uint8Array]",j="[object Uint8ClampedArray]",U="[object Uint16Array]",q="[object Uint32Array]",N=/\b__p \+= '';/g,P=/\b(__p \+=) '' \+/g,M=/(__e\(.*?\)|\b__t\)) \+\n'';/g,z=/&(?:amp|lt|gt|quot|#39);/g,B=/[&<>"']/g,$=RegExp(z.source),L=RegExp(B.source),W=/<%-([\s\S]+?)%>/g,J=/<%([\s\S]+?)%>/g,G=/<%=([\s\S]+?)%>/g,H=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Z=/^\w*$/,X=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ee=/[\\^$.*+?()[\]{}|]/g,te=RegExp(ee.source),ne=/^\s+/,re=/\s/,ae=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,ie=/\{\n\/\* \[wrapped with (.+)\] \*/,oe=/,? & /,ue=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,se=/[()=,{}\[\]\/\s]/,le=/\\(\\)?/g,ce=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,de=/\w*$/,fe=/^[-+]0x[0-9a-f]+$/i,pe=/^0b[01]+$/i,he=/^\[object .+?Constructor\]$/,ge=/^0o[0-7]+$/i,me=/^(?:0|[1-9]\d*)$/,ve=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,ye=/($^)/,_e=/['\n\r\u2028\u2029\\]/g,we="\\ud800-\\udfff",be="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",Ce="\\u2700-\\u27bf",Se="a-z\\xdf-\\xf6\\xf8-\\xff",Ie="A-Z\\xc0-\\xd6\\xd8-\\xde",ke="\\ufe0e\\ufe0f",xe="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",De="["+we+"]",Ve="["+xe+"]",Te="["+be+"]",Ee="\\d+",Ae="["+Ce+"]",Fe="["+Se+"]",Oe="[^"+we+xe+Ee+Ce+Se+Ie+"]",Re="\\ud83c[\\udffb-\\udfff]",je="[^"+we+"]",Ue="(?:\\ud83c[\\udde6-\\uddff]){2}",qe="[\\ud800-\\udbff][\\udc00-\\udfff]",Ne="["+Ie+"]",Pe="\\u200d",Me="(?:"+Fe+"|"+Oe+")",ze="(?:"+Ne+"|"+Oe+")",Be="(?:['’](?:d|ll|m|re|s|t|ve))?",$e="(?:['’](?:D|LL|M|RE|S|T|VE))?",Le="(?:"+Te+"|"+Re+")?",We="["+ke+"]?",Je=We+Le+"(?:"+Pe+"(?:"+[je,Ue,qe].join("|")+")"+We+Le+")*",Ge="(?:"+[Ae,Ue,qe].join("|")+")"+Je,He="(?:"+[je+Te+"?",Te,Ue,qe,De].join("|")+")",Ke=RegExp("['’]","g"),Qe=RegExp(Te,"g"),Ye=RegExp(Re+"(?="+Re+")|"+He+Je,"g"),Ze=RegExp([Ne+"?"+Fe+"+"+Be+"(?="+[Ve,Ne,"$"].join("|")+")",ze+"+"+$e+"(?="+[Ve,Ne+Me,"$"].join("|")+")",Ne+"?"+Me+"+"+Be,Ne+"+"+$e,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Ee,Ge].join("|"),"g"),Xe=RegExp("["+Pe+we+be+ke+"]"),et=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,tt=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],nt=-1,rt={};rt[T]=rt[E]=rt[A]=rt[F]=rt[O]=rt[R]=rt[j]=rt[U]=rt[q]=!0,rt[d]=rt[f]=rt[D]=rt[p]=rt[V]=rt[h]=rt[g]=rt[m]=rt[y]=rt[_]=rt[w]=rt[C]=rt[S]=rt[I]=rt[x]=!1;var at={};at[d]=at[f]=at[D]=at[V]=at[p]=at[h]=at[T]=at[E]=at[A]=at[F]=at[O]=at[y]=at[_]=at[w]=at[C]=at[S]=at[I]=at[k]=at[R]=at[j]=at[U]=at[q]=!0,at[g]=at[m]=at[x]=!1;var it={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},ot=parseFloat,ut=parseInt,st="object"==typeof Y&&Y&&Y.Object===Object&&Y,lt="object"==typeof self&&self&&self.Object===Object&&self,ct=st||lt||Function("return this")(),dt=Q&&!Q.nodeType&&Q,ft=dt&&K&&!K.nodeType&&K,pt=ft&&ft.exports===dt,ht=pt&&st.process,gt=function(){try{return ft&&ft.require&&ft.require("util").types||ht&&ht.binding&&ht.binding("util")}catch(e){}}(),mt=gt&&gt.isArrayBuffer,vt=gt&&gt.isDate,yt=gt&&gt.isMap,_t=gt&&gt.isRegExp,wt=gt&&gt.isSet,bt=gt&&gt.isTypedArray;function Ct(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}function St(e,t,n,r){for(var a=-1,i=null==e?0:e.length;++a<i;){var o=e[a];t(r,o,n(o),e)}return r}function It(e,t){for(var n=-1,r=null==e?0:e.length;++n<r&&!1!==t(e[n],n,e););return e}function kt(e,t){for(var n=null==e?0:e.length;n--&&!1!==t(e[n],n,e););return e}function xt(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(!t(e[n],n,e))return!1;return!0}function Dt(e,t){for(var n=-1,r=null==e?0:e.length,a=0,i=[];++n<r;){var o=e[n];t(o,n,e)&&(i[a++]=o)}return i}function Vt(e,t){return!(null==e||!e.length)&&Nt(e,t,0)>-1}function Tt(e,t,n){for(var r=-1,a=null==e?0:e.length;++r<a;)if(n(t,e[r]))return!0;return!1}function Et(e,t){for(var n=-1,r=null==e?0:e.length,a=Array(r);++n<r;)a[n]=t(e[n],n,e);return a}function At(e,t){for(var n=-1,r=t.length,a=e.length;++n<r;)e[a+n]=t[n];return e}function Ft(e,t,n,r){var a=-1,i=null==e?0:e.length;for(r&&i&&(n=e[++a]);++a<i;)n=t(n,e[a],a,e);return n}function Ot(e,t,n,r){var a=null==e?0:e.length;for(r&&a&&(n=e[--a]);a--;)n=t(n,e[a],a,e);return n}function Rt(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}var jt=Bt("length");function Ut(e,t,n){var r;return n(e,(function(e,n,a){if(t(e,n,a))return r=n,!1})),r}function qt(e,t,n,r){for(var a=e.length,i=n+(r?1:-1);r?i--:++i<a;)if(t(e[i],i,e))return i;return-1}function Nt(e,t,n){return t==t?function(e,t,n){for(var r=n-1,a=e.length;++r<a;)if(e[r]===t)return r;return-1}(e,t,n):qt(e,Mt,n)}function Pt(e,t,n,r){for(var a=n-1,i=e.length;++a<i;)if(r(e[a],t))return a;return-1}function Mt(e){return e!=e}function zt(e,t){var n=null==e?0:e.length;return n?Wt(e,t)/n:s}function Bt(t){return function(n){return null==n?e:n[t]}}function $t(t){return function(n){return null==t?e:t[n]}}function Lt(e,t,n,r,a){return a(e,(function(e,a,i){n=r?(r=!1,e):t(n,e,a,i)})),n}function Wt(t,n){for(var r,a=-1,i=t.length;++a<i;){var o=n(t[a]);o!==e&&(r=r===e?o:r+o)}return r}function Jt(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}function Gt(e){return e?e.slice(0,cn(e)+1).replace(ne,""):e}function Ht(e){return function(t){return e(t)}}function Kt(e,t){return Et(t,(function(t){return e[t]}))}function Qt(e,t){return e.has(t)}function Yt(e,t){for(var n=-1,r=e.length;++n<r&&Nt(t,e[n],0)>-1;);return n}function Zt(e,t){for(var n=e.length;n--&&Nt(t,e[n],0)>-1;);return n}var Xt=$t({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"}),en=$t({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"});function tn(e){return"\\"+it[e]}function nn(e){return Xe.test(e)}function rn(e){var t=-1,n=Array(e.size);return e.forEach((function(e,r){n[++t]=[r,e]})),n}function an(e,t){return function(n){return e(t(n))}}function on(e,t){for(var n=-1,a=e.length,i=0,o=[];++n<a;){var u=e[n];u!==t&&u!==r||(e[n]=r,o[i++]=n)}return o}function un(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=e})),n}function sn(e){return nn(e)?function(e){for(var t=Ye.lastIndex=0;Ye.test(e);)++t;return t}(e):jt(e)}function ln(e){return nn(e)?e.match(Ye)||[]:function(e){return e.split("")}(e)}function cn(e){for(var t=e.length;t--&&re.test(e.charAt(t)););return t}var dn=$t({"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"}),fn=function K(Q){var Y,re=(Q=null==Q?ct:fn.defaults(ct.Object(),Q,fn.pick(ct,tt))).Array,we=Q.Date,be=Q.Error,Ce=Q.Function,Se=Q.Math,Ie=Q.Object,ke=Q.RegExp,xe=Q.String,De=Q.TypeError,Ve=re.prototype,Te=Ce.prototype,Ee=Ie.prototype,Ae=Q["__core-js_shared__"],Fe=Te.toString,Oe=Ee.hasOwnProperty,Re=0,je=(Y=/[^.]+$/.exec(Ae&&Ae.keys&&Ae.keys.IE_PROTO||""))?"Symbol(src)_1."+Y:"",Ue=Ee.toString,qe=Fe.call(Ie),Ne=ct._,Pe=ke("^"+Fe.call(Oe).replace(ee,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Me=pt?Q.Buffer:e,ze=Q.Symbol,Be=Q.Uint8Array,$e=Me?Me.allocUnsafe:e,Le=an(Ie.getPrototypeOf,Ie),We=Ie.create,Je=Ee.propertyIsEnumerable,Ge=Ve.splice,He=ze?ze.isConcatSpreadable:e,Ye=ze?ze.iterator:e,Xe=ze?ze.toStringTag:e,it=function(){try{var e=ui(Ie,"defineProperty");return e({},"",{}),e}catch(t){}}(),st=Q.clearTimeout!==ct.clearTimeout&&Q.clearTimeout,lt=we&&we.now!==ct.Date.now&&we.now,dt=Q.setTimeout!==ct.setTimeout&&Q.setTimeout,ft=Se.ceil,ht=Se.floor,gt=Ie.getOwnPropertySymbols,jt=Me?Me.isBuffer:e,$t=Q.isFinite,pn=Ve.join,hn=an(Ie.keys,Ie),gn=Se.max,mn=Se.min,vn=we.now,yn=Q.parseInt,_n=Se.random,wn=Ve.reverse,bn=ui(Q,"DataView"),Cn=ui(Q,"Map"),Sn=ui(Q,"Promise"),In=ui(Q,"Set"),kn=ui(Q,"WeakMap"),xn=ui(Ie,"create"),Dn=kn&&new kn,Vn={},Tn=ji(bn),En=ji(Cn),An=ji(Sn),Fn=ji(In),On=ji(kn),Rn=ze?ze.prototype:e,jn=Rn?Rn.valueOf:e,Un=Rn?Rn.toString:e;function qn(e){if(Xo(e)&&!Bo(e)&&!(e instanceof zn)){if(e instanceof Mn)return e;if(Oe.call(e,"__wrapped__"))return Ui(e)}return new Mn(e)}var Nn=function(){function t(){}return function(n){if(!Zo(n))return{};if(We)return We(n);t.prototype=n;var r=new t;return t.prototype=e,r}}();function Pn(){}function Mn(t,n){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!n,this.__index__=0,this.__values__=e}function zn(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=l,this.__views__=[]}function Bn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function $n(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function Ln(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function Wn(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new Ln;++t<n;)this.add(e[t])}function Jn(e){var t=this.__data__=new $n(e);this.size=t.size}function Gn(e,t){var n=Bo(e),r=!n&&zo(e),a=!n&&!r&&Jo(e),i=!n&&!r&&!a&&uu(e),o=n||r||a||i,u=o?Jt(e.length,xe):[],s=u.length;for(var l in e)!t&&!Oe.call(e,l)||o&&("length"==l||a&&("offset"==l||"parent"==l)||i&&("buffer"==l||"byteLength"==l||"byteOffset"==l)||hi(l,s))||u.push(l);return u}function Hn(t){var n=t.length;return n?t[Lr(0,n-1)]:e}function Kn(e,t){return Ei(ka(e),ar(t,0,e.length))}function Qn(e){return Ei(ka(e))}function Yn(t,n,r){(r!==e&&!No(t[n],r)||r===e&&!(n in t))&&nr(t,n,r)}function Zn(t,n,r){var a=t[n];Oe.call(t,n)&&No(a,r)&&(r!==e||n in t)||nr(t,n,r)}function Xn(e,t){for(var n=e.length;n--;)if(No(e[n][0],t))return n;return-1}function er(e,t,n,r){return lr(e,(function(e,a,i){t(r,e,n(e),i)})),r}function tr(e,t){return e&&xa(t,Tu(t),e)}function nr(e,t,n){"__proto__"==t&&it?it(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}function rr(t,n){for(var r=-1,a=n.length,i=re(a),o=null==t;++r<a;)i[r]=o?e:Iu(t,n[r]);return i}function ar(t,n,r){return t==t&&(r!==e&&(t=t<=r?t:r),n!==e&&(t=t>=n?t:n)),t}function ir(t,n,r,a,i,o){var u,s=1&n,l=2&n,c=4&n;if(r&&(u=i?r(t,a,i,o):r(t)),u!==e)return u;if(!Zo(t))return t;var f,g,b,x=Bo(t);if(x){if(g=(f=t).length,b=new f.constructor(g),g&&"string"==typeof f[0]&&Oe.call(f,"index")&&(b.index=f.index,b.input=f.input),u=b,!s)return ka(t,u)}else{var N=ci(t),P=N==m||N==v;if(Jo(t))return _a(t,s);if(N==w||N==d||P&&!i){if(u=l||P?{}:fi(t),!s)return l?function(e,t){return xa(e,li(e),t)}(t,function(e,t){return e&&xa(t,Eu(t),e)}(u,t)):function(e,t){return xa(e,si(e),t)}(t,tr(u,t))}else{if(!at[N])return i?t:{};u=function(e,t,n){var r,a,i,o=e.constructor;switch(t){case D:return wa(e);case p:case h:return new o(+e);case V:return a=e,i=n?wa(a.buffer):a.buffer,new a.constructor(i,a.byteOffset,a.byteLength);case T:case E:case A:case F:case O:case R:case j:case U:case q:return ba(e,n);case y:return new o;case _:case I:return new o(e);case C:return function(e){var t=new e.constructor(e.source,de.exec(e));return t.lastIndex=e.lastIndex,t}(e);case S:return new o;case k:return r=e,jn?Ie(jn.call(r)):{}}}(t,N,s)}}o||(o=new Jn);var M=o.get(t);if(M)return M;o.set(t,u),au(t)?t.forEach((function(e){u.add(ir(e,n,r,e,t,o))})):eu(t)&&t.forEach((function(e,a){u.set(a,ir(e,n,r,a,t,o))}));var z=x?e:(c?l?ei:Xa:l?Eu:Tu)(t);return It(z||t,(function(e,a){z&&(e=t[a=e]),Zn(u,a,ir(e,n,r,a,t,o))})),u}function or(t,n,r){var a=r.length;if(null==t)return!a;for(t=Ie(t);a--;){var i=r[a],o=n[i],u=t[i];if(u===e&&!(i in t)||!o(u))return!1}return!0}function ur(n,r,a){if("function"!=typeof n)throw new De(t);return xi((function(){n.apply(e,a)}),r)}function sr(e,t,n,r){var a=-1,i=Vt,o=!0,u=e.length,s=[],l=t.length;if(!u)return s;n&&(t=Et(t,Ht(n))),r?(i=Tt,o=!1):t.length>=200&&(i=Qt,o=!1,t=new Wn(t));e:for(;++a<u;){var c=e[a],d=null==n?c:n(c);if(c=r||0!==c?c:0,o&&d==d){for(var f=l;f--;)if(t[f]===d)continue e;s.push(c)}else i(t,d,r)||s.push(c)}return s}qn.templateSettings={escape:W,evaluate:J,interpolate:G,variable:"",imports:{_:qn}},qn.prototype=Pn.prototype,qn.prototype.constructor=qn,Mn.prototype=Nn(Pn.prototype),Mn.prototype.constructor=Mn,zn.prototype=Nn(Pn.prototype),zn.prototype.constructor=zn,Bn.prototype.clear=function(){this.__data__=xn?xn(null):{},this.size=0},Bn.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Bn.prototype.get=function(t){var r=this.__data__;if(xn){var a=r[t];return a===n?e:a}return Oe.call(r,t)?r[t]:e},Bn.prototype.has=function(t){var n=this.__data__;return xn?n[t]!==e:Oe.call(n,t)},Bn.prototype.set=function(t,r){var a=this.__data__;return this.size+=this.has(t)?0:1,a[t]=xn&&r===e?n:r,this},$n.prototype.clear=function(){this.__data__=[],this.size=0},$n.prototype.delete=function(e){var t=this.__data__,n=Xn(t,e);return!(n<0||(n==t.length-1?t.pop():Ge.call(t,n,1),--this.size,0))},$n.prototype.get=function(t){var n=this.__data__,r=Xn(n,t);return r<0?e:n[r][1]},$n.prototype.has=function(e){return Xn(this.__data__,e)>-1},$n.prototype.set=function(e,t){var n=this.__data__,r=Xn(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this},Ln.prototype.clear=function(){this.size=0,this.__data__={hash:new Bn,map:new(Cn||$n),string:new Bn}},Ln.prototype.delete=function(e){var t=ii(this,e).delete(e);return this.size-=t?1:0,t},Ln.prototype.get=function(e){return ii(this,e).get(e)},Ln.prototype.has=function(e){return ii(this,e).has(e)},Ln.prototype.set=function(e,t){var n=ii(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this},Wn.prototype.add=Wn.prototype.push=function(e){return this.__data__.set(e,n),this},Wn.prototype.has=function(e){return this.__data__.has(e)},Jn.prototype.clear=function(){this.__data__=new $n,this.size=0},Jn.prototype.delete=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n},Jn.prototype.get=function(e){return this.__data__.get(e)},Jn.prototype.has=function(e){return this.__data__.has(e)},Jn.prototype.set=function(e,t){var n=this.__data__;if(n instanceof $n){var r=n.__data__;if(!Cn||r.length<199)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new Ln(r)}return n.set(e,t),this.size=n.size,this};var lr=Ta(vr),cr=Ta(yr,!0);function dr(e,t){var n=!0;return lr(e,(function(e,r,a){return n=!!t(e,r,a)})),n}function fr(t,n,r){for(var a=-1,i=t.length;++a<i;){var o=t[a],u=n(o);if(null!=u&&(s===e?u==u&&!ou(u):r(u,s)))var s=u,l=o}return l}function pr(e,t){var n=[];return lr(e,(function(e,r,a){t(e,r,a)&&n.push(e)})),n}function hr(e,t,n,r,a){var i=-1,o=e.length;for(n||(n=pi),a||(a=[]);++i<o;){var u=e[i];t>0&&n(u)?t>1?hr(u,t-1,n,r,a):At(a,u):r||(a[a.length]=u)}return a}var gr=Ea(),mr=Ea(!0);function vr(e,t){return e&&gr(e,t,Tu)}function yr(e,t){return e&&mr(e,t,Tu)}function _r(e,t){return Dt(t,(function(t){return Ko(e[t])}))}function wr(t,n){for(var r=0,a=(n=ga(n,t)).length;null!=t&&r<a;)t=t[Ri(n[r++])];return r&&r==a?t:e}function br(e,t,n){var r=t(e);return Bo(e)?r:At(r,n(e))}function Cr(t){return null==t?t===e?"[object Undefined]":"[object Null]":Xe&&Xe in Ie(t)?function(t){var n=Oe.call(t,Xe),r=t[Xe];try{t[Xe]=e;var a=!0}catch(o){}var i=Ue.call(t);return a&&(n?t[Xe]=r:delete t[Xe]),i}(t):(n=t,Ue.call(n));var n}function Sr(e,t){return e>t}function Ir(e,t){return null!=e&&Oe.call(e,t)}function kr(e,t){return null!=e&&t in Ie(e)}function xr(t,n,r){for(var a=r?Tt:Vt,i=t[0].length,o=t.length,u=o,s=re(o),l=1/0,c=[];u--;){var d=t[u];u&&n&&(d=Et(d,Ht(n))),l=mn(d.length,l),s[u]=!r&&(n||i>=120&&d.length>=120)?new Wn(u&&d):e}d=t[0];var f=-1,p=s[0];e:for(;++f<i&&c.length<l;){var h=d[f],g=n?n(h):h;if(h=r||0!==h?h:0,!(p?Qt(p,g):a(c,g,r))){for(u=o;--u;){var m=s[u];if(!(m?Qt(m,g):a(t[u],g,r)))continue e}p&&p.push(g),c.push(h)}}return c}function Dr(t,n,r){var a=null==(t=Si(t,n=ga(n,t)))?t:t[Ri(Gi(n))];return null==a?e:Ct(a,t,r)}function Vr(e){return Xo(e)&&Cr(e)==d}function Tr(t,n,r,a,i){return t===n||(null==t||null==n||!Xo(t)&&!Xo(n)?t!=t&&n!=n:function(t,n,r,a,i,o){var u=Bo(t),s=Bo(n),l=u?f:ci(t),c=s?f:ci(n),m=(l=l==d?w:l)==w,v=(c=c==d?w:c)==w,b=l==c;if(b&&Jo(t)){if(!Jo(n))return!1;u=!0,m=!1}if(b&&!m)return o||(o=new Jn),u||uu(t)?Ya(t,n,r,a,i,o):function(e,t,n,r,a,i,o){switch(n){case V:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case D:return!(e.byteLength!=t.byteLength||!i(new Be(e),new Be(t)));case p:case h:case _:return No(+e,+t);case g:return e.name==t.name&&e.message==t.message;case C:case I:return e==t+"";case y:var u=rn;case S:var s=1&r;if(u||(u=un),e.size!=t.size&&!s)return!1;var l=o.get(e);if(l)return l==t;r|=2,o.set(e,t);var c=Ya(u(e),u(t),r,a,i,o);return o.delete(e),c;case k:if(jn)return jn.call(e)==jn.call(t)}return!1}(t,n,l,r,a,i,o);if(!(1&r)){var x=m&&Oe.call(t,"__wrapped__"),T=v&&Oe.call(n,"__wrapped__");if(x||T){var E=x?t.value():t,A=T?n.value():n;return o||(o=new Jn),i(E,A,r,a,o)}}return!!b&&(o||(o=new Jn),function(t,n,r,a,i,o){var u=1&r,s=Xa(t),l=s.length;if(l!=Xa(n).length&&!u)return!1;for(var c=l;c--;){var d=s[c];if(!(u?d in n:Oe.call(n,d)))return!1}var f=o.get(t),p=o.get(n);if(f&&p)return f==n&&p==t;var h=!0;o.set(t,n),o.set(n,t);for(var g=u;++c<l;){var m=t[d=s[c]],v=n[d];if(a)var y=u?a(v,m,d,n,t,o):a(m,v,d,t,n,o);if(!(y===e?m===v||i(m,v,r,a,o):y)){h=!1;break}g||(g="constructor"==d)}if(h&&!g){var _=t.constructor,w=n.constructor;_==w||!("constructor"in t)||!("constructor"in n)||"function"==typeof _&&_ instanceof _&&"function"==typeof w&&w instanceof w||(h=!1)}return o.delete(t),o.delete(n),h}(t,n,r,a,i,o))}(t,n,r,a,Tr,i))}function Er(t,n,r,a){var i=r.length,o=i,u=!a;if(null==t)return!o;for(t=Ie(t);i--;){var s=r[i];if(u&&s[2]?s[1]!==t[s[0]]:!(s[0]in t))return!1}for(;++i<o;){var l=(s=r[i])[0],c=t[l],d=s[1];if(u&&s[2]){if(c===e&&!(l in t))return!1}else{var f=new Jn;if(a)var p=a(c,d,l,t,n,f);if(!(p===e?Tr(d,c,3,a,f):p))return!1}}return!0}function Ar(e){return!(!Zo(e)||(t=e,je&&je in t))&&(Ko(e)?Pe:he).test(ji(e));var t}function Fr(e){return"function"==typeof e?e:null==e?ts:"object"==typeof e?Bo(e)?qr(e[0],e[1]):Ur(e):cs(e)}function Or(e){if(!_i(e))return hn(e);var t=[];for(var n in Ie(e))Oe.call(e,n)&&"constructor"!=n&&t.push(n);return t}function Rr(e,t){return e<t}function jr(e,t){var n=-1,r=Lo(e)?re(e.length):[];return lr(e,(function(e,a,i){r[++n]=t(e,a,i)})),r}function Ur(e){var t=oi(e);return 1==t.length&&t[0][2]?bi(t[0][0],t[0][1]):function(n){return n===e||Er(n,e,t)}}function qr(t,n){return mi(t)&&wi(n)?bi(Ri(t),n):function(r){var a=Iu(r,t);return a===e&&a===n?ku(r,t):Tr(n,a,3)}}function Nr(t,n,r,a,i){t!==n&&gr(n,(function(o,u){if(i||(i=new Jn),Zo(o))!function(t,n,r,a,i,o,u){var s=Ii(t,r),l=Ii(n,r),c=u.get(l);if(c)Yn(t,r,c);else{var d=o?o(s,l,r+"",t,n,u):e,f=d===e;if(f){var p=Bo(l),h=!p&&Jo(l),g=!p&&!h&&uu(l);d=l,p||h||g?Bo(s)?d=s:Wo(s)?d=ka(s):h?(f=!1,d=_a(l,!0)):g?(f=!1,d=ba(l,!0)):d=[]:nu(l)||zo(l)?(d=s,zo(s)?d=gu(s):Zo(s)&&!Ko(s)||(d=fi(l))):f=!1}f&&(u.set(l,d),i(d,l,a,o,u),u.delete(l)),Yn(t,r,d)}}(t,n,u,r,Nr,a,i);else{var s=a?a(Ii(t,u),o,u+"",t,n,i):e;s===e&&(s=o),Yn(t,u,s)}}),Eu)}function Pr(t,n){var r=t.length;if(r)return hi(n+=n<0?r:0,r)?t[n]:e}function Mr(e,t,n){t=t.length?Et(t,(function(e){return Bo(e)?function(t){return wr(t,1===e.length?e[0]:e)}:e})):[ts];var r=-1;return t=Et(t,Ht(ai())),function(e){var t=e.length;for(e.sort((function(e,t){return function(e,t,n){for(var r=-1,a=e.criteria,i=t.criteria,o=a.length,u=n.length;++r<o;){var s=Ca(a[r],i[r]);if(s)return r>=u?s:s*("desc"==n[r]?-1:1)}return e.index-t.index}(e,t,n)}));t--;)e[t]=e[t].value;return e}(jr(e,(function(e,n,a){return{criteria:Et(t,(function(t){return t(e)})),index:++r,value:e}})))}function zr(e,t,n){for(var r=-1,a=t.length,i={};++r<a;){var o=t[r],u=wr(e,o);n(u,o)&&Kr(i,ga(o,e),u)}return i}function Br(e,t,n,r){var a=r?Pt:Nt,i=-1,o=t.length,u=e;for(e===t&&(t=ka(t)),n&&(u=Et(e,Ht(n)));++i<o;)for(var s=0,l=t[i],c=n?n(l):l;(s=a(u,c,s,r))>-1;)u!==e&&Ge.call(u,s,1),Ge.call(e,s,1);return e}function $r(e,t){for(var n=e?t.length:0,r=n-1;n--;){var a=t[n];if(n==r||a!==i){var i=a;hi(a)?Ge.call(e,a,1):ua(e,a)}}return e}function Lr(e,t){return e+ht(_n()*(t-e+1))}function Wr(e,t){var n="";if(!e||t<1||t>u)return n;do{t%2&&(n+=e),(t=ht(t/2))&&(e+=e)}while(t);return n}function Jr(e,t){return Di(Ci(e,t,ts),e+"")}function Gr(e){return Hn(Nu(e))}function Hr(e,t){var n=Nu(e);return Ei(n,ar(t,0,n.length))}function Kr(t,n,r,a){if(!Zo(t))return t;for(var i=-1,o=(n=ga(n,t)).length,u=o-1,s=t;null!=s&&++i<o;){var l=Ri(n[i]),c=r;if("__proto__"===l||"constructor"===l||"prototype"===l)return t;if(i!=u){var d=s[l];(c=a?a(d,l,s):e)===e&&(c=Zo(d)?d:hi(n[i+1])?[]:{})}Zn(s,l,c),s=s[l]}return t}var Qr=Dn?function(e,t){return Dn.set(e,t),e}:ts,Yr=it?function(e,t){return it(e,"toString",{configurable:!0,enumerable:!1,value:Zu(t),writable:!0})}:ts;function Zr(e){return Ei(Nu(e))}function Xr(e,t,n){var r=-1,a=e.length;t<0&&(t=-t>a?0:a+t),(n=n>a?a:n)<0&&(n+=a),a=t>n?0:n-t>>>0,t>>>=0;for(var i=re(a);++r<a;)i[r]=e[r+t];return i}function ea(e,t){var n;return lr(e,(function(e,r,a){return!(n=t(e,r,a))})),!!n}function ta(e,t,n){var r=0,a=null==e?r:e.length;if("number"==typeof t&&t==t&&a<=2147483647){for(;r<a;){var i=r+a>>>1,o=e[i];null!==o&&!ou(o)&&(n?o<=t:o<t)?r=i+1:a=i}return a}return na(e,t,ts,n)}function na(t,n,r,a){var i=0,o=null==t?0:t.length;if(0===o)return 0;for(var u=(n=r(n))!=n,s=null===n,l=ou(n),c=n===e;i<o;){var d=ht((i+o)/2),f=r(t[d]),p=f!==e,h=null===f,g=f==f,m=ou(f);if(u)var v=a||g;else v=c?g&&(a||p):s?g&&p&&(a||!h):l?g&&p&&!h&&(a||!m):!h&&!m&&(a?f<=n:f<n);v?i=d+1:o=d}return mn(o,4294967294)}function ra(e,t){for(var n=-1,r=e.length,a=0,i=[];++n<r;){var o=e[n],u=t?t(o):o;if(!n||!No(u,s)){var s=u;i[a++]=0===o?0:o}}return i}function aa(e){return"number"==typeof e?e:ou(e)?s:+e}function ia(e){if("string"==typeof e)return e;if(Bo(e))return Et(e,ia)+"";if(ou(e))return Un?Un.call(e):"";var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function oa(e,t,n){var r=-1,a=Vt,i=e.length,o=!0,u=[],s=u;if(n)o=!1,a=Tt;else if(i>=200){var l=t?null:Wa(e);if(l)return un(l);o=!1,a=Qt,s=new Wn}else s=t?[]:u;e:for(;++r<i;){var c=e[r],d=t?t(c):c;if(c=n||0!==c?c:0,o&&d==d){for(var f=s.length;f--;)if(s[f]===d)continue e;t&&s.push(d),u.push(c)}else a(s,d,n)||(s!==u&&s.push(d),u.push(c))}return u}function ua(e,t){return null==(e=Si(e,t=ga(t,e)))||delete e[Ri(Gi(t))]}function sa(e,t,n,r){return Kr(e,t,n(wr(e,t)),r)}function la(e,t,n,r){for(var a=e.length,i=r?a:-1;(r?i--:++i<a)&&t(e[i],i,e););return n?Xr(e,r?0:i,r?i+1:a):Xr(e,r?i+1:0,r?a:i)}function ca(e,t){var n=e;return n instanceof zn&&(n=n.value()),Ft(t,(function(e,t){return t.func.apply(t.thisArg,At([e],t.args))}),n)}function da(e,t,n){var r=e.length;if(r<2)return r?oa(e[0]):[];for(var a=-1,i=re(r);++a<r;)for(var o=e[a],u=-1;++u<r;)u!=a&&(i[a]=sr(i[a]||o,e[u],t,n));return oa(hr(i,1),t,n)}function fa(t,n,r){for(var a=-1,i=t.length,o=n.length,u={};++a<i;){var s=a<o?n[a]:e;r(u,t[a],s)}return u}function pa(e){return Wo(e)?e:[]}function ha(e){return"function"==typeof e?e:ts}function ga(e,t){return Bo(e)?e:mi(e,t)?[e]:Oi(mu(e))}var ma=Jr;function va(t,n,r){var a=t.length;return r=r===e?a:r,!n&&r>=a?t:Xr(t,n,r)}var ya=st||function(e){return ct.clearTimeout(e)};function _a(e,t){if(t)return e.slice();var n=e.length,r=$e?$e(n):new e.constructor(n);return e.copy(r),r}function wa(e){var t=new e.constructor(e.byteLength);return new Be(t).set(new Be(e)),t}function ba(e,t){var n=t?wa(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}function Ca(t,n){if(t!==n){var r=t!==e,a=null===t,i=t==t,o=ou(t),u=n!==e,s=null===n,l=n==n,c=ou(n);if(!s&&!c&&!o&&t>n||o&&u&&l&&!s&&!c||a&&u&&l||!r&&l||!i)return 1;if(!a&&!o&&!c&&t<n||c&&r&&i&&!a&&!o||s&&r&&i||!u&&i||!l)return-1}return 0}function Sa(e,t,n,r){for(var a=-1,i=e.length,o=n.length,u=-1,s=t.length,l=gn(i-o,0),c=re(s+l),d=!r;++u<s;)c[u]=t[u];for(;++a<o;)(d||a<i)&&(c[n[a]]=e[a]);for(;l--;)c[u++]=e[a++];return c}function Ia(e,t,n,r){for(var a=-1,i=e.length,o=-1,u=n.length,s=-1,l=t.length,c=gn(i-u,0),d=re(c+l),f=!r;++a<c;)d[a]=e[a];for(var p=a;++s<l;)d[p+s]=t[s];for(;++o<u;)(f||a<i)&&(d[p+n[o]]=e[a++]);return d}function ka(e,t){var n=-1,r=e.length;for(t||(t=re(r));++n<r;)t[n]=e[n];return t}function xa(t,n,r,a){var i=!r;r||(r={});for(var o=-1,u=n.length;++o<u;){var s=n[o],l=a?a(r[s],t[s],s,r,t):e;l===e&&(l=t[s]),i?nr(r,s,l):Zn(r,s,l)}return r}function Da(e,t){return function(n,r){var a=Bo(n)?St:er,i=t?t():{};return a(n,e,ai(r,2),i)}}function Va(t){return Jr((function(n,r){var a=-1,i=r.length,o=i>1?r[i-1]:e,u=i>2?r[2]:e;for(o=t.length>3&&"function"==typeof o?(i--,o):e,u&&gi(r[0],r[1],u)&&(o=i<3?e:o,i=1),n=Ie(n);++a<i;){var s=r[a];s&&t(n,s,a,o)}return n}))}function Ta(e,t){return function(n,r){if(null==n)return n;if(!Lo(n))return e(n,r);for(var a=n.length,i=t?a:-1,o=Ie(n);(t?i--:++i<a)&&!1!==r(o[i],i,o););return n}}function Ea(e){return function(t,n,r){for(var a=-1,i=Ie(t),o=r(t),u=o.length;u--;){var s=o[e?u:++a];if(!1===n(i[s],s,i))break}return t}}function Aa(t){return function(n){var r=nn(n=mu(n))?ln(n):e,a=r?r[0]:n.charAt(0),i=r?va(r,1).join(""):n.slice(1);return a[t]()+i}}function Fa(e){return function(t){return Ft(Ku(zu(t).replace(Ke,"")),e,"")}}function Oa(e){return function(){var t=arguments;switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3]);case 5:return new e(t[0],t[1],t[2],t[3],t[4]);case 6:return new e(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new e(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var n=Nn(e.prototype),r=e.apply(n,t);return Zo(r)?r:n}}function Ra(t){return function(n,r,a){var i=Ie(n);if(!Lo(n)){var o=ai(r,3);n=Tu(n),r=function(e){return o(i[e],e,i)}}var u=t(n,r,a);return u>-1?i[o?n[u]:u]:e}}function ja(n){return Za((function(r){var a=r.length,i=a,o=Mn.prototype.thru;for(n&&r.reverse();i--;){var u=r[i];if("function"!=typeof u)throw new De(t);if(o&&!s&&"wrapper"==ni(u))var s=new Mn([],!0)}for(i=s?i:a;++i<a;){var l=ni(u=r[i]),c="wrapper"==l?ti(u):e;s=c&&vi(c[0])&&424==c[1]&&!c[4].length&&1==c[9]?s[ni(c[0])].apply(s,c[3]):1==u.length&&vi(u)?s[l]():s.thru(u)}return function(){var e=arguments,t=e[0];if(s&&1==e.length&&Bo(t))return s.plant(t).value();for(var n=0,i=a?r[n].apply(this,e):t;++n<a;)i=r[n].call(this,i);return i}}))}function Ua(t,n,r,a,o,u,s,l,c,d){var f=n&i,p=1&n,h=2&n,g=24&n,m=512&n,v=h?e:Oa(t);return function i(){for(var y=arguments.length,_=re(y),w=y;w--;)_[w]=arguments[w];if(g)var b=ri(i),C=function(e,t){for(var n=e.length,r=0;n--;)e[n]===t&&++r;return r}(_,b);if(a&&(_=Sa(_,a,o,g)),u&&(_=Ia(_,u,s,g)),y-=C,g&&y<d){var S=on(_,b);return $a(t,n,Ua,i.placeholder,r,_,S,l,c,d-y)}var I=p?r:this,k=h?I[t]:t;return y=_.length,l?_=function(t,n){for(var r=t.length,a=mn(n.length,r),i=ka(t);a--;){var o=n[a];t[a]=hi(o,r)?i[o]:e}return t}(_,l):m&&y>1&&_.reverse(),f&&c<y&&(_.length=c),this&&this!==ct&&this instanceof i&&(k=v||Oa(k)),k.apply(I,_)}}function qa(e,t){return function(n,r){return a=n,i=e,o=t(r),u={},vr(a,(function(e,t,n){i(u,o(e),t,n)})),u;var a,i,o,u}}function Na(t,n){return function(r,a){var i;if(r===e&&a===e)return n;if(r!==e&&(i=r),a!==e){if(i===e)return a;"string"==typeof r||"string"==typeof a?(r=ia(r),a=ia(a)):(r=aa(r),a=aa(a)),i=t(r,a)}return i}}function Pa(e){return Za((function(t){return t=Et(t,Ht(ai())),Jr((function(n){var r=this;return e(t,(function(e){return Ct(e,r,n)}))}))}))}function Ma(t,n){var r=(n=n===e?" ":ia(n)).length;if(r<2)return r?Wr(n,t):n;var a=Wr(n,ft(t/sn(n)));return nn(n)?va(ln(a),0,t).join(""):a.slice(0,t)}function za(t){return function(n,r,a){return a&&"number"!=typeof a&&gi(n,r,a)&&(r=a=e),n=du(n),r===e?(r=n,n=0):r=du(r),function(e,t,n,r){for(var a=-1,i=gn(ft((t-e)/(n||1)),0),o=re(i);i--;)o[r?i:++a]=e,e+=n;return o}(n,r,a=a===e?n<r?1:-1:du(a),t)}}function Ba(e){return function(t,n){return"string"==typeof t&&"string"==typeof n||(t=hu(t),n=hu(n)),e(t,n)}}function $a(t,n,r,i,o,u,s,l,c,d){var f=8&n;n|=f?a:64,4&(n&=~(f?64:a))||(n&=-4);var p=[t,n,o,f?u:e,f?s:e,f?e:u,f?e:s,l,c,d],h=r.apply(e,p);return vi(t)&&ki(h,p),h.placeholder=i,Vi(h,t,n)}function La(e){var t=Se[e];return function(e,n){if(e=hu(e),(n=null==n?0:mn(fu(n),292))&&$t(e)){var r=(mu(e)+"e").split("e");return+((r=(mu(t(r[0]+"e"+(+r[1]+n)))+"e").split("e"))[0]+"e"+(+r[1]-n))}return t(e)}}var Wa=In&&1/un(new In([,-0]))[1]==o?function(e){return new In(e)}:os;function Ja(e){return function(t){var n,r,a,i=ci(t);return i==y?rn(t):i==S?(n=t,r=-1,a=Array(n.size),n.forEach((function(e){a[++r]=[e,e]})),a):function(e,t){return Et(t,(function(t){return[t,e[t]]}))}(t,e(t))}}function Ga(n,o,u,s,l,c,d,f){var p=2&o;if(!p&&"function"!=typeof n)throw new De(t);var h=s?s.length:0;if(h||(o&=-97,s=l=e),d=d===e?d:gn(fu(d),0),f=f===e?f:fu(f),h-=l?l.length:0,64&o){var g=s,m=l;s=l=e}var v,y,_,w,b=p?e:ti(n),C=[n,o,u,s,l,g,m,c,d,f];if(b&&function(e,t){var n=e[1],a=t[1],o=n|a,u=o<131,s=a==i&&8==n||a==i&&256==n&&e[7].length<=t[8]||384==a&&t[7].length<=t[8]&&8==n;if(!u&&!s)return e;1&a&&(e[2]=t[2],o|=1&n?0:4);var l=t[3];if(l){var c=e[3];e[3]=c?Sa(c,l,t[4]):l,e[4]=c?on(e[3],r):t[4]}(l=t[5])&&(c=e[5],e[5]=c?Ia(c,l,t[6]):l,e[6]=c?on(e[5],r):t[6]),(l=t[7])&&(e[7]=l),a&i&&(e[8]=null==e[8]?t[8]:mn(e[8],t[8])),null==e[9]&&(e[9]=t[9]),e[0]=t[0],e[1]=o}(C,b),n=C[0],o=C[1],u=C[2],s=C[3],l=C[4],!(f=C[9]=C[9]===e?p?0:n.length:gn(C[9]-h,0))&&24&o&&(o&=-25),o&&1!=o)S=8==o||16==o?(y=o,_=f,w=Oa(v=n),function t(){for(var n=arguments.length,r=re(n),a=n,i=ri(t);a--;)r[a]=arguments[a];var o=n<3&&r[0]!==i&&r[n-1]!==i?[]:on(r,i);return(n-=o.length)<_?$a(v,y,Ua,t.placeholder,e,r,o,e,e,_-n):Ct(this&&this!==ct&&this instanceof t?w:v,this,r)}):o!=a&&33!=o||l.length?Ua.apply(e,C):function(e,t,n,r){var a=1&t,i=Oa(e);return function t(){for(var o=-1,u=arguments.length,s=-1,l=r.length,c=re(l+u),d=this&&this!==ct&&this instanceof t?i:e;++s<l;)c[s]=r[s];for(;u--;)c[s++]=arguments[++o];return Ct(d,a?n:this,c)}}(n,o,u,s);else var S=function(e,t,n){var r=1&t,a=Oa(e);return function t(){return(this&&this!==ct&&this instanceof t?a:e).apply(r?n:this,arguments)}}(n,o,u);return Vi((b?Qr:ki)(S,C),n,o)}function Ha(t,n,r,a){return t===e||No(t,Ee[r])&&!Oe.call(a,r)?n:t}function Ka(t,n,r,a,i,o){return Zo(t)&&Zo(n)&&(o.set(n,t),Nr(t,n,e,Ka,o),o.delete(n)),t}function Qa(t){return nu(t)?e:t}function Ya(t,n,r,a,i,o){var u=1&r,s=t.length,l=n.length;if(s!=l&&!(u&&l>s))return!1;var c=o.get(t),d=o.get(n);if(c&&d)return c==n&&d==t;var f=-1,p=!0,h=2&r?new Wn:e;for(o.set(t,n),o.set(n,t);++f<s;){var g=t[f],m=n[f];if(a)var v=u?a(m,g,f,n,t,o):a(g,m,f,t,n,o);if(v!==e){if(v)continue;p=!1;break}if(h){if(!Rt(n,(function(e,t){if(!Qt(h,t)&&(g===e||i(g,e,r,a,o)))return h.push(t)}))){p=!1;break}}else if(g!==m&&!i(g,m,r,a,o)){p=!1;break}}return o.delete(t),o.delete(n),p}function Za(t){return Di(Ci(t,e,Bi),t+"")}function Xa(e){return br(e,Tu,si)}function ei(e){return br(e,Eu,li)}var ti=Dn?function(e){return Dn.get(e)}:os;function ni(e){for(var t=e.name+"",n=Vn[t],r=Oe.call(Vn,t)?n.length:0;r--;){var a=n[r],i=a.func;if(null==i||i==e)return a.name}return t}function ri(e){return(Oe.call(qn,"placeholder")?qn:e).placeholder}function ai(){var e=qn.iteratee||ns;return e=e===ns?Fr:e,arguments.length?e(arguments[0],arguments[1]):e}function ii(e,t){var n,r,a=e.__data__;return("string"==(r=typeof(n=t))||"number"==r||"symbol"==r||"boolean"==r?"__proto__"!==n:null===n)?a["string"==typeof t?"string":"hash"]:a.map}function oi(e){for(var t=Tu(e),n=t.length;n--;){var r=t[n],a=e[r];t[n]=[r,a,wi(a)]}return t}function ui(t,n){var r,a,i=(a=n,null==(r=t)?e:r[a]);return Ar(i)?i:e}var si=gt?function(e){return null==e?[]:(e=Ie(e),Dt(gt(e),(function(t){return Je.call(e,t)})))}:ps,li=gt?function(e){for(var t=[];e;)At(t,si(e)),e=Le(e);return t}:ps,ci=Cr;function di(e,t,n){for(var r=-1,a=(t=ga(t,e)).length,i=!1;++r<a;){var o=Ri(t[r]);if(!(i=null!=e&&n(e,o)))break;e=e[o]}return i||++r!=a?i:!!(a=null==e?0:e.length)&&Yo(a)&&hi(o,a)&&(Bo(e)||zo(e))}function fi(e){return"function"!=typeof e.constructor||_i(e)?{}:Nn(Le(e))}function pi(e){return Bo(e)||zo(e)||!!(He&&e&&e[He])}function hi(e,t){var n=typeof e;return!!(t=null==t?u:t)&&("number"==n||"symbol"!=n&&me.test(e))&&e>-1&&e%1==0&&e<t}function gi(e,t,n){if(!Zo(n))return!1;var r=typeof t;return!!("number"==r?Lo(n)&&hi(t,n.length):"string"==r&&t in n)&&No(n[t],e)}function mi(e,t){if(Bo(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!ou(e))||Z.test(e)||!H.test(e)||null!=t&&e in Ie(t)}function vi(e){var t=ni(e),n=qn[t];if("function"!=typeof n||!(t in zn.prototype))return!1;if(e===n)return!0;var r=ti(n);return!!r&&e===r[0]}(bn&&ci(new bn(new ArrayBuffer(1)))!=V||Cn&&ci(new Cn)!=y||Sn&&ci(Sn.resolve())!=b||In&&ci(new In)!=S||kn&&ci(new kn)!=x)&&(ci=function(t){var n=Cr(t),r=n==w?t.constructor:e,a=r?ji(r):"";if(a)switch(a){case Tn:return V;case En:return y;case An:return b;case Fn:return S;case On:return x}return n});var yi=Ae?Ko:hs;function _i(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||Ee)}function wi(e){return e==e&&!Zo(e)}function bi(t,n){return function(r){return null!=r&&r[t]===n&&(n!==e||t in Ie(r))}}function Ci(t,n,r){return n=gn(n===e?t.length-1:n,0),function(){for(var e=arguments,a=-1,i=gn(e.length-n,0),o=re(i);++a<i;)o[a]=e[n+a];a=-1;for(var u=re(n+1);++a<n;)u[a]=e[a];return u[n]=r(o),Ct(t,this,u)}}function Si(e,t){return t.length<2?e:wr(e,Xr(t,0,-1))}function Ii(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}var ki=Ti(Qr),xi=dt||function(e,t){return ct.setTimeout(e,t)},Di=Ti(Yr);function Vi(e,t,n){var r,a=t+"";return Di(e,function(e,t){var n=t.length;if(!n)return e;var r=n-1;return t[r]=(n>1?"& ":"")+t[r],t=t.join(n>2?", ":" "),e.replace(ae,"{\n/* [wrapped with "+t+"] */\n")}(a,function(e,t){return It(c,(function(n){var r="_."+n[0];t&n[1]&&!Vt(e,r)&&e.push(r)})),e.sort()}((r=a.match(ie))?r[1].split(oe):[],n)))}function Ti(t){var n=0,r=0;return function(){var a=vn(),i=16-(a-r);if(r=a,i>0){if(++n>=800)return arguments[0]}else n=0;return t.apply(e,arguments)}}function Ei(t,n){var r=-1,a=t.length,i=a-1;for(n=n===e?a:n;++r<n;){var o=Lr(r,i),u=t[o];t[o]=t[r],t[r]=u}return t.length=n,t}var Ai,Fi,Oi=(Ai=Fo((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(X,(function(e,n,r,a){t.push(r?a.replace(le,"$1"):n||e)})),t}),(function(e){return 500===Fi.size&&Fi.clear(),e})),Fi=Ai.cache,Ai);function Ri(e){if("string"==typeof e||ou(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function ji(e){if(null!=e){try{return Fe.call(e)}catch(t){}try{return e+""}catch(t){}}return""}function Ui(e){if(e instanceof zn)return e.clone();var t=new Mn(e.__wrapped__,e.__chain__);return t.__actions__=ka(e.__actions__),t.__index__=e.__index__,t.__values__=e.__values__,t}var qi=Jr((function(e,t){return Wo(e)?sr(e,hr(t,1,Wo,!0)):[]})),Ni=Jr((function(t,n){var r=Gi(n);return Wo(r)&&(r=e),Wo(t)?sr(t,hr(n,1,Wo,!0),ai(r,2)):[]})),Pi=Jr((function(t,n){var r=Gi(n);return Wo(r)&&(r=e),Wo(t)?sr(t,hr(n,1,Wo,!0),e,r):[]}));function Mi(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var a=null==n?0:fu(n);return a<0&&(a=gn(r+a,0)),qt(e,ai(t,3),a)}function zi(t,n,r){var a=null==t?0:t.length;if(!a)return-1;var i=a-1;return r!==e&&(i=fu(r),i=r<0?gn(a+i,0):mn(i,a-1)),qt(t,ai(n,3),i,!0)}function Bi(e){return null!=e&&e.length?hr(e,1):[]}function $i(t){return t&&t.length?t[0]:e}var Li=Jr((function(e){var t=Et(e,pa);return t.length&&t[0]===e[0]?xr(t):[]})),Wi=Jr((function(t){var n=Gi(t),r=Et(t,pa);return n===Gi(r)?n=e:r.pop(),r.length&&r[0]===t[0]?xr(r,ai(n,2)):[]})),Ji=Jr((function(t){var n=Gi(t),r=Et(t,pa);return(n="function"==typeof n?n:e)&&r.pop(),r.length&&r[0]===t[0]?xr(r,e,n):[]}));function Gi(t){var n=null==t?0:t.length;return n?t[n-1]:e}var Hi=Jr(Ki);function Ki(e,t){return e&&e.length&&t&&t.length?Br(e,t):e}var Qi=Za((function(e,t){var n=null==e?0:e.length,r=rr(e,t);return $r(e,Et(t,(function(e){return hi(e,n)?+e:e})).sort(Ca)),r}));function Yi(e){return null==e?e:wn.call(e)}var Zi=Jr((function(e){return oa(hr(e,1,Wo,!0))})),Xi=Jr((function(t){var n=Gi(t);return Wo(n)&&(n=e),oa(hr(t,1,Wo,!0),ai(n,2))})),eo=Jr((function(t){var n=Gi(t);return n="function"==typeof n?n:e,oa(hr(t,1,Wo,!0),e,n)}));function to(e){if(!e||!e.length)return[];var t=0;return e=Dt(e,(function(e){if(Wo(e))return t=gn(e.length,t),!0})),Jt(t,(function(t){return Et(e,Bt(t))}))}function no(t,n){if(!t||!t.length)return[];var r=to(t);return null==n?r:Et(r,(function(t){return Ct(n,e,t)}))}var ro=Jr((function(e,t){return Wo(e)?sr(e,t):[]})),ao=Jr((function(e){return da(Dt(e,Wo))})),io=Jr((function(t){var n=Gi(t);return Wo(n)&&(n=e),da(Dt(t,Wo),ai(n,2))})),oo=Jr((function(t){var n=Gi(t);return n="function"==typeof n?n:e,da(Dt(t,Wo),e,n)})),uo=Jr(to),so=Jr((function(t){var n=t.length,r=n>1?t[n-1]:e;return r="function"==typeof r?(t.pop(),r):e,no(t,r)}));function lo(e){var t=qn(e);return t.__chain__=!0,t}function co(e,t){return t(e)}var fo=Za((function(t){var n=t.length,r=n?t[0]:0,a=this.__wrapped__,i=function(e){return rr(e,t)};return!(n>1||this.__actions__.length)&&a instanceof zn&&hi(r)?((a=a.slice(r,+r+(n?1:0))).__actions__.push({func:co,args:[i],thisArg:e}),new Mn(a,this.__chain__).thru((function(t){return n&&!t.length&&t.push(e),t}))):this.thru(i)})),po=Da((function(e,t,n){Oe.call(e,n)?++e[n]:nr(e,n,1)})),ho=Ra(Mi),go=Ra(zi);function mo(e,t){return(Bo(e)?It:lr)(e,ai(t,3))}function vo(e,t){return(Bo(e)?kt:cr)(e,ai(t,3))}var yo=Da((function(e,t,n){Oe.call(e,n)?e[n].push(t):nr(e,n,[t])})),_o=Jr((function(e,t,n){var r=-1,a="function"==typeof t,i=Lo(e)?re(e.length):[];return lr(e,(function(e){i[++r]=a?Ct(t,e,n):Dr(e,t,n)})),i})),wo=Da((function(e,t,n){nr(e,n,t)}));function bo(e,t){return(Bo(e)?Et:jr)(e,ai(t,3))}var Co=Da((function(e,t,n){e[n?0:1].push(t)}),(function(){return[[],[]]})),So=Jr((function(e,t){if(null==e)return[];var n=t.length;return n>1&&gi(e,t[0],t[1])?t=[]:n>2&&gi(t[0],t[1],t[2])&&(t=[t[0]]),Mr(e,hr(t,1),[])})),Io=lt||function(){return ct.Date.now()};function ko(t,n,r){return n=r?e:n,n=t&&null==n?t.length:n,Ga(t,i,e,e,e,e,n)}function xo(n,r){var a;if("function"!=typeof r)throw new De(t);return n=fu(n),function(){return--n>0&&(a=r.apply(this,arguments)),n<=1&&(r=e),a}}var Do=Jr((function(e,t,n){var r=1;if(n.length){var i=on(n,ri(Do));r|=a}return Ga(e,r,t,n,i)})),Vo=Jr((function(e,t,n){var r=3;if(n.length){var i=on(n,ri(Vo));r|=a}return Ga(t,r,e,n,i)}));function To(n,r,a){var i,o,u,s,l,c,d=0,f=!1,p=!1,h=!0;if("function"!=typeof n)throw new De(t);function g(t){var r=i,a=o;return i=o=e,d=t,s=n.apply(a,r)}function m(t){var n=t-c;return c===e||n>=r||n<0||p&&t-d>=u}function v(){var e,t,n=Io();if(m(n))return y(n);l=xi(v,(t=r-((e=n)-c),p?mn(t,u-(e-d)):t))}function y(t){return l=e,h&&i?g(t):(i=o=e,s)}function _(){var t,n=Io(),a=m(n);if(i=arguments,o=this,c=n,a){if(l===e)return d=t=c,l=xi(v,r),f?g(t):s;if(p)return ya(l),l=xi(v,r),g(c)}return l===e&&(l=xi(v,r)),s}return r=hu(r)||0,Zo(a)&&(f=!!a.leading,u=(p="maxWait"in a)?gn(hu(a.maxWait)||0,r):u,h="trailing"in a?!!a.trailing:h),_.cancel=function(){l!==e&&ya(l),d=0,i=c=o=l=e},_.flush=function(){return l===e?s:y(Io())},_}var Eo=Jr((function(e,t){return ur(e,1,t)})),Ao=Jr((function(e,t,n){return ur(e,hu(t)||0,n)}));function Fo(e,n){if("function"!=typeof e||null!=n&&"function"!=typeof n)throw new De(t);var r=function(){var t=arguments,a=n?n.apply(this,t):t[0],i=r.cache;if(i.has(a))return i.get(a);var o=e.apply(this,t);return r.cache=i.set(a,o)||i,o};return r.cache=new(Fo.Cache||Ln),r}function Oo(e){if("function"!=typeof e)throw new De(t);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}Fo.Cache=Ln;var Ro=ma((function(e,t){var n=(t=1==t.length&&Bo(t[0])?Et(t[0],Ht(ai())):Et(hr(t,1),Ht(ai()))).length;return Jr((function(r){for(var a=-1,i=mn(r.length,n);++a<i;)r[a]=t[a].call(this,r[a]);return Ct(e,this,r)}))})),jo=Jr((function(t,n){var r=on(n,ri(jo));return Ga(t,a,e,n,r)})),Uo=Jr((function(t,n){var r=on(n,ri(Uo));return Ga(t,64,e,n,r)})),qo=Za((function(t,n){return Ga(t,256,e,e,e,n)}));function No(e,t){return e===t||e!=e&&t!=t}var Po=Ba(Sr),Mo=Ba((function(e,t){return e>=t})),zo=Vr(function(){return arguments}())?Vr:function(e){return Xo(e)&&Oe.call(e,"callee")&&!Je.call(e,"callee")},Bo=re.isArray,$o=mt?Ht(mt):function(e){return Xo(e)&&Cr(e)==D};function Lo(e){return null!=e&&Yo(e.length)&&!Ko(e)}function Wo(e){return Xo(e)&&Lo(e)}var Jo=jt||hs,Go=vt?Ht(vt):function(e){return Xo(e)&&Cr(e)==h};function Ho(e){if(!Xo(e))return!1;var t=Cr(e);return t==g||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!nu(e)}function Ko(e){if(!Zo(e))return!1;var t=Cr(e);return t==m||t==v||"[object AsyncFunction]"==t||"[object Proxy]"==t}function Qo(e){return"number"==typeof e&&e==fu(e)}function Yo(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=u}function Zo(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function Xo(e){return null!=e&&"object"==typeof e}var eu=yt?Ht(yt):function(e){return Xo(e)&&ci(e)==y};function tu(e){return"number"==typeof e||Xo(e)&&Cr(e)==_}function nu(e){if(!Xo(e)||Cr(e)!=w)return!1;var t=Le(e);if(null===t)return!0;var n=Oe.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&Fe.call(n)==qe}var ru=_t?Ht(_t):function(e){return Xo(e)&&Cr(e)==C},au=wt?Ht(wt):function(e){return Xo(e)&&ci(e)==S};function iu(e){return"string"==typeof e||!Bo(e)&&Xo(e)&&Cr(e)==I}function ou(e){return"symbol"==typeof e||Xo(e)&&Cr(e)==k}var uu=bt?Ht(bt):function(e){return Xo(e)&&Yo(e.length)&&!!rt[Cr(e)]},su=Ba(Rr),lu=Ba((function(e,t){return e<=t}));function cu(e){if(!e)return[];if(Lo(e))return iu(e)?ln(e):ka(e);if(Ye&&e[Ye])return function(e){for(var t,n=[];!(t=e.next()).done;)n.push(t.value);return n}(e[Ye]());var t=ci(e);return(t==y?rn:t==S?un:Nu)(e)}function du(e){return e?(e=hu(e))===o||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}function fu(e){var t=du(e),n=t%1;return t==t?n?t-n:t:0}function pu(e){return e?ar(fu(e),0,l):0}function hu(e){if("number"==typeof e)return e;if(ou(e))return s;if(Zo(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=Zo(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=Gt(e);var n=pe.test(e);return n||ge.test(e)?ut(e.slice(2),n?2:8):fe.test(e)?s:+e}function gu(e){return xa(e,Eu(e))}function mu(e){return null==e?"":ia(e)}var vu=Va((function(e,t){if(_i(t)||Lo(t))xa(t,Tu(t),e);else for(var n in t)Oe.call(t,n)&&Zn(e,n,t[n])})),yu=Va((function(e,t){xa(t,Eu(t),e)})),_u=Va((function(e,t,n,r){xa(t,Eu(t),e,r)})),wu=Va((function(e,t,n,r){xa(t,Tu(t),e,r)})),bu=Za(rr),Cu=Jr((function(t,n){t=Ie(t);var r=-1,a=n.length,i=a>2?n[2]:e;for(i&&gi(n[0],n[1],i)&&(a=1);++r<a;)for(var o=n[r],u=Eu(o),s=-1,l=u.length;++s<l;){var c=u[s],d=t[c];(d===e||No(d,Ee[c])&&!Oe.call(t,c))&&(t[c]=o[c])}return t})),Su=Jr((function(t){return t.push(e,Ka),Ct(Fu,e,t)}));function Iu(t,n,r){var a=null==t?e:wr(t,n);return a===e?r:a}function ku(e,t){return null!=e&&di(e,t,kr)}var xu=qa((function(e,t,n){null!=t&&"function"!=typeof t.toString&&(t=Ue.call(t)),e[t]=n}),Zu(ts)),Du=qa((function(e,t,n){null!=t&&"function"!=typeof t.toString&&(t=Ue.call(t)),Oe.call(e,t)?e[t].push(n):e[t]=[n]}),ai),Vu=Jr(Dr);function Tu(e){return Lo(e)?Gn(e):Or(e)}function Eu(e){return Lo(e)?Gn(e,!0):function(e){if(!Zo(e))return function(e){var t=[];if(null!=e)for(var n in Ie(e))t.push(n);return t}(e);var t=_i(e),n=[];for(var r in e)("constructor"!=r||!t&&Oe.call(e,r))&&n.push(r);return n}(e)}var Au=Va((function(e,t,n){Nr(e,t,n)})),Fu=Va((function(e,t,n,r){Nr(e,t,n,r)})),Ou=Za((function(e,t){var n={};if(null==e)return n;var r=!1;t=Et(t,(function(t){return t=ga(t,e),r||(r=t.length>1),t})),xa(e,ei(e),n),r&&(n=ir(n,7,Qa));for(var a=t.length;a--;)ua(n,t[a]);return n})),Ru=Za((function(e,t){return null==e?{}:zr(n=e,t,(function(e,t){return ku(n,t)}));var n}));function ju(e,t){if(null==e)return{};var n=Et(ei(e),(function(e){return[e]}));return t=ai(t),zr(e,n,(function(e,n){return t(e,n[0])}))}var Uu=Ja(Tu),qu=Ja(Eu);function Nu(e){return null==e?[]:Kt(e,Tu(e))}var Pu=Fa((function(e,t,n){return t=t.toLowerCase(),e+(n?Mu(t):t)}));function Mu(e){return Hu(mu(e).toLowerCase())}function zu(e){return(e=mu(e))&&e.replace(ve,Xt).replace(Qe,"")}var Bu=Fa((function(e,t,n){return e+(n?"-":"")+t.toLowerCase()})),$u=Fa((function(e,t,n){return e+(n?" ":"")+t.toLowerCase()})),Lu=Aa("toLowerCase"),Wu=Fa((function(e,t,n){return e+(n?"_":"")+t.toLowerCase()})),Ju=Fa((function(e,t,n){return e+(n?" ":"")+Hu(t)})),Gu=Fa((function(e,t,n){return e+(n?" ":"")+t.toUpperCase()})),Hu=Aa("toUpperCase");function Ku(t,n,r){return t=mu(t),(n=r?e:n)===e?(a=t,et.test(a)?function(e){return e.match(Ze)||[]}(t):function(e){return e.match(ue)||[]}(t)):t.match(n)||[];var a}var Qu=Jr((function(t,n){try{return Ct(t,e,n)}catch(r){return Ho(r)?r:new be(r)}})),Yu=Za((function(e,t){return It(t,(function(t){t=Ri(t),nr(e,t,Do(e[t],e))})),e}));function Zu(e){return function(){return e}}var Xu=ja(),es=ja(!0);function ts(e){return e}function ns(e){return Fr("function"==typeof e?e:ir(e,1))}var rs=Jr((function(e,t){return function(n){return Dr(n,e,t)}})),as=Jr((function(e,t){return function(n){return Dr(e,n,t)}}));function is(e,t,n){var r=Tu(t),a=_r(t,r);null!=n||Zo(t)&&(a.length||!r.length)||(n=t,t=e,e=this,a=_r(t,Tu(t)));var i=!(Zo(n)&&"chain"in n&&!n.chain),o=Ko(e);return It(a,(function(n){var r=t[n];e[n]=r,o&&(e.prototype[n]=function(){var t=this.__chain__;if(i||t){var n=e(this.__wrapped__);return(n.__actions__=ka(this.__actions__)).push({func:r,args:arguments,thisArg:e}),n.__chain__=t,n}return r.apply(e,At([this.value()],arguments))})})),e}function os(){}var us=Pa(Et),ss=Pa(xt),ls=Pa(Rt);function cs(e){return mi(e)?Bt(Ri(e)):function(e){return function(t){return wr(t,e)}}(e)}var ds=za(),fs=za(!0);function ps(){return[]}function hs(){return!1}var gs,ms=Na((function(e,t){return e+t}),0),vs=La("ceil"),ys=Na((function(e,t){return e/t}),1),_s=La("floor"),ws=Na((function(e,t){return e*t}),1),bs=La("round"),Cs=Na((function(e,t){return e-t}),0);return qn.after=function(e,n){if("function"!=typeof n)throw new De(t);return e=fu(e),function(){if(--e<1)return n.apply(this,arguments)}},qn.ary=ko,qn.assign=vu,qn.assignIn=yu,qn.assignInWith=_u,qn.assignWith=wu,qn.at=bu,qn.before=xo,qn.bind=Do,qn.bindAll=Yu,qn.bindKey=Vo,qn.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return Bo(e)?e:[e]},qn.chain=lo,qn.chunk=function(t,n,r){n=(r?gi(t,n,r):n===e)?1:gn(fu(n),0);var a=null==t?0:t.length;if(!a||n<1)return[];for(var i=0,o=0,u=re(ft(a/n));i<a;)u[o++]=Xr(t,i,i+=n);return u},qn.compact=function(e){for(var t=-1,n=null==e?0:e.length,r=0,a=[];++t<n;){var i=e[t];i&&(a[r++]=i)}return a},qn.concat=function(){var e=arguments.length;if(!e)return[];for(var t=re(e-1),n=arguments[0],r=e;r--;)t[r-1]=arguments[r];return At(Bo(n)?ka(n):[n],hr(t,1))},qn.cond=function(e){var n=null==e?0:e.length,r=ai();return e=n?Et(e,(function(e){if("function"!=typeof e[1])throw new De(t);return[r(e[0]),e[1]]})):[],Jr((function(t){for(var r=-1;++r<n;){var a=e[r];if(Ct(a[0],this,t))return Ct(a[1],this,t)}}))},qn.conforms=function(e){return t=ir(e,1),n=Tu(t),function(e){return or(e,t,n)};var t,n},qn.constant=Zu,qn.countBy=po,qn.create=function(e,t){var n=Nn(e);return null==t?n:tr(n,t)},qn.curry=function t(n,r,a){var i=Ga(n,8,e,e,e,e,e,r=a?e:r);return i.placeholder=t.placeholder,i},qn.curryRight=function t(n,r,a){var i=Ga(n,16,e,e,e,e,e,r=a?e:r);return i.placeholder=t.placeholder,i},qn.debounce=To,qn.defaults=Cu,qn.defaultsDeep=Su,qn.defer=Eo,qn.delay=Ao,qn.difference=qi,qn.differenceBy=Ni,qn.differenceWith=Pi,qn.drop=function(t,n,r){var a=null==t?0:t.length;return a?Xr(t,(n=r||n===e?1:fu(n))<0?0:n,a):[]},qn.dropRight=function(t,n,r){var a=null==t?0:t.length;return a?Xr(t,0,(n=a-(n=r||n===e?1:fu(n)))<0?0:n):[]},qn.dropRightWhile=function(e,t){return e&&e.length?la(e,ai(t,3),!0,!0):[]},qn.dropWhile=function(e,t){return e&&e.length?la(e,ai(t,3),!0):[]},qn.fill=function(t,n,r,a){var i=null==t?0:t.length;return i?(r&&"number"!=typeof r&&gi(t,n,r)&&(r=0,a=i),function(t,n,r,a){var i=t.length;for((r=fu(r))<0&&(r=-r>i?0:i+r),(a=a===e||a>i?i:fu(a))<0&&(a+=i),a=r>a?0:pu(a);r<a;)t[r++]=n;return t}(t,n,r,a)):[]},qn.filter=function(e,t){return(Bo(e)?Dt:pr)(e,ai(t,3))},qn.flatMap=function(e,t){return hr(bo(e,t),1)},qn.flatMapDeep=function(e,t){return hr(bo(e,t),o)},qn.flatMapDepth=function(t,n,r){return r=r===e?1:fu(r),hr(bo(t,n),r)},qn.flatten=Bi,qn.flattenDeep=function(e){return null!=e&&e.length?hr(e,o):[]},qn.flattenDepth=function(t,n){return null!=t&&t.length?hr(t,n=n===e?1:fu(n)):[]},qn.flip=function(e){return Ga(e,512)},qn.flow=Xu,qn.flowRight=es,qn.fromPairs=function(e){for(var t=-1,n=null==e?0:e.length,r={};++t<n;){var a=e[t];r[a[0]]=a[1]}return r},qn.functions=function(e){return null==e?[]:_r(e,Tu(e))},qn.functionsIn=function(e){return null==e?[]:_r(e,Eu(e))},qn.groupBy=yo,qn.initial=function(e){return null!=e&&e.length?Xr(e,0,-1):[]},qn.intersection=Li,qn.intersectionBy=Wi,qn.intersectionWith=Ji,qn.invert=xu,qn.invertBy=Du,qn.invokeMap=_o,qn.iteratee=ns,qn.keyBy=wo,qn.keys=Tu,qn.keysIn=Eu,qn.map=bo,qn.mapKeys=function(e,t){var n={};return t=ai(t,3),vr(e,(function(e,r,a){nr(n,t(e,r,a),e)})),n},qn.mapValues=function(e,t){var n={};return t=ai(t,3),vr(e,(function(e,r,a){nr(n,r,t(e,r,a))})),n},qn.matches=function(e){return Ur(ir(e,1))},qn.matchesProperty=function(e,t){return qr(e,ir(t,1))},qn.memoize=Fo,qn.merge=Au,qn.mergeWith=Fu,qn.method=rs,qn.methodOf=as,qn.mixin=is,qn.negate=Oo,qn.nthArg=function(e){return e=fu(e),Jr((function(t){return Pr(t,e)}))},qn.omit=Ou,qn.omitBy=function(e,t){return ju(e,Oo(ai(t)))},qn.once=function(e){return xo(2,e)},qn.orderBy=function(t,n,r,a){return null==t?[]:(Bo(n)||(n=null==n?[]:[n]),Bo(r=a?e:r)||(r=null==r?[]:[r]),Mr(t,n,r))},qn.over=us,qn.overArgs=Ro,qn.overEvery=ss,qn.overSome=ls,qn.partial=jo,qn.partialRight=Uo,qn.partition=Co,qn.pick=Ru,qn.pickBy=ju,qn.property=cs,qn.propertyOf=function(t){return function(n){return null==t?e:wr(t,n)}},qn.pull=Hi,qn.pullAll=Ki,qn.pullAllBy=function(e,t,n){return e&&e.length&&t&&t.length?Br(e,t,ai(n,2)):e},qn.pullAllWith=function(t,n,r){return t&&t.length&&n&&n.length?Br(t,n,e,r):t},qn.pullAt=Qi,qn.range=ds,qn.rangeRight=fs,qn.rearg=qo,qn.reject=function(e,t){return(Bo(e)?Dt:pr)(e,Oo(ai(t,3)))},qn.remove=function(e,t){var n=[];if(!e||!e.length)return n;var r=-1,a=[],i=e.length;for(t=ai(t,3);++r<i;){var o=e[r];t(o,r,e)&&(n.push(o),a.push(r))}return $r(e,a),n},qn.rest=function(n,r){if("function"!=typeof n)throw new De(t);return Jr(n,r=r===e?r:fu(r))},qn.reverse=Yi,qn.sampleSize=function(t,n,r){return n=(r?gi(t,n,r):n===e)?1:fu(n),(Bo(t)?Kn:Hr)(t,n)},qn.set=function(e,t,n){return null==e?e:Kr(e,t,n)},qn.setWith=function(t,n,r,a){return a="function"==typeof a?a:e,null==t?t:Kr(t,n,r,a)},qn.shuffle=function(e){return(Bo(e)?Qn:Zr)(e)},qn.slice=function(t,n,r){var a=null==t?0:t.length;return a?(r&&"number"!=typeof r&&gi(t,n,r)?(n=0,r=a):(n=null==n?0:fu(n),r=r===e?a:fu(r)),Xr(t,n,r)):[]},qn.sortBy=So,qn.sortedUniq=function(e){return e&&e.length?ra(e):[]},qn.sortedUniqBy=function(e,t){return e&&e.length?ra(e,ai(t,2)):[]},qn.split=function(t,n,r){return r&&"number"!=typeof r&&gi(t,n,r)&&(n=r=e),(r=r===e?l:r>>>0)?(t=mu(t))&&("string"==typeof n||null!=n&&!ru(n))&&!(n=ia(n))&&nn(t)?va(ln(t),0,r):t.split(n,r):[]},qn.spread=function(e,n){if("function"!=typeof e)throw new De(t);return n=null==n?0:gn(fu(n),0),Jr((function(t){var r=t[n],a=va(t,0,n);return r&&At(a,r),Ct(e,this,a)}))},qn.tail=function(e){var t=null==e?0:e.length;return t?Xr(e,1,t):[]},qn.take=function(t,n,r){return t&&t.length?Xr(t,0,(n=r||n===e?1:fu(n))<0?0:n):[]},qn.takeRight=function(t,n,r){var a=null==t?0:t.length;return a?Xr(t,(n=a-(n=r||n===e?1:fu(n)))<0?0:n,a):[]},qn.takeRightWhile=function(e,t){return e&&e.length?la(e,ai(t,3),!1,!0):[]},qn.takeWhile=function(e,t){return e&&e.length?la(e,ai(t,3)):[]},qn.tap=function(e,t){return t(e),e},qn.throttle=function(e,n,r){var a=!0,i=!0;if("function"!=typeof e)throw new De(t);return Zo(r)&&(a="leading"in r?!!r.leading:a,i="trailing"in r?!!r.trailing:i),To(e,n,{leading:a,maxWait:n,trailing:i})},qn.thru=co,qn.toArray=cu,qn.toPairs=Uu,qn.toPairsIn=qu,qn.toPath=function(e){return Bo(e)?Et(e,Ri):ou(e)?[e]:ka(Oi(mu(e)))},qn.toPlainObject=gu,qn.transform=function(e,t,n){var r=Bo(e),a=r||Jo(e)||uu(e);if(t=ai(t,4),null==n){var i=e&&e.constructor;n=a?r?new i:[]:Zo(e)&&Ko(i)?Nn(Le(e)):{}}return(a?It:vr)(e,(function(e,r,a){return t(n,e,r,a)})),n},qn.unary=function(e){return ko(e,1)},qn.union=Zi,qn.unionBy=Xi,qn.unionWith=eo,qn.uniq=function(e){return e&&e.length?oa(e):[]},qn.uniqBy=function(e,t){return e&&e.length?oa(e,ai(t,2)):[]},qn.uniqWith=function(t,n){return n="function"==typeof n?n:e,t&&t.length?oa(t,e,n):[]},qn.unset=function(e,t){return null==e||ua(e,t)},qn.unzip=to,qn.unzipWith=no,qn.update=function(e,t,n){return null==e?e:sa(e,t,ha(n))},qn.updateWith=function(t,n,r,a){return a="function"==typeof a?a:e,null==t?t:sa(t,n,ha(r),a)},qn.values=Nu,qn.valuesIn=function(e){return null==e?[]:Kt(e,Eu(e))},qn.without=ro,qn.words=Ku,qn.wrap=function(e,t){return jo(ha(t),e)},qn.xor=ao,qn.xorBy=io,qn.xorWith=oo,qn.zip=uo,qn.zipObject=function(e,t){return fa(e||[],t||[],Zn)},qn.zipObjectDeep=function(e,t){return fa(e||[],t||[],Kr)},qn.zipWith=so,qn.entries=Uu,qn.entriesIn=qu,qn.extend=yu,qn.extendWith=_u,is(qn,qn),qn.add=ms,qn.attempt=Qu,qn.camelCase=Pu,qn.capitalize=Mu,qn.ceil=vs,qn.clamp=function(t,n,r){return r===e&&(r=n,n=e),r!==e&&(r=(r=hu(r))==r?r:0),n!==e&&(n=(n=hu(n))==n?n:0),ar(hu(t),n,r)},qn.clone=function(e){return ir(e,4)},qn.cloneDeep=function(e){return ir(e,5)},qn.cloneDeepWith=function(t,n){return ir(t,5,n="function"==typeof n?n:e)},qn.cloneWith=function(t,n){return ir(t,4,n="function"==typeof n?n:e)},qn.conformsTo=function(e,t){return null==t||or(e,t,Tu(t))},qn.deburr=zu,qn.defaultTo=function(e,t){return null==e||e!=e?t:e},qn.divide=ys,qn.endsWith=function(t,n,r){t=mu(t),n=ia(n);var a=t.length,i=r=r===e?a:ar(fu(r),0,a);return(r-=n.length)>=0&&t.slice(r,i)==n},qn.eq=No,qn.escape=function(e){return(e=mu(e))&&L.test(e)?e.replace(B,en):e},qn.escapeRegExp=function(e){return(e=mu(e))&&te.test(e)?e.replace(ee,"\\$&"):e},qn.every=function(t,n,r){var a=Bo(t)?xt:dr;return r&&gi(t,n,r)&&(n=e),a(t,ai(n,3))},qn.find=ho,qn.findIndex=Mi,qn.findKey=function(e,t){return Ut(e,ai(t,3),vr)},qn.findLast=go,qn.findLastIndex=zi,qn.findLastKey=function(e,t){return Ut(e,ai(t,3),yr)},qn.floor=_s,qn.forEach=mo,qn.forEachRight=vo,qn.forIn=function(e,t){return null==e?e:gr(e,ai(t,3),Eu)},qn.forInRight=function(e,t){return null==e?e:mr(e,ai(t,3),Eu)},qn.forOwn=function(e,t){return e&&vr(e,ai(t,3))},qn.forOwnRight=function(e,t){return e&&yr(e,ai(t,3))},qn.get=Iu,qn.gt=Po,qn.gte=Mo,qn.has=function(e,t){return null!=e&&di(e,t,Ir)},qn.hasIn=ku,qn.head=$i,qn.identity=ts,qn.includes=function(e,t,n,r){e=Lo(e)?e:Nu(e),n=n&&!r?fu(n):0;var a=e.length;return n<0&&(n=gn(a+n,0)),iu(e)?n<=a&&e.indexOf(t,n)>-1:!!a&&Nt(e,t,n)>-1},qn.indexOf=function(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var a=null==n?0:fu(n);return a<0&&(a=gn(r+a,0)),Nt(e,t,a)},qn.inRange=function(t,n,r){return n=du(n),r===e?(r=n,n=0):r=du(r),(a=t=hu(t))>=mn(i=n,o=r)&&a<gn(i,o);var a,i,o},qn.invoke=Vu,qn.isArguments=zo,qn.isArray=Bo,qn.isArrayBuffer=$o,qn.isArrayLike=Lo,qn.isArrayLikeObject=Wo,qn.isBoolean=function(e){return!0===e||!1===e||Xo(e)&&Cr(e)==p},qn.isBuffer=Jo,qn.isDate=Go,qn.isElement=function(e){return Xo(e)&&1===e.nodeType&&!nu(e)},qn.isEmpty=function(e){if(null==e)return!0;if(Lo(e)&&(Bo(e)||"string"==typeof e||"function"==typeof e.splice||Jo(e)||uu(e)||zo(e)))return!e.length;var t=ci(e);if(t==y||t==S)return!e.size;if(_i(e))return!Or(e).length;for(var n in e)if(Oe.call(e,n))return!1;return!0},qn.isEqual=function(e,t){return Tr(e,t)},qn.isEqualWith=function(t,n,r){var a=(r="function"==typeof r?r:e)?r(t,n):e;return a===e?Tr(t,n,e,r):!!a},qn.isError=Ho,qn.isFinite=function(e){return"number"==typeof e&&$t(e)},qn.isFunction=Ko,qn.isInteger=Qo,qn.isLength=Yo,qn.isMap=eu,qn.isMatch=function(e,t){return e===t||Er(e,t,oi(t))},qn.isMatchWith=function(t,n,r){return r="function"==typeof r?r:e,Er(t,n,oi(n),r)},qn.isNaN=function(e){return tu(e)&&e!=+e},qn.isNative=function(e){if(yi(e))throw new be("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return Ar(e)},qn.isNil=function(e){return null==e},qn.isNull=function(e){return null===e},qn.isNumber=tu,qn.isObject=Zo,qn.isObjectLike=Xo,qn.isPlainObject=nu,qn.isRegExp=ru,qn.isSafeInteger=function(e){return Qo(e)&&e>=-9007199254740991&&e<=u},qn.isSet=au,qn.isString=iu,qn.isSymbol=ou,qn.isTypedArray=uu,qn.isUndefined=function(t){return t===e},qn.isWeakMap=function(e){return Xo(e)&&ci(e)==x},qn.isWeakSet=function(e){return Xo(e)&&"[object WeakSet]"==Cr(e)},qn.join=function(e,t){return null==e?"":pn.call(e,t)},qn.kebabCase=Bu,qn.last=Gi,qn.lastIndexOf=function(t,n,r){var a=null==t?0:t.length;if(!a)return-1;var i=a;return r!==e&&(i=(i=fu(r))<0?gn(a+i,0):mn(i,a-1)),n==n?function(e,t,n){for(var r=n+1;r--;)if(e[r]===t)return r;return r}(t,n,i):qt(t,Mt,i,!0)},qn.lowerCase=$u,qn.lowerFirst=Lu,qn.lt=su,qn.lte=lu,qn.max=function(t){return t&&t.length?fr(t,ts,Sr):e},qn.maxBy=function(t,n){return t&&t.length?fr(t,ai(n,2),Sr):e},qn.mean=function(e){return zt(e,ts)},qn.meanBy=function(e,t){return zt(e,ai(t,2))},qn.min=function(t){return t&&t.length?fr(t,ts,Rr):e},qn.minBy=function(t,n){return t&&t.length?fr(t,ai(n,2),Rr):e},qn.stubArray=ps,qn.stubFalse=hs,qn.stubObject=function(){return{}},qn.stubString=function(){return""},qn.stubTrue=function(){return!0},qn.multiply=ws,qn.nth=function(t,n){return t&&t.length?Pr(t,fu(n)):e},qn.noConflict=function(){return ct._===this&&(ct._=Ne),this},qn.noop=os,qn.now=Io,qn.pad=function(e,t,n){e=mu(e);var r=(t=fu(t))?sn(e):0;if(!t||r>=t)return e;var a=(t-r)/2;return Ma(ht(a),n)+e+Ma(ft(a),n)},qn.padEnd=function(e,t,n){e=mu(e);var r=(t=fu(t))?sn(e):0;return t&&r<t?e+Ma(t-r,n):e},qn.padStart=function(e,t,n){e=mu(e);var r=(t=fu(t))?sn(e):0;return t&&r<t?Ma(t-r,n)+e:e},qn.parseInt=function(e,t,n){return n||null==t?t=0:t&&(t=+t),yn(mu(e).replace(ne,""),t||0)},qn.random=function(t,n,r){if(r&&"boolean"!=typeof r&&gi(t,n,r)&&(n=r=e),r===e&&("boolean"==typeof n?(r=n,n=e):"boolean"==typeof t&&(r=t,t=e)),t===e&&n===e?(t=0,n=1):(t=du(t),n===e?(n=t,t=0):n=du(n)),t>n){var a=t;t=n,n=a}if(r||t%1||n%1){var i=_n();return mn(t+i*(n-t+ot("1e-"+((i+"").length-1))),n)}return Lr(t,n)},qn.reduce=function(e,t,n){var r=Bo(e)?Ft:Lt,a=arguments.length<3;return r(e,ai(t,4),n,a,lr)},qn.reduceRight=function(e,t,n){var r=Bo(e)?Ot:Lt,a=arguments.length<3;return r(e,ai(t,4),n,a,cr)},qn.repeat=function(t,n,r){return n=(r?gi(t,n,r):n===e)?1:fu(n),Wr(mu(t),n)},qn.replace=function(){var e=arguments,t=mu(e[0]);return e.length<3?t:t.replace(e[1],e[2])},qn.result=function(t,n,r){var a=-1,i=(n=ga(n,t)).length;for(i||(i=1,t=e);++a<i;){var o=null==t?e:t[Ri(n[a])];o===e&&(a=i,o=r),t=Ko(o)?o.call(t):o}return t},qn.round=bs,qn.runInContext=K,qn.sample=function(e){return(Bo(e)?Hn:Gr)(e)},qn.size=function(e){if(null==e)return 0;if(Lo(e))return iu(e)?sn(e):e.length;var t=ci(e);return t==y||t==S?e.size:Or(e).length},qn.snakeCase=Wu,qn.some=function(t,n,r){var a=Bo(t)?Rt:ea;return r&&gi(t,n,r)&&(n=e),a(t,ai(n,3))},qn.sortedIndex=function(e,t){return ta(e,t)},qn.sortedIndexBy=function(e,t,n){return na(e,t,ai(n,2))},qn.sortedIndexOf=function(e,t){var n=null==e?0:e.length;if(n){var r=ta(e,t);if(r<n&&No(e[r],t))return r}return-1},qn.sortedLastIndex=function(e,t){return ta(e,t,!0)},qn.sortedLastIndexBy=function(e,t,n){return na(e,t,ai(n,2),!0)},qn.sortedLastIndexOf=function(e,t){if(null!=e&&e.length){var n=ta(e,t,!0)-1;if(No(e[n],t))return n}return-1},qn.startCase=Ju,qn.startsWith=function(e,t,n){return e=mu(e),n=null==n?0:ar(fu(n),0,e.length),t=ia(t),e.slice(n,n+t.length)==t},qn.subtract=Cs,qn.sum=function(e){return e&&e.length?Wt(e,ts):0},qn.sumBy=function(e,t){return e&&e.length?Wt(e,ai(t,2)):0},qn.template=function(t,n,r){var a=qn.templateSettings;r&&gi(t,n,r)&&(n=e),t=mu(t),n=_u({},n,a,Ha);var i,o,u=_u({},n.imports,a.imports,Ha),s=Tu(u),l=Kt(u,s),c=0,d=n.interpolate||ye,f="__p += '",p=ke((n.escape||ye).source+"|"+d.source+"|"+(d===G?ce:ye).source+"|"+(n.evaluate||ye).source+"|$","g"),h="//# sourceURL="+(Oe.call(n,"sourceURL")?(n.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++nt+"]")+"\n";t.replace(p,(function(e,n,r,a,u,s){return r||(r=a),f+=t.slice(c,s).replace(_e,tn),n&&(i=!0,f+="' +\n__e("+n+") +\n'"),u&&(o=!0,f+="';\n"+u+";\n__p += '"),r&&(f+="' +\n((__t = ("+r+")) == null ? '' : __t) +\n'"),c=s+e.length,e})),f+="';\n";var g=Oe.call(n,"variable")&&n.variable;if(g){if(se.test(g))throw new be("Invalid `variable` option passed into `_.template`")}else f="with (obj) {\n"+f+"\n}\n";f=(o?f.replace(N,""):f).replace(P,"$1").replace(M,"$1;"),f="function("+(g||"obj")+") {\n"+(g?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(i?", __e = _.escape":"")+(o?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+f+"return __p\n}";var m=Qu((function(){return Ce(s,h+"return "+f).apply(e,l)}));if(m.source=f,Ho(m))throw m;return m},qn.times=function(e,t){if((e=fu(e))<1||e>u)return[];var n=l,r=mn(e,l);t=ai(t),e-=l;for(var a=Jt(r,t);++n<e;)t(n);return a},qn.toFinite=du,qn.toInteger=fu,qn.toLength=pu,qn.toLower=function(e){return mu(e).toLowerCase()},qn.toNumber=hu,qn.toSafeInteger=function(e){return e?ar(fu(e),-9007199254740991,u):0===e?e:0},qn.toString=mu,qn.toUpper=function(e){return mu(e).toUpperCase()},qn.trim=function(t,n,r){if((t=mu(t))&&(r||n===e))return Gt(t);if(!t||!(n=ia(n)))return t;var a=ln(t),i=ln(n);return va(a,Yt(a,i),Zt(a,i)+1).join("")},qn.trimEnd=function(t,n,r){if((t=mu(t))&&(r||n===e))return t.slice(0,cn(t)+1);if(!t||!(n=ia(n)))return t;var a=ln(t);return va(a,0,Zt(a,ln(n))+1).join("")},qn.trimStart=function(t,n,r){if((t=mu(t))&&(r||n===e))return t.replace(ne,"");if(!t||!(n=ia(n)))return t;var a=ln(t);return va(a,Yt(a,ln(n))).join("")},qn.truncate=function(t,n){var r=30,a="...";if(Zo(n)){var i="separator"in n?n.separator:i;r="length"in n?fu(n.length):r,a="omission"in n?ia(n.omission):a}var o=(t=mu(t)).length;if(nn(t)){var u=ln(t);o=u.length}if(r>=o)return t;var s=r-sn(a);if(s<1)return a;var l=u?va(u,0,s).join(""):t.slice(0,s);if(i===e)return l+a;if(u&&(s+=l.length-s),ru(i)){if(t.slice(s).search(i)){var c,d=l;for(i.global||(i=ke(i.source,mu(de.exec(i))+"g")),i.lastIndex=0;c=i.exec(d);)var f=c.index;l=l.slice(0,f===e?s:f)}}else if(t.indexOf(ia(i),s)!=s){var p=l.lastIndexOf(i);p>-1&&(l=l.slice(0,p))}return l+a},qn.unescape=function(e){return(e=mu(e))&&$.test(e)?e.replace(z,dn):e},qn.uniqueId=function(e){var t=++Re;return mu(e)+t},qn.upperCase=Gu,qn.upperFirst=Hu,qn.each=mo,qn.eachRight=vo,qn.first=$i,is(qn,(gs={},vr(qn,(function(e,t){Oe.call(qn.prototype,t)||(gs[t]=e)})),gs),{chain:!1}),qn.VERSION="4.17.21",It(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(e){qn[e].placeholder=qn})),It(["drop","take"],(function(t,n){zn.prototype[t]=function(r){r=r===e?1:gn(fu(r),0);var a=this.__filtered__&&!n?new zn(this):this.clone();return a.__filtered__?a.__takeCount__=mn(r,a.__takeCount__):a.__views__.push({size:mn(r,l),type:t+(a.__dir__<0?"Right":"")}),a},zn.prototype[t+"Right"]=function(e){return this.reverse()[t](e).reverse()}})),It(["filter","map","takeWhile"],(function(e,t){var n=t+1,r=1==n||3==n;zn.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:ai(e,3),type:n}),t.__filtered__=t.__filtered__||r,t}})),It(["head","last"],(function(e,t){var n="take"+(t?"Right":"");zn.prototype[e]=function(){return this[n](1).value()[0]}})),It(["initial","tail"],(function(e,t){var n="drop"+(t?"":"Right");zn.prototype[e]=function(){return this.__filtered__?new zn(this):this[n](1)}})),zn.prototype.compact=function(){return this.filter(ts)},zn.prototype.find=function(e){return this.filter(e).head()},zn.prototype.findLast=function(e){return this.reverse().find(e)},zn.prototype.invokeMap=Jr((function(e,t){return"function"==typeof e?new zn(this):this.map((function(n){return Dr(n,e,t)}))})),zn.prototype.reject=function(e){return this.filter(Oo(ai(e)))},zn.prototype.slice=function(t,n){t=fu(t);var r=this;return r.__filtered__&&(t>0||n<0)?new zn(r):(t<0?r=r.takeRight(-t):t&&(r=r.drop(t)),n!==e&&(r=(n=fu(n))<0?r.dropRight(-n):r.take(n-t)),r)},zn.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},zn.prototype.toArray=function(){return this.take(l)},vr(zn.prototype,(function(t,n){var r=/^(?:filter|find|map|reject)|While$/.test(n),a=/^(?:head|last)$/.test(n),i=qn[a?"take"+("last"==n?"Right":""):n],o=a||/^find/.test(n);i&&(qn.prototype[n]=function(){var n=this.__wrapped__,u=a?[1]:arguments,s=n instanceof zn,l=u[0],c=s||Bo(n),d=function(e){var t=i.apply(qn,At([e],u));return a&&f?t[0]:t};c&&r&&"function"==typeof l&&1!=l.length&&(s=c=!1);var f=this.__chain__,p=!!this.__actions__.length,h=o&&!f,g=s&&!p;if(!o&&c){n=g?n:new zn(this);var m=t.apply(n,u);return m.__actions__.push({func:co,args:[d],thisArg:e}),new Mn(m,f)}return h&&g?t.apply(this,u):(m=this.thru(d),h?a?m.value()[0]:m.value():m)})})),It(["pop","push","shift","sort","splice","unshift"],(function(e){var t=Ve[e],n=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",r=/^(?:pop|shift)$/.test(e);qn.prototype[e]=function(){var e=arguments;if(r&&!this.__chain__){var a=this.value();return t.apply(Bo(a)?a:[],e)}return this[n]((function(n){return t.apply(Bo(n)?n:[],e)}))}})),vr(zn.prototype,(function(e,t){var n=qn[t];if(n){var r=n.name+"";Oe.call(Vn,r)||(Vn[r]=[]),Vn[r].push({name:t,func:n})}})),Vn[Ua(e,2).name]=[{name:"wrapper",func:e}],zn.prototype.clone=function(){var e=new zn(this.__wrapped__);return e.__actions__=ka(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=ka(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=ka(this.__views__),e},zn.prototype.reverse=function(){if(this.__filtered__){var e=new zn(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},zn.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,n=Bo(e),r=t<0,a=n?e.length:0,i=function(e,t,n){for(var r=-1,a=n.length;++r<a;){var i=n[r],o=i.size;switch(i.type){case"drop":e+=o;break;case"dropRight":t-=o;break;case"take":t=mn(t,e+o);break;case"takeRight":e=gn(e,t-o)}}return{start:e,end:t}}(0,a,this.__views__),o=i.start,u=i.end,s=u-o,l=r?u:o-1,c=this.__iteratees__,d=c.length,f=0,p=mn(s,this.__takeCount__);if(!n||!r&&a==s&&p==s)return ca(e,this.__actions__);var h=[];e:for(;s--&&f<p;){for(var g=-1,m=e[l+=t];++g<d;){var v=c[g],y=v.iteratee,_=v.type,w=y(m);if(2==_)m=w;else if(!w){if(1==_)continue e;break e}}h[f++]=m}return h},qn.prototype.at=fo,qn.prototype.chain=function(){return lo(this)},qn.prototype.commit=function(){return new Mn(this.value(),this.__chain__)},qn.prototype.next=function(){this.__values__===e&&(this.__values__=cu(this.value()));var t=this.__index__>=this.__values__.length;return{done:t,value:t?e:this.__values__[this.__index__++]}},qn.prototype.plant=function(t){for(var n,r=this;r instanceof Pn;){var a=Ui(r);a.__index__=0,a.__values__=e,n?i.__wrapped__=a:n=a;var i=a;r=r.__wrapped__}return i.__wrapped__=t,n},qn.prototype.reverse=function(){var t=this.__wrapped__;if(t instanceof zn){var n=t;return this.__actions__.length&&(n=new zn(this)),(n=n.reverse()).__actions__.push({func:co,args:[Yi],thisArg:e}),new Mn(n,this.__chain__)}return this.thru(Yi)},qn.prototype.toJSON=qn.prototype.valueOf=qn.prototype.value=function(){return ca(this.__wrapped__,this.__actions__)},qn.prototype.first=qn.prototype.head,Ye&&(qn.prototype[Ye]=function(){return this}),qn}();ft?((ft.exports=fn)._=fn,dt._=fn):ct._=fn}.call(Z.exports)),Z.exports);const ee=t({name:"ComponentRegistration",props:{course:{type:String,required:!0}},data:()=>({dataShapes:[],questions:[],courseDatashapes:[],courseQuestionTypes:[],courseConfig:void 0,courseDB:null}),async created(){this.courseDB=x().getCourseDB(this.course),this.courseConfig=await this.courseDB.getCourseConfig(),this.courseDatashapes=this.courseConfig.dataShapes,this.courseQuestionTypes=this.courseConfig.questionTypes;const e=U.allDataShapes();U.allDataShapesRaw().forEach((e=>{console.log(`[ComponentRegistration] Datashape:\n${JSON.stringify(e)}`)})),e.forEach((e=>{const t=this.courseDatashapes.find((t=>t.name===S.getDataShapeString(e)));this.dataShapes.push({name:e.dataShape,course:e.course,dataShape:U.getDataShape(e),registered:void 0!==t,displayable:e.displayable})})),this.dataShapes=X.sortBy(this.dataShapes,["registered","name"]);const t=U.courses.map((e=>e.name)),n=[];t.forEach((e=>{U.getCourseWare(e).questions.forEach((t=>{n.push([{course:e,questionType:t.name},t])}))})),n.forEach((e=>{const t=this.courseQuestionTypes.find((t=>S.getQuestionString(e[0])===t.name));this.questions.push({course:e[0].course,name:e[1].name,registered:void 0!==t,question:e[1]})}))},methods:{async registerShape(e){const t=this.dataShapes.find((t=>t.name===e));this.courseConfig.dataShapes.push({name:S.getDataShapeString({dataShape:t.name,course:t.course}),questionTypes:[]}),(await this.courseDB.updateCourseConfig(this.courseConfig)).ok&&(t.registered=!0)},async registerQuestionView(e){const t=this.questions.find((t=>t.name===e)),n=S.getQuestionString({course:t.course,questionType:t.name});this.courseConfig.questionTypes.push({name:n,viewList:t.question.views.map((e=>e.name?e.name:"unnamedComponent")),dataShapeList:t.question.dataShapes.map((e=>S.getDataShapeString({course:t.course,dataShape:e.name})))}),t.question.dataShapes.forEach((e=>{const r=S.getDataShapeString({course:t.course,dataShape:e.name});for(const t of this.courseConfig.dataShapes)t.name===r&&t.questionTypes.push(n)}));const r=await this.courseDB.updateCourseConfig(this.courseConfig),a=await C();r.ok&&(t.registered=!0,console.log(`[ComponentRegistration]\nQuestion: ${JSON.stringify(t)}\nCourseID: ${this.course}\n `),t.question.seedData?(console.log("[ComponentRegistration] Question has seed data!"),t.question.seedData.forEach((e=>{this.courseDB.addNote(t.course,t.question.dataShapes[0],e,a.getUsername(),[])}))):console.log("[ComponentRegistration] Question has NO seed data!"))}}}),te=(e,t)=>{const n=e.__vccOpts||e;for(const[r,a]of t)n[r]=a;return n},ne={key:1,class:"inset"},re={key:0},ae={key:1,class:"inset"},ie=te(ee,[["render",function(e,t,n,s,g,m){const v=r("v-btn");return i(),d("div",null,[t[2]||(t[2]=c("h3",null,"DataShapes",-1)),c("ul",null,[(i(!0),d(p,null,h(e.dataShapes,(n=>(i(),d("li",{key:n.name,class:"ma-2"},[n.registered?(i(),d("span",ne," (Registered) ")):(i(),a(v,{key:0,size:"small",onClick:t=>e.registerShape(n.name)},{default:o((()=>t[0]||(t[0]=[l(" Register ")]))),_:2},1032,["onClick"])),l(" "+f(n.name)+" ",1),c("ul",null,[(i(!0),d(p,null,h(n.dataShape.views,(e=>(i(),d("div",{key:e.name},[e?(i(),d("li",re,f(e.name),1)):u("",!0)])))),128))])])))),128))]),t[3]||(t[3]=c("h3",null,"Questions",-1)),c("ul",null,[(i(!0),d(p,null,h(e.questions,(n=>(i(),d("li",{key:n.name,class:"ma-2"},[n.registered?(i(),d("span",ae," (Registered) ")):(i(),a(v,{key:0,size:"small",onClick:t=>e.registerQuestionView(n.name)},{default:o((()=>t[1]||(t[1]=[l(" Register ")]))),_:2},1032,["onClick"])),l(" "+f(n.name),1)])))),128))])])}],["__scopeId","data-v-c01bca96"]]),oe=t({name:"NavigationStrategyList",props:{strategies:{type:Array,required:!0},defaultStrategyId:{type:String,default:null}},emits:["edit","delete","update:defaultStrategy"],methods:{getDisplayConfig(e){if(!e.serializedData)return"No configuration";try{const t=JSON.parse(e.serializedData);return Array.isArray(t)?`${t.length} cards in sequence`:Object.keys(t).map((e=>`${e}: ${t[e]}`)).join(", ")}catch{return e.serializedData}}}}),ue={class:"navigation-strategy-list"},se={key:0},le={class:"d-flex"},ce=te(oe,[["render",function(e,t,n,g,m,v){const y=r("v-radio"),_=r("v-list-item-title"),w=r("v-list-item-subtitle"),b=r("v-icon"),C=r("v-btn"),S=r("v-list-item"),I=r("v-list"),k=r("v-radio-group");return i(),d("div",ue,[s(k,{"model-value":e.defaultStrategyId,"onUpdate:modelValue":t[0]||(t[0]=t=>e.$emit("update:defaultStrategy",t)),density:"compact"},{default:o((()=>[s(I,{density:"compact"},{default:o((()=>[(i(!0),d(p,null,h(e.strategies,(n=>(i(),a(S,{key:n._id,lines:"two"},{prepend:o((()=>[s(y,{value:n._id},null,8,["value"])])),append:o((()=>[c("div",le,[s(C,{icon:"",size:"x-small",variant:"text",title:"Edit Strategy",onClick:t=>e.$emit("edit",n)},{default:o((()=>[s(b,{size:"small"},{default:o((()=>t[1]||(t[1]=[l("mdi-pencil")]))),_:1})])),_:2},1032,["onClick"]),s(C,{icon:"",size:"x-small",variant:"text",title:"Delete Strategy",onClick:t=>e.$emit("delete",n)},{default:o((()=>[s(b,{size:"small"},{default:o((()=>t[2]||(t[2]=[l("mdi-delete")]))),_:1})])),_:2},1032,["onClick"])])])),default:o((()=>[s(_,{class:"text-subtitle-2"},{default:o((()=>[l(f(n.name),1)])),_:2},1024),s(w,{class:"text-caption"},{default:o((()=>[l(f(n.implementingClass)+" ",1),n.description?(i(),d("span",se," • "+f(n.description),1)):u("",!0)])),_:2},1024)])),_:2},1024)))),128))])),_:1})])),_:1},8,["model-value"])])}],["__scopeId","data-v-1fcb2a5f"]]),de=t({name:"HierarchyConfigForm",props:{modelValue:{type:Object,required:!0},courseId:{type:String,required:!0}},emits:["update:modelValue"],setup(e,{emit:t}){const n=_("ui"),r=_([]),a=_(null),i=_(null),o=_(!0),u=y((()=>e.modelValue)),s=y((()=>{try{return JSON.stringify(u.value,null,2)}catch{return""}}));return F((()=>{!async function(){o.value=!0;try{const t=x().getCourseDB(e.courseId),n=await t.getCourseTagStubs();r.value=n.rows.map((e=>e.id.replace("TAG-",""))),console.log("Loaded tags:",r.value)}catch(t){console.error("Failed to load course tags:",t),a.value="Failed to load course tags"}finally{o.value=!1}}()})),w((()=>u.value),(()=>{!function(){a.value=null;try{if(!u.value.prerequisites||"object"!=typeof u.value.prerequisites)throw new Error("Prerequisites must be an object");new Set(Object.keys(u.value.prerequisites));for(const[e,t]of Object.entries(u.value.prerequisites))for(const n of t)if(n.tag===e)throw new Error(`Circular dependency: ${e} requires itself`);return!0}catch(e){return a.value=e instanceof Error?e.message:"Invalid configuration",!1}}()}),{deep:!0}),{inputMode:n,config:u,availableTags:r,loadingTags:o,jsonText:s,jsonError:i,validationError:a,addPrerequisiteRule:function(){const e=r.value[0]||"new-tag";t("update:modelValue",{...u.value,prerequisites:{...u.value.prerequisites,[e]:[]}})},removePrerequisiteRule:function(e){const n={...u.value.prerequisites};delete n[e],t("update:modelValue",{...u.value,prerequisites:n})},renamePrerequisiteTag:function(e,n){if(e===n)return;const r={...u.value.prerequisites};r[n]=r[e],delete r[e],t("update:modelValue",{...u.value,prerequisites:r})},addPrerequisite:function(e){const n=r.value.find((t=>t!==e))||"prerequisite-tag",a={...u.value.prerequisites};a[e]=[...a[e],{tag:n,masteryThreshold:{minCount:3}}],t("update:modelValue",{...u.value,prerequisites:a})},removePrerequisite:function(e,n){const r={...u.value.prerequisites};r[e]=r[e].filter(((e,t)=>t!==n)),t("update:modelValue",{...u.value,prerequisites:r})},updatePrerequisiteTag:function(e,n,r){const a={...u.value.prerequisites};a[e][n]={...a[e][n],tag:r},t("update:modelValue",{...u.value,prerequisites:a})},updateMinCount:function(e,n,r){const a="string"==typeof r?parseInt(r):r;if(isNaN(a))return;const i={...u.value.prerequisites},o=i[e][n];i[e][n]={...o,masteryThreshold:{...o.masteryThreshold,minCount:a}},t("update:modelValue",{...u.value,prerequisites:i})},updateMinElo:function(e,n,r){if(""===r||null==r){const r={...u.value.prerequisites},a=r[e][n],i={...a.masteryThreshold};return delete i.minElo,r[e][n]={...a,masteryThreshold:i},void t("update:modelValue",{...u.value,prerequisites:r})}const a="string"==typeof r?parseInt(r):r;if(isNaN(a))return;const i={...u.value.prerequisites},o=i[e][n];i[e][n]={...o,masteryThreshold:{...o.masteryThreshold,minElo:a}},t("update:modelValue",{...u.value,prerequisites:i})},updateFromJson:function(e){i.value=null;try{const n=JSON.parse(e);if(!n.prerequisites||"object"!=typeof n.prerequisites)throw new Error('Config must have "prerequisites" object');t("update:modelValue",n)}catch(n){i.value=n instanceof Error?n.message:"Invalid JSON"}}}}}),fe={class:"hierarchy-config-form"},pe={class:"prerequisites-section"},he={class:"d-flex align-center mb-2"},ge={class:"d-flex align-center mb-2"},me=te(de,[["render",function(e,t,n,g,m,v){const y=r("v-tab"),_=r("v-tabs"),w=r("v-spacer"),b=r("v-icon"),C=r("v-btn"),S=r("v-alert"),I=r("v-select"),k=r("v-divider"),x=r("v-text-field"),D=r("v-card"),V=r("v-window-item"),T=r("v-textarea"),E=r("v-window");return i(),d("div",fe,[s(_,{modelValue:e.inputMode,"onUpdate:modelValue":t[0]||(t[0]=t=>e.inputMode=t),density:"compact",class:"mb-4"},{default:o((()=>[s(y,{value:"ui"},{default:o((()=>t[2]||(t[2]=[l("Visual Editor")]))),_:1}),s(y,{value:"json"},{default:o((()=>t[3]||(t[3]=[l("JSON Editor")]))),_:1})])),_:1},8,["modelValue"]),s(E,{modelValue:e.inputMode,"onUpdate:modelValue":t[1]||(t[1]=t=>e.inputMode=t)},{default:o((()=>[s(V,{value:"ui"},{default:o((()=>[c("div",pe,[c("div",he,[t[6]||(t[6]=c("h4",{class:"text-subtitle-1"},"Prerequisites",-1)),s(w),s(C,{size:"small",color:"primary",onClick:e.addPrerequisiteRule},{default:o((()=>[s(b,{start:""},{default:o((()=>t[4]||(t[4]=[l("mdi-plus")]))),_:1}),t[5]||(t[5]=l(" Add Rule "))])),_:1},8,["onClick"])]),0===Object.keys(e.config.prerequisites).length?(i(),a(S,{key:0,type:"info",density:"compact"},{default:o((()=>t[7]||(t[7]=[l(' No prerequisites defined. Click "Add Rule" to gate a tag behind prerequisite mastery. ')]))),_:1})):u("",!0),(i(!0),d(p,null,h(e.config.prerequisites,((n,r)=>(i(),a(D,{key:r,variant:"outlined",class:"mb-3 pa-3"},{default:o((()=>[c("div",ge,[s(I,{"model-value":r,"onUpdate:modelValue":t=>e.renamePrerequisiteTag(r,t),items:e.availableTags,loading:e.loadingTags,disabled:e.loadingTags,label:"Gated Tag",hint:"This tag will be locked until prerequisites are met","persistent-hint":"",density:"compact",style:{"max-width":"300px"}},null,8,["model-value","onUpdate:modelValue","items","loading","disabled"]),s(w),s(C,{icon:"",size:"small",color:"error",onClick:t=>e.removePrerequisiteRule(r)},{default:o((()=>[s(b,null,{default:o((()=>t[8]||(t[8]=[l("mdi-delete")]))),_:1})])),_:2},1032,["onClick"])]),s(k,{class:"my-2"}),t[12]||(t[12]=c("div",{class:"text-caption mb-2"},"Requires mastery of:",-1)),(i(!0),d(p,null,h(n,((n,a)=>(i(),d("div",{key:`${r}-${a}`,class:"d-flex align-center gap-2 mb-2"},[s(I,{"model-value":n.tag,"onUpdate:modelValue":t=>e.updatePrerequisiteTag(r,a,t),items:e.availableTags,loading:e.loadingTags,disabled:e.loadingTags,label:"Prerequisite Tag",density:"compact",style:{flex:"1","max-width":"200px"}},null,8,["model-value","onUpdate:modelValue","items","loading","disabled"]),s(x,{"model-value":n.masteryThreshold?.minCount,"onUpdate:modelValue":t=>e.updateMinCount(r,a,t),label:"Min Count",type:"number",density:"compact",style:{"max-width":"100px"},hint:"Min interactions","persistent-hint":""},null,8,["model-value","onUpdate:modelValue"]),s(x,{"model-value":n.masteryThreshold?.minElo,"onUpdate:modelValue":t=>e.updateMinElo(r,a,t),label:"Min ELO",type:"number",density:"compact",style:{"max-width":"100px"},hint:"Optional","persistent-hint":""},null,8,["model-value","onUpdate:modelValue"]),s(C,{icon:"",size:"small",onClick:t=>e.removePrerequisite(r,a)},{default:o((()=>[s(b,null,{default:o((()=>t[9]||(t[9]=[l("mdi-minus-circle")]))),_:1})])),_:2},1032,["onClick"])])))),128)),s(C,{size:"small",variant:"text",onClick:t=>e.addPrerequisite(r)},{default:o((()=>[s(b,{start:""},{default:o((()=>t[10]||(t[10]=[l("mdi-plus")]))),_:1}),t[11]||(t[11]=l(" Add Prerequisite "))])),_:2},1032,["onClick"])])),_:2},1024)))),128))])])),_:1}),s(V,{value:"json"},{default:o((()=>[s(T,{"model-value":e.jsonText,"onUpdate:modelValue":e.updateFromJson,label:"Configuration JSON",rows:"15",placeholder:'{"prerequisites": {"cvc-words": [{"tag": "letter-sounds", "masteryThreshold": {"minCount": 10}}]}}',hint:"Paste or edit JSON configuration directly","persistent-hint":"","auto-grow":""},null,8,["model-value","onUpdate:modelValue"]),e.jsonError?(i(),a(S,{key:0,type:"error",density:"compact",class:"mt-2"},{default:o((()=>[l(f(e.jsonError),1)])),_:1})):e.jsonText?(i(),a(S,{key:1,type:"success",density:"compact",class:"mt-2"},{default:o((()=>t[13]||(t[13]=[l(" Valid configuration ")]))),_:1})):u("",!0)])),_:1})])),_:1},8,["modelValue"]),e.validationError?(i(),a(S,{key:0,type:"error",density:"compact",class:"mt-3"},{default:o((()=>[l(f(e.validationError),1)])),_:1})):u("",!0)])}],["__scopeId","data-v-470885e1"]]),ve=t({name:"InterferenceConfigForm",props:{modelValue:{type:Object,required:!0},courseId:{type:String,required:!0}},emits:["update:modelValue"],setup(e,{emit:t}){const n=_("ui"),r=_([]),a=_(null),i=_(null),o=_(!0),u=y((()=>e.modelValue)),s=y((()=>{try{return JSON.stringify(u.value,null,2)}catch{return""}}));return F((()=>{!async function(){o.value=!0;try{const t=x().getCourseDB(e.courseId),n=await t.getCourseTagStubs();r.value=n.rows.map((e=>e.id.replace("TAG-","")))}catch(t){console.error("Failed to load course tags:",t),a.value="Failed to load course tags"}finally{o.value=!1}}()})),w((()=>u.value),(()=>{!function(){a.value=null;try{if(!u.value.interferenceSets||!Array.isArray(u.value.interferenceSets))throw new Error("Interference sets must be an array");for(const e of u.value.interferenceSets){if(!Array.isArray(e.tags)||e.tags.length<2)throw new Error("Each interference group must have at least 2 tags");if(void 0!==e.decay&&(e.decay<0||e.decay>1))throw new Error("Decay values must be between 0 and 1")}return!0}catch(e){return a.value=e instanceof Error?e.message:"Invalid configuration",!1}}()}),{deep:!0}),{inputMode:n,config:u,availableTags:r,loadingTags:o,jsonText:s,jsonError:i,validationError:a,updateMinCount:function(e){const n="string"==typeof e?parseInt(e):e;isNaN(n)||t("update:modelValue",{...u.value,maturityThreshold:{...u.value.maturityThreshold,minCount:n}})},updateMinElo:function(e){if(""===e||null==e){const e={...u.value.maturityThreshold};return delete e.minElo,void t("update:modelValue",{...u.value,maturityThreshold:e})}const n="string"==typeof e?parseInt(e):e;isNaN(n)||t("update:modelValue",{...u.value,maturityThreshold:{...u.value.maturityThreshold,minElo:n}})},updateMinElapsedDays:function(e){const n="string"==typeof e?parseInt(e):e;isNaN(n)||t("update:modelValue",{...u.value,maturityThreshold:{...u.value.maturityThreshold,minElapsedDays:n}})},updateDefaultDecay:function(e){const n="string"==typeof e?parseFloat(e):e;isNaN(n)||t("update:modelValue",{...u.value,defaultDecay:Math.max(0,Math.min(1,n))})},addInterferenceGroup:function(){t("update:modelValue",{...u.value,interferenceSets:[...u.value.interferenceSets,{tags:[],decay:u.value.defaultDecay||.8}]})},removeInterferenceGroup:function(e){t("update:modelValue",{...u.value,interferenceSets:u.value.interferenceSets.filter(((t,n)=>n!==e))})},updateGroupTags:function(e,n){const r=[...u.value.interferenceSets];r[e]={...r[e],tags:n},t("update:modelValue",{...u.value,interferenceSets:r})},updateGroupDecay:function(e,n){const r="string"==typeof n?parseFloat(n):n;if(isNaN(r))return;const a=[...u.value.interferenceSets];a[e]={...a[e],decay:Math.max(0,Math.min(1,r))},t("update:modelValue",{...u.value,interferenceSets:a})},updateFromJson:function(e){i.value=null;try{const n=JSON.parse(e);if(!n.interferenceSets||!Array.isArray(n.interferenceSets))throw new Error('Config must have "interferenceSets" array');t("update:modelValue",n)}catch(n){i.value=n instanceof Error?n.message:"Invalid JSON"}}}}}),ye={class:"interference-config-form"},_e={class:"maturity-section mb-4"},we={class:"mb-4"},be={class:"interference-groups-section"},Ce={class:"d-flex align-center mb-2"},Se={class:"d-flex align-center mb-2"},Ie={class:"text-subtitle-2"},ke=te(ve,[["render",function(e,t,n,g,m,v){const y=r("v-tab"),_=r("v-tabs"),w=r("v-text-field"),b=r("v-slider"),C=r("v-spacer"),S=r("v-icon"),I=r("v-btn"),k=r("v-alert"),x=r("v-select"),D=r("v-card"),V=r("v-window-item"),T=r("v-textarea"),E=r("v-window");return i(),d("div",ye,[s(_,{modelValue:e.inputMode,"onUpdate:modelValue":t[0]||(t[0]=t=>e.inputMode=t),density:"compact",class:"mb-4"},{default:o((()=>[s(y,{value:"ui"},{default:o((()=>t[2]||(t[2]=[l("Visual Editor")]))),_:1}),s(y,{value:"json"},{default:o((()=>t[3]||(t[3]=[l("JSON Editor")]))),_:1})])),_:1},8,["modelValue"]),s(E,{modelValue:e.inputMode,"onUpdate:modelValue":t[1]||(t[1]=t=>e.inputMode=t)},{default:o((()=>[s(V,{value:"ui"},{default:o((()=>[c("div",_e,[t[4]||(t[4]=c("h4",{class:"text-subtitle-1 mb-2"},"Maturity Threshold",-1)),t[5]||(t[5]=c("p",{class:"text-caption mb-3"},'Tags below this threshold are considered "immature" (still being learned)',-1)),s(w,{"model-value":e.config.maturityThreshold?.minCount,"onUpdate:modelValue":e.updateMinCount,label:"Min Count",type:"number",hint:"Minimum interactions required (default: 10)","persistent-hint":"",density:"compact",class:"mb-2"},null,8,["model-value","onUpdate:modelValue"]),s(w,{"model-value":e.config.maturityThreshold?.minElo,"onUpdate:modelValue":e.updateMinElo,label:"Min ELO (optional)",type:"number",hint:"Minimum ELO score for maturity","persistent-hint":"",density:"compact",class:"mb-2"},null,8,["model-value","onUpdate:modelValue"]),s(w,{"model-value":e.config.maturityThreshold?.minElapsedDays,"onUpdate:modelValue":e.updateMinElapsedDays,label:"Min Elapsed Days",type:"number",hint:"Minimum time since first interaction (default: 3)","persistent-hint":"",density:"compact"},null,8,["model-value","onUpdate:modelValue"])]),c("div",we,[s(b,{"model-value":e.config.defaultDecay||.8,"onUpdate:modelValue":e.updateDefaultDecay,label:"Default Decay",min:0,max:1,step:.05,"thumb-label":"",hint:"Default interference strength for groups without explicit decay (0 = no effect, 1 = maximum avoidance)","persistent-hint":""},{append:o((()=>[s(w,{"model-value":e.config.defaultDecay||.8,"onUpdate:modelValue":e.updateDefaultDecay,type:"number",style:{width:"80px"},density:"compact","hide-details":"",min:0,max:1,step:.05},null,8,["model-value","onUpdate:modelValue"])])),_:1},8,["model-value","onUpdate:modelValue"])]),c("div",be,[c("div",Ce,[t[8]||(t[8]=c("h4",{class:"text-subtitle-1"},"Interference Groups",-1)),s(C),s(I,{size:"small",color:"primary",onClick:e.addInterferenceGroup},{default:o((()=>[s(S,{start:""},{default:o((()=>t[6]||(t[6]=[l("mdi-plus")]))),_:1}),t[7]||(t[7]=l(" Add Group "))])),_:1},8,["onClick"])]),0===e.config.interferenceSets.length?(i(),a(k,{key:0,type:"info",density:"compact"},{default:o((()=>t[9]||(t[9]=[l(' No interference groups defined. Click "Add Group" to create a set of tags that interfere with each other. ')]))),_:1})):u("",!0),(i(!0),d(p,null,h(e.config.interferenceSets,((n,r)=>(i(),a(D,{key:r,variant:"outlined",class:"mb-3 pa-3"},{default:o((()=>[c("div",Se,[c("h5",Ie,"Group "+f(r+1),1),s(C),s(I,{icon:"",size:"small",color:"error",onClick:t=>e.removeInterferenceGroup(r)},{default:o((()=>[s(S,null,{default:o((()=>t[10]||(t[10]=[l("mdi-delete")]))),_:1})])),_:2},1032,["onClick"])]),s(x,{"model-value":n.tags,"onUpdate:modelValue":t=>e.updateGroupTags(r,t),items:e.availableTags,loading:e.loadingTags,disabled:e.loadingTags,label:"Interfering Tags",hint:"Tags that interfere with each other","persistent-hint":"",multiple:"",chips:"","closable-chips":"",density:"compact",class:"mb-3"},null,8,["model-value","onUpdate:modelValue","items","loading","disabled"]),s(b,{"model-value":void 0!==n.decay?n.decay:e.config.defaultDecay||.8,"onUpdate:modelValue":t=>e.updateGroupDecay(r,t),label:"Decay Strength",min:0,max:1,step:.05,"thumb-label":"",hint:"How strongly these tags interfere (higher = stronger avoidance)","persistent-hint":""},{append:o((()=>[s(w,{"model-value":void 0!==n.decay?n.decay:e.config.defaultDecay||.8,"onUpdate:modelValue":t=>e.updateGroupDecay(r,t),type:"number",style:{width:"80px"},density:"compact","hide-details":"",min:0,max:1,step:.05},null,8,["model-value","onUpdate:modelValue"])])),_:2},1032,["model-value","onUpdate:modelValue"])])),_:2},1024)))),128))])])),_:1}),s(V,{value:"json"},{default:o((()=>[s(T,{"model-value":e.jsonText,"onUpdate:modelValue":e.updateFromJson,label:"Configuration JSON",rows:"20",placeholder:'{"interferenceSets": [{"tags": ["letter-b", "letter-d"], "decay": 0.9}], "maturityThreshold": {"minCount": 10}, "defaultDecay": 0.8}',hint:"Paste or edit JSON configuration directly","persistent-hint":"","auto-grow":""},null,8,["model-value","onUpdate:modelValue"]),e.jsonError?(i(),a(k,{key:0,type:"error",density:"compact",class:"mt-2"},{default:o((()=>[l(f(e.jsonError),1)])),_:1})):e.jsonText?(i(),a(k,{key:1,type:"success",density:"compact",class:"mt-2"},{default:o((()=>t[11]||(t[11]=[l(" Valid configuration ")]))),_:1})):u("",!0)])),_:1})])),_:1},8,["modelValue"]),e.validationError?(i(),a(k,{key:0,type:"error",density:"compact",class:"mt-3"},{default:o((()=>[l(f(e.validationError),1)])),_:1})):u("",!0)])}],["__scopeId","data-v-20d01937"]]),xe=t({name:"RelativePriorityConfigForm",props:{modelValue:{type:Object,required:!0},courseId:{type:String,required:!0}},emits:["update:modelValue"],setup(e,{emit:t}){const n=_("ui"),r=_([]),a=_(null),i=_(null),o=_(!0),u=y((()=>e.modelValue)),s=y((()=>{try{return JSON.stringify(u.value,null,2)}catch{return""}}));return F((()=>{!async function(){o.value=!0;try{const t=x().getCourseDB(e.courseId),n=await t.getCourseTagStubs();r.value=n.rows.map((e=>e.id.replace("TAG-","")))}catch(t){console.error("Failed to load course tags:",t),a.value="Failed to load course tags"}finally{o.value=!1}}()})),w((()=>u.value),(()=>{!function(){a.value=null;try{if(!u.value.tagPriorities||"object"!=typeof u.value.tagPriorities)throw new Error("Tag priorities must be an object");for(const[e,t]of Object.entries(u.value.tagPriorities))if("number"!=typeof t||t<0||t>1)throw new Error(`Priority for ${e} must be between 0 and 1`);return!0}catch(e){return a.value=e instanceof Error?e.message:"Invalid configuration",!1}}()}),{deep:!0}),{inputMode:n,config:u,availableTags:r,loadingTags:o,combineModes:[{title:"Max (highest priority wins)",value:"max"},{title:"Average (average all priorities)",value:"average"},{title:"Min (lowest priority wins)",value:"min"}],jsonText:s,jsonError:i,validationError:a,updateDefaultPriority:function(e){const n="string"==typeof e?parseFloat(e):e;isNaN(n)||t("update:modelValue",{...u.value,defaultPriority:Math.max(0,Math.min(1,n))})},updateCombineMode:function(e){t("update:modelValue",{...u.value,combineMode:e})},updatePriorityInfluence:function(e){const n="string"==typeof e?parseFloat(e):e;isNaN(n)||t("update:modelValue",{...u.value,priorityInfluence:Math.max(0,Math.min(1,n))})},getTagPriority:function(e){return void 0!==u.value.tagPriorities[e]?u.value.tagPriorities[e]:void 0!==u.value.defaultPriority?u.value.defaultPriority:.5},updateTagPriority:function(e,n){const r="string"==typeof n?parseFloat(n):n;isNaN(r)||t("update:modelValue",{...u.value,tagPriorities:{...u.value.tagPriorities,[e]:Math.max(0,Math.min(1,r))}})},updateFromJson:function(e){i.value=null;try{const n=JSON.parse(e);if(!n.tagPriorities||"object"!=typeof n.tagPriorities)throw new Error('Config must have "tagPriorities" object');t("update:modelValue",n)}catch(n){i.value=n instanceof Error?n.message:"Invalid JSON"}}}}}),De={class:"relative-priority-config-form"},Ve={class:"config-options mb-4"},Te={class:"tag-priorities-section"},Ee={key:2,class:"tag-priority-list"},Ae=t({name:"NavigationStrategyEditor",components:{NavigationStrategyList:ce,HierarchyConfigForm:me,InterferenceConfigForm:ke,RelativePriorityConfigForm:te(xe,[["render",function(e,t,n,g,m,v){const y=r("v-tab"),_=r("v-tabs"),w=r("v-text-field"),b=r("v-slider"),C=r("v-select"),S=r("v-alert"),I=r("v-window-item"),k=r("v-textarea"),x=r("v-window");return i(),d("div",De,[s(_,{modelValue:e.inputMode,"onUpdate:modelValue":t[0]||(t[0]=t=>e.inputMode=t),density:"compact",class:"mb-4"},{default:o((()=>[s(y,{value:"ui"},{default:o((()=>t[2]||(t[2]=[l("Visual Editor")]))),_:1}),s(y,{value:"json"},{default:o((()=>t[3]||(t[3]=[l("JSON Editor")]))),_:1})])),_:1},8,["modelValue"]),s(x,{modelValue:e.inputMode,"onUpdate:modelValue":t[1]||(t[1]=t=>e.inputMode=t)},{default:o((()=>[s(I,{value:"ui"},{default:o((()=>[c("div",Ve,[t[4]||(t[4]=c("h4",{class:"text-subtitle-1 mb-2"},"Priority Configuration",-1)),s(b,{"model-value":void 0!==e.config.defaultPriority?e.config.defaultPriority:.5,"onUpdate:modelValue":e.updateDefaultPriority,label:"Default Priority",min:0,max:1,step:.05,"thumb-label":"",hint:"Priority for tags not explicitly listed (0.5 = neutral)","persistent-hint":"",class:"mb-3"},{append:o((()=>[s(w,{"model-value":void 0!==e.config.defaultPriority?e.config.defaultPriority:.5,"onUpdate:modelValue":e.updateDefaultPriority,type:"number",style:{width:"80px"},density:"compact","hide-details":"",min:0,max:1,step:.05},null,8,["model-value","onUpdate:modelValue"])])),_:1},8,["model-value","onUpdate:modelValue"]),s(C,{"model-value":e.config.combineMode||"max","onUpdate:modelValue":e.updateCombineMode,label:"Combine Mode",items:e.combineModes,hint:"How to combine priorities when a card has multiple tags","persistent-hint":"",density:"compact",class:"mb-3"},null,8,["model-value","onUpdate:modelValue","items"]),s(b,{"model-value":void 0!==e.config.priorityInfluence?e.config.priorityInfluence:.5,"onUpdate:modelValue":e.updatePriorityInfluence,label:"Priority Influence",min:0,max:1,step:.05,"thumb-label":"",hint:"How strongly priority affects scoring (0 = no effect, 1 = maximum effect)","persistent-hint":""},{append:o((()=>[s(w,{"model-value":void 0!==e.config.priorityInfluence?e.config.priorityInfluence:.5,"onUpdate:modelValue":e.updatePriorityInfluence,type:"number",style:{width:"80px"},density:"compact","hide-details":"",min:0,max:1,step:.05},null,8,["model-value","onUpdate:modelValue"])])),_:1},8,["model-value","onUpdate:modelValue"])]),c("div",Te,[t[7]||(t[7]=c("h4",{class:"text-subtitle-1 mb-2"},"Tag Priorities",-1)),t[8]||(t[8]=c("p",{class:"text-caption mb-3"},"Set priority for each tag (1.0 = highest priority, 0.0 = lowest)",-1)),e.loadingTags?(i(),a(S,{key:0,type:"info",density:"compact"},{default:o((()=>t[5]||(t[5]=[l(" Loading tags... ")]))),_:1})):0===e.availableTags.length?(i(),a(S,{key:1,type:"warning",density:"compact"},{default:o((()=>t[6]||(t[6]=[l(" No tags available in course ")]))),_:1})):(i(),d("div",Ee,[(i(!0),d(p,null,h(e.availableTags,(t=>(i(),d("div",{key:t,class:"tag-priority-item mb-3"},[s(b,{"model-value":e.getTagPriority(t),"onUpdate:modelValue":n=>e.updateTagPriority(t,n),label:t,min:0,max:1,step:.05,"thumb-label":"",density:"compact"},{append:o((()=>[s(w,{"model-value":e.getTagPriority(t),"onUpdate:modelValue":n=>e.updateTagPriority(t,n),type:"number",style:{width:"80px"},density:"compact","hide-details":"",min:0,max:1,step:.05},null,8,["model-value","onUpdate:modelValue"])])),_:2},1032,["model-value","onUpdate:modelValue","label"])])))),128))]))])])),_:1}),s(I,{value:"json"},{default:o((()=>[s(k,{"model-value":e.jsonText,"onUpdate:modelValue":e.updateFromJson,label:"Configuration JSON",rows:"15",placeholder:'{"tagPriorities": {"letter-s": 0.95, "letter-t": 0.90}, "defaultPriority": 0.5, "combineMode": "max", "priorityInfluence": 0.5}',hint:"Paste or edit JSON configuration directly","persistent-hint":"","auto-grow":""},null,8,["model-value","onUpdate:modelValue"]),e.jsonError?(i(),a(S,{key:0,type:"error",density:"compact",class:"mt-2"},{default:o((()=>[l(f(e.jsonError),1)])),_:1})):e.jsonText?(i(),a(S,{key:1,type:"success",density:"compact",class:"mt-2"},{default:o((()=>t[9]||(t[9]=[l(" Valid configuration ")]))),_:1})):u("",!0)])),_:1})])),_:1},8,["modelValue"]),e.validationError?(i(),a(S,{key:0,type:"error",density:"compact",class:"mt-3"},{default:o((()=>[l(f(e.validationError),1)])),_:1})):u("",!0)])}],["__scopeId","data-v-573b50bd"]])},props:{courseId:{type:String,required:!0}},data:()=>({strategies:[],loading:!0,showDeleteConfirm:!1,strategyToDelete:null,strategyTypes:[{label:"Hierarchy Definition",value:"hierarchy"},{label:"Interference Mitigator",value:"interference"},{label:"Relative Priority",value:"relativePriority"}],newStrategy:{type:"hierarchy",name:"",description:"",config:{cardIds:[]}},editingStrategy:null,defaultStrategyId:null}),async created(){await this.loadStrategies()},watch:{"newStrategy.type"(e){this.newStrategy.config=this.getDefaultConfig(e)}},methods:{getDefaultConfig(e){switch(e){case"hierarchy":return{prerequisites:{}};case"interference":return{interferenceSets:[],maturityThreshold:{minCount:10,minElapsedDays:3},defaultDecay:.8};case"relativePriority":return{tagPriorities:{},defaultPriority:.5,combineMode:"max",priorityInfluence:.5};default:return{}}},getStrategyTypeFromClass(e){switch(e){case A.HIERARCHY:return"hierarchy";case A.INTERFERENCE:return"interference";case A.RELATIVE_PRIORITY:return"relativePriority";default:return"hierarchy"}},parseSerializedData(e,t){try{return JSON.parse(t)}catch(n){return console.error("Failed to parse strategy data:",n),this.getDefaultConfig(e)}},async loadStrategies(){this.loading=!0;try{const e=x().getCourseDB(this.courseId),[t,n]=await Promise.all([e.getAllNavigationStrategies(),e.getCourseConfig()]);this.strategies=t,this.defaultStrategyId=n.defaultNavigationStrategyId||null}catch(e){console.error("Failed to load navigation strategies:",e),this.strategies=[{_id:"NAVIGATION_STRATEGY-ELO",docType:E.NAVIGATION_STRATEGY,name:"ELO",description:"Default ELO-based navigation strategy",implementingClass:A.ELO,course:this.courseId,serializedData:"",author:"system"}]}this.loading=!1},async setDefaultStrategy(e){try{this.loading=!0;const t=x().getCourseDB(this.courseId),n=await t.getCourseConfig();n.defaultNavigationStrategyId=e,await t.updateCourseConfig(n),this.defaultStrategyId=e,alert("Default strategy updated!")}catch(t){console.error("Failed to set default strategy:",t),alert("Error updating default strategy. See console for details.")}finally{this.loading=!1}},startNewStrategy(){const e="hierarchy";this.newStrategy={type:e,name:"",description:"",config:this.getDefaultConfig(e)},this.editingStrategy=null},cancelEdit(){this.startNewStrategy()},editStrategy(e){const t=this.getStrategyTypeFromClass(e.implementingClass),n=this.parseSerializedData(t,e.serializedData);this.newStrategy={type:t,name:e.name,description:e.description,config:n},this.editingStrategy=e},async saveStrategy(){if(this.newStrategy.name)if("hardcoded"!==this.newStrategy.type||0!==this.newStrategy.config.cardIds.length){if("hierarchy"===this.newStrategy.type&&0===Object.keys(this.newStrategy.config.prerequisites||{}).length)return void alert("At least one prerequisite rule is required for hierarchy strategy.");if("interference"!==this.newStrategy.type||this.newStrategy.config.interferenceSets&&0!==this.newStrategy.config.interferenceSets.length)if("relativePriority"!==this.newStrategy.type||this.newStrategy.config.tagPriorities&&0!==Object.keys(this.newStrategy.config.tagPriorities).length){this.loading=!0;try{const e=x(),t=e.getUserDB().getUsername(),n=e.getCourseDB(this.courseId),r={hierarchy:A.HIERARCHY,interference:A.INTERFERENCE,relativePriority:A.RELATIVE_PRIORITY};let a=JSON.stringify(this.newStrategy.config);if(this.editingStrategy){const e={...this.editingStrategy,name:this.newStrategy.name,description:this.newStrategy.description,implementingClass:r[this.newStrategy.type],serializedData:a};await n.updateNavigationStrategy(this.editingStrategy._id,e)}else{const e={_id:`NAVIGATION_STRATEGY-${Date.now()}`,docType:E.NAVIGATION_STRATEGY,name:this.newStrategy.name,description:this.newStrategy.description,implementingClass:r[this.newStrategy.type],author:t,course:this.courseId,serializedData:a};await n.addNavigationStrategy(e)}await this.loadStrategies(),this.startNewStrategy()}catch(e){console.error("Failed to save new strategy:",e),alert("Error saving strategy. See console for details.")}this.loading=!1}else alert("At least one tag priority must be set for relative priority strategy.");else alert("At least one interference group is required for interference strategy.")}else alert("At least one card ID is required for hardcoded order strategy.");else alert("Strategy Name is required.")},confirmDeleteStrategy(e){this.strategyToDelete=e,this.showDeleteConfirm=!0},async deleteStrategy(){if(this.strategyToDelete){this.loading=!0;try{const e=x().getCourseDB(this.courseId),t={_id:this.strategyToDelete._id,docType:E.NAVIGATION_STRATEGY,name:"DELETED",description:"This strategy has been deleted",implementingClass:"",course:this.courseId,serializedData:""};await e.updateNavigationStrategy(this.strategyToDelete._id,t),console.log(`Strategy ${this.strategyToDelete._id} marked as deleted`),this.strategies=this.strategies.filter((e=>e._id!==this.strategyToDelete?._id)),this.showDeleteConfirm=!1,this.strategyToDelete=null}catch(e){console.error("Failed to delete navigation strategy:",e)}this.loading=!1}}}}),Fe={class:"navigation-strategy-editor"},Oe={key:0,class:"text-center pa-4"},Re={key:1,class:"editor-layout"},je={class:"strategy-list-column"},Ue={class:"d-flex align-center mb-2"},qe={class:"strategy-form-column"},Ne={class:"form-header d-flex align-center mb-3"},Pe={class:"text-h6"},Me={class:"form-actions mt-4"},ze=te(Ae,[["render",function(e,t,n,p,h,g){const m=r("v-progress-circular"),v=r("v-spacer"),y=r("v-icon"),_=r("v-btn"),w=r("v-alert"),b=r("navigation-strategy-list"),C=r("v-select"),S=r("v-text-field"),I=r("hierarchy-config-form"),k=r("interference-config-form"),x=r("relative-priority-config-form"),D=r("v-card-title"),V=r("v-card-text"),T=r("v-card-actions"),E=r("v-card"),A=r("v-dialog");return i(),d("div",Fe,[e.loading?(i(),d("div",Oe,[s(m,{indeterminate:"",color:"secondary"})])):(i(),d("div",Re,[c("div",je,[c("div",Ue,[t[10]||(t[10]=c("h3",{class:"text-h6"},"Strategies",-1)),s(v),s(_,{size:"small",color:"primary",onClick:e.startNewStrategy,density:"compact"},{default:o((()=>[s(y,{start:"",size:"small"},{default:o((()=>t[8]||(t[8]=[l("mdi-plus")]))),_:1}),t[9]||(t[9]=l(" New "))])),_:1},8,["onClick"])]),0===e.strategies.length?(i(),a(w,{key:0,type:"info",density:"compact"},{default:o((()=>t[11]||(t[11]=[l(" No strategies defined ")]))),_:1})):(i(),a(b,{key:1,strategies:e.strategies,"default-strategy-id":e.defaultStrategyId,"onUpdate:defaultStrategy":e.setDefaultStrategy,onEdit:e.editStrategy,onDelete:e.confirmDeleteStrategy},null,8,["strategies","default-strategy-id","onUpdate:defaultStrategy","onEdit","onDelete"]))]),c("div",qe,[c("div",Ne,[c("h3",Pe,f(e.editingStrategy?"Edit Strategy":"New Strategy"),1),s(v),e.editingStrategy?(i(),a(_,{key:0,size:"small",variant:"text",onClick:e.cancelEdit,density:"compact"},{default:o((()=>t[12]||(t[12]=[l(" Cancel ")]))),_:1},8,["onClick"])):u("",!0)]),s(C,{modelValue:e.newStrategy.type,"onUpdate:modelValue":t[0]||(t[0]=t=>e.newStrategy.type=t),label:"Type",items:e.strategyTypes,"item-title":"label","item-value":"value",density:"compact",class:"mb-3"},null,8,["modelValue","items"]),s(S,{modelValue:e.newStrategy.name,"onUpdate:modelValue":t[1]||(t[1]=t=>e.newStrategy.name=t),label:"Name",density:"compact",class:"mb-3"},null,8,["modelValue"]),s(S,{modelValue:e.newStrategy.description,"onUpdate:modelValue":t[2]||(t[2]=t=>e.newStrategy.description=t),label:"Description",density:"compact",class:"mb-3"},null,8,["modelValue"]),"hierarchy"===e.newStrategy.type?(i(),a(I,{key:0,modelValue:e.newStrategy.config,"onUpdate:modelValue":t[3]||(t[3]=t=>e.newStrategy.config=t),"course-id":e.courseId},null,8,["modelValue","course-id"])):"interference"===e.newStrategy.type?(i(),a(k,{key:1,modelValue:e.newStrategy.config,"onUpdate:modelValue":t[4]||(t[4]=t=>e.newStrategy.config=t),"course-id":e.courseId},null,8,["modelValue","course-id"])):"relativePriority"===e.newStrategy.type?(i(),a(x,{key:2,modelValue:e.newStrategy.config,"onUpdate:modelValue":t[5]||(t[5]=t=>e.newStrategy.config=t),"course-id":e.courseId},null,8,["modelValue","course-id"])):(i(),a(w,{key:3,type:"warning",density:"compact"},{default:o((()=>[l(" Unknown strategy type: "+f(e.newStrategy.type),1)])),_:1})),c("div",Me,[s(_,{color:"primary",onClick:e.saveStrategy,disabled:!e.newStrategy.name,size:"small"},{default:o((()=>[l(f(e.editingStrategy?"Update":"Create"),1)])),_:1},8,["onClick","disabled"]),e.editingStrategy?(i(),a(_,{key:0,variant:"text",onClick:e.cancelEdit,size:"small"},{default:o((()=>t[13]||(t[13]=[l(" Cancel ")]))),_:1},8,["onClick"])):u("",!0)])]),s(A,{modelValue:e.showDeleteConfirm,"onUpdate:modelValue":t[7]||(t[7]=t=>e.showDeleteConfirm=t),"max-width":"400px"},{default:o((()=>[s(E,null,{default:o((()=>[s(D,{class:"text-subtitle-1"},{default:o((()=>t[14]||(t[14]=[l("Delete Strategy")]))),_:1}),s(V,null,{default:o((()=>[l('Delete "'+f(e.strategyToDelete?.name)+'"?',1)])),_:1}),s(T,null,{default:o((()=>[s(v),s(_,{size:"small",onClick:t[6]||(t[6]=t=>e.showDeleteConfirm=!1)},{default:o((()=>t[15]||(t[15]=[l("Cancel")]))),_:1}),s(_,{size:"small",color:"error",onClick:e.deleteStrategy},{default:o((()=>t[16]||(t[16]=[l("Delete")]))),_:1},8,["onClick"])])),_:1})])),_:1})])),_:1},8,["modelValue"])]))])}],["__scopeId","data-v-1cb6c357"]]);function Be(e){return null!==e&&"object"==typeof e&&"clearData"in e&&"validate"in e&&"function"==typeof e.clearData&&"function"==typeof e.validate}const $e={status:e.ok,msg:""};function Le(t){const n={status:e.error,msg:"This input must be a number"};return r=t,isNaN(r-parseFloat(r))?n:$e;var r}function We(t){const n={status:e.error,msg:"This input must be an integer (..., -2, -1, 0, 1, 2, ...)."};return Le(t).status===e.error?Le(t):/^[+,-]?\s?\d+$/.test(t)?$e:n}const Je=n("fieldStore",{state:()=>({dataShape:null,inputs:{},mediaInputs:{},inputIsValid:!1,validation:{},convertedInput:{},previewInput:{}}),getters:{isValidated(){return this.inputIsValid},getPreview:e=>e.inputIsValid?e.previewInput:{},getConverted:e=>e.inputIsValid?e.convertedInput:{}},actions:{$reset(){console.log("[FieldInputStore].reset()"),this.inputs={},this.mediaInputs={},this.validation={},this.convertedInput={},this.previewInput={},this.inputIsValid=!1;for(let e=1;e<=10;e++){const t=`audio-${e}`,n=`image-${e}`;delete this.mediaInputs[t],delete this.mediaInputs[n]}},setFieldValue(e,t){this.inputs[e]=t,this.validate(),this.convert()},setMedia(e,t){console.log(`[FieldInputStore].setMedia: ${e}`),this.mediaInputs[e]=t,this.convert()},validate(){if(this.validation={},null!==this.dataShape){this.inputIsValid=!0;for(const t of this.dataShape.fields)t.validator&&(t.validator.test(this.inputs[t.name]).status===e.ok?this.validation[t.name]=!0:(this.inputIsValid=!1,this.validation[t.name]=!1))}else this.inputIsValid=!1},convert(){this.convertedInput={},this.dataShape?.fields.forEach((e=>{this.convertedInput[e.name]=L[e.type].databaseConverter(this.inputs[e.name]),this.previewInput[e.name]=L[e.type].previewConverter(this.inputs[e.name])}));for(let e=1;e<11;e++){const t=`audio-${e}`,n=this.mediaInputs[t];if(!n)break;this.convertedInput[t]=L[O.AUDIO].databaseConverter(n),this.previewInput[t]=L[O.AUDIO].previewConverter(n)}for(let e=1;e<11;e++){const t=`image-${e}`,n=this.mediaInputs[t];if(!n)break;this.convertedInput[t]=L[O.IMAGE].databaseConverter(n),this.previewInput[t]=L[O.IMAGE].previewConverter(n)}},clearMediaEntries(){for(let e=1;e<=10;e++)delete this.mediaInputs[`audio-${e}`],delete this.mediaInputs[`image-${e}`],delete this.convertedInput[`audio-${e}`],delete this.convertedInput[`image-${e}`],delete this.previewInput[`audio-${e}`],delete this.previewInput[`image-${e}`]},clearField(e){delete this.inputs[e],delete this.validation[e],delete this.convertedInput[e],delete this.previewInput[e]}}}),Ge=t({name:"FieldInput",props:{autofocus:Boolean,field:{type:Object,required:!0}},setup(t){const n=Je(),r=_(null),a=y({get:()=>n.inputs[t.field.name],set:e=>n.setFieldValue(t.field.name,e)});w(a,((e,r)=>{console.log("[FieldInput] modelValue changed:",{new:e,old:r,currentStoreValue:n.inputs[t.field.name]})}));const i=y((()=>{const e=[];return t.field?.validator&&e.push(t.field.validator.test),e})),o=()=>{if(!t.field?.name)throw new Error("Field name is required for FieldInput component");return n.inputs[t.field.name]};return{inputField:r,fieldStore:n,modelValue:a,validators:i,focus:()=>{r.value&&r.value.focus()},userInput:o,clearData:()=>{if(console.log(`[FieldInput] Running generic clearData() for ${t.field?.name} in FieldInput.ts`),r.value){if(r.value.value="",!t.field?.name)return;n.clearField(t.field.name)}},setData:e=>{if(!t.field?.name)throw new Error("Field name is required for FieldInput component");n.setFieldValue(t.field.name,e)},vuetifyRules:()=>t.field?.validator?i.value.map((t=>{return n=t,t=>{const r=n(t);return r.status===e.ok||r.msg};var n})):[],generateTags:()=>(console.log("[FieldInput] Running generic generateTags() in FieldInput.ts"),t.field?.tagger?t.field.tagger(o()):[]),generateELO:()=>(console.log("[FieldInput] Running generic generateELO() in FieldInput.ts"),t.field?.generateELO?t.field.generateELO(o()):void 0)}},data:()=>({validationStatus:{status:e.ok,msg:""}})}),He=te(t({name:"IntegerInput",extends:Ge,setup(e,t){const n=Ge.setup?.(e,t);return{...n,validators:y((()=>{const t=Ge.validators.call(this);return e.field.validator?.test&&t.push(e.field.validator.test),t?[We,...t]:[We]}))}}}),[["render",function(e,t,n,o,u,s){const l=r("v-text-field");return i(),a(l,{ref:"inputField",modelValue:e.modelValue,"onUpdate:modelValue":t[0]||(t[0]=t=>e.modelValue=t),variant:"filled",type:"number",name:e.field.name,label:e.field.name,rules:e.vuetifyRules(),hint:e.validationStatus.msg,autofocus:e.autofocus},null,8,["modelValue","name","label","rules","hint","autofocus"])}]]),Ke=te(t({name:"MarkdownInput",extends:Ge,setup(e,t){const n=Ge.setup?.(e,t);return{...n}}}),[["render",function(e,t,n,o,u,s){const l=r("v-textarea");return i(),a(l,{ref:"inputField",modelValue:e.modelValue,"onUpdate:modelValue":t[0]||(t[0]=t=>e.modelValue=t),variant:"filled",name:e.field.name,label:e.field.name,rules:e.vuetifyRules(),hint:e.validationStatus.msg,autofocus:e.autofocus},null,8,["modelValue","name","label","rules","hint","autofocus"])}],["__scopeId","data-v-28ef24ff"]]),Qe=t({name:"MediaDragDropUploader",extends:Ge,setup(e,t){const n=Ge.setup?.(e,t),{fieldStore:r}=n;return{...n,fieldStore:r}},data:()=>({isDragging:!1,mediaItems:[]}),computed:{hasMedia(){return this.mediaItems.length>0}},created(){},methods:{dragOverHandler(e){e.preventDefault()},dragEnterHandler(e){e.preventDefault(),this.isDragging=!0},dragLeaveHandler(e){e.preventDefault(),this.isDragging=!1},dropHandler(e){e.preventDefault(),this.isDragging=!1;const t=e.dataTransfer?.files;t&&this.processFiles(t)},triggerFileInput(){this.$refs.fileInput.click()},handleFileInput(e){const t=e.target.files;t&&this.processFiles(t)},processFiles(e){Array.from(e).forEach((e=>{this.addMediaItem(e)})),this.updateStore()},addMediaItem(e){const t=e.type.startsWith("image/")?"image":"audio",n={type:t,file:e,url:URL.createObjectURL(e)};"image"===t&&this.createThumbnail(e).then((e=>{n.thumbnailUrl=e,this.$nextTick((()=>{this.$forceUpdate()}))})),this.mediaItems.push(n)},createThumbnail:async e=>new Promise((t=>{const n=new FileReader;n.onload=e=>{t(e.target?.result)},n.readAsDataURL(e)})),removeMedia(e){URL.revokeObjectURL(this.mediaItems[e].url),this.mediaItems.splice(e,1),this.updateStore()},clearData(){this.mediaItems.forEach((e=>{URL.revokeObjectURL(e.url)})),this.mediaItems=[],this.updateStore()},addMoreMedia(){console.log("addMoreMedia"),this.triggerFileInput()},updateStore(){let e=0,t=0;this.mediaItems.forEach((n=>{"image"===n.type?(e++,this.fieldStore.setMedia(`image-${e}`,{content_type:n.file.type,data:n.file})):"audio"===n.type&&(t++,this.fieldStore.setMedia(`audio-${t}`,{content_type:n.file.type,data:n.file}))}))},getValidators(){return[()=>({status:this.mediaItems.length>0?e.ok:e.error,msg:this.mediaItems.length>0?"":"At least one media item is required"})]}}}),Ye={class:"mr-2 mb-2"},Ze=["src"],Xe=["src"],et=te(Qe,[["render",function(e,t,n,a,f,g){const y=r("v-label"),_=r("v-btn");return i(),d("div",Ye,[s(y,{class:"text-h5"},{default:o((()=>t[5]||(t[5]=[l("Add media:")]))),_:1}),c("div",{class:v(["drop-zone",{"drop-zone--over":e.isDragging}]),onDrop:t[1]||(t[1]=(...t)=>e.dropHandler&&e.dropHandler(...t)),onDragover:t[2]||(t[2]=m(((...t)=>e.dragOverHandler&&e.dragOverHandler(...t)),["prevent"])),onDragenter:t[3]||(t[3]=m(((...t)=>e.dragEnterHandler&&e.dragEnterHandler(...t)),["prevent"])),onDragleave:t[4]||(t[4]=m(((...t)=>e.dragLeaveHandler&&e.dragLeaveHandler(...t)),["prevent"]))},[c("input",{ref:"fileInput",type:"file",accept:"image/*,audio/*",multiple:"",style:{display:"none"},onChange:t[0]||(t[0]=(...t)=>e.handleFileInput&&e.handleFileInput(...t))},null,544),(i(!0),d(p,null,h(e.mediaItems,((n,r)=>(i(),d("div",{key:r,class:"media-item"},["image"===n.type?(i(),d("img",{key:0,src:n.thumbnailUrl,alt:"Uploaded image thumbnail",class:"thumbnail"},null,8,Ze)):"audio"===n.type?(i(),d("audio",{key:1,controls:"",src:n.url},null,8,Xe)):u("",!0),s(_,{size:"small",onClick:t=>e.removeMedia(r)},{default:o((()=>t[6]||(t[6]=[l("Remove")]))),_:2},1032,["onClick"])])))),128)),t[8]||(t[8]=l(" Drop image or audio files here... ")),s(_,{onClick:e.triggerFileInput},{default:o((()=>t[7]||(t[7]=[l("Or Click to Upload")]))),_:1},8,["onClick"])],34)])}],["__scopeId","data-v-e86645b6"]]),tt=t({name:"MidiInput",components:{SyllableSeqVis:P},extends:Ge,data:()=>({midi:null,recording:!1,SylSeq:N([]),display:!1,transpositions:!1}),async created(){try{this.midi=await z.instance(),this.record(),this.store[this.field.name]=this.getTransposedSeqs}catch(e){throw new Error(`MidiInput.created: ${e}`)}},methods:{record(){this.midi&&(this.midi.record(),this.midi.addNoteonListenter((e=>{this.SylSeq.append(e),this.$refs.inputVis.updateBounds()})),this.recording=!0)},getTransposedSeqs(){return this.midi?this.transpositions?[-5,-4,-3,-2,-1,0,1,2,3,4,5,6].map((e=>M(this.midi.recording,e))):[this.midi.recording]:[]},clearData(){this.midi&&(console.log("midiInput clearing data..."),this.midi.stopRecording(),this.midi.eraseRecording(),this.SylSeq=N([]),this.record(),this.recording=!0,this.store.convertedInput[this.field.name]=this.midi.recording,this.store.validation[this.field.name]=!1,this.store[this.field.name]=this.getTransposedSeqs)},hasRecording(){return this.midi?.hasRecording??!1},reset(){this.clearData()},play(){this.midi&&(this.midi.play(),this.display=!0,this.validate())}}}),nt={key:0},rt={class:"text-h5"},at={class:"font-weight-black"},it=te(tt,[["render",function(e,t,n,p,h,g){const m=r("syllable-seq-vis"),v=r("v-icon"),y=r("v-btn"),_=r("v-checkbox");return i(),d("div",null,[e.recording?(i(),d("div",nt,[c("span",rt,[t[1]||(t[1]=l(" Now Recording from device: ")),c("span",at,f(e.midi.configuredInput),1)])])):u("",!0),(i(),a(m,{key:1,ref:"inputVis",seq:e.SylSeq,"last-t-ssuggestion":"5000"},null,8,["seq"])),s(y,{color:"primary",disabled:e.hasRecording(),onClick:e.play},{default:o((()=>[t[3]||(t[3]=l(" Preview ")),s(v,{end:""},{default:o((()=>t[2]||(t[2]=[l("volume_up")]))),_:1})])),_:1},8,["disabled","onClick"]),s(y,{color:"error",disabled:e.hasRecording(),onClick:e.reset},{default:o((()=>[t[5]||(t[5]=l(" Clear and try again ")),s(v,{end:""},{default:o((()=>t[4]||(t[4]=[l("close")]))),_:1})])),_:1},8,["disabled","onClick"]),s(_,{modelValue:e.transpositions,"onUpdate:modelValue":t[0]||(t[0]=t=>e.transpositions=t),label:"Include Transpositions",onClickCapture:e.reset},null,8,["modelValue","onClickCapture"])])}]]),ot=te(t({name:"NumberInput",extends:Ge,setup(e,t){const n=Ge.setup?.(e,t);return{...n,validators:y((()=>{const t=Ge.validators.call(this);return e.field.validator?.test&&t.push(e.field.validator.test),t?[Le,...t]:[Le]}))}}}),[["render",function(e,t,n,o,u,s){const l=r("v-text-field");return i(),a(l,{ref:"inputField",modelValue:e.modelValue,"onUpdate:modelValue":t[0]||(t[0]=t=>e.modelValue=t),variant:"filled",type:"number",name:e.field.name,label:e.field.name,rules:e.vuetifyRules(),hint:e.validationStatus.msg,autofocus:e.autofocus},null,8,["modelValue","name","label","rules","hint","autofocus"])}]]),ut=te(t({name:"StringInput",extends:Ge,setup(e,t){const n=Ge.setup?.(e,t);return{...n,validators:y((()=>{const t=Ge.validators.call(this);return e.field.validator?.test&&t.push(e.field.validator.test),t||[]}))}}}),[["render",function(e,t,n,o,u,s){const l=r("v-text-field");return i(),a(l,{ref:"inputField",modelValue:e.modelValue,"onUpdate:modelValue":t[0]||(t[0]=t=>e.modelValue=t),variant:"filled",type:"text",name:e.field.name,label:e.field.name,rules:e.vuetifyRules(),hint:e.validationStatus.msg,autofocus:e.autofocus},null,8,["modelValue","name","label","rules","hint","autofocus"])}]]),st=te(t({name:"ChessPuzzleInput",extends:Ge,setup(e,t){const n=Ge.setup?.(e,t),r=()=>{if(!n)return[];console.log(`CPI.generateTags: modelValue: ${n.modelValue.value}`);const e=n.modelValue.value.split(","),t=e[7].split(" "),r=e[9].split(" ");return t.map((e=>`theme-${e}`)).concat(r.map((e=>`opening-${e}`)))};return{...n,generateELO:()=>{if(!n)return;const e=n.modelValue.value.split(","),t=parseInt(e[3]),a=parseInt(e[6]),i={global:{score:t,count:a},tags:{},misc:{}};return r().forEach((e=>{i.tags[e]={score:t,count:a}})),console.log("generateELO",JSON.stringify(i)),i},generateTags:r}}}),[["render",function(e,t,n,o,u,s){const l=r("v-text-field");return i(),a(l,{ref:"inputField",modelValue:e.modelValue,"onUpdate:modelValue":t[0]||(t[0]=t=>e.modelValue=t),variant:"filled",name:e.field.name,label:e.field.name,rules:e.vuetifyRules(),autofocus:e.autofocus},null,8,["modelValue","name","label","rules","autofocus"])}]]),lt=n("dataInputForm",{state:()=>({dataInputForm:{dataShape:null,course:null,shapeViews:[],fields:[],fieldStore:Je(),uploading:!1}}),actions:{setDataShape(e){this.dataInputForm.dataShape=e,this.dataInputForm.fieldStore.dataShape=e,this.dataInputForm.fieldStore.$reset()},setCourse(e){this.dataInputForm.course=e}}}),ct=t({name:"DataInputForm",components:{NumberInput:ot,StringInput:ut,IntegerInput:He,MarkdownInput:Ke,MidiInput:it,CardBrowser:V,MediaDragDropUploader:et,TagsInput:R,ChessPuzzleInput:st},props:{courseCfg:{type:Object,required:!0,default:()=>({courseID:"default-test"})},dataShape:{type:Object,required:!0},previewComponent:{type:Object,required:!1,default:null},courseWare:{type:Object,default:()=>U}},data:()=>({tag:"",tags:[],autoCompleteSuggestions:[],timer:void 0,dataInputFormStore:lt(),fieldInputRefs:[],courseDB:null}),computed:{ftString:()=>O.STRING,int:()=>O.INT,num:()=>O.NUMBER,img:()=>O.IMAGE,mkd:()=>O.MARKDOWN,audio:()=>O.AUDIO,midi:()=>O.MIDI,uploader:()=>O.MEDIA_UPLOADS,chessPuzzle:()=>O.CHESS_PUZZLE,fieldInputs(){return Array.from(this.fieldInputRefs.values())},shapeViews:{get(){return this.dataInputFormStore.dataInputForm.shapeViews},set(e){this.dataInputFormStore.dataInputForm.shapeViews=e}},allowSubmit(){return this.dataInputFormStore.dataInputForm.fieldStore.isValidated},fieldStore(){return this.dataInputFormStore.dataInputForm.fieldStore},uploading:{get(){return this.dataInputFormStore.dataInputForm.uploading},set(e){this.dataInputFormStore.dataInputForm.uploading=e}},previewInput(){return this.fieldStore.getPreview},convertedInput(){return this.fieldStore.convertedInput},inputIsValidated(){return this.dataInputFormStore.dataInputForm.fieldStore.isValidated},datashapeDescriptor(){if(!this.courseCfg||!this.courseCfg.dataShapes)return{course:"",dataShape:""};for(const e of this.courseCfg.dataShapes){const t=S.getDataShapeDescriptor(e.name);if(t.dataShape===this.dataShape.name)return t}return{course:"",dataShape:""}}},watch:{dataShape:{handler(){this.previewComponent||this.getImplementingViews()},immediate:!0},store:{handler(){this.convertInput()}},"dataShape.fields"(e){console.log(`[DataInputForm].watch(fields): newFields ${JSON.stringify(e)}`),console.log(`[DataInputForm].watch(fields): fields ${JSON.stringify(this.dataShape.fields)}`),this.fieldInputRefs=new Array(e.length).fill(null),console.log(`[DataInputForm].watch(fields): fieldRefs ${JSON.stringify(this.fieldInputRefs)}`)}},created(){this.uploading=!1,this.courseDB=x().getCourseDB(this.courseCfg.courseID),this.getCourseTags(),this.dataInputFormStore.setDataShape(this.dataShape),console.log(`[DataInputForm].created: fields: ${JSON.stringify(this.dataShape.fields)}`),this.fieldInputRefs=new Array(this.dataShape.fields.length).fill(null),this.previewComponent&&this.getImplementingViews()},beforeUnmount(){this.fieldInputRefs=[]},methods:{async updateTags(e){console.log(`[DataInputForm] tags updated: ${JSON.stringify(e)}`),this.tags=e},setFieldInputRef(e,t){for(console.log(`[DataInputForm].setFieldInputRef: index: ${t}`),t>=this.fieldInputRefs.length&&(this.fieldInputRefs=this.fieldInputRefs.concat(new Array(t-this.fieldInputRefs.length+1).fill(null)));null===this.fieldInputRefs[this.fieldInputRefs.length-1];)this.fieldInputRefs.pop();this.fieldInputRefs[t]=e},async getCourseTags(){const e=await this.courseDB.getCourseTagStubs();this.autoCompleteSuggestions=e.rows.map((e=>e.doc.name))},expectedValidations(){return this.dataShape.fields.length},checkInput:()=>!0,convertInput(){},inputContainsTranspositionFcns(){this.convertInput();for(const e in this.convertedInput)if("function"==typeof this.convertedInput[e])return!0;return!1},objectContainsFunction(e){for(const t in e)if("function"==typeof e[t])return!0;return!1},expandO(e){let t=[];if(this.objectContainsFunction(e)){for(const n in e)if("function"==typeof e[n]){console.log(`[DataInputForm] Key ${n} is a function.`);const r=[];e[n]().forEach((t=>{let a={};a=structuredClone(e),a[n]=t,console.log(`[DataInputForm] Replaced Copy: ${JSON.stringify(a)}`),r.push(a)})),r.forEach((e=>{if(this.objectContainsFunction(e)){console.log("[DataInputForm] 2nd pass...");const n=this.expandO(e);t=t.concat(n)}else t.push(e)}))}return t}return[]},getTags(){const e=[];this.fieldInputs.forEach((t=>{if(t.generateTags){const n=t.generateTags();e.push(...n)}}));const t=this.$refs.tagsInput.tags.map((e=>e.text));return e.concat(t)},getElo(){for(const e of this.fieldInputs)if(e.generateELO)return e.generateELO()},async submit(){if(this.checkInput()){console.log(`[DataInputForm] Store: ${JSON.stringify(this.fieldStore.inputs)}`),console.log(`[DataInputForm] ConvertedStore: ${JSON.stringify(this.convertedInput)}`),this.uploading=!0;let t=[];this.inputContainsTranspositionFcns()?(console.log(`[DataInputForm] Expanded input: ${JSON.stringify(this.expandO(this.convertedInput))}`),t=this.expandO(this.convertedInput)):(console.log("[DataInputForm] No Transposition fcn detected"),t=[this.convertedInput]);const n=await Promise.all(t.map((async e=>await this.courseDB.addNote(this.datashapeDescriptor.course,this.dataShape,e,(await C()).getUsername(),this.getTags(),void 0,this.getElo()))));if(n[0].status===e.ok){b({text:"Content added... Thank you!",status:e.ok});const t=this.$refs.tagsInput;t.tags.length&&(t.updateAvailableCourseTags(),t.tags=[]),this.reset()}else b({text:"A problem occurred. Content has not been added.",status:e.error}),console.error(`Error in DataInputForm.submit(). Result from addNote: ${JSON.stringify(n)}`),this.uploading=!1}},reset(){console.log("[DataInputForm].reset()"),this.uploading=!1,this.fieldInputs.forEach((e=>{e.clearData()})),this.fieldStore.$reset(),this.fieldInputs[0].focus(),this.convertInput()},getImplementingViews(){if(this.previewComponent)return console.log("[DataInputForm] Getting previewComponent views"),void(this.shapeViews=this.previewComponent.views);for(const e of this.courseCfg.dataShapes){const t=S.getDataShapeDescriptor(e.name);if(console.log("[DataInputForm] descriptor",t),console.log("[DataInputForm] this.dataShape",this.dataShape),console.log("[DataInputForm] this.dataShape.name",this.dataShape.name),t.dataShape===this.dataShape.name){const n=this.courseWare.getCourseWare(t.course);this.shapeViews=[],n.getBaseQTypes().forEach((e=>{e.dataShapes[0].name===this.dataShape.name&&(this.shapeViews=this.shapeViews.concat(e.views))}));for(const t of e.questionTypes){const e=S.getQuestionDescriptor(t);n.getQuestion(e.questionType).views.forEach((e=>{this.shapeViews=this.shapeViews.concat(e)}))}}}},isFieldInput:e=>Be(e)}}),dt={key:1},ft=te(ct,[["render",function(e,t,n,c,g,v){const y=r("string-input"),_=r("chess-puzzle-input"),w=r("number-input"),b=r("integer-input"),C=r("markdown-input"),S=r("midi-input"),I=r("media-drag-drop-uploader"),k=r("tags-input"),x=r("v-icon"),D=r("v-btn"),V=r("v-form"),T=r("v-col"),E=r("card-browser"),A=r("v-row"),F=r("v-container");return i(),a(F,{fluid:""},{default:o((()=>[s(A,null,{default:o((()=>[s(T,{cols:"12",xl:"6"},{default:o((()=>[s(V,{"ma-2":"",autocomplete:"off"},{default:o((()=>[(i(!0),d(p,null,h(e.dataShape.fields,((t,n)=>(i(),d("div",{key:e.dataShape.fields.indexOf(t)},[t.type===e.ftString?(i(),a(y,{key:0,ref_for:!0,ref:t=>e.setFieldInputRef(t,n),field:t,autofocus:0==n},null,8,["field","autofocus"])):t.type===e.chessPuzzle?(i(),a(_,{key:1,ref_for:!0,ref:t=>e.setFieldInputRef(t,n),field:t,autofocus:0==n},null,8,["field","autofocus"])):t.type===e.num?(i(),a(w,{key:2,ref_for:!0,ref:t=>e.setFieldInputRef(t,n),field:t,autofocus:0==n},null,8,["field","autofocus"])):t.type===e.int?(i(),a(b,{key:3,ref_for:!0,ref:t=>e.setFieldInputRef(t,n),field:t,autofocus:0==n},null,8,["field","autofocus"])):t.type===e.mkd?(i(),a(C,{key:4,ref_for:!0,ref:t=>e.setFieldInputRef(t,n),field:t,autofocus:0==n,"data-cy":"markdown-input"},null,8,["field","autofocus"])):t.type===e.midi?(i(),a(S,{key:5,ref_for:!0,ref:t=>e.setFieldInputRef(t,n),field:t,autofocus:0==n},null,8,["field","autofocus"])):t.type===e.uploader?(i(),a(I,{key:6,ref_for:!0,ref:t=>e.setFieldInputRef(t,n),field:t,autofocus:0==n},null,8,["field","autofocus"])):u("",!0)])))),128)),s(k,{ref:"tagsInput","hide-submit":!0,"course-i-d":e.courseCfg.courseID,"card-i-d":""},null,8,["course-i-d"]),e.previewComponent?(i(),d("div",dt,"Input validated: "+f(e.inputIsValidated),1)):(i(),a(D,{key:0,"data-cy":"add-card-btn",class:"float-right",type:"submit",color:"primary",loading:e.uploading,disabled:!e.allowSubmit,onClick:m(e.submit,["prevent"])},{default:o((()=>[t[1]||(t[1]=l(" Add card ")),s(x,{end:""},{default:o((()=>t[0]||(t[0]=[l("mdi-plus-circle")]))),_:1})])),_:1},8,["loading","disabled","onClick"]))])),_:1})])),_:1}),s(T,{cols:"12",xl:"6"},{default:o((()=>[e.inputIsValidated?(i(),a(E,{key:0,class:"ml-4",views:e.shapeViews,data:[e.previewInput]},null,8,["views","data"])):u("",!0)])),_:1})])),_:1})])),_:1})}]]),pt=t({name:"CardPreviewList",components:{CardBrowser:V,SkMouseTrap:D},props:{parsedCards:{type:Array,required:!0,default:()=>[]},dataShape:{type:Object,required:!0},viewComponents:{type:Array,required:!1,default:()=>[]}},emits:["update:parsedCards","edit-card","delete-card"],data:()=>({currentIndex:0,loading:!1,keyBindings:[],showDeleteConfirm:!1,dontAskAgain:!1,skipDeleteConfirmation:!1,shortcutsEnabled:!0}),computed:{currentCard(){return 0===this.parsedCards.length||this.currentIndex>=this.parsedCards.length?null:this.parsedCards[this.currentIndex]},currentViewData(){return this.currentCard?{Input:this.currentCard.markdown}:{Input:""}}},mounted(){this.setupKeyBindings()},beforeUnmount(){this.shortcutsEnabled&&this.keyBindings.forEach((e=>{T.removeBinding(e.hotkey)}))},methods:{nextCard(){this.currentIndex<this.parsedCards.length-1&&this.currentIndex++},prevCard(){this.currentIndex>0&&this.currentIndex--},showCard(e){e>=0&&e<this.parsedCards.length&&(this.currentIndex=e)},setupKeyBindings(){this.keyBindings=[{command:"Previous Card",hotkey:"left",callback:()=>(this.prevCard(),!1)},{command:"Next Card",hotkey:"right",callback:()=>(this.nextCard(),!1)},{command:"Delete Card",hotkey:"del",callback:()=>(this.promptDelete(),!1)},{command:"Edit Card",hotkey:"e",callback:()=>(this.editCurrentCard(),!1)}],this.shortcutsEnabled&&T.addBinding(this.keyBindings)},enableShortcuts(){this.shortcutsEnabled||(this.shortcutsEnabled=!0,T.addBinding(this.keyBindings),console.log("[CardPreviewList] Keyboard shortcuts enabled"))},disableShortcuts(){this.shortcutsEnabled&&(this.shortcutsEnabled=!1,this.keyBindings.forEach((e=>{T.removeBinding(e.hotkey)})),console.log("[CardPreviewList] Keyboard shortcuts disabled"))},toggleShortcuts(e){e?this.enableShortcuts():this.disableShortcuts()},promptDelete(){this.currentCard&&(this.skipDeleteConfirmation?this.deleteCurrentCard():this.showDeleteConfirm=!0)},cancelDelete(){this.showDeleteConfirm=!1},confirmDelete(){this.dontAskAgain&&(this.skipDeleteConfirmation=!0),this.showDeleteConfirm=!1,this.deleteCurrentCard()},deleteCurrentCard(){if(!this.currentCard)return;const e=[...this.parsedCards];e.splice(this.currentIndex,1),this.$emit("update:parsedCards",e),this.$emit("delete-card",this.currentIndex),this.currentIndex>=e.length&&e.length>0&&(this.currentIndex=e.length-1)},editCurrentCard(){this.currentCard&&this.$emit("edit-card",this.currentCard,this.currentIndex)}}}),ht={class:"card-preview-list"},gt={class:"d-flex align-center"},mt={class:"text-subtitle-1 mr-2"},vt={key:0,class:"d-flex justify-center align-center my-4"},yt={key:1},_t={key:0},wt={key:0},bt={key:1},Ct={class:"markdown-content"},St={class:"card-metadata mt-2"},It={class:"d-flex flex-wrap gap-1"},kt={key:0,class:"mt-2 text-caption"},xt={key:1,class:"text-center pa-4"},Dt=t({name:"BulkImportView",components:{CardPreviewList:te(pt,[["render",function(e,t,n,g,m,v){const y=r("v-card-title"),_=r("v-checkbox"),w=r("v-card-text"),b=r("v-spacer"),C=r("v-btn"),S=r("v-card-actions"),I=r("v-card"),k=r("v-dialog"),x=r("sk-mouse-trap"),D=r("v-progress-circular"),V=r("card-browser"),T=r("v-sheet"),E=r("v-chip"),A=r("v-icon");return i(),d("div",ht,[s(k,{modelValue:e.showDeleteConfirm,"onUpdate:modelValue":t[1]||(t[1]=t=>e.showDeleteConfirm=t),"max-width":"400px"},{default:o((()=>[s(I,null,{default:o((()=>[s(y,{class:"text-h5"},{default:o((()=>t[2]||(t[2]=[l("Remove Card")]))),_:1}),s(w,null,{default:o((()=>[t[3]||(t[3]=c("p",null,"Are you sure you want to remove this card?",-1)),s(_,{modelValue:e.dontAskAgain,"onUpdate:modelValue":t[0]||(t[0]=t=>e.dontAskAgain=t),label:"Don't ask me again","hide-details":"",class:"mt-2"},null,8,["modelValue"])])),_:1}),s(S,null,{default:o((()=>[s(b),s(C,{color:"grey-darken-1",variant:"text",onClick:e.cancelDelete},{default:o((()=>t[4]||(t[4]=[l("Cancel")]))),_:1},8,["onClick"]),s(C,{color:"error",onClick:e.confirmDelete},{default:o((()=>t[5]||(t[5]=[l("Remove")]))),_:1},8,["onClick"])])),_:1})])),_:1})])),_:1},8,["modelValue"]),e.parsedCards.length>0?(i(),a(I,{key:0,class:"mb-4"},{default:o((()=>[s(y,{class:"d-flex align-center justify-space-between"},{default:o((()=>[t[6]||(t[6]=c("span",null,"Card Preview",-1)),c("div",gt,[c("div",mt,f(e.currentIndex+1)+" of "+f(e.parsedCards.length),1),s(x)])])),_:1}),s(w,null,{default:o((()=>[e.loading?(i(),d("div",vt,[s(D,{indeterminate:"",color:"primary"})])):(i(),d("div",yt,[e.currentCard?(i(),d("div",_t,[s(T,{class:"card-content pa-4 mb-4",rounded:"",border:""},{default:o((()=>[e.viewComponents&&e.viewComponents.length>0?(i(),d("div",wt,[s(V,{views:e.viewComponents,data:[e.currentViewData],"suppress-spinner":!0},null,8,["views","data"])])):(i(),d("div",bt,[t[7]||(t[7]=c("div",{class:"mb-2 font-weight-bold"},"Card content:",-1)),c("div",Ct,f(e.currentCard.markdown),1)]))])),_:1}),c("div",St,[c("div",It,[(i(!0),d(p,null,h(e.currentCard.tags,(e=>(i(),a(E,{key:e,size:"small",color:"primary",variant:"outlined",class:"mr-1 mb-1"},{default:o((()=>[l(f(e),1)])),_:2},1024)))),128))]),void 0!==e.currentCard.elo?(i(),d("div",kt,"ELO: "+f(e.currentCard.elo),1)):u("",!0)])])):(i(),d("div",xt,"No card selected or available to preview."))]))])),_:1}),s(S,{class:"px-4 pb-4"},{default:o((()=>[s(C,{variant:"outlined",icon:"",disabled:0===e.currentIndex||e.loading,onClick:e.prevCard},{default:o((()=>[s(A,null,{default:o((()=>t[8]||(t[8]=[l("mdi-chevron-left")]))),_:1})])),_:1},8,["disabled","onClick"]),s(b),s(C,{variant:"tonal",color:"error","prepend-icon":"mdi-delete",class:"mx-2",disabled:!e.currentCard||e.loading,onClick:e.promptDelete},{default:o((()=>t[9]||(t[9]=[l(" Remove ")]))),_:1},8,["disabled","onClick"]),s(C,{variant:"tonal",color:"primary","prepend-icon":"mdi-pencil",class:"mx-2",disabled:!e.currentCard||e.loading,onClick:e.editCurrentCard},{default:o((()=>t[10]||(t[10]=[l(" Edit ")]))),_:1},8,["disabled","onClick"]),s(b),s(C,{variant:"outlined",icon:"",disabled:e.currentIndex>=e.parsedCards.length-1||e.loading,onClick:e.nextCard},{default:o((()=>[s(A,null,{default:o((()=>t[11]||(t[11]=[l("mdi-chevron-right")]))),_:1})])),_:1},8,["disabled","onClick"])])),_:1})])),_:1})):u("",!0)])}],["__scopeId","data-v-41613480"]])},props:{courseCfg:{type:Object,required:!0}},data:()=>({bulkText:"",parsedCards:[],parsingComplete:!1,importAttempted:!1,results:[],processing:!1,courseDB:null,dataShape:j[0],cardViewComponents:[],editingCard:null,editingCardIndex:-1,showEditDialog:!1,editedMarkdown:"",editedTags:[],editedElo:void 0,newTagText:""}),computed:{uniqueTags(){if(!this.parsedCards||0===this.parsedCards.length)return[];const e=this.parsedCards.reduce(((e,t)=>(t.tags&&t.tags.length>0&&e.push(...t.tags),e)),[]);return[...new Set(e)].sort()}},created(){this.courseCfg?.courseID?(this.courseDB=x().getCourseDB(this.courseCfg.courseID),this.courseCfg.dataShapes&&0!==this.courseCfg.dataShapes.length?this.initializeCardPreviewComponents():(console.error("[BulkImportView] Course config does not contain any dataShapes."),b({text:"Course configuration has no dataShapes. Bulk import may not work correctly.",status:e.warning}))):(console.error("[BulkImportView] Course config or Course ID is missing."),b({text:"Course configuration is missing. Cannot initialize bulk import.",status:e.error}))},methods:{handleDeleteCard(t){console.log(`[BulkImportView] Card at index ${t} was deleted`),b({text:"Card removed from import list",status:e.ok})},handleEditCard(e,t){this.$refs.cardPreviewList&&this.$refs.cardPreviewList.toggleShortcuts(!1),this.editingCard={...e},this.editingCardIndex=t,this.editedMarkdown=e.markdown,this.editedTags=[...e.tags],this.editedElo=e.elo,this.showEditDialog=!0,this.$nextTick((()=>{this.$refs.markdownTextarea&&this.$refs.markdownTextarea.$el.querySelector("textarea")?.focus()}))},saveEditedCard(){if(this.editingCardIndex<0||!this.editingCard)return;const t={markdown:this.editedMarkdown,tags:this.editedTags,elo:this.editedElo},n=[...this.parsedCards];n[this.editingCardIndex]=t,this.parsedCards=n,this.closeEditDialog(),b({text:"Card updated successfully",status:e.ok})},closeEditDialog(){this.showEditDialog=!1,this.editingCard=null,this.editingCardIndex=-1,this.editedMarkdown="",this.editedTags=[],this.editedElo=void 0,setTimeout((()=>{this.$refs.cardPreviewList&&this.$refs.cardPreviewList.toggleShortcuts(!0)}),100)},addTag(){const e=this.newTagText.trim();e&&!this.editedTags.includes(e)&&(this.editedTags.push(e),this.newTagText="")},removeTag(e){this.editedTags=this.editedTags.filter((t=>t!==e))},initializeCardPreviewComponents(){const e=this.courseCfg?.dataShapes?.[0];if(!e)return;this.dataShape.name!==j[0].name&&(this.dataShape=j[0]);const t=S.getDataShapeDescriptor(e.name),n=U.getCourse(t.course);if(n){this.cardViewComponents=[],n.getBaseQTypes().forEach((e=>{e.dataShapes[0].name===this.dataShape?.name&&(this.cardViewComponents=this.cardViewComponents.concat(e.views))}));for(const t of e.questionTypes){const e=S.getQuestionDescriptor(t),r=n.getQuestion(e.questionType)?.views||[];this.cardViewComponents=this.cardViewComponents.concat(r)}console.log(`[BulkImportView] Loaded ${this.cardViewComponents.length} view components for card preview`)}},resetToInputStage(){this.parsingComplete=!1,this.parsedCards=[],this.importAttempted=!1},startNewBulkImport(){this.bulkText="",this.results=[],this.parsedCards=[],this.parsingComplete=!1,this.importAttempted=!1},handleInitialParse(){if(this.courseDB){if(function(e){const t=G(e);return t.length>0&&t.some((e=>!!e.trim()))}(this.bulkText)){this.processing=!0,this.results=[],this.parsedCards=[],this.parsingComplete=!1;try{if(this.parsedCards=function(e,t=W){const n=G(e),r=[];for(const a of n){const e=J(a,t);e&&r.push(e)}return r}(this.bulkText),0===this.parsedCards.length)return b({text:'No cards could be parsed from the input. Please check the format and ensure cards are separated by two "---" lines and that cards have content.',status:e.warning}),void(this.processing=!1);0===this.cardViewComponents.length&&this.initializeCardPreviewComponents(),this.parsingComplete=!0,console.log(`[BulkImportView] Successfully parsed ${this.parsedCards.length} cards for preview`)}catch(t){console.error("[BulkImportView] Error parsing bulk text:",t),b({text:`Error parsing cards: ${t instanceof Error?t.message:"Unknown error"}`,status:e.error})}finally{this.processing=!1}}}else b({text:"Database connection not available. Cannot process cards.",status:e.error})},async confirmAndImportCards(){if(!this.courseDB)return b({text:"Database connection lost before import.",status:e.error}),void(this.processing=!1);if(0===this.parsedCards.length)return b({text:"No parsed cards to import.",status:e.warning}),void(this.processing=!1);if(!this.courseCfg?.dataShapes||0===this.courseCfg.dataShapes.length)return b({text:"This course has no data shapes configured. Cannot import cards.",status:e.error}),void(this.processing=!1);this.processing=!0,this.results=[];const t=(await C()).getUsername(),n=j[0];if(!n)return b({text:"Critical: Could not find BlanksCardDataShapes. Aborting import.",status:e.error}),void(this.processing=!1);const r=this.courseCfg?.dataShapes?.[0];if(!r)return b({text:"Critical: No data shapes found in course configuration. Aborting import.",status:e.error}),void(this.processing=!1);const a=S.getDataShapeDescriptor(r.name).course,i={dataShape:n,courseCode:a,userName:t},o=I(i);if(!o.isValid)return b({text:o.errorMessage||"Invalid processor configuration for import.",status:e.error}),void(this.processing=!1);console.log("[BulkImportView] Starting import of parsed cards:",{courseID:this.courseCfg.courseID,dataShapeToUse:n.name,courseCode:a,numberOfCards:this.parsedCards.length});try{this.results=await k(this.parsedCards,this.courseDB,i)}catch(u){console.error("[BulkImportView] Error importing parsed cards:",u),this.results.push({originalText:"Bulk Operation Error",status:"error",message:`Critical error during import: ${u instanceof Error?u.message:"Unknown error"}`})}finally{this.processing=!1,this.importAttempted=!0}this.results.every((e=>"success"===e.status))&&this.results.length>0?b({text:`${this.results.length} card(s) imported successfully!`,status:e.ok}):this.results.some((e=>"error"===e.status))&&b({text:"Some cards failed to import. Please review the results below.",status:e.warning})}}}),Vt={key:0},Tt={key:1,class:"text--secondary"},Et={class:"my-4"},At={class:"d-flex align-center mb-2"},Ft={class:"d-flex flex-wrap"},Ot={key:0,class:"ml-6"},Rt={key:1,class:"ml-6"},jt={key:2,class:"ml-6"},Ut={style:{"white-space":"pre-wrap","background-color":"#f5f5f5",padding:"5px"}},qt=te(Dt,[["render",function(e,t,n,y,_,w){const b=r("v-textarea"),C=r("v-col"),S=r("v-row"),I=r("v-card-title"),k=r("v-chip"),x=r("v-card-text"),D=r("v-card"),V=r("card-preview-list"),T=r("v-text-field"),E=r("v-btn"),A=r("v-form"),F=r("v-spacer"),O=r("v-tooltip"),R=r("v-card-actions"),j=r("v-dialog"),U=r("v-icon"),q=r("v-list-subheader"),N=r("v-list-item-title"),P=r("v-list-item-subtitle"),M=r("v-list-item"),z=r("v-list"),B=r("v-container");return i(),a(B,{fluid:""},{default:o((()=>[e.parsingComplete?u("",!0):(i(),a(S,{key:0},{default:o((()=>[s(C,{cols:"12"},{default:o((()=>[s(b,{modelValue:e.bulkText,"onUpdate:modelValue":t[0]||(t[0]=t=>e.bulkText=t),label:"Bulk Card Input",placeholder:"Paste card data here.\nSeparate cards with two consecutive '---' lines on their own lines.\nExample:\nCard 1 Question\n{{blank}}\ntags: tagA, tagB\nelo: 1500\n---\n---\nCard 2 Question\nAnother {{blank}}\nelo: 1200\ntags: tagC",rows:"15",variant:"outlined","data-cy":"bulk-import-textarea"},null,8,["modelValue"])])),_:1})])),_:1})),e.parsingComplete?(i(),a(S,{key:1,class:"mb-4"},{default:o((()=>[s(C,{cols:"12",md:"4"},{default:o((()=>[s(D,{border:""},{default:o((()=>[s(I,null,{default:o((()=>t[6]||(t[6]=[l("Parsing Summary")]))),_:1}),s(x,null,{default:o((()=>[c("p",null,[c("strong",null,f(e.parsedCards.length),1),t[7]||(t[7]=l(" card(s) parsed and ready for import. "))]),e.parsedCards.length>0?(i(),d("div",Vt,[t[8]||(t[8]=c("strong",null,"Tags Found:",-1)),e.uniqueTags.length>0?(i(!0),d(p,{key:0},h(e.uniqueTags,(e=>(i(),a(k,{key:e,class:"mr-1 mb-1",size:"small",label:""},{default:o((()=>[l(f(e),1)])),_:2},1024)))),128)):(i(),d("span",Tt,"No unique tags identified across parsed cards."))])):u("",!0)])),_:1})])),_:1})])),_:1}),s(C,{cols:"12",md:"8"},{default:o((()=>[e.parsedCards.length>0?(i(),a(V,{key:0,ref:"cardPreviewList","parsed-cards":e.parsedCards,"onUpdate:parsedCards":t[1]||(t[1]=t=>e.parsedCards=t),"data-shape":e.dataShape,"view-components":e.cardViewComponents,onEditCard:e.handleEditCard,onDeleteCard:e.handleDeleteCard},null,8,["parsed-cards","data-shape","view-components","onEditCard","onDeleteCard"])):u("",!0)])),_:1})])),_:1})):u("",!0),s(j,{modelValue:e.showEditDialog,"onUpdate:modelValue":t[5]||(t[5]=t=>e.showEditDialog=t),"max-width":"800px"},{default:o((()=>[s(D,null,{default:o((()=>[s(I,null,{default:o((()=>t[9]||(t[9]=[l("Edit Card")]))),_:1}),s(x,null,{default:o((()=>[s(A,{onSubmit:m(e.saveEditedCard,["prevent"]),onKeydown:g(e.closeEditDialog,["esc"])},{default:o((()=>[s(b,{ref:"markdownTextarea",modelValue:e.editedMarkdown,"onUpdate:modelValue":t[2]||(t[2]=t=>e.editedMarkdown=t),label:"Card Content",rows:"6","auto-grow":"",variant:"outlined",onKeydown:g(m(e.saveEditedCard,["ctrl"]),["enter"])},null,8,["modelValue","onKeydown"]),c("div",Et,[c("div",At,[t[11]||(t[11]=c("h3",{class:"text-subtitle-1 mr-2"},"Tags",-1)),s(T,{modelValue:e.newTagText,"onUpdate:modelValue":t[3]||(t[3]=t=>e.newTagText=t),density:"compact","hide-details":"",placeholder:"Add a tag",variant:"outlined",class:"mr-2",onKeydown:[g(m(e.addTag,["prevent"]),["enter"]),g(e.closeEditDialog,["esc"])]},null,8,["modelValue","onKeydown"]),s(E,{size:"small",color:"primary",variant:"text",onClick:e.addTag},{default:o((()=>t[10]||(t[10]=[l("Add")]))),_:1},8,["onClick"])]),c("div",Ft,[(i(!0),d(p,null,h(e.editedTags,(t=>(i(),a(k,{key:t,closable:"",class:"mr-1 mb-1","onClick:close":n=>e.removeTag(t)},{default:o((()=>[l(f(t),1)])),_:2},1032,["onClick:close"])))),128))])]),s(T,{modelValue:e.editedElo,"onUpdate:modelValue":t[4]||(t[4]=t=>e.editedElo=t),modelModifiers:{number:!0},label:"ELO Rating (optional)",type:"number",variant:"outlined",min:"0",max:"3000"},null,8,["modelValue"])])),_:1},8,["onSubmit","onKeydown"])])),_:1}),s(R,null,{default:o((()=>[s(F),s(E,{color:"grey",variant:"text",onClick:e.closeEditDialog},{default:o((()=>[t[13]||(t[13]=l(" Cancel ")),s(O,{activator:"parent",location:"top"},{default:o((()=>t[12]||(t[12]=[l("Press ESC")]))),_:1})])),_:1},8,["onClick"]),s(E,{color:"primary",onClick:e.saveEditedCard},{default:o((()=>[t[15]||(t[15]=l(" Save ")),s(O,{activator:"parent",location:"top"},{default:o((()=>t[14]||(t[14]=[l("Press Ctrl+Enter")]))),_:1})])),_:1},8,["onClick"])])),_:1})])),_:1})])),_:1},8,["modelValue"]),s(S,null,{default:o((()=>[s(C,{cols:"12"},{default:o((()=>[e.parsingComplete?u("",!0):(i(),a(E,{key:0,color:"primary",loading:e.processing,disabled:!e.bulkText.trim()||e.processing,"data-cy":"bulk-import-parse-btn",onClick:e.handleInitialParse},{default:o((()=>[t[17]||(t[17]=l(" Parse Cards ")),s(U,{end:""},{default:o((()=>t[16]||(t[16]=[l("mdi-play-circle-outline")]))),_:1})])),_:1},8,["loading","disabled","onClick"])),e.parsingComplete?(i(),d(p,{key:1},[s(E,{color:"primary",class:"mr-2",loading:e.processing,disabled:0===e.parsedCards.length||e.processing||e.importAttempted,"data-cy":"bulk-import-confirm-btn",onClick:e.confirmAndImportCards},{default:o((()=>[l(" Confirm and Import "+f(e.parsedCards.length)+" Card(s) ",1),s(U,{end:""},{default:o((()=>t[18]||(t[18]=[l("mdi-check-circle-outline")]))),_:1})])),_:1},8,["loading","disabled","onClick"]),e.importAttempted?u("",!0):(i(),a(E,{key:0,variant:"outlined",color:"grey-darken-1",disabled:e.processing,"data-cy":"bulk-import-edit-again-btn",onClick:e.resetToInputStage},{default:o((()=>[s(U,{start:""},{default:o((()=>t[19]||(t[19]=[l("mdi-pencil")]))),_:1}),t[20]||(t[20]=l(" Back to bulk-editor. "))])),_:1},8,["disabled","onClick"])),e.importAttempted?(i(),a(E,{key:1,variant:"outlined",color:"blue-darken-1",disabled:e.processing,"data-cy":"bulk-import-add-another-btn",onClick:e.startNewBulkImport},{default:o((()=>[s(U,{start:""},{default:o((()=>t[21]||(t[21]=[l("mdi-plus-circle-outline")]))),_:1}),t[22]||(t[22]=l(" Add Another Bulk Import "))])),_:1},8,["disabled","onClick"])):u("",!0)],64)):u("",!0)])),_:1})])),_:1}),e.results.length>0?(i(),a(S,{key:2},{default:o((()=>[s(C,{cols:"12"},{default:o((()=>[s(z,{density:"compact"},{default:o((()=>[s(q,null,{default:o((()=>t[23]||(t[23]=[l("Import Results")]))),_:1}),(i(!0),d(p,null,h(e.results,((e,n)=>(i(),a(M,{key:n,class:v({"lime-lighten-5":"success"===e.status,"red-lighten-5":"error"===e.status,"force-dark-text":"success"===e.status||"error"===e.status})},{default:o((()=>[s(N,null,{default:o((()=>[s(U,{color:"success"===e.status?"green":"red"},{default:o((()=>[l(f("success"===e.status?"mdi-check-circle":"mdi-alert-circle"),1)])),_:2},1032,["color"]),l(" Card "+f(n+1),1)])),_:2},1024),s(P,null,{default:o((()=>[e.message?(i(),d("div",Ot,f(e.message),1)):u("",!0),e.cardId?(i(),d("div",Rt,"ID: "+f(e.cardId),1)):u("",!0),"error"===e.status&&e.originalText?(i(),d("details",jt,[t[24]||(t[24]=c("summary",null,"Original Input",-1)),c("pre",Ut,f(e.originalText),1)])):u("",!0)])),_:2},1024)])),_:2},1032,["class"])))),128))])),_:1})])),_:1})])),_:1})):u("",!0)])),_:1})}],["__scopeId","data-v-901d842b"]]),Nt=t({name:"CourseEditor",components:{DataInputForm:ft,ComponentRegistration:ie,NavigationStrategyEditor:ze,BulkImportView:qt},props:{course:{type:String,required:!0}},data:()=>({registeredDataShapes:[],dataShapes:[],selectedShape:q.dataShapes[0].name,courseConfig:null,dataShape:j[0],loading:!0,currentTab:"single",dataInputFormStore:lt()}),watch:{selectedShape:{handler(e){e&&(this.dataShape=this.getDataShape(e),this.dataInputFormStore.setDataShape(this.dataShape),this.dataInputFormStore.dataInputForm.course=this.courseConfig)}}},async created(){this.courseConfig=await x().getCoursesDB().getCourseConfig(this.course),U.courses.forEach((e=>{e.questions.forEach((e=>{e.dataShapes.forEach((e=>{this.dataShapes.push(e)}))}))})),this.courseConfig&&this.courseConfig.dataShapes&&this.courseConfig.dataShapes.forEach((e=>{this.registeredDataShapes.push(this.dataShapes.find((t=>t.name===S.getDataShapeDescriptor(e.name).dataShape)))})),this.loading=!1},methods:{getDataShape(e){return this.dataShapes.find((t=>t.name===e))}}}),Pt={key:0,class:"courseEditor"},Mt={key:0},zt={key:1},Bt={class:"text-h4"},$t=te(Nt,[["render",function(e,t,n,p,h,g){const m=r("v-progress-circular"),v=r("router-link"),y=r("v-tab"),_=r("v-tabs"),w=r("v-select"),b=r("data-input-form"),C=r("v-container"),S=r("v-window-item"),I=r("bulk-import-view"),k=r("component-registration"),x=r("navigation-strategy-editor"),D=r("v-window");return e.course?(i(),d("div",Pt,[e.loading?(i(),d("div",Mt,[s(m,{indeterminate:"",color:"secondary"})])):(i(),d("div",zt,[c("h1",Bt,[s(v,{to:"/q"},{default:o((()=>t[3]||(t[3]=[l("Quilts")]))),_:1}),t[4]||(t[4]=l(" / ")),s(v,{to:`/q/${e.courseConfig?e.courseConfig.name:e.course}`},{default:o((()=>[l(f(e.courseConfig?.name),1)])),_:1},8,["to"])]),s(_,{modelValue:e.currentTab,"onUpdate:modelValue":t[0]||(t[0]=t=>e.currentTab=t),"bg-color":"primary",grow:""},{default:o((()=>[s(y,{value:"single"},{default:o((()=>t[5]||(t[5]=[l("Single Card Input")]))),_:1}),s(y,{value:"bulk"},{default:o((()=>t[6]||(t[6]=[l("Bulk Import")]))),_:1}),s(y,{value:"navigation"},{default:o((()=>t[7]||(t[7]=[l("Navigation")]))),_:1}),s(y,{value:"registration"},{default:o((()=>t[8]||(t[8]=[l("Component Registration")]))),_:1})])),_:1},8,["modelValue"]),s(D,{modelValue:e.currentTab,"onUpdate:modelValue":t[2]||(t[2]=t=>e.currentTab=t)},{default:o((()=>[s(S,{value:"single"},{default:o((()=>[s(C,{fluid:""},{default:o((()=>[s(w,{modelValue:e.selectedShape,"onUpdate:modelValue":t[1]||(t[1]=t=>e.selectedShape=t),label:"What kind of content are you adding?",items:e.registeredDataShapes.map((e=>e.name)),class:"mt-4"},null,8,["modelValue","items"]),""!==e.selectedShape&&e.courseConfig&&e.dataShape?(i(),a(b,{key:0,"data-shape":e.dataShape,"course-cfg":e.courseConfig},null,8,["data-shape","course-cfg"])):u("",!0)])),_:1})])),_:1}),s(S,{value:"bulk"},{default:o((()=>[s(C,{fluid:""},{default:o((()=>[e.courseConfig?(i(),a(I,{key:0,"course-cfg":e.courseConfig,class:"mt-4"},null,8,["course-cfg"])):u("",!0)])),_:1})])),_:1}),s(S,{value:"registration"},{default:o((()=>[s(C,{fluid:""},{default:o((()=>[s(k,{course:e.course,class:"mt-4"},null,8,["course"])])),_:1})])),_:1}),s(S,{value:"navigation"},{default:o((()=>[s(C,{fluid:""},{default:o((()=>[s(x,{"course-id":e.course},null,8,["course-id"])])),_:1})])),_:1})])),_:1},8,["modelValue"])]))])):u("",!0)}],["__scopeId","data-v-c987522c"]]);export{qt as BulkImportView,st as ChessPuzzleInput,$t as CourseEditor,ft as DataInputForm,He as IntegerInput,Ke as MarkdownInput,et as MediaDragDropUploader,it as MidiInput,ot as NumberInput,Ge as OptionsFieldInput,ut as StringInput,We as integerValidator,Be as isFieldInput,Le as numberValidator,lt as useDataInputFormStore,Je as useFieldInputStore};
2
- //# sourceMappingURL=edit-ui.es-DGbs4pNc.js.map
1
+ import{k as e,d as t,Y as n,r,c as a,o as i,w as o,h as u,a as s,e as l,b as c,f as d,t as f,F as p,n as h,a0 as g,a1 as m,u as v,a2 as y,G as _,a3 as w,j as b,s as C,a4 as S,a5 as I,a6 as k,g as x,a7 as D,a8 as V,K as T,D as E,a9 as A,H as F,aa as O,ab as R}from"./index-2oekPD75.js";import{BlanksCardDataShapes as j,allCourseWare as U,BlanksCard as q,eventsToSyllableSequence as N,SyllableSeqVis as P,transposeSyllableSeq as M,SkMidi as z}from"./index-DHivZCyO.js";const B=e=>parseFloat(e),$=e=>parseInt(e,10),L={string:{databaseConverter:e=>e,previewConverter:e=>e},chess_puzzle:{databaseConverter:e=>e,previewConverter:e=>e},number:{databaseConverter:B,previewConverter:B},int:{databaseConverter:$,previewConverter:$},image:{databaseConverter:e=>e,previewConverter:e=>e?e.data:new Blob},audio:{databaseConverter:e=>e,previewConverter:e=>e?e.data:new Blob},midi:{databaseConverter:e=>e,previewConverter:e=>e},markdown:{databaseConverter:e=>e,previewConverter:e=>e},uploads:{databaseConverter:e=>e,previewConverter:e=>e}},W={tagIdentifier:"tags:",eloIdentifier:"elo:"};function J(e,t=W){const n=e.trim();if(!n)return null;const r=n.split("\n");let a,i=[];const o=[...r];let u=0;const s=t.tagIdentifier||W.tagIdentifier,l=t.eloIdentifier||W.eloIdentifier;for(let d=r.length-1;d>=0&&d>=r.length-2;d--){const e=r[d].trim();if(e.toLowerCase().startsWith(s.toLowerCase()))i=e.substring(s.length).split(",").map((e=>e.trim())).filter((e=>e)),u++;else if(e.toLowerCase().startsWith(l.toLowerCase())){const t=e.substring(l.length).trim(),n=parseInt(t,10);isNaN(n)||(a=n),u++}}u>0&&o.splice(o.length-u);const c=o.join("\n").trim();return c?{markdown:c,tags:i,elo:a}:null}function G(e){return e.split("\n---\n---\n").map((e=>e.trim())).filter((e=>e))}var H,K,Q,Y="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window||"undefined"!=typeof window?window:"undefined"!=typeof self?self:{},Z={exports:{}},X=(H||(H=1,K=Z,Q=Z.exports,function(){var e,t="Expected a function",n="__lodash_hash_undefined__",r="__lodash_placeholder__",a=32,i=128,o=1/0,u=9007199254740991,s=NaN,l=4294967295,c=[["ary",i],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",a],["partialRight",64],["rearg",256]],d="[object Arguments]",f="[object Array]",p="[object Boolean]",h="[object Date]",g="[object Error]",m="[object Function]",v="[object GeneratorFunction]",y="[object Map]",_="[object Number]",w="[object Object]",b="[object Promise]",C="[object RegExp]",S="[object Set]",I="[object String]",k="[object Symbol]",x="[object WeakMap]",D="[object ArrayBuffer]",V="[object DataView]",T="[object Float32Array]",E="[object Float64Array]",A="[object Int8Array]",F="[object Int16Array]",O="[object Int32Array]",R="[object Uint8Array]",j="[object Uint8ClampedArray]",U="[object Uint16Array]",q="[object Uint32Array]",N=/\b__p \+= '';/g,P=/\b(__p \+=) '' \+/g,M=/(__e\(.*?\)|\b__t\)) \+\n'';/g,z=/&(?:amp|lt|gt|quot|#39);/g,B=/[&<>"']/g,$=RegExp(z.source),L=RegExp(B.source),W=/<%-([\s\S]+?)%>/g,J=/<%([\s\S]+?)%>/g,G=/<%=([\s\S]+?)%>/g,H=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Z=/^\w*$/,X=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ee=/[\\^$.*+?()[\]{}|]/g,te=RegExp(ee.source),ne=/^\s+/,re=/\s/,ae=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,ie=/\{\n\/\* \[wrapped with (.+)\] \*/,oe=/,? & /,ue=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,se=/[()=,{}\[\]\/\s]/,le=/\\(\\)?/g,ce=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,de=/\w*$/,fe=/^[-+]0x[0-9a-f]+$/i,pe=/^0b[01]+$/i,he=/^\[object .+?Constructor\]$/,ge=/^0o[0-7]+$/i,me=/^(?:0|[1-9]\d*)$/,ve=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,ye=/($^)/,_e=/['\n\r\u2028\u2029\\]/g,we="\\ud800-\\udfff",be="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",Ce="\\u2700-\\u27bf",Se="a-z\\xdf-\\xf6\\xf8-\\xff",Ie="A-Z\\xc0-\\xd6\\xd8-\\xde",ke="\\ufe0e\\ufe0f",xe="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",De="["+we+"]",Ve="["+xe+"]",Te="["+be+"]",Ee="\\d+",Ae="["+Ce+"]",Fe="["+Se+"]",Oe="[^"+we+xe+Ee+Ce+Se+Ie+"]",Re="\\ud83c[\\udffb-\\udfff]",je="[^"+we+"]",Ue="(?:\\ud83c[\\udde6-\\uddff]){2}",qe="[\\ud800-\\udbff][\\udc00-\\udfff]",Ne="["+Ie+"]",Pe="\\u200d",Me="(?:"+Fe+"|"+Oe+")",ze="(?:"+Ne+"|"+Oe+")",Be="(?:['’](?:d|ll|m|re|s|t|ve))?",$e="(?:['’](?:D|LL|M|RE|S|T|VE))?",Le="(?:"+Te+"|"+Re+")?",We="["+ke+"]?",Je=We+Le+"(?:"+Pe+"(?:"+[je,Ue,qe].join("|")+")"+We+Le+")*",Ge="(?:"+[Ae,Ue,qe].join("|")+")"+Je,He="(?:"+[je+Te+"?",Te,Ue,qe,De].join("|")+")",Ke=RegExp("['’]","g"),Qe=RegExp(Te,"g"),Ye=RegExp(Re+"(?="+Re+")|"+He+Je,"g"),Ze=RegExp([Ne+"?"+Fe+"+"+Be+"(?="+[Ve,Ne,"$"].join("|")+")",ze+"+"+$e+"(?="+[Ve,Ne+Me,"$"].join("|")+")",Ne+"?"+Me+"+"+Be,Ne+"+"+$e,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Ee,Ge].join("|"),"g"),Xe=RegExp("["+Pe+we+be+ke+"]"),et=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,tt=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],nt=-1,rt={};rt[T]=rt[E]=rt[A]=rt[F]=rt[O]=rt[R]=rt[j]=rt[U]=rt[q]=!0,rt[d]=rt[f]=rt[D]=rt[p]=rt[V]=rt[h]=rt[g]=rt[m]=rt[y]=rt[_]=rt[w]=rt[C]=rt[S]=rt[I]=rt[x]=!1;var at={};at[d]=at[f]=at[D]=at[V]=at[p]=at[h]=at[T]=at[E]=at[A]=at[F]=at[O]=at[y]=at[_]=at[w]=at[C]=at[S]=at[I]=at[k]=at[R]=at[j]=at[U]=at[q]=!0,at[g]=at[m]=at[x]=!1;var it={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},ot=parseFloat,ut=parseInt,st="object"==typeof Y&&Y&&Y.Object===Object&&Y,lt="object"==typeof self&&self&&self.Object===Object&&self,ct=st||lt||Function("return this")(),dt=Q&&!Q.nodeType&&Q,ft=dt&&K&&!K.nodeType&&K,pt=ft&&ft.exports===dt,ht=pt&&st.process,gt=function(){try{return ft&&ft.require&&ft.require("util").types||ht&&ht.binding&&ht.binding("util")}catch(e){}}(),mt=gt&&gt.isArrayBuffer,vt=gt&&gt.isDate,yt=gt&&gt.isMap,_t=gt&&gt.isRegExp,wt=gt&&gt.isSet,bt=gt&&gt.isTypedArray;function Ct(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}function St(e,t,n,r){for(var a=-1,i=null==e?0:e.length;++a<i;){var o=e[a];t(r,o,n(o),e)}return r}function It(e,t){for(var n=-1,r=null==e?0:e.length;++n<r&&!1!==t(e[n],n,e););return e}function kt(e,t){for(var n=null==e?0:e.length;n--&&!1!==t(e[n],n,e););return e}function xt(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(!t(e[n],n,e))return!1;return!0}function Dt(e,t){for(var n=-1,r=null==e?0:e.length,a=0,i=[];++n<r;){var o=e[n];t(o,n,e)&&(i[a++]=o)}return i}function Vt(e,t){return!(null==e||!e.length)&&Nt(e,t,0)>-1}function Tt(e,t,n){for(var r=-1,a=null==e?0:e.length;++r<a;)if(n(t,e[r]))return!0;return!1}function Et(e,t){for(var n=-1,r=null==e?0:e.length,a=Array(r);++n<r;)a[n]=t(e[n],n,e);return a}function At(e,t){for(var n=-1,r=t.length,a=e.length;++n<r;)e[a+n]=t[n];return e}function Ft(e,t,n,r){var a=-1,i=null==e?0:e.length;for(r&&i&&(n=e[++a]);++a<i;)n=t(n,e[a],a,e);return n}function Ot(e,t,n,r){var a=null==e?0:e.length;for(r&&a&&(n=e[--a]);a--;)n=t(n,e[a],a,e);return n}function Rt(e,t){for(var n=-1,r=null==e?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}var jt=Bt("length");function Ut(e,t,n){var r;return n(e,(function(e,n,a){if(t(e,n,a))return r=n,!1})),r}function qt(e,t,n,r){for(var a=e.length,i=n+(r?1:-1);r?i--:++i<a;)if(t(e[i],i,e))return i;return-1}function Nt(e,t,n){return t==t?function(e,t,n){for(var r=n-1,a=e.length;++r<a;)if(e[r]===t)return r;return-1}(e,t,n):qt(e,Mt,n)}function Pt(e,t,n,r){for(var a=n-1,i=e.length;++a<i;)if(r(e[a],t))return a;return-1}function Mt(e){return e!=e}function zt(e,t){var n=null==e?0:e.length;return n?Wt(e,t)/n:s}function Bt(t){return function(n){return null==n?e:n[t]}}function $t(t){return function(n){return null==t?e:t[n]}}function Lt(e,t,n,r,a){return a(e,(function(e,a,i){n=r?(r=!1,e):t(n,e,a,i)})),n}function Wt(t,n){for(var r,a=-1,i=t.length;++a<i;){var o=n(t[a]);o!==e&&(r=r===e?o:r+o)}return r}function Jt(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}function Gt(e){return e?e.slice(0,cn(e)+1).replace(ne,""):e}function Ht(e){return function(t){return e(t)}}function Kt(e,t){return Et(t,(function(t){return e[t]}))}function Qt(e,t){return e.has(t)}function Yt(e,t){for(var n=-1,r=e.length;++n<r&&Nt(t,e[n],0)>-1;);return n}function Zt(e,t){for(var n=e.length;n--&&Nt(t,e[n],0)>-1;);return n}var Xt=$t({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"}),en=$t({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"});function tn(e){return"\\"+it[e]}function nn(e){return Xe.test(e)}function rn(e){var t=-1,n=Array(e.size);return e.forEach((function(e,r){n[++t]=[r,e]})),n}function an(e,t){return function(n){return e(t(n))}}function on(e,t){for(var n=-1,a=e.length,i=0,o=[];++n<a;){var u=e[n];u!==t&&u!==r||(e[n]=r,o[i++]=n)}return o}function un(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=e})),n}function sn(e){return nn(e)?function(e){for(var t=Ye.lastIndex=0;Ye.test(e);)++t;return t}(e):jt(e)}function ln(e){return nn(e)?e.match(Ye)||[]:function(e){return e.split("")}(e)}function cn(e){for(var t=e.length;t--&&re.test(e.charAt(t)););return t}var dn=$t({"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"}),fn=function K(Q){var Y,re=(Q=null==Q?ct:fn.defaults(ct.Object(),Q,fn.pick(ct,tt))).Array,we=Q.Date,be=Q.Error,Ce=Q.Function,Se=Q.Math,Ie=Q.Object,ke=Q.RegExp,xe=Q.String,De=Q.TypeError,Ve=re.prototype,Te=Ce.prototype,Ee=Ie.prototype,Ae=Q["__core-js_shared__"],Fe=Te.toString,Oe=Ee.hasOwnProperty,Re=0,je=(Y=/[^.]+$/.exec(Ae&&Ae.keys&&Ae.keys.IE_PROTO||""))?"Symbol(src)_1."+Y:"",Ue=Ee.toString,qe=Fe.call(Ie),Ne=ct._,Pe=ke("^"+Fe.call(Oe).replace(ee,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Me=pt?Q.Buffer:e,ze=Q.Symbol,Be=Q.Uint8Array,$e=Me?Me.allocUnsafe:e,Le=an(Ie.getPrototypeOf,Ie),We=Ie.create,Je=Ee.propertyIsEnumerable,Ge=Ve.splice,He=ze?ze.isConcatSpreadable:e,Ye=ze?ze.iterator:e,Xe=ze?ze.toStringTag:e,it=function(){try{var e=ui(Ie,"defineProperty");return e({},"",{}),e}catch(t){}}(),st=Q.clearTimeout!==ct.clearTimeout&&Q.clearTimeout,lt=we&&we.now!==ct.Date.now&&we.now,dt=Q.setTimeout!==ct.setTimeout&&Q.setTimeout,ft=Se.ceil,ht=Se.floor,gt=Ie.getOwnPropertySymbols,jt=Me?Me.isBuffer:e,$t=Q.isFinite,pn=Ve.join,hn=an(Ie.keys,Ie),gn=Se.max,mn=Se.min,vn=we.now,yn=Q.parseInt,_n=Se.random,wn=Ve.reverse,bn=ui(Q,"DataView"),Cn=ui(Q,"Map"),Sn=ui(Q,"Promise"),In=ui(Q,"Set"),kn=ui(Q,"WeakMap"),xn=ui(Ie,"create"),Dn=kn&&new kn,Vn={},Tn=ji(bn),En=ji(Cn),An=ji(Sn),Fn=ji(In),On=ji(kn),Rn=ze?ze.prototype:e,jn=Rn?Rn.valueOf:e,Un=Rn?Rn.toString:e;function qn(e){if(Xo(e)&&!Bo(e)&&!(e instanceof zn)){if(e instanceof Mn)return e;if(Oe.call(e,"__wrapped__"))return Ui(e)}return new Mn(e)}var Nn=function(){function t(){}return function(n){if(!Zo(n))return{};if(We)return We(n);t.prototype=n;var r=new t;return t.prototype=e,r}}();function Pn(){}function Mn(t,n){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!n,this.__index__=0,this.__values__=e}function zn(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=l,this.__views__=[]}function Bn(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function $n(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function Ln(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}function Wn(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new Ln;++t<n;)this.add(e[t])}function Jn(e){var t=this.__data__=new $n(e);this.size=t.size}function Gn(e,t){var n=Bo(e),r=!n&&zo(e),a=!n&&!r&&Jo(e),i=!n&&!r&&!a&&uu(e),o=n||r||a||i,u=o?Jt(e.length,xe):[],s=u.length;for(var l in e)!t&&!Oe.call(e,l)||o&&("length"==l||a&&("offset"==l||"parent"==l)||i&&("buffer"==l||"byteLength"==l||"byteOffset"==l)||hi(l,s))||u.push(l);return u}function Hn(t){var n=t.length;return n?t[Lr(0,n-1)]:e}function Kn(e,t){return Ei(ka(e),ar(t,0,e.length))}function Qn(e){return Ei(ka(e))}function Yn(t,n,r){(r!==e&&!No(t[n],r)||r===e&&!(n in t))&&nr(t,n,r)}function Zn(t,n,r){var a=t[n];Oe.call(t,n)&&No(a,r)&&(r!==e||n in t)||nr(t,n,r)}function Xn(e,t){for(var n=e.length;n--;)if(No(e[n][0],t))return n;return-1}function er(e,t,n,r){return lr(e,(function(e,a,i){t(r,e,n(e),i)})),r}function tr(e,t){return e&&xa(t,Tu(t),e)}function nr(e,t,n){"__proto__"==t&&it?it(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}function rr(t,n){for(var r=-1,a=n.length,i=re(a),o=null==t;++r<a;)i[r]=o?e:Iu(t,n[r]);return i}function ar(t,n,r){return t==t&&(r!==e&&(t=t<=r?t:r),n!==e&&(t=t>=n?t:n)),t}function ir(t,n,r,a,i,o){var u,s=1&n,l=2&n,c=4&n;if(r&&(u=i?r(t,a,i,o):r(t)),u!==e)return u;if(!Zo(t))return t;var f,g,b,x=Bo(t);if(x){if(g=(f=t).length,b=new f.constructor(g),g&&"string"==typeof f[0]&&Oe.call(f,"index")&&(b.index=f.index,b.input=f.input),u=b,!s)return ka(t,u)}else{var N=ci(t),P=N==m||N==v;if(Jo(t))return _a(t,s);if(N==w||N==d||P&&!i){if(u=l||P?{}:fi(t),!s)return l?function(e,t){return xa(e,li(e),t)}(t,function(e,t){return e&&xa(t,Eu(t),e)}(u,t)):function(e,t){return xa(e,si(e),t)}(t,tr(u,t))}else{if(!at[N])return i?t:{};u=function(e,t,n){var r,a,i,o=e.constructor;switch(t){case D:return wa(e);case p:case h:return new o(+e);case V:return a=e,i=n?wa(a.buffer):a.buffer,new a.constructor(i,a.byteOffset,a.byteLength);case T:case E:case A:case F:case O:case R:case j:case U:case q:return ba(e,n);case y:return new o;case _:case I:return new o(e);case C:return function(e){var t=new e.constructor(e.source,de.exec(e));return t.lastIndex=e.lastIndex,t}(e);case S:return new o;case k:return r=e,jn?Ie(jn.call(r)):{}}}(t,N,s)}}o||(o=new Jn);var M=o.get(t);if(M)return M;o.set(t,u),au(t)?t.forEach((function(e){u.add(ir(e,n,r,e,t,o))})):eu(t)&&t.forEach((function(e,a){u.set(a,ir(e,n,r,a,t,o))}));var z=x?e:(c?l?ei:Xa:l?Eu:Tu)(t);return It(z||t,(function(e,a){z&&(e=t[a=e]),Zn(u,a,ir(e,n,r,a,t,o))})),u}function or(t,n,r){var a=r.length;if(null==t)return!a;for(t=Ie(t);a--;){var i=r[a],o=n[i],u=t[i];if(u===e&&!(i in t)||!o(u))return!1}return!0}function ur(n,r,a){if("function"!=typeof n)throw new De(t);return xi((function(){n.apply(e,a)}),r)}function sr(e,t,n,r){var a=-1,i=Vt,o=!0,u=e.length,s=[],l=t.length;if(!u)return s;n&&(t=Et(t,Ht(n))),r?(i=Tt,o=!1):t.length>=200&&(i=Qt,o=!1,t=new Wn(t));e:for(;++a<u;){var c=e[a],d=null==n?c:n(c);if(c=r||0!==c?c:0,o&&d==d){for(var f=l;f--;)if(t[f]===d)continue e;s.push(c)}else i(t,d,r)||s.push(c)}return s}qn.templateSettings={escape:W,evaluate:J,interpolate:G,variable:"",imports:{_:qn}},qn.prototype=Pn.prototype,qn.prototype.constructor=qn,Mn.prototype=Nn(Pn.prototype),Mn.prototype.constructor=Mn,zn.prototype=Nn(Pn.prototype),zn.prototype.constructor=zn,Bn.prototype.clear=function(){this.__data__=xn?xn(null):{},this.size=0},Bn.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Bn.prototype.get=function(t){var r=this.__data__;if(xn){var a=r[t];return a===n?e:a}return Oe.call(r,t)?r[t]:e},Bn.prototype.has=function(t){var n=this.__data__;return xn?n[t]!==e:Oe.call(n,t)},Bn.prototype.set=function(t,r){var a=this.__data__;return this.size+=this.has(t)?0:1,a[t]=xn&&r===e?n:r,this},$n.prototype.clear=function(){this.__data__=[],this.size=0},$n.prototype.delete=function(e){var t=this.__data__,n=Xn(t,e);return!(n<0||(n==t.length-1?t.pop():Ge.call(t,n,1),--this.size,0))},$n.prototype.get=function(t){var n=this.__data__,r=Xn(n,t);return r<0?e:n[r][1]},$n.prototype.has=function(e){return Xn(this.__data__,e)>-1},$n.prototype.set=function(e,t){var n=this.__data__,r=Xn(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this},Ln.prototype.clear=function(){this.size=0,this.__data__={hash:new Bn,map:new(Cn||$n),string:new Bn}},Ln.prototype.delete=function(e){var t=ii(this,e).delete(e);return this.size-=t?1:0,t},Ln.prototype.get=function(e){return ii(this,e).get(e)},Ln.prototype.has=function(e){return ii(this,e).has(e)},Ln.prototype.set=function(e,t){var n=ii(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this},Wn.prototype.add=Wn.prototype.push=function(e){return this.__data__.set(e,n),this},Wn.prototype.has=function(e){return this.__data__.has(e)},Jn.prototype.clear=function(){this.__data__=new $n,this.size=0},Jn.prototype.delete=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n},Jn.prototype.get=function(e){return this.__data__.get(e)},Jn.prototype.has=function(e){return this.__data__.has(e)},Jn.prototype.set=function(e,t){var n=this.__data__;if(n instanceof $n){var r=n.__data__;if(!Cn||r.length<199)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new Ln(r)}return n.set(e,t),this.size=n.size,this};var lr=Ta(vr),cr=Ta(yr,!0);function dr(e,t){var n=!0;return lr(e,(function(e,r,a){return n=!!t(e,r,a)})),n}function fr(t,n,r){for(var a=-1,i=t.length;++a<i;){var o=t[a],u=n(o);if(null!=u&&(s===e?u==u&&!ou(u):r(u,s)))var s=u,l=o}return l}function pr(e,t){var n=[];return lr(e,(function(e,r,a){t(e,r,a)&&n.push(e)})),n}function hr(e,t,n,r,a){var i=-1,o=e.length;for(n||(n=pi),a||(a=[]);++i<o;){var u=e[i];t>0&&n(u)?t>1?hr(u,t-1,n,r,a):At(a,u):r||(a[a.length]=u)}return a}var gr=Ea(),mr=Ea(!0);function vr(e,t){return e&&gr(e,t,Tu)}function yr(e,t){return e&&mr(e,t,Tu)}function _r(e,t){return Dt(t,(function(t){return Ko(e[t])}))}function wr(t,n){for(var r=0,a=(n=ga(n,t)).length;null!=t&&r<a;)t=t[Ri(n[r++])];return r&&r==a?t:e}function br(e,t,n){var r=t(e);return Bo(e)?r:At(r,n(e))}function Cr(t){return null==t?t===e?"[object Undefined]":"[object Null]":Xe&&Xe in Ie(t)?function(t){var n=Oe.call(t,Xe),r=t[Xe];try{t[Xe]=e;var a=!0}catch(o){}var i=Ue.call(t);return a&&(n?t[Xe]=r:delete t[Xe]),i}(t):(n=t,Ue.call(n));var n}function Sr(e,t){return e>t}function Ir(e,t){return null!=e&&Oe.call(e,t)}function kr(e,t){return null!=e&&t in Ie(e)}function xr(t,n,r){for(var a=r?Tt:Vt,i=t[0].length,o=t.length,u=o,s=re(o),l=1/0,c=[];u--;){var d=t[u];u&&n&&(d=Et(d,Ht(n))),l=mn(d.length,l),s[u]=!r&&(n||i>=120&&d.length>=120)?new Wn(u&&d):e}d=t[0];var f=-1,p=s[0];e:for(;++f<i&&c.length<l;){var h=d[f],g=n?n(h):h;if(h=r||0!==h?h:0,!(p?Qt(p,g):a(c,g,r))){for(u=o;--u;){var m=s[u];if(!(m?Qt(m,g):a(t[u],g,r)))continue e}p&&p.push(g),c.push(h)}}return c}function Dr(t,n,r){var a=null==(t=Si(t,n=ga(n,t)))?t:t[Ri(Gi(n))];return null==a?e:Ct(a,t,r)}function Vr(e){return Xo(e)&&Cr(e)==d}function Tr(t,n,r,a,i){return t===n||(null==t||null==n||!Xo(t)&&!Xo(n)?t!=t&&n!=n:function(t,n,r,a,i,o){var u=Bo(t),s=Bo(n),l=u?f:ci(t),c=s?f:ci(n),m=(l=l==d?w:l)==w,v=(c=c==d?w:c)==w,b=l==c;if(b&&Jo(t)){if(!Jo(n))return!1;u=!0,m=!1}if(b&&!m)return o||(o=new Jn),u||uu(t)?Ya(t,n,r,a,i,o):function(e,t,n,r,a,i,o){switch(n){case V:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case D:return!(e.byteLength!=t.byteLength||!i(new Be(e),new Be(t)));case p:case h:case _:return No(+e,+t);case g:return e.name==t.name&&e.message==t.message;case C:case I:return e==t+"";case y:var u=rn;case S:var s=1&r;if(u||(u=un),e.size!=t.size&&!s)return!1;var l=o.get(e);if(l)return l==t;r|=2,o.set(e,t);var c=Ya(u(e),u(t),r,a,i,o);return o.delete(e),c;case k:if(jn)return jn.call(e)==jn.call(t)}return!1}(t,n,l,r,a,i,o);if(!(1&r)){var x=m&&Oe.call(t,"__wrapped__"),T=v&&Oe.call(n,"__wrapped__");if(x||T){var E=x?t.value():t,A=T?n.value():n;return o||(o=new Jn),i(E,A,r,a,o)}}return!!b&&(o||(o=new Jn),function(t,n,r,a,i,o){var u=1&r,s=Xa(t),l=s.length;if(l!=Xa(n).length&&!u)return!1;for(var c=l;c--;){var d=s[c];if(!(u?d in n:Oe.call(n,d)))return!1}var f=o.get(t),p=o.get(n);if(f&&p)return f==n&&p==t;var h=!0;o.set(t,n),o.set(n,t);for(var g=u;++c<l;){var m=t[d=s[c]],v=n[d];if(a)var y=u?a(v,m,d,n,t,o):a(m,v,d,t,n,o);if(!(y===e?m===v||i(m,v,r,a,o):y)){h=!1;break}g||(g="constructor"==d)}if(h&&!g){var _=t.constructor,w=n.constructor;_==w||!("constructor"in t)||!("constructor"in n)||"function"==typeof _&&_ instanceof _&&"function"==typeof w&&w instanceof w||(h=!1)}return o.delete(t),o.delete(n),h}(t,n,r,a,i,o))}(t,n,r,a,Tr,i))}function Er(t,n,r,a){var i=r.length,o=i,u=!a;if(null==t)return!o;for(t=Ie(t);i--;){var s=r[i];if(u&&s[2]?s[1]!==t[s[0]]:!(s[0]in t))return!1}for(;++i<o;){var l=(s=r[i])[0],c=t[l],d=s[1];if(u&&s[2]){if(c===e&&!(l in t))return!1}else{var f=new Jn;if(a)var p=a(c,d,l,t,n,f);if(!(p===e?Tr(d,c,3,a,f):p))return!1}}return!0}function Ar(e){return!(!Zo(e)||(t=e,je&&je in t))&&(Ko(e)?Pe:he).test(ji(e));var t}function Fr(e){return"function"==typeof e?e:null==e?ts:"object"==typeof e?Bo(e)?qr(e[0],e[1]):Ur(e):cs(e)}function Or(e){if(!_i(e))return hn(e);var t=[];for(var n in Ie(e))Oe.call(e,n)&&"constructor"!=n&&t.push(n);return t}function Rr(e,t){return e<t}function jr(e,t){var n=-1,r=Lo(e)?re(e.length):[];return lr(e,(function(e,a,i){r[++n]=t(e,a,i)})),r}function Ur(e){var t=oi(e);return 1==t.length&&t[0][2]?bi(t[0][0],t[0][1]):function(n){return n===e||Er(n,e,t)}}function qr(t,n){return mi(t)&&wi(n)?bi(Ri(t),n):function(r){var a=Iu(r,t);return a===e&&a===n?ku(r,t):Tr(n,a,3)}}function Nr(t,n,r,a,i){t!==n&&gr(n,(function(o,u){if(i||(i=new Jn),Zo(o))!function(t,n,r,a,i,o,u){var s=Ii(t,r),l=Ii(n,r),c=u.get(l);if(c)Yn(t,r,c);else{var d=o?o(s,l,r+"",t,n,u):e,f=d===e;if(f){var p=Bo(l),h=!p&&Jo(l),g=!p&&!h&&uu(l);d=l,p||h||g?Bo(s)?d=s:Wo(s)?d=ka(s):h?(f=!1,d=_a(l,!0)):g?(f=!1,d=ba(l,!0)):d=[]:nu(l)||zo(l)?(d=s,zo(s)?d=gu(s):Zo(s)&&!Ko(s)||(d=fi(l))):f=!1}f&&(u.set(l,d),i(d,l,a,o,u),u.delete(l)),Yn(t,r,d)}}(t,n,u,r,Nr,a,i);else{var s=a?a(Ii(t,u),o,u+"",t,n,i):e;s===e&&(s=o),Yn(t,u,s)}}),Eu)}function Pr(t,n){var r=t.length;if(r)return hi(n+=n<0?r:0,r)?t[n]:e}function Mr(e,t,n){t=t.length?Et(t,(function(e){return Bo(e)?function(t){return wr(t,1===e.length?e[0]:e)}:e})):[ts];var r=-1;return t=Et(t,Ht(ai())),function(e){var t=e.length;for(e.sort((function(e,t){return function(e,t,n){for(var r=-1,a=e.criteria,i=t.criteria,o=a.length,u=n.length;++r<o;){var s=Ca(a[r],i[r]);if(s)return r>=u?s:s*("desc"==n[r]?-1:1)}return e.index-t.index}(e,t,n)}));t--;)e[t]=e[t].value;return e}(jr(e,(function(e,n,a){return{criteria:Et(t,(function(t){return t(e)})),index:++r,value:e}})))}function zr(e,t,n){for(var r=-1,a=t.length,i={};++r<a;){var o=t[r],u=wr(e,o);n(u,o)&&Kr(i,ga(o,e),u)}return i}function Br(e,t,n,r){var a=r?Pt:Nt,i=-1,o=t.length,u=e;for(e===t&&(t=ka(t)),n&&(u=Et(e,Ht(n)));++i<o;)for(var s=0,l=t[i],c=n?n(l):l;(s=a(u,c,s,r))>-1;)u!==e&&Ge.call(u,s,1),Ge.call(e,s,1);return e}function $r(e,t){for(var n=e?t.length:0,r=n-1;n--;){var a=t[n];if(n==r||a!==i){var i=a;hi(a)?Ge.call(e,a,1):ua(e,a)}}return e}function Lr(e,t){return e+ht(_n()*(t-e+1))}function Wr(e,t){var n="";if(!e||t<1||t>u)return n;do{t%2&&(n+=e),(t=ht(t/2))&&(e+=e)}while(t);return n}function Jr(e,t){return Di(Ci(e,t,ts),e+"")}function Gr(e){return Hn(Nu(e))}function Hr(e,t){var n=Nu(e);return Ei(n,ar(t,0,n.length))}function Kr(t,n,r,a){if(!Zo(t))return t;for(var i=-1,o=(n=ga(n,t)).length,u=o-1,s=t;null!=s&&++i<o;){var l=Ri(n[i]),c=r;if("__proto__"===l||"constructor"===l||"prototype"===l)return t;if(i!=u){var d=s[l];(c=a?a(d,l,s):e)===e&&(c=Zo(d)?d:hi(n[i+1])?[]:{})}Zn(s,l,c),s=s[l]}return t}var Qr=Dn?function(e,t){return Dn.set(e,t),e}:ts,Yr=it?function(e,t){return it(e,"toString",{configurable:!0,enumerable:!1,value:Zu(t),writable:!0})}:ts;function Zr(e){return Ei(Nu(e))}function Xr(e,t,n){var r=-1,a=e.length;t<0&&(t=-t>a?0:a+t),(n=n>a?a:n)<0&&(n+=a),a=t>n?0:n-t>>>0,t>>>=0;for(var i=re(a);++r<a;)i[r]=e[r+t];return i}function ea(e,t){var n;return lr(e,(function(e,r,a){return!(n=t(e,r,a))})),!!n}function ta(e,t,n){var r=0,a=null==e?r:e.length;if("number"==typeof t&&t==t&&a<=2147483647){for(;r<a;){var i=r+a>>>1,o=e[i];null!==o&&!ou(o)&&(n?o<=t:o<t)?r=i+1:a=i}return a}return na(e,t,ts,n)}function na(t,n,r,a){var i=0,o=null==t?0:t.length;if(0===o)return 0;for(var u=(n=r(n))!=n,s=null===n,l=ou(n),c=n===e;i<o;){var d=ht((i+o)/2),f=r(t[d]),p=f!==e,h=null===f,g=f==f,m=ou(f);if(u)var v=a||g;else v=c?g&&(a||p):s?g&&p&&(a||!h):l?g&&p&&!h&&(a||!m):!h&&!m&&(a?f<=n:f<n);v?i=d+1:o=d}return mn(o,4294967294)}function ra(e,t){for(var n=-1,r=e.length,a=0,i=[];++n<r;){var o=e[n],u=t?t(o):o;if(!n||!No(u,s)){var s=u;i[a++]=0===o?0:o}}return i}function aa(e){return"number"==typeof e?e:ou(e)?s:+e}function ia(e){if("string"==typeof e)return e;if(Bo(e))return Et(e,ia)+"";if(ou(e))return Un?Un.call(e):"";var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function oa(e,t,n){var r=-1,a=Vt,i=e.length,o=!0,u=[],s=u;if(n)o=!1,a=Tt;else if(i>=200){var l=t?null:Wa(e);if(l)return un(l);o=!1,a=Qt,s=new Wn}else s=t?[]:u;e:for(;++r<i;){var c=e[r],d=t?t(c):c;if(c=n||0!==c?c:0,o&&d==d){for(var f=s.length;f--;)if(s[f]===d)continue e;t&&s.push(d),u.push(c)}else a(s,d,n)||(s!==u&&s.push(d),u.push(c))}return u}function ua(e,t){return null==(e=Si(e,t=ga(t,e)))||delete e[Ri(Gi(t))]}function sa(e,t,n,r){return Kr(e,t,n(wr(e,t)),r)}function la(e,t,n,r){for(var a=e.length,i=r?a:-1;(r?i--:++i<a)&&t(e[i],i,e););return n?Xr(e,r?0:i,r?i+1:a):Xr(e,r?i+1:0,r?a:i)}function ca(e,t){var n=e;return n instanceof zn&&(n=n.value()),Ft(t,(function(e,t){return t.func.apply(t.thisArg,At([e],t.args))}),n)}function da(e,t,n){var r=e.length;if(r<2)return r?oa(e[0]):[];for(var a=-1,i=re(r);++a<r;)for(var o=e[a],u=-1;++u<r;)u!=a&&(i[a]=sr(i[a]||o,e[u],t,n));return oa(hr(i,1),t,n)}function fa(t,n,r){for(var a=-1,i=t.length,o=n.length,u={};++a<i;){var s=a<o?n[a]:e;r(u,t[a],s)}return u}function pa(e){return Wo(e)?e:[]}function ha(e){return"function"==typeof e?e:ts}function ga(e,t){return Bo(e)?e:mi(e,t)?[e]:Oi(mu(e))}var ma=Jr;function va(t,n,r){var a=t.length;return r=r===e?a:r,!n&&r>=a?t:Xr(t,n,r)}var ya=st||function(e){return ct.clearTimeout(e)};function _a(e,t){if(t)return e.slice();var n=e.length,r=$e?$e(n):new e.constructor(n);return e.copy(r),r}function wa(e){var t=new e.constructor(e.byteLength);return new Be(t).set(new Be(e)),t}function ba(e,t){var n=t?wa(e.buffer):e.buffer;return new e.constructor(n,e.byteOffset,e.length)}function Ca(t,n){if(t!==n){var r=t!==e,a=null===t,i=t==t,o=ou(t),u=n!==e,s=null===n,l=n==n,c=ou(n);if(!s&&!c&&!o&&t>n||o&&u&&l&&!s&&!c||a&&u&&l||!r&&l||!i)return 1;if(!a&&!o&&!c&&t<n||c&&r&&i&&!a&&!o||s&&r&&i||!u&&i||!l)return-1}return 0}function Sa(e,t,n,r){for(var a=-1,i=e.length,o=n.length,u=-1,s=t.length,l=gn(i-o,0),c=re(s+l),d=!r;++u<s;)c[u]=t[u];for(;++a<o;)(d||a<i)&&(c[n[a]]=e[a]);for(;l--;)c[u++]=e[a++];return c}function Ia(e,t,n,r){for(var a=-1,i=e.length,o=-1,u=n.length,s=-1,l=t.length,c=gn(i-u,0),d=re(c+l),f=!r;++a<c;)d[a]=e[a];for(var p=a;++s<l;)d[p+s]=t[s];for(;++o<u;)(f||a<i)&&(d[p+n[o]]=e[a++]);return d}function ka(e,t){var n=-1,r=e.length;for(t||(t=re(r));++n<r;)t[n]=e[n];return t}function xa(t,n,r,a){var i=!r;r||(r={});for(var o=-1,u=n.length;++o<u;){var s=n[o],l=a?a(r[s],t[s],s,r,t):e;l===e&&(l=t[s]),i?nr(r,s,l):Zn(r,s,l)}return r}function Da(e,t){return function(n,r){var a=Bo(n)?St:er,i=t?t():{};return a(n,e,ai(r,2),i)}}function Va(t){return Jr((function(n,r){var a=-1,i=r.length,o=i>1?r[i-1]:e,u=i>2?r[2]:e;for(o=t.length>3&&"function"==typeof o?(i--,o):e,u&&gi(r[0],r[1],u)&&(o=i<3?e:o,i=1),n=Ie(n);++a<i;){var s=r[a];s&&t(n,s,a,o)}return n}))}function Ta(e,t){return function(n,r){if(null==n)return n;if(!Lo(n))return e(n,r);for(var a=n.length,i=t?a:-1,o=Ie(n);(t?i--:++i<a)&&!1!==r(o[i],i,o););return n}}function Ea(e){return function(t,n,r){for(var a=-1,i=Ie(t),o=r(t),u=o.length;u--;){var s=o[e?u:++a];if(!1===n(i[s],s,i))break}return t}}function Aa(t){return function(n){var r=nn(n=mu(n))?ln(n):e,a=r?r[0]:n.charAt(0),i=r?va(r,1).join(""):n.slice(1);return a[t]()+i}}function Fa(e){return function(t){return Ft(Ku(zu(t).replace(Ke,"")),e,"")}}function Oa(e){return function(){var t=arguments;switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3]);case 5:return new e(t[0],t[1],t[2],t[3],t[4]);case 6:return new e(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new e(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var n=Nn(e.prototype),r=e.apply(n,t);return Zo(r)?r:n}}function Ra(t){return function(n,r,a){var i=Ie(n);if(!Lo(n)){var o=ai(r,3);n=Tu(n),r=function(e){return o(i[e],e,i)}}var u=t(n,r,a);return u>-1?i[o?n[u]:u]:e}}function ja(n){return Za((function(r){var a=r.length,i=a,o=Mn.prototype.thru;for(n&&r.reverse();i--;){var u=r[i];if("function"!=typeof u)throw new De(t);if(o&&!s&&"wrapper"==ni(u))var s=new Mn([],!0)}for(i=s?i:a;++i<a;){var l=ni(u=r[i]),c="wrapper"==l?ti(u):e;s=c&&vi(c[0])&&424==c[1]&&!c[4].length&&1==c[9]?s[ni(c[0])].apply(s,c[3]):1==u.length&&vi(u)?s[l]():s.thru(u)}return function(){var e=arguments,t=e[0];if(s&&1==e.length&&Bo(t))return s.plant(t).value();for(var n=0,i=a?r[n].apply(this,e):t;++n<a;)i=r[n].call(this,i);return i}}))}function Ua(t,n,r,a,o,u,s,l,c,d){var f=n&i,p=1&n,h=2&n,g=24&n,m=512&n,v=h?e:Oa(t);return function i(){for(var y=arguments.length,_=re(y),w=y;w--;)_[w]=arguments[w];if(g)var b=ri(i),C=function(e,t){for(var n=e.length,r=0;n--;)e[n]===t&&++r;return r}(_,b);if(a&&(_=Sa(_,a,o,g)),u&&(_=Ia(_,u,s,g)),y-=C,g&&y<d){var S=on(_,b);return $a(t,n,Ua,i.placeholder,r,_,S,l,c,d-y)}var I=p?r:this,k=h?I[t]:t;return y=_.length,l?_=function(t,n){for(var r=t.length,a=mn(n.length,r),i=ka(t);a--;){var o=n[a];t[a]=hi(o,r)?i[o]:e}return t}(_,l):m&&y>1&&_.reverse(),f&&c<y&&(_.length=c),this&&this!==ct&&this instanceof i&&(k=v||Oa(k)),k.apply(I,_)}}function qa(e,t){return function(n,r){return a=n,i=e,o=t(r),u={},vr(a,(function(e,t,n){i(u,o(e),t,n)})),u;var a,i,o,u}}function Na(t,n){return function(r,a){var i;if(r===e&&a===e)return n;if(r!==e&&(i=r),a!==e){if(i===e)return a;"string"==typeof r||"string"==typeof a?(r=ia(r),a=ia(a)):(r=aa(r),a=aa(a)),i=t(r,a)}return i}}function Pa(e){return Za((function(t){return t=Et(t,Ht(ai())),Jr((function(n){var r=this;return e(t,(function(e){return Ct(e,r,n)}))}))}))}function Ma(t,n){var r=(n=n===e?" ":ia(n)).length;if(r<2)return r?Wr(n,t):n;var a=Wr(n,ft(t/sn(n)));return nn(n)?va(ln(a),0,t).join(""):a.slice(0,t)}function za(t){return function(n,r,a){return a&&"number"!=typeof a&&gi(n,r,a)&&(r=a=e),n=du(n),r===e?(r=n,n=0):r=du(r),function(e,t,n,r){for(var a=-1,i=gn(ft((t-e)/(n||1)),0),o=re(i);i--;)o[r?i:++a]=e,e+=n;return o}(n,r,a=a===e?n<r?1:-1:du(a),t)}}function Ba(e){return function(t,n){return"string"==typeof t&&"string"==typeof n||(t=hu(t),n=hu(n)),e(t,n)}}function $a(t,n,r,i,o,u,s,l,c,d){var f=8&n;n|=f?a:64,4&(n&=~(f?64:a))||(n&=-4);var p=[t,n,o,f?u:e,f?s:e,f?e:u,f?e:s,l,c,d],h=r.apply(e,p);return vi(t)&&ki(h,p),h.placeholder=i,Vi(h,t,n)}function La(e){var t=Se[e];return function(e,n){if(e=hu(e),(n=null==n?0:mn(fu(n),292))&&$t(e)){var r=(mu(e)+"e").split("e");return+((r=(mu(t(r[0]+"e"+(+r[1]+n)))+"e").split("e"))[0]+"e"+(+r[1]-n))}return t(e)}}var Wa=In&&1/un(new In([,-0]))[1]==o?function(e){return new In(e)}:os;function Ja(e){return function(t){var n,r,a,i=ci(t);return i==y?rn(t):i==S?(n=t,r=-1,a=Array(n.size),n.forEach((function(e){a[++r]=[e,e]})),a):function(e,t){return Et(t,(function(t){return[t,e[t]]}))}(t,e(t))}}function Ga(n,o,u,s,l,c,d,f){var p=2&o;if(!p&&"function"!=typeof n)throw new De(t);var h=s?s.length:0;if(h||(o&=-97,s=l=e),d=d===e?d:gn(fu(d),0),f=f===e?f:fu(f),h-=l?l.length:0,64&o){var g=s,m=l;s=l=e}var v,y,_,w,b=p?e:ti(n),C=[n,o,u,s,l,g,m,c,d,f];if(b&&function(e,t){var n=e[1],a=t[1],o=n|a,u=o<131,s=a==i&&8==n||a==i&&256==n&&e[7].length<=t[8]||384==a&&t[7].length<=t[8]&&8==n;if(!u&&!s)return e;1&a&&(e[2]=t[2],o|=1&n?0:4);var l=t[3];if(l){var c=e[3];e[3]=c?Sa(c,l,t[4]):l,e[4]=c?on(e[3],r):t[4]}(l=t[5])&&(c=e[5],e[5]=c?Ia(c,l,t[6]):l,e[6]=c?on(e[5],r):t[6]),(l=t[7])&&(e[7]=l),a&i&&(e[8]=null==e[8]?t[8]:mn(e[8],t[8])),null==e[9]&&(e[9]=t[9]),e[0]=t[0],e[1]=o}(C,b),n=C[0],o=C[1],u=C[2],s=C[3],l=C[4],!(f=C[9]=C[9]===e?p?0:n.length:gn(C[9]-h,0))&&24&o&&(o&=-25),o&&1!=o)S=8==o||16==o?(y=o,_=f,w=Oa(v=n),function t(){for(var n=arguments.length,r=re(n),a=n,i=ri(t);a--;)r[a]=arguments[a];var o=n<3&&r[0]!==i&&r[n-1]!==i?[]:on(r,i);return(n-=o.length)<_?$a(v,y,Ua,t.placeholder,e,r,o,e,e,_-n):Ct(this&&this!==ct&&this instanceof t?w:v,this,r)}):o!=a&&33!=o||l.length?Ua.apply(e,C):function(e,t,n,r){var a=1&t,i=Oa(e);return function t(){for(var o=-1,u=arguments.length,s=-1,l=r.length,c=re(l+u),d=this&&this!==ct&&this instanceof t?i:e;++s<l;)c[s]=r[s];for(;u--;)c[s++]=arguments[++o];return Ct(d,a?n:this,c)}}(n,o,u,s);else var S=function(e,t,n){var r=1&t,a=Oa(e);return function t(){return(this&&this!==ct&&this instanceof t?a:e).apply(r?n:this,arguments)}}(n,o,u);return Vi((b?Qr:ki)(S,C),n,o)}function Ha(t,n,r,a){return t===e||No(t,Ee[r])&&!Oe.call(a,r)?n:t}function Ka(t,n,r,a,i,o){return Zo(t)&&Zo(n)&&(o.set(n,t),Nr(t,n,e,Ka,o),o.delete(n)),t}function Qa(t){return nu(t)?e:t}function Ya(t,n,r,a,i,o){var u=1&r,s=t.length,l=n.length;if(s!=l&&!(u&&l>s))return!1;var c=o.get(t),d=o.get(n);if(c&&d)return c==n&&d==t;var f=-1,p=!0,h=2&r?new Wn:e;for(o.set(t,n),o.set(n,t);++f<s;){var g=t[f],m=n[f];if(a)var v=u?a(m,g,f,n,t,o):a(g,m,f,t,n,o);if(v!==e){if(v)continue;p=!1;break}if(h){if(!Rt(n,(function(e,t){if(!Qt(h,t)&&(g===e||i(g,e,r,a,o)))return h.push(t)}))){p=!1;break}}else if(g!==m&&!i(g,m,r,a,o)){p=!1;break}}return o.delete(t),o.delete(n),p}function Za(t){return Di(Ci(t,e,Bi),t+"")}function Xa(e){return br(e,Tu,si)}function ei(e){return br(e,Eu,li)}var ti=Dn?function(e){return Dn.get(e)}:os;function ni(e){for(var t=e.name+"",n=Vn[t],r=Oe.call(Vn,t)?n.length:0;r--;){var a=n[r],i=a.func;if(null==i||i==e)return a.name}return t}function ri(e){return(Oe.call(qn,"placeholder")?qn:e).placeholder}function ai(){var e=qn.iteratee||ns;return e=e===ns?Fr:e,arguments.length?e(arguments[0],arguments[1]):e}function ii(e,t){var n,r,a=e.__data__;return("string"==(r=typeof(n=t))||"number"==r||"symbol"==r||"boolean"==r?"__proto__"!==n:null===n)?a["string"==typeof t?"string":"hash"]:a.map}function oi(e){for(var t=Tu(e),n=t.length;n--;){var r=t[n],a=e[r];t[n]=[r,a,wi(a)]}return t}function ui(t,n){var r,a,i=(a=n,null==(r=t)?e:r[a]);return Ar(i)?i:e}var si=gt?function(e){return null==e?[]:(e=Ie(e),Dt(gt(e),(function(t){return Je.call(e,t)})))}:ps,li=gt?function(e){for(var t=[];e;)At(t,si(e)),e=Le(e);return t}:ps,ci=Cr;function di(e,t,n){for(var r=-1,a=(t=ga(t,e)).length,i=!1;++r<a;){var o=Ri(t[r]);if(!(i=null!=e&&n(e,o)))break;e=e[o]}return i||++r!=a?i:!!(a=null==e?0:e.length)&&Yo(a)&&hi(o,a)&&(Bo(e)||zo(e))}function fi(e){return"function"!=typeof e.constructor||_i(e)?{}:Nn(Le(e))}function pi(e){return Bo(e)||zo(e)||!!(He&&e&&e[He])}function hi(e,t){var n=typeof e;return!!(t=null==t?u:t)&&("number"==n||"symbol"!=n&&me.test(e))&&e>-1&&e%1==0&&e<t}function gi(e,t,n){if(!Zo(n))return!1;var r=typeof t;return!!("number"==r?Lo(n)&&hi(t,n.length):"string"==r&&t in n)&&No(n[t],e)}function mi(e,t){if(Bo(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!ou(e))||Z.test(e)||!H.test(e)||null!=t&&e in Ie(t)}function vi(e){var t=ni(e),n=qn[t];if("function"!=typeof n||!(t in zn.prototype))return!1;if(e===n)return!0;var r=ti(n);return!!r&&e===r[0]}(bn&&ci(new bn(new ArrayBuffer(1)))!=V||Cn&&ci(new Cn)!=y||Sn&&ci(Sn.resolve())!=b||In&&ci(new In)!=S||kn&&ci(new kn)!=x)&&(ci=function(t){var n=Cr(t),r=n==w?t.constructor:e,a=r?ji(r):"";if(a)switch(a){case Tn:return V;case En:return y;case An:return b;case Fn:return S;case On:return x}return n});var yi=Ae?Ko:hs;function _i(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||Ee)}function wi(e){return e==e&&!Zo(e)}function bi(t,n){return function(r){return null!=r&&r[t]===n&&(n!==e||t in Ie(r))}}function Ci(t,n,r){return n=gn(n===e?t.length-1:n,0),function(){for(var e=arguments,a=-1,i=gn(e.length-n,0),o=re(i);++a<i;)o[a]=e[n+a];a=-1;for(var u=re(n+1);++a<n;)u[a]=e[a];return u[n]=r(o),Ct(t,this,u)}}function Si(e,t){return t.length<2?e:wr(e,Xr(t,0,-1))}function Ii(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}var ki=Ti(Qr),xi=dt||function(e,t){return ct.setTimeout(e,t)},Di=Ti(Yr);function Vi(e,t,n){var r,a=t+"";return Di(e,function(e,t){var n=t.length;if(!n)return e;var r=n-1;return t[r]=(n>1?"& ":"")+t[r],t=t.join(n>2?", ":" "),e.replace(ae,"{\n/* [wrapped with "+t+"] */\n")}(a,function(e,t){return It(c,(function(n){var r="_."+n[0];t&n[1]&&!Vt(e,r)&&e.push(r)})),e.sort()}((r=a.match(ie))?r[1].split(oe):[],n)))}function Ti(t){var n=0,r=0;return function(){var a=vn(),i=16-(a-r);if(r=a,i>0){if(++n>=800)return arguments[0]}else n=0;return t.apply(e,arguments)}}function Ei(t,n){var r=-1,a=t.length,i=a-1;for(n=n===e?a:n;++r<n;){var o=Lr(r,i),u=t[o];t[o]=t[r],t[r]=u}return t.length=n,t}var Ai,Fi,Oi=(Ai=Fo((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(X,(function(e,n,r,a){t.push(r?a.replace(le,"$1"):n||e)})),t}),(function(e){return 500===Fi.size&&Fi.clear(),e})),Fi=Ai.cache,Ai);function Ri(e){if("string"==typeof e||ou(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function ji(e){if(null!=e){try{return Fe.call(e)}catch(t){}try{return e+""}catch(t){}}return""}function Ui(e){if(e instanceof zn)return e.clone();var t=new Mn(e.__wrapped__,e.__chain__);return t.__actions__=ka(e.__actions__),t.__index__=e.__index__,t.__values__=e.__values__,t}var qi=Jr((function(e,t){return Wo(e)?sr(e,hr(t,1,Wo,!0)):[]})),Ni=Jr((function(t,n){var r=Gi(n);return Wo(r)&&(r=e),Wo(t)?sr(t,hr(n,1,Wo,!0),ai(r,2)):[]})),Pi=Jr((function(t,n){var r=Gi(n);return Wo(r)&&(r=e),Wo(t)?sr(t,hr(n,1,Wo,!0),e,r):[]}));function Mi(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var a=null==n?0:fu(n);return a<0&&(a=gn(r+a,0)),qt(e,ai(t,3),a)}function zi(t,n,r){var a=null==t?0:t.length;if(!a)return-1;var i=a-1;return r!==e&&(i=fu(r),i=r<0?gn(a+i,0):mn(i,a-1)),qt(t,ai(n,3),i,!0)}function Bi(e){return null!=e&&e.length?hr(e,1):[]}function $i(t){return t&&t.length?t[0]:e}var Li=Jr((function(e){var t=Et(e,pa);return t.length&&t[0]===e[0]?xr(t):[]})),Wi=Jr((function(t){var n=Gi(t),r=Et(t,pa);return n===Gi(r)?n=e:r.pop(),r.length&&r[0]===t[0]?xr(r,ai(n,2)):[]})),Ji=Jr((function(t){var n=Gi(t),r=Et(t,pa);return(n="function"==typeof n?n:e)&&r.pop(),r.length&&r[0]===t[0]?xr(r,e,n):[]}));function Gi(t){var n=null==t?0:t.length;return n?t[n-1]:e}var Hi=Jr(Ki);function Ki(e,t){return e&&e.length&&t&&t.length?Br(e,t):e}var Qi=Za((function(e,t){var n=null==e?0:e.length,r=rr(e,t);return $r(e,Et(t,(function(e){return hi(e,n)?+e:e})).sort(Ca)),r}));function Yi(e){return null==e?e:wn.call(e)}var Zi=Jr((function(e){return oa(hr(e,1,Wo,!0))})),Xi=Jr((function(t){var n=Gi(t);return Wo(n)&&(n=e),oa(hr(t,1,Wo,!0),ai(n,2))})),eo=Jr((function(t){var n=Gi(t);return n="function"==typeof n?n:e,oa(hr(t,1,Wo,!0),e,n)}));function to(e){if(!e||!e.length)return[];var t=0;return e=Dt(e,(function(e){if(Wo(e))return t=gn(e.length,t),!0})),Jt(t,(function(t){return Et(e,Bt(t))}))}function no(t,n){if(!t||!t.length)return[];var r=to(t);return null==n?r:Et(r,(function(t){return Ct(n,e,t)}))}var ro=Jr((function(e,t){return Wo(e)?sr(e,t):[]})),ao=Jr((function(e){return da(Dt(e,Wo))})),io=Jr((function(t){var n=Gi(t);return Wo(n)&&(n=e),da(Dt(t,Wo),ai(n,2))})),oo=Jr((function(t){var n=Gi(t);return n="function"==typeof n?n:e,da(Dt(t,Wo),e,n)})),uo=Jr(to),so=Jr((function(t){var n=t.length,r=n>1?t[n-1]:e;return r="function"==typeof r?(t.pop(),r):e,no(t,r)}));function lo(e){var t=qn(e);return t.__chain__=!0,t}function co(e,t){return t(e)}var fo=Za((function(t){var n=t.length,r=n?t[0]:0,a=this.__wrapped__,i=function(e){return rr(e,t)};return!(n>1||this.__actions__.length)&&a instanceof zn&&hi(r)?((a=a.slice(r,+r+(n?1:0))).__actions__.push({func:co,args:[i],thisArg:e}),new Mn(a,this.__chain__).thru((function(t){return n&&!t.length&&t.push(e),t}))):this.thru(i)})),po=Da((function(e,t,n){Oe.call(e,n)?++e[n]:nr(e,n,1)})),ho=Ra(Mi),go=Ra(zi);function mo(e,t){return(Bo(e)?It:lr)(e,ai(t,3))}function vo(e,t){return(Bo(e)?kt:cr)(e,ai(t,3))}var yo=Da((function(e,t,n){Oe.call(e,n)?e[n].push(t):nr(e,n,[t])})),_o=Jr((function(e,t,n){var r=-1,a="function"==typeof t,i=Lo(e)?re(e.length):[];return lr(e,(function(e){i[++r]=a?Ct(t,e,n):Dr(e,t,n)})),i})),wo=Da((function(e,t,n){nr(e,n,t)}));function bo(e,t){return(Bo(e)?Et:jr)(e,ai(t,3))}var Co=Da((function(e,t,n){e[n?0:1].push(t)}),(function(){return[[],[]]})),So=Jr((function(e,t){if(null==e)return[];var n=t.length;return n>1&&gi(e,t[0],t[1])?t=[]:n>2&&gi(t[0],t[1],t[2])&&(t=[t[0]]),Mr(e,hr(t,1),[])})),Io=lt||function(){return ct.Date.now()};function ko(t,n,r){return n=r?e:n,n=t&&null==n?t.length:n,Ga(t,i,e,e,e,e,n)}function xo(n,r){var a;if("function"!=typeof r)throw new De(t);return n=fu(n),function(){return--n>0&&(a=r.apply(this,arguments)),n<=1&&(r=e),a}}var Do=Jr((function(e,t,n){var r=1;if(n.length){var i=on(n,ri(Do));r|=a}return Ga(e,r,t,n,i)})),Vo=Jr((function(e,t,n){var r=3;if(n.length){var i=on(n,ri(Vo));r|=a}return Ga(t,r,e,n,i)}));function To(n,r,a){var i,o,u,s,l,c,d=0,f=!1,p=!1,h=!0;if("function"!=typeof n)throw new De(t);function g(t){var r=i,a=o;return i=o=e,d=t,s=n.apply(a,r)}function m(t){var n=t-c;return c===e||n>=r||n<0||p&&t-d>=u}function v(){var e,t,n=Io();if(m(n))return y(n);l=xi(v,(t=r-((e=n)-c),p?mn(t,u-(e-d)):t))}function y(t){return l=e,h&&i?g(t):(i=o=e,s)}function _(){var t,n=Io(),a=m(n);if(i=arguments,o=this,c=n,a){if(l===e)return d=t=c,l=xi(v,r),f?g(t):s;if(p)return ya(l),l=xi(v,r),g(c)}return l===e&&(l=xi(v,r)),s}return r=hu(r)||0,Zo(a)&&(f=!!a.leading,u=(p="maxWait"in a)?gn(hu(a.maxWait)||0,r):u,h="trailing"in a?!!a.trailing:h),_.cancel=function(){l!==e&&ya(l),d=0,i=c=o=l=e},_.flush=function(){return l===e?s:y(Io())},_}var Eo=Jr((function(e,t){return ur(e,1,t)})),Ao=Jr((function(e,t,n){return ur(e,hu(t)||0,n)}));function Fo(e,n){if("function"!=typeof e||null!=n&&"function"!=typeof n)throw new De(t);var r=function(){var t=arguments,a=n?n.apply(this,t):t[0],i=r.cache;if(i.has(a))return i.get(a);var o=e.apply(this,t);return r.cache=i.set(a,o)||i,o};return r.cache=new(Fo.Cache||Ln),r}function Oo(e){if("function"!=typeof e)throw new De(t);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}Fo.Cache=Ln;var Ro=ma((function(e,t){var n=(t=1==t.length&&Bo(t[0])?Et(t[0],Ht(ai())):Et(hr(t,1),Ht(ai()))).length;return Jr((function(r){for(var a=-1,i=mn(r.length,n);++a<i;)r[a]=t[a].call(this,r[a]);return Ct(e,this,r)}))})),jo=Jr((function(t,n){var r=on(n,ri(jo));return Ga(t,a,e,n,r)})),Uo=Jr((function(t,n){var r=on(n,ri(Uo));return Ga(t,64,e,n,r)})),qo=Za((function(t,n){return Ga(t,256,e,e,e,n)}));function No(e,t){return e===t||e!=e&&t!=t}var Po=Ba(Sr),Mo=Ba((function(e,t){return e>=t})),zo=Vr(function(){return arguments}())?Vr:function(e){return Xo(e)&&Oe.call(e,"callee")&&!Je.call(e,"callee")},Bo=re.isArray,$o=mt?Ht(mt):function(e){return Xo(e)&&Cr(e)==D};function Lo(e){return null!=e&&Yo(e.length)&&!Ko(e)}function Wo(e){return Xo(e)&&Lo(e)}var Jo=jt||hs,Go=vt?Ht(vt):function(e){return Xo(e)&&Cr(e)==h};function Ho(e){if(!Xo(e))return!1;var t=Cr(e);return t==g||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!nu(e)}function Ko(e){if(!Zo(e))return!1;var t=Cr(e);return t==m||t==v||"[object AsyncFunction]"==t||"[object Proxy]"==t}function Qo(e){return"number"==typeof e&&e==fu(e)}function Yo(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=u}function Zo(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function Xo(e){return null!=e&&"object"==typeof e}var eu=yt?Ht(yt):function(e){return Xo(e)&&ci(e)==y};function tu(e){return"number"==typeof e||Xo(e)&&Cr(e)==_}function nu(e){if(!Xo(e)||Cr(e)!=w)return!1;var t=Le(e);if(null===t)return!0;var n=Oe.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&Fe.call(n)==qe}var ru=_t?Ht(_t):function(e){return Xo(e)&&Cr(e)==C},au=wt?Ht(wt):function(e){return Xo(e)&&ci(e)==S};function iu(e){return"string"==typeof e||!Bo(e)&&Xo(e)&&Cr(e)==I}function ou(e){return"symbol"==typeof e||Xo(e)&&Cr(e)==k}var uu=bt?Ht(bt):function(e){return Xo(e)&&Yo(e.length)&&!!rt[Cr(e)]},su=Ba(Rr),lu=Ba((function(e,t){return e<=t}));function cu(e){if(!e)return[];if(Lo(e))return iu(e)?ln(e):ka(e);if(Ye&&e[Ye])return function(e){for(var t,n=[];!(t=e.next()).done;)n.push(t.value);return n}(e[Ye]());var t=ci(e);return(t==y?rn:t==S?un:Nu)(e)}function du(e){return e?(e=hu(e))===o||e===-1/0?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}function fu(e){var t=du(e),n=t%1;return t==t?n?t-n:t:0}function pu(e){return e?ar(fu(e),0,l):0}function hu(e){if("number"==typeof e)return e;if(ou(e))return s;if(Zo(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=Zo(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=Gt(e);var n=pe.test(e);return n||ge.test(e)?ut(e.slice(2),n?2:8):fe.test(e)?s:+e}function gu(e){return xa(e,Eu(e))}function mu(e){return null==e?"":ia(e)}var vu=Va((function(e,t){if(_i(t)||Lo(t))xa(t,Tu(t),e);else for(var n in t)Oe.call(t,n)&&Zn(e,n,t[n])})),yu=Va((function(e,t){xa(t,Eu(t),e)})),_u=Va((function(e,t,n,r){xa(t,Eu(t),e,r)})),wu=Va((function(e,t,n,r){xa(t,Tu(t),e,r)})),bu=Za(rr),Cu=Jr((function(t,n){t=Ie(t);var r=-1,a=n.length,i=a>2?n[2]:e;for(i&&gi(n[0],n[1],i)&&(a=1);++r<a;)for(var o=n[r],u=Eu(o),s=-1,l=u.length;++s<l;){var c=u[s],d=t[c];(d===e||No(d,Ee[c])&&!Oe.call(t,c))&&(t[c]=o[c])}return t})),Su=Jr((function(t){return t.push(e,Ka),Ct(Fu,e,t)}));function Iu(t,n,r){var a=null==t?e:wr(t,n);return a===e?r:a}function ku(e,t){return null!=e&&di(e,t,kr)}var xu=qa((function(e,t,n){null!=t&&"function"!=typeof t.toString&&(t=Ue.call(t)),e[t]=n}),Zu(ts)),Du=qa((function(e,t,n){null!=t&&"function"!=typeof t.toString&&(t=Ue.call(t)),Oe.call(e,t)?e[t].push(n):e[t]=[n]}),ai),Vu=Jr(Dr);function Tu(e){return Lo(e)?Gn(e):Or(e)}function Eu(e){return Lo(e)?Gn(e,!0):function(e){if(!Zo(e))return function(e){var t=[];if(null!=e)for(var n in Ie(e))t.push(n);return t}(e);var t=_i(e),n=[];for(var r in e)("constructor"!=r||!t&&Oe.call(e,r))&&n.push(r);return n}(e)}var Au=Va((function(e,t,n){Nr(e,t,n)})),Fu=Va((function(e,t,n,r){Nr(e,t,n,r)})),Ou=Za((function(e,t){var n={};if(null==e)return n;var r=!1;t=Et(t,(function(t){return t=ga(t,e),r||(r=t.length>1),t})),xa(e,ei(e),n),r&&(n=ir(n,7,Qa));for(var a=t.length;a--;)ua(n,t[a]);return n})),Ru=Za((function(e,t){return null==e?{}:zr(n=e,t,(function(e,t){return ku(n,t)}));var n}));function ju(e,t){if(null==e)return{};var n=Et(ei(e),(function(e){return[e]}));return t=ai(t),zr(e,n,(function(e,n){return t(e,n[0])}))}var Uu=Ja(Tu),qu=Ja(Eu);function Nu(e){return null==e?[]:Kt(e,Tu(e))}var Pu=Fa((function(e,t,n){return t=t.toLowerCase(),e+(n?Mu(t):t)}));function Mu(e){return Hu(mu(e).toLowerCase())}function zu(e){return(e=mu(e))&&e.replace(ve,Xt).replace(Qe,"")}var Bu=Fa((function(e,t,n){return e+(n?"-":"")+t.toLowerCase()})),$u=Fa((function(e,t,n){return e+(n?" ":"")+t.toLowerCase()})),Lu=Aa("toLowerCase"),Wu=Fa((function(e,t,n){return e+(n?"_":"")+t.toLowerCase()})),Ju=Fa((function(e,t,n){return e+(n?" ":"")+Hu(t)})),Gu=Fa((function(e,t,n){return e+(n?" ":"")+t.toUpperCase()})),Hu=Aa("toUpperCase");function Ku(t,n,r){return t=mu(t),(n=r?e:n)===e?(a=t,et.test(a)?function(e){return e.match(Ze)||[]}(t):function(e){return e.match(ue)||[]}(t)):t.match(n)||[];var a}var Qu=Jr((function(t,n){try{return Ct(t,e,n)}catch(r){return Ho(r)?r:new be(r)}})),Yu=Za((function(e,t){return It(t,(function(t){t=Ri(t),nr(e,t,Do(e[t],e))})),e}));function Zu(e){return function(){return e}}var Xu=ja(),es=ja(!0);function ts(e){return e}function ns(e){return Fr("function"==typeof e?e:ir(e,1))}var rs=Jr((function(e,t){return function(n){return Dr(n,e,t)}})),as=Jr((function(e,t){return function(n){return Dr(e,n,t)}}));function is(e,t,n){var r=Tu(t),a=_r(t,r);null!=n||Zo(t)&&(a.length||!r.length)||(n=t,t=e,e=this,a=_r(t,Tu(t)));var i=!(Zo(n)&&"chain"in n&&!n.chain),o=Ko(e);return It(a,(function(n){var r=t[n];e[n]=r,o&&(e.prototype[n]=function(){var t=this.__chain__;if(i||t){var n=e(this.__wrapped__);return(n.__actions__=ka(this.__actions__)).push({func:r,args:arguments,thisArg:e}),n.__chain__=t,n}return r.apply(e,At([this.value()],arguments))})})),e}function os(){}var us=Pa(Et),ss=Pa(xt),ls=Pa(Rt);function cs(e){return mi(e)?Bt(Ri(e)):function(e){return function(t){return wr(t,e)}}(e)}var ds=za(),fs=za(!0);function ps(){return[]}function hs(){return!1}var gs,ms=Na((function(e,t){return e+t}),0),vs=La("ceil"),ys=Na((function(e,t){return e/t}),1),_s=La("floor"),ws=Na((function(e,t){return e*t}),1),bs=La("round"),Cs=Na((function(e,t){return e-t}),0);return qn.after=function(e,n){if("function"!=typeof n)throw new De(t);return e=fu(e),function(){if(--e<1)return n.apply(this,arguments)}},qn.ary=ko,qn.assign=vu,qn.assignIn=yu,qn.assignInWith=_u,qn.assignWith=wu,qn.at=bu,qn.before=xo,qn.bind=Do,qn.bindAll=Yu,qn.bindKey=Vo,qn.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return Bo(e)?e:[e]},qn.chain=lo,qn.chunk=function(t,n,r){n=(r?gi(t,n,r):n===e)?1:gn(fu(n),0);var a=null==t?0:t.length;if(!a||n<1)return[];for(var i=0,o=0,u=re(ft(a/n));i<a;)u[o++]=Xr(t,i,i+=n);return u},qn.compact=function(e){for(var t=-1,n=null==e?0:e.length,r=0,a=[];++t<n;){var i=e[t];i&&(a[r++]=i)}return a},qn.concat=function(){var e=arguments.length;if(!e)return[];for(var t=re(e-1),n=arguments[0],r=e;r--;)t[r-1]=arguments[r];return At(Bo(n)?ka(n):[n],hr(t,1))},qn.cond=function(e){var n=null==e?0:e.length,r=ai();return e=n?Et(e,(function(e){if("function"!=typeof e[1])throw new De(t);return[r(e[0]),e[1]]})):[],Jr((function(t){for(var r=-1;++r<n;){var a=e[r];if(Ct(a[0],this,t))return Ct(a[1],this,t)}}))},qn.conforms=function(e){return t=ir(e,1),n=Tu(t),function(e){return or(e,t,n)};var t,n},qn.constant=Zu,qn.countBy=po,qn.create=function(e,t){var n=Nn(e);return null==t?n:tr(n,t)},qn.curry=function t(n,r,a){var i=Ga(n,8,e,e,e,e,e,r=a?e:r);return i.placeholder=t.placeholder,i},qn.curryRight=function t(n,r,a){var i=Ga(n,16,e,e,e,e,e,r=a?e:r);return i.placeholder=t.placeholder,i},qn.debounce=To,qn.defaults=Cu,qn.defaultsDeep=Su,qn.defer=Eo,qn.delay=Ao,qn.difference=qi,qn.differenceBy=Ni,qn.differenceWith=Pi,qn.drop=function(t,n,r){var a=null==t?0:t.length;return a?Xr(t,(n=r||n===e?1:fu(n))<0?0:n,a):[]},qn.dropRight=function(t,n,r){var a=null==t?0:t.length;return a?Xr(t,0,(n=a-(n=r||n===e?1:fu(n)))<0?0:n):[]},qn.dropRightWhile=function(e,t){return e&&e.length?la(e,ai(t,3),!0,!0):[]},qn.dropWhile=function(e,t){return e&&e.length?la(e,ai(t,3),!0):[]},qn.fill=function(t,n,r,a){var i=null==t?0:t.length;return i?(r&&"number"!=typeof r&&gi(t,n,r)&&(r=0,a=i),function(t,n,r,a){var i=t.length;for((r=fu(r))<0&&(r=-r>i?0:i+r),(a=a===e||a>i?i:fu(a))<0&&(a+=i),a=r>a?0:pu(a);r<a;)t[r++]=n;return t}(t,n,r,a)):[]},qn.filter=function(e,t){return(Bo(e)?Dt:pr)(e,ai(t,3))},qn.flatMap=function(e,t){return hr(bo(e,t),1)},qn.flatMapDeep=function(e,t){return hr(bo(e,t),o)},qn.flatMapDepth=function(t,n,r){return r=r===e?1:fu(r),hr(bo(t,n),r)},qn.flatten=Bi,qn.flattenDeep=function(e){return null!=e&&e.length?hr(e,o):[]},qn.flattenDepth=function(t,n){return null!=t&&t.length?hr(t,n=n===e?1:fu(n)):[]},qn.flip=function(e){return Ga(e,512)},qn.flow=Xu,qn.flowRight=es,qn.fromPairs=function(e){for(var t=-1,n=null==e?0:e.length,r={};++t<n;){var a=e[t];r[a[0]]=a[1]}return r},qn.functions=function(e){return null==e?[]:_r(e,Tu(e))},qn.functionsIn=function(e){return null==e?[]:_r(e,Eu(e))},qn.groupBy=yo,qn.initial=function(e){return null!=e&&e.length?Xr(e,0,-1):[]},qn.intersection=Li,qn.intersectionBy=Wi,qn.intersectionWith=Ji,qn.invert=xu,qn.invertBy=Du,qn.invokeMap=_o,qn.iteratee=ns,qn.keyBy=wo,qn.keys=Tu,qn.keysIn=Eu,qn.map=bo,qn.mapKeys=function(e,t){var n={};return t=ai(t,3),vr(e,(function(e,r,a){nr(n,t(e,r,a),e)})),n},qn.mapValues=function(e,t){var n={};return t=ai(t,3),vr(e,(function(e,r,a){nr(n,r,t(e,r,a))})),n},qn.matches=function(e){return Ur(ir(e,1))},qn.matchesProperty=function(e,t){return qr(e,ir(t,1))},qn.memoize=Fo,qn.merge=Au,qn.mergeWith=Fu,qn.method=rs,qn.methodOf=as,qn.mixin=is,qn.negate=Oo,qn.nthArg=function(e){return e=fu(e),Jr((function(t){return Pr(t,e)}))},qn.omit=Ou,qn.omitBy=function(e,t){return ju(e,Oo(ai(t)))},qn.once=function(e){return xo(2,e)},qn.orderBy=function(t,n,r,a){return null==t?[]:(Bo(n)||(n=null==n?[]:[n]),Bo(r=a?e:r)||(r=null==r?[]:[r]),Mr(t,n,r))},qn.over=us,qn.overArgs=Ro,qn.overEvery=ss,qn.overSome=ls,qn.partial=jo,qn.partialRight=Uo,qn.partition=Co,qn.pick=Ru,qn.pickBy=ju,qn.property=cs,qn.propertyOf=function(t){return function(n){return null==t?e:wr(t,n)}},qn.pull=Hi,qn.pullAll=Ki,qn.pullAllBy=function(e,t,n){return e&&e.length&&t&&t.length?Br(e,t,ai(n,2)):e},qn.pullAllWith=function(t,n,r){return t&&t.length&&n&&n.length?Br(t,n,e,r):t},qn.pullAt=Qi,qn.range=ds,qn.rangeRight=fs,qn.rearg=qo,qn.reject=function(e,t){return(Bo(e)?Dt:pr)(e,Oo(ai(t,3)))},qn.remove=function(e,t){var n=[];if(!e||!e.length)return n;var r=-1,a=[],i=e.length;for(t=ai(t,3);++r<i;){var o=e[r];t(o,r,e)&&(n.push(o),a.push(r))}return $r(e,a),n},qn.rest=function(n,r){if("function"!=typeof n)throw new De(t);return Jr(n,r=r===e?r:fu(r))},qn.reverse=Yi,qn.sampleSize=function(t,n,r){return n=(r?gi(t,n,r):n===e)?1:fu(n),(Bo(t)?Kn:Hr)(t,n)},qn.set=function(e,t,n){return null==e?e:Kr(e,t,n)},qn.setWith=function(t,n,r,a){return a="function"==typeof a?a:e,null==t?t:Kr(t,n,r,a)},qn.shuffle=function(e){return(Bo(e)?Qn:Zr)(e)},qn.slice=function(t,n,r){var a=null==t?0:t.length;return a?(r&&"number"!=typeof r&&gi(t,n,r)?(n=0,r=a):(n=null==n?0:fu(n),r=r===e?a:fu(r)),Xr(t,n,r)):[]},qn.sortBy=So,qn.sortedUniq=function(e){return e&&e.length?ra(e):[]},qn.sortedUniqBy=function(e,t){return e&&e.length?ra(e,ai(t,2)):[]},qn.split=function(t,n,r){return r&&"number"!=typeof r&&gi(t,n,r)&&(n=r=e),(r=r===e?l:r>>>0)?(t=mu(t))&&("string"==typeof n||null!=n&&!ru(n))&&!(n=ia(n))&&nn(t)?va(ln(t),0,r):t.split(n,r):[]},qn.spread=function(e,n){if("function"!=typeof e)throw new De(t);return n=null==n?0:gn(fu(n),0),Jr((function(t){var r=t[n],a=va(t,0,n);return r&&At(a,r),Ct(e,this,a)}))},qn.tail=function(e){var t=null==e?0:e.length;return t?Xr(e,1,t):[]},qn.take=function(t,n,r){return t&&t.length?Xr(t,0,(n=r||n===e?1:fu(n))<0?0:n):[]},qn.takeRight=function(t,n,r){var a=null==t?0:t.length;return a?Xr(t,(n=a-(n=r||n===e?1:fu(n)))<0?0:n,a):[]},qn.takeRightWhile=function(e,t){return e&&e.length?la(e,ai(t,3),!1,!0):[]},qn.takeWhile=function(e,t){return e&&e.length?la(e,ai(t,3)):[]},qn.tap=function(e,t){return t(e),e},qn.throttle=function(e,n,r){var a=!0,i=!0;if("function"!=typeof e)throw new De(t);return Zo(r)&&(a="leading"in r?!!r.leading:a,i="trailing"in r?!!r.trailing:i),To(e,n,{leading:a,maxWait:n,trailing:i})},qn.thru=co,qn.toArray=cu,qn.toPairs=Uu,qn.toPairsIn=qu,qn.toPath=function(e){return Bo(e)?Et(e,Ri):ou(e)?[e]:ka(Oi(mu(e)))},qn.toPlainObject=gu,qn.transform=function(e,t,n){var r=Bo(e),a=r||Jo(e)||uu(e);if(t=ai(t,4),null==n){var i=e&&e.constructor;n=a?r?new i:[]:Zo(e)&&Ko(i)?Nn(Le(e)):{}}return(a?It:vr)(e,(function(e,r,a){return t(n,e,r,a)})),n},qn.unary=function(e){return ko(e,1)},qn.union=Zi,qn.unionBy=Xi,qn.unionWith=eo,qn.uniq=function(e){return e&&e.length?oa(e):[]},qn.uniqBy=function(e,t){return e&&e.length?oa(e,ai(t,2)):[]},qn.uniqWith=function(t,n){return n="function"==typeof n?n:e,t&&t.length?oa(t,e,n):[]},qn.unset=function(e,t){return null==e||ua(e,t)},qn.unzip=to,qn.unzipWith=no,qn.update=function(e,t,n){return null==e?e:sa(e,t,ha(n))},qn.updateWith=function(t,n,r,a){return a="function"==typeof a?a:e,null==t?t:sa(t,n,ha(r),a)},qn.values=Nu,qn.valuesIn=function(e){return null==e?[]:Kt(e,Eu(e))},qn.without=ro,qn.words=Ku,qn.wrap=function(e,t){return jo(ha(t),e)},qn.xor=ao,qn.xorBy=io,qn.xorWith=oo,qn.zip=uo,qn.zipObject=function(e,t){return fa(e||[],t||[],Zn)},qn.zipObjectDeep=function(e,t){return fa(e||[],t||[],Kr)},qn.zipWith=so,qn.entries=Uu,qn.entriesIn=qu,qn.extend=yu,qn.extendWith=_u,is(qn,qn),qn.add=ms,qn.attempt=Qu,qn.camelCase=Pu,qn.capitalize=Mu,qn.ceil=vs,qn.clamp=function(t,n,r){return r===e&&(r=n,n=e),r!==e&&(r=(r=hu(r))==r?r:0),n!==e&&(n=(n=hu(n))==n?n:0),ar(hu(t),n,r)},qn.clone=function(e){return ir(e,4)},qn.cloneDeep=function(e){return ir(e,5)},qn.cloneDeepWith=function(t,n){return ir(t,5,n="function"==typeof n?n:e)},qn.cloneWith=function(t,n){return ir(t,4,n="function"==typeof n?n:e)},qn.conformsTo=function(e,t){return null==t||or(e,t,Tu(t))},qn.deburr=zu,qn.defaultTo=function(e,t){return null==e||e!=e?t:e},qn.divide=ys,qn.endsWith=function(t,n,r){t=mu(t),n=ia(n);var a=t.length,i=r=r===e?a:ar(fu(r),0,a);return(r-=n.length)>=0&&t.slice(r,i)==n},qn.eq=No,qn.escape=function(e){return(e=mu(e))&&L.test(e)?e.replace(B,en):e},qn.escapeRegExp=function(e){return(e=mu(e))&&te.test(e)?e.replace(ee,"\\$&"):e},qn.every=function(t,n,r){var a=Bo(t)?xt:dr;return r&&gi(t,n,r)&&(n=e),a(t,ai(n,3))},qn.find=ho,qn.findIndex=Mi,qn.findKey=function(e,t){return Ut(e,ai(t,3),vr)},qn.findLast=go,qn.findLastIndex=zi,qn.findLastKey=function(e,t){return Ut(e,ai(t,3),yr)},qn.floor=_s,qn.forEach=mo,qn.forEachRight=vo,qn.forIn=function(e,t){return null==e?e:gr(e,ai(t,3),Eu)},qn.forInRight=function(e,t){return null==e?e:mr(e,ai(t,3),Eu)},qn.forOwn=function(e,t){return e&&vr(e,ai(t,3))},qn.forOwnRight=function(e,t){return e&&yr(e,ai(t,3))},qn.get=Iu,qn.gt=Po,qn.gte=Mo,qn.has=function(e,t){return null!=e&&di(e,t,Ir)},qn.hasIn=ku,qn.head=$i,qn.identity=ts,qn.includes=function(e,t,n,r){e=Lo(e)?e:Nu(e),n=n&&!r?fu(n):0;var a=e.length;return n<0&&(n=gn(a+n,0)),iu(e)?n<=a&&e.indexOf(t,n)>-1:!!a&&Nt(e,t,n)>-1},qn.indexOf=function(e,t,n){var r=null==e?0:e.length;if(!r)return-1;var a=null==n?0:fu(n);return a<0&&(a=gn(r+a,0)),Nt(e,t,a)},qn.inRange=function(t,n,r){return n=du(n),r===e?(r=n,n=0):r=du(r),(a=t=hu(t))>=mn(i=n,o=r)&&a<gn(i,o);var a,i,o},qn.invoke=Vu,qn.isArguments=zo,qn.isArray=Bo,qn.isArrayBuffer=$o,qn.isArrayLike=Lo,qn.isArrayLikeObject=Wo,qn.isBoolean=function(e){return!0===e||!1===e||Xo(e)&&Cr(e)==p},qn.isBuffer=Jo,qn.isDate=Go,qn.isElement=function(e){return Xo(e)&&1===e.nodeType&&!nu(e)},qn.isEmpty=function(e){if(null==e)return!0;if(Lo(e)&&(Bo(e)||"string"==typeof e||"function"==typeof e.splice||Jo(e)||uu(e)||zo(e)))return!e.length;var t=ci(e);if(t==y||t==S)return!e.size;if(_i(e))return!Or(e).length;for(var n in e)if(Oe.call(e,n))return!1;return!0},qn.isEqual=function(e,t){return Tr(e,t)},qn.isEqualWith=function(t,n,r){var a=(r="function"==typeof r?r:e)?r(t,n):e;return a===e?Tr(t,n,e,r):!!a},qn.isError=Ho,qn.isFinite=function(e){return"number"==typeof e&&$t(e)},qn.isFunction=Ko,qn.isInteger=Qo,qn.isLength=Yo,qn.isMap=eu,qn.isMatch=function(e,t){return e===t||Er(e,t,oi(t))},qn.isMatchWith=function(t,n,r){return r="function"==typeof r?r:e,Er(t,n,oi(n),r)},qn.isNaN=function(e){return tu(e)&&e!=+e},qn.isNative=function(e){if(yi(e))throw new be("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return Ar(e)},qn.isNil=function(e){return null==e},qn.isNull=function(e){return null===e},qn.isNumber=tu,qn.isObject=Zo,qn.isObjectLike=Xo,qn.isPlainObject=nu,qn.isRegExp=ru,qn.isSafeInteger=function(e){return Qo(e)&&e>=-9007199254740991&&e<=u},qn.isSet=au,qn.isString=iu,qn.isSymbol=ou,qn.isTypedArray=uu,qn.isUndefined=function(t){return t===e},qn.isWeakMap=function(e){return Xo(e)&&ci(e)==x},qn.isWeakSet=function(e){return Xo(e)&&"[object WeakSet]"==Cr(e)},qn.join=function(e,t){return null==e?"":pn.call(e,t)},qn.kebabCase=Bu,qn.last=Gi,qn.lastIndexOf=function(t,n,r){var a=null==t?0:t.length;if(!a)return-1;var i=a;return r!==e&&(i=(i=fu(r))<0?gn(a+i,0):mn(i,a-1)),n==n?function(e,t,n){for(var r=n+1;r--;)if(e[r]===t)return r;return r}(t,n,i):qt(t,Mt,i,!0)},qn.lowerCase=$u,qn.lowerFirst=Lu,qn.lt=su,qn.lte=lu,qn.max=function(t){return t&&t.length?fr(t,ts,Sr):e},qn.maxBy=function(t,n){return t&&t.length?fr(t,ai(n,2),Sr):e},qn.mean=function(e){return zt(e,ts)},qn.meanBy=function(e,t){return zt(e,ai(t,2))},qn.min=function(t){return t&&t.length?fr(t,ts,Rr):e},qn.minBy=function(t,n){return t&&t.length?fr(t,ai(n,2),Rr):e},qn.stubArray=ps,qn.stubFalse=hs,qn.stubObject=function(){return{}},qn.stubString=function(){return""},qn.stubTrue=function(){return!0},qn.multiply=ws,qn.nth=function(t,n){return t&&t.length?Pr(t,fu(n)):e},qn.noConflict=function(){return ct._===this&&(ct._=Ne),this},qn.noop=os,qn.now=Io,qn.pad=function(e,t,n){e=mu(e);var r=(t=fu(t))?sn(e):0;if(!t||r>=t)return e;var a=(t-r)/2;return Ma(ht(a),n)+e+Ma(ft(a),n)},qn.padEnd=function(e,t,n){e=mu(e);var r=(t=fu(t))?sn(e):0;return t&&r<t?e+Ma(t-r,n):e},qn.padStart=function(e,t,n){e=mu(e);var r=(t=fu(t))?sn(e):0;return t&&r<t?Ma(t-r,n)+e:e},qn.parseInt=function(e,t,n){return n||null==t?t=0:t&&(t=+t),yn(mu(e).replace(ne,""),t||0)},qn.random=function(t,n,r){if(r&&"boolean"!=typeof r&&gi(t,n,r)&&(n=r=e),r===e&&("boolean"==typeof n?(r=n,n=e):"boolean"==typeof t&&(r=t,t=e)),t===e&&n===e?(t=0,n=1):(t=du(t),n===e?(n=t,t=0):n=du(n)),t>n){var a=t;t=n,n=a}if(r||t%1||n%1){var i=_n();return mn(t+i*(n-t+ot("1e-"+((i+"").length-1))),n)}return Lr(t,n)},qn.reduce=function(e,t,n){var r=Bo(e)?Ft:Lt,a=arguments.length<3;return r(e,ai(t,4),n,a,lr)},qn.reduceRight=function(e,t,n){var r=Bo(e)?Ot:Lt,a=arguments.length<3;return r(e,ai(t,4),n,a,cr)},qn.repeat=function(t,n,r){return n=(r?gi(t,n,r):n===e)?1:fu(n),Wr(mu(t),n)},qn.replace=function(){var e=arguments,t=mu(e[0]);return e.length<3?t:t.replace(e[1],e[2])},qn.result=function(t,n,r){var a=-1,i=(n=ga(n,t)).length;for(i||(i=1,t=e);++a<i;){var o=null==t?e:t[Ri(n[a])];o===e&&(a=i,o=r),t=Ko(o)?o.call(t):o}return t},qn.round=bs,qn.runInContext=K,qn.sample=function(e){return(Bo(e)?Hn:Gr)(e)},qn.size=function(e){if(null==e)return 0;if(Lo(e))return iu(e)?sn(e):e.length;var t=ci(e);return t==y||t==S?e.size:Or(e).length},qn.snakeCase=Wu,qn.some=function(t,n,r){var a=Bo(t)?Rt:ea;return r&&gi(t,n,r)&&(n=e),a(t,ai(n,3))},qn.sortedIndex=function(e,t){return ta(e,t)},qn.sortedIndexBy=function(e,t,n){return na(e,t,ai(n,2))},qn.sortedIndexOf=function(e,t){var n=null==e?0:e.length;if(n){var r=ta(e,t);if(r<n&&No(e[r],t))return r}return-1},qn.sortedLastIndex=function(e,t){return ta(e,t,!0)},qn.sortedLastIndexBy=function(e,t,n){return na(e,t,ai(n,2),!0)},qn.sortedLastIndexOf=function(e,t){if(null!=e&&e.length){var n=ta(e,t,!0)-1;if(No(e[n],t))return n}return-1},qn.startCase=Ju,qn.startsWith=function(e,t,n){return e=mu(e),n=null==n?0:ar(fu(n),0,e.length),t=ia(t),e.slice(n,n+t.length)==t},qn.subtract=Cs,qn.sum=function(e){return e&&e.length?Wt(e,ts):0},qn.sumBy=function(e,t){return e&&e.length?Wt(e,ai(t,2)):0},qn.template=function(t,n,r){var a=qn.templateSettings;r&&gi(t,n,r)&&(n=e),t=mu(t),n=_u({},n,a,Ha);var i,o,u=_u({},n.imports,a.imports,Ha),s=Tu(u),l=Kt(u,s),c=0,d=n.interpolate||ye,f="__p += '",p=ke((n.escape||ye).source+"|"+d.source+"|"+(d===G?ce:ye).source+"|"+(n.evaluate||ye).source+"|$","g"),h="//# sourceURL="+(Oe.call(n,"sourceURL")?(n.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++nt+"]")+"\n";t.replace(p,(function(e,n,r,a,u,s){return r||(r=a),f+=t.slice(c,s).replace(_e,tn),n&&(i=!0,f+="' +\n__e("+n+") +\n'"),u&&(o=!0,f+="';\n"+u+";\n__p += '"),r&&(f+="' +\n((__t = ("+r+")) == null ? '' : __t) +\n'"),c=s+e.length,e})),f+="';\n";var g=Oe.call(n,"variable")&&n.variable;if(g){if(se.test(g))throw new be("Invalid `variable` option passed into `_.template`")}else f="with (obj) {\n"+f+"\n}\n";f=(o?f.replace(N,""):f).replace(P,"$1").replace(M,"$1;"),f="function("+(g||"obj")+") {\n"+(g?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(i?", __e = _.escape":"")+(o?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+f+"return __p\n}";var m=Qu((function(){return Ce(s,h+"return "+f).apply(e,l)}));if(m.source=f,Ho(m))throw m;return m},qn.times=function(e,t){if((e=fu(e))<1||e>u)return[];var n=l,r=mn(e,l);t=ai(t),e-=l;for(var a=Jt(r,t);++n<e;)t(n);return a},qn.toFinite=du,qn.toInteger=fu,qn.toLength=pu,qn.toLower=function(e){return mu(e).toLowerCase()},qn.toNumber=hu,qn.toSafeInteger=function(e){return e?ar(fu(e),-9007199254740991,u):0===e?e:0},qn.toString=mu,qn.toUpper=function(e){return mu(e).toUpperCase()},qn.trim=function(t,n,r){if((t=mu(t))&&(r||n===e))return Gt(t);if(!t||!(n=ia(n)))return t;var a=ln(t),i=ln(n);return va(a,Yt(a,i),Zt(a,i)+1).join("")},qn.trimEnd=function(t,n,r){if((t=mu(t))&&(r||n===e))return t.slice(0,cn(t)+1);if(!t||!(n=ia(n)))return t;var a=ln(t);return va(a,0,Zt(a,ln(n))+1).join("")},qn.trimStart=function(t,n,r){if((t=mu(t))&&(r||n===e))return t.replace(ne,"");if(!t||!(n=ia(n)))return t;var a=ln(t);return va(a,Yt(a,ln(n))).join("")},qn.truncate=function(t,n){var r=30,a="...";if(Zo(n)){var i="separator"in n?n.separator:i;r="length"in n?fu(n.length):r,a="omission"in n?ia(n.omission):a}var o=(t=mu(t)).length;if(nn(t)){var u=ln(t);o=u.length}if(r>=o)return t;var s=r-sn(a);if(s<1)return a;var l=u?va(u,0,s).join(""):t.slice(0,s);if(i===e)return l+a;if(u&&(s+=l.length-s),ru(i)){if(t.slice(s).search(i)){var c,d=l;for(i.global||(i=ke(i.source,mu(de.exec(i))+"g")),i.lastIndex=0;c=i.exec(d);)var f=c.index;l=l.slice(0,f===e?s:f)}}else if(t.indexOf(ia(i),s)!=s){var p=l.lastIndexOf(i);p>-1&&(l=l.slice(0,p))}return l+a},qn.unescape=function(e){return(e=mu(e))&&$.test(e)?e.replace(z,dn):e},qn.uniqueId=function(e){var t=++Re;return mu(e)+t},qn.upperCase=Gu,qn.upperFirst=Hu,qn.each=mo,qn.eachRight=vo,qn.first=$i,is(qn,(gs={},vr(qn,(function(e,t){Oe.call(qn.prototype,t)||(gs[t]=e)})),gs),{chain:!1}),qn.VERSION="4.17.21",It(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(e){qn[e].placeholder=qn})),It(["drop","take"],(function(t,n){zn.prototype[t]=function(r){r=r===e?1:gn(fu(r),0);var a=this.__filtered__&&!n?new zn(this):this.clone();return a.__filtered__?a.__takeCount__=mn(r,a.__takeCount__):a.__views__.push({size:mn(r,l),type:t+(a.__dir__<0?"Right":"")}),a},zn.prototype[t+"Right"]=function(e){return this.reverse()[t](e).reverse()}})),It(["filter","map","takeWhile"],(function(e,t){var n=t+1,r=1==n||3==n;zn.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:ai(e,3),type:n}),t.__filtered__=t.__filtered__||r,t}})),It(["head","last"],(function(e,t){var n="take"+(t?"Right":"");zn.prototype[e]=function(){return this[n](1).value()[0]}})),It(["initial","tail"],(function(e,t){var n="drop"+(t?"":"Right");zn.prototype[e]=function(){return this.__filtered__?new zn(this):this[n](1)}})),zn.prototype.compact=function(){return this.filter(ts)},zn.prototype.find=function(e){return this.filter(e).head()},zn.prototype.findLast=function(e){return this.reverse().find(e)},zn.prototype.invokeMap=Jr((function(e,t){return"function"==typeof e?new zn(this):this.map((function(n){return Dr(n,e,t)}))})),zn.prototype.reject=function(e){return this.filter(Oo(ai(e)))},zn.prototype.slice=function(t,n){t=fu(t);var r=this;return r.__filtered__&&(t>0||n<0)?new zn(r):(t<0?r=r.takeRight(-t):t&&(r=r.drop(t)),n!==e&&(r=(n=fu(n))<0?r.dropRight(-n):r.take(n-t)),r)},zn.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},zn.prototype.toArray=function(){return this.take(l)},vr(zn.prototype,(function(t,n){var r=/^(?:filter|find|map|reject)|While$/.test(n),a=/^(?:head|last)$/.test(n),i=qn[a?"take"+("last"==n?"Right":""):n],o=a||/^find/.test(n);i&&(qn.prototype[n]=function(){var n=this.__wrapped__,u=a?[1]:arguments,s=n instanceof zn,l=u[0],c=s||Bo(n),d=function(e){var t=i.apply(qn,At([e],u));return a&&f?t[0]:t};c&&r&&"function"==typeof l&&1!=l.length&&(s=c=!1);var f=this.__chain__,p=!!this.__actions__.length,h=o&&!f,g=s&&!p;if(!o&&c){n=g?n:new zn(this);var m=t.apply(n,u);return m.__actions__.push({func:co,args:[d],thisArg:e}),new Mn(m,f)}return h&&g?t.apply(this,u):(m=this.thru(d),h?a?m.value()[0]:m.value():m)})})),It(["pop","push","shift","sort","splice","unshift"],(function(e){var t=Ve[e],n=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",r=/^(?:pop|shift)$/.test(e);qn.prototype[e]=function(){var e=arguments;if(r&&!this.__chain__){var a=this.value();return t.apply(Bo(a)?a:[],e)}return this[n]((function(n){return t.apply(Bo(n)?n:[],e)}))}})),vr(zn.prototype,(function(e,t){var n=qn[t];if(n){var r=n.name+"";Oe.call(Vn,r)||(Vn[r]=[]),Vn[r].push({name:t,func:n})}})),Vn[Ua(e,2).name]=[{name:"wrapper",func:e}],zn.prototype.clone=function(){var e=new zn(this.__wrapped__);return e.__actions__=ka(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=ka(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=ka(this.__views__),e},zn.prototype.reverse=function(){if(this.__filtered__){var e=new zn(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},zn.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,n=Bo(e),r=t<0,a=n?e.length:0,i=function(e,t,n){for(var r=-1,a=n.length;++r<a;){var i=n[r],o=i.size;switch(i.type){case"drop":e+=o;break;case"dropRight":t-=o;break;case"take":t=mn(t,e+o);break;case"takeRight":e=gn(e,t-o)}}return{start:e,end:t}}(0,a,this.__views__),o=i.start,u=i.end,s=u-o,l=r?u:o-1,c=this.__iteratees__,d=c.length,f=0,p=mn(s,this.__takeCount__);if(!n||!r&&a==s&&p==s)return ca(e,this.__actions__);var h=[];e:for(;s--&&f<p;){for(var g=-1,m=e[l+=t];++g<d;){var v=c[g],y=v.iteratee,_=v.type,w=y(m);if(2==_)m=w;else if(!w){if(1==_)continue e;break e}}h[f++]=m}return h},qn.prototype.at=fo,qn.prototype.chain=function(){return lo(this)},qn.prototype.commit=function(){return new Mn(this.value(),this.__chain__)},qn.prototype.next=function(){this.__values__===e&&(this.__values__=cu(this.value()));var t=this.__index__>=this.__values__.length;return{done:t,value:t?e:this.__values__[this.__index__++]}},qn.prototype.plant=function(t){for(var n,r=this;r instanceof Pn;){var a=Ui(r);a.__index__=0,a.__values__=e,n?i.__wrapped__=a:n=a;var i=a;r=r.__wrapped__}return i.__wrapped__=t,n},qn.prototype.reverse=function(){var t=this.__wrapped__;if(t instanceof zn){var n=t;return this.__actions__.length&&(n=new zn(this)),(n=n.reverse()).__actions__.push({func:co,args:[Yi],thisArg:e}),new Mn(n,this.__chain__)}return this.thru(Yi)},qn.prototype.toJSON=qn.prototype.valueOf=qn.prototype.value=function(){return ca(this.__wrapped__,this.__actions__)},qn.prototype.first=qn.prototype.head,Ye&&(qn.prototype[Ye]=function(){return this}),qn}();ft?((ft.exports=fn)._=fn,dt._=fn):ct._=fn}.call(Z.exports)),Z.exports);const ee=t({name:"ComponentRegistration",props:{course:{type:String,required:!0}},data:()=>({dataShapes:[],questions:[],courseDatashapes:[],courseQuestionTypes:[],courseConfig:void 0,courseDB:null}),async created(){this.courseDB=x().getCourseDB(this.course),this.courseConfig=await this.courseDB.getCourseConfig(),this.courseDatashapes=this.courseConfig.dataShapes,this.courseQuestionTypes=this.courseConfig.questionTypes;const e=U.allDataShapes();U.allDataShapesRaw().forEach((e=>{console.log(`[ComponentRegistration] Datashape:\n${JSON.stringify(e)}`)})),e.forEach((e=>{const t=this.courseDatashapes.find((t=>t.name===S.getDataShapeString(e)));this.dataShapes.push({name:e.dataShape,course:e.course,dataShape:U.getDataShape(e),registered:void 0!==t,displayable:e.displayable})})),this.dataShapes=X.sortBy(this.dataShapes,["registered","name"]);const t=U.courses.map((e=>e.name)),n=[];t.forEach((e=>{U.getCourseWare(e).questions.forEach((t=>{n.push([{course:e,questionType:t.name},t])}))})),n.forEach((e=>{const t=this.courseQuestionTypes.find((t=>S.getQuestionString(e[0])===t.name));this.questions.push({course:e[0].course,name:e[1].name,registered:void 0!==t,question:e[1]})}))},methods:{async registerShape(e){const t=this.dataShapes.find((t=>t.name===e));this.courseConfig.dataShapes.push({name:S.getDataShapeString({dataShape:t.name,course:t.course}),questionTypes:[]}),(await this.courseDB.updateCourseConfig(this.courseConfig)).ok&&(t.registered=!0)},async registerQuestionView(e){const t=this.questions.find((t=>t.name===e)),n=S.getQuestionString({course:t.course,questionType:t.name});this.courseConfig.questionTypes.push({name:n,viewList:t.question.views.map((e=>e.name?e.name:"unnamedComponent")),dataShapeList:t.question.dataShapes.map((e=>S.getDataShapeString({course:t.course,dataShape:e.name})))}),t.question.dataShapes.forEach((e=>{const r=S.getDataShapeString({course:t.course,dataShape:e.name});for(const t of this.courseConfig.dataShapes)t.name===r&&t.questionTypes.push(n)}));const r=await this.courseDB.updateCourseConfig(this.courseConfig),a=await C();r.ok&&(t.registered=!0,console.log(`[ComponentRegistration]\nQuestion: ${JSON.stringify(t)}\nCourseID: ${this.course}\n `),t.question.seedData?(console.log("[ComponentRegistration] Question has seed data!"),t.question.seedData.forEach((e=>{this.courseDB.addNote(t.course,t.question.dataShapes[0],e,a.getUsername(),[])}))):console.log("[ComponentRegistration] Question has NO seed data!"))}}}),te=(e,t)=>{const n=e.__vccOpts||e;for(const[r,a]of t)n[r]=a;return n},ne={key:1,class:"inset"},re={key:0},ae={key:1,class:"inset"},ie=te(ee,[["render",function(e,t,n,s,g,m){const v=r("v-btn");return i(),d("div",null,[t[2]||(t[2]=c("h3",null,"DataShapes",-1)),c("ul",null,[(i(!0),d(p,null,h(e.dataShapes,(n=>(i(),d("li",{key:n.name,class:"ma-2"},[n.registered?(i(),d("span",ne," (Registered) ")):(i(),a(v,{key:0,size:"small",onClick:t=>e.registerShape(n.name)},{default:o((()=>t[0]||(t[0]=[l(" Register ")]))),_:2},1032,["onClick"])),l(" "+f(n.name)+" ",1),c("ul",null,[(i(!0),d(p,null,h(n.dataShape.views,(e=>(i(),d("div",{key:e.name},[e?(i(),d("li",re,f(e.name),1)):u("",!0)])))),128))])])))),128))]),t[3]||(t[3]=c("h3",null,"Questions",-1)),c("ul",null,[(i(!0),d(p,null,h(e.questions,(n=>(i(),d("li",{key:n.name,class:"ma-2"},[n.registered?(i(),d("span",ae," (Registered) ")):(i(),a(v,{key:0,size:"small",onClick:t=>e.registerQuestionView(n.name)},{default:o((()=>t[1]||(t[1]=[l(" Register ")]))),_:2},1032,["onClick"])),l(" "+f(n.name),1)])))),128))])])}],["__scopeId","data-v-c01bca96"]]),oe=t({name:"NavigationStrategyList",props:{strategies:{type:Array,required:!0},defaultStrategyId:{type:String,default:null}},emits:["edit","delete","update:defaultStrategy"],methods:{getDisplayConfig(e){if(!e.serializedData)return"No configuration";try{const t=JSON.parse(e.serializedData);return Array.isArray(t)?`${t.length} cards in sequence`:Object.keys(t).map((e=>`${e}: ${t[e]}`)).join(", ")}catch{return e.serializedData}}}}),ue={class:"navigation-strategy-list"},se={key:0},le={class:"d-flex"},ce=te(oe,[["render",function(e,t,n,g,m,v){const y=r("v-radio"),_=r("v-list-item-title"),w=r("v-list-item-subtitle"),b=r("v-icon"),C=r("v-btn"),S=r("v-list-item"),I=r("v-list"),k=r("v-radio-group");return i(),d("div",ue,[s(k,{"model-value":e.defaultStrategyId,"onUpdate:modelValue":t[0]||(t[0]=t=>e.$emit("update:defaultStrategy",t)),density:"compact"},{default:o((()=>[s(I,{density:"compact"},{default:o((()=>[(i(!0),d(p,null,h(e.strategies,(n=>(i(),a(S,{key:n._id,lines:"two"},{prepend:o((()=>[s(y,{value:n._id},null,8,["value"])])),append:o((()=>[c("div",le,[s(C,{icon:"",size:"x-small",variant:"text",title:"Edit Strategy",onClick:t=>e.$emit("edit",n)},{default:o((()=>[s(b,{size:"small"},{default:o((()=>t[1]||(t[1]=[l("mdi-pencil")]))),_:1})])),_:2},1032,["onClick"]),s(C,{icon:"",size:"x-small",variant:"text",title:"Delete Strategy",onClick:t=>e.$emit("delete",n)},{default:o((()=>[s(b,{size:"small"},{default:o((()=>t[2]||(t[2]=[l("mdi-delete")]))),_:1})])),_:2},1032,["onClick"])])])),default:o((()=>[s(_,{class:"text-subtitle-2"},{default:o((()=>[l(f(n.name),1)])),_:2},1024),s(w,{class:"text-caption"},{default:o((()=>[l(f(n.implementingClass)+" ",1),n.description?(i(),d("span",se," • "+f(n.description),1)):u("",!0)])),_:2},1024)])),_:2},1024)))),128))])),_:1})])),_:1},8,["model-value"])])}],["__scopeId","data-v-1fcb2a5f"]]),de=t({name:"HierarchyConfigForm",props:{modelValue:{type:Object,required:!0},courseId:{type:String,required:!0}},emits:["update:modelValue"],setup(e,{emit:t}){const n=_("ui"),r=_([]),a=_(null),i=_(null),o=_(!0),u=y((()=>e.modelValue)),s=y((()=>{try{return JSON.stringify(u.value,null,2)}catch{return""}}));return F((()=>{!async function(){o.value=!0;try{const t=x().getCourseDB(e.courseId),n=await t.getCourseTagStubs();r.value=n.rows.map((e=>e.id.replace("TAG-",""))),console.log("Loaded tags:",r.value)}catch(t){console.error("Failed to load course tags:",t),a.value="Failed to load course tags"}finally{o.value=!1}}()})),w((()=>u.value),(()=>{!function(){a.value=null;try{if(!u.value.prerequisites||"object"!=typeof u.value.prerequisites)throw new Error("Prerequisites must be an object");new Set(Object.keys(u.value.prerequisites));for(const[e,t]of Object.entries(u.value.prerequisites))for(const n of t)if(n.tag===e)throw new Error(`Circular dependency: ${e} requires itself`);return!0}catch(e){return a.value=e instanceof Error?e.message:"Invalid configuration",!1}}()}),{deep:!0}),{inputMode:n,config:u,availableTags:r,loadingTags:o,jsonText:s,jsonError:i,validationError:a,addPrerequisiteRule:function(){const e=r.value[0]||"new-tag";t("update:modelValue",{...u.value,prerequisites:{...u.value.prerequisites,[e]:[]}})},removePrerequisiteRule:function(e){const n={...u.value.prerequisites};delete n[e],t("update:modelValue",{...u.value,prerequisites:n})},renamePrerequisiteTag:function(e,n){if(e===n)return;const r={...u.value.prerequisites};r[n]=r[e],delete r[e],t("update:modelValue",{...u.value,prerequisites:r})},addPrerequisite:function(e){const n=r.value.find((t=>t!==e))||"prerequisite-tag",a={...u.value.prerequisites};a[e]=[...a[e],{tag:n,masteryThreshold:{minCount:3}}],t("update:modelValue",{...u.value,prerequisites:a})},removePrerequisite:function(e,n){const r={...u.value.prerequisites};r[e]=r[e].filter(((e,t)=>t!==n)),t("update:modelValue",{...u.value,prerequisites:r})},updatePrerequisiteTag:function(e,n,r){const a={...u.value.prerequisites};a[e][n]={...a[e][n],tag:r},t("update:modelValue",{...u.value,prerequisites:a})},updateMinCount:function(e,n,r){const a="string"==typeof r?parseInt(r):r;if(isNaN(a))return;const i={...u.value.prerequisites},o=i[e][n];i[e][n]={...o,masteryThreshold:{...o.masteryThreshold,minCount:a}},t("update:modelValue",{...u.value,prerequisites:i})},updateMinElo:function(e,n,r){if(""===r||null==r){const r={...u.value.prerequisites},a=r[e][n],i={...a.masteryThreshold};return delete i.minElo,r[e][n]={...a,masteryThreshold:i},void t("update:modelValue",{...u.value,prerequisites:r})}const a="string"==typeof r?parseInt(r):r;if(isNaN(a))return;const i={...u.value.prerequisites},o=i[e][n];i[e][n]={...o,masteryThreshold:{...o.masteryThreshold,minElo:a}},t("update:modelValue",{...u.value,prerequisites:i})},updateFromJson:function(e){i.value=null;try{const n=JSON.parse(e);if(!n.prerequisites||"object"!=typeof n.prerequisites)throw new Error('Config must have "prerequisites" object');t("update:modelValue",n)}catch(n){i.value=n instanceof Error?n.message:"Invalid JSON"}}}}}),fe={class:"hierarchy-config-form"},pe={class:"prerequisites-section"},he={class:"d-flex align-center mb-2"},ge={class:"d-flex align-center mb-2"},me=te(de,[["render",function(e,t,n,g,m,v){const y=r("v-tab"),_=r("v-tabs"),w=r("v-spacer"),b=r("v-icon"),C=r("v-btn"),S=r("v-alert"),I=r("v-select"),k=r("v-divider"),x=r("v-text-field"),D=r("v-card"),V=r("v-window-item"),T=r("v-textarea"),E=r("v-window");return i(),d("div",fe,[s(_,{modelValue:e.inputMode,"onUpdate:modelValue":t[0]||(t[0]=t=>e.inputMode=t),density:"compact",class:"mb-4"},{default:o((()=>[s(y,{value:"ui"},{default:o((()=>t[2]||(t[2]=[l("Visual Editor")]))),_:1}),s(y,{value:"json"},{default:o((()=>t[3]||(t[3]=[l("JSON Editor")]))),_:1})])),_:1},8,["modelValue"]),s(E,{modelValue:e.inputMode,"onUpdate:modelValue":t[1]||(t[1]=t=>e.inputMode=t)},{default:o((()=>[s(V,{value:"ui"},{default:o((()=>[c("div",pe,[c("div",he,[t[6]||(t[6]=c("h4",{class:"text-subtitle-1"},"Prerequisites",-1)),s(w),s(C,{size:"small",color:"primary",onClick:e.addPrerequisiteRule},{default:o((()=>[s(b,{start:""},{default:o((()=>t[4]||(t[4]=[l("mdi-plus")]))),_:1}),t[5]||(t[5]=l(" Add Rule "))])),_:1},8,["onClick"])]),0===Object.keys(e.config.prerequisites).length?(i(),a(S,{key:0,type:"info",density:"compact"},{default:o((()=>t[7]||(t[7]=[l(' No prerequisites defined. Click "Add Rule" to gate a tag behind prerequisite mastery. ')]))),_:1})):u("",!0),(i(!0),d(p,null,h(e.config.prerequisites,((n,r)=>(i(),a(D,{key:r,variant:"outlined",class:"mb-3 pa-3"},{default:o((()=>[c("div",ge,[s(I,{"model-value":r,"onUpdate:modelValue":t=>e.renamePrerequisiteTag(r,t),items:e.availableTags,loading:e.loadingTags,disabled:e.loadingTags,label:"Gated Tag",hint:"This tag will be locked until prerequisites are met","persistent-hint":"",density:"compact",style:{"max-width":"300px"}},null,8,["model-value","onUpdate:modelValue","items","loading","disabled"]),s(w),s(C,{icon:"",size:"small",color:"error",onClick:t=>e.removePrerequisiteRule(r)},{default:o((()=>[s(b,null,{default:o((()=>t[8]||(t[8]=[l("mdi-delete")]))),_:1})])),_:2},1032,["onClick"])]),s(k,{class:"my-2"}),t[12]||(t[12]=c("div",{class:"text-caption mb-2"},"Requires mastery of:",-1)),(i(!0),d(p,null,h(n,((n,a)=>(i(),d("div",{key:`${r}-${a}`,class:"d-flex align-center gap-2 mb-2"},[s(I,{"model-value":n.tag,"onUpdate:modelValue":t=>e.updatePrerequisiteTag(r,a,t),items:e.availableTags,loading:e.loadingTags,disabled:e.loadingTags,label:"Prerequisite Tag",density:"compact",style:{flex:"1","max-width":"200px"}},null,8,["model-value","onUpdate:modelValue","items","loading","disabled"]),s(x,{"model-value":n.masteryThreshold?.minCount,"onUpdate:modelValue":t=>e.updateMinCount(r,a,t),label:"Min Count",type:"number",density:"compact",style:{"max-width":"100px"},hint:"Min interactions","persistent-hint":""},null,8,["model-value","onUpdate:modelValue"]),s(x,{"model-value":n.masteryThreshold?.minElo,"onUpdate:modelValue":t=>e.updateMinElo(r,a,t),label:"Min ELO",type:"number",density:"compact",style:{"max-width":"100px"},hint:"Optional","persistent-hint":""},null,8,["model-value","onUpdate:modelValue"]),s(C,{icon:"",size:"small",onClick:t=>e.removePrerequisite(r,a)},{default:o((()=>[s(b,null,{default:o((()=>t[9]||(t[9]=[l("mdi-minus-circle")]))),_:1})])),_:2},1032,["onClick"])])))),128)),s(C,{size:"small",variant:"text",onClick:t=>e.addPrerequisite(r)},{default:o((()=>[s(b,{start:""},{default:o((()=>t[10]||(t[10]=[l("mdi-plus")]))),_:1}),t[11]||(t[11]=l(" Add Prerequisite "))])),_:2},1032,["onClick"])])),_:2},1024)))),128))])])),_:1}),s(V,{value:"json"},{default:o((()=>[s(T,{"model-value":e.jsonText,"onUpdate:modelValue":e.updateFromJson,label:"Configuration JSON",rows:"15",placeholder:'{"prerequisites": {"cvc-words": [{"tag": "letter-sounds", "masteryThreshold": {"minCount": 10}}]}}',hint:"Paste or edit JSON configuration directly","persistent-hint":"","auto-grow":""},null,8,["model-value","onUpdate:modelValue"]),e.jsonError?(i(),a(S,{key:0,type:"error",density:"compact",class:"mt-2"},{default:o((()=>[l(f(e.jsonError),1)])),_:1})):e.jsonText?(i(),a(S,{key:1,type:"success",density:"compact",class:"mt-2"},{default:o((()=>t[13]||(t[13]=[l(" Valid configuration ")]))),_:1})):u("",!0)])),_:1})])),_:1},8,["modelValue"]),e.validationError?(i(),a(S,{key:0,type:"error",density:"compact",class:"mt-3"},{default:o((()=>[l(f(e.validationError),1)])),_:1})):u("",!0)])}],["__scopeId","data-v-470885e1"]]),ve=t({name:"InterferenceConfigForm",props:{modelValue:{type:Object,required:!0},courseId:{type:String,required:!0}},emits:["update:modelValue"],setup(e,{emit:t}){const n=_("ui"),r=_([]),a=_(null),i=_(null),o=_(!0),u=y((()=>e.modelValue)),s=y((()=>{try{return JSON.stringify(u.value,null,2)}catch{return""}}));return F((()=>{!async function(){o.value=!0;try{const t=x().getCourseDB(e.courseId),n=await t.getCourseTagStubs();r.value=n.rows.map((e=>e.id.replace("TAG-","")))}catch(t){console.error("Failed to load course tags:",t),a.value="Failed to load course tags"}finally{o.value=!1}}()})),w((()=>u.value),(()=>{!function(){a.value=null;try{if(!u.value.interferenceSets||!Array.isArray(u.value.interferenceSets))throw new Error("Interference sets must be an array");for(const e of u.value.interferenceSets){if(!Array.isArray(e.tags)||e.tags.length<2)throw new Error("Each interference group must have at least 2 tags");if(void 0!==e.decay&&(e.decay<0||e.decay>1))throw new Error("Decay values must be between 0 and 1")}return!0}catch(e){return a.value=e instanceof Error?e.message:"Invalid configuration",!1}}()}),{deep:!0}),{inputMode:n,config:u,availableTags:r,loadingTags:o,jsonText:s,jsonError:i,validationError:a,updateMinCount:function(e){const n="string"==typeof e?parseInt(e):e;isNaN(n)||t("update:modelValue",{...u.value,maturityThreshold:{...u.value.maturityThreshold,minCount:n}})},updateMinElo:function(e){if(""===e||null==e){const e={...u.value.maturityThreshold};return delete e.minElo,void t("update:modelValue",{...u.value,maturityThreshold:e})}const n="string"==typeof e?parseInt(e):e;isNaN(n)||t("update:modelValue",{...u.value,maturityThreshold:{...u.value.maturityThreshold,minElo:n}})},updateMinElapsedDays:function(e){const n="string"==typeof e?parseInt(e):e;isNaN(n)||t("update:modelValue",{...u.value,maturityThreshold:{...u.value.maturityThreshold,minElapsedDays:n}})},updateDefaultDecay:function(e){const n="string"==typeof e?parseFloat(e):e;isNaN(n)||t("update:modelValue",{...u.value,defaultDecay:Math.max(0,Math.min(1,n))})},addInterferenceGroup:function(){t("update:modelValue",{...u.value,interferenceSets:[...u.value.interferenceSets,{tags:[],decay:u.value.defaultDecay||.8}]})},removeInterferenceGroup:function(e){t("update:modelValue",{...u.value,interferenceSets:u.value.interferenceSets.filter(((t,n)=>n!==e))})},updateGroupTags:function(e,n){const r=[...u.value.interferenceSets];r[e]={...r[e],tags:n},t("update:modelValue",{...u.value,interferenceSets:r})},updateGroupDecay:function(e,n){const r="string"==typeof n?parseFloat(n):n;if(isNaN(r))return;const a=[...u.value.interferenceSets];a[e]={...a[e],decay:Math.max(0,Math.min(1,r))},t("update:modelValue",{...u.value,interferenceSets:a})},updateFromJson:function(e){i.value=null;try{const n=JSON.parse(e);if(!n.interferenceSets||!Array.isArray(n.interferenceSets))throw new Error('Config must have "interferenceSets" array');t("update:modelValue",n)}catch(n){i.value=n instanceof Error?n.message:"Invalid JSON"}}}}}),ye={class:"interference-config-form"},_e={class:"maturity-section mb-4"},we={class:"mb-4"},be={class:"interference-groups-section"},Ce={class:"d-flex align-center mb-2"},Se={class:"d-flex align-center mb-2"},Ie={class:"text-subtitle-2"},ke=te(ve,[["render",function(e,t,n,g,m,v){const y=r("v-tab"),_=r("v-tabs"),w=r("v-text-field"),b=r("v-slider"),C=r("v-spacer"),S=r("v-icon"),I=r("v-btn"),k=r("v-alert"),x=r("v-select"),D=r("v-card"),V=r("v-window-item"),T=r("v-textarea"),E=r("v-window");return i(),d("div",ye,[s(_,{modelValue:e.inputMode,"onUpdate:modelValue":t[0]||(t[0]=t=>e.inputMode=t),density:"compact",class:"mb-4"},{default:o((()=>[s(y,{value:"ui"},{default:o((()=>t[2]||(t[2]=[l("Visual Editor")]))),_:1}),s(y,{value:"json"},{default:o((()=>t[3]||(t[3]=[l("JSON Editor")]))),_:1})])),_:1},8,["modelValue"]),s(E,{modelValue:e.inputMode,"onUpdate:modelValue":t[1]||(t[1]=t=>e.inputMode=t)},{default:o((()=>[s(V,{value:"ui"},{default:o((()=>[c("div",_e,[t[4]||(t[4]=c("h4",{class:"text-subtitle-1 mb-2"},"Maturity Threshold",-1)),t[5]||(t[5]=c("p",{class:"text-caption mb-3"},'Tags below this threshold are considered "immature" (still being learned)',-1)),s(w,{"model-value":e.config.maturityThreshold?.minCount,"onUpdate:modelValue":e.updateMinCount,label:"Min Count",type:"number",hint:"Minimum interactions required (default: 10)","persistent-hint":"",density:"compact",class:"mb-2"},null,8,["model-value","onUpdate:modelValue"]),s(w,{"model-value":e.config.maturityThreshold?.minElo,"onUpdate:modelValue":e.updateMinElo,label:"Min ELO (optional)",type:"number",hint:"Minimum ELO score for maturity","persistent-hint":"",density:"compact",class:"mb-2"},null,8,["model-value","onUpdate:modelValue"]),s(w,{"model-value":e.config.maturityThreshold?.minElapsedDays,"onUpdate:modelValue":e.updateMinElapsedDays,label:"Min Elapsed Days",type:"number",hint:"Minimum time since first interaction (default: 3)","persistent-hint":"",density:"compact"},null,8,["model-value","onUpdate:modelValue"])]),c("div",we,[s(b,{"model-value":e.config.defaultDecay||.8,"onUpdate:modelValue":e.updateDefaultDecay,label:"Default Decay",min:0,max:1,step:.05,"thumb-label":"",hint:"Default interference strength for groups without explicit decay (0 = no effect, 1 = maximum avoidance)","persistent-hint":""},{append:o((()=>[s(w,{"model-value":e.config.defaultDecay||.8,"onUpdate:modelValue":e.updateDefaultDecay,type:"number",style:{width:"80px"},density:"compact","hide-details":"",min:0,max:1,step:.05},null,8,["model-value","onUpdate:modelValue"])])),_:1},8,["model-value","onUpdate:modelValue"])]),c("div",be,[c("div",Ce,[t[8]||(t[8]=c("h4",{class:"text-subtitle-1"},"Interference Groups",-1)),s(C),s(I,{size:"small",color:"primary",onClick:e.addInterferenceGroup},{default:o((()=>[s(S,{start:""},{default:o((()=>t[6]||(t[6]=[l("mdi-plus")]))),_:1}),t[7]||(t[7]=l(" Add Group "))])),_:1},8,["onClick"])]),0===e.config.interferenceSets.length?(i(),a(k,{key:0,type:"info",density:"compact"},{default:o((()=>t[9]||(t[9]=[l(' No interference groups defined. Click "Add Group" to create a set of tags that interfere with each other. ')]))),_:1})):u("",!0),(i(!0),d(p,null,h(e.config.interferenceSets,((n,r)=>(i(),a(D,{key:r,variant:"outlined",class:"mb-3 pa-3"},{default:o((()=>[c("div",Se,[c("h5",Ie,"Group "+f(r+1),1),s(C),s(I,{icon:"",size:"small",color:"error",onClick:t=>e.removeInterferenceGroup(r)},{default:o((()=>[s(S,null,{default:o((()=>t[10]||(t[10]=[l("mdi-delete")]))),_:1})])),_:2},1032,["onClick"])]),s(x,{"model-value":n.tags,"onUpdate:modelValue":t=>e.updateGroupTags(r,t),items:e.availableTags,loading:e.loadingTags,disabled:e.loadingTags,label:"Interfering Tags",hint:"Tags that interfere with each other","persistent-hint":"",multiple:"",chips:"","closable-chips":"",density:"compact",class:"mb-3"},null,8,["model-value","onUpdate:modelValue","items","loading","disabled"]),s(b,{"model-value":void 0!==n.decay?n.decay:e.config.defaultDecay||.8,"onUpdate:modelValue":t=>e.updateGroupDecay(r,t),label:"Decay Strength",min:0,max:1,step:.05,"thumb-label":"",hint:"How strongly these tags interfere (higher = stronger avoidance)","persistent-hint":""},{append:o((()=>[s(w,{"model-value":void 0!==n.decay?n.decay:e.config.defaultDecay||.8,"onUpdate:modelValue":t=>e.updateGroupDecay(r,t),type:"number",style:{width:"80px"},density:"compact","hide-details":"",min:0,max:1,step:.05},null,8,["model-value","onUpdate:modelValue"])])),_:2},1032,["model-value","onUpdate:modelValue"])])),_:2},1024)))),128))])])),_:1}),s(V,{value:"json"},{default:o((()=>[s(T,{"model-value":e.jsonText,"onUpdate:modelValue":e.updateFromJson,label:"Configuration JSON",rows:"20",placeholder:'{"interferenceSets": [{"tags": ["letter-b", "letter-d"], "decay": 0.9}], "maturityThreshold": {"minCount": 10}, "defaultDecay": 0.8}',hint:"Paste or edit JSON configuration directly","persistent-hint":"","auto-grow":""},null,8,["model-value","onUpdate:modelValue"]),e.jsonError?(i(),a(k,{key:0,type:"error",density:"compact",class:"mt-2"},{default:o((()=>[l(f(e.jsonError),1)])),_:1})):e.jsonText?(i(),a(k,{key:1,type:"success",density:"compact",class:"mt-2"},{default:o((()=>t[11]||(t[11]=[l(" Valid configuration ")]))),_:1})):u("",!0)])),_:1})])),_:1},8,["modelValue"]),e.validationError?(i(),a(k,{key:0,type:"error",density:"compact",class:"mt-3"},{default:o((()=>[l(f(e.validationError),1)])),_:1})):u("",!0)])}],["__scopeId","data-v-20d01937"]]),xe=t({name:"RelativePriorityConfigForm",props:{modelValue:{type:Object,required:!0},courseId:{type:String,required:!0}},emits:["update:modelValue"],setup(e,{emit:t}){const n=_("ui"),r=_([]),a=_(null),i=_(null),o=_(!0),u=y((()=>e.modelValue)),s=y((()=>{try{return JSON.stringify(u.value,null,2)}catch{return""}}));return F((()=>{!async function(){o.value=!0;try{const t=x().getCourseDB(e.courseId),n=await t.getCourseTagStubs();r.value=n.rows.map((e=>e.id.replace("TAG-","")))}catch(t){console.error("Failed to load course tags:",t),a.value="Failed to load course tags"}finally{o.value=!1}}()})),w((()=>u.value),(()=>{!function(){a.value=null;try{if(!u.value.tagPriorities||"object"!=typeof u.value.tagPriorities)throw new Error("Tag priorities must be an object");for(const[e,t]of Object.entries(u.value.tagPriorities))if("number"!=typeof t||t<0||t>1)throw new Error(`Priority for ${e} must be between 0 and 1`);return!0}catch(e){return a.value=e instanceof Error?e.message:"Invalid configuration",!1}}()}),{deep:!0}),{inputMode:n,config:u,availableTags:r,loadingTags:o,combineModes:[{title:"Max (highest priority wins)",value:"max"},{title:"Average (average all priorities)",value:"average"},{title:"Min (lowest priority wins)",value:"min"}],jsonText:s,jsonError:i,validationError:a,updateDefaultPriority:function(e){const n="string"==typeof e?parseFloat(e):e;isNaN(n)||t("update:modelValue",{...u.value,defaultPriority:Math.max(0,Math.min(1,n))})},updateCombineMode:function(e){t("update:modelValue",{...u.value,combineMode:e})},updatePriorityInfluence:function(e){const n="string"==typeof e?parseFloat(e):e;isNaN(n)||t("update:modelValue",{...u.value,priorityInfluence:Math.max(0,Math.min(1,n))})},getTagPriority:function(e){return void 0!==u.value.tagPriorities[e]?u.value.tagPriorities[e]:void 0!==u.value.defaultPriority?u.value.defaultPriority:.5},updateTagPriority:function(e,n){const r="string"==typeof n?parseFloat(n):n;isNaN(r)||t("update:modelValue",{...u.value,tagPriorities:{...u.value.tagPriorities,[e]:Math.max(0,Math.min(1,r))}})},updateFromJson:function(e){i.value=null;try{const n=JSON.parse(e);if(!n.tagPriorities||"object"!=typeof n.tagPriorities)throw new Error('Config must have "tagPriorities" object');t("update:modelValue",n)}catch(n){i.value=n instanceof Error?n.message:"Invalid JSON"}}}}}),De={class:"relative-priority-config-form"},Ve={class:"config-options mb-4"},Te={class:"tag-priorities-section"},Ee={key:2,class:"tag-priority-list"},Ae=t({name:"NavigationStrategyEditor",components:{NavigationStrategyList:ce,HierarchyConfigForm:me,InterferenceConfigForm:ke,RelativePriorityConfigForm:te(xe,[["render",function(e,t,n,g,m,v){const y=r("v-tab"),_=r("v-tabs"),w=r("v-text-field"),b=r("v-slider"),C=r("v-select"),S=r("v-alert"),I=r("v-window-item"),k=r("v-textarea"),x=r("v-window");return i(),d("div",De,[s(_,{modelValue:e.inputMode,"onUpdate:modelValue":t[0]||(t[0]=t=>e.inputMode=t),density:"compact",class:"mb-4"},{default:o((()=>[s(y,{value:"ui"},{default:o((()=>t[2]||(t[2]=[l("Visual Editor")]))),_:1}),s(y,{value:"json"},{default:o((()=>t[3]||(t[3]=[l("JSON Editor")]))),_:1})])),_:1},8,["modelValue"]),s(x,{modelValue:e.inputMode,"onUpdate:modelValue":t[1]||(t[1]=t=>e.inputMode=t)},{default:o((()=>[s(I,{value:"ui"},{default:o((()=>[c("div",Ve,[t[4]||(t[4]=c("h4",{class:"text-subtitle-1 mb-2"},"Priority Configuration",-1)),s(b,{"model-value":void 0!==e.config.defaultPriority?e.config.defaultPriority:.5,"onUpdate:modelValue":e.updateDefaultPriority,label:"Default Priority",min:0,max:1,step:.05,"thumb-label":"",hint:"Priority for tags not explicitly listed (0.5 = neutral)","persistent-hint":"",class:"mb-3"},{append:o((()=>[s(w,{"model-value":void 0!==e.config.defaultPriority?e.config.defaultPriority:.5,"onUpdate:modelValue":e.updateDefaultPriority,type:"number",style:{width:"80px"},density:"compact","hide-details":"",min:0,max:1,step:.05},null,8,["model-value","onUpdate:modelValue"])])),_:1},8,["model-value","onUpdate:modelValue"]),s(C,{"model-value":e.config.combineMode||"max","onUpdate:modelValue":e.updateCombineMode,label:"Combine Mode",items:e.combineModes,hint:"How to combine priorities when a card has multiple tags","persistent-hint":"",density:"compact",class:"mb-3"},null,8,["model-value","onUpdate:modelValue","items"]),s(b,{"model-value":void 0!==e.config.priorityInfluence?e.config.priorityInfluence:.5,"onUpdate:modelValue":e.updatePriorityInfluence,label:"Priority Influence",min:0,max:1,step:.05,"thumb-label":"",hint:"How strongly priority affects scoring (0 = no effect, 1 = maximum effect)","persistent-hint":""},{append:o((()=>[s(w,{"model-value":void 0!==e.config.priorityInfluence?e.config.priorityInfluence:.5,"onUpdate:modelValue":e.updatePriorityInfluence,type:"number",style:{width:"80px"},density:"compact","hide-details":"",min:0,max:1,step:.05},null,8,["model-value","onUpdate:modelValue"])])),_:1},8,["model-value","onUpdate:modelValue"])]),c("div",Te,[t[7]||(t[7]=c("h4",{class:"text-subtitle-1 mb-2"},"Tag Priorities",-1)),t[8]||(t[8]=c("p",{class:"text-caption mb-3"},"Set priority for each tag (1.0 = highest priority, 0.0 = lowest)",-1)),e.loadingTags?(i(),a(S,{key:0,type:"info",density:"compact"},{default:o((()=>t[5]||(t[5]=[l(" Loading tags... ")]))),_:1})):0===e.availableTags.length?(i(),a(S,{key:1,type:"warning",density:"compact"},{default:o((()=>t[6]||(t[6]=[l(" No tags available in course ")]))),_:1})):(i(),d("div",Ee,[(i(!0),d(p,null,h(e.availableTags,(t=>(i(),d("div",{key:t,class:"tag-priority-item mb-3"},[s(b,{"model-value":e.getTagPriority(t),"onUpdate:modelValue":n=>e.updateTagPriority(t,n),label:t,min:0,max:1,step:.05,"thumb-label":"",density:"compact"},{append:o((()=>[s(w,{"model-value":e.getTagPriority(t),"onUpdate:modelValue":n=>e.updateTagPriority(t,n),type:"number",style:{width:"80px"},density:"compact","hide-details":"",min:0,max:1,step:.05},null,8,["model-value","onUpdate:modelValue"])])),_:2},1032,["model-value","onUpdate:modelValue","label"])])))),128))]))])])),_:1}),s(I,{value:"json"},{default:o((()=>[s(k,{"model-value":e.jsonText,"onUpdate:modelValue":e.updateFromJson,label:"Configuration JSON",rows:"15",placeholder:'{"tagPriorities": {"letter-s": 0.95, "letter-t": 0.90}, "defaultPriority": 0.5, "combineMode": "max", "priorityInfluence": 0.5}',hint:"Paste or edit JSON configuration directly","persistent-hint":"","auto-grow":""},null,8,["model-value","onUpdate:modelValue"]),e.jsonError?(i(),a(S,{key:0,type:"error",density:"compact",class:"mt-2"},{default:o((()=>[l(f(e.jsonError),1)])),_:1})):e.jsonText?(i(),a(S,{key:1,type:"success",density:"compact",class:"mt-2"},{default:o((()=>t[9]||(t[9]=[l(" Valid configuration ")]))),_:1})):u("",!0)])),_:1})])),_:1},8,["modelValue"]),e.validationError?(i(),a(S,{key:0,type:"error",density:"compact",class:"mt-3"},{default:o((()=>[l(f(e.validationError),1)])),_:1})):u("",!0)])}],["__scopeId","data-v-573b50bd"]])},props:{courseId:{type:String,required:!0}},data:()=>({strategies:[],loading:!0,showDeleteConfirm:!1,strategyToDelete:null,strategyTypes:[{label:"Hierarchy Definition",value:"hierarchy"},{label:"Interference Mitigator",value:"interference"},{label:"Relative Priority",value:"relativePriority"}],newStrategy:{type:"hierarchy",name:"",description:"",config:{cardIds:[]}},editingStrategy:null,defaultStrategyId:null}),async created(){await this.loadStrategies()},watch:{"newStrategy.type"(e){this.newStrategy.config=this.getDefaultConfig(e)}},methods:{getDefaultConfig(e){switch(e){case"hierarchy":return{prerequisites:{}};case"interference":return{interferenceSets:[],maturityThreshold:{minCount:10,minElapsedDays:3},defaultDecay:.8};case"relativePriority":return{tagPriorities:{},defaultPriority:.5,combineMode:"max",priorityInfluence:.5};default:return{}}},getStrategyTypeFromClass(e){switch(e){case A.HIERARCHY:return"hierarchy";case A.INTERFERENCE:return"interference";case A.RELATIVE_PRIORITY:return"relativePriority";default:return"hierarchy"}},parseSerializedData(e,t){try{return JSON.parse(t)}catch(n){return console.error("Failed to parse strategy data:",n),this.getDefaultConfig(e)}},async loadStrategies(){this.loading=!0;try{const e=x().getCourseDB(this.courseId),[t,n]=await Promise.all([e.getAllNavigationStrategies(),e.getCourseConfig()]);this.strategies=t,this.defaultStrategyId=n.defaultNavigationStrategyId||null}catch(e){console.error("Failed to load navigation strategies:",e),this.strategies=[{_id:"NAVIGATION_STRATEGY-ELO",docType:E.NAVIGATION_STRATEGY,name:"ELO",description:"Default ELO-based navigation strategy",implementingClass:A.ELO,course:this.courseId,serializedData:"",author:"system"}]}this.loading=!1},async setDefaultStrategy(e){try{this.loading=!0;const t=x().getCourseDB(this.courseId),n=await t.getCourseConfig();n.defaultNavigationStrategyId=e,await t.updateCourseConfig(n),this.defaultStrategyId=e,alert("Default strategy updated!")}catch(t){console.error("Failed to set default strategy:",t),alert("Error updating default strategy. See console for details.")}finally{this.loading=!1}},startNewStrategy(){const e="hierarchy";this.newStrategy={type:e,name:"",description:"",config:this.getDefaultConfig(e)},this.editingStrategy=null},cancelEdit(){this.startNewStrategy()},editStrategy(e){const t=this.getStrategyTypeFromClass(e.implementingClass),n=this.parseSerializedData(t,e.serializedData);this.newStrategy={type:t,name:e.name,description:e.description,config:n},this.editingStrategy=e},async saveStrategy(){if(this.newStrategy.name)if("hardcoded"!==this.newStrategy.type||0!==this.newStrategy.config.cardIds.length){if("hierarchy"===this.newStrategy.type&&0===Object.keys(this.newStrategy.config.prerequisites||{}).length)return void alert("At least one prerequisite rule is required for hierarchy strategy.");if("interference"!==this.newStrategy.type||this.newStrategy.config.interferenceSets&&0!==this.newStrategy.config.interferenceSets.length)if("relativePriority"!==this.newStrategy.type||this.newStrategy.config.tagPriorities&&0!==Object.keys(this.newStrategy.config.tagPriorities).length){this.loading=!0;try{const e=x(),t=e.getUserDB().getUsername(),n=e.getCourseDB(this.courseId),r={hierarchy:A.HIERARCHY,interference:A.INTERFERENCE,relativePriority:A.RELATIVE_PRIORITY};let a=JSON.stringify(this.newStrategy.config);if(this.editingStrategy){const e={...this.editingStrategy,name:this.newStrategy.name,description:this.newStrategy.description,implementingClass:r[this.newStrategy.type],serializedData:a};await n.updateNavigationStrategy(this.editingStrategy._id,e)}else{const e={_id:`NAVIGATION_STRATEGY-${Date.now()}`,docType:E.NAVIGATION_STRATEGY,name:this.newStrategy.name,description:this.newStrategy.description,implementingClass:r[this.newStrategy.type],author:t,course:this.courseId,serializedData:a};await n.addNavigationStrategy(e)}await this.loadStrategies(),this.startNewStrategy()}catch(e){console.error("Failed to save new strategy:",e),alert("Error saving strategy. See console for details.")}this.loading=!1}else alert("At least one tag priority must be set for relative priority strategy.");else alert("At least one interference group is required for interference strategy.")}else alert("At least one card ID is required for hardcoded order strategy.");else alert("Strategy Name is required.")},confirmDeleteStrategy(e){this.strategyToDelete=e,this.showDeleteConfirm=!0},async deleteStrategy(){if(this.strategyToDelete){this.loading=!0;try{const e=x().getCourseDB(this.courseId),t={_id:this.strategyToDelete._id,docType:E.NAVIGATION_STRATEGY,name:"DELETED",description:"This strategy has been deleted",implementingClass:"",course:this.courseId,serializedData:""};await e.updateNavigationStrategy(this.strategyToDelete._id,t),console.log(`Strategy ${this.strategyToDelete._id} marked as deleted`),this.strategies=this.strategies.filter((e=>e._id!==this.strategyToDelete?._id)),this.showDeleteConfirm=!1,this.strategyToDelete=null}catch(e){console.error("Failed to delete navigation strategy:",e)}this.loading=!1}}}}),Fe={class:"navigation-strategy-editor"},Oe={key:0,class:"text-center pa-4"},Re={key:1,class:"editor-layout"},je={class:"strategy-list-column"},Ue={class:"d-flex align-center mb-2"},qe={class:"strategy-form-column"},Ne={class:"form-header d-flex align-center mb-3"},Pe={class:"text-h6"},Me={class:"form-actions mt-4"},ze=te(Ae,[["render",function(e,t,n,p,h,g){const m=r("v-progress-circular"),v=r("v-spacer"),y=r("v-icon"),_=r("v-btn"),w=r("v-alert"),b=r("navigation-strategy-list"),C=r("v-select"),S=r("v-text-field"),I=r("hierarchy-config-form"),k=r("interference-config-form"),x=r("relative-priority-config-form"),D=r("v-card-title"),V=r("v-card-text"),T=r("v-card-actions"),E=r("v-card"),A=r("v-dialog");return i(),d("div",Fe,[e.loading?(i(),d("div",Oe,[s(m,{indeterminate:"",color:"secondary"})])):(i(),d("div",Re,[c("div",je,[c("div",Ue,[t[10]||(t[10]=c("h3",{class:"text-h6"},"Strategies",-1)),s(v),s(_,{size:"small",color:"primary",onClick:e.startNewStrategy,density:"compact"},{default:o((()=>[s(y,{start:"",size:"small"},{default:o((()=>t[8]||(t[8]=[l("mdi-plus")]))),_:1}),t[9]||(t[9]=l(" New "))])),_:1},8,["onClick"])]),0===e.strategies.length?(i(),a(w,{key:0,type:"info",density:"compact"},{default:o((()=>t[11]||(t[11]=[l(" No strategies defined ")]))),_:1})):(i(),a(b,{key:1,strategies:e.strategies,"default-strategy-id":e.defaultStrategyId,"onUpdate:defaultStrategy":e.setDefaultStrategy,onEdit:e.editStrategy,onDelete:e.confirmDeleteStrategy},null,8,["strategies","default-strategy-id","onUpdate:defaultStrategy","onEdit","onDelete"]))]),c("div",qe,[c("div",Ne,[c("h3",Pe,f(e.editingStrategy?"Edit Strategy":"New Strategy"),1),s(v),e.editingStrategy?(i(),a(_,{key:0,size:"small",variant:"text",onClick:e.cancelEdit,density:"compact"},{default:o((()=>t[12]||(t[12]=[l(" Cancel ")]))),_:1},8,["onClick"])):u("",!0)]),s(C,{modelValue:e.newStrategy.type,"onUpdate:modelValue":t[0]||(t[0]=t=>e.newStrategy.type=t),label:"Type",items:e.strategyTypes,"item-title":"label","item-value":"value",density:"compact",class:"mb-3"},null,8,["modelValue","items"]),s(S,{modelValue:e.newStrategy.name,"onUpdate:modelValue":t[1]||(t[1]=t=>e.newStrategy.name=t),label:"Name",density:"compact",class:"mb-3"},null,8,["modelValue"]),s(S,{modelValue:e.newStrategy.description,"onUpdate:modelValue":t[2]||(t[2]=t=>e.newStrategy.description=t),label:"Description",density:"compact",class:"mb-3"},null,8,["modelValue"]),"hierarchy"===e.newStrategy.type?(i(),a(I,{key:0,modelValue:e.newStrategy.config,"onUpdate:modelValue":t[3]||(t[3]=t=>e.newStrategy.config=t),"course-id":e.courseId},null,8,["modelValue","course-id"])):"interference"===e.newStrategy.type?(i(),a(k,{key:1,modelValue:e.newStrategy.config,"onUpdate:modelValue":t[4]||(t[4]=t=>e.newStrategy.config=t),"course-id":e.courseId},null,8,["modelValue","course-id"])):"relativePriority"===e.newStrategy.type?(i(),a(x,{key:2,modelValue:e.newStrategy.config,"onUpdate:modelValue":t[5]||(t[5]=t=>e.newStrategy.config=t),"course-id":e.courseId},null,8,["modelValue","course-id"])):(i(),a(w,{key:3,type:"warning",density:"compact"},{default:o((()=>[l(" Unknown strategy type: "+f(e.newStrategy.type),1)])),_:1})),c("div",Me,[s(_,{color:"primary",onClick:e.saveStrategy,disabled:!e.newStrategy.name,size:"small"},{default:o((()=>[l(f(e.editingStrategy?"Update":"Create"),1)])),_:1},8,["onClick","disabled"]),e.editingStrategy?(i(),a(_,{key:0,variant:"text",onClick:e.cancelEdit,size:"small"},{default:o((()=>t[13]||(t[13]=[l(" Cancel ")]))),_:1},8,["onClick"])):u("",!0)])]),s(A,{modelValue:e.showDeleteConfirm,"onUpdate:modelValue":t[7]||(t[7]=t=>e.showDeleteConfirm=t),"max-width":"400px"},{default:o((()=>[s(E,null,{default:o((()=>[s(D,{class:"text-subtitle-1"},{default:o((()=>t[14]||(t[14]=[l("Delete Strategy")]))),_:1}),s(V,null,{default:o((()=>[l('Delete "'+f(e.strategyToDelete?.name)+'"?',1)])),_:1}),s(T,null,{default:o((()=>[s(v),s(_,{size:"small",onClick:t[6]||(t[6]=t=>e.showDeleteConfirm=!1)},{default:o((()=>t[15]||(t[15]=[l("Cancel")]))),_:1}),s(_,{size:"small",color:"error",onClick:e.deleteStrategy},{default:o((()=>t[16]||(t[16]=[l("Delete")]))),_:1},8,["onClick"])])),_:1})])),_:1})])),_:1},8,["modelValue"])]))])}],["__scopeId","data-v-1cb6c357"]]);function Be(e){return null!==e&&"object"==typeof e&&"clearData"in e&&"validate"in e&&"function"==typeof e.clearData&&"function"==typeof e.validate}const $e={status:e.ok,msg:""};function Le(t){const n={status:e.error,msg:"This input must be a number"};return r=t,isNaN(r-parseFloat(r))?n:$e;var r}function We(t){const n={status:e.error,msg:"This input must be an integer (..., -2, -1, 0, 1, 2, ...)."};return Le(t).status===e.error?Le(t):/^[+,-]?\s?\d+$/.test(t)?$e:n}const Je=n("fieldStore",{state:()=>({dataShape:null,inputs:{},mediaInputs:{},inputIsValid:!1,validation:{},convertedInput:{},previewInput:{}}),getters:{isValidated(){return this.inputIsValid},getPreview:e=>e.inputIsValid?e.previewInput:{},getConverted:e=>e.inputIsValid?e.convertedInput:{}},actions:{$reset(){console.log("[FieldInputStore].reset()"),this.inputs={},this.mediaInputs={},this.validation={},this.convertedInput={},this.previewInput={},this.inputIsValid=!1;for(let e=1;e<=10;e++){const t=`audio-${e}`,n=`image-${e}`;delete this.mediaInputs[t],delete this.mediaInputs[n]}},setFieldValue(e,t){this.inputs[e]=t,this.validate(),this.convert()},setMedia(e,t){console.log(`[FieldInputStore].setMedia: ${e}`),this.mediaInputs[e]=t,this.convert()},validate(){if(this.validation={},null!==this.dataShape){this.inputIsValid=!0;for(const t of this.dataShape.fields)t.validator&&(t.validator.test(this.inputs[t.name]).status===e.ok?this.validation[t.name]=!0:(this.inputIsValid=!1,this.validation[t.name]=!1))}else this.inputIsValid=!1},convert(){this.convertedInput={},this.dataShape?.fields.forEach((e=>{this.convertedInput[e.name]=L[e.type].databaseConverter(this.inputs[e.name]),this.previewInput[e.name]=L[e.type].previewConverter(this.inputs[e.name])}));for(let e=1;e<11;e++){const t=`audio-${e}`,n=this.mediaInputs[t];if(!n)break;this.convertedInput[t]=L[O.AUDIO].databaseConverter(n),this.previewInput[t]=L[O.AUDIO].previewConverter(n)}for(let e=1;e<11;e++){const t=`image-${e}`,n=this.mediaInputs[t];if(!n)break;this.convertedInput[t]=L[O.IMAGE].databaseConverter(n),this.previewInput[t]=L[O.IMAGE].previewConverter(n)}},clearMediaEntries(){for(let e=1;e<=10;e++)delete this.mediaInputs[`audio-${e}`],delete this.mediaInputs[`image-${e}`],delete this.convertedInput[`audio-${e}`],delete this.convertedInput[`image-${e}`],delete this.previewInput[`audio-${e}`],delete this.previewInput[`image-${e}`]},clearField(e){delete this.inputs[e],delete this.validation[e],delete this.convertedInput[e],delete this.previewInput[e]}}}),Ge=t({name:"FieldInput",props:{autofocus:Boolean,field:{type:Object,required:!0}},setup(t){const n=Je(),r=_(null),a=y({get:()=>n.inputs[t.field.name],set:e=>n.setFieldValue(t.field.name,e)});w(a,((e,r)=>{console.log("[FieldInput] modelValue changed:",{new:e,old:r,currentStoreValue:n.inputs[t.field.name]})}));const i=y((()=>{const e=[];return t.field?.validator&&e.push(t.field.validator.test),e})),o=()=>{if(!t.field?.name)throw new Error("Field name is required for FieldInput component");return n.inputs[t.field.name]};return{inputField:r,fieldStore:n,modelValue:a,validators:i,focus:()=>{r.value&&r.value.focus()},userInput:o,clearData:()=>{if(console.log(`[FieldInput] Running generic clearData() for ${t.field?.name} in FieldInput.ts`),r.value){if(r.value.value="",!t.field?.name)return;n.clearField(t.field.name)}},setData:e=>{if(!t.field?.name)throw new Error("Field name is required for FieldInput component");n.setFieldValue(t.field.name,e)},vuetifyRules:()=>t.field?.validator?i.value.map((t=>{return n=t,t=>{const r=n(t);return r.status===e.ok||r.msg};var n})):[],generateTags:()=>(console.log("[FieldInput] Running generic generateTags() in FieldInput.ts"),t.field?.tagger?t.field.tagger(o()):[]),generateELO:()=>(console.log("[FieldInput] Running generic generateELO() in FieldInput.ts"),t.field?.generateELO?t.field.generateELO(o()):void 0)}},data:()=>({validationStatus:{status:e.ok,msg:""}})}),He=te(t({name:"IntegerInput",extends:Ge,setup(e,t){const n=Ge.setup?.(e,t);return{...n,validators:y((()=>{const t=Ge.validators.call(this);return e.field.validator?.test&&t.push(e.field.validator.test),t?[We,...t]:[We]}))}}}),[["render",function(e,t,n,o,u,s){const l=r("v-text-field");return i(),a(l,{ref:"inputField",modelValue:e.modelValue,"onUpdate:modelValue":t[0]||(t[0]=t=>e.modelValue=t),variant:"filled",type:"number",name:e.field.name,label:e.field.name,rules:e.vuetifyRules(),hint:e.validationStatus.msg,autofocus:e.autofocus},null,8,["modelValue","name","label","rules","hint","autofocus"])}]]),Ke=te(t({name:"MarkdownInput",extends:Ge,setup(e,t){const n=Ge.setup?.(e,t);return{...n}}}),[["render",function(e,t,n,o,u,s){const l=r("v-textarea");return i(),a(l,{ref:"inputField",modelValue:e.modelValue,"onUpdate:modelValue":t[0]||(t[0]=t=>e.modelValue=t),variant:"filled",name:e.field.name,label:e.field.name,rules:e.vuetifyRules(),hint:e.validationStatus.msg,autofocus:e.autofocus},null,8,["modelValue","name","label","rules","hint","autofocus"])}],["__scopeId","data-v-28ef24ff"]]),Qe=t({name:"MediaDragDropUploader",extends:Ge,setup(e,t){const n=Ge.setup?.(e,t),{fieldStore:r}=n;return{...n,fieldStore:r}},data:()=>({isDragging:!1,mediaItems:[]}),computed:{hasMedia(){return this.mediaItems.length>0}},created(){},methods:{dragOverHandler(e){e.preventDefault()},dragEnterHandler(e){e.preventDefault(),this.isDragging=!0},dragLeaveHandler(e){e.preventDefault(),this.isDragging=!1},dropHandler(e){e.preventDefault(),this.isDragging=!1;const t=e.dataTransfer?.files;t&&this.processFiles(t)},triggerFileInput(){this.$refs.fileInput.click()},handleFileInput(e){const t=e.target.files;t&&this.processFiles(t)},processFiles(e){Array.from(e).forEach((e=>{this.addMediaItem(e)})),this.updateStore()},addMediaItem(e){const t=e.type.startsWith("image/")?"image":"audio",n={type:t,file:e,url:URL.createObjectURL(e)};"image"===t&&this.createThumbnail(e).then((e=>{n.thumbnailUrl=e,this.$nextTick((()=>{this.$forceUpdate()}))})),this.mediaItems.push(n)},createThumbnail:async e=>new Promise((t=>{const n=new FileReader;n.onload=e=>{t(e.target?.result)},n.readAsDataURL(e)})),removeMedia(e){URL.revokeObjectURL(this.mediaItems[e].url),this.mediaItems.splice(e,1),this.updateStore()},clearData(){this.mediaItems.forEach((e=>{URL.revokeObjectURL(e.url)})),this.mediaItems=[],this.updateStore()},addMoreMedia(){console.log("addMoreMedia"),this.triggerFileInput()},updateStore(){let e=0,t=0;this.mediaItems.forEach((n=>{"image"===n.type?(e++,this.fieldStore.setMedia(`image-${e}`,{content_type:n.file.type,data:n.file})):"audio"===n.type&&(t++,this.fieldStore.setMedia(`audio-${t}`,{content_type:n.file.type,data:n.file}))}))},getValidators(){return[()=>({status:this.mediaItems.length>0?e.ok:e.error,msg:this.mediaItems.length>0?"":"At least one media item is required"})]}}}),Ye={class:"mr-2 mb-2"},Ze=["src"],Xe=["src"],et=te(Qe,[["render",function(e,t,n,a,f,g){const y=r("v-label"),_=r("v-btn");return i(),d("div",Ye,[s(y,{class:"text-h5"},{default:o((()=>t[5]||(t[5]=[l("Add media:")]))),_:1}),c("div",{class:v(["drop-zone",{"drop-zone--over":e.isDragging}]),onDrop:t[1]||(t[1]=(...t)=>e.dropHandler&&e.dropHandler(...t)),onDragover:t[2]||(t[2]=m(((...t)=>e.dragOverHandler&&e.dragOverHandler(...t)),["prevent"])),onDragenter:t[3]||(t[3]=m(((...t)=>e.dragEnterHandler&&e.dragEnterHandler(...t)),["prevent"])),onDragleave:t[4]||(t[4]=m(((...t)=>e.dragLeaveHandler&&e.dragLeaveHandler(...t)),["prevent"]))},[c("input",{ref:"fileInput",type:"file",accept:"image/*,audio/*",multiple:"",style:{display:"none"},onChange:t[0]||(t[0]=(...t)=>e.handleFileInput&&e.handleFileInput(...t))},null,544),(i(!0),d(p,null,h(e.mediaItems,((n,r)=>(i(),d("div",{key:r,class:"media-item"},["image"===n.type?(i(),d("img",{key:0,src:n.thumbnailUrl,alt:"Uploaded image thumbnail",class:"thumbnail"},null,8,Ze)):"audio"===n.type?(i(),d("audio",{key:1,controls:"",src:n.url},null,8,Xe)):u("",!0),s(_,{size:"small",onClick:t=>e.removeMedia(r)},{default:o((()=>t[6]||(t[6]=[l("Remove")]))),_:2},1032,["onClick"])])))),128)),t[8]||(t[8]=l(" Drop image or audio files here... ")),s(_,{onClick:e.triggerFileInput},{default:o((()=>t[7]||(t[7]=[l("Or Click to Upload")]))),_:1},8,["onClick"])],34)])}],["__scopeId","data-v-e86645b6"]]),tt=t({name:"MidiInput",components:{SyllableSeqVis:P},extends:Ge,data:()=>({midi:null,recording:!1,SylSeq:N([]),display:!1,transpositions:!1}),async created(){try{this.midi=await z.instance(),this.record(),this.store[this.field.name]=this.getTransposedSeqs}catch(e){throw new Error(`MidiInput.created: ${e}`)}},methods:{record(){this.midi&&(this.midi.record(),this.midi.addNoteonListenter((e=>{this.SylSeq.append(e),this.$refs.inputVis.updateBounds()})),this.recording=!0)},getTransposedSeqs(){return this.midi?this.transpositions?[-5,-4,-3,-2,-1,0,1,2,3,4,5,6].map((e=>M(this.midi.recording,e))):[this.midi.recording]:[]},clearData(){this.midi&&(console.log("midiInput clearing data..."),this.midi.stopRecording(),this.midi.eraseRecording(),this.SylSeq=N([]),this.record(),this.recording=!0,this.store.convertedInput[this.field.name]=this.midi.recording,this.store.validation[this.field.name]=!1,this.store[this.field.name]=this.getTransposedSeqs)},hasRecording(){return this.midi?.hasRecording??!1},reset(){this.clearData()},play(){this.midi&&(this.midi.play(),this.display=!0,this.validate())}}}),nt={key:0},rt={class:"text-h5"},at={class:"font-weight-black"},it=te(tt,[["render",function(e,t,n,p,h,g){const m=r("syllable-seq-vis"),v=r("v-icon"),y=r("v-btn"),_=r("v-checkbox");return i(),d("div",null,[e.recording?(i(),d("div",nt,[c("span",rt,[t[1]||(t[1]=l(" Now Recording from device: ")),c("span",at,f(e.midi.configuredInput),1)])])):u("",!0),(i(),a(m,{key:1,ref:"inputVis",seq:e.SylSeq,"last-t-ssuggestion":"5000"},null,8,["seq"])),s(y,{color:"primary",disabled:e.hasRecording(),onClick:e.play},{default:o((()=>[t[3]||(t[3]=l(" Preview ")),s(v,{end:""},{default:o((()=>t[2]||(t[2]=[l("volume_up")]))),_:1})])),_:1},8,["disabled","onClick"]),s(y,{color:"error",disabled:e.hasRecording(),onClick:e.reset},{default:o((()=>[t[5]||(t[5]=l(" Clear and try again ")),s(v,{end:""},{default:o((()=>t[4]||(t[4]=[l("close")]))),_:1})])),_:1},8,["disabled","onClick"]),s(_,{modelValue:e.transpositions,"onUpdate:modelValue":t[0]||(t[0]=t=>e.transpositions=t),label:"Include Transpositions",onClickCapture:e.reset},null,8,["modelValue","onClickCapture"])])}]]),ot=te(t({name:"NumberInput",extends:Ge,setup(e,t){const n=Ge.setup?.(e,t);return{...n,validators:y((()=>{const t=Ge.validators.call(this);return e.field.validator?.test&&t.push(e.field.validator.test),t?[Le,...t]:[Le]}))}}}),[["render",function(e,t,n,o,u,s){const l=r("v-text-field");return i(),a(l,{ref:"inputField",modelValue:e.modelValue,"onUpdate:modelValue":t[0]||(t[0]=t=>e.modelValue=t),variant:"filled",type:"number",name:e.field.name,label:e.field.name,rules:e.vuetifyRules(),hint:e.validationStatus.msg,autofocus:e.autofocus},null,8,["modelValue","name","label","rules","hint","autofocus"])}]]),ut=te(t({name:"StringInput",extends:Ge,setup(e,t){const n=Ge.setup?.(e,t);return{...n,validators:y((()=>{const t=Ge.validators.call(this);return e.field.validator?.test&&t.push(e.field.validator.test),t||[]}))}}}),[["render",function(e,t,n,o,u,s){const l=r("v-text-field");return i(),a(l,{ref:"inputField",modelValue:e.modelValue,"onUpdate:modelValue":t[0]||(t[0]=t=>e.modelValue=t),variant:"filled",type:"text",name:e.field.name,label:e.field.name,rules:e.vuetifyRules(),hint:e.validationStatus.msg,autofocus:e.autofocus},null,8,["modelValue","name","label","rules","hint","autofocus"])}]]),st=te(t({name:"ChessPuzzleInput",extends:Ge,setup(e,t){const n=Ge.setup?.(e,t),r=()=>{if(!n)return[];console.log(`CPI.generateTags: modelValue: ${n.modelValue.value}`);const e=n.modelValue.value.split(","),t=e[7].split(" "),r=e[9].split(" ");return t.map((e=>`theme-${e}`)).concat(r.map((e=>`opening-${e}`)))};return{...n,generateELO:()=>{if(!n)return;const e=n.modelValue.value.split(","),t=parseInt(e[3]),a=parseInt(e[6]),i={global:{score:t,count:a},tags:{},misc:{}};return r().forEach((e=>{i.tags[e]={score:t,count:a}})),console.log("generateELO",JSON.stringify(i)),i},generateTags:r}}}),[["render",function(e,t,n,o,u,s){const l=r("v-text-field");return i(),a(l,{ref:"inputField",modelValue:e.modelValue,"onUpdate:modelValue":t[0]||(t[0]=t=>e.modelValue=t),variant:"filled",name:e.field.name,label:e.field.name,rules:e.vuetifyRules(),autofocus:e.autofocus},null,8,["modelValue","name","label","rules","autofocus"])}]]),lt=n("dataInputForm",{state:()=>({dataInputForm:{dataShape:null,course:null,shapeViews:[],fields:[],fieldStore:Je(),uploading:!1}}),actions:{setDataShape(e){this.dataInputForm.dataShape=e,this.dataInputForm.fieldStore.dataShape=e,this.dataInputForm.fieldStore.$reset()},setCourse(e){this.dataInputForm.course=e}}}),ct=t({name:"DataInputForm",components:{NumberInput:ot,StringInput:ut,IntegerInput:He,MarkdownInput:Ke,MidiInput:it,CardBrowser:V,MediaDragDropUploader:et,TagsInput:R,ChessPuzzleInput:st},props:{courseCfg:{type:Object,required:!0,default:()=>({courseID:"default-test"})},dataShape:{type:Object,required:!0},previewComponent:{type:Object,required:!1,default:null},courseWare:{type:Object,default:()=>U}},data:()=>({tag:"",tags:[],autoCompleteSuggestions:[],timer:void 0,dataInputFormStore:lt(),fieldInputRefs:[],courseDB:null}),computed:{ftString:()=>O.STRING,int:()=>O.INT,num:()=>O.NUMBER,img:()=>O.IMAGE,mkd:()=>O.MARKDOWN,audio:()=>O.AUDIO,midi:()=>O.MIDI,uploader:()=>O.MEDIA_UPLOADS,chessPuzzle:()=>O.CHESS_PUZZLE,fieldInputs(){return Array.from(this.fieldInputRefs.values())},shapeViews:{get(){return this.dataInputFormStore.dataInputForm.shapeViews},set(e){this.dataInputFormStore.dataInputForm.shapeViews=e}},allowSubmit(){return this.dataInputFormStore.dataInputForm.fieldStore.isValidated},fieldStore(){return this.dataInputFormStore.dataInputForm.fieldStore},uploading:{get(){return this.dataInputFormStore.dataInputForm.uploading},set(e){this.dataInputFormStore.dataInputForm.uploading=e}},previewInput(){return this.fieldStore.getPreview},convertedInput(){return this.fieldStore.convertedInput},inputIsValidated(){return this.dataInputFormStore.dataInputForm.fieldStore.isValidated},datashapeDescriptor(){if(!this.courseCfg||!this.courseCfg.dataShapes)return{course:"",dataShape:""};for(const e of this.courseCfg.dataShapes){const t=S.getDataShapeDescriptor(e.name);if(t.dataShape===this.dataShape.name)return t}return{course:"",dataShape:""}}},watch:{dataShape:{handler(){this.previewComponent||this.getImplementingViews()},immediate:!0},store:{handler(){this.convertInput()}},"dataShape.fields"(e){console.log(`[DataInputForm].watch(fields): newFields ${JSON.stringify(e)}`),console.log(`[DataInputForm].watch(fields): fields ${JSON.stringify(this.dataShape.fields)}`),this.fieldInputRefs=new Array(e.length).fill(null),console.log(`[DataInputForm].watch(fields): fieldRefs ${JSON.stringify(this.fieldInputRefs)}`)}},created(){this.uploading=!1,this.courseDB=x().getCourseDB(this.courseCfg.courseID),this.getCourseTags(),this.dataInputFormStore.setDataShape(this.dataShape),console.log(`[DataInputForm].created: fields: ${JSON.stringify(this.dataShape.fields)}`),this.fieldInputRefs=new Array(this.dataShape.fields.length).fill(null),this.previewComponent&&this.getImplementingViews()},beforeUnmount(){this.fieldInputRefs=[]},methods:{async updateTags(e){console.log(`[DataInputForm] tags updated: ${JSON.stringify(e)}`),this.tags=e},setFieldInputRef(e,t){for(console.log(`[DataInputForm].setFieldInputRef: index: ${t}`),t>=this.fieldInputRefs.length&&(this.fieldInputRefs=this.fieldInputRefs.concat(new Array(t-this.fieldInputRefs.length+1).fill(null)));null===this.fieldInputRefs[this.fieldInputRefs.length-1];)this.fieldInputRefs.pop();this.fieldInputRefs[t]=e},async getCourseTags(){const e=await this.courseDB.getCourseTagStubs();this.autoCompleteSuggestions=e.rows.map((e=>e.doc.name))},expectedValidations(){return this.dataShape.fields.length},checkInput:()=>!0,convertInput(){},inputContainsTranspositionFcns(){this.convertInput();for(const e in this.convertedInput)if("function"==typeof this.convertedInput[e])return!0;return!1},objectContainsFunction(e){for(const t in e)if("function"==typeof e[t])return!0;return!1},expandO(e){let t=[];if(this.objectContainsFunction(e)){for(const n in e)if("function"==typeof e[n]){console.log(`[DataInputForm] Key ${n} is a function.`);const r=[];e[n]().forEach((t=>{let a={};a=structuredClone(e),a[n]=t,console.log(`[DataInputForm] Replaced Copy: ${JSON.stringify(a)}`),r.push(a)})),r.forEach((e=>{if(this.objectContainsFunction(e)){console.log("[DataInputForm] 2nd pass...");const n=this.expandO(e);t=t.concat(n)}else t.push(e)}))}return t}return[]},getTags(){const e=[];this.fieldInputs.forEach((t=>{if(t.generateTags){const n=t.generateTags();e.push(...n)}}));const t=this.$refs.tagsInput.tags.map((e=>e.text));return e.concat(t)},getElo(){for(const e of this.fieldInputs)if(e.generateELO)return e.generateELO()},async submit(){if(this.checkInput()){console.log(`[DataInputForm] Store: ${JSON.stringify(this.fieldStore.inputs)}`),console.log(`[DataInputForm] ConvertedStore: ${JSON.stringify(this.convertedInput)}`),this.uploading=!0;let t=[];this.inputContainsTranspositionFcns()?(console.log(`[DataInputForm] Expanded input: ${JSON.stringify(this.expandO(this.convertedInput))}`),t=this.expandO(this.convertedInput)):(console.log("[DataInputForm] No Transposition fcn detected"),t=[this.convertedInput]);const n=await Promise.all(t.map((async e=>await this.courseDB.addNote(this.datashapeDescriptor.course,this.dataShape,e,(await C()).getUsername(),this.getTags(),void 0,this.getElo()))));if(n[0].status===e.ok){b({text:"Content added... Thank you!",status:e.ok});const t=this.$refs.tagsInput;t.tags.length&&(t.updateAvailableCourseTags(),t.tags=[]),this.reset()}else b({text:"A problem occurred. Content has not been added.",status:e.error}),console.error(`Error in DataInputForm.submit(). Result from addNote: ${JSON.stringify(n)}`),this.uploading=!1}},reset(){console.log("[DataInputForm].reset()"),this.uploading=!1,this.fieldInputs.forEach((e=>{e.clearData()})),this.fieldStore.$reset(),this.fieldInputs[0].focus(),this.convertInput()},getImplementingViews(){if(this.previewComponent)return console.log("[DataInputForm] Getting previewComponent views"),void(this.shapeViews=this.previewComponent.views);for(const e of this.courseCfg.dataShapes){const t=S.getDataShapeDescriptor(e.name);if(console.log("[DataInputForm] descriptor",t),console.log("[DataInputForm] this.dataShape",this.dataShape),console.log("[DataInputForm] this.dataShape.name",this.dataShape.name),t.dataShape===this.dataShape.name){const n=this.courseWare.getCourseWare(t.course);this.shapeViews=[],n.getBaseQTypes().forEach((e=>{e.dataShapes[0].name===this.dataShape.name&&(this.shapeViews=this.shapeViews.concat(e.views))}));for(const t of e.questionTypes){const e=S.getQuestionDescriptor(t);n.getQuestion(e.questionType).views.forEach((e=>{this.shapeViews=this.shapeViews.concat(e)}))}}}},isFieldInput:e=>Be(e)}}),dt={key:1},ft=te(ct,[["render",function(e,t,n,c,g,v){const y=r("string-input"),_=r("chess-puzzle-input"),w=r("number-input"),b=r("integer-input"),C=r("markdown-input"),S=r("midi-input"),I=r("media-drag-drop-uploader"),k=r("tags-input"),x=r("v-icon"),D=r("v-btn"),V=r("v-form"),T=r("v-col"),E=r("card-browser"),A=r("v-row"),F=r("v-container");return i(),a(F,{fluid:""},{default:o((()=>[s(A,null,{default:o((()=>[s(T,{cols:"12",xl:"6"},{default:o((()=>[s(V,{"ma-2":"",autocomplete:"off"},{default:o((()=>[(i(!0),d(p,null,h(e.dataShape.fields,((t,n)=>(i(),d("div",{key:e.dataShape.fields.indexOf(t)},[t.type===e.ftString?(i(),a(y,{key:0,ref_for:!0,ref:t=>e.setFieldInputRef(t,n),field:t,autofocus:0==n},null,8,["field","autofocus"])):t.type===e.chessPuzzle?(i(),a(_,{key:1,ref_for:!0,ref:t=>e.setFieldInputRef(t,n),field:t,autofocus:0==n},null,8,["field","autofocus"])):t.type===e.num?(i(),a(w,{key:2,ref_for:!0,ref:t=>e.setFieldInputRef(t,n),field:t,autofocus:0==n},null,8,["field","autofocus"])):t.type===e.int?(i(),a(b,{key:3,ref_for:!0,ref:t=>e.setFieldInputRef(t,n),field:t,autofocus:0==n},null,8,["field","autofocus"])):t.type===e.mkd?(i(),a(C,{key:4,ref_for:!0,ref:t=>e.setFieldInputRef(t,n),field:t,autofocus:0==n,"data-cy":"markdown-input"},null,8,["field","autofocus"])):t.type===e.midi?(i(),a(S,{key:5,ref_for:!0,ref:t=>e.setFieldInputRef(t,n),field:t,autofocus:0==n},null,8,["field","autofocus"])):t.type===e.uploader?(i(),a(I,{key:6,ref_for:!0,ref:t=>e.setFieldInputRef(t,n),field:t,autofocus:0==n},null,8,["field","autofocus"])):u("",!0)])))),128)),s(k,{ref:"tagsInput","hide-submit":!0,"course-i-d":e.courseCfg.courseID,"card-i-d":""},null,8,["course-i-d"]),e.previewComponent?(i(),d("div",dt,"Input validated: "+f(e.inputIsValidated),1)):(i(),a(D,{key:0,"data-cy":"add-card-btn",class:"float-right",type:"submit",color:"primary",loading:e.uploading,disabled:!e.allowSubmit,onClick:m(e.submit,["prevent"])},{default:o((()=>[t[1]||(t[1]=l(" Add card ")),s(x,{end:""},{default:o((()=>t[0]||(t[0]=[l("mdi-plus-circle")]))),_:1})])),_:1},8,["loading","disabled","onClick"]))])),_:1})])),_:1}),s(T,{cols:"12",xl:"6"},{default:o((()=>[e.inputIsValidated?(i(),a(E,{key:0,class:"ml-4",views:e.shapeViews,data:[e.previewInput]},null,8,["views","data"])):u("",!0)])),_:1})])),_:1})])),_:1})}]]),pt=t({name:"CardPreviewList",components:{CardBrowser:V,SkMouseTrap:D},props:{parsedCards:{type:Array,required:!0,default:()=>[]},dataShape:{type:Object,required:!0},viewComponents:{type:Array,required:!1,default:()=>[]}},emits:["update:parsedCards","edit-card","delete-card"],data:()=>({currentIndex:0,loading:!1,keyBindings:[],showDeleteConfirm:!1,dontAskAgain:!1,skipDeleteConfirmation:!1,shortcutsEnabled:!0}),computed:{currentCard(){return 0===this.parsedCards.length||this.currentIndex>=this.parsedCards.length?null:this.parsedCards[this.currentIndex]},currentViewData(){return this.currentCard?{Input:this.currentCard.markdown}:{Input:""}}},mounted(){this.setupKeyBindings()},beforeUnmount(){this.shortcutsEnabled&&this.keyBindings.forEach((e=>{T.removeBinding(e.hotkey)}))},methods:{nextCard(){this.currentIndex<this.parsedCards.length-1&&this.currentIndex++},prevCard(){this.currentIndex>0&&this.currentIndex--},showCard(e){e>=0&&e<this.parsedCards.length&&(this.currentIndex=e)},setupKeyBindings(){this.keyBindings=[{command:"Previous Card",hotkey:"left",callback:()=>(this.prevCard(),!1)},{command:"Next Card",hotkey:"right",callback:()=>(this.nextCard(),!1)},{command:"Delete Card",hotkey:"del",callback:()=>(this.promptDelete(),!1)},{command:"Edit Card",hotkey:"e",callback:()=>(this.editCurrentCard(),!1)}],this.shortcutsEnabled&&T.addBinding(this.keyBindings)},enableShortcuts(){this.shortcutsEnabled||(this.shortcutsEnabled=!0,T.addBinding(this.keyBindings),console.log("[CardPreviewList] Keyboard shortcuts enabled"))},disableShortcuts(){this.shortcutsEnabled&&(this.shortcutsEnabled=!1,this.keyBindings.forEach((e=>{T.removeBinding(e.hotkey)})),console.log("[CardPreviewList] Keyboard shortcuts disabled"))},toggleShortcuts(e){e?this.enableShortcuts():this.disableShortcuts()},promptDelete(){this.currentCard&&(this.skipDeleteConfirmation?this.deleteCurrentCard():this.showDeleteConfirm=!0)},cancelDelete(){this.showDeleteConfirm=!1},confirmDelete(){this.dontAskAgain&&(this.skipDeleteConfirmation=!0),this.showDeleteConfirm=!1,this.deleteCurrentCard()},deleteCurrentCard(){if(!this.currentCard)return;const e=[...this.parsedCards];e.splice(this.currentIndex,1),this.$emit("update:parsedCards",e),this.$emit("delete-card",this.currentIndex),this.currentIndex>=e.length&&e.length>0&&(this.currentIndex=e.length-1)},editCurrentCard(){this.currentCard&&this.$emit("edit-card",this.currentCard,this.currentIndex)}}}),ht={class:"card-preview-list"},gt={class:"d-flex align-center"},mt={class:"text-subtitle-1 mr-2"},vt={key:0,class:"d-flex justify-center align-center my-4"},yt={key:1},_t={key:0},wt={key:0},bt={key:1},Ct={class:"markdown-content"},St={class:"card-metadata mt-2"},It={class:"d-flex flex-wrap gap-1"},kt={key:0,class:"mt-2 text-caption"},xt={key:1,class:"text-center pa-4"},Dt=t({name:"BulkImportView",components:{CardPreviewList:te(pt,[["render",function(e,t,n,g,m,v){const y=r("v-card-title"),_=r("v-checkbox"),w=r("v-card-text"),b=r("v-spacer"),C=r("v-btn"),S=r("v-card-actions"),I=r("v-card"),k=r("v-dialog"),x=r("sk-mouse-trap"),D=r("v-progress-circular"),V=r("card-browser"),T=r("v-sheet"),E=r("v-chip"),A=r("v-icon");return i(),d("div",ht,[s(k,{modelValue:e.showDeleteConfirm,"onUpdate:modelValue":t[1]||(t[1]=t=>e.showDeleteConfirm=t),"max-width":"400px"},{default:o((()=>[s(I,null,{default:o((()=>[s(y,{class:"text-h5"},{default:o((()=>t[2]||(t[2]=[l("Remove Card")]))),_:1}),s(w,null,{default:o((()=>[t[3]||(t[3]=c("p",null,"Are you sure you want to remove this card?",-1)),s(_,{modelValue:e.dontAskAgain,"onUpdate:modelValue":t[0]||(t[0]=t=>e.dontAskAgain=t),label:"Don't ask me again","hide-details":"",class:"mt-2"},null,8,["modelValue"])])),_:1}),s(S,null,{default:o((()=>[s(b),s(C,{color:"grey-darken-1",variant:"text",onClick:e.cancelDelete},{default:o((()=>t[4]||(t[4]=[l("Cancel")]))),_:1},8,["onClick"]),s(C,{color:"error",onClick:e.confirmDelete},{default:o((()=>t[5]||(t[5]=[l("Remove")]))),_:1},8,["onClick"])])),_:1})])),_:1})])),_:1},8,["modelValue"]),e.parsedCards.length>0?(i(),a(I,{key:0,class:"mb-4"},{default:o((()=>[s(y,{class:"d-flex align-center justify-space-between"},{default:o((()=>[t[6]||(t[6]=c("span",null,"Card Preview",-1)),c("div",gt,[c("div",mt,f(e.currentIndex+1)+" of "+f(e.parsedCards.length),1),s(x)])])),_:1}),s(w,null,{default:o((()=>[e.loading?(i(),d("div",vt,[s(D,{indeterminate:"",color:"primary"})])):(i(),d("div",yt,[e.currentCard?(i(),d("div",_t,[s(T,{class:"card-content pa-4 mb-4",rounded:"",border:""},{default:o((()=>[e.viewComponents&&e.viewComponents.length>0?(i(),d("div",wt,[s(V,{views:e.viewComponents,data:[e.currentViewData],"suppress-spinner":!0},null,8,["views","data"])])):(i(),d("div",bt,[t[7]||(t[7]=c("div",{class:"mb-2 font-weight-bold"},"Card content:",-1)),c("div",Ct,f(e.currentCard.markdown),1)]))])),_:1}),c("div",St,[c("div",It,[(i(!0),d(p,null,h(e.currentCard.tags,(e=>(i(),a(E,{key:e,size:"small",color:"primary",variant:"outlined",class:"mr-1 mb-1"},{default:o((()=>[l(f(e),1)])),_:2},1024)))),128))]),void 0!==e.currentCard.elo?(i(),d("div",kt,"ELO: "+f(e.currentCard.elo),1)):u("",!0)])])):(i(),d("div",xt,"No card selected or available to preview."))]))])),_:1}),s(S,{class:"px-4 pb-4"},{default:o((()=>[s(C,{variant:"outlined",icon:"",disabled:0===e.currentIndex||e.loading,onClick:e.prevCard},{default:o((()=>[s(A,null,{default:o((()=>t[8]||(t[8]=[l("mdi-chevron-left")]))),_:1})])),_:1},8,["disabled","onClick"]),s(b),s(C,{variant:"tonal",color:"error","prepend-icon":"mdi-delete",class:"mx-2",disabled:!e.currentCard||e.loading,onClick:e.promptDelete},{default:o((()=>t[9]||(t[9]=[l(" Remove ")]))),_:1},8,["disabled","onClick"]),s(C,{variant:"tonal",color:"primary","prepend-icon":"mdi-pencil",class:"mx-2",disabled:!e.currentCard||e.loading,onClick:e.editCurrentCard},{default:o((()=>t[10]||(t[10]=[l(" Edit ")]))),_:1},8,["disabled","onClick"]),s(b),s(C,{variant:"outlined",icon:"",disabled:e.currentIndex>=e.parsedCards.length-1||e.loading,onClick:e.nextCard},{default:o((()=>[s(A,null,{default:o((()=>t[11]||(t[11]=[l("mdi-chevron-right")]))),_:1})])),_:1},8,["disabled","onClick"])])),_:1})])),_:1})):u("",!0)])}],["__scopeId","data-v-41613480"]])},props:{courseCfg:{type:Object,required:!0}},data:()=>({bulkText:"",parsedCards:[],parsingComplete:!1,importAttempted:!1,results:[],processing:!1,courseDB:null,dataShape:j[0],cardViewComponents:[],editingCard:null,editingCardIndex:-1,showEditDialog:!1,editedMarkdown:"",editedTags:[],editedElo:void 0,newTagText:""}),computed:{uniqueTags(){if(!this.parsedCards||0===this.parsedCards.length)return[];const e=this.parsedCards.reduce(((e,t)=>(t.tags&&t.tags.length>0&&e.push(...t.tags),e)),[]);return[...new Set(e)].sort()}},created(){this.courseCfg?.courseID?(this.courseDB=x().getCourseDB(this.courseCfg.courseID),this.courseCfg.dataShapes&&0!==this.courseCfg.dataShapes.length?this.initializeCardPreviewComponents():(console.error("[BulkImportView] Course config does not contain any dataShapes."),b({text:"Course configuration has no dataShapes. Bulk import may not work correctly.",status:e.warning}))):(console.error("[BulkImportView] Course config or Course ID is missing."),b({text:"Course configuration is missing. Cannot initialize bulk import.",status:e.error}))},methods:{handleDeleteCard(t){console.log(`[BulkImportView] Card at index ${t} was deleted`),b({text:"Card removed from import list",status:e.ok})},handleEditCard(e,t){this.$refs.cardPreviewList&&this.$refs.cardPreviewList.toggleShortcuts(!1),this.editingCard={...e},this.editingCardIndex=t,this.editedMarkdown=e.markdown,this.editedTags=[...e.tags],this.editedElo=e.elo,this.showEditDialog=!0,this.$nextTick((()=>{this.$refs.markdownTextarea&&this.$refs.markdownTextarea.$el.querySelector("textarea")?.focus()}))},saveEditedCard(){if(this.editingCardIndex<0||!this.editingCard)return;const t={markdown:this.editedMarkdown,tags:this.editedTags,elo:this.editedElo},n=[...this.parsedCards];n[this.editingCardIndex]=t,this.parsedCards=n,this.closeEditDialog(),b({text:"Card updated successfully",status:e.ok})},closeEditDialog(){this.showEditDialog=!1,this.editingCard=null,this.editingCardIndex=-1,this.editedMarkdown="",this.editedTags=[],this.editedElo=void 0,setTimeout((()=>{this.$refs.cardPreviewList&&this.$refs.cardPreviewList.toggleShortcuts(!0)}),100)},addTag(){const e=this.newTagText.trim();e&&!this.editedTags.includes(e)&&(this.editedTags.push(e),this.newTagText="")},removeTag(e){this.editedTags=this.editedTags.filter((t=>t!==e))},initializeCardPreviewComponents(){const e=this.courseCfg?.dataShapes?.[0];if(!e)return;this.dataShape.name!==j[0].name&&(this.dataShape=j[0]);const t=S.getDataShapeDescriptor(e.name),n=U.getCourse(t.course);if(n){this.cardViewComponents=[],n.getBaseQTypes().forEach((e=>{e.dataShapes[0].name===this.dataShape?.name&&(this.cardViewComponents=this.cardViewComponents.concat(e.views))}));for(const t of e.questionTypes){const e=S.getQuestionDescriptor(t),r=n.getQuestion(e.questionType)?.views||[];this.cardViewComponents=this.cardViewComponents.concat(r)}console.log(`[BulkImportView] Loaded ${this.cardViewComponents.length} view components for card preview`)}},resetToInputStage(){this.parsingComplete=!1,this.parsedCards=[],this.importAttempted=!1},startNewBulkImport(){this.bulkText="",this.results=[],this.parsedCards=[],this.parsingComplete=!1,this.importAttempted=!1},handleInitialParse(){if(this.courseDB){if(function(e){const t=G(e);return t.length>0&&t.some((e=>!!e.trim()))}(this.bulkText)){this.processing=!0,this.results=[],this.parsedCards=[],this.parsingComplete=!1;try{if(this.parsedCards=function(e,t=W){const n=G(e),r=[];for(const a of n){const e=J(a,t);e&&r.push(e)}return r}(this.bulkText),0===this.parsedCards.length)return b({text:'No cards could be parsed from the input. Please check the format and ensure cards are separated by two "---" lines and that cards have content.',status:e.warning}),void(this.processing=!1);0===this.cardViewComponents.length&&this.initializeCardPreviewComponents(),this.parsingComplete=!0,console.log(`[BulkImportView] Successfully parsed ${this.parsedCards.length} cards for preview`)}catch(t){console.error("[BulkImportView] Error parsing bulk text:",t),b({text:`Error parsing cards: ${t instanceof Error?t.message:"Unknown error"}`,status:e.error})}finally{this.processing=!1}}}else b({text:"Database connection not available. Cannot process cards.",status:e.error})},async confirmAndImportCards(){if(!this.courseDB)return b({text:"Database connection lost before import.",status:e.error}),void(this.processing=!1);if(0===this.parsedCards.length)return b({text:"No parsed cards to import.",status:e.warning}),void(this.processing=!1);if(!this.courseCfg?.dataShapes||0===this.courseCfg.dataShapes.length)return b({text:"This course has no data shapes configured. Cannot import cards.",status:e.error}),void(this.processing=!1);this.processing=!0,this.results=[];const t=(await C()).getUsername(),n=j[0];if(!n)return b({text:"Critical: Could not find BlanksCardDataShapes. Aborting import.",status:e.error}),void(this.processing=!1);const r=this.courseCfg?.dataShapes?.[0];if(!r)return b({text:"Critical: No data shapes found in course configuration. Aborting import.",status:e.error}),void(this.processing=!1);const a=S.getDataShapeDescriptor(r.name).course,i={dataShape:n,courseCode:a,userName:t},o=I(i);if(!o.isValid)return b({text:o.errorMessage||"Invalid processor configuration for import.",status:e.error}),void(this.processing=!1);console.log("[BulkImportView] Starting import of parsed cards:",{courseID:this.courseCfg.courseID,dataShapeToUse:n.name,courseCode:a,numberOfCards:this.parsedCards.length});try{this.results=await k(this.parsedCards,this.courseDB,i)}catch(u){console.error("[BulkImportView] Error importing parsed cards:",u),this.results.push({originalText:"Bulk Operation Error",status:"error",message:`Critical error during import: ${u instanceof Error?u.message:"Unknown error"}`})}finally{this.processing=!1,this.importAttempted=!0}this.results.every((e=>"success"===e.status))&&this.results.length>0?b({text:`${this.results.length} card(s) imported successfully!`,status:e.ok}):this.results.some((e=>"error"===e.status))&&b({text:"Some cards failed to import. Please review the results below.",status:e.warning})}}}),Vt={key:0},Tt={key:1,class:"text--secondary"},Et={class:"my-4"},At={class:"d-flex align-center mb-2"},Ft={class:"d-flex flex-wrap"},Ot={key:0,class:"ml-6"},Rt={key:1,class:"ml-6"},jt={key:2,class:"ml-6"},Ut={style:{"white-space":"pre-wrap","background-color":"#f5f5f5",padding:"5px"}},qt=te(Dt,[["render",function(e,t,n,y,_,w){const b=r("v-textarea"),C=r("v-col"),S=r("v-row"),I=r("v-card-title"),k=r("v-chip"),x=r("v-card-text"),D=r("v-card"),V=r("card-preview-list"),T=r("v-text-field"),E=r("v-btn"),A=r("v-form"),F=r("v-spacer"),O=r("v-tooltip"),R=r("v-card-actions"),j=r("v-dialog"),U=r("v-icon"),q=r("v-list-subheader"),N=r("v-list-item-title"),P=r("v-list-item-subtitle"),M=r("v-list-item"),z=r("v-list"),B=r("v-container");return i(),a(B,{fluid:""},{default:o((()=>[e.parsingComplete?u("",!0):(i(),a(S,{key:0},{default:o((()=>[s(C,{cols:"12"},{default:o((()=>[s(b,{modelValue:e.bulkText,"onUpdate:modelValue":t[0]||(t[0]=t=>e.bulkText=t),label:"Bulk Card Input",placeholder:"Paste card data here.\nSeparate cards with two consecutive '---' lines on their own lines.\nExample:\nCard 1 Question\n{{blank}}\ntags: tagA, tagB\nelo: 1500\n---\n---\nCard 2 Question\nAnother {{blank}}\nelo: 1200\ntags: tagC",rows:"15",variant:"outlined","data-cy":"bulk-import-textarea"},null,8,["modelValue"])])),_:1})])),_:1})),e.parsingComplete?(i(),a(S,{key:1,class:"mb-4"},{default:o((()=>[s(C,{cols:"12",md:"4"},{default:o((()=>[s(D,{border:""},{default:o((()=>[s(I,null,{default:o((()=>t[6]||(t[6]=[l("Parsing Summary")]))),_:1}),s(x,null,{default:o((()=>[c("p",null,[c("strong",null,f(e.parsedCards.length),1),t[7]||(t[7]=l(" card(s) parsed and ready for import. "))]),e.parsedCards.length>0?(i(),d("div",Vt,[t[8]||(t[8]=c("strong",null,"Tags Found:",-1)),e.uniqueTags.length>0?(i(!0),d(p,{key:0},h(e.uniqueTags,(e=>(i(),a(k,{key:e,class:"mr-1 mb-1",size:"small",label:""},{default:o((()=>[l(f(e),1)])),_:2},1024)))),128)):(i(),d("span",Tt,"No unique tags identified across parsed cards."))])):u("",!0)])),_:1})])),_:1})])),_:1}),s(C,{cols:"12",md:"8"},{default:o((()=>[e.parsedCards.length>0?(i(),a(V,{key:0,ref:"cardPreviewList","parsed-cards":e.parsedCards,"onUpdate:parsedCards":t[1]||(t[1]=t=>e.parsedCards=t),"data-shape":e.dataShape,"view-components":e.cardViewComponents,onEditCard:e.handleEditCard,onDeleteCard:e.handleDeleteCard},null,8,["parsed-cards","data-shape","view-components","onEditCard","onDeleteCard"])):u("",!0)])),_:1})])),_:1})):u("",!0),s(j,{modelValue:e.showEditDialog,"onUpdate:modelValue":t[5]||(t[5]=t=>e.showEditDialog=t),"max-width":"800px"},{default:o((()=>[s(D,null,{default:o((()=>[s(I,null,{default:o((()=>t[9]||(t[9]=[l("Edit Card")]))),_:1}),s(x,null,{default:o((()=>[s(A,{onSubmit:m(e.saveEditedCard,["prevent"]),onKeydown:g(e.closeEditDialog,["esc"])},{default:o((()=>[s(b,{ref:"markdownTextarea",modelValue:e.editedMarkdown,"onUpdate:modelValue":t[2]||(t[2]=t=>e.editedMarkdown=t),label:"Card Content",rows:"6","auto-grow":"",variant:"outlined",onKeydown:g(m(e.saveEditedCard,["ctrl"]),["enter"])},null,8,["modelValue","onKeydown"]),c("div",Et,[c("div",At,[t[11]||(t[11]=c("h3",{class:"text-subtitle-1 mr-2"},"Tags",-1)),s(T,{modelValue:e.newTagText,"onUpdate:modelValue":t[3]||(t[3]=t=>e.newTagText=t),density:"compact","hide-details":"",placeholder:"Add a tag",variant:"outlined",class:"mr-2",onKeydown:[g(m(e.addTag,["prevent"]),["enter"]),g(e.closeEditDialog,["esc"])]},null,8,["modelValue","onKeydown"]),s(E,{size:"small",color:"primary",variant:"text",onClick:e.addTag},{default:o((()=>t[10]||(t[10]=[l("Add")]))),_:1},8,["onClick"])]),c("div",Ft,[(i(!0),d(p,null,h(e.editedTags,(t=>(i(),a(k,{key:t,closable:"",class:"mr-1 mb-1","onClick:close":n=>e.removeTag(t)},{default:o((()=>[l(f(t),1)])),_:2},1032,["onClick:close"])))),128))])]),s(T,{modelValue:e.editedElo,"onUpdate:modelValue":t[4]||(t[4]=t=>e.editedElo=t),modelModifiers:{number:!0},label:"ELO Rating (optional)",type:"number",variant:"outlined",min:"0",max:"3000"},null,8,["modelValue"])])),_:1},8,["onSubmit","onKeydown"])])),_:1}),s(R,null,{default:o((()=>[s(F),s(E,{color:"grey",variant:"text",onClick:e.closeEditDialog},{default:o((()=>[t[13]||(t[13]=l(" Cancel ")),s(O,{activator:"parent",location:"top"},{default:o((()=>t[12]||(t[12]=[l("Press ESC")]))),_:1})])),_:1},8,["onClick"]),s(E,{color:"primary",onClick:e.saveEditedCard},{default:o((()=>[t[15]||(t[15]=l(" Save ")),s(O,{activator:"parent",location:"top"},{default:o((()=>t[14]||(t[14]=[l("Press Ctrl+Enter")]))),_:1})])),_:1},8,["onClick"])])),_:1})])),_:1})])),_:1},8,["modelValue"]),s(S,null,{default:o((()=>[s(C,{cols:"12"},{default:o((()=>[e.parsingComplete?u("",!0):(i(),a(E,{key:0,color:"primary",loading:e.processing,disabled:!e.bulkText.trim()||e.processing,"data-cy":"bulk-import-parse-btn",onClick:e.handleInitialParse},{default:o((()=>[t[17]||(t[17]=l(" Parse Cards ")),s(U,{end:""},{default:o((()=>t[16]||(t[16]=[l("mdi-play-circle-outline")]))),_:1})])),_:1},8,["loading","disabled","onClick"])),e.parsingComplete?(i(),d(p,{key:1},[s(E,{color:"primary",class:"mr-2",loading:e.processing,disabled:0===e.parsedCards.length||e.processing||e.importAttempted,"data-cy":"bulk-import-confirm-btn",onClick:e.confirmAndImportCards},{default:o((()=>[l(" Confirm and Import "+f(e.parsedCards.length)+" Card(s) ",1),s(U,{end:""},{default:o((()=>t[18]||(t[18]=[l("mdi-check-circle-outline")]))),_:1})])),_:1},8,["loading","disabled","onClick"]),e.importAttempted?u("",!0):(i(),a(E,{key:0,variant:"outlined",color:"grey-darken-1",disabled:e.processing,"data-cy":"bulk-import-edit-again-btn",onClick:e.resetToInputStage},{default:o((()=>[s(U,{start:""},{default:o((()=>t[19]||(t[19]=[l("mdi-pencil")]))),_:1}),t[20]||(t[20]=l(" Back to bulk-editor. "))])),_:1},8,["disabled","onClick"])),e.importAttempted?(i(),a(E,{key:1,variant:"outlined",color:"blue-darken-1",disabled:e.processing,"data-cy":"bulk-import-add-another-btn",onClick:e.startNewBulkImport},{default:o((()=>[s(U,{start:""},{default:o((()=>t[21]||(t[21]=[l("mdi-plus-circle-outline")]))),_:1}),t[22]||(t[22]=l(" Add Another Bulk Import "))])),_:1},8,["disabled","onClick"])):u("",!0)],64)):u("",!0)])),_:1})])),_:1}),e.results.length>0?(i(),a(S,{key:2},{default:o((()=>[s(C,{cols:"12"},{default:o((()=>[s(z,{density:"compact"},{default:o((()=>[s(q,null,{default:o((()=>t[23]||(t[23]=[l("Import Results")]))),_:1}),(i(!0),d(p,null,h(e.results,((e,n)=>(i(),a(M,{key:n,class:v({"lime-lighten-5":"success"===e.status,"red-lighten-5":"error"===e.status,"force-dark-text":"success"===e.status||"error"===e.status})},{default:o((()=>[s(N,null,{default:o((()=>[s(U,{color:"success"===e.status?"green":"red"},{default:o((()=>[l(f("success"===e.status?"mdi-check-circle":"mdi-alert-circle"),1)])),_:2},1032,["color"]),l(" Card "+f(n+1),1)])),_:2},1024),s(P,null,{default:o((()=>[e.message?(i(),d("div",Ot,f(e.message),1)):u("",!0),e.cardId?(i(),d("div",Rt,"ID: "+f(e.cardId),1)):u("",!0),"error"===e.status&&e.originalText?(i(),d("details",jt,[t[24]||(t[24]=c("summary",null,"Original Input",-1)),c("pre",Ut,f(e.originalText),1)])):u("",!0)])),_:2},1024)])),_:2},1032,["class"])))),128))])),_:1})])),_:1})])),_:1})):u("",!0)])),_:1})}],["__scopeId","data-v-901d842b"]]),Nt=t({name:"CourseEditor",components:{DataInputForm:ft,ComponentRegistration:ie,NavigationStrategyEditor:ze,BulkImportView:qt},props:{course:{type:String,required:!0}},data:()=>({registeredDataShapes:[],dataShapes:[],selectedShape:q.dataShapes[0].name,courseConfig:null,dataShape:j[0],loading:!0,currentTab:"single",dataInputFormStore:lt()}),watch:{selectedShape:{handler(e){e&&(this.dataShape=this.getDataShape(e),this.dataInputFormStore.setDataShape(this.dataShape),this.dataInputFormStore.dataInputForm.course=this.courseConfig)}}},async created(){this.courseConfig=await x().getCoursesDB().getCourseConfig(this.course),U.courses.forEach((e=>{e.questions.forEach((e=>{e.dataShapes.forEach((e=>{this.dataShapes.push(e)}))}))})),this.courseConfig&&this.courseConfig.dataShapes&&this.courseConfig.dataShapes.forEach((e=>{this.registeredDataShapes.push(this.dataShapes.find((t=>t.name===S.getDataShapeDescriptor(e.name).dataShape)))})),this.loading=!1},methods:{getDataShape(e){return this.dataShapes.find((t=>t.name===e))}}}),Pt={key:0,class:"courseEditor"},Mt={key:0},zt={key:1},Bt={class:"text-h4"},$t=te(Nt,[["render",function(e,t,n,p,h,g){const m=r("v-progress-circular"),v=r("router-link"),y=r("v-tab"),_=r("v-tabs"),w=r("v-select"),b=r("data-input-form"),C=r("v-container"),S=r("v-window-item"),I=r("bulk-import-view"),k=r("component-registration"),x=r("navigation-strategy-editor"),D=r("v-window");return e.course?(i(),d("div",Pt,[e.loading?(i(),d("div",Mt,[s(m,{indeterminate:"",color:"secondary"})])):(i(),d("div",zt,[c("h1",Bt,[s(v,{to:"/q"},{default:o((()=>t[3]||(t[3]=[l("Quilts")]))),_:1}),t[4]||(t[4]=l(" / ")),s(v,{to:`/q/${e.courseConfig?e.courseConfig.name:e.course}`},{default:o((()=>[l(f(e.courseConfig?.name),1)])),_:1},8,["to"])]),s(_,{modelValue:e.currentTab,"onUpdate:modelValue":t[0]||(t[0]=t=>e.currentTab=t),"bg-color":"primary",grow:""},{default:o((()=>[s(y,{value:"single"},{default:o((()=>t[5]||(t[5]=[l("Single Card Input")]))),_:1}),s(y,{value:"bulk"},{default:o((()=>t[6]||(t[6]=[l("Bulk Import")]))),_:1}),s(y,{value:"navigation"},{default:o((()=>t[7]||(t[7]=[l("Navigation")]))),_:1}),s(y,{value:"registration"},{default:o((()=>t[8]||(t[8]=[l("Component Registration")]))),_:1})])),_:1},8,["modelValue"]),s(D,{modelValue:e.currentTab,"onUpdate:modelValue":t[2]||(t[2]=t=>e.currentTab=t)},{default:o((()=>[s(S,{value:"single"},{default:o((()=>[s(C,{fluid:""},{default:o((()=>[s(w,{modelValue:e.selectedShape,"onUpdate:modelValue":t[1]||(t[1]=t=>e.selectedShape=t),label:"What kind of content are you adding?",items:e.registeredDataShapes.map((e=>e.name)),class:"mt-4"},null,8,["modelValue","items"]),""!==e.selectedShape&&e.courseConfig&&e.dataShape?(i(),a(b,{key:0,"data-shape":e.dataShape,"course-cfg":e.courseConfig},null,8,["data-shape","course-cfg"])):u("",!0)])),_:1})])),_:1}),s(S,{value:"bulk"},{default:o((()=>[s(C,{fluid:""},{default:o((()=>[e.courseConfig?(i(),a(I,{key:0,"course-cfg":e.courseConfig,class:"mt-4"},null,8,["course-cfg"])):u("",!0)])),_:1})])),_:1}),s(S,{value:"registration"},{default:o((()=>[s(C,{fluid:""},{default:o((()=>[s(k,{course:e.course,class:"mt-4"},null,8,["course"])])),_:1})])),_:1}),s(S,{value:"navigation"},{default:o((()=>[s(C,{fluid:""},{default:o((()=>[s(x,{"course-id":e.course},null,8,["course-id"])])),_:1})])),_:1})])),_:1},8,["modelValue"])]))])):u("",!0)}],["__scopeId","data-v-c987522c"]]);export{qt as BulkImportView,st as ChessPuzzleInput,$t as CourseEditor,ft as DataInputForm,He as IntegerInput,Ke as MarkdownInput,et as MediaDragDropUploader,it as MidiInput,ot as NumberInput,Ge as OptionsFieldInput,ut as StringInput,We as integerValidator,Be as isFieldInput,Le as numberValidator,lt as useDataInputFormStore,Je as useFieldInputStore};
2
+ //# sourceMappingURL=edit-ui.es-1BaJ_I4B.js.map